:::: ::: ::::: :::: :::: ::: ::: ::: ::: ::: ::: ::: ::: ::: ::: ::: ::: ::: ::: ::: ::: ::: ::: ::: ::::: ::::: ::: ::: ::: :::: :: :: :: ::: ::: ::: ::: :: :: :: ::: ::::::::::::::::::::: ::: ::: ::::::::::::: ::: :::: :::: ::: ::: ::: ::: ::: ::: ::: :: :: :: ::: :::: :::: ::: :: :: :: ::: ::::::: ::::::: :: ::::::: ::::::: ::::: ...Son of Eve Jef Kennedy PBR & Associates Abel is a VAX/VMS VAXTPU-based editor built on Digital's Eve. Abel provides the user with capabilities not previously found in Digital- provided editors and can quickly become a valuable productivity tool. Abel is very sensitive to changes in Eve. Abel version 1.0 is built on Eve version 1.1-024; this is currently the only supported configuration. From talking with Jim Burrows (lead of Eve's development group), Abel will *not* work under Eve version 2 (VMS 5.x). It will need to go through some significant changes before it will work again (wanna help?). Please contact me if you have any questions about Abel: Jef Kennedy PBR & Associates 8500 Station Street, Suite 210 Mentor, Ohio 44060 216/946-6833 The Abel software is given to the public domain in hopes that it will provide others more advanced editing capabilities. You are invited to make changes. If you make significant improvements to Abel, please share them with others in the same spirit that you received Abel. Abel has been in the works for ever since the orignal release of Eve in VMS. During that time I've received support from quite a few people. I'd like to thank the following people for one reason or another: Jon Pinkley, Westinghouse Oceanic Ken Hutchison, PBR & Associates (neither one of the above use Abel...hmmm) Steve Long, Digital Equipment Corporation Eva and Eva2 users Abel beta-testers Gould, Ocean Systems Division PBR & Associates Centerior Energy Davis-Besse Nuclear Power Plant Systems Support Eve Developers Eveplus Developers The Abel software, manuals, online help, and training material are subject to change without notice and should not be construed as a commitment by it's authors, contributors, or employers of either. Topics Word-processor, Text-processor, Text-editor: Compared Word-processor, Text-processor, Text-editor: Conclusions EDT Editor VAXTPU Overview VAXTPU Files VAXTPU Products EDT-Emulator Eve Abel Overview Abel Extensions to Eve (Demonstration) Abel Miscellaneous Reference: Eve Commands Reference: Commands Added to Abel Reference: Eve Commands Superceded by Abel Word-processor, Text-processor, Text-editor: Compared Word-processor aka: WYSIWYG mode: interactive purpose: produce "publication quality" documents features: spell check, thesaurus, hyphenation, formatting structures: word, paragraph, page, chapter, document, outline, lists, line, range, block examples: WPS+, WordPerfect, Wordstar Text-processor aka: post processing of imbedded commands mode: non-interactive purpose: produce "publication quality" documents features: hyphenation, formatting structures: word, paragraph, page, chapter, document, outline, lists examples: Runoff, TeX, Troff Text-editor aka: editor, provided by OS mode: interactive purpose: edit files for machine's use features: structures: word, paragraph, line, range, block examples: EDT, Eve, Abel, TECO, vi, VTED, TV Word-processor, Text-processor, Text-editor: Conclusions +----------------+ +----------------+ | | | | | WORD-PROCESSOR | - - - - different modes - - - - - - | TEXT-PROCESSOR | | | | | +----------------+ +----------------+ \ / \ / different mode different purpose different purpose \ / \ / +-------------+ \ | | / | TEXT-EDITOR | | | +-------------+ EDT Editor Previous VMS editor No further development work Retire over time VAXTPU Overview "High-level" procedural language Provides editing primitives Editing engine (compiler and interpreter) Hardware support: all VAX/VMS systems all work done in memory (no work files) screen driver supports ANSI terminals Features: windows patterns buffers bound/free cursor motion markers insert/overstrike editing ranges journaling processes key definitions VAXTPU Files Section files Compiled VAXTPU code Binary .GBL was the old file type .TPU$SECTION is the current file type Large: EDT-em: 96 blocks EVE: 206 blocks Abel: 500 blocks (+/-) Command files VAXTPU commands Ascii text Source for TPU's editing interfaces are command files File type is .TPU Journal files File type is .TJL Keystrokes saved every 500 (default for VAXTPU) Digital says they're non-editable (unlike EDT's) VAXTPU Products ACL Editor allows manipulation of ACE's comes with VMS Language-Sensitive Editor assists in source-code entry on-line language help compilation within editor assists in review and correction of errors invoke from VAX Debug and VAX PCA interfaces to VAX SCA and VAX DEC/CMS VAX Notes conferencing utility Vax Cluster console system console for multiple machines runs on a nearly dedicated MicroVAX II EDT-Emulator Editing interface to VAXTPU Offers most EDT keypad functions Not compatible with EDT command files Minimal line mode support Will be dropped from VMS 5.x distribution To invoke: $ EDIT /TPU /SECTION=EDTSECINI Eve Editing interface to VAXTPU Free cursor motion Multiple windows Multiple buffers Key definitions To invoke: $ EDIT /TPU /SECTION=EVESECINI Abel Overview Editing interface to VAXTPU Enhanced Eve (2 intervening generations) Invoking DCL - Digital's Command Language $ EDIT /TPU /SECTION=ABEL Mail $ DEFINE MAIL$EDIT "CALLABLE_TPU" $ DEFINE TPUSECINI disk:[dir]ABEL DTR - Datatrieve $ DEFINE DTR$EDIT "TPU" $ DEFINE TPUSECINI disk:[dir]ABEL RDO - Relation Data Operator $ DEFINE RDO$EDIT "TPU" $ DEFINE TPUSECINI disk:[dir]ABEL RDU - Request Definition Utility Copy/customize SYS$SYSTEM:TDMSEDIT.COM to call editor of choice using guidelines in file's documentation $ DEFINE RDU$EDIT disk:[dir]yourfile.COM Abel Extensions to Eve Additional TPU utilities graphic routines, general routines For TPU-hacks to add to their own libraries. Qualifier support initializing, processing, displaying Support for qualifiers, ala DCL. Original Eve developers wanted to keep the command interface simple, but people using Eve are probably familiar with DCL. Qualifiers allow greater control of commands not previously possible. | Use SELECT, REMOVE, INSERT HERE example. | Want to cut copies of portions of text | without affecting existing text, and | append them together. | | 1 SELECT, move cursor | 2 REMOVE/NOREMOVE first time | 3 REMOTE/NOREMOVE/APPEND several times | 4 INSERT HERE | | Ascii character insertion for inserting any ascii character Allows any Ascii character to be inserted in text, not just the characters available from the keyboard. Autoindent copies previous line's whitespace Productivity-tool for programmers. Hard to get used to editors without this function. | Make sure autoindent is off and show what | a return does. Turn autoindent on and | repeat the return. | | 1 SET AUTO OFF | 2 Press return on a line with leading space | 3 SET AUTO ON | 4 Repeat 2 | | Block functions select, remove, insert here, text Allows easy manipulation of blocks of text. Mode-sensitive. Also allows insert of a block of user-defined text. | Show example of BLOCK SELECT, BLOCK | REMOVE, BLOCK INSERT HERE, and BLOCK TEXT | in both insert and overstrike modes. | | Buffer editing Eveplus' select and remove buffers View, change and delete buffers quickly and easily. Makes multiple file editing all that much easier. Centering enhanced multiple lines, definable position Center one line or an entire range. Allows user to override margin settings or to center at the cursor position. | Make sure margins are wide, type is some | text, SELECT it, and CENTER it. | | Show CENTER /HERE command. | | 1 Make sure mode is insert | 2 Move the cursor to place to center | 3 CENTER/HERE | | Simple graphics box, cube, line Not business graphics, but its entertaining. Draw a cube or box by specifying one corner with a BLOCK SELECT, and issue the CUBE or BOX command from the diagonally opposite corner. Re-orient or change the cube's depth. User can define characters to draw with. | Make sure there is plently of room to | work in and create various cubes and | boxes. | | DCL Interactive place cursor in DCL buffer and go Makes using DCL in the editor much easier. Type your DCL (or whatever product you've gotten into) command without having to preface it with other keystrokes. | Make sure DCL is not set interactive and | show effect of pressing return. SET DCL | INTER and show effect of pressing return. | | Default margins set margins for all (new) buffers Default tabs set tabs eve for all (new) buffers Allows user to define what margins or tabs any subsequently created buffers should have. Useful since programmers like to change their tabs. EDT keypad mode for EDT in Abel For EDT die-hards, a keypad-mapping that is functionally similar to EDT. | Give KEYPAD EDT command, allow someone to | do some EDT editing, then give KEYBOARD | ABEL command. | | Erase/Restore for characters, words, lines Separate character, word, and line erase buffers are used to allow the user greater flexibility in restoring. Search wildcard, ascii numbers, case-sensitivity Use this instead of Eve's FIND to search for wild-carded strings or specific Ascii characters. Allows the user to specify bi/unidirectional and case-sensitivity/insensitivity. Remembers previous search string for reuse. | Give SEARCH /ASCII 65 to find A's in | text. | | Substitute looping, interative, range Includes all the features of Search, plus allows range-restricted substitution, looping and iteration, and delimited string specification. Also allows user to control case-matching on the substitute string. | Substitute using a delimited | specification: SUB /DELIM -A-B- | | Substitute using a wildcard: SUB /WILD | " Reference: Eve Commands Superceded by Abel Movement commands line, move by line move up, move down Buffer commands buffer get file, write file set right margin Editing commands center line delete, return erase character erase line, erase start of line erase word, erase previous word fill paragraph select, remove, insert here Window commands other window Environment commands exit Process commands dcl