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


Reply via email to