Sepia
view release on metacpan or search on metacpan
`save [PATTERN [FILE]]'
Save variables matching PATTERN (or all variables) to FILE (or
`~/.sepia-save') in `Storable' format. Note that because saving
magic variables can have unpredictable results, using `save'
without a pattern argument is risky. Sepia excludes common magic
variables and dangerous packages, but its list is not foolproof.
`shell [COMMAND]'
Execute shell command COMMAND, displaying its standard output and
standard error.
`size PACKAGE [REGEXP]'
`size [REGEXP]'
List the variables in PACKAGE (or the current package) along with
their total sizes. This requires the `Devel::Size' module. In
strict mode, list lexical variables if no PACKAGE is given.
`strict [VAL]'
Set evaluation strictness to VAL, or toggle it if VAL is not
given. Note that turning strictness off and on clears the REPL's
lexical environment.
`test [FILE]'
Run tests in the current directory. If FILE is given, only run
test FILE or `t/FILE'
`time [VAL]'
Set time display to VAL, or toggle it if VAL is not given. With
time display enabled, Sepia will use `BSD::Resource' and/or
`Time::HiRes' to display wall clock time and CPU usage for the
previous command as part of the prompt.
`undef NAME'
Undefine shortcut NAME. *Warning*: this can equally be used to
remove built-in shortcuts.
`wantarray [VAL]'
Set the evaluation context to VAL: `@' means array, `$' means
scalar, and anything else means void.
`who PACKAGE [REGEXP]'
`who [REGEXP]'
List identifiers in PACKAGE (main by default) matching optional
REGEXP. In strict mode, list lexical variables if no PACKAGE is
given.
File: sepia.info, Node: Debugger, Next: Evaluation, Prev: Shortcuts, Up: Interactive Perl
3.2 Debugger
============
Sepia uses Perl's debugger hooks and GUD mode to support conditional
breakpoints and single-stepping, and overrides Perl's `die()' to invoke
the debugger rather than unwind the stack. This makes it possible to
produce a backtrace, inspect and modify global variables, and even
continue execution when a program tries to kill itself. If the
PadWalker module is available, Sepia also provides functions to inspect
and modify lexical variables.
The debugger has its own set of shortcuts, also prefixed by a comma.
`backtrace'
Show a backtrace.
`delete'
Delete the current breakpoint.
`down N'
`up N'
Move the current stack frame up or down by N (or one) frames.
`inspect [N]'
Inspect lexicals in the current frame or frame N, counting upward
from 1.
`next [N]'
Advance N (or one) lines, skipping subroutine calls.
`quit'
`die'
`warn'
Continue as the program would have executed without debugger
intervention, dying if the debugger was called from `die()'.
`return EXPR'
Continue execution as if `die()' had returned the value of EXPR,
which is evaluated in the global environment.
`step [N]'
Step forward N (or one) lines, descending into subroutines.
`xreturn SUB EXPR'
Return EXPR from the innermost call to SUB. This is a somewhat
dangerous and experimental feature, but is probably more useful
than returning a value from `die()'.
File: sepia.info, Node: Evaluation, Next: Mutilation, Prev: Debugger, Up: Interactive Perl
3.3 Evaluation
==============
When interactive Perl is running, Sepia can evaluate regions of code in
the inferior Perl process. The following commands assume that this
process has already been started by calling `sepia-repl'.
`C-M-x'
`M-x sepia-eval-defun'
Evaluate the function around point in the inferior Perl process.
If it contains errors, jump to the location of the first.
`C-c C-l'
`M-x sepia-load-file'
Save the current buffer, then reload its file and if warnings or
errors occur, display an error buffer. With a prefix argument,
also rebuild the cross-reference index.
( run in 1.434 second using v1.01-cache-2.11-cpan-97f6503c9c8 )