; main help for TED ; to create ; ; run $libr.sav ; *EDRT:EDRT.HLB<40>=EDRT.SRC/M ; *^Z ; Ready ; .MACRO CMD Add [/f] Insert [l/f] RULe APPend [l,h/d/i] LENgth [l,h] SAVe ASCii [l,h] List [l,h/f] SHOw Backup LOCk [l,h] Search [l,h:t/f] CASe LPAge %Searc [l,h:t/f] CDElet [l,h] MOVe [l,h:t] TAB Change [l,h/f] Number [l,h/f] TER [/vt5/vt1/m/s] CHATty PAGe [l,h] Time COPy [l,h:t] Place [l,h] TRIm [l,h]:len Delete [l,h/f] Quit TYPe [/f] End REFresh Verify [l] File Replace [l,h] Xchang [l] FSEarc [l,h:t/f] %Replac [l,h] XLAte Help [/command] RETicent ZAP [/f] VTedit [/VT52/VT100/LIN/NOL/PAG:l/LMA:val/PDEL/FILL:val/WRAP where: 'l' is the low linenumber 'h' is the high linenumber 't' is target linenumber 'f' is a optional diskfile arguments within '[ ]' are optional .ENDM .MACRO COM Additional information is available on: ADD APPEND ASCII BACKUP CASE CDELETE CHANGE COPY DELETE END FILE FSEARCH HELP INSERT JOURNAL LENGTH LPAGE LOCK MOVE NUMBER PAGE PLACE QUIT RECOVER REFRESH REPLACE RULE SAVE SEARCH SHOW SWITCHES TAB TER TIME TYPE VERIFY VTEDIT XCHANGE XLATE ZAP CMDLIST WILDCARDS SPAWNING TRIM RETICENT CHATTY (under RETICENT) .ENDM .MACRO ADD Add This command allows the user to ADD text to the end of the file. An optional input file is allowed, such as ADD/OTHER.DAT. This appends all the lines in the disk file OTHER.DAT to the file being edited. ADD This permits the user to add more lines to the end of the file from the keyboard. For example: EDIT>ADD --- Type CTRL/Z to stop insertions 34 ) In the example above the user may add new lines to the file starting at line number 34. .ENDM .MACRO APP APPend This command gives the user the ability to add character strings to the end of a line(s) of text. It is used to add text to lines of varying length within a file. There are three different capabilities available with this command. They are: 1) to add the same character string to a line(s) specified, 2) to add different character strings to a line(s) specified, and 3) to duplicate the contents of a line(s) on itself. APPEND This adds the character string specified onto each line in the file. For example: EDIT>APPEND ------ 1 )THIS IS THE FIRST LINE OF THE FILE AP005 ------ In this example the character string ' AP005' was added to the end of each line. After the command was entered, EDIT printed out the first line of the file and waited for the new text to be entered. As 'AP005' is added to the end of each line, EDIT prints the contents of the revised line at the terminal. APPEND n This adds the character string specified onto the end of line n. (When adding to a single line of the file, the line will not be reprinted.) APPEND n,m This adds the character string specified onto the end of lines n through m, inclusive. APPEND n,m/I In order to add different character strings to the end of a series of lines within the file, it is necessary to specify the /I switch. For example: EDIT>APPEND 10,12/I -------------- 10 )1973 JUNE JOE DOAKS BBA ---- 11 )1974 DEC MARY HARTMAN BA --- 12 )1972 JAN TERRY AND THE PIRATES BFA ---- In the example above, the character strings ' BBA', ' BA', and ' BFA' were added onto the ends of lines 10, 11, and 12. (The lines are not reprinted after the new text has been added.) APPEND n,m/D In order to duplicate and attach the contents of a line(s) onto the end of the current line(s), the /D switch must be specified. For example: EDIT>LIST 20,21 ---------- 20 ) 12345678901234567890 21 ) BCDFGHJKLMNPQRSTVWXZ EDIT>APPEND 20,21/D -------------- 20 ) 12345678901234567890 12345678901234567890 21 ) BCDFGHJKLMNPQRSTVWXZ BCDFGHJKLMNPQRSTVWXZ In this example, the text from lines 20 and 21 has been extended with a duplicate of the original line. After the lines were extended, EDIT printed the revised lines at the terminal. .ENDM .MACRO ASC ASCii ASCII stands for American Standard Code for Information Interchange. This command prints the decimal value for every ASCII character that was entered in the file. Example: EDIT>LIST 33 ------- 33 )1000 MAT PRINT A, EDIT>ASCII 33 -------- 33 ) 49 48 48 48 32 77 65 84 32 80 82 73 78 84 32 65 44 13 10 Each character entered in line 33 has a corresponding decimal value that represents it as follows: 1-49, 0-48, 0-48, 0-48, (SP)-32, M-77, A-65, T-84, (SP)-32, P-80, R-82, I-73, N-78, T-84, (SP)-32, A-65, ,-44, (CR)-13, (LF)-10 A line usually contains two (2) line terminators, a Carriage Return and a Line Feed. NOTE: Unprintable characters may be the cause for errors in compiler runs. Therefore, this command is useful in reading a dump of the exact characters that were entered from the keyboard. A copy of the complete table of ASCII CHARACTER CODES appears on the last page of this publication and may also be found on the last page of the RSTS/E Pocket Guide. .ENDM .MACRO BAC Backup This command allows the user to create a backup copy of the original input file that is currently being edited. This is useful when planning to replace the original file with the edited file. It serves as protection against inadvertently destroying the original file. At any point in edit the user may enter the command BACKUP. When the user is finished editing the file a copy of the original file will have been created in their account with a (.BAK) extension. For example: EDIT>BACKUP ------ EDIT>END --- Output file ? Ready The user will now have two files in his account: INFO.BAK - (original file), INFO.DAT - (new edited file). .ENDM .MACRO CAS CASe The CASE command is used to convert lowercase characters to uppercase. It may be enabled or disabled at will by entering the command CASE. EDIT will then print either 'Case xlate on' or 'Case xlate off'. For example: EDIT>CASE ---- Case xlate on Any lowercase characters that are now entered using the ADD, CHANGE, or INSERT commands will be converted to uppercase characters. This will continue until CASE is again entered to disable the command. NOTE: This command is useful to users submitting OS JOBS via the HASPBOX as the system will not accept lowercase ASCII characters from the terminal. The user may enter his JOB using lowercase characters and through use of this command convert them for transmission to the HASPBOX. (See also the input switch /CASE.) .ENDM .MACRO CDE CDElete The CDELETE command allows the user to delete a specified character string anywhere within a specified line(s) of text. The command essentially can delete characters between other characters and delete blanks or tabs at the beginning or middle of a line. Examples: EDIT>CDELETE 33 ---------- 33 )THE FOLLOWING IS MATERIAL ? ///////////// ----------------- 33 )THE MATERIAL This deleted the character string 'FOLLOWING IS ' between the character strings 'THE ' and 'MATERIAL'. NOTE: Any character may be used beneath the characters to be deleted. In this example, a slash(/) was used but any other character would suffice. EDIT>LIST 4,6 -------- 4 )0001 THE FOLLOWING IS A TEST. 5 )0002 IT IS GIVEN TO DEVELOP YOUR 6 )0003 KNOWLEDGE OF PASCAL PROGRAMMING. EDIT>CDELETE 4,6 ----------- 4 )0001 THE FOLLOWING IS A TEST. ? '''' ---- 4 ) THE FOLLOWING IS A TEST. 5 ) IT IS GIVEN TO DEVELOP YOUR 6 ) KNOWLEDGE OF PASCAL PROGRAMMING. This deleted 4 characters at the beginning of line 4 through line 6 by entering any character other than a space beneath the characters to be deleted. This feature allows positional deletions of characters from blocks of specified lines. .ENDM .MACRO CHA Change The CHANGE command allows the user a combination of DELETE and INSERT commands. This command will delete a line(s) specified and start inserting new lines at that point. To end this command enter CTRL/Z immediately after the line number. The CTRL/Z will not be inserted in the file. After the changes have been made, EDIT renumbers the lines consecutively. CHANGE n This deletes line number n; then EDIT allows the user to insert any number of lines in place of line number n. After entering CHANGE 45, line number 45 will be deleted and any number of new lines may be inserted in place of line number 45. CHANGE n,m This deletes line numbers n through m inclusive and inserts any number of new lines in place of the lines deleted. After entering CHANGE 20,25 line numbers 20 through 25 inclusive will be deleted and new lines will be inserted in place of them. CHANGE n,m/file This deletes line numbers n through m inclusive and replaces them with the specified file. After entering CHANGE 20,25/TEMP.DAT line numbers 20 through 25 inclusive will be deleted and new line(s) from the file TEMP.DAT will be inserted in place of them. After deletion of a line(s), the remaining lines in the file are renumbered consecutively. .ENDM .MACRO COP COPy The COPY command is used the same way that the MOVE command is used except that a line(s) are duplicated. This is useful if you have a line (or group of lines) that must occur several times in your file (such as a set of FORTRAN declarations). The COPY command is consistent with the INSERT command in that the line(s) copied will be inserted in front of the target line. COPY 1:4 would duplicate line one at line four, and push down all line(s) after line four, including what was originally line four. For example: EDIT>LIST 1,5 -------- 1 )First line 2 )Second line 3 )Third line 4 )Fourth line 5 )Fifth line EDIT>COPY 1,2:3 ---------- EDIT>LIST 1,5 -------- 1 )First line 2 )Second line 3 )First line 4 )Second line 5 )Third line EDIT>COPY 1:2 -------- EDIT>LIST 1,3 -------- 1 )First line 2 )First line 3 )Second line The next example duplicates the entire text. EDIT>/L -- Last line is 10 EDIT>COPY ---- EDIT>/L -- Last line is 20 .ENDM .MACRO DEL Delete The DELETE command allows the user to delete a line(s) from the file. If the user attempts to delete more than 15 lines, EDIT will come back and ask for confirmation of the command. WARNING: The DELETE command with no arguments will cause the deletion of the entire file. DELETE n This deletes line number n only. Line number 10 of the file will be deleted after DELETE 10 is entered. DELETE n,m This deletes line numbers n through m inclusive. After entering DELETE 4,8 lines 4 through 8 inclusive will be deleted from the file. DELETE 1,20 This deletes the first 20 lines after a confirmation of YES. EDIT>DELETE 1,20 ----------- Are you sure ? YES --- The question 'Are you sure ?' is always asked if there are more than 15 lines involved in the operation to protect against accidentally deleting more lines than you intended to delete. DELETE n,m/file This deletes line numbers n through m inclusive and saves what you deleted into a specified file. The file may be an existing file or a new one. After entering DELETE 10,20/SAVE.DAT line numbers 10 through 20 inclusive would be deleted from the original file and transferred to the file SAVE.DAT. After deletion of a line or block of lines, the remaining lines in the file are renumbered consecutively. When the user has to delete many nonsequential lines at one time he should delete them in reverse sequence. .ENDM .MACRO END End The END command tells EDIT that the user has finished editing the file. After it is entered, EDIT will then prompt the user with 'Output file < input-file > ?'. The user then enters a valid output filename in which to place the edited file. To place the edited file back into the input file, simply press the RETURN Key. The END command is the most critical command in terms of maintaining the integrity of your edited file. EDIT>END --- Output file < INFO.DAT > ? If the RETURN Key is pressed the edited file is written to the file INFO.DAT and the EDIT program is ended. .ENDM .MACRO EXC eXchange The EXCHANGE command allows the user to do a positional character by character exchange. The command operates on a single line only, and input comes only from the keyboard. The command essentially supplements the REPLACE command by not requiring the user to match a previously existing pattern in the line. There are two restrictions on the EXCHANGE command: blanks cannot be exchanged and the command cannot be used to extend the length of a line. EDIT>EXCHANGE 33 ----------- 33 ) WRITE(U,31) (SOLUTN(J),J = 0 , 9) ? 7 RESULT 1 ----------------------------------- 33 ) WRITE(7,31) (RESULT(J),J = 1 , 9) NOTE: EDIT will print the line to be exchanged, prompt the user for the new characters with a '?', and print the modified line. The character exchange is done on a column match, not a pattern match. .ENDM .MACRO FIL File The FILE command causes EDIT to print the name of the file being edited. For example: EDIT>FILE ---- Input file is TEST1.FOR .ENDM .MACRO HEL Help The HELP command prints out a short message for quick on-line help. For example: EDIT>HELP ---- Add [/f] Insert [l/f] RULe APPend [l,h/d/i] LENgth [l,h] SAVe ASCii [l,h] List [l,h/f] SHOw Backup LOCk [l,h] Search [l,h:t/f] CASe LPAge %Searc [l,h:t/f] CDElet [l,h] MOVe [l,h:t] TAB Change [l,h/f] Number [l,h]/f TER [/vt5/vt1/m/s] COPy [l,h:t] PAGe [l,h] Time Delete [l,h/f] Place [l,h] TYPe /f End Quit Verify [l] File REFresh Xchang [l] FSEarc [l,h:t/f] Replace [l,h] XLAte Help [/command] %Replac [l,h] ZAP [/f] SCOpe [/VT52/VT100/LIN/NOL/PAG:l/KED/PDEL/FIL:value where: 'l' is the low linenumber 'h' is the high linenumber 't' is target linenumber 'f' is a optional diskfile arguments within '[ ]' are optional input switches: /CAS/XLA/TAB/CRE/DEV:devname If a more detailed explanation is needed than is given by HELP alone, HELP/ will print information (as presented in this document) for the commandname specified. For example: EDIT>HELP/FILE --------- The FILE command causes EDIT to print the name of the file being edited. For example: EDIT>FILE ---- Input file is TEST1.FOR .ENDM .MACRO INS Insert The INSERT command allows the user to insert any number of new lines between line numbers n-1 and n. After the user enters the command, EDIT prints a line number and waits for the user to enter a new line and end it with the RETURN Key or Line Feed. EDIT now prints the next sequential line number and waits for another line to be entered. This process continues until the user enters a CTRL/Z immediately following the line number. The CTRL/Z stops the insertion and is not entered into the file. INSERT This permits the user to insert line(s) at the beginning of the file. INSERT n This permits the user to insert line(s) between line numbers n-1 and n. After entering INSERT 43 new line(s) may be inserted between line numbers 42 and 43. INSERT n/file This inserts information from the specified disk file between line numbers n-1 and n. After entering INSERT 50/TEMP.DAT the information from the disk file TEMP.DAT will be inserted between lines 49 and 50. .ENDM .MACRO LEN LENgth The LENGTH command will print a symbolic representation of the line terminators along with the length of the line in characters. Only the lowline and the highline arguments have any significance as command arguments, all others (target line and file spec) are ignored. NOTE: A line usually contains two (2) line terminators, a Carriage Return and a Line Feed. Thus the length of a line will be two characters greater than the number of printable characters in the line (tabs and blanks inclusive). Normal line terminators are: FORTRAN MACRO-11 BASIC (single line) (continuation) (cont, EXTEND) BASIC-PLUS 2 Symbolic names of line terminators are: Carriage Return < CR > Line Feed < LF > Form Feed (CTRL/L) < FF > Escape Vertical Tab < VT > Null Character EDIT>LIST 1,5 -------- 1 )10 extend 2 ) 3 )1000 print 'Example for LENGTH command' 4 ) ! Line feed/Carriage return termination 5 ) EDIT>LENGTH 1,5 ---------- Terminators Length 1 ) < CR > < LF > , Len 15 2 ) < CR > < LF > , Len 2 3 ) < LF > < CR > , Len 44 4 ) < LF > < CR > , Len 44 5 ) < CR > < LF > , Len 2 A length of 15 was given for line 1. This resulted from the following: 10=length of 2, (Five spaces)=length of 5, extend=length of 6, (CR,LF)=length of 2. .ENDM .MACRO LIS List The LIST command allows the user to obtain a listing of the file. This command prints the listing of the file at the terminal unless an alternate output file is specified in the command. The CTRL/O, NOT the CTRL/C, is used to terminate the listing prematurely. LIST This lists the entire file. LIST n This lists only line number n. Line 20 will be listed at the terminal after LIST 20 is entered. LIST n,m This lists line numbers n through m inclusive. After entering LIST 1,50 line numbers 1 through 50 will be listed at the terminal. LIST n,m/file This lists line numbers n through m inclusive into the specified file. The file may be an existing file or a new one. After entering LIST 50,200/TEMP.DAT line numbers 50 through 200 inclusive would be copied to the file TEMP.DAT. This feature allows BLOCKS of lines to be moved at once. .ENDM .MACRO LOC LOCk The LOCK command allows the user to LOCK any portion of a file and treat this portion separately from the rest of the file. The locked portion may then be acted on by EDIT commands as if it were a separate file. The command is of the form LOCK lowline [ ,highline ] where highline is an optional argument and defaults to the lowline plus the next 20 lines. EDIT>LOCK 10,50 ---------- This will LOCK lines 10 through 50. EDIT commands may be used on this portion of the file and will not effect the rest of the file. EDIT>LOCK 5 ------ This will LOCK lines 5 through 25 and only these lines will be acted on by EDIT. For example, when the command LIST is invoked it will list only lines 5 through 25. To disable the LOCK command the user should enter only the command LOCK with no arguments. To verify the enabling or disabling of this command you can enter the command SHOW. When LOCK is enabled the LOCK range will also be displayed. See the SHOW command. .ENDM .MACRO MOV Move The MOVE command allows the user to move a line(s) from one location in your file to another. This is different from a line copy in that the lines to be MOVED will be copied to the new location, then the old lines will be deleted. The command can accept up to three line number arguments, the first 2 being the line limits for the lines to be moved, and the third argument (or the one after the colon) being the line number to which the line(s) are to be moved. A MOVE down (towards the end of the file) will cause the line(s) to be inserted at the target line specified. All lines at or in front of the 'target' line will be moved up 'n' line(s), where 'n' is the difference between the number of the line limits plus one. A MOVE up (towards the front of the file) will cause all lines from the 'target' line to the end to be moved back by a corresponding amount. Examples: EDIT>/L -- Last line is 101 EDIT>MOVE 1,10:100 ------------- This moves lines 1 through 10 to line 100. Lines 1-10 will be deleted from the original location and moved to location 100, forcing line 100 and all preceeding lines to move up 10 locations. EDIT>LIST 1 ------ 1 )The first line of the text. EDIT>MOVE 1:* -------- EDIT>LIST 1 ------ 1 )The second line of the text. EDIT>LIST * ------ 101 )The first line of the text. EDIT>MOVE *:1 -------- EDIT>LIST 1 ------ 1 )The first line of the text. This moves the first line to the last line and then moves it back to the beginning. .ENDM .MACRO NUM Number The NUMBER command tells EDIT to create a separate numbered copy of the file the user is currently editing. This may be done by entering the command NUMBER/file. It is also possible to specify only certain lines as the command is of the form NUMBER [ low,high ] /file. In the following example the command NUMBER was used when editing a file called FIRST.TST. EDIT>LIST 1,3 -------- 1 )The first line 2 )The second line 3 )The third line EDIT>NUMBER/NUM01.LST ---------------- In this example a file called NUM01.LST has been created with each line in the new file numbered. Each line number is now part of the file. When entering the file NUM01.LST, the new file will look as follows. EDIT>LIST 1,3 --------- 1 ) 1 )The first line 2 ) 2 )The second line 3 ) 3 )The third line This command allows the user to now list a file through another utility program (other than EDIT) and have the file numbered for later reference. .ENDM .MACRO PLA Place The PLACE command allows the user to place a specified character string anywhere within a specified line(s) of text. The command essentially can insert characters between other characters, insert blanks or tabs at the beginning or middle of a line and also can be used to extend the length of a line(s). A CTRL/X is used when inserting leading blanks or tabs and when extending the length of a line(s). Examples: EDIT>PLACE 33 -------- 33 )THE FOLLOWING IS MATERIAL ? TEXT ---------------------- 33 )THE FOLLOWING IS TEXT MATERIAL This placed the character string 'TEXT ' between the character strings 'IS' and 'MATERIAL'. EDIT>PLACE 33 -------- 33 )THE FOLLOWING IS TEXT MATERIAL ? ^X ------ 33 ) THE FOLLOWING IS TEXT MATERIAL This inserted 4 blank spaces at the beginning of a line by entering CTRL/X followed by four blank spaces. This same procedure can also be used to extend the length of a line. NOTE: CTRL/X will not be entered into the file. Also, CTRL/X will not echo on the terminal if the TTYSET command 'SET SCOPE' has been executed before you entered EDIT. EDIT>LIST 4,6 -------- 4 )THE FOLLOWING IS A TEST. 5 )IT IS GIVEN TO DEVELOP YOUR 6 )KNOWLEDGE OF PASCAL PROGRAMMING. EDIT>PLACE 4,6 --------- 4 )THE FOLLOWING IS A TEST. ? ^X ------ 4 ) THE FOLLOWING IS A TEST. 5 ) IT IS GIVEN TO DEVELOP YOUR 6 ) KNOWLEDGE OF PASCAL PROGRAMMING. This placed 4 blank spaces at the beginning of line 4 through line 6 by entering CTRL/X followed by 4 blank spaces. This feature allows positional insertions of characters into blocks of specified lines. .ENDM .MACRO QUI Quit The QUIT command acts like a CTRL/C would in most other programs. It aborts EDIT without saving the results of your editing (the original file is left alone). This is needed since the editor always treats a CTRL/C as a CTRL/Z (end of file) for keyboard input. EDIT>^C -- EDIT>QUIT ---- Are you sure ? YES --- Ready NEVER enter a CTRL/C if you can avoid it. If you wish to stop printing from the list command, for example, enter CTRL/O (^O) to stop output, NOT a CTRL/C. The purpose of the CTRL/C trapping is to protect the user during command and text input. If CTRL/C is entered the following message will appear '% Command execution aborted' followed by EDIT>. .ENDM .MACRO REP Replace This command allows the user to REPLACE a particular character string in the file with another character string. After the command has been entered, EDIT will prompt the user with 'Old string ?'. The user specifies the character string that he wants to replace. Then EDIT prompts the user with 'New string ?'. The user now specifies the new character string with which to replace the old character string. EDIT will print a line if a change is made to it. In other words, if the character string is found in a line, EDIT will change the old character string to the new character string and print the modified line on the terminal. If the character string is not found, a message will print on the terminal stating ' Search fail for "?" '; Where "?" is the character string that the user is trying to replace. Replacing with a longer character string could cause a line length overflow. This happens if there are more than 150 characters. If this occurs, the replace operation would be aborted for that particular line. REPLACE This replaces every occurrence of the specified character string in the entire file with the new character string. EDIT>REPLACE ------- Old string ? A - New string ? AB -- This replaces every occurrence of the character "A" in the file with the characters "AB". REPLACE n This replaces every occurrence of the specified character string in line number n of the file with the new character string. EDIT>REPLACE 10 ---------- Old string ? 2 - New string ? 4 - This replaces every occurrence of the character "2" in line number 10 with the character "4". WARNING: Be careful that REPLACE does not change character strings in the line such as A2 to A4, where A2 is a variable name. REPLACE n,m This replaces every occurrence of the specified character string in line numbers n through m inclusive with the new character string. EDIT>REPLACE 4,10 ------------ Old string ? LT -- New string ? LET --- This replaces every occurrence of the characters "LT" with the characters "LET" in line numbers 4 through 10 inclusive. %Replace The %REPLACE command is used exclusively to replace all character strings, whether uppercase or lowercase, with another character string. For example: EDIT>LIST ---- 1 )TYPE 2 )copy 3 )type 4 )store 5 )Type EDIT>%REPLACE -------- Old String ? Type ---- New String ? ENTER ----- 1 )ENTER 3 )ENTER 5 )ENTER In this example every occurrence of the characters 'TYPE' in the file, whether uppercase or lowercase characters, were replaced with the characters 'ENTER'. Lines 1, 3, and 5 were printed on the terminal showing which lines had been replaced. NOTE: All other rules are consistent with the REPLACE command. When using the REPLACE or %REPLACE a wild card CTRL/Y (^Y) may be used to signify a character string to search for in the file. For example: EDIT>LIST ---- 1 )00001 2 )00022 3 )00003 4 )00004 5 )00055 EDIT>REPLACE ------- Old String ? 0000^Y ------ New String ? 12345 ----- 1 )12345 3 )12345 4 )12345 In lines 1, 3, and 4, '0000' in combination with any other character were replaced with '12345'. .ENDM .MACRO RUL RULe The RULE command produces a header showing the column numbers on the page or screen. NOTE: This varies according to the width that is set for the terminal. (default is 80) EDIT>RULE ---- 1 2 3 4 5 123456789012345678901234567890123456789012345678901 This header was produced when a width of 60 was set for the terminal. .ENDM .MACRO SAV SAVe This command, unlike the END command, tells EDIT to update the disk file (or create a new one) without leaving the editor. All changes made to the input file will be written out to disk. After the SAVE operation is completed, EDIT will again prompt the user. SAVE Using this command, the file will be written out to the input filename specified. For example, if the input file was TEXT.PAS, the SAVE command will update the TEXT.PAS file before prompting for new commands. EDIT>SAVE ---- EDIT> SAVE/file Using this command, the file will be written out to the filename specified. For example, if the input file was TEXT.PAS, a SAVE/TEXT2.PAS command will create a new file on disk called 'TEXT2.PAS' containing all changes made to the input file up to this point. .ENDM .MACRO SEA Search The SEARCH command allows the user to search the file (or part of the file) for the occurrences of a certain combination of characters (or character string). After the command has been entered, EDIT prompts the user with 'String ?' and waits for the user to enter the character string for which to search. The lines containing this character string will be printed on the terminal unless an alternate output file is specified in the command. If the character string is not found a message will print on the terminal stating ' Search fail for "?" '; Where "?" is the character string that the user is searching for. It is also possible to search for a particular pattern line in all (or part) of the file. If this form of the command is used, there will be no prompt by EDIT as the command itself provides complete information. SEARCH This searches the entire file for the occurrences of a specified character string. EDIT>SEARCH ------ String ? L - SEARCH n This searches line number n for the occurrences of a specified character string. EDIT>SEARCH 23 --------- String ? K - SEARCH n,m This searches line numbers n through m inclusive for the occurrences of a specified character string. EDIT>SEARCH 1,3000 ------------- String ? GOSUB ----- In this example all lines containing the string of characters "GOSUB" in line numbers 1 through 3000 inclusive will be printed on the terminal. SEARCH n,m/file This searches lines n through m inclusive for a specified character string and if found lists that information into the specified file. The file may be an existing file or a new one. After entering SEARCH 50,200/TEMP.DAT the prompt 'String ?' will appear and the user will enter the character or characters for which to search. Lines 50 through 200 inclusive will be searched and all lines containing this character string will be copied to the file TEMP.DAT. SEARCH:pattern This form of the command is used to search a complete file for all occurrences of a particular pattern. The pattern line is identified to EDIT by the colon and the line number to be matched. A list of all lines (including the pattern) which match the pattern is printed at the terminal. The following example uses line number 2 as a pattern to search the current file. EDIT will then print all matching lines (including line number 2). EDIT>SEARCH:2 -------- SEARCH n,m:pattern This searches lines n through m inclusive for the pattern specified after the colon. The following example will search the current file and list all matching lines (including line number 9) at the terminal: EDIT>SEARCH 1,100:9 -------------- SEARCH n,m:pattern/file This searches lines n through m inclusive for matches to the specified pattern. All lines (including the pattern) which match are listed to the file specified. This file may be a new file or an existing one. After entering SEARCH 5,400:10/PATERN.DAT, EDIT will search lines 5 through 400 and all lines matching line 10 will be copied to the file PATERN.DAT. Special match control character strings. Note that the control characters are typing by first typing the upparrow key (shift 6) followed by the letter, not by using the control key as one would normally do. ^X matches any character (also available as ^Ex) ^S Accepts any non alpha-numeric ^Ea accepts any alphabetic (A-Z,a-z) ^Ec accepts A-Z,a-z,0-9,. and dollar symbol ^Ed accepts any digit 0-9 ^Er accepts any upper case letter or any digit 0-9 ^Es accepts any space or tab ^Ev matches any lowercase letter ^Ew matches any uppercase letter ^E accepts the character whose ASCII code (octal) is nnn ^R use the next character literally (for example, ^R^E) %Search The %Search command is used exclusively for searching a file created with mixed upper/lowercase character strings. After the command has been entered on the keyboard the 'String ?' prompt appears and the user enters the character string for which to search. The lines containing this character string, both upper/lowercase, will be printed on the terminal. For example: EDIT>LIST ---- 1 )FILE 2 )copy 3 )file 4 )store 5 )File EDIT>%SEARCH ------- String ? FILE ---- 1 )FILE 3 )file 5 )File In this example, lines 1, 3, and 5 were printed on the terminal after entering the character 'FILE'. All upper/lowercase character strings were included in the results of the search. NOTE: All other rules are consistent with the SEARCH command. .ENDM .MACRO FSE FSEarch The FSEARCH command is used for searching a file for the first occurrence of a character string, ignoring upper/lowercase. After the command has been entered, EDIT prompts the user with 'String ?' and waits for the user to enter the character string for which to search. The first line containing this character string will be printed on the terminal along with the message 'First occurrence of string found'. For example: EDIT>FSEARCH ------- String ? DATA ---- 35 )Data Sheets; First occurrence of string found. FSEARCH n,m:patternline This form of the command searches for the first occurrence of the pattern line specified after the colon. There will be no EDIT> prompt as the command itself provides complete information. The values of n and m in the command should be greater (or less) than the pattern line specified. If they are not, EDIT will return the pattern line as the first occurrence. In the following example, line number 10 is used as the pattern to search lines 11 through the end of the file for the first matching line: EDIT>FSEARCH 11,* :10 ---------------- NOTE: All other rules are consistent with the SEARCH command. When using the SEARCH, %SEARCH, or FSEARCH a wild card CTRL/Y (^Y) may be used to signify a character string to search for in the file. For example: EDIT>SEARCH ------ String ? pre^Y^Y^Y^Y ----------- 5 )the document was previously given to 23 )presenting the following award 129 )which falsely misrepresents the facts. The strings 'previously', 'presenting', and 'misrepresents' were found in the file when searching for 'pre' followed by any four characters. .ENDM .MACRO SHO SHOw The SHOW command prints the current status of the file you are editing. This pertains to the BACKUP, CASE, LOCK, TAB, XLATE, and ZAP switch commands that are currently in use. By entering the command SHOW, EDIT will display these toggle switch commands and state whether they have been enabled or not. For example: EDIT>SHOW ---- Current settings are: Date and time 14-Sep-80 09:50 AM TABXL Enabled CASEXL Disabled BACKUP Enabled LOCK Enabled ZAP Disabled Lock range 10 50 .ENDM .MACRO TAB TAB The TAB command is used to convert tabs to spaces. It may be enabled or disabled at will by entering the command TAB. EDIT will then print either 'Tab xlate on' or 'Tab xlate off'. For example: EDIT>TAB --- Tab xlate on. Any tabs that are now entered through the ADD, CHANGE, and INSERT commands will be converted to spaces. This will continue until TAB is again entered to disable the command. NOTE: This command is useful to users submitting OS JOBS via the HASPBOX as the system will not accept tabs from the terminal. The user may now enter his JOB using tabs and through use of this command convert them for transmission to the HASPBOX. (Also see the input switch /TAB.) .ENDM .MACRO TIM Time In case you need to know the time, enter the TIME command. EDIT will print out the current date and time. For example: EDIT>TIME ---- Date and time 14-Sep-80 09:49 AM .ENDM .MACRO TYP TYPe The TYPE command will display any file in the user's account without leaving EDIT. This may be done by entering TYPE/file. For example, entering TYPE/TERM.DEC will display the file called TERM.DEC, without linenumbers, at the user's terminal. If the user enters the name of the file currently being edited, TYPE displays the original disk file, not any changes made during the session. .ENDM .MACRO VER Verify The VERIFY command is available to ensure that a line has been correctly entered into a file. This is done by entering the command VERIFY and the specific linenumber to be checked. After the command has been entered, the line will be printed. When the 'VFY>' prompt appears, the user re-enters the line. A comparison is then made between the original and the re-entered line. If the two lines are identical, the message 'Text match' is printed. If the lines differ by any character(s), the message 'Text different' is printed. EDIT>VERIFY 25 --------- 25 )3249658734209OOO876 VFY>3249658734209000876 ------------------- Text different In the example above, the letter 'O' was entered in the original line, while the number '0' was entered in the line after the verify prompt. .ENDM .MACRO XLA XLAte The XLATE command is used to convert tabs to spaces and also convert lowercase characters to uppercase characters. It may be enabled or disabled at will by entering the command XLATE. EDIT will then print either 'Case and Tab xlate enabled' or 'Case and Tab xlate disabled'. For example: EDIT> XLATE ----- Case and Tab xlate enabled. Any tabs or lowercase characters that are now entered through the ADD, CHANGE, or INSERT commands will be converted to spaces and uppercase characters. This will continue until XLATE is again entered to disable the command. NOTE: This command is useful to users submitting OS JOBS via the HASPBOX as the system will not accept tabs or lowercase ASCII characters from the terminal. The user may now enter his JOB using tabs and lowercase characters and through use of this command convert them for transmission to the HASPBOX. (See also the input switch /XLATE.) .ENDM .MACRO ZAP ZAP The ZAP command can be used while you are in EDIT to kill any file that is currently in your account. ZAP This form of the command tells EDIT that an existing file is to be written over (or erased) AFTER a revised file has been successfully stored. The message 'Outfile wipe set' indicates that the command has been enabled. This command provides additional protection for files stored in your account. To provide maximum benefit, it should be entered as soon as possible after accessing the EDIT program. EDIT>ZAP --- Outfile wipe set EDIT>END --- Output file < PROG.BAS > ? In this example, EDIT has been told to store the revised file PROG.BAS. Once the file has been written to its new location, EDIT will erase the file's original disk location. NOTE: If you END the EDIT program and give a different filename in response to the prompt for the output file or use the QUIT command, ZAP will be disabled and the original file will not be erased. ZAP/file This form of the command tells EDIT to search the current account for a specific file and, if found, to remove it. It is useful for users who use the ADD or INSERT commands to bring files into EDIT and do not want a backup copy on the system. EDIT>ZAP/BMDP.LST EDIT> In this example the EDIT prompt appeared right after the command was entered signifying that the file BMDP.LST was found in your account and killed. .ENDM .MACRO TER TERminal The TERMINAL command is invoked only when using a CRT video display terminal. This command tells EDIT how to set the cursor for control of page editing. Page editing refers to working with one section (or page) at a time when editing a large file. In order to set the cursor for paging capabilities, the TERMINAL command must be entered followed by the type of CRT terminal being used. The valid terminal types and their corresponding abbreviations appear in the following table. Terminal Abbreviation -------- ------------ MICRO BEE M SUPER BEE S DECSCOPE VT52 VT5 VT100 VT1 TERMINAL/type The type of terminal is entered after the slash. EDIT>TERMINAL/M ---------- Once this command has been entered the first 21 lines of the file will be displayed. This section will now be locked and treated as a page and therefore can be acted on by EDIT commands as if it were a separate file. There are also three special CRT terminal commands which may now be invoked. These are PAGE, REFRESH, and LPAGE and are described in detail below. NOTE: These commands may be disabled by entering the LOCK command without arguments. (See the LOCK command.) .ENDM .MACRO PAG PAGe The PAGE command is of the form PAGE lowline [,highline] and may be invoked only after the TERMINAL/type command has been entered. Entering the PAGE command without arguments will cause the next page (or the next 21 lines) of the file to be displayed and locked. EDIT>PAGE ---- When using this command with only the lowline argument, EDIT will display and lock the linenumber specified along with the next 20 lines of the file. For example, the following will display and lock lines 10 through 30. EDIT>PAGE 10 ------- When using this command with lowline/highline arguments, EDIT will lock in that section as a page of the file and display it on the CRT screen. The example below displays and locks lines 35 through 40. EDIT>PAGE 35,40 ---------- The locked portion of the file may then be acted on by EDIT commands as if it were a separate file. .ENDM .MACRO REF REFresh The REFRESH command is used after editing has taken place on a locked section (or page). It allows the user to re-lock the same number of lines that were originally locked when the TERMINAL or PAGE command was invoked. The locked section (or page) will then be displayed on the screen and editing may continue. For example: EDIT>REFRESH ------- .ENDM .MACRO LPA LPAge The LPAGE command allows the user to edit the section (or page) that immmediately precedes (or is the Last PAGE before) the currently locked portion of the file. This new page will be locked and displayed on the screen. For example: EDIT>LPAGE ----- .ENDM .MACRO VTE SCOPE EDITING IN TED -------------------- Screen editing in TED is entered with the 'VT' command. The 'VT' command will place the user into a free format screen editor which is controlled exclusively by the use of control characters (letters typed with the CTRL key on) and by the use of certain escape sequences generated by the arrow and 'PF' (Programmed Function) keys. The VT command has associated with it several command line switches. They are as follows: /NOL 'nolinenumbers' Do not print line numbers out /LIN 'linenumbers' Print line numbers (default) /VT52 say our terminal is a DEC VT52 /VT100 say our terminal is a DEC VT100 (the default) /ANSI say our terminal is an ansi standard crt /PAG:n Start initial page at line 'n', not at line 1 /PDEL enable normal rubout key movement. /FIL:n set fill line length to value in 'n' /WRAP enable auto line wraparound for kb input /PRI change line insertion method. /LMA:n sets the left margin to 'n' Note: The WRAP and NOWRAP control the action taken when the left margin is reached when in input mode (automatic upon typing a carriage return). If 'wrap' is set (see control V) then a carriage return is automatically inserted and the current line broken at the last word in the line when the line length reaches the right fill margin (see '/FILL:nn'). This allows the continuous typing of text without having to watch for the right margin overflowing, useful in document preparation. The usual control of this is by typing ^V, waiting for the 'SET>' prompt and then typing WRAP to enable or NOWRAP to disable autowrap. The FILL:value sets the right fill margin used by the keypad command 'fill' (Gold 4) and by the 'WRAP' option. The value given can be in the range 2 to 130 (roughly). See 'Control V' below for setting the fill once in the scope editor. The default fill is 'FILL:72'. KED mode is the default and only needs to be set (via control V) if for some reason the VT100 loses the special keypad mode (as would happen on power up if you tripped over your power cord, etc...). CONTROL FUNCTIONS: CONTROL A (^A) Control A causes the VTEDIT function to terminate and returns the user to the normal command prompting mode. All changes are of course saved. CONTROL B (^B) Control B causes the displayed page to be the last page in the file (end of file). CONTROL C (^C) Control C works the same as ^A with the abort message displayed. CONTROL D (^D) Control D deletes the current line. 'Current' is the line that cursor is presently on. All lines after the deleted line will be reprinted on VT52 compatable terminals. On a VT100 or ANSI terminal a single line delete (^D) will delete the current line, scroll the rest of the screen up one line, and then print the new bottom line. If you are using a VT100 or ANSI termi- nal and there are less then 24 lines in the file then the sceen will be blanked from the current line down and reprinted as on a VT52 compatable terminal. Multiple lines (1-9) can be deleted at one time by preceding this command with an 'escape digit' sequence, saving much time in display reprinting. From 1 to 999 lines can be deleted at one time by preceding the command with the 'GOLD digits' sequence. CONTROL E (^E) Control E will cause the text saved by either the control W or control X commands to be executed as a command stream. At the end of this text, input is reset back to the keyboard. This provides a simple macro-command type facility since control sequences can be stored and executed. Additionally, by preced- ing this command with the 'escape digit' you can repeat the commands 1 to 9 times, as in ESC 4 ^E. By using the 'GOLD digits' command a macro may be executed from 1 to 999 times, or through the whole file by using the 'GOLD *' command. CONTROL F (^F) Control F will cause the cursor to move forward to the next word in the current line, stopping at the end of the line. CONTROL G (^G) Control G is like control E, but only causes the saved text to be inserted into the current line. It is thus much faster than using the control E command. (see text for control X and control W). This command can be modified by preceding it with the 'esc digit' sequence (digit is 1-6) which causes the text to be retrieved from different save areas (there are seven, the default and 1-6). CONTROL H (^H) Typing the backspace key moves the cursor to the end of the current line. If the cursor is at the end of the line, the cursor will move back to begining of the line. CONTROL K (^K) Typing the control K combination will cause all the characters from the current cursor position to the next 'word' (see GOLD) to to be deleted. This will be much faster than holding down the rubout key. CONTROL N (^N) Control N is a find and replace command. It will replace all occurances of the text with new text from the current line down to the end of the page. CONTROL P (^P) Control P reprints the current page on the screen, also updating the status line at the top of a VT100 terminal. CONTROL R (^R) Control R is the opposite of control F in that the cursor will move backwards to the previous word in the line, stopping at the left margin. CONTROL T (^T) Control T causes the page to move to the top of the file at line one. CONTROL U (^U) Control U erases (but does not delete) from the current cursor position to the beginning of the line. CONTROL V (^V) Control V allows you to change the parameters passed as command switches, or simply to set values, such as turning line numbering off (/NOLINE) or moving to a given line number (/PAG:300). Control V parameters: /NOL 'nolinenumbers' Do not print line numbers out /LIN 'linenumbers' Print line numbers (default) /PAG:n Start initial page at line 'n', not at line 1 /PDEL enable normal rubout key movement /FIL:n set fill line length to value in 'n' /WRAP enable auto line wraparound for kb input /LMA:n set the left margin to 'n' CONTROL W (^W) Control W saves all the text in the current line into the text save area. Line terminators are not included. Multiple save areas can be specified by using the 'escape digit' sequence prior to this. See the above text for control G. CONTROL X (^X) Control X loads the text save area from the keyboard. See help for control E and control G. CONTROL Y (^Y) Control Y can be used to fake a carriage return for storing commands with the control X command. This is useful if a command sequence for say, text replacement (^N) is to be stored and later executed with the control E command. If typed any other time, it will simply reprint the current line. HELP A short help text can be printed by typing escape H or GOLD H. LINE INSERTION MODE: Line insert mode is entered automatically by typing a carriage return, line feed or form feed (^L). The screen will be blanked from the line to be inserted down to the end of the page on a VT52 or VT52 compat- able terminal, while on a VT100 or ANSI terminal a blank line will simply appear and the rest of the text will then scroll down one line on the screen. Insert mode is terminated by typing a control Z (^Z) instead of a to finish off a line. Insert mode is also terminated by typing control A, control B, control C, control D, control N, control T or the up arrow, down arrow, or the PF1, PF2, PF3 and PF4 keys (BLUE, RED, GRAY, and f1 keys on a H19). The left arrow, right arrow and rubout keys will con- tinue to operate normally in this mode. The other defined control characters (E, F, G, H, P, R, U, W, X, and backspace) will operate normally. In general, any escape or control sequence that would cause the current line to move will terminate the line insert mode. The control V set commands 'WRAP', 'NOWRAP' and 'FILL:decvalue' alter the way insertion mode works for text entry. If 'WRAP' is set (see above under switches) then a line break is done automatically when the fill margin is reached, which defaults to 72. NOWRAP will disable this feature and is the default. 'WRAP' is useful for documentation entry and a disas- ter for program entry! As an alternative to the blanking of the screen and sticking in 'insert' mode, the parameter 'PRINT' can be set by either using control V or GOLD M. This, when set, will cause a cr/lf simply to start a new line ala VTEDIT or EDT style. CURSOR POSITION CONTROL: The two cursor movement keys left arrow and right arrow are used to control the character position within the current line. They can be used at any time while in the 'VT' command, including during line insertion mode. The up and down arrow keys cause the current line to change, thus these two would cause early termination of an active insert mode. The 'backspace' key will cause a toggle between the start of the current line and the end of that line. Control F (^F) will move the cursor to the next word in the line, and control R (^R) will move back to the previous word. A 'word' is defined to be anything delimited by a space or tab. PAGE CONTROL: In addition to the control B and control T functions, the 'PF' function keys PF2 (or RED on an H19), control P (^P) and PF1+PF2 (BLUE+RED on an H19) cause, respectively, a move to the next page, a reprint of the current page, and a move to the previous page. These keys also will terminate any active line inser- tions. THE RUBOUT KEY: The RUBOUT key can be used at any time to erase characters in the current line, including when in line insertion mode. It is not possible to rubout line terminators like carriage returns. The rubout key normally will hold the cursor position while deleteing characters, and will move left only when the end of the line is reached. This can be changed by using the /PDEL switch on the the command line, or via the control V ('SET') command once you are in the scope editor. The 'PF' (programable function) keys: PF1 - (escape P) 'GOLD' key (acts like SHIFT in KEYPAD editing) PF2 - (escape Q) displays the next page of text. PF1+PF2- (Gold+PF2) displays the previous page of text. PF3 - (escape R) find the next occurance of a previously entered search pattern (see '7'). PF1+PF3- (Gold+PF3) find the next occurance of a prompted for search pattern (see Gold 7). PF4 - (escape S) deletes the current line of text. PF1+PF4- (Gold+PF4) undelete the last line deleted. SETTING REPEAT COUNTS (GOLD DIGITS): All keypad commands (except NEXT LINE "0") can be repeated from one to 999 times by setting a repeat count with the command sequence GOLD (which is PF1 on a VT100 or BLUE on a H19) followed by a string of 1 to 3 digits. The numbers will be echoed on the last line of the display. The entering of this repeat count is stopped by typing anything other than a rubout or a digit. The 'repeat count' is one-shot, it is ALWAYS cleared after each control character or KEYPAD command. It is also cleared if anything other than a command is typed after setting the repeat count. This is also used for SPSINS, in which case the value is converted to the ascii representation and placed into the current line. A repeat count of '*' (typed GOLD *) is an infinite count, except for DELLINE (PF4 or ^D) in which case all lines to the end of the page are deleted. ALTERNATE SAVE AREAS: The control G and control W commands can retrieve and get text from save areas other than the default by preceding the command with the same type of 'Gold digit' sequence as described above. The only differ- ence is that the allowable range is 1 thru 6. Arrow Keys: The arrow keys on a VT100 always operate in the same manner. They are always "enabled" ( as opposed to the keypad which can be either enabled or disabled ). Their functions are as follows: +---------+---------+---------+---------+ ! ^ ! ! ! ! ! ! ! ! ! ! <-- ! --> ! ! ! ! V ! ! ! normal !cursor_up!cursor_dn! left ! right ! gold ! page_top!page_end ! !sentence ! gold gold !p_restore!mark_page! ! ! +---------+---------+---------+---------+ Keypad: 'NORMAL' is when the key is typed without typing the PF1 'gold' key first. 'GOLD' is is the action taken when the PF1 key is typed immediately preceeding the keypad key. +-------+-------+-------+---------+ Gold A set left margin ! gold !nxtpage!fndnext! delline ! Gold F exit the editor normal ! PF1 ! PF2 ! PF3 ! PF4 ! Gold G insert disk file gold ! !lastpag! find !undelline! Gold M enter setup menu +-------+-------+-------+---------+ Gold P fill paragraph ! "7" ! "8" ! "9" ! "-" ! Gold Q que select range normal !findlst!swapchr!append ! delword ! Gold R reverse line gold !searchb!swaplin!spcins !undelword! Gold S save current edit +-------+-------+-------+---------+ Gold U erase line ! "4" ! "5" ! "6" ! "," ! Gold V show page markers normal !bottom ! top ! paste ! delchar ! Gold W write select gold ! fill !center !zapsel ! undelch ! ^A exit vtedit +-------+-------+-------+---------+ ^D delete line ! "1" ! "2" ! "3" ! "enter" ! ^E execute macro normal ! word ! eol ! cut ! ! ^G Write save area gold !lstword!deleol !chcase ! ! ^P reprint page +-------+-------+-------+ ! ^U delete to start ! '0' ! "." ! ! ^V enter setup param normal ! begin line !repnext! replace ! ^W load save area gold ! break line !insoff ! Set Pat ! ^X load macro gold gold! - - ! - - ! set rep ! ^Z exit input mode +-------+-------+-------+---------+ CURSOR UP ("UPARROW" KEY) Cursor Up - Moves the cursor up one line. PAGETOP (PF1 + "UPARROW") Hitting the 'GOLD' key and then the Uparrow key moves the cursor to the top of the page. Page restore (PF1 PF1 Uparrow) By typing the GOLD key twice, followed then by the UPARROW key will restore the page marked previously with GOLD GOLD DOWNARROW. Any 'repeat' count in the range 1 to 7 will select the corresponding saved page mark, as in GOLD 6 GOLD GOLD Up would restore the page and line saved by a previous GOLD 6 GOLD GOLD Down. CURSOR DOWN ("DOWNARROW" KEY) Cursor Down - Moves the cursor down one line. PAGE END (PF1 + "DOWNARROW") Hitting the 'GOLD' key and then the Downarrow key moves the cursor to the bottom of the current page. Mark currentpage (PF1 PF1 Downarrow) Typing the GOLD key twice followed by the downarrow key will mark the current line to be later restored via GOLD GOLD Uparrow. As in Pagerestore (GOLD GOLD UP), any active 'repeat' count (GOLD digit) will select different markers from one to 7, as in GOLD 6 GOLD GOLD DOWN. GOLD V (for Viewmarkers) will display all the current marked pages (and lines). LEFT ("LEFTARROW" KEY) Cursor Left - Moves the cursor left by one character position. RIGHT ("RIGHTARROW" KEY) Cursor Right - Moves the cursor right by one character position. SENTENCE (PF1 + "RIGHTARROW") If the Rightarrow key is pressed following the 'GOLD' key, the cursor is moved forward through the file by sentences. (A sentence is defined as a period followed by any non-alphanumeric character.) NEXT LINE ("0") Typing the '0' key when in keypad mode will cause a cursor to move to the start of the next line. BREAK LINE (PF1 + "0") The '0' key, when preceeded by the 'GOLD' key, causes a CR/LF to be inserted at the current cursor position. NEXT WORD ("1") The '1' key will move the cursor to the next word (see ^F). LSTWORD (PF1 + "1") The '1' key, when preceeding by typing the 'PF1' key, will cause the cursor to move to the end of the previous word (see ^R). EOL ("2") The '2' key moves the cursor to the end of the current line. DELEOL (PF1 + "2") Deletes from cursor to the end of the line. Entered as PF1 2. (GOLD 2) CUT ("3") The '3' key starts the marking of lines for saving in the paste buffer. Lines are marked by then typing the down arrow key until the last line to be saved is passed. The '3' key is then typed again to actually save the lines. The lines are then retrieved by typing the '6' key. CHCASE (PF1 + "3") Typing GOLD and then the 3 key causes all upper case characters to be changed to lower case characters when the 'WORD (1)' or 'EOL (2)' keypad keys are typed. Only those characters skipped by the command (EOL or WORD) will be affected. CHCASE mode can be turned off ONLY by typed GOLD and '3' again, thus CHCASE is toggled. BOTTOM ("4") The '4' key causes a movement to the end of the file. FILL (PF1 + "4") Typing GOLD and then the 4 key will cause the text on the current line to be expanded with spaces out to the current fill margin (see /FILL:N). The fill margin defaults to 72, and can be changed by typing ^V and then, after the 'SET>' prompt, the string FILL:value , where 'value' is the decimal value for the new fill margin. TOP ("5") The '5' key is top of file (line 1). CENTER (PF1 + "5") The '5' key, when typed immediately after the PF1 key is typed, centers the current line based upon the current fill (see GOLD M or Control V). The center line should not contain embedded tabs. PASTE ("6") The '6' key inserts text saved by the 'cut (3)' key. ZAPSEL (PF1 + "6") The '6' key, when typed immediately after the PF1 key is typed, erases the contents of the paste buffer. FINDLAST ("7") The '7' key is used to locate a text pattern in the file and move backward to that page if the pattern is found. The search is from the current line to the first line of the file, a backward search. SEARCHB (PF1 + "7") The '7' key, when typed immediately after the PF1 key is typed, does a search but from the current line to the begining of the file instead of to the end of the file. Entered as PF1 7 from the keypad. SWAPCHR ("8") By typing the 8 key, the character at the current cursor position will be swapped with the next one if neither of them are line terminators. SWAPLIN (PF1 + "8") By typing the PF1 key and then typing the "8" key, the current line will be swapped with the next line of the file. It is an error if the current line is the last line in the file. Entered as GOLD 8. APPEND ("9") The '9' key appends the current line to the paste buffer. This is the only way to store lines that are not adjacent into the paste buffer. The "6" key as mentioned above will retrieve the text in the paste buffer. SPCINS (PF1 + "9") Inserts the ASCII character whose value is given in the previous GOLD digits command. Entered as GOLD digits GOLD 9. See GOLD digits. GOLD (PF1) This is the key that switches other keys to their gold functions. It has a one shot effect, thus it must always be typed just before the usual keypad key is typed. Entered as the PF1 key. PF2, CONTROL P, and GOLD PF2 Next page, reprint current page and previous page respectively. FNDNEXT (PF3) FINDNEXT (PF3) does a search to the next occurance of a previous search string, moving the cursor to sit on the first character of the string found (if found). The search is from the current line and cursor posi- tion to the end of the file. The search pattern can be loaded by using the 'FIND' command or by typing GOLD ENTER. FIND (PF1 + PF3) FIND (GOLD PF3) finds the next occurance of a string from the current line to the end of the file. DELETELINE (PF4) UNDELLINE (GOLD PF4) Deletes the current line or word. DELLINE is the same as Control D. Undelete line (GOLD PF4) recovers the most recently deleted line. Delline can be modifed in two ways. The first is to enter a repeat count to delete N lines (or a * to delete to end of page). The other option is to start a select range (by typing the keypad key 3) and then moving down until you have moved past the last line to be deleted. Typing PF4 will then delete the entire range of lines. DELETEWORD ("-") UNDELWORD (PF1 + "-") Delword deletes up to the start of the next word. Undeleteword recovers the most recent delete. If used at the end of the line, causes the next line to be merged at the end of the current line. DELETECHAR (",") UNDELCH (PF1 + ",") Same as rubout, except that at EOL, merges with the next line. UNDELCH restores the most recently deleted character. Entered as , or GOLD ,. REPLACE ("ENTER") Same as control N (^N). Causes a search and replace for page. "." The dot key unshifted is a findnext and replace opera- tion. If there is no pervious search pattern one will be prompted for, as well as for the replacement text. The search pattern is changed by GOLD ENTER. The replacement text pattern is set by GOLD GOLD ENTER. GOLD + "." Typing this will cause all following characters to replace characters rather than to be inserted into the current line. This is automatically disabled by any keypad command or by reaching eol. This command acts like a toggle. Entered as 'PF1 .' on the keypad. GOLD A Typing PF1 and A will set the current left margin to the current cursor position. GOLD D Typing PF1 and then D will cause the current select range to be saved and then deleted from the file. GOLD F Typing PF1 and then F will cause you to exit the editor. It will prompt you for the output file (the same as the line editor END command) and then exit. GOLD G Typing PF1 and then G will insert a file starting at the current line. GOLD L Typing PF1 and then L will toggle you into and out of 'learn mode'. While in learn mode, any commands you type are saved as a macro which can then be executed by the ^E command. GOLD M This gets you into a small menu, where various parame- ters can be set. GOLD P This will fill the current paragraph (from the current line to the next blank line) out to the current right margin (fill). See Gold M or control V for setting the margin. The margin default is 72. GOLD Q Typing Gold (PF1) and Q will queue the current select range out to the default line printer. GOLD R Typing Gold (PF1) and R will reverse the current line. GOLD S This is the same as the SAVE command outside of the VT command. GOLD T Typing GOLD and then T will insert the current time and date into the file at the current cursor position. GOLD U Typing Gold (PF1) and U will erase (but not delete) the current line. This is different than the ^U command which erases from the current cursor position to the beginning of the line. GOLD V Gold V will display all the saved page markers along with the text of the line that is (was) at that line number. See GOLD GOLD Uparrow and GOLD GOLD Downarrow for more information. GOLD W This dumps the current 'select' range out to a disk file. The range of lines is determined by the start- ing line number which must be the line at which the 'cut' command was given (the '3' keypad key). The stopping line number is the current line, which is assumed to be greater than the starting line number. For example, to write lines 100-130 out to the disk file 'JUNK.DAT' the following would be done: 1) Move to line 100, then type the '3' key (cut) 2) Advance to the next page (PF2) 3) Move to line 130 with the downarrow 4) Type PF1 and then 'W' 5) For the 'FILE>' prompt, enter JUNK.DAT When completed, the cursor will be on line 130. MACROS Macros, entered via ^X and invoked by ^E (or GOLD digit ^E) will be automatically terminated under the following conditions. A next line would cause a movement past eof. A previous line would move to line 0 (?). A find next (PF3) fails. A delete (^D) reaches the end of the file. This is done in order that the user can specify a large repeat count, which is done by typing GOLD digit or GOLD * immediately preceding the typing of ^E. SPECIAL MATCH CONTROL CONSTRUCTS The FINDNEXT command (PF3 on a VT100 or GRAY on a H19) and the REPLACE command (ENTER or ^N) allow the use of special match control character sequences to allow matches on character classes. The patterns are the same as in TECO and are as follows: Note: The 'uparrow letter' sequence is entered by typing the Uparrow key (shift 6) followed by the letter. Note that ^E can be also be entered by typing CTRL E. ^X matches any character ^S Accepts any non alpha-numeric ^Ea accepts any alphabetic (A-Z,a-z) ^Ec accepts A-Z,a-z,0-9,.,$ ^Ed accepts any digit 0-9 ^Er accepts any upper case letter or any digit 0-9. ^Es accepts any space or tab ^Ev matches any lowercase letter ^Ew matches any uppercase letter ^Ex same as ^X ^E accepts the character whose ASCII code (in octal) is nnn. A decimal point may be added to 'nnn' to use a decimal number instead of octal. ^Q uses the next character literally, included to allow searches for things like uparrows. ^R same as ^Q For example, to find a sequence, enter the search pattern (via 'SETPAT' (GOLD enter)) as: ^E<12>^E<15> and then type FINDNEXT. Also it is now posible to replace a string with nothing by entering a line feed (not a carriage return) for the replacment string when using the REPLACE command. ASCII CHART (IN OCTAL AND DECIMAL) ASCII CHART CHAR DEC OCT CHAR DEC OCT CHAR DEC OCT CHAR DEC OCT NUL 0 0 SP 32 40 @ 64 100 ` 96 140 ^A 1 1 ! 33 41 A 65 101 a 97 141 ^B 2 2 " 34 42 B 66 102 b 98 142 ^C 3 3 # 35 43 C 67 103 c 99 143 ^D 4 4 $ 36 44 D 68 104 d 100 144 ^E 5 5 % 37 45 E 69 105 d 101 145 ^F 6 6 & 38 46 F 70 106 f 102 146 BEL 7 7 ' 39 47 G 71 107 g 103 147 BKSP 8 10 ( 40 50 H 72 110 h 104 150 TAB 9 11 ) 41 51 I 73 111 i 105 151 LF 10 12 * 42 52 J 74 112 j 106 152 VT 11 13 + 43 53 K 75 113 k 107 153 FF 12 14 , 44 54 L 76 114 l 108 154 CR 13 15 - 45 55 M 77 115 m 109 155 ^N 14 16 . 46 56 N 78 116 n 110 156 ^O 15 17 / 47 57 O 79 117 o 111 157 ^P 16 20 0 48 60 P 80 120 p 112 160 XON 17 21 1 49 61 Q 81 121 q 113 161 ^R 18 22 2 50 62 R 82 122 r 114 162 XOFF 19 23 3 51 63 S 83 123 s 115 163 ^T 20 24 4 52 64 T 84 124 t 116 164 ^U 21 25 5 53 65 U 85 125 u 117 165 ^V 22 26 6 54 66 V 86 126 v 118 166 ^W 23 27 7 55 67 W 87 127 w 119 167 ^X 24 30 8 56 70 X 88 130 x 120 170 ^Y 25 31 9 57 71 Y 89 131 y 121 171 ^Z 26 32 : 58 72 Z 90 132 z 122 172 ESC 27 33 ; 59 73 [ 91 133 { 123 173 FS 28 34 < 60 74 \ 92 134 | 124 174 GS 29 35 = 61 75 ] 93 135 } 125 175 RS 30 36 > 62 76 ^ 94 136 ~ 126 176 US 31 37 ? 63 77 _ 95 137 DEL 127 177 Using VTEDIT with the HEATHKIT H19 ---------------------------------- VTEDIT on a H19 terminal can be entered with the VTEDIT command and either of the switches /VT52 or /ANSI. The /ANSI switch is recommended as it was designed specifically with the H19 in mind. When VT edit is invoked, it transmits a code to put the H19 in its Alternate Keypad Mode. The keypad now will perform the special function operations of VTEDIT. VTEDIT also transmits a code to put the keypad in Keypad Shifted Mode. The keypad will therefore send the arrows without the use of the shift keys, while in order to use the keypad keys you must hold down the shift key. If you would like the keypad to be non-shifted, simply go off line and type [>6l after you are in VTEDIT. The H19 special function keys correspond to the PF keys on a VT100 as described in the VTEDIT documenta- tion as follows: H19 VT100 ------ ----- BLUE PF1 - 'GOLD' key RED PF2 GRAY PF3 f1 PF4 f2 - (on VT100 keypad) f3 , (on VT100 keypad) Keypad Following is a diagram of the H19 keypad and the func- tions associated with the various keys in different modes. 'NORMAL' is when the key is typed without typing the BLUE key first. 'GOLD' is the action taken when the BLUE key is typed immediately preceeding the keypad key. 'SHIFTED' is the action taken when the shift key is held down while the key is pressed ( assum- ing Keypad Shifted is enabled ). Function Keys: +-------+-------+-------+ +-------+-------+-------+ ! "f1" ! "f2" ! "f3" ! !"BLUE" ! "RED" ! "GRAY"! ! (PF4) ! (-) ! (,) ! ! (PF1) ! (PF2) ! (PF3) ! !delline!delword!delchar! <-gold-> ! gold !nextpag!fndnext! !undelln!undelw !undelc ! ! !lastpag! find ! +-------+-------+-------+ +-------+-------+-------+ Keypad: +--------+--------+--------+ ! "7" ! "8" ! "9" ! normal ! - - !cursorup! - - ! shifted !searchf !swapchr ! append ! gold !searchb !swaplin ! spcins ! gold gold ! - - !prestore! - - ! +--------+--------+--------+ ! "4" ! "5" ! "6" ! normal !cursorlt! help !cursorrt! shifted ! bottom ! top ! paste ! gold ! fill ! center ! zapsel ! gold gold ! - - ! help ! - - ! +--------+--------+--------+ ! "1" ! "2" ! "3" ! normal ! - - !cursordn! - - ! shifted ! word ! eol ! cut ! gold !lstword ! deleol ! chcase ! gold gold ! - - !markpage! - - ! +--------+--------+--------+ ! "0" ! "." !"ENTER" ! normal !nextline!rep next!replace ! shifted !nextline!rep next!replace ! gold !breaklin! insoff ! setpat ! gold gold ! - - ! - - ! setrep ! +--------+--------+--------+ .ENDM .MACRO JOU The JOURNAL command, when entered, will create a JOURNAL file with a name defaulting to INPUTFILENAME.JOU, and will place this file at the beginning of your directory, as in: ted test.for EDIT version 7.0.16a RSTS T7.1-46 U of Toledo 70 Editing file TEST.FOR 0000118 chars ( 8 Lines) read EDIT>jou Journal file name < TEST .JOU/MO:1536 > ? EDIT>l1,3 1 ) program test 2 ) byte buffer(80) 3 ) read (5,1000) buffer EDIT>i Type CTRL/Z to stop insertions 1 )c this is a example for TED 2 )c 3 )^Z EDIT>e Output file < TEST.FOR > ? Ready To accept the file name just a carriage return was typed. From that point on until you END, QUIT, use the RECOVER or the '@' command all text you enter will be put into that journal file, in this case called TEST.JOU. To see this, type: COPY TEST.JOU l1,3 i c this is a example for TED c ^Z e Ready Please note that currently ALL journal files are erased and deleted by the system after one day. To save a journal file you will have to rename it to some other extension (filetype) before logging off. Also note that journaling will work from the screen editor with the restriction that you should not try to look at the journal file after editing as it will contain many control characters and keypad escape commands. /JOURNAL The CCL command line (MCR for RSX) can contain the switch /JOURNAL following the filename to invoke journaling, as in: TED TEST.FOR/JO The effect is the same as using the journal command. Note that the journal filename will be forced to INPUTFILENAME.JOU, in this case it would be TEST.JOU. .ENDM .MACRO REC The RECOVER command reads a journal file just like an indirect command file and causes the editor to execute all the commands in the file. It can be entered at any time. Please note that the RECOVER command will close any active journal files, thus to resume journaling after the recover command you will have to reenter the JOURNAL command. /RECOVER The CCL command line (MCR for RSX) can contain the switch /RECOVER to initiate an edit recovery as in: TED TEST.FOR/RE Note that the journal filename will be forced to INPUTFILENAME.JOU, in this case it would be TEST.JOU. .ENDM .MACRO AT The @ command opens a command file for execution, thus you can store common command sequences for repeated execution. The command syntax is slightly different from the other editor commands in that the filename is typed immediately after the atsign ('@'). If no filename is present you will be asked to type the name of one. .ENDM .MACRO SWI /JOURNAL The CCL command line (MCR for RSX) can contain the switch /JOURNAL following the filename to invoke journaling, as in: TED TEST.FOR/JO The effect is the same as using the journal command. Note that the journal filename will be forced to INPUTFILENAME.JOU, in this case it would be TEST.JOU. /RECOVER The CCL command line (MCR for RSX) can contain the switch /RECOVER to initiate an edit recovery as in: TED TEST.FOR/RE Note that the journal filename will be forced to INPUTFILENAME.JOU, in this case it would be TEST.JOU. /CREATE The command line can have the /CR switch following the filename to force the file to be created even if there already is a file of that name in your directory. TED TEST.FOR/CR /CASE The /CASE switch following the input filename will cause all lowercase characters to be translated to upper case. /HELP The /HELP switch sets the editor in a help mode only. TED/HELP /TAB The /TAB switch on the command line will cause all tabs to be expanded to the correct number of spaces in the file. TED TEST.FOR/TA .ENDM .MACRO WIL Wildcards The RSTS and RSX versions of TED can accept wildcard filename and extension specifications on the either the CCL (for RSX, MCR) command line or at the 'Input file ? ' prompt point. TED will take the wildcard filename and do a directory lookup on it. If a match is found, it will ask you to edit it by printing the filename and filesize. At this point you can type: Y to accept the file printed N to look for the next match T to start over at the top of the directory S to read a new file specification to skip to the next file (carriage return) to start over at the top of the directory (line feed key) Q to exit ^C to exit (control C) For example: TED *.MAC Would match any file with .MAC as a filetype TED DK0:[1,3]G?????.MAC Would match only files on the RK05 unit 0 in account (1,3) starting with a G as the first character and allowing anything for the rest of the filename, with the filetype of MAC. Note that the wildcard support is a function of the support available in the executive, which means that wildcarding of single characters will NOT work on RSX. Notes: The system manager may elect to disable this feature for certain classes of accounts. The account number field is ALWAYS zeroed for nonprivledged users. .ENDM .MACRO SPA The RSTS and RSX versions of TED also allows you to exit and re-enter the editor without actually ENDING or QUITING by spawning a subtask that can either execute a single command line passed to it or wait for multiple commands. In the first mode, you simply type $ (not escape) followed by the command line text, as in EDIT>$SY/R to get a systat. EDIT>$SY/R sy/r Run-Time Systems: Name Ext Size Users Comments BAS4F BAC 16(16)K 14 Perm, Addr:50, KBM, CSZ RT11 SAV 4(28)K 1 Temp, Addr:158, KBM,EMT:255 EDRT EDI 20(12)K 21 Perm, Addr:138, KBM SYSMV8 SM 4(28)K 1 Perm, Addr:162, R/W RSX TSK 3(28)K 0 Perm, Addr:135, KBM DCL 12(2)K 0 Temp, Addr:184, KBM DUMRTS 1(28)K 0 Non-Res XRSX TSK 3(28)K 0 Non-Res, KBM, Rem BAS2F BAC 15(16)K 0 Non-Res, KBM, CSZ TECO TEC 8(24)K 0 Non-Res, NER, Rem SRT SRT 7(24)K 0 Temp, Addr:201 EDIT> In the second mode, you type only $ (followed of course by a carriage return) and TED will then wait for system commands and then execute them. In this mode on RSTS, you return to your editing by typing a control D (^D), as in: EDIT>$ Ready SY/82,21 25 - 82,21 KB20* ..SEDI 5/31K KB 1:21.0 -8/6 EDRT Ready DEL JUNK.DAT JUNK.DAT Deleted Ready ^D EDIT> In this mode on RSX, you type the command line printed when the editor stops, as in: EDIT>$ Type RES TED to continue. > Note: This feature may be restricted by the system manager. .ENDM .MACRO TRI The TRIM command allows you to truncate a line or group of line to a given width, while at the same time removing tabs and spaces from the end of the line(s). The format of the command is TRIM starting_linenumber,ending_linenumber:trim_linelength The first two command arguements are optional and follow the standard rules for defaults in TED. The last arguement, which is normally used by other commands as a 'target' line number is required as it specifies the position in the line(s) where the line(s) will be truncated at. Example: EDIT>trim20,30:10 Would cause all lines from line 20 to line 30 to be truncated to 10 characters in length (exclusive of line terminators). The lines would also have all trailing spaces and tabs removed. .ENDM .MACRO RET The CHATTY and RETICENT commands control the printing of changes made to the text by the APPEND, CDELETE, REPLACE, TRIM and XCHANGE commands. By typing the RET command you will find that TED no longer prints all the changed lines out to the terminal for these commands. The normal default is CHATTY , which causes the above mentioned commands to echo all modified lines to the terminal as they are done. .ENDM