TVX: PD Editor (7a of 7, repost)
wampler at unmvax.UUCP
wampler at unmvax.UUCP
Fri Jan 17 03:34:08 AEST 1986
This was originally one article, 7 of 7, but has
been split to keep files < 64k. Use cat to recombine
7a and 7b.
#--------CUT---------CUT---------CUT---------CUT--------#
#########################################################
# #
# This is a shell archive file. To extract files: #
# #
# 1) Make a directory (like tvx) for the files. #
# 2) Write a file, such as "filen.shar", containing #
# this archive file into the directory. #
# 3) Type "sh file.shar". Do not use csh. #
# #
#########################################################
#
#
echo Extracting tvx_refa.doc:
sed 's/^X//' >tvx_refa.doc <<\SHAR_EOF
X
X
X
X
X
X TVX Reference Manual
X
X
X
X This is the Reference Manual for TVX, a public domain screen
Xeditor written in C by Dr. Bruce E. Wampler. (Current address: Dr.
XBruce E. Wampler, University of New Mexico, Department of Computer
XScience, Farris Engineering Center, Albuquerque, NM 87131). Any
Xcomments, bug reports, or suggestions should be sent to that address.
XThis manual contains the formal descriptions for each editor command.
XAn appendix gives some notes for installing TVX on various systems.
XThe name TVX is derived from "TV" editor for any terminal ("X").
X
X
X
X*** GETTING STARTED ***
X
X To edit a file using TVX, enter the following command line:
X
X tvx filename -switch1 -switch2 ...
X
X The file name specified is the file to be edited, and must obey
Xthe conventions used by the local operating system (the MS-DOS version
Xrequires DOS version 2.0, and supports pathnames). If the file is a
Xnew file (does not exist), TVX will ask if you really want to create
Xit. Answer y or n. If you gave an incorrect name, you may give the
Xcorrect name, but the switches entered on the original start line will
Xremain in effect. Control-C can be used at this point to abort.
X
X TVX has several switches which control certain operating
Xcharacteristics. Each switch begins with a minus (-), and is
Xseparated from the file name and other switches by a blank in the
Xstandard UNIX/C convention. Some switches may be negated by using a
X'nox' form. Thus, '-b' will cause a .bak file to be generated, while
Xa '-nob' causes the .bak file to be deleted on exit from the editor.
XThis capability is indicated by []'s. As many switches as necessary
Xor desired can be used at one time in any order. A ':' may be used
Xinstead of a '=' for '-c' and '-o'. The various switches supported
Xinclude:
X
X -c=filename -- read a configuration file. If only -c is
X specified, TVX will look for A:CONFIG.TVX on CP/M and for
X /bin/CONFIG.TVX on MS-DOS. The -c switch is not supported
X on all implementations.
X -[no]b -- generate a .BAK version of the original (the usual
X default). The -nob option means no .BAK file is generated.
X This mode of operation follows the normal Unix convention of
X not keeping past generations of a file.
X -[no]i -- auto indent mode enabled.
X -[no]l -- generate BACKUP.LOG file
X -o=filename -- send edited output to filename. The output file
X can also be changed at any time during the editing session
X with the ':o' command.
X -r -- read only - file can be read in only
X -s -- big save buffer - leaves more buffer for save file
X -t -- tty mode - puts TVX into tty mode, not using the screen.
X
X
X -1-
X
X
X
X
XTVX Reference Manual 11/27/85
X
X
X See the special appendix on tty mode.
X -w -- word processing mode - sets autowrap on, margin to 65.
X -z -- -z means use Control-Z to mark end of file, -noz means
X don't use. This switch is used only on MS-DOS
X implementations.
X -# -- entering a number from 3 up to the number of lines on the
X screen will create a smaller TVX editing window. This is
X most useful for slower baud rates. A -7 makes a nice, small
X window showing 7 lines.
X
X TVX is mostly a programmer's editor, and can can edit any
Xstandard text line file. On Unix systems, it is an alternative to
Xstandard editors such as ed or vi. On MS-DOS, TVX can also be used to
Xedit standard BASIC programs. BASIC programs must be saved using the
X",A" switch from Microsoft BASIC. When editing BASIC files, care must
Xbe taken to preserve the BASIC statement line numbers. On CP/M, TVX
Xcan be used as a totally compatible alternative to ED. Because of
Xmemory limitations, the CP/M version contains a subset of the commands
Xavailable on the regular version.
X
X
X*** General Comments ***
X
X TVX functions almost identically for all versions. All commands
Xare normally the same, although it is possible to create custom
Xversions with a different command set. Control codes on are normally
Xentered by pressing the CTRL key and the letter key at the same time.
XOn most versions, the character delete key is BACKSPACE. This
Xcharacter delete keys is the one normally used by the respective
Xoperating systems. It is up to the local implementation to notify the
Xuser of any variance from these conventions.
X
X Once the file has been read in, the screen will be cleared, and
Xthe first screenful of the file printed on the screen and the cursor
Xpositioned over the first character of the file. If a new file is
Xbeing created, the message "buffer empty" will be displayed, and the
Xcursor positioned in the upper left corner. TVX is then ready to
Xaccept commands from the keyboard. TVX works on the principle that
Xwhat you see is what you get. Most commands also take an optional
Xnumeric count. The default count is always one. Commands that allow
Xa count value are preceded by the letter 'n' in the following
Xdescriptions. Whenever a command produces output or an error message,
Xit appears on the bottom line of the screen.
X
X The BACKSPACE key (Control-H on some terminals) is used to edit
Xinput text. When TVX is accepting commands, BACKSPACE will cause the
Xcharacter immediately before the cursor to be deleted.
X
X The text from the file which is being edited is held in a buffer
Xin main memory. If a file is particularly large, it may not entirely
Xfit into main memory. The CP/M version of TVX allows slightly over
X20,000 characters in the buffer (950 lines). The MS-DOS versions will
Xallow up to almost 64K characters depending on the memory available.
XUnix versions will usually allow 120,000 characters and 5000 lines in
Xone buffer. If the entire file will not fit into the buffer at once,
Xthen only part of it is read in at a time. The buffer size limit in
X
X
X -2-
X
X
X
X
XTVX Reference Manual 11/27/85
X
X
Xno way restricts the total size of a file that can be edited by TVX.
XTo make editing large files easier, some commands apply to the entire
Xfile and cause automatic cross buffer manipulation.
X
X Because of the internal organization of the text within the
Xbuffer, TVX may occasionally "compact" the tiny fragments of unused
Xbuffer space generated as a part of normal editing. When this
Xhappens, a message is displayed, and input keystrokes are remembered
Xbut not echoed until the compaction process is complete. The process
Xmay take several seconds.
X
X While the normal screen is only 80 columns wide, TVX has been
Xwritten to support a "virtual" screen width of 240 columns. As you
Xmove the cursor right on a line that is longer than 80 columns, the
Xscreen will automatically scroll to the left in increments of 16
Xcolumns. Note that on terminals that cannot disable auto wrap around
Xfor column 80, when you are making changes to a line that is longer
Xthat 80 columns, the line will wrap around to the next display line so
Xthat the entire line is visible. The wrap will disappear when you use
Xthe 'd' or 'u' commands, or rewrite the screen with the 'v' command.
XMost versions will not wrap long lines.
X
X A key to success when using TVX is to remember that there are two
Xmodes of operation. The normal mode is command mode. In this mode,
Xall keystrokes are interpreted as commands. When you want to enter
Xtext, you must enter insert mode with the 'I' command. While in
Xinsert mode, all keystrokes entered will be inserted into the file and
Xdisplayed on the screen. You must exit from insert mode with the
Xescape key. When you enter insert mode, the message "### Insert Mode
X###" will be displayed on the last line of the display. Also, on many
Xterminals, TVX will change the cursor character between command and
Xinsert mode.
X
X TVX uses two techniques for protecting the original file from
Xediting mistakes. First, each time a file is edited, a new version is
Xcreated, and the previous version retained in its original form as a
Xbackup. This file will change the original file extension to '.BAK'
Xon CP/M and MS-DOS systems, and '.B' on Unix. A more complete
Xdescription of TVX file handling is included in an appendix. Also, as
Xyou edit your file, TVX has the capability to write all commands
Xentered during the session to a log file when that capability is
Xenabled. In the event of a major editing mistake, it is possible to
Xedit that log file to remove the command errors, and then apply that
X"command" file to the previous version of the edited file to get back
Xto the state right before the mistake. This feature also allows files
Xof TVX commands to be defined by the user and executed in one step.
XThe last section of the Reference Manual explains how to use the
Xcommand file feature.
X
X
X
X
X
X
X
X
X
X
X -3-
X
X
X
X
XTVX Reference Manual 11/27/85
X
X
X *** Summary of TVX Commands ***
X
X
X Notes: An n preceding a command means optional numeric
X argument may be supplied. If omitted n will default to 1,
X and n can be zero or negative if appropriate. '$'
X represents the escape key, and is used as a terminator for
X insert, find, and loops. Control commands are indicated
X with '^'. For example, '^K' represents Control-K, and is
X usually entered by simultaneously holding down the CTRL key
X and the K key.
X
X
XnA - Append to Save Buffer
X
X The 'A' command is used to append lines of text to the end of the
Xsave buffer, even if other commands have been used since the last 'A'
Xor 'S' command. The append command works exactly like the 'S' command
Xotherwise.
X
X
XB - Buffer beginning
X
X A 'B' causes the cursor to be moved to the beginning of the
Xcurrent buffer.
X
X
X^B - Beginning of file
X
X The '^B' (Control-B) command is used to position the cursor to
Xthe absolute beginning of the file. The '^B' command will always
Xwrite out the rest of the file, then re-read the first buffer full.
XThis command has the side effect of making a new backup version of the
Xfile. It should be noted that any text saved in the save buffer will
Xbe preserved during this operation, so that the 'S' save command can
Xbe used to move text from the end to the beginning of a multi-buffer
Xfile. The search pattern and repeat loops are retained as well. Note
Xthe '^B' file beginning is similar in concept to 'B' buffer
Xbeginning.
X
X
XnC - Change
X
X 'C' can be used to change characters. Entering 'nC' is exactly
Xequivalent to entering 'nKI'. The command will cause 'n' characters
Xto be killed, and insert mode to be entered. The escape must be used
Xto terminate the insert as usual.
X
X
XnD - Down
X
X 'D' moves the cursor down n lines. The cursor is placed at the
Xbeginning of the new line. For convenience, the ENTER key performs
Xthe identical function.
X
X
X
X
X -4-
X
X
X
X
XTVX Reference Manual 11/27/85
X
X
Xn^D - Down in column
X
X Control-D ('^D') is similar to 'D', except the cursor remains in
Xthe original column. Columns are defined as characters from the
Xbeginning of the line, so if a line has tab characters in it, the
Xcursor may appear to move out of column on the screen.
X
X
XE - End of the buffer
X
X 'E' causes the cursor to be placed at the end of the current text
Xbuffer.
X
X
Xn^E - Edit repeat buffer n
X
X When making repeat loops, it is easy to make a mistake. The ^E
Xcommand allows any of the repeat buffers to be edited, and then the ^R
Xcommand can save the corrected repeat buffer back. If you give a
Xvalue 0 for n, the currently selected buffer is used. If n is from 1
Xto the maximum number of repeat buffers, then that repeat buffer will
Xbe selected for editing.
X
X The ^E command will insert the contents of the selected repeat
Xbuffer into the current text buffer. The repeat buffer will be
Xinserted above the current text line. The repeat buffer will start
Xwith a sequence of '#n:<', where n will be replaced by the repeat
Xbuffer being edited. The '#n:' identifies which buffer you are
Xediting, and is used by the ^R store repeat buffer command to identify
Xthe buffer to save to. Escapes will be represented by '^[' instead of
Xthe '$' used when entering a repeat buffer initially. A '>^[^['
Xidentifies the end of the repeat loop.
X
X It is possible to make as many changes as needed to the repeat
Xloop. Escapes can be added by using '27i'. If you want to save the
Xloop in a different buffer, you can change the number after the '#'.
XIt is also important to maintain the '#n:<' start and '>^[^[' ending
Xsequences. Also, loops are limited to a maximum of 100 characters.
XYou can have carriage returns within the body of a loop, too. If you
Xwant to create a new buffer, you can use ^E on an empty repeat buffer
Xto get the required '#n:<>^[^[' loop sequence.
X
X
X After you have edited the repeat buffer, it can be saved
Xwith the '^R' command. You must place the cursor anywhere on the
Xfirst line of the repeat buffer before using '^R'. When you press ^R,
Xthe buffer will be saved in the buffer indicated right after the '#'.
XThus, unlike ^E, the ^R command accepts no n value.
X
X
XnF - Find text pattern
X
X 'F' is used to find a text pattern. When 'F' is entered, the
Xmessage 'Find?' is echoed on the bottom line. You then enter the
Xpattern to find, terminated with the escape key (echoed as $). When
Xthe count 'n' is positive (which is the default), find searches the
X
X
X -5-
X
X
X
X
XTVX Reference Manual 11/27/85
X
X
Xcurrent buffer from the current position forward. If 'n' is negative,
Xthen a backwards search is performed starting with the previous line.
X(Use '^F' to search across buffers). Normally, 'F' ignores the case
Xof the letters in the pattern. If the ':F' parameter is set with 0,
Xthen 'F' command will match only the exact case. See the ':' set
Xparameter command for details of the ':F' parameter. If the pattern
Xis not found, "Not found" will be printed and the cursor remain at its
Xoriginal location. If the pattern is found, then the cursor will be
Xplaced immediately following the pattern. The pattern may be at most
X100 characters long. If the pattern is only an escape, then the
Xprevious pattern will be used again (same as ';').
X TVX supports extensive wild card matching. The ':M' set
Xparameter controls whether or not wild card matching is turned on.
XNormally, it is. The wild card matching in TVX is based on the
Xconcept of 'sets of special characters'. TVX predefines 6 sets of
Xcharacters, and allows the user to define one additional set. When a
Xspecial control character is included as part of the find pattern,
Xthen any character in the specified set will match the pattern. The
Xpredefined sets are:
X
X ^A - Alphanumeric characters: a-z, 0-9
X ^D - Digits: 0-9
X ^L - Letters: a-z
X ^O - Other characters: all characters except a-z, 0-9
X ^P - Punctuation: '.', ',', '!', '?'
X ^X - Any character: any printable character
X ^U - User character: any character in user set, set by ':U'
X
X Any of the sets may be specified by entering the proper control
Xcharacter in the find pattern: Control-A for the ^A set. Thus,
Xentering a find pattern of '^L^D' would match any letter followed by
Xany digit. Since it may be desirable to match a sequence of one of
Xthe character sets, two prefix characters are supported. A '^W'
Xbefore one of the above sets will match a 'word' of that set. Thus,
X'^W^L' will match any word, and '^N^D' will match any number. The
Xfind pattern 'st^W^L' would match words starting with 'st'. The '^N'
Xprefix is used to make a 'word' of characters NOT included in the
Xgiven set. Thus, '^N^L' will match a 'word' of characters NOT
Xincluding the letters a-z. A match 'word' consists of any sequence of
Xcharacters (at least one character long) found in the given set, up to
Xthe first character not in the set. End of lines also terminate all
Xwild card patterns. The only real way to adequately understand TVX
Xwild cards is to use them in practice.
X
X
X^F- Find across buffers
X
X '^F' (Control-F) is the same as Find, except the search will
Xcross buffer boundaries. Whenever a buffer is searched without
Xfinding the pattern, the next buffer will be read in. The screen will
Xnot change until the pattern is found or the file is exhausted. If
Xthe pattern is not found anywhere, then the entire file will have been
Xwritten out, and there will be an empty buffer. The '^B' command may
Xbe used at that point to get back to the beginning of the file.
X
X
X
X
X -6-
X
X
X
X
XTVX Reference Manual 11/27/85
X
X
XG - Get saved text
X
X 'G' is used with 'S' and '^Y' to move text around. 'G' causes
Xthe text in the save buffer to be inserted before the current cursor
Xposition. The saved text remains in the save buffer. There must be
Xat least one line of text in the main buffer before 'G' will get the
Xtext from the save buffer.
X
X
X^G - Get killed line (unkill)
X
X The '^G' (Control-G) unkill command can be used to "unkill" one
Xline, which will be the last line killed with '^K'. If the last
Xcommand was 10^K (kill 10 lines), then '^G' will retrieve only the
Xlast line killed. The "unkilled" line will be inserted right before
Xthe current cursor position. It is also possible to move single lines
Xaround the text buffer using '^K' and '^G' - but be cautious. Any
Xother '^K' command will reset the last killed line. '^G' can also be
Xused to retrieve the entire line involved in a "'" (single quote) or
X'"' (double quote) command.
X
X
XnH - Half page
X
X 'H' is similar to the 'P' Page command. It causes the cursor to
Xmove down a half screenful. This will be typically be 12 lines. A
Xnegative count (e.g. -h) moves up a half screen.
X
X
XnI - Insert
X
X 'I' causes the editor leave command mode and enter insert mode.
XFollowing the 'I', all text typed in is inserted into the file until a
Xterminating escape is typed. Inserted text is echoed on the screen as
Xit is inserted. If any value other than the default value 1 is
Xsupplied for n, then only one character is inserted, and it will have
Xthe ascii value of n. This is the method used to enter characters that
Xcannot normally be entered in insert mode, such as escape or
Xcharacters not on the keyboard. The message "### Insert Mode ###" is
Xdisplayed on the bottom line when insert mode is entered (except when
Xinserting on the very last line of the file). Many versions of TVX
Xwill change the shape of the cursor when insert mode is entered.
X
X
XJ - Jump back
X
X The 'J' command will cause a "jump" back to the line of the
Xprevious cursor position. Suppose the cursor was positioned somewhere
Xin the middle of the file. If the 'E' end command was entered, the
Xcursor would move to the end of the current buffer. If the 'J'
Xcommand was then used, the cursor would return to the original line.
XIt makes it convenient to flip back and forth between two points in
Xthe file. It is also useful if a large cursor movement command is
Xaccidentally entered (like when you thought you were in insert mode).
X
X
X
X
X -7-
X
X
X
X
XTVX Reference Manual 11/27/85
X
X
XnK - Kill Character forward
X
X The 'K' command kills or deletes characters in a forward
Xdirection. '1K' would delete the character the cursor is positioned
Xover, and '5K' would delete the next 5 characters.
X
X
Xn^K - Kill lines
X
X '^K' (Control-K) is used to kill an entire line. n=1 kills the
Xcurrent line, negative n kills previous lines, while positive n kills
Xfollowing lines.
X
X
XnL - Left
X
X 'L' moves the cursor n characters to the left.
X
X
XM - Memory and Status
X
X The 'M' command is used to display certain status information.
XThe name of the file currently being edited (where the output will go)
Xis displayed, followed by the version of TVX. The number of free
Xcharacters currently available in the buffer is then given (this does
Xnot include characters that are free but not compacted yet), followed
Xby the number of the last line of the file. Finally, the currently
Xselected repeat loop buffer and maximum number of repeat buffers
Xallowed is shown.
X
X
XnN - Note current location
X
X This command notes the current line location. Values of 1 to 9
Xare allowed for n. After entering '3n' for example, you can then move
Xaround the buffer, and later use '3^n' to return to the noted
Xlocation. This command really remembers the current line, relative to
Xthe current buffer beginning. Thus if you edit out lines before the
Xnoted location, you will not return to the same line.
X
X
Xn^N - Go back to noted location
X
X This command is used to go back to a noted location.
X
X
XnO - Open line for insert
X
X The 'O' command will cause n blank lines to be inserted, and the
Xcursor positioned at the beginning of the first new line. Following
Xthe 'O' command, insert mode is automatically entered. The 'O'
Xcommand is a convenient method for inserting new lines.
X
X
X
X
X
X
X -8-
X
X
X
X
XTVX Reference Manual 11/27/85
X
X
X^O - Operating System call
X
X Some versions of TVX (MS-DOS and Unix, for example), will allow
Xan operating system command to be executed from inside of the editor.
XFor example, it might be useful to get a directory listing. On
XMS-DOS, after entering the ^O, the normal 'dir' command is entered.
XAfter the directory is shown by the operating system, pressing any key
Xwill return to the edited file.
X This command has one particularly valuable application - editing
Xother files. For example, you may want to add part of another file to
Xthe file you are currently editing. Use the '^O' command to edit the
Xother file, and create a temporary file with the part you want to
Xadd. Then you can use the '^Y' yank command to read in the file. For
Xexample: Use '^O' to get enter operating system command prompt. Then
Xenter something like 'tvx otherfile -o=tempfile'. You will get a new
Xcopy of tvx with the otherfile being edited. Edit it to get the part
Xyou want. When you exit that copy of tvx, the part you want to add
Xwill be in tempfile. You can now yank it into the current file.
X
X
XnP - Page
X
X The 'P' commands is the same as '25D' on 24 line terminals, and
Xeffectively causes a new screenful to be written. It is a convenient
Xmethod for scanning through the file. The n count argument specifies
Xthe number of 'pages' to scroll. Negative values for n causes reverse
Xscrolling.
X
X
X^P - Print Screen
X
X If '^P' (Control-P) is entered, and a printer is on line, the
Xentire contents of the screen will be sent to the printer. Several
Xconsecutive sequences of "P^PP^P..." (or a repeat loop: "10<P^P>$$")
Xcan be used to print longer portions of the file. This command will
Xnot normally work on time shared systems such as Unix.
X
X
XnR - Right
X
X 'R' causes the cursor to move n characters to the right. For
Xconvenience, the space bar is equivalent to 'R'.
X
X
X^R - Restore repeat buffer
X
X The '^R' command will save an edited repeat buffer and delete the
Xedited buffer from the text. See '^E' for a complete summary of
Xediting repeat buffers.
X
X
XnS - Save text
X
X Besides the normal text buffer, TVX has a separate "save"
Xbuffer. This buffer can be used to move blocks of text from one part
Xof the file to another. A simple 'S' command will save the current
X
X
X -9-
X
X
X
X
XTVX Reference Manual 11/27/85
X
X
Xline in the save buffer, and move the cursor down one line. On the
Xscreen, 'S' appears to have the same behavior as 'D'. If n is
Xsupplied, then n lines will be saved. 'S' can also be used
Xsequentially. If no other commands intervene, consecutive 'S'
Xcommands will continue adding lines to the save buffer. If any other
Xcommands are entered between consecutive 'S' commands, the previous
Xcontents of the save buffer will be lost, and replaced with the new
Xline. The 'A' command can be used to append lines to the current save
Xbuffer without losing the previous contents.
X The '/' command can be used with 'S' and 'G' to move text. Use
X'S' to save the text to be moved, immediately delete the saved text
Xwith '/', then insert it at the new place with 'G'. The last line of
Xthe file is can be saved in the save buffer only once, and an error
Xmessage will be printed if you attempt to save the last line a second
Xtime.
X
X
XnT - Tidy text
X
X The 'T' tidy command is specifically designed to improve the
Xappearance of strictly text files. When entering letters and
Xdocuments, is it usually desirable to have the lines filled to the
Xright margin. However, after editing, it is common to find a jumble
Xof uneven, difficult to read source lines. The 'T' tidy command will
Xfill source text using the same right margin currently set for
Xauto-wrap.
X Tidy performs essentially the same operation as a word processor
Xfill function. Word are combined on one line until the auto-wrap
Xmargin is passed. The 'n' count refers to the total number of
Xresulting lines, not the number of original lines. Specifying a large
X'n' will tidy large sections of a document. The tidy command
Xrecognizes lines beginning with blanks,tabs, or a period and blank
Xlines as special. It will not fill those lines, thus preserving
Xparagraphs, tables and NROFF-like dot commands.
X One interesting capability of tidy is to put one word per source
Xline. Set the auto-wrap margin to 2, then use the tidy command. The
Xresult will put one word per line.
X
X
X^T - TERMINATE - ABORT EDIT SESSION
X
X The '^T' (Control-T) command aborts directly to the operating
Xsystem. The original file is left untouched, and no backup file is
Xcreated. This is a fairly dangerous command in that all editing
Xperformed will be lost (unless the '^B' file beginning command was
Xused). You will be asked to confirm the '^T' command with a Y or N.
XIf the '^T' is performed accidentally, the backup log file can be
Xapplied to the current version of the file after the '^T' has been
Xedited out of the log file (no backup file will have been created
Xafter the '^T'). The '^T' command is most useful when you decide you
Xdon't want to make any changes and want to exit from TVX quickly.
XExiting with the '^T' command is similar to using the 'R' read only
Xswitch at the beginning.
X If you have used the '^B' command, a work file copy of the
Xoriginal will have been written out containing all the edits performed
Xbefore the '^B'. When you use '^T' and this work file has been saved,
X
X
X -10-
X
X
X
X
XTVX Reference Manual 11/27/85
X
X
Xa message informing you of its existence will be printed. You can
Xthen either use that file, or delete it at the operating system
Xlevel.
X
X
XnU - Up
X
X The 'U' command moves the cursor up n lines, positioning the
Xcursor at the beginning of the line.
X
X
Xn^U - Up in column
X
X The '^U' (Control-U) is the opposite of '^D', and moves the
Xcursor up in column.
X
X
XnV - Verify the screen
X
X In regular screen editing mode, the 'V' command causes the screen
Xto be rewritten. This is sometimes necessary to get a true version of
Xthe screen after error messages have been written or when editing
Xlines longer than 80 columns. On terminals without reverse screen
Xscroll, the 'V' command forces the cursor to the home display line
X(usually line 16). In screen mode, 'V' ignores any n.
X In tty mode, the 'V' command is used to type lines from the file
Xon the terminal. A negative n will type out lines preceding the
Xcurrent line. An n of 1 types the current line, with the current
Xcursor position indicated by '/'. An n greater than 1 types the
Xcurrent line, plus the following n-1 lines. A command '-12v12v' would
Xtype 24 lines on the terminal: 12 before, the current line, and 11
Xfollowing.
X
X
Xn^W - Write out buffer, read next one
X
X The '^W' (Control-W) command is used to explicitly go from one
Xbuffer to the next. By default, when n is >= 0, the entire current
Xbuffer is written to the new version of the file being edited, and the
Xnext buffer full of the original file (if any) is read in. If a
Xnegative n is supplied (any negative value, most easily -^W), then
Xonly the part of the buffer up to (but not including) the current line
Xis written. Then as much more of the file as possible is read to the
Xend of the current buffer. Thus, a negative n is useful when a file
Xwon't fit, and the split point is at an awkward place. It is also
Xuseful when a '^Y' yanked file won't fit.
X
X
X^X - eXit
X
X '^X' (Control-X) causes the remainder of the file to be written
Xout, and the editor exited. The entire file will be written, no
Xmatter where the cursor happens to be positioned when the '^X' command
Xis entered. This is the normal conclusion of an editing session. All
Xwork files are deleted, the original file renamed to the back up file,
Xand the newly edited file renamed to the original name. See the
X
X
X -11-
X
X
X
X
XTVX Reference Manual 11/27/85
X
X
Xappendix on tvx file handling conventions for more details.
X
X
Xn^Y - Yank text to/from external file (file merge)
X
X A '^Y' (Control-Y) with a positive n is similar to 'S' save, but
Xthe text saved in the save buffer is read in from an external file
Xinstead of from the current buffer. When '^Y' is entered, the save
Xbuffer is cleared, the buffer compactor invoked, and then the user is
Xprompted for the name of the file to read. TVX then will read as much
Xof the external file into the save buffer as it can. The 'G' command
Xcan then be used to insert the save buffer text into the current file
Xat the desired location. If there is not enough room in the save
Xbuffer to hold the entire file, then only part of the file is read and
Xa diagnostic message printed. The '-S' switch can be used when TVX is
Xfirst invoked to reserve a large save buffer for merging larger
Xfiles. You can also use the '-^W' command to write out the front part
Xof the file, and then 'G' to get the saved file. (Note: '^Y' may not
Xbe used from within a log command file. See section on backup log
Xfile.)
X A negative n (e.g., '-^Y') can also be used with the yank
Xcommand. If the n is negative, then the contents of the save buffer
Xwill be written to a new file. After '-^Y' is entered, you will be
Xprompted for the name of the output file, and then the contents of the
Xsave buffer will be written to that file.
X
X
XnBACKSPACE - Delete previous character
X
X The BACKSPACE key will delete the previous character on the
Xscreen. It is also used for editing input keystrokes for Insert,
XFind, and repeat loops.
X
X
Xn; - Find again
X
X The ';' (semicolon) command causes the previous pattern to be
Xsearched for again. This is more convenient that entering 'F$'
Xagain. The 'n' has the same meaning, positive searches forwards,
Xnegative backwards.
X
X
X/ - delete last thing
X
X The '/' (slash) command is useful when used with 'F' (find), 'S'
X(save), 'G' (get), 'TAB' (word right), and '{' (word left). It causes
Xthe last pattern used to be deleted. Thus "Fxxx$/Iyyzz$" will delete
Xthe pattern 'xxx' and insert 'yyzz'. When used after an 'S', it
Xcauses the just saved lines to be deleted from the text buffer (but
Xnot the save buffer). After the G, it causes the text just inserted
Xfrom the save buffer to be deleted from the text buffer. After a
X'TAB' or '{', '/' will delete the word or words just skipped over.
XSlash must be used immediately following an 'S', 'G', 'TAB', '{', 'F',
X'^F', or ';' command. This command knows how to take wild card
Xmatches into account.
X
X
X
X -12-
X
X
X
X
XTVX Reference Manual 11/27/85
X
X
X= - delete last thing and enter insert mode
X
X The '=' (equals) command is the same as the '/' command, except
Xinsert mode is automatically, thus achieving the effect of '/I'
Xcommand sequence.
X
X
X' - Delete previous part of line (single quote)
X
X The "'" command will delete all the characters in the current
Xline before the cursor.
X
X
X" - Delete rest of line (double quote)
X
X The '"' command will delete from the cursor forward to the end of
Xthe line. The "end of line" mark will remain. Note that the single
Xquote has one tick, representing the "first" part of the line, while
Xthe double quote has two ticks, representing the "second" part of the
Xline.
X
X
X, - beginning of line (comma)
X
X The ',' command will move the cursor to the beginning of the
Xcurrent line.
X
X
X. - end of line (period)
X
X The '.' command will move the cursor to the end of the current
Xline.
X
X
X* - Insert last pattern found
X
X The last pattern found with the find command (up to 100
Xcharacters) is saved in an internal buffer. The '*' command will
Xinsert that pattern into the text at the current cursor location. If
Xthe last find pattern included wild card characters, the pattern saved
Xwill be the actual text matched, and not the wild cards themselves.
XYou must be back in command mode to use this command.
X
X
XnTAB, n{ - Skip over words
X
X The 'TAB' (TAB key, CTRL-I) and '{' commands skip over words. A
Xword is any contiguous set of alphabetic characters (a-z) or digits
X(0-9). 'TAB' moves forwards, while '{' moves backwards. The 'n'
Xcount may be used to skip over several words at once, and a negative
Xcount reverses the direction of the move. Note that '{' is usually
Xaliased to '[' since these are often reversed case on different
Xterminals.
X
X
X
X
X
X -13-
X
X
X
X
XTVX Reference Manual 11/27/85
X
X
Xn< - begin repeat loop
X
X TVX has three different repeat loop buffers which allow an
Xarbitrary sequence of commands to be repeatedly executed. When n< is
Xtyped, the editor echoes 'Repeat: n<' at the bottom of the screen.
XThe user then types in any series of commands to be repeated n times.
XThe repeat command is terminated with a matching '>' and a double
Xescape (echoed as $$). Repeat loops may not be nested. The repeat
Xloop has two typical useful functions: one is to replace multiple
Xoccurrences of a string with another (e.g., "10<fone$=two$>$$"), a
Xsecond is to save a complicated sequence of commands to be repeated as
Xnecessary with the '&' command (i.e., a macro facility). Each repeat
Xloop may have up to 100 characters.
X When a repeat loop is entered from the keyboard, it is saved in
Xone of three repeat loop buffers, each identified by an integer
Xvalue. The repeat buffer which is currently in use can be set with
Xthe 'n:R' command. Buffer 1 will be used by default. The number of
Xrepeat buffers available and the currently active one can be
Xdetermined by using the 'M' command. The availability of three repeat
Xbuffers allows the definition of 'edit macros'. Commonly used
Xsequences of editor commands can be saved in a given repeat buffer,
Xthen selected with 'n:R' and executed with the '&' command.
X For example, "3:R<fpat1$>$$" would select repeat buffer 3 and
Xenter the repeat command into it (and execute the command once).
XOther "macros" could be entered in other buffers, and then the given
Xexample used again by "3:R&". A count 'n' of 0 can be used to enter a
Xmacro without executing it. The indirect command file facility ('@'
Xcommand) can also be used to define and load commonly used macros.
XThe results of using one repeat buffer from within another is not
Xguaranteed, and should be tried only at your own risk.
X The '#' command has been provided to simplify the above
Xsequence. Entering '23#4' for example, is exactly the same as
Xentering '4:r23&'. The n value is a count, and the single digit after
Xthe '#' is the repeat buffer to use.
X
X
X>$$ - End of repeat loop
X
X The repeat loop is terminated by a '>' and a double escape.
XNote: '$$' represents escape.
X
X
Xn& - execute repeat loop
X
X The '&' command executes the commands in the currently selected
Xrepeat buffer n times.
X
X
Xn#k - execute repeat loop k
X
X This command is an easy to execute a specified repeat buffer.
XThe n is a count and the k is a single digit repeat buffer number.
XThis command is exactly equivalent to 'k:rn&'. Repeat buffer k
Xbecomes the current buffer after '#' is executed.
X
X
X
X
X -14-
X
X
X
X
XTVX Reference Manual 11/27/85
X
X
X? - Help
X
X The '?' command causes help screens do be displayed. There are
Xtwo help screens. The first includes a summary of transitory values:
Xa summary of settable ':' parameters, the contents of the repeat and
Xfind buffers, as well as buffer space left. On 16 or bit processors,
Xif the space left is greater than 32,000 characters, then 30,000+x
Xwill be shown, where the total is 30,000 plus x. The first screen also
Xshows the last 16 commands you have entered. This may be useful if
Xyou entered "commands" while you thought you were in insert mode to
Xsee what your keystrokes might have done. The second screen of help
Xsummarizes the command set.
X
X
X@ - Invoke command file
X
X Causes prompt for command file name. Commands in that file are
Xthen read in and executed. See description of backup command files
Xbelow for details.
X
X
Xn:P - Set special parameters
X
X The ':' (colon) command is used to set several TVX
Xcharacteristics. The value n entered before the ':' is the value to
Xset the parameter to, and the character P that follows the ':' defines
Xthe parameter to set. Valid parameters include:
X
Xn:A - set autoindent. A value of 1 turns on autoindent, 0 off.
X Autoindent is useful for programmers. When autoindent is on, each
X new line started while in insert mode will be indented to the same
X leading tab/blank space as the previous line. Use blanks or tabs
X to add indentation, and backspace to backup over indentation.
X
Xn:D - set home "display" line to n. The display line is the line the
X cursor homes to after a verify command. (Default home display
X line: 16 on 24 line terminals, 9 on 16 line terminals.)
X
Xn:E - Expand tab value. The default value for ':E' is 8, which causes
X the tab character (^I) to be expanded to multiples of 8 columns.
X This is the standard used on most systems. Setting ':E' to 0 will
X cause tabs to be displayed as '^I' instead. Other values are
X possible, but less useful.
X
Xn:F - Find case mode: n <= 0 sets find mode to search for exact case
X of pattern, n > 0 (default) set search mode to ignore upper/lower
X case.
X
Xn:M - Match wild cards. (default=1). If on, then matching of the TVX
X wild card sets is enabled. If off, then the wild card control
X characters will match the actual control characters in the file.
X
X:o - set output file name. When ':o' is entered, you will be prompted
X for the name of the edited output file. This overrides the '-o'
X command line switch, and can be used to change your mind about the
X name of the edited file. If the output file name is different than
X
X
X -15-
X
X
X
X
XTVX Reference Manual 11/27/85
X
X
X the input file name, the input file will not be renamed to the
X backup file name.
X
Xn:R - select repeat buffer n. (default=1). Repeat buffer n becomes
X the current repeat buffer executed with the '&' command. The 'm'
X status command will show how many repeat buffers are available for
X a given implementation.
X
Xn:S - scroll lines: This parameter sets how many lines the cursor will
X move before the screen scrolls. The exact effect of the scroll
X parameter depends on the terminal characteristics. On terminals
X that allow a blank line to be inserted at the top, ':S' sets how
X many lines cursor will move above and below home display line
X before scrolling. Default is 0. Changing the scroll value to 4
X would let the cursor move up and down 4 lines from the home display
X line before actually scrolling the screen. Some users might find
X this update mode more pleasant to use. This will be almost
X essential on heavily loaded time shared systems. For terminals
X that do not allow a blank line to be inserted at the top (no
X reverse scroll), 'n:S' sets how many lines cursor will move above
X the home display line before the screen is rewritten. Default is
X 14, which causes the cursor to move nearly all the way to the top
X before rewriting the screen.
X
Xn:T - tty mode. A 0 is screen mode, a 1 is tty mode.
X
Xn:V - virtual window lines. The 'n:V' will set the virtual window to
X n lines. N must be between 3 and the number of hardware lines on
X the terminal. A smaller virtual window is extremely useful on busy
X time shared systems, or when TVX is used over a telephone line at a
X relatively slow baud rate. Typically, a virtual window of 7 or 9
X is big enough to show a reasonable part of the file, yet small
X enough to reduce the overhead of screen update at slow speeds. A
X window of 3 or 5 can even be used if needed. Note that the virtual
X window can be set at start up time by using the '-#' switch. The
X virtual window will use the top n physical lines of the display.
X Error messages and prompts will still be displayed on the bottom
X physical line. Scanning up with 'u' will cause the lines to be
X scrolled onto the unused part of the screen, and gives a true
X picture of the file showing more lines than the window size.
X
Xn:W - set auto wrap width. The ':W' parameter sets the column number
X used for auto wrap mode. When the auto wrap is set to a value
X greater that 1, TVX will automatically insert an end of line when
X the user types the first blank after the given column. Normally,
X the user must manually hit the RETURN key to force an end of line.
X The auto wrap mode allows continuous entry of text without worrying
X about the right margin. A good value to use for ':W' is 10 columns
X less than the screen width (70 on 80 columns screens).
X
XAn invalid parameter value or name causes an error message.
X
X
X
X
X
X
X
X -16-
X
X
X
X
XTVX Reference Manual 11/27/85
X
X
X *** BACKUP LOG FILE FEATURE ***
X
X TVX has a backup log file feature. When the feature is enabled,
Xall commands entered in any given session are saved on a file called
X"BACKUP.LOG" on the currently logged drive on CP/M and the current
Xdirectory on MS-DOS and Unix systems. If for some reason you destroy
Xyour file during an editing session (like accidentally entering
X"100^K" instead of "100K"), you won't have to manually re-edit the
Xbackup version of the file. (By default, the log file is disabled.)
XThe 'B' invocation time switch will respectively disable or enable the
Xlog file feature.)
X
X The "BACKUP.LOG" (the CP/M convention will be used in this
Xdescription) file contains all the commands you entered in the last
Xsession. Most commands will appear in the log file as you entered
Xthem: R, U, D, etc. However, all control characters, backspace, and
Xthe atsign are encoded in the log file to make them appear as
Xprintable characters. The atsign '@' is used as an encoding
Xcharacter. So, for example, tabs appear as '@I', escapes as '@[',
XRETURNs as '@M', and so on. Control-A would appear as '@A'. The '@'
Xitself would appear as '@@'. Backspace appears as '@H'. These escape
Xsequences may be split across the end of a line in the log file. The
Xend of line marks in the log file are not part of the command stream
Xand are ignored.
X
X The procedure for using the "BACKUP.LOG" file to restore your
Xfile is as follows. When you realize you have made a mistake, enter
Xthe '^X' exit command. Copy "BACKUP.LOG" to a temporary working
Xfile. Now edit that temporary version of the log file to remove the
Xmistakes, which should be near the end of the file.
X
X Once the log file has been edited to remove the bad commands, you
Xshould then re-edit the original file (the one without the mistakes).
XThe latest version of the file will be the one with the mistakes, and
Xshould usually be killed. Start TVX and read in the file. Then enter
Xthe '@' command and supply the name of the "repaired" log file. All
Xthe commands in that log file will be applied to the original file.
XYou should be careful to start the '@' command when the cursor is at a
Xspecific place such as the beginning of the file. After the '@'
Xcommand is finished, your file will be in the same shape it was before
Xthe mistake.
X
X For example, suppose you are editing a file called "MYFILE0.TXT"
Xand that you accidentally kill 100 lines. When you realize your
Xmistake, you enter '^X' to exit. Then you should copy or rename the
XBACKUP.LOG file to a new temporary file - say FIX.LOG. The current
Xversion of the file you were editing is the bad file and should be
Xdeleted. On CP/M and MS-DOS versions, you would rename MYFILE0.BAK to
Xbe MYFILE0.TXT again. Then, edit FIX.LOG to remove the command that
Xkilled 100 lines and the quit command ("100 at K@X"). Exit again, and
Xre-edit MYFILE0.TXT. If you then enter the '@' command, and respond
Xwith FIX.LOG as the name of the command file, your file will be
Xbrought back to the state it was in right before the '100^K'.
X
X There are two cases that require special attention when using the
Xbackup log file. If you used a '^B' command during the session with
X
X
X -17-
X
X
SHAR_EOF
echo ALL DONE!
exit 0
More information about the Comp.sources.unix
mailing list