Devel::REPL::Plugin::FancyPrompt3pm
Facilitate user-defined prompts
Usage
use Devel::REPL;my $repl = Devel::REPL->new;$repl->load_plugin('MultiLine::PPI'); # for indent depth$repl->load_plugin('Packages'); # for current package$repl->load_plugin('FancyPrompt');$repl->run;
Version
version 1.003029
Overview
FancyPrompt helps you write your own prompts. The default fancy prompt resembles "irb"'s default prompt. The default "fancy_prompt" looks like this:
re.pl(main):001:0> 2 + 24
"re.pl" is a constant. "main" is the current package. The first number is how many lines have been read so far. The second number (only if you have a "MultiLine" plugin) is how deep you are; intuitively, your indent level. This default can be implemented with:
$_REPL->fancy_prompt(sub {my $self = shift;sprintf 're.pl(%s):%03d%s> ',$self->can('current_package') ? $self->current_package : 'main',$self->lines_read,$self->can('line_depth') ? ':' . $self->line_depth : '';});
"current_package" is provided by Devel::REPL::Plugin::Packages (which tracks the current package). "line_depth" is provided by a "MultiLine" plugin (probably "MultiLine::PPI").
You may also set a "fancy_continuation_prompt". The default is very similar to "fancy_prompt"'s default (except "*" instead of ">").
Support
Bugs may be submitted through the RT bug tracker <https://rt.cpan.org/Public/Dist/Display.html?Name=Devel-REPL> (or [email protected] <mailto:[email protected]>).
There is also an irc channel available for users of this distribution, at "#devel" on "irc.perl.org" <irc://irc.perl.org/#devel-repl>.
Copyright and license
Copyright (C) 2007 by Shawn M Moore
This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.
Releases
9 releases since Debian 5.0 (Lenny); the text changed 5 times.