X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?p=p5sagit%2FDevel-REPL.git;a=blobdiff_plain;f=lib%2FDevel%2FREPL%2FPlugin%2FTurtles.pm;h=0ae8299ae51d93d163661b1b268ee4d6579e9b12;hp=c412237ce7c0b3776350b7fcc057bf4f945f42da;hb=79e70b9ce0a3066a8ad8950e9cb32f6198afd592;hpb=cfd1094b45c394258ccda08216f1435bf40e1d50 diff --git a/lib/Devel/REPL/Plugin/Turtles.pm b/lib/Devel/REPL/Plugin/Turtles.pm index c412237..0ae8299 100644 --- a/lib/Devel/REPL/Plugin/Turtles.pm +++ b/lib/Devel/REPL/Plugin/Turtles.pm @@ -17,6 +17,7 @@ has turtles_matchers => ( metaclass => "Collection::Array", isa => "ArrayRef[RegexpRef|CodeRef]", is => "rw", + lazy => 1, default => sub { my $prefix = shift->default_command_prefix; [qr/^ $prefix (\w+) \s* (.*) /x] }, provides => { unshift => "add_turtles_matcher", @@ -74,5 +75,19 @@ __END__ Devel::REPL::Plugin::Turtles - Generic command creation using a read hook +=head1 DESCRIPTION + +By default, this plugin allows calling commands using a read hook +to detect a default_command_prefix followed by the command name, +say MYCMD as an example. The actual routine to call for the +command is constructed by looking for subs named 'command_MYCMD' +or 'expr_MYCMD' and executing them. + +=head2 NOTE + +The C is C so care must be taken +if other uses for that character are needed (e.g., '#' for the +shell escape character in the PDL shell. + =cut