home *** CD-ROM | disk | FTP | other *** search
- MI-SHELL
- The Programmable DOS Shell
-
- Introduction
-
- Whether you are a Power User or a first time computer user,
- Mi-Shell is one of the best tools you can have to manage your
- files and speed your work. With Mi-Shell keeping track of where
- you are within DOS, executing your most often used programs becomes
- point and shoot Mi-Shell remembers the details for
- you.
-
- For the Power User, Mi-Shell is fully programmable through its configuration
- script language, and can be customized to perform specialized tasks
- with a single key stroke (or mouse click), to recognize the correct
- program to be executed when you point and shoot on a data file, and
- to do so with specific preset parameters. Single function systems
- Desktop Publishing, Word Processing, Programming/debugging/compiling
- can exploit the power in Mi-Shell to speed operations, and standardize
- how files are stored in the working environment.
-
- For the first time computer user, Mi-Shell provides a quick, clear
- way to get working on the computer without learning any DOS commands.
- Nothing is more frustrating for a beginner than the blinking cursor
- at the DOS prompt leaving you asking now what?
-
- What is a Shell?
-
- A Shell is a program from which other programs are run.
- It makes it easier and more convenient to run these other programs.
- Besides the DOS prompt from which any command can be typed in the
- usual DOS fashion, it provides you with sets of menus and with information
- on your current directory (and usually on an other directory). It
- allows you to execute DOS and other individual programs with function
- keys, or with single key strokes.
-
- In many instances, the Shell provides directory panels of information
- directories of files, status of disk drives, time of day, etc.
- a menu that reminds you of functions assigned to function keys,
- and a command line for instructions that will be acted
- on when you press the 'Enter' key.
-
-
-
-
-
-
-
-
-
- The default Mi-Shell screen
-
- The top two lines are the top menu, reminding you of the
- function of the F keys, plain or shifted. In the top right corner,
- the X is a reminder that swapping to XMS is on, and serves as a menu as well.
- Below that, there are two directory panels, one with a wide display
- sorted by time and the other with a narrow display, sorted by extension.
- On the right, you have a drive menu which makes it very easy to change
- drives. Finally, at the bottom, you have a (simulated) DOS prompt.
-
-
-
-
-
-
- Mi-Shell has two different parts: MSH.EXE and CONFIG.MSH.
-
- MSH.EXE is a compiled program which reads the ASCII file CONFIG.MSH
- and behaves according to the definitions that it finds therein. CONFIG.MSH
- is a program, written in Mi-Shell script, and in turn, calls some
- other *.MSH files which can be thought of as its subroutines.
-
- While we provide a default CONFIG.MSH, and describe it at length,
- it is only one possible choice out of millions. With time, you will
- modify it, turning Mi-Shell into my shell.
-
-
- Quick-Start:
-
- Installing Mi-Shell on your system
-
- Mi-Shell on the distribution diskette is compressed to
- save space, and is not copy protected. You should always make a copy
- of the distribution disk. You can use DISKCOPY with DOS
- or any other utility that will copy all the programs from the distribution
- disk to your working diskette.
-
- Then, use the working diskette to install the program on
- your hard disk into a sub-directory that is on your path.
-
- We recommend that a separate MSH sub-directory be created
-
- md \msh
-
- that you go there
-
- cd \msh
-
- and the packed program be expanded into that sub-directory
-
- a:mshzip
-
- The MSHZIP.EXE which is on your distribution diskette is a self-extracting
- file that will expand to reveal all the necessary program parts for
- Mi-Shell to operate on your system.
-
- When you examine the sub-directory, you will find MSH.EXE, the Mi-
- Shell program. The MSH.EXE program needs a configuration file
- CONFIG.MSH which contains all the instructions that Mi-Shell
- will follow. Please follow the instructions in the READ.ME file on
- modifying CONFIG.MSH for your PC.
-
- The default configuration.
-
- To start Mi-Shell, run 'MSH.' The top half of your display
- will reveal the TOP MENU containing labels for the major functions;
- a set of DIRECTORY PANELS displaying directory and file information;
- and the COMMAND LINE with the familiar DOS Prompt.
-
- The TOP MENU commands at your finger tips
-
- The initial configuration script contains many commands ready for
- you to use. The TOP MENU has tags and reminders for the groups of
- commands that can be executed, which reveal added menu windows with
- specific commands. Each of these will be discussed in some detail
- later, but several will help you quickly become familiar with Mi-Shell
- and its operation.
-
- F1 is the HELP key with a menu that leads to a brief explanation
- of the common commands (those using Ctrl and Alt keys) used in the
- default configuration of Mi-Shell. F1 also has a couple of tutorials
- you should consider running before anything else. We suggest that
- at this point you go through the introductory tutorial. This sequence
- of examples shows you the major features of Mi-Shell, directly on-screen.
-
- General rules about menus
-
- Anytime you find yourself in the wrong menu, the ESC key will safely
- back up to a previous point where you can move forward to where you
- want to be. When you have highlighted your menu choice, a mouse click
- or an ENTER will activate that choice showing you the next menu
- or performing the task requested. If using a mouse, you can double
- click on one of the choices to activate that choice, or click outside
- the menu to Escape from the menu (if you click on a spot which has
- a meaning in an other menu or directory, that action will then be
- performed).
-
-
-
- F10 is the QUIT command allowing you to leave Mi-Shell,
- and remove it from memory. The other way out is Ctrl C which
- will work in all cases, even when CONFIG.MSH has a major problem.
-
-
- DIRECTORY PANELS file information at your finger tips
-
- Below the top menu there are two or three DIRECTORY PANELS which contain
- directory and file names (and other file and directory information).
- Each PANEL can be controlled separately. The active PANEL is indicated
- by the presence of a highlight or reverse video in the DIRECTORY PANEL,
- and the DOS prompt on the COMMAND LINE shows the full pathname of
- the directory which is active.
-
- At the top-left of the Directory panel, at the boarder, is the path-name
- or naming pattern of what is displayed in the PANEL.
-
-
-
- Changing to the next directory panel
-
- The Tab key allows you to move between DIRECTORY PANELS. If
- there are three or more directory panels, Tab will move to the
- right one PANEL. If the most right PANEL is active, Tab will
- next activate the left-most PANEL. Shift Tab moves in the opposite
- direction.
-
-
-
- The COMMAND LINE linking to DOS
-
- The bottom line of the Mi-Shell screen you will recognize as the COMMAND
- LINE with the familiar DOS prompt. When Mi-Shell is displayed, any
- alpha-numeric keys you type will appear on the COMMAND LINE, while
- Function, Shift F keys, Alt and Ctrl key combinations
- will be evaluated by Mi-Shell and its configuration script to see
- if any action is defined. If no action is defined, you will see a
- message window letting you know.
-
- When you type a DOS command on the COMMAND LINE, and then the ENTER
- key, Mi-Shell will generally pass the command directly on to the computer.
-
-
-
- Mi-Shell: The default configuration
-
- The function keys
-
- F1 (or CtrlH) calls for a Help menu and its sub-menus
- and tutorials.
-
- ShiftF1 brings up a copy of the "ASCII" table of symbols
- and their numeric representation. When you are building a screen display
- with screen graphics characters and other symbols or if
- you are debugging a program and need to know what the hex or octal
- code represents on screen, this table will be invaluable.
-
- CtrlF1 displays a list of the Mi-Shell language primitives.
- Their definitions can be found in the Reference Manual.
-
- AltF1 displays a list of the Standard Definitions for
- Mi-Shell. Their definitions can be found in the file STDDEFS.MSH
-
- F2 is the select key. The purpose of selecting a bunch
- of files is to later apply some function to all of them. When you
- are pointing to an item, F2 will mark the item as selected, or deselect
- it if it is already selected.
-
- ShiftF2 asks whether the files selected in the current
- panel would fit if you tried to copy them to the other panel. This
- is done with The Berkeley Utilities command ls. For instance,
-
-
- ls file1 file2 file3 -Ub
-
- asks whether the 3 files file1, file2 and file3 would fit
- on the b drive.
-
- F3 invokes the built-in viewer, called Pager. It allows
- you to quickly look at but not change the current item,
- whether you need to decide if it is the file you want, or simply need
- some piece of information from it. You can use your own browser, but
- since it will be an external program, it will be slower.
-
- ShiftF3 displays a hex dump of the file currently pointed
- to in the current directory. This is done with The Berkeley Utilities
- command od, which stands for octal dump:
-
- od -ch file1
-
- will display a hex dump of file1.
-
- CrlF3 invokes an external browser capable of browsing
- through several files at once, like more from The Berkeley Utilities.
-
- F4 invokes the defined "Editor." This must be an external
- program. "MWE" is provided with Mi-Shell, but you may change the definition
- in CONFIG.MSH to use brief, WordStar, vi, or any other "Editor" you
- wish.
-
- ShiftF4 toggles between a one-line and a two-line top
- menu at the top of the screen. The two-line menu focuses on the 10
- F-keys and their Shifted values, while the one-line menu groups the
- possible actions into functional groups: Help, File, View/edit, mIsceallaneous,
- Whereto, Panel and Quit. Each of these generates a further menu when
- invoked (either by a mouse click left, or a Ctrl- followed by the
- Capital letter in the key word). Therefore, you will find a description
- of these menus below under CtrlH (or F1), CtrlF, CrlV, CtrlI, CtrlW
- (or ShiftF9), CtrlP and CtrlQ (or F10).
-
- F5 is the "Copy" key, which will copy the current or
- selected file(s) to the drive and directory in the next panel. If
- you do not have the Berkeley Utilities, the DOS command "copy" is
- used, while if you do, you may or may not use the "cp" command.
-
- ShiftF5 is a quick built-in function that captures a
- copy of the screen to an ASCII file called "Junk.Scr." Naturally,
- you can change the name of the file written from "Junk.Scr" to anything
- else you want.
-
- F6 is the "Move" key, which works like "copy" except
- it deletes the source file after the copy is made.
-
- ShiftF6 displays a directory listing and hides (almost)
- all the permanent windows to let you examine it. This is done simply
- with The Berkeley Utilities command ls, followed by the script
- hide_all described under F7.
-
- CtrlF6 will bring up the Mandelbrot menu, with 2 choices,
- one where you create a new picture, and the other where you display
- the last picture created. They invokes two free programs from OPENetwork,
- MANDEL.EXE and SHOWPIC.EXE which respectively create and display subsets
- of the Mandelbrot set.
-
- F7 is for your own menu. When you have created one,
- it will appear here.
-
- ShiftF7 gives you a small menu of often used DOS disk
- utilities. "chkdsk" will examine the current disk for lost clusters
- among other things; and the menu provides for formatting a disk as
- bootable or data only.
-
- CtrlF7 brings up the game of life, another free program
- from OPENetwork.
-
- F8 lets you "Delete" the current file or all the ones
- selected.
-
- ShiftF8 will ask DELTA to compare the file being
- pointed to in the current directory to the file being pointed to in
- the other directory. This could easily be achieved by typing
-
- delta file1 file2
-
- if you own DELTA, a very powerful and intuitive directory
- and ASCII file comparison tool from OPENetwork.
-
- F9 calls the defined "editor" and loads the present
- configuration file, "config.msh," so that you can make changes. It
- is strongly suggested that you make a copy of the default file
- to a new name before doing major changes. After you finish the
- modifications, the changed "config.msh" is reread into Mi-Shell, so
- the new configuration is available and active.
-
- ShiftF9 (or CtrlW) was inspired by Norton's excellent
- program NCD (Norton Change Directory). It assumes that CONFIG.MSH
- has the correct value for the variable fixed_drives and that you have
- The Berkeley Utilities. It brings up a menu with 2 choices: ``going
- somewhere'' or ``refreshing the tree''. The second choice runs a batch
- file called MAKETREE.BAT, which uses several Berkeley Utilities to
- create a file called TREE. The file simply contains every subdirectory
- available to you on all your fixed drives. The first choice asks you
- where you want to go, then looks for the string you type in the file
- TREE, and, if it finds it, takes you there. This (possibly) fuzzy
- search is done with one of The Berkeley Utilities, grep (grab
- regular expression and print).
-
- CtrlF9 gives you the statistics on the current file
- such as size, and date and time of last modification.
-
- AltF9 gives you a report on the present time and date
- in a message window.
-
- F10 (or CtrlQ) is the normal way to quit MSH. You are
- offered a choice to just quit or to save your command stack (all the
- commands you have typed in your Mi-Shell session) in a file called
- CMD.LST before quitting (CtrlC is the other way to quit).
-
- ShiftF10 toggles the swap menu. When swapping is enabled, Mi-Shell
- will swap itself out of RAM, leaving occupied less than 8K of memory
- of the first 640K. This is essential for programs that
- need lots of memory like Xerox Ventura. When the application program
- is finished, Mi-Shell reinstalls itself as you left it.
-
- CrlF10 invokes REBOOT1.COM, a small utilty which will
- reboot your PC when run.
-
- ALPHA KEYS
-
- CtrlA writes the files selected in the current directory
- on the command line, with a blank space between each name at the point
- where the cursor is. If the cursor is in the middle of the command
- line, the files will either overwrite or insert, depending on whether
- you are in overwrite or insert mode (the Insert key toggles that).
-
- CtrlB takes you immediately to the beginning of the
- directory panel. If you have many files in the sub-directory, and
- you need to get to the "top" quickly, this function keeps you from
- having to use PageUp many times to get to the top. The complementary
- function is CtrlPageDown to take you to the bottom of the panel.
-
- CtrlC is a built-in function of Mi-Shell for interrupting
- out of Mi-Shell and returning to DOS. Why do you need it when F10
- already takes you out? If you have modified some MSH files, and all
- hell breaks loose, this is the way out.
-
- CrlD is a simple way to find out the definition of a
- Mi-Shell standard definition. You must type the name on the command
- line, like hide_all or exec, then press CrlD. The definition will
- appear on the command line where it can be edited, then executed with
- AltX. Beware that such a change is only temporary.
-
- AltD toggles the debug mode. When debug is turned on,
- you are first shown the stack, and should press s (s is for step through)
- to continue. You then perform the action you wish to examine in great
- detail, and the debug window appears again. You normally step through
- each move, watching the stack as you go. Shifts will let you skip
- the details of user-defined functions. You can leave debug mode by
- pressing g (for go)
-
- CtrlE makes the current panel twice as tall, given the
- ability of your screen to display that number of lines. The complementary
- function is CtrlT which Trims the panel to half the number of lines.
-
- AltE sorts the directory panel entries by EXTension,
- the portion of the filename to the right of the period.
-
- AltF invokes a very useful routine that first sorts
- the directory panel entries by Name, and then locates the first filename
- which begins with what you have typed on the command line.
-
- CtrlF invokes the File menu. The possible choices are:
-
-
- * F2 select
-
- * F5 copy all
-
- * F6 move all
-
- * F8 delete all
-
- * find a string (TBU)
-
- * find a file (TBU)
-
- * zip all selected files
-
- * create a new file in current directory
-
- * print the file being pointed to in current directory
-
- CtrlG activates the drive menu, which lets you change
- drives. If the drives shown in this menu do not reflect your computer,
- you will have to modify the definition of dmenu in MENU.MSH accordingly.
-
- CtrlH (see F1) Help
-
- CtrlI activates the mIscellaneous menu. The choices
- are:
-
- * ShiftF1 ascii table
-
- * CtrlL disk stats
-
- * ShiftF7 DOS commands
-
- * panels stats statistics on the current panel
-
- * ShiftF4 1/2 line top menu
-
- * ShiftF5 capture screen
-
- * ShiftF2 fit on other panel (TBU)
-
- * F9 change configuration
-
- * CtrlF1 list of primitives
-
- * AltF1 list of standard definitions
-
- * ShiftF10 swap menu
-
- CtrlJ places the current filename on the command line
- at the cursor. This is often used when a program can be invoked with
- a filename as a parameter, to place the filename in the right place
- on the command line.
-
- CtrlL asks how much space is used by the current directory
- and how much space is left on the current drive. This is done by the
- Berkeley Utility ls:
-
- ls -MU
-
- CtrlM is the same as the "Enter" key, except it makes
- sure that "Magic" is turned on before executing the program name.
- If you do not know how much memory room a new program may need to
- run successfully, run it with "Magic" turned on.
-
- AltN sorts the directory panel entries by fileName.
-
- CtrlO removes the top menu and the directory panels
- from the screen (leaving the Magic menu in the upper right of the
- screen). When you need to see the full screen, this function is essential,
- and you have the reminder that Mi-Shell is still there since the "Magic"
- menu is visible on the screen.
-
- AltO works like CtrlJ, except that it places the full
- pathname of the current file of the Other directory panel on the command
- line.
-
- AltP uses the text on the command line as the match
- pattern for displaying files in the directory panel. If the command
- line is empty the function assumes *.* as the pattern and displays
- all files. This means that if you type *.msh on the command line,
- then AltP, only the files with an extension of msh will be displayed
- in the directory panel.
-
- CtrlR causes Mi-Shell to reread the current directory.
- Refreshing the display is indicated after some action which may have
- changed the contents of the directory.
-
- AltS sorts the directory panel entries by Size, largest
- file first.
-
- CtrlT Trims the height of the directory panel by half
- (opposite of CtrlE).
-
- AltT sorts the directory panel entries by date and Time,
- most recent first.
-
- CtrlU switches the two directory panels. This is sometimes
- useful if you are used to copying files left to right, and find the
- target directory on your left. CtrlU will put it on the right with
- the source directory on the left.
-
- AltV displays a message window listing the command stack,
- current stack pointer on top. If you forget what you have done six
- commands ago or so, CtrlV will show you the list and remind you what
- commands you can scroll through with the CtrlHome or CtrlEnd keys.
-
- AltW toggles the format of the directory panel entries
- between wide and narrow. The wide display shows the Name, Size and
- date/Time of the entries. The narrow displays shows three columns
- of just Names.
-
- CtrlP activates the Panel menu. The choices are:
-
- * CtrlE Expand
-
- * CtrlT Trim
-
- * CrtlO hide (toggle)
-
- * AltW Wide/narrow toggle
-
- * top/bottom toggle
-
- * CtrlU swap
-
- * CtrlR Refresh
-
- * Sort Panel by . . .
-
- CtrlQ (see F10) Quit
-
- AltR will loop for each of the files selected, applying
- what is on the command line to the basename (filename without the
- extension) of each of them. More precisely, the basename will be appended
- at the end of the command line, which will then be executed, for each
- of the files selected.
-
- AltS invokes a special menu called smenu, which you
- have to define.
-
- CtrlV invokes the View/edit menu. The choices are:
-
- * F3 view current
-
- * F4 edit current
-
- * edit all selected if your editor allows it.
-
- * ShiftF3 hex dump (TBU)
-
- * word count of all files selected (TBU)
-
- * CtrlF3 browse all selected if your browser allows it (TBU)
-
- AltW (see ShiftF9) Where to ?
-
- AltX eXecutes the command line as a Mi-Shell script.
- For instance, typing hide_all on the command line, followed by AltX
- will hide (almost) all the permanent menus, or if they already are,
- bring them back.
-
- OTHER KEYS
-
- PageUp moves you quickly in the directory panel, up
- one "page" in the "Wide" display mode, or one column in the "Narrow"
- display.
-
- PageDown moves like PageUp, except in the other direction.
-
- CtrlPageUp jumps from the present directory to the "parent"
- directory. Another way to go to the parent is to page up to its entry
- (written as "..") and to hit Enter.
-
- CtrlPageDown jumps the current pointer to the bottom
- entry of the panel directory.
-
- Home is one of the keys useful in editing the command
- line. It moves the cursor to the start of the command line.
-
- End moves the cursor to the end of the command line.
-
- CtrlHome retrieves the most recently used command to
- the command line ready for execution or editing.
-
- CtrlEnd retrieves the "next command" the one at
- the other end of the stack to the command line.
-
- The UpArrow and DownArrow move the current pointer
- up and down in the directory panel.
-
- The LeftArrow and RightArrow move the command
- line cursor left and right.
-
- ShiftUpArrow (in the numeric keypad) moves the current
- directory panel Up;
-
- ShiftDownArrow (in the numeric keypad) moves the current
- directory panel Down.
-
- ShiftRightArrow (in the numeric keypad) moves the current
- panel Right.
-
- ShiftLeftArrow (in the numeric keypad) moves the current
- panel Left.
-
- Grey+ selects all files, or all files that match the
- pattern on the command line, and clears the command line.
-
- Grey- deselects all selected files, or all files that
- match the pattern on the command line, and clears the command line.
-
- Grey* activates the top menu. The cursor keys now move
- among the menu choices, and the "Enter" key will run the one chosen.
- Esc will deactivate the top menu.
-
-
-
- Miscellaneous Information:
-
- Mi-Shell was written in C by Jean Michel. Jean spends most
- of his time doing research in mathematics at the prestigious Ecole
- Normale Superieure of the rue d'Ulm in Paris. In his spare time, he
- writes software, collects exotic butterflies and plays Go
- (For information about Go, write the AGA, P.O. Box 297, Old Chelsea
- Station, New York, NY 10113). Mi-Shell makes use of Curses, the standard
- Unix windows library. This DOS implementation of Curses may be marketed
- by OPENetwork at some future date.
-
-
- For Technical Support, OPENetwork maintains a free 24-hour BBS
- (718) 638-2239, N-8-1, where you can find out the latest developments
- on our business and products.
-
-
- Mi-Shell's main strength is its programmability. As shipped, it has
- been programmed to reflect the habits and tools used by Jean Michel
- and by the staff of OPENetwork. Some of these tools are well-known,like
- Turbo-C, Xerox Ventura, PKZIP, TeX, The Norton Utilities; some are less
- well known and are distributed by OPENetwork:
-
- * The Berkeley Utilities, a set of Unix commands for DOS,
- partly written by Jean Michel and partly written by Patrick Merrissert
- Coffinieres (another French mathematician and Go champion who is a
- full time software developper). The Berkeley Utilities retails for
- $200.
-
- * DELTA, a wonderful comparison utility written by John Lowenthal
- (a principal of OPENetwork, a professional software developper and
- a well-known bridge champion). DELTA retails for $100.
-
- OPENetwork also engages in Neural Research (Stephan Lugert), in Holography
- (Ron Erickson), in Go programming (Janusz Kraszek) and in Statistical
- Consulting (Jean-Claude Chetrit).
-