From: Chris Marshall Date: Sat, 8 May 2010 19:39:34 +0000 (-0400) Subject: Term::ReadLine::Perl support to ReadLineHistory X-Git-Tag: v1.003015~42 X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?p=p5sagit%2FDevel-REPL.git;a=commitdiff_plain;h=7907c13edbcefce0b34ce3656cf0d8a6aa78b09c Term::ReadLine::Perl support to ReadLineHistory Term::ReadLine::Gnu uses the stifle_history() method to set the number of history lines kept. Term::ReadLine::Perl uses the value of the MaxHistorySize atribute. --- diff --git a/lib/Devel/REPL/Plugin/ReadLineHistory.pm b/lib/Devel/REPL/Plugin/ReadLineHistory.pm index 70a79ad..711aa3d 100644 --- a/lib/Devel/REPL/Plugin/ReadLineHistory.pm +++ b/lib/Devel/REPL/Plugin/ReadLineHistory.pm @@ -20,7 +20,12 @@ my $hist_len=$ENV{PERLREPL_HISTLEN} || 100; around 'run' => sub { my $orig=shift; my ($self, @args)=@_; - $self->term->stifle_history($hist_len); + if ($self->term->Attribs->{ReadLine} eq 'Term::ReadLine::Gnu') { + $self->term->stifle_history($hist_len); + } + if ($self->term->Attribs->{ReadLine} eq 'Term::ReadLine::Perl') { + $self->term->Attribs->{MaxHistorySize} = $hist_len; + } -f($hist_file) && $self->term->ReadHistory($hist_file); $self->term->Attribs->{do_expand}=1; $self->$orig(@args);