.require '[rdpasc]rdpstd.rno' Educational Computing Kalamazoo College .r;Rev. 9/22/86 .c;Command Guide for EDT .title ########EDT Guide .headers ^&I. Introduction\& .c;^&A. Scope\& The outline below indicates the organization. This guide is a companion to "Text Editing with EDT". The commands summarized here are those used with the VT-100 and compatible terminals for program writing and for word processing. The EDT implementation discussed here is based on TPU, the VAX Text Processing Utility. As such it provides many but not all of the commands documented ^& Topic Page\& I. Introduction A. Scope 1 B. VT-100 "Keypad" Commands 2 II. Essential functions 3 III. Moving the Pointer A. Definite Motion 3 B. Motion by Entity 4 C. Searches 6 IV. Text Alteration A. Insertion 6 B. Deletion 8 C. Block Moves 9 D. Substitutions 10 E. Formatting 10 V. Advanced Commands A. Customizing the Editor 13 B. SET 14 C. SHOW 15 D. Programmer's Delights 16 E. Buffers and Windows 17 F. Key Redefinition 19 G. Other commands 19 .b-1 .c;page 1 .page for EDT in DIGITAL's EDT manuals. It does, however, execute those commands more rapidly and with less load on the system. It is invoked, instead of EDT, by the commands ED, EDI, or EDIT. The command EDITEDT will invoke the original EDT, when needed. Because most text modification takes place at the location of the text pointer, we discuss the commands that give you control of the pointer's position before we discuss the text alteration commands. Each command is identified below first by the actual label(s) on the key(s) to be typed and then (when one exists) the name of the function, in quotes. A brief discussion indicates the effects of the command. .c;^&B. VT-100 "KEYPAD" Commands\& To enter the keypad screen mode from line mode, type "C" in response to the * prompt. At the start of a session you go directly into the screen editing mode. EDT commands are given from the VT-100 in three ways: the top right row of four arrow keys, the keypad on the right, and several different main keyboard keys either while holding down the (control) key or after pressing the key. Many of the command keys have two functions: the standard function, achieved by pressing the key, and the alternate function, achieved by pressing (which the DIGITAL documents often call the "GOLD" key) and then the command key (we will denote this combination by, for example, " + PAD 1", which is the "change case" command on the VT-100. In this respect acts very much like the "second function" key of a scientific calculator. The "+" character is not used in EDT commands, hence it is convenient to use here to link characters in a command sequence. An optional or variable entry will typically be enclosed in square brackets, [], below. Those commands listed below preceded by "[n]" can be executed several times with a single series of keystrokes. Type " + [the digits for n on the KEYBOARD number keys] + [the command]". For example, typing "PAD 1" moves the pointer one word, while typing " + 6 + PAD 1" will move the pointer 6 words. Giving n = 1 is identical to giving no n at all. A number of the commands documented below are customizations defined either in a user's personal initialization file, generically named TPUINI.TPU, or in the Kalamazoo section file KAZSECINI.TPU$SECTION. Virtually all of them can be redefined by suitable modifications of the standard TPUINI.TPU file. Commands created in this way are not documented by DIGITAL and are identified below by "(TPUINI)" at the end of their discussion. See section V(A) "Customizing the Editor," below. .page ^&II. Essential Functions\& "HELP" A diagram of keypad functions and control key descriptions will appear on your screen. Instructions will be given on the screen. + H Examine terse information on key definitions, including those added locally (TPUINI). + PAD . "RESET" Cancels the effects of the key and "SELECT" functions or any key sequence that is partially entered; also clears the MESSAGE buffer, the last two lines of which are routinely displayed at the bottom of the screen. CTRL/W Refreshes the screen display, used in case system messages or other garbage corrupt the display during an editing session. Also used when recovering from an accidental termination of a session with CTRL/Y or . When CTRL/Y gives you the VMS $ prompt, simply type CONTINUE to re-enter the editor and then CTRL/W to refresh the screen. If you type the key instead of or , the screen will freeze. Then type again to initiate LOGIN. After giving your username and password, you will be told that you have a disconnected process and asked if you want to attach to it. Respond affirmitively, and then type CTRL/W to clean up the screen. ^&III. Moving the Pointer\& .c;^&A. Definite Motion\& + PAD 5 "TOP" Moves cursor to top of buffer. + PAD 4 "BOTTOM" Moves cursor to bottom of buffer. [n] ARROWS The arrows can be used to move the cursor through the buffer at any time. Their use does not change the direction of motion established for entity jumps, as discussed below. If characters are present, UP and DOWN arrows may exhibit .page horizontal wander, and LEFT and RIGHT arrows may exhibit jumpiness. + A full window jump backward (TPUINI). + A full window jump forward (TPUINI). .c;^&B. Motion by Entity\& The pointer can be moved forward or backward in units of characters, words, lines, sentences, paragraphs, sections, or pages. Each of these entities is recognized by EDT in terms of the specific characters that separate them. The default definitions are intuitively reasonable. See section V(D), "Programmer's Delights," below, for a way to redefine words. ^&1. Establishing the direction of future jumps\& PAD 4 "ADVANCE" Sets the current direction of the motion commands to be toward the end of file. PAD 5 "BACKUP" Sets the current direction of the motion commands to be toward the start of the file. Also known as "REVERSE". ^&2. Pointer Jumps\& (These are listed approximately in order of increasing jump size.) [n] PAD 3 "CHAR" Moves pointer one character at a time in the current direction. [n] + Move 8 characters in the current direction; (TPUINI). [n] PAD 1 "WORD" Moves pointer one word at a time in the current direction. .page [n] PAD 2 "EOL" Moves pointer to the end of the line: moves the pointer in the current direction until it reaches a and then leaves it BEFORE that ; if already at the end of a line, the pointer moves to the end of the next line. Moves cursor to the beginning of the present line; if at the start of the line, moves it up one line. [n] PAD 0 "LINE" Moves pointer to the start of the line: moves the pointer in the current direction until it reaches a and then leaves it AFTER that ; if already at the start of a line, the pointer moves to the start of the next line. CTRL/G or "+SEN" Moves pointer forward to the [n] + CTRL/F start of the next sentence (TPUINI). CTRL/B or "-SEN" Moves pointer backward to the [n] + CTRL/B start of the next sentence (TPUINI). [n] PAD 8 "SECT" Moves pointer 16 lines (one "section"), in the current direction. CTRL/P "+PAR" Moves the pointer forward to the beginning of the next paragraph (TPUINI). CTRL/N "-PAR" Moves the pointer backward to the start of the next paragraph (TPUINI). [n] PAD 7 "PAGE" Moves pointer to top of page: moves the pointer in the current direction until it reaches a ; leaves it BEFORE the . CTRL/V Mark position (for later restoration using CTRL/R) by inserting a bizarre character string. Can be used to note progress when leaving the editor (TPUINI). .page CTRL/R Restore to marked position; finds and removes the character string deposited by CTRL/V, leaving the pointer at that location (TPUINI). .c;^&C. Searches\& Searching involves specifying a character string and then telling EDT to move the pointer (in the current direction) until it finds that string. If there is no such string between the pointer's original location and the end of the file in the current direction, the pointer will be returned to its starting place. By default, EDT will ignore the cases of alphabetical characters ("general"), and will leave the pointer before the start of the found string ("begin"). See the discussion of SET SEARCH and SHOW SEARCH, in section V. EDT stores the most recently used search string in a special buffer. If you want to search for a different string, use "FIND"; if you want to search for the next occurrence of the same string, use "FNDNXT". + "FIND" The cursor moves to the bottom left of the screen and EDT prompts you with "SEARCH FOR: "; you respond by typing on the regular keyboard the text string sought, followed by the keypad key for the direction you want the search to proceed in, ADVANCE or BACKUP, or by to proceed in the current direction. [n] "FNDNXT" Moves pointer to next occurrence of the text most recently searched for with FIND, in the current direction. ^&IV. Text Alteration\& .c;^&A. Insertion\& In ^&insert mode\&, the default, any key typed on the keyboard is immediately inserted at the position of the pointer; the pointer and the rest of the line are bumped to the right. In ^&overstrike mode\&, any character you type will ^&replace\& the character to the right of the pointer (the one where the cursor is located). In either insert or overstrike mode, typing the key ^&inserts\& that character, without removing any character from the buffer, thereby making a new boundary between lines. .page + A or Toggles the current buffer between + CTRL/A insert mode and overstrike mode for text entry. Be sure that you are in ^&insert\& mode before performing any of the following commands: UNDELETE CHARACTER, UNDELETE WORD, UNDELETE LINE, CUT, or PASTE (TPUINI). + PAD 0 "OPEN LINE" Inserts a AFTER the pointer; this moves any characters that were to the right of the pointer down onto a new next line. This is the most effective method to begin any extended insertion, since it avoids the need to "bump over" a whole line of characters each time one new one is inserted. See section IV(E), Formatting, p. 10, for easy ways to rebuild clean margins. + PAD , "UND C" Reinserts last character deleted (by "DEL C", or by ) at the pointer's current location. + PAD - "UND W" Reinserts last word deleted (by "DEL W" or by ) at the pointer's current location. + "UND L" Reinserts last line deleted (by "CTRL/U", "DEL EOL", or "DEL L") at the pointer's current location. + R INCLUDE the file STANDARD.RNO. Used when editing a RUNOFF file in order to easily set the defaults. (TPUINI). + I INCLUDE the file whose name you give; this will merge a copy of the contents of the named file into the current buffer at the location of the pointer. This permits "boiler plate" word processing and standardized subroutines, procedures, or comment blocks in program code files. + B and + CTRL/W also permit reading named files into buffers. (TPUINI). + D Inserts the character string "__:" which has the effect of a forward half linefeed (moves the print DOWN half a line) when printing on the NEC Spinwriter the .MEM file that RUNOFF produces from your .RNO file with this character string. See + U, below. The character may be displayed as a solid rectangle. (TPUINI). .page + U Inserts the character string "__;" which has the effect of a reverse half linefeed (moves the print UP half a line) when printing on the NEC Spinwriter. See + D, above. (TPUINI). + V Inserts the character = CTRL/H. The two characters on either side of the CTRL/H will be printed in the same position on the paper (overstruck). The CTRL/H character may be displayed as a solid rectangle. See also the RUNOFF guide; (TPUINI). + PAD 3 "SPECINS" For inserting special characters. You will need to know the decimal form of the ASCII number representing that character. Type the following: + [KEYBOARD keys for the digits of the ASCII code] + + PAD 3. Many control characters, such as , are just displayed as a solid block; others, such as (= CTRL/L), are displayed as special symbols on the terminal screen. .c;^&B. Deletion\& [n] PAD , "DEL C" Deletes the character AFTER the pointer and stores it in the character buffer for recovery by "UND C". Deletes the character BEFORE the pointer and stores it in the character buffer for recovery by "UND C". [n] PAD - "DEL W" Deletes characters AFTER the pointer forward to but not including the first character of the next word and stores it in the word buffer for recovery. Deletes characters BEFORE the pointer back to the beginning of the word and stores it in the word buffer for recovery. CTRL/U Deletes text BEFORE the pointer position to the beginning of the line and stores it in the line buffer for recovery. If already at the beginning of a line, this will delete the entire previous line. .page + PAD 2 "DEL EOL" Deletes text AFTER the pointer ^&up to\& the next and stores it in the line buffer for recovery. If already at the end of a line, this will delete the entire next line! [n] "DEL L" Deletes text AFTER the pointer ^&through\& the next and stores it in the line buffer for recovery. .c;^&C. Block Moves\& There are three operations to a "cut and paste" block move: SELECT the block of text, CUT it from its original position into a buffer and PASTE it into the main buffer at the new position. PAD . "SELECT" Records the present location of the pointer as one end of the text string to be specified. When you then move the pointer with any of the commands discussed above under Pointer Position Changes, all of the characters between the current pointer position and the recorded position have been SELECTED for action by, for example, CUT, FILL, or CHANGE CASE. The selected text string will appear in reverse video to show you which characters have been included. PAD 6 "CUT" Puts selected text into paste buffer, ^&wiping out any previous contents\& of the paste buffer, and removes that text from the main buffer. If no select is active, a message is displayed, ^&unless\& the previous operation was a successful search. In that case, the string searched for is CUT into the paste buffer. In any case when material is removed, the pointer stays at the location between uncut parts, which are joined together. + PAD 6 "PASTE" Inserts text from the paste buffer at pointer position. If this is done right after CUT, the net effect is just to load the paste buffer with the selected material. Then the pointer can be moved to a new position and PASTE used to replicate that text. PAD 9 "APPEND" Removes selected text from the main buffer and adds it to bottom of paste buffer. .page + PAD 9 "REPLACE" Swaps the selected text from the main buffer with the contents of the paste buffer. .c;^&D. Substitutions\& For repeated substitutions, first, type PAD . (SELECT), followed by typing the new, replacement text string, which will appear in reverse video at this time. Second, type PAD 6 (CUT) moving the new string into the paste buffer. Third, use FIND to establish a search string. The string you enter is the complete old text that you want to remove and replace by the new string that you have just entered and CUT. Finally, use [n] + "SUBS" to delete the old string, paste the new string in place, and search in the presently active direction for the next occurence of the old string. If the pointer stops at an instance of the old string that you want left intact, use FINDNEXT to skip on to the next one, where you can use SUBSTITUTE again if you want to. + PAD 1 "CHNG CASE" Moves the pointer one character in the presently active direction and changes the case of any alphabetical character moved over, if no SELECT region is active. If a SELECT region is active, all alphabetical characters in it will have their case changed. + Swap characters on either side of pointer, correcting a common sort of typographical error (TPUINI). .c;^&E. Formatting\& ^&1) Tabs and Left Margin Control\& The key functions in two different ways: if typed with the pointer at the start of a line, EDT will insert a combination of characters and spaces to move the pointer over to a specific column; if typed in the middle of a line, EDT will jump the pointer over to the next column divisible by 8, leaving blank space. This is stored in the text buffer as a single .page character, so the character count and the column number will NOT agree. The column number to which an initial will go is the product of two numbers stored by EDT. The first is the "tab size" given by the most recent SET TAB command (section V(B); initialized to 4 in the standard TPUINI file), the second is the "tab level". The tab level is set to 1 initially, and returned to 1 when any SET TAB command is issued. It is increased by 1 each time CTRL/E is typed and decreased by 1 each time CTRL/D is typed (but it is never less than zero). Thus, if the command "SET TAB 4" has been given, followed by two CTRL/E's, typing " + " will create a new line and position the pointer on its twelfth column 12 = 4 * (1+1+1). The tab level is also changed by a CTRL/A command, as discussed below. Two applications of this "structured tabs" feature are for graceful indentation of extended quotes and for the standard presentation of programs in PASCAL. To indent extended quotes without violating the right margin, enter a SET WRAP command giving the total number of columns that will actually be available with the indentation, then use FILL before indenting to even up the margins (see below, part 2). Finally, SELECT the quote and use [n] + T to move it over to the right. If you later discover a need to revise the indented block, first SELECT it and then use [-n] + T to move it back to the left edge of the screen, revise, re-FILL, and finally re-indent. Insert spaces and/or characters, as discussed above. CTRL/A "COMPUTE TAB" Sets the tab level to the present column number divided by the tab size, so that an initial tab will go to the same column as the pointer is presently in. SET TAB must have been previously used. This command fails with an error message if the division leaves a remainder. CTRL/D "DECR TAB" Subtracts 1 from the tab level. CTRL/E "INCR TAB" Adds 1 to the tab level. CTRL/T or Following use of the SELECT command, this will [n] + T change the indentation of a selected block of text. The number of spaces indented will change by the product of n and the most recently SET "tab size". If the number for n is preceded by a .page keyboard negative sign, the block will move to the left. If no negative sign is given, the block will move to the right. ^&2) Right Margin Control\& Use SET WRAP (see section V(B)) to establish the margin desired. Use SELECT, discussed above, to specify a segment of the buffer to be revised. Then use FILL: + PAD 8 "FILL" Rearranges the locations within the SELECTED text to place the maximum amount of text possible on each line, within the bounds set by the last SET WRAP command. Words are not broken, nor are extra spaces inserted within the line. The right hand margin will thus have the same appearance as that of this guide: ragged but with a definite limit. It sometimes fails to correctly handle double spaces after periods. + F Re-FILL the entire present paragraph; pointer must be in the interior of the paragraph. May fail at the top or bottom of the file; may create confusion at page breaks ( = CTRL/L characters). (TPUINI). ^&3) Page Control\& If you are using RUNOFF with the .PAGING command in effect, skip to section V(A), "Customizing the Editor." Type CTRL/L to insert the character at the pointer's position. One page of paper contains 66 lines, of which a few will be skipped over automatically by the printer to avoid printing on the perforation between pages. To leave margins of one inch at top and bottom, you should have at most 54 lines between characters (this manual is being prepared with at most 58 lines between 's), including the header line with page number and any blank lines following it. For easy reading on the screen during editing, put the on a line of its own, or at most with the RUNOFF ".PAGE" command after it. For the draft stages of a paper, insert 's only at the major subunit breaks, such as chapters, where you will want to start with a fresh page eventually anyway. In near-final form, insert the 's and page numbers, etc., as you wish. For example, when first paging a file, you might insert the first and following page header, SELECT, CUT, and PASTE back, and .page then PASTE again at each page boundary, needing only to edit the page number. When you modify a file that is already paged, you will have to go through it "by hand" and rearrange the characters and any headers, page numbers, footnotes, etc.. Your deletions may exceed your insertions, or vice versa, but in either case you will usually want to CUT and PASTE the and page header lines forward or backward to their correct new location. Sometimes it will be simpler to move the excess text instead of the and header. As actual practice will quickly confirm, the procedure described below will be simpler to execute than it is to read! First, move the pointer to the and page header lines at the end of the newly revised page. Second, "SELECT" and "CUT" them out and add or delete blank lines, or "FILL" the margins so that the text is correct where they were. Third, use "BACKUP" and "PAGE" to return to the top of the revised page, and then "ADVANCE" and "LINE" to move the pointer to the first line of that page. Fourth, use [n] "LINE", with n = 54 or = 58 depending on your taste in margins, to move the pointer to the bottom of the page. Now you must think briefly: should the line the pointer is on become the first line of the next page? Remember that you do not want to have the first or last line of a paragraph "orphaned" by itself at the bottom or top of a page, nor do you want to have section titles isolated at the bottom of a page. Use the UP ARROW, if necessary, to move the pointer to the start of a line that is suitable to begin the next page. Fifth, "PASTE" the and page header back into its new location; add or delete blank lines as needed. Steps three and four of the above procedure are done automatically by the following command: + CTRL/P Move to 58 ^&th\& line (bottom) of present page; gives "String not found" error message, but works, if the pointer is at the top of the page (TPUINI). ^&V. Advanced Commands\& .c;^&A. Customizing the Editor\& VAXTPU provides for two stages of customization, called "SECTION" and "COMMAND" files. Command files are compiled each time you start editing, while section files are precompiled, so we have kept our command files small and placed the bulk of our modifications into the section file. The TPU source code for the .page Kalamazoo College section file is SYST:[SYSLOGIN]KAZSECINI.TPU. Unless there is an explicit /NOCOMMAND or /COMMAND=filename, the editor also looks in your current directory for a file named TPUINI.TPU; if it finds such a file, it attempts to use it as a command file. You can obtain your own copy of our standard TPUINI.TPU file (and of the customized versions for SIP writing, and various programming languages) by using the GET command. You may find it convenient to maintain several specific initialization files for the editor: perhaps one for editing PASCAL programs, another for term papers, etc.. If you want to do that, we suggest that you keep one of them named TPUINI.TPU, probably the paper-writing one. Your LOGIN.COM file would then be edited to include, for example, lines such as the following: $! $ ES :== EDIT/TPU/COMMAND=SYS$LOGIN:TPUINI.SIP $! $ EP :== EDIT/TPU/COMMAND=SYS$LOGIN:TPUINI.PAS (SYS$LOGIN is a synonym for your default directory at login time). These would define the new commands ES for editing your SIP and EP for editing PASCAL programs. See the comments in the standard TPUINI files for guidance in modifying them. If you want to make extensive customizations, please come in and talk to us so that we can keep track of what is going on. If you routinely use a microcomputer to emulate a VT100, it may be convenient to give the "GOLD" or "shift" function to a key other than . You may make a separate TPUINI.TPU file to use when editing with that system, adding the following line to the bottom of the new TPUINI.TPU, or the line may be given in response to the "TPU Command: " prompt resulting from " + PAD 7", if you have a initially available: SET (SHIFT__KEY,keyword); Don't forget to terminate each line of TPUINI.TPU with a semicolon! The "keyword" above can be any legal designation in TPU syntax for the key that is to take over for as the "shift key", for example: "PF4", "KP0", "CTRL__G__KEY", etc.. .c;^&B. SET Commands\& With the SET commands you can control some of the operating characteristics of EDT; you use the corresponding SHOW commands to display these characteristics. For more information than is given here on the SET and SHOW commands, including additional ones, refer to chapter 9 of the EDT manual. All of the SET and SHOW commands given here are EDT Line Mode commands, entered at .page the "*" prompt obtained by typing CTRL/Z. Screen mode operation is restored by "C": SET CURSOR n:m Sets the number of lines over which the cursor moves on the display while screen editing. For example, "SET CURSOR 10:12" will cause the screen to be scrolled only if the pointer moves beyond the characters presently displayed on the screen in lines 10, 11, and 12. Having n and m close together lets you see more of the context of what you are working on (at the expense of slower response time from the computer for all users, because it spends more time writing characters to the terminal to scroll it). SET SCREEN n Set the maximum number of columns displayed on a line to be n. Default is 80 characters. SET SEARCH keyword Permits selection of the search parameters: keyword = GENERAL and keyword = BEGIN are the defaults. Keyword = EXACT conducts the search paying attention to the cases of alphabetic characters. Keyword = END places the pointer at the end of the found string when the search completes. SET TAB n Sets the "tab size" to n; enables structured tabs; sets the "tab level" to 1; see section IV(E), page 10. Set to 4 by TPUINI. SET WRAP n Sets a line length of n characters, with automatic word wrapping on text entry and the FILL command. Setting n = 65 allows for one inch margins on left and right sides of the page; n = 60 allows for 1.5 " on the left and 1 " on the right, the standard margins for SIP's and manuscripts. In either case the paper must be positioned correctly in the printer, and if using RUNOFF the correct ".LM n" and ".RM n" commands must be included. .c;^&C. SHOW Commands\& (See the corresponding SET command, above.) SHOW CURSOR Shows cursor range. SHOW SCREEN Shows maximum length of a line on the terminal. .page SHOW SEARCH Shows current search parameters. .c;^&D. Programmers' Delights\& + CTRL/D Toggles between states known as "WP" and "programming". Two features change, the action of the key and the definition of a WORD, as used for example by the PAD 1 key. In "WP mode", the key simply inserts a character, creating a new line and positioning the pointer at the beginning of that line. In programming mode, the key is redefined so that it inserts a character followed by the same sequence of and space characters, if any, that were at the start of the previous line, thus implementing autoindentation. Words are defined within the editor in terms of the characters or strings that separate them. For example: one or more consecutive "_ "'s will be taken as a boundary between words, when jumping with the PAD 1 key or deleting with PAD -. In programming mode, algebraic punctuation marks like "*" and "+" ^&are\& included in the list of word delimiters. (TPUINI). + C Find a line by number (TPUINI). + P Write out the current buffer and compile it. The language is presumed to be PASCAL, unless you are using the command file TPUINI.FOR, in which case it is presumed to be FORTRAN. Use GET to obtain TPUINI.PAS and TPUINI.FOR. (TPUINI). + [ or Used when the cursor is on a left square + { or bracket, left curly bracket, or left + ( parenthesis, respectively, this searches forward, attempting to find the right parenthesis or bracket that matches it. It will be fooled by any of the corresponding parenthesis or bracket characters that are in the intervening text but are not ^&logically\& part of the program, such as string constants in quotes, etc.; (TPUINI). + ] or Used when the cursor is on a right square + } or bracket, right curly bracket, or right + ) parenthesis, respectively, this searches backward, attempting to find the left parenthesis or bracket that matches it. It will be fooled by any of the corresponding parenthesis or bracket characters that are in the intervening text but are not .page ^&logically\& part of the program, such as string constants in quotes, etc.; (TPUINI). .c;^&E. Buffers and Windows\& The following commands simplify the process of using EDT with multiple named text buffers. Each command prompts for any additional information, such as the name of a file or buffer. EDT normally maintains three windows: the main window (the top 21 lines of the screen), the message window (the bottom 2 lines of the screen), and the command window (the 22 ^&nd\& line of the screen). The Kalamazoo customizations add two more windows: the top window and the bottom window, each of which is eleven lines high, including the status line. The Kalamazoo customizations also add all of the commands discussed below for associating buffers with files and with windows. EDT normally maintains three buffers: MAIN, PASTE, and MESSAGE. You can make EDT maintain other named buffers with several of the following commands. If you specify a name that matches an existing buffer, that buffer will be used. This permits you to go back and forth among buffers easily. If no buffer exists yet of the name you specify, a new one will be created and you will asked if you want to pre-load it with a copy of an existing disk file, and if you want to write it out to disk upon exit from the editor. + B This is used to switch buffers when single-window editing. Error and informational messages, from the editor and from the operating system (for example, if you get mail or someone tries to phone you) are displayed at the bottom of the screen in a two-line window, and can be reviewed by specifying the MESSAGE buffer in response to the prompt from this command. Frequently those messages will have lines longer than the screen width; to view the rest of the message, use the + and + commands, as discussed in "Text Editing with EDT." + M Return to editing the MAIN Buffer While dual-window editing (see below, + CTRL/W and + W), this toggles between the two windows. While single-window editing, this toggles between the two buffers most recently specified in + B or + CTRL/W commands, including the MAIN buffer; (TPUINI). .page + S Show Buffer information; "=" marks the currently active buffer. + O Write a buffer to a file, defaults to current buffer and same filename it would have at exit, if any. If you specify the PASTE buffer, it will write to the disk file the material most recently CUT. + Erase a Buffer; useful if you want to delete each instance of the search string: erase the PASTE buffer and then use SUBSTITUTE. + CTRL/W For single- or dual-window editing, for example, when you want to modify two files in a coordinated way. The top half of the screen becomes a window into the originally-edited file, and the bottom half into the other file. Upon exit, ^&both files may be updated\&. The key toggles you back and forth between the two windows. To revert to full-screen, single-window editing, use + CTRL/W again, and specify 1 window; you will be left in the file you were editing at that time, but can then use + B as usual if you want to go full-screen with the second file. Both files may still be updated when you EXIT; to update only one file, use + O to write it out, followed by + Q to QUIT; you will need to respond "Y" to the question about continuing quitting. The scrolling commands + and + are adjusted for the window size. + W DCL Window: used to give a DCL command while in the editor; the output will be captured into a buffer. If already operating with top and bottom windows, then the other window will be used to display the DCL output. If not, then the bottom window will display the DCL output and the top window will be used for the current buffer. Text can be CUT from the DCL buffer and PASTED into another buffer. Use to go into the DCL window; you can then move the cursor to the interesting part of the output; if later you want to give another DCL command, you need not reposition the cursor, that will be done automatically. The DCL window can be removed by using + CTRL/W and specifying 1 window. (TPUINI). .page .c;^&F. Key Redefinition\& + K Begin LEARN mode: all keystrokes following will be remembered, if terminated with + CTRL/K End LEARN mode: you will now be prompted for the key to be used for later "replays" of the learned sequence. If you choose a CTRL/ key, then it will not be possible to "multiply" it by [n]. This and the previous command are both local (TPUINI). CTRL/K "Define Key" Takes key definitions in VAXTPU syntax, not in EDT Line Mode syntax. .c;^&G. Other Commands\& + PAD 7 "COMMAND" Accept a TPU editing command: you will be prompted with "TPU Command: " at the lower left of the screen. After you give the command, type or to terminate the command. A convenient command is SPAWN, which creates a subprocess and connects the terminal to it. This gives you a VMS $ prompt, permitting any DCL commands to be given. You can answer a PHONE call without disturbing your editing context, read newly arrived MAIL, etc.. When you want to return to editing, just logout from the subprocess with the command LOGOFF (instead of the usual LO or LOGOUT, to prevent automatic purging of your files). If you encounter difficulties upon attempting to exit from the editor due to exceeding your disk quota, SPAWN, purge your files, LOGOFF to return to the editor, and attempt to exit again. The VAXTPU command "EXIT" does not write a new copy of the file unless you actually made changes, but the Kalamazoo custom exit, + CTRL/Z, does. CTRL/Z Accept an EDT Line Mode command at the "*" prompt displayed in the third line from the bottom of the screen. The TPU-based fast version of EDT does not support all of the commands documented by DIGITAL for EDT. These commands are also terminated by or . .page + Q QUIT, no SAVE of journal file (TPUINI). + CTRL/Z EXIT, no SAVE of journal file; protects you against disk quota and other errors (TPUINI). .b-3 Richard D. Piccard July 19, 1982 Amy S. Courter Rev. 9/7/83 Richard D. Piccard Rev. 9/22/86