C SWING - A Directory and File Management Tool ---------------------------------------------- SWING is a VAX/VMS utility for displaying the graphic representation of the VMS directory structure on any terminal that can support the SMG routines - that is primarily the VT100, VT200 and VT300 series of terminals. SWING is designed to make life easy for a user who frequently performs directory or file operations within his or her directories. SWING displays the top eight directory levels of the user's directory structure. If there are more than eight levels a diamond is displayed in the right-most column indicating that there are non-displayed directories. SWING has a two level help facility. Quick menus are available via the ? option. Standard VMS help is available via the H or HELP (LK201) option. The C language version of SWING was written by Simon Brown, and maintained by him through V3.2. It has been modified by many people, and is currently maintained primarily by Mats Akerberg and Harry Flowers (see end of file). Most of the documentation (including the major part of this file) was written by S. J. Brown. Although the online help is good, you should read the manual. Among features added after V3.2 are the "Y" option to use a Un*x-like "more" to view a file. V3.5 added captive account handling to SWING. In particular, the goal was to prevent doing anything outside the current directory structure and disable execution of arbitrary DCL commands. Also, under the Directory manager, a CR will act the same as a "F"; this is generally an intuitive action tried by new users. (The function of CR may be used to exit when the MATS_HACK option, described later, is defined.) For captive accounts the following options have been disabled: Opt Description DirMgr FilMgr I Introduce dir structure Yes N/A ^D User-defined key defs Yes Yes (See note) $ Spawn Yes Yes ! More spawn N/A Yes S Submit to batch N/A Yes < Import files Yes Yes > Export files N/A Yes X Execute file N/A Yes Note that SWING$SAVE should point to a writable directory outside the user's directory structure. This allows the system administrator to configure the user's options file for choice of editor, queues, and key definitions. The user could change them if SWING$SAVE is accessible under their structure and compromise the setup by editing in key definitions. Disabling ^D while retaining the ability for the administrator to customize the key definitions is seen as a feature that must be used carefully. There is also a foreign command line option to SWING to immediately invoke the file manager: "/file_manager" (VMS-style) or "-f" (Unix-style). This option specified on the command line will act just as if "F" were entered as soon as you get the directory manager screen. This was added in V3.5.1. Also note that there are two "flavors" of key bindings. The MATS_HACK option in SWING.H determines which "flavor" is used. With MATS_HACK, a carriage return becomes exit, and some commands are terminated with DELETE instead of CR. Further modification history detail may be found in SWING.C itself. If you have any problems with C SWING, or even an enhancement that you think would be of general interest, contact either of us: Mats Akerberg Harry Flowers Internet: mats@efd.lth.se flowers@memstvx1.memst.edu Bitnet: MATS@SELDC52 flowers@memstvx1