Pandora - (Not Just) Another Tpu Editor --------------------------------------- M.P.Gerlek @ Merrimack College 2 Robinson Drive Bedford, MA 01730 Old EVE has been modified yet again, and this one is called "Pandora". It began as a modified EVE for the sole use of myself and a few others here at Merrimack. Fortunately or unfortunately, it has grown extensively. It is essentially a collection of many different procedures gleaned from many different DECUS Library tapes by many different authors, too numerous to mention (though often referred to in comments here and there). (Suffice it to say I gleefully acknowledge their rights to authorship and appreciate it greatly, especially). Description ----------- The commenting of the source code is perhaps a bit wifty at times; apologies to those concerned, but all is still in testing stages and I tend to change lines at whim. I submit this more as an example than as a "better" editor; you are strongly urged to customize the system to fit your own needs. Most new commands are not explained fully in the help library, but they are self-explanatory in most cases. I have assumed the Reader has some familiarty with EVE and TPU and therefore not written a tutorial specifically for Pandora - see Digital's documentaion for EVE and TPU if needed. Based on the theory that "A Happy Editor is a Spawned Editor", Pandora is designed specifically to be run as a Kept ("spawned") Editor. I have included all the files needed to support this. By simply executing the command procedure SETUP.COM in your login.com, all will be in readiness for later use. SETUP.COM defines all the needed logicals and such to create the editing environment. It also defines the DCL command PANDORA, which will spawn off the editor initially and later re-Attach to it. The created Subprocess serves as your total editing environment -- it can contain literally dozens of files, multiple windows, and other such neat things. The subprocess -- and this is the Important Factor -- can be left (i.e. you can return to the DCL $ prompt) and then returned to again by re-entering the PANDORA command, with everything intact -- just the way you left it. The same files will be there, and at the exact point you left them from. (Nifty!) Notes for Use ------------- (1) Like other EVEs, an extensive keypad has been defined utilizing both vt200 keys and control keys. All commands, however, may still be entered with the DO key. (2) Funny quotes appear at the bottom of the screen every time you invoke Pandora. Yes, this is just ripped off certain EMACS versions, but imitation is the sincerest form of flattery. You may either just rip out this section of code (procedure pand$yow) or edit the quote file yow.txt to include your own messages. (3) A recent kludge yeilded 3 windows, not just 2. However, these three are incompatible with the original two. See source code for explanation of why this feature must be treated delicately. (4) A user's private command file may not be specified in the normal manner since everyone runs off the same command procedures. Defining the logical PAND$COMM_FILE to point to your .TPU file will allow Pandora to read it in after booting, thereby eliminating need for the "/Command=" qualifier as well as the success messages normally present. (5) This is NOT EDT. Don't try to do any silly EDT-type things. Pandora does not - and never will - support EDT-type commands or keys. Don't get confused. (6) Running as a subprocess, you must remember to WRITE out files you have modified before using them from your main process. If you forget to write it out, it won't be there. (7) Exit (^E) will END your editing session; use Attach (^Z) to suspend it leave your files intact. (8) A help library is there; use it. Also use the KEYMAP command, which displays a list of all the keys defined and what they do. (9) A hook is provided to prevent you from Logging out while Pandora is still running. This may be removed if needed -- see SETUP.COM. Files Contained Within (total: 21) ---------------------- AAAREADME.1ST - this file BUFED.TPU - external TPU code for Pandora BUILD.COM - program to "create" Pandora KERNEL.TPU - external TPU code for Pandora KEYDEFS.TPU - external TPU code for Pandora KEYPAD.TXT - help documentation LIFE.TPU - external TPU code for Pandora LOGOUT.COM - program to prevent accidental logout PANDORA.COM - program to control entry/exit from editor PANDORA.HLB - help library, created PANDORA.HLP - help library, text PANDORA.TPU - source code to EVE, Pandora, et al PANDORA.TPU$SECTION - section code for Pandora RECCUTPAS.TPU - external TPU code for Pandora SETUP.COM - program to "setup" editor at login time SHELL_SORT.TPU - external TPU code for Pandora TITLE.PIC - (self-explanatory) TPU_CALLUSER.EXE - image called by TPU's CALL_USER routines TPU_CALLUSER.FOR - source of above, by Mark Oakley of Battelle TPU_CALLUSER.OBJ - object of above YOW.TXT - boot-up quotes Building Procedure - creates 4 new files, all of which are local copies of ------------------ files currently included in this directory A. Define the logical PAND$LIBRARY to point to this directory with all the pandora-related files in it. For example, $ Assign dua0:[pandora] pand$library B. Execute the BUILD.COM. $ @build Note that this part takes a bit of time - be patient, and keep a watch for errors. C. Change the line in SETUP.COM that defines the logical PAND$LIBRARY; make it point to your site's directory containing Pandora. This is the same command as you did in (A), but this time make it permanent and put it in the setup procedure. D. Add the line $ @some_dir:setup to your login.com procedure, where 'some_dir' is the dir with all the Pandora files (aka PAND$LIBRARY). E. The DCL command Pandora now will invoke the editor. Hint: define the key F11 to Pandora, e.g. $ define/key Do "Pandora" /term /noecho /noLog -M.P.Gerlek 4 December 87