The London Perl and Raku Workshop takes place on 26th Oct 2024. If your company depends on Perl, please consider sponsoring and/or attending.

NAME

Zoidberg - A modular perl shell

SYNOPSIS

You should use the zoid system command to start the Zoidberg shell. To embed the Zoidberg shell in another perl program use the Zoidberg::Shell module.

DESCRIPTION

This page contains devel documentation, if you're looking for user documentation start with the zoid(1) man page.

This module contains the core dispatch and event logic of the Zoidberg shell. Also it is used as a 'main object' so other objects can find each other here; all other objects are nested below this object. Also it contains some parser code.

This object inherits from both Zoidberg::Contractor and Zoidberg::Shell.

METHODS

new(\%attr)

Initialize secondary objects and sets config. %attr contains non-default attributes and is used to set runtime settings.

You probably don't want to use this to construct a new Zoidberg shell object, better use Zoidberg::Shell.

main_loop()

Spans interactive shell reading from a secondary ReadLine object or from STDIN.

To quit this loop the routine exit() of this package should be called. Most common way to do this is pressing ^D.

mode [mode]

Without arguments prints the current mode. With arguments sets the mode.

plug

TODO

unplug

TODO

exit()

Called by plugins to exit zoidberg -- this ends a interactive main_loop() loop. This does not clean up or destroy any objects, main_loop() can be called again to restart it.

round_up()

This method should be called to clean up the shell objects. A round_up() method will be called recursively for all secondairy objects.

AUTOLOADING

Routines not recognised by this object are understood to be either the name of a plugin, in which case a reference to that object is returned, or a shell command, in which case Zoidberg tries to execute it.

AUTHOR

Jaap Karssenberg || Pardus [Larus] <pardus@cpan.org>

R.L. Zwart, <carl0s@users.sourceforge.net>

Copyright (c) 2002 Jaap G Karssenberg. All rights reserved. This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.

See http://www.perl.com/language/misc/Artistic.html and http://www.gnu.org/copyleft/gpl.html

SEE ALSO

zoid(1), zoiddevel(1), Zoidberg::Shell, http://zoidberg.sourceforge.net

4 POD Errors

The following errors were encountered while parsing the POD:

Around line 633:

=cut found outside a pod block. Skipping to next block.

Around line 648:

=cut found outside a pod block. Skipping to next block.

Around line 708:

=cut found outside a pod block. Skipping to next block.

Around line 733:

=cut found outside a pod block. Skipping to next block.