
       OS/2 Upload Information Template for ftp-os2.nmsu.edu

Archive Name: yaos098a.zip
Program Description: Yet Another OS/2 Shell (features filename completion)
Operating Systems: Only tested on Warp 3.0
Program Source: cjin@cs.wisc.edu
Replaces: yaos098.zip

Your name: Lee, Cjin Pheow
Your email address: cjin@cs.wisc.edu

Proposed directory for placement:
    /os2/32bit/sysutils

-------------------------------------------------------------------------------
        YAOS (Yet Another OS/2 Shell) version 0.98a, Copyright 1995
        ===========================================================
                                (FREEWARE)

This is a shell that runs on top of cmd.exe. The following is a list of its features:

      * Unix-like file name completion using the <tab> key. A name is 
        completed with a space appended to the name if it is not a directory 
        entry.

      * A history of previously used commands with ability
        to access them using commands like: !!, !4, !v test.c
        (those familiar with unix would know what I am saying).
        Of course, the up & down cursor keys will scroll through
        previous commands too.

      * Ability to change directory to any [drive:\directory]
        in a single command using the normal 'cd' command.

      * Full support for prompt setting in OS/2.

      * Full implementation of command line editing.

      * A popup window that displays the possible file names for
        completion. You can scroll through the entries in this
        popup window using the up and down arrow-keys, Home, End,
        PageUp and PageDown keys. You can also search for a particular
        file name by typing its name directly onto the popup window.
        ['-w' option when starting YAOS]

      * Alt-H keystroke will bring up a popup window containing
        commands that are stored in history. Again, you can scroll
        through this list using the cursor keys, Home, End, PageUp &
        PageDown keys. (The window will only appear if there are two or
        more commands in history).

      * [-o] argument: Defaulting to overwrite mode on startup.

      * Directory name that is completed using <tab> will have the back slash 
        appended to the end of the name.

      * Implementation of aliases. You can define aliases in YAOS, save them
        into a file and later retrieve them. You can also specify an alias
        file when starting YAOS with the option [-s <filename>]. You have
        to specify the full path name for the <filename> unless it is
        located in the current directory. A total of up to 9 argument
        replacements (from %1 to %9) is allowed in aliases. Chaining aliases is
        no longer allowed. This is to prevent endless alias recursion. To read
        or write an alias file inside YAOS, refer to online help on alias:
        (Type:  '? alias' without the quotes at prompt.)
        You can also unset an alias by using the unalias <keyword> command.

      * In the file name completion popup window, the maximum string that
        is common to all possible names is matched. (Previously, matching
        is done only up to what the user keys in before bringing up the popup
        window.

      * Emacs like editing keys are implemented.
                Ctl-v   : PageDown
                Alt-v   : PageUp
                Ctl-p   : Previous Line
                Ctl-n   : Next Line
                Ctl-a   : Beginning of line
                Ctl-e   : End of Line
                Ctl-f   : Forward a character
                Ctl-b   : Back a character
                Alt-f   : Forward a word
                Alt-b   : Back a word
                Ctl-d   : Delete current character
                Ctl-k   : Delete till end of line

     * Instead of keying in the startup options from the command line, you
       can define an environment setting in the config.sys file to hold
       the options. For example, you can do the following:

             set YAOS=-wqs c:\yaos\alias.fil

       Moreover, you can overwrite the 'set' options from the command line.

     * In the filename completion popup window, after typing in one or more
       characters, hitting the <Tab> key will cause YAOS to match again as
       much as possible the likely completing file name.

     * Thanks to a sugguestion by David Begley from Australia, I have managed
       to reduce the size of the file YAOS.EXE considerably.  Compare it
       with the YAOS.EXE file prior to v0.9. Also, note that YAOS now uses
       EMX.DLL. This will benefit those who run many applications compiled
       using emx/gcc.

     * Recognizes different keyboard layouts.

     * Built-in "which <executable>" command to locate pathed executable files.

     * Changing to a directory is as simple as typing its name. If a pathed
       executable of the same name exist, it will be executed instead.

     * Ability to execute any program upon YAOS startup with the "-x" option.

     * Ability to read in a file containing environment settings and aliases 
       with the "-s <filename>" option during startup or the "source <filename>"
       command while in YAOS.

     * Hitting the <Esc> key clears the command line.

Read the file "new.txt" for what's new in this release

Obselete:
---------
The following commandline options are no longer supported:
   -m, -f, -i, -a, -r

Coming soon (really soon):
--------------------------
     * Use of '&' character to 'detach' tasks.      [User suggestion]
     * Use of ';' separator for multiple commands   [User suggestion]
     * Any reasonable feature requests from YOU!

This release is by no means a bug free version. However, I hope you'll
use and like YAOS. Suggestions and comments (including bug reports) are
strongly welcomed.

Installation
------------
1) Copy YAOS.EXE to a PATHed directory (eg. C:\OS2)

2) Copy EMX.DLL to a LIBRARY directory (eg. C:\OS2\DLL)
(Note: The EMX.DLL file included with YAOS must be used.
       You may not use any earlier versions of the DLL files. If earlier
       versions of the DLL files exist, you have to delete them. If not,
       YAOS may not function properly.)

3) Now you can safely run YAOS

NOTE: Failure to perform the above steps will result in improper execution
      of YAOS.

PS:   You can also use the yaosinst.cmd REXX script to create an object on
      your desktop. However, I would still recommend that you copy the DLL
      file into a LIBRARY directory.

Credits:
--------
This release of YAOS would not have been possible without the patience and
helpful comments from users like you. Special thanks go to Marko Teittinen
for his invaluable sugguestions during the early stages of YAOS.


Author:
-------
        Lee, Cjin Pheow
        February 16, 1995

+----------------------------------------------------------------------------+
| Lee, Cjin Pheow (cjin@cs.wisc.edu) ....................................... |
| Computer Science Graduate Student at University of Wisconsin - Madison ... |
| Off: 3360 CS&S 1210 West Dayton St Madison WI 53706  (608)262-9275 ....... |
| WWW: http://www.cs.wisc.edu/~cjin/cjin.html .............................. |
| Home Addr: 123 N Orchard St #233   Madison WI 53715  (608)264-3880 ....... |
+----------------------------------------------------------------------------+

