X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?p=p5sagit%2FDevel-REPL.git;a=blobdiff_plain;f=lib%2FDevel%2FREPL.pm;h=b102b76f1837618415bcf47dc9a84db9a7f37e1e;hp=a77dcaf43f9d4a3c82d5c56b2ae2f079f3ba0acb;hb=1b9f7032a3251a447220f731d5c9864e27e7d189;hpb=67a934781bbbb30cfc24729ab642e6386bc469c5 diff --git a/lib/Devel/REPL.pm b/lib/Devel/REPL.pm index a77dcaf..b102b76 100644 --- a/lib/Devel/REPL.pm +++ b/lib/Devel/REPL.pm @@ -2,32 +2,34 @@ package Devel::REPL; use Term::ReadLine; use Moose; -use namespace::clean -except => [ 'meta' ]; +use namespace::autoclean; use 5.008001; # backwards compat, doesn't warn like 5.8.1 -our $VERSION = '1.003010_01'; +our $VERSION = '1.003020'; with 'MooseX::Object::Pluggable'; use Devel::REPL::Error; has 'term' => ( - is => 'rw', required => 1, + is => 'rw', + lazy => 1, default => sub { Term::ReadLine->new('Perl REPL') } ); has 'prompt' => ( - is => 'rw', required => 1, + is => 'rw', default => sub { '$ ' } ); has 'out_fh' => ( - is => 'rw', required => 1, lazy => 1, + is => 'rw', + lazy => 1, default => sub { shift->term->OUT || \*STDOUT; } ); has 'exit_repl' => ( - is => 'rw', required => 1, + is => 'rw', default => sub { 0 } ); @@ -223,7 +225,11 @@ exported functions from that module are available for immediate use: 1 $_ -To quit from the shell, hit C or C. +To quit from the shell, hit C or C. + + MSWin32 NOTE: control keys won't work if TERM=dumb + because readline functionality will be disabled. + =head2 Run Control Files @@ -283,6 +289,34 @@ L L +=item * + +L + +=item * + +L + +=item * + +L + +=item * + +L + +=item * + +L + +=item * + +L + +=item * + +L + =back =head2 Plugins @@ -295,7 +329,9 @@ output, or even add commands to the shell environment. A number of plugins ship with C, and more are available on the CPAN. Some of the shipped plugins are loaded in the default profile, mentioned -above. +above. These plugins can be loaded in your C<< $HOME/.re.pl/repl.rc >> like: + + load_plugin qw( CompletionDriver::Global DumpHistory ); Writing your own plugins is not difficult, and is discussed in the L manual page, along with links to the manual pages of @@ -328,7 +364,7 @@ the following: =item * -L >= 0.64 +L >= 0.74 =item * @@ -336,23 +372,31 @@ L >= 0.0009 =item * -L >= 0.15 +L >= 0.18 =item * -L >= 0.14 +L =item * -L +L =item * -L +L =item * -L +L + +=item * + +L + +=item * + +L =back @@ -370,10 +414,18 @@ L =item * +L + +=item * + L =item * +L + +=item * + L =item * @@ -416,6 +468,10 @@ Matt S Trout - mst (at) shadowcatsystems.co.uk (L >> +=item Chris Marshall + +=item Karen Etheridge C<< >> + =back =head1 LICENSE