TECO — VMS 5.5
Additional information available:
Commands
Most characters that can be typed at your keyboard are TECO commands. Use them with care. All TECO commands are terminated with the <ESC> character, which will echo as a "$" at your terminal. To execute a command (or string of commands), type a second <ESC> after the last command in the string. No TECO command will be executed until two consecutive <ESC>s are typed. <ESC> may be labeled <ALT-MODE> or <PREFIX> on your terminal.
Additional information available:
J
The "J" command is used to move the text pointer within
the editing buffer. Common forms of the command are:
BJ Point to the beginning of the buffer
ZJ Point to the end of the buffer
L
The "L" command is used to move the text pointer from
one line to another. Common forms of the command are:
L Move to the beginning of the next line
0L Move to the beginning of the current line
5l Move to the fifth line past the current line
-1L Move back to the previous line
C
The "C" command is used to move the pointer past a
specified number of characters. Common forms of the
"C" command are:
C Advance the pointer to the next character
3C Move forward by three characters
-1C Move back to the previous character
T
The "T" command is used to type text from the editing
buffer. Common forms of the "T" command are:
T Type text from the pointer to the end of the line
0T Type text from the beginning of the current
line to the pointer
5T Print the next five lines of text, starting
from the pointer
HT Print the entire contents of the editing buffer
I
The "I" command is used to insert text, starting at the
current pointer. The command is of the form:
Itext-to-insert<ESC>
For example, to insert the text "This is a test", type
IThis is a test$
(Note that the <ESC> key is echoed as a "$" sign at
your terminal.)
K
The "K" command is used to delete lines of text from the
editing buffer. Common forms of the command are:
K Delete the text from the pointer through the
end of the current line
0K Delete the text from the beginning of the
current line to the pointer
5K Delete the next five lines of text, starting
from the pointer
HK delete all of the text in the editing buffer
D
The "D" command is used to delete characters from the
editing buffer. Common forms of the command are:
D Delete the character which follows the pointer
5D Delete the next five characters, starting
with the character following the pointer
-1D Delete the character which immediately precedes
the pointer
P
The "P" command is used to write the text in the editing
buffer to the output file and read the next page of text
from the input file to the editing buffer. Common forms
of the command are:
P Write the current buffer to the output file
and get the next page
5P Write the current buffer, plus the next four
pages from the input file, to the output file,
then read the next page from the input file
into the editing buffer
A
The "A" command is used to append the next page of text
from the input file to the end of the current editing
buffer. The command is of the form:
A Read the next page of text from the input file
and append it to the end of the current text
buffer
S
The "S" command is used to locate a specified string of
text in the current buffer. If the text is found, the
pointer is positioned after the specified text. If the
text is not found, an error message is printed and the
pointer is set to the beginning of the buffer.
The "S" command is of the form:
Stext-to-locate<ESC>
For example, to find the text "find me", use the command
Sfind me$
(Note that the <ESC> key echoes as "$" at your terminal.)
N
The "N" command is the same as the "S" command, except that
the search continues across page boundaries, if necessary,
until the specified text, or the end of the file, is
encountered.
The "N" command is of the form:
Ntext-to-locate<ESC>
For example, to find the text "find me", which may appear
on a later page in the file, use the command
Nfind me$
(Note the the <ESC> key echoes as "$" at your terminal.)
FS
The "FS" command is used to replace one string with
another string. If the specified text is found, it is
deleted and replaced with the new text, and the pointer
is positioned at the end of the specified text. If the
specified text is not found, the pointer is positioned
at the beginning of the buffer.
The "FS" command is of the form:
FSold-text<ESC>new-text<ESC>
For example, to replace the next occurrence of "exumple"
with "example", use the command
FSexumple$example$
(Note that the <ESC> key echoes as "$" at your terminal.)
EX
The "EX" command is used to write the current buffer to
the output file, copy the remainder of the input file to
the output file, and exit from TECO. For example,
EX$$
(Note that the <ESC> key echoes as "$" at your terminal,
and that you must type the <ESC> key twice to cause the
command to be executed.)
Errors
All TECO error messages are of the form ?XXX Short text message and abort TECO's command execution. Typing a question mark (?) immediately after TECO's input prompt will print the erring command string up to and including the error point. Typing a slash (/) immediately after TECO's input prompt will print a longer explanation of the error.
Additional information available:
BNICPQDTBERRFNFIAAIEC
IFCIIAILLILNIPAIQCIQN
IRAISAISSIUCMEMMRPNAB
NACNAENAPNAQNASNAUNFI
NFONYAOFOPDOPOPSNISRH
STLUTCUTMXABYCA
BNI
?BNI > not in iteration
There is a close angle bracket not matched by an
open angle bracket somewhere to its left. (Note:
an iteration in a macro stored in a Q-register must
be complete within the Q-register.)
CPQ
?CPQ Can't pop Q-reg
A ] command has been executed and there is nothing
saved on the Q-register push down list.
DTB
?DTB Delete too big
An nD command has been attempted which is not
contained within the current page.
ERR
?ERR ID, text
Some VAX/VMS system service call failed. The error
message ID and text explain the error.
FNF
?FNF File not found "filespec"
The requested input file could not be located. If
this occurred within a macro the colon modified ER
or EB command may be necessary.
IAA
?IAA Illegal A arg
The argument preceding a :A command is negative or
0.
IEC
?IEC Illegal E character
An invalid E command has been executed. The E
character must be followed by an alphabetic to form
a legal E command (e.g., ER or EX).
IFC
?IFC Illegal F character
An invalid F command has been executed.
IIA
?IIA Illegal insert arg
A command of the form "nItext$" was attempted.
This combination of character and text insertion is
illegal.
ILL
?ILL Illegal command
An attempt has been made to execute an invalid TECO
command.
ILN
?ILN Illegal number
An 8 or 9 has been entered when the radix of TECO
is set to octal.
IPA
?IPA Illegal P arg
The argument preceding a P or PW command is
negative or 0.
IQC
?IQC Illegal " character
One of the valid " commands did not follow the ".
IQN
?IQN Illegal Q-reg name
An illegal Q-register name was specified in one of
the Q-register commands.
IRA
?IRA Illegal radix arg
The argument to a ^R radix command must be 8, 10,
or 16.
ISA
?ISA Illegal search arg
The argument preceding a search command is 0. This
argument must not be 0.
ISS
?ISS Illegal search string
One of the search string special characters (^Q,
^R, etc.) would have modified the search string
delimiter (usually ESCAPE).
IUC
?IUC Illegal ^ character
The character following an ^ must have ASCII value
between 100 and 137 inclusive or between 141 and
172 inclusive.
MEM
?MEM Memory overflow
Insufficient memory available to complete the
current command. Make sure the Q-register area
does not contain much unnecessary text. Breaking
up the text area into multiple pages might be
useful.
MRP
?MRP Missing )
There is a right parenthesis that is not matched by
a corresponding left parenthesis.
NAB
?NAB No arg before ^_
The ^_ command must be preceded by either a
specific numeric argument or a command that returns
a numeric value.
NAC
?NAC No arg before ,
A command has been executed in which a , is not
preceded by a numeric argument.
NAE
?NAE No arg before =
The =, ==, or === command must be preceded by
either a specific numeric argument or a command
that returns a numeric value.
NAP
?NAP No arg before )
A ) parenthesis has been encountered and is not
properly preceded by a specific numeric argument or
a command that returns a numeric value.
NAQ
?NAQ No arg before "
The " commands must be preceded by a single numeric
argument on which the decision to execute the
following commands or skip to the matching ' is
based.
NAS
?NAS No arg before ;
The ; command must be preceded by a single numeric
argument on which the decision to execute the
following commands or skip to the matching > is
based.
NAU
?NAU No arg before U
The U command must be preceded by either a specific
numeric argument or a command that returns a
numeric value.
NFI
?NFI No file for input
Before issuing an input command, such as Y, it is
necessary to open an input file by use of a command
such as ER or EB.
NFO
?NFO No file for output
Before issuing an output command such as N search
or P it is necessary to open an output file by use
of a command such as EW or EB.
NYA
?NYA Numeric arg with Y
The Y command must not be preceded by either a
numeric argument or a command that returns a
numeric value.
OFO
?OFO Output file already open "filespec"
A command has been executed which tried to create
an output file, but an output file currently is
open. It is typically appropriate to use the EC or
EK command as the situation calls for to close the
output file.
PDO
?PDO Push-down list overflow
The command string has become too complex.
Simplify it.
POP
?POP Pointer off page
A J, C or R command has been executed which
attempted to move the pointer off the page. The
result of executing one of these commands must
leave the pointer between 0 and Z, inclusive. The
characters referenced by a D or m,nX command must
also be within the buffer boundary.
SNI
?SNI ; not in iteration
A ; command has been executed outside of an open
iteration bracket. This command may only be
executed within iteration brackets.
SRH
?SRH Search failure "text"
A search command not preceded by a colon modifier
and not within an iteration has failed to find the
specified "text". After an S search fails the
pointer is left at the beginning of the buffer.
After an N or _ search fails the last page of the
input file has been input and, in the case of N,
output, and the buffer is cleared. In the case of
an N search it is usually necessary to close the
output file and reopen it for continued editing.
STL
?STL String too long
A search or file name string is too long. This is
most likely the result of a missing ESCAPE after
the string.
UTC
?UTC Unterminated command
This is a general error which is usually caused by
an unterminated insert, search, or filespec
argument, an unterminated ^A message, an
unterminated tag or comment (i.e., unterminated !
construct), or a missing ' character which closes a
conditional execution command.
UTM
?UTM Unterminated macro
This error is the same as the ?UTC error except
that the unterminated command was executing from a
Q-register (i.e., it was a macro). (Note: An
entire command sequence stored in a Q-register must
be complete within the Q-register.)
XAB
?XAB Execution aborted
Execution of TECO was aborted. This is usually due
to the typing of CTRL/C.
YCA
?YCA Y command aborted
An attempt has been made to execute an Y or _
search command with an output file open, that would
cause text in the text buffer to be erased without
outputting it to the output file. The ED command
controls this check.
Flags
TECO has a number of internal mode flags which can be
set and/or read to modify the standard TECO environment.
To read the value of a flag, use
Fx
where "F" is the name of the flag and "x" is a command
which accepts a numeric argument.
To set the value of a flag, use
xF
where "F" is the name of a flag and "x" is a number or
a command which returns a numeric value.
Additional information available:
ED
Value Meaning if Set
1 ^ (up-arrow) in search arguments is a literal ^
(If 0, ^ in search arguments means that the next
character should be interpreted as a control character)
2 Disables Yank protection
(If 0, the Y, N, and _ commands are aborted if they
would result in data being lost)
4 Disallow memory expansion when reading in a text page
(If 0, memory is expanded, if needed, so that the whole
text page fits in the text buffer)
8 Unimplemented by TECO under VAX/VMS...
16 Leaves buffer pointer unchanged on search failures
(If 0, search failures move the buffer pointer to the
beginning of the text buffer)
32 Enable immediate mode commands
64 Only move the buffer pointer by one on iterative
search failures
(If 0, the buffer pointer moves by the length of
the search string on iterative search failures)
128 Disable scrolling's automatic text buffer display
prior to TECO's prompt
(If 0, the text buffer display is automatically
updated just prior to TECO's prompt when scrolling
is enabled)
Multiple values may be combined in the ED flag
EH
The EH flag controls TECO's action when an error is encountered.
Value Meaning if Set
0 Same as 2
1 Only the 3-character error code is printed
2 The 3-character error code and a short message are printed
3 The 3-character error code, a short message, and a
more detailed explanation of the error are printed
4 The command(s) which lead to the error are printed,
simulating the effect of the "?" command
The 4 may be combined with either 0, 1, 2, or 3 in the EH flag
ET
Value Meaning if set
1 Type-out is in pass-all mode
2 Terminal is a scope
4 Terminal has lower-case; accept lower-case
8 ^T reads with no echo
16 Cancels ^O on output
32 ^T reads with no wait (^T returns -1 if no input)
64 Unimplemented by TECO under VAX/VMS...
128 TECO aborts if an error is encountered
256 Output is truncated to the terminal's width
512 "W" commands are supported for this scope terminal
1024 Unimplemented by TECO under VAX/VMS...
2048 Unimplemented by TECO under VAX/VMS...
4096 Terminal is an 8-bit terminal
8192 Accept accent grave (`) as ESCape for command input
32768 Traps CTRL/C's (reset if CTRL/C is typed)
Multiple values may be combined in the ET flag
EU
Value Meaning
0 Flags lower case characters on output with "T"
or "V" commands
>0 Flags upper case characters on output
<0 No case flagging on output
^X
Value Meaning
0 Either case matches in searches
<>0 Exact case matches are required in searches
Messages
TECO produces one informational and two warning messages. These messages do not abort the command and execution continues.
Additional information available:
%Search fail in iter%Exceeding disk quota[nnn pages]
%Search fail in iter
Indicates that a search command has failed inside
iteration brackets. A ; (semi-colon) command
immediately following the search command can
typically be used to suppress this message. After
printing the message, the iteration is terminated,
i.e., TECO simulates a 0; command.
%Exceeding disk quota
Indicates that the current output operation has
exceeded your disk quota. You may continue to do
output up to your quota overdraft limit. It is
suggested that you exit from the current edit and
purge old file versions to free up some disk space.
[nnn pages]
This informational message tells you the size of
TECO's combined text buffer and Q-register storage
in pages.