Devel::REPL::Plugin::ReadLineHistory(3) Integrate history with the facilities provided by Term::ReadLine


version 1.003028


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;


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.


Bugs may be submitted through the RT bug tracker <> (or [email protected] <mailto:[email protected]>).

There is also an irc channel available for users of this distribution, at "#devel" on "" <irc://>.


Matt S Trout - mst (at) (<>)


This software is copyright (c) 2007 by Matt S Trout - mst (at) (<>).

This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.