PUBLIC MENU SOFTWARE This software system has two parts. The first part brings up a menu of software available in SYS:PUBLIC;. From this menu the user can load the software of his choice. The list of software that is available in this directory must be maintained separately, using the second part of this software system. This file discusses each part separately. The Public Software Menu This is set up as a system in SYS:SITE; and is therefore eligible for the System Menu and/or system-keys. Its default system-key is #\O (for Other Software) and its default menu column is PROGRAMS. A menu of the names of the software packages available is displayed. For each software package there are three possible choices: LEFT -- load the software MIDDLE -- launch the software (if that makes sense) RIGHT -- display the package's -READ-ME- file (if it exists). LEFT is almost always available, MIDDLE is available only if it makes sense to launch the software and if it can be done without arguments, and RIGHT is only available if the package has a documentation file. The mouse documentation line in any case displays the possible choices. When you first bring up this menu the software reads the contents file on SYS:PUBLIC;. Successive entries to this menu will not re-read the contents file since the contents should not change too quickly. However, if it has been a long time since the first time you launched the Public Menu (or you just want to make sure you have the most recent contents), you can click middle on the second item in the menu, which will cause a re-read of the contents file. The Public Menu Manager The topmost item in the Public Software Menu is the Public Menu Manager, which is a friendly interface to the functions that maintain the contents file of the Public directory. If you wish to add an item to the Public Software Menu, remove an item, or edit an item, you should click middle on this. Another menu will appear, asking you whether you want to add, remove, or edit an item. If you select remove or edit, a menu (that will look strangely familiar) will appear asking for the item you wish to remove or edit. If you select add or edit (followed by the item you wish to edit), then a CVV window will appear that will allow you to enter or edit all of the data concerning that item. Beware -- this will change the Public Menu for everyone on that site. The contents file itself should NOT be edited manually. The following functions are provided by this system: NEW-PUBLIC-CONTENTS -- starts a contents file, initializing it with NIL. MAKE-PUBLIC-CONTENTS -- if there is no contents file, it makes one via NEW-PUBLIC-CONTENTS. LOAD-PUBLIC-CONTENTS -- reads in the contents file ADD-TO-PUBLIC-CONTENTS -- adds a new software package to the contents file. REMOVE-FROM-PUBLIC-CONTENTS -- removes a software package from the contents file. All are resident in the Window (W:) package. Documentation is provided for each function, explaining its use. Known problems, desired improvements, and usage suggestions Occasionally, when in Zmacs or trying to go into Zmacs (to read documentation), the Public Menu appears to fall into "No Selected Window" state. It has not happened often enough for me to find and debug it. However, the work-around has been trivial (so far, anyway): press [SYSTEM] [L] and then [SYSTEM] [E]. It would be nice if the "Read Documentation" option would return you when done to the Public Menu. I have not found a clean way to do this. If you are writing Public Software, and you are providing a "launchable" function that takes arguments, then write another function that takes no arguments and instead asks for the arguments from the user, and then calls the original function with the arguments. This new function can then be consistently launched with ease from the Public Menu. So that brand new software is easy to see, when you add new software to the menu, use a hyphen as the first character in its name. It will then appear at the top of the menu preceded by a hyphen. A week or two later, when the software is no longer new, the item can be edited and the hyphen removed from the name. For more information or to make suggestions contact Brian Kennedy .