Name
Ian Stanley
Preferred Username
ick
Email Address
[EMAIL PROTECTED] (preferred published email address)
[EMAIL PROTECTED] (actual email address)
Project Description
Oyster::Shell is a OO framework for coding those tedious command line shells
The intent is to remove the coding aspect from all the parsing of a command
line shell loop reducing the coding to a perl program as simple as the code below
______________
#!/usr/local/bin/perl -w
use Oyster::SimpleShell;
sub myfunc { print "hello\n" };
my $shell = new SimpleShell();
# various commands can be added at the time of creation
$shell->add_commands( 'hello' => \&myfunc ); # added the hello command
# to basic commands quit/exit/help
# parse shell
$sghell->run;
______________
The shell will support both unix and gnu style option switches and will present
switches as a hash and remaining arguements as an array to the user defined
function for the command.
The shell has default settings for the shell name, default greeting, default prompt
etc all of which can be reconfigured. By default the shell understands the commands
exit/quit and help without further coding. However, a command can be easily redefined
just by calling $shell->add_commands ( hash containing new or replacement commands)
Thus a user command could have an enable feature to provide additional commands
after authentication (cf shell prompt for cisco routers etc) - this functionality
is intended to be standard with the ::AdvShell version.
All versions are to be released under GPL
Support available from
Developer by email, comp.lang.perl.modules and via sourceforge forums
Sourceforge details
Project Full Name: Oyster: Shells for Perl programs
Project Unix Name: oystershell
CVS Server: cvs.oystershell.sourceforge.net
Shell/Web Server: oystershell.sourceforge.net
The sourceforge project has only just been set up and therefore is currently
empty. This will change asap as I find time.
Name DSLIP Description Info
------------- ----- -------------------------------------------- -----
Oyster::
::SimpleShell cdphg OO command line shell w/user fn() + switches
::AdvShell idphg Extended inherited version of ::SimpleShell
::XShell idphg inherited version of above in own xterm
::CursesShell idphg OO shell with optional curses gui
::TkShell idphg Tk Gui version of above
Pointers to public discussion
Submitted for public discussion on 23 sept 2002 to comp.lang.perl.modules