NAME

Devel::REPL::Plugin::ReadLineHistory - Integrate history with the facilities provided by Term::ReadLine

DESCRIPTION

This plugin enables loading and saving command line history from a file as well has history expansion of previous commands using the !-syntax a la bash.

By default, history expansion is enabled with this plugin when using Term::ReadLine::Gnu. That means that "loose" '!' characters will be treated as history events which may not be what you wish.

To avoid this, you need to quote the '!' with '\':

my $var = "foo\!";

or place the arguments in single quotes---but enable the Term::ReadLine attribute history_quotes_inhibit_expansion:

$_REPL->term->Attribs->{history_quotes_inhibit_expansion} = 1;
my $var = 'foo!';

and to disable history expansion from GNU readline/history do

$_REPL->term->Attribs->{do_expand} = 0;

CONFLICTS

Note that Term::ReadLine::Perl does not support a history expansion method. In that case, you may wish to use the Devel::REPL History plugin which provides similar functions. Work is underway to make use of either History or ReadLineHistory consistent for expansion with either the Term::ReadLine::Gnu support or Term::ReadLine::Perl.