mirror of
https://github.com/PDP-10/its.git
synced 2026-01-26 04:02:06 +00:00
TECO documentation.
This commit is contained in:
@@ -6,6 +6,8 @@
|
||||
[colon commands](_info_/ddt.:cmnds)
|
||||
- MIDAS: [manual](info/midas.25)
|
||||
- DUMP: [manual](_info_/dump.info), [format](sysdoc/dump.format)
|
||||
- TECO: [primer](_teco_/teco.primer), [manual](info/tecman.20),
|
||||
[commands](_teco_/tecord.1132)
|
||||
|
||||
### DDT cheat sheet for Unix users
|
||||
|
||||
|
||||
344
doc/_teco_/teco.primer
Executable file
344
doc/_teco_/teco.primer
Executable file
@@ -0,0 +1,344 @@
|
||||
AN ANNOTATED OUTLINE OF TECO COMMANDS
|
||||
*************************************
|
||||
|
||||
|
||||
META-NOTATION
|
||||
=============
|
||||
|x Denotes the single character, control-x.
|
||||
| Used alone to denote alternation.
|
||||
m | n | arg Integer arguments.
|
||||
string String argument.
|
||||
cmd A command string.
|
||||
$ Denotes the character altmode unless mentioned otherwise.
|
||||
k Denotes either "m,n", or "n"; a text range of characters m through
|
||||
n, or n lines.
|
||||
file Denotes a file name pair, e.g., "FOO BAR".
|
||||
dir Denotes a device and directory specification, e.g., "DSK: USERS;".
|
||||
|
||||
|
||||
SPECIAL CHARACTERS
|
||||
==================
|
||||
|G Quit to TECO top-level; cancels partial command line.
|
||||
|Z Interrupt to DDT.
|
||||
altmode Terminates text argument; two successive altmodes terminate
|
||||
command string.
|
||||
rubout Deletes last character typed in.
|
||||
|
||||
QUOTE
|
||||
-----
|
||||
|Q Quote next character.
|
||||
|
||||
MODIFIERS
|
||||
---------
|
||||
: | ^ Prefix to certain commands, modifies them.
|
||||
|
||||
LOGICAL CONNECTIVES
|
||||
-------------------
|
||||
& Logical and, an arithmetic operator.
|
||||
# Inclusive or, an arithmetic operator.
|
||||
|A Exclusive or, an arithmetic operator.
|
||||
|
||||
ARITHMETIC
|
||||
----------
|
||||
0-9 Digits: xxxx is interpreted in base FS IBASE$ (10)
|
||||
xxxx. is interpreted in base FS I.BASE$ (8)
|
||||
+ Addition, an arithmetic operator.
|
||||
space Same as "+", except that space, by itself, is not a non-null arg.
|
||||
- Subtraction, an arithmetic operator.
|
||||
* Multiplication, an arithmetic operator(with no operator precedence).
|
||||
/ Division, an arithmetic operator(with no operator precedence).
|
||||
( | ) Parentheses, grouping in arithmetic expressions.
|
||||
|
||||
ARGUMENT SEPARATOR
|
||||
------------------
|
||||
, Separates numerical arguments.
|
||||
|
||||
|
||||
THE BUFFER
|
||||
==========
|
||||
. Value is number of char to left of pointer.
|
||||
Z Value is number of char in buffer*.
|
||||
H Equivalent to "B,Z", i.e., specifies whole buffer*.
|
||||
B Value is 0, i.e., beginning of buffer*.
|
||||
*Meaning is modified by use of virtual boundaries.
|
||||
|
||||
INSERTING
|
||||
---------
|
||||
Istring$ Insert string in buffer to left of pointer.
|
||||
^Ixstringx Insert string delimited by char x to left of pointer.
|
||||
nI Insert the char with ASCII code n.
|
||||
m,nI Insert m copies of the char with code n.
|
||||
tab Horizontal tab, self-inserting character.
|
||||
backspace Backspace, self-inserting character.
|
||||
n\ Insert printed representation of n (in base ..E).
|
||||
|^ Value = ASCII code of next char in cmd.
|
||||
FI Read one char from TTY and return its ASCII code as value.
|
||||
|
||||
ASCII
|
||||
-----
|
||||
mA Value = ASCII code of char m positions to right of ptr.
|
||||
0A => char to immediate left of ptr.
|
||||
|
||||
UPPER-CASE/LOWER-CASE
|
||||
---------------------
|
||||
F$ Controls case conversion on input/output ($ => dollar).
|
||||
kFC Convert text range k to lower-case.
|
||||
|
||||
MOVING AROUND
|
||||
-------------
|
||||
|
||||
ABSOLUTE POSITION
|
||||
-----------------
|
||||
mJ Position ptr to after m-th char in buffer.
|
||||
|
||||
RELATIVE CHARACTER POSITION
|
||||
---------------------------
|
||||
mR Move ptr left m char; R => 1R, -mR => mC.
|
||||
m:R Same as mR but returns -1(move OK) or 0(if move would cause an error).
|
||||
mC Move ptr right m char; C => 1C.
|
||||
m:C Returns value like m:R.
|
||||
\ Move ptr right over number, return number's value.
|
||||
|
||||
LINE POSITION
|
||||
-------------
|
||||
mL Move ptr to beginning of m-th line after current position;
|
||||
0L => beginning of current line.
|
||||
m,nL Same as m+n-.J, used by FW, etc.
|
||||
m:L Do mL, then backup over CR-LF; :l => end of current line.
|
||||
|
||||
WORD POSITION
|
||||
-------------
|
||||
nFW Returns ".,m", a buffer range where m is the position immediately after
|
||||
the n-th word(contiguous string of non-delimiters; see ..D, the delimiter
|
||||
dispatch table).
|
||||
-nFW Returns "m,.", the range to the left.
|
||||
n:FW Same as FW, but stops before the n-th word; i.e., n:FWL = nFWL-FWL.
|
||||
n^FW Same as FW, but finds LISP atoms, not words.
|
||||
nFWL Do an nFW, yielding ".,m", move to m (=m+.-.J).
|
||||
nFWR Same as nFWL.
|
||||
|
||||
LIST POSITION
|
||||
-------------
|
||||
nFL Returns ".,m", where m is the position immediately after the
|
||||
n-th list to the right.
|
||||
-nFL Returns "m,.", the range to the left.
|
||||
n^FL Same as nFL, but finds S-expressions, not lists.
|
||||
nFU Returns ".,m", where m is the position immediately after the n-th
|
||||
level up in parentheses to the right.
|
||||
-nFU Same as nFU, but returns "m,.", and works to the left.
|
||||
nFD Returns ".,m", where m is the position immediately after the n-th
|
||||
level down in parentheses to the right.
|
||||
-nFD Same as nFD, but returns "m,.", and works to the left.
|
||||
nFLL Does nFL, yielding ".,m", moves to m.
|
||||
nFLR Same as nFLL.
|
||||
|
||||
DELETING
|
||||
--------
|
||||
|
||||
ABSOLUTE POSITION
|
||||
-----------------
|
||||
m,nK Kill chars in the range m,n. Move ptr there.
|
||||
|
||||
CHARACTER
|
||||
---------
|
||||
nD Delete n chars to right of ptr.
|
||||
-nD Delete n chars to left of ptr.
|
||||
|
||||
LINE
|
||||
----
|
||||
nK Kill chars from . to position nL would have moved to.
|
||||
K => 1K, kill to beginning of next line.
|
||||
n:K Kill chars from . to position n:L would have moved to.
|
||||
:K => 1:K, kill to end of current line.
|
||||
|
||||
WORD
|
||||
----
|
||||
nFWK Do an nFW returning ".,m"; kill chars in this range.
|
||||
nFWD Same as nFWK.
|
||||
|
||||
LIST
|
||||
----
|
||||
nFLK Do an nFL returning ".,m"; kill chars in this range.
|
||||
nFLD Same as nFLK.
|
||||
|
||||
|
||||
TYPE-OUT
|
||||
========
|
||||
kT Type out text in range k (n lines or m,n chars).
|
||||
kV Display text in range k on CRT.
|
||||
FTstring$ Types its string argument.
|
||||
FVstring$ Displays its string argument.
|
||||
kVW Does kV, then waits for TTY input of one char whose ASCII code
|
||||
is returned as value.
|
||||
k= Types out k ("n" or "m,n") in current output radix(in ..E).
|
||||
|
||||
|
||||
SEARCH
|
||||
======
|
||||
nSstring$ Find n-th occurrence of string searching forward and position ptr after it.
|
||||
-nSstring$ Same as nSstring$, but search backward and position ptr before n-th string.
|
||||
n^Sxstringx Same as nSstring, where string is delimited by any char x.
|
||||
n:Sstring$ Same as nSstring$, but returns value = -n if successful, 0 if not.
|
||||
Special chars in string:
|
||||
|B Matches any delimiter(see ..D).
|
||||
|Nx Matches any char but x.
|
||||
|O Divides string into alternate patterns.
|
||||
|Qx Quotes x.
|
||||
|X Matches any char.
|
||||
nNstring$ Same as nSstring$, but does P if end of buffer is reached.
|
||||
n_string$ Same as nSstring$, but does Y if end of buffer is reached.
|
||||
kFBstring$ Same as Sstring$ in the search domain defined by k; for k = m,n where
|
||||
m>n, search backwards; ":" and "^" modifiers work.
|
||||
FK Returns value = - FS INSLEN$ = - length of last string inserted, or found
|
||||
by search or FW. FK < 0 except for backward search or FW.
|
||||
|
||||
|
||||
SORT
|
||||
====
|
||||
|Pcmd0$cmd1$cmd2$ ASCII sort command, with the following algorithm:
|
||||
Move ptr to start of buffer;
|
||||
..0 := cmd0; ..1 := cmd1; ..2 := cmd2;
|
||||
Iterate:
|
||||
Ptr is at start of next record;
|
||||
Cmd0 moves ptr to start of key;
|
||||
Cmd1 moves ptr to end of key;
|
||||
Cmd2 moves ptr to end of record;
|
||||
Do a sort of records based on keys;
|
||||
Notes: Dollar signs in the cmdi are replaced by altmodes.
|
||||
If FS ^P CASE$ .NEQ. 0, then |P ignores case.
|
||||
|
||||
|
||||
FILES
|
||||
=====
|
||||
|
||||
DIRECTORIES
|
||||
-----------
|
||||
ETfile$ Set default filenames to file.
|
||||
EL Type out listing of default directory.
|
||||
EYdir$ Same as EL, but with specified device and sname.
|
||||
EM Insert listing of default directory in buffer.
|
||||
EZdir$ Same as EM, but with specified device and sname.
|
||||
|
||||
OPEN READ
|
||||
---------
|
||||
ERfile$ Opens file for input.
|
||||
EPfile$ Does ERfile$, then bigprints filename twice on device open for writing.
|
||||
|
||||
OPEN WRITE
|
||||
----------
|
||||
EI Open a file "_TECO_ OUTPUT" for writing on default device and sname.
|
||||
0EI Same as EI, but sets default device to DSK:.
|
||||
:EI Same as EI, but uses current filename defaults rather than "_TECO_ OUTPUT".
|
||||
EWdir$ Same as EI, but with specified device and sname.
|
||||
:EW dir file$ Same as EW, but also with specified filenames.
|
||||
|
||||
INPUT
|
||||
-----
|
||||
Y Kills the buffer; inserts one page from current input file into buffer.
|
||||
^Y Kills the buffer; yanks the entire input file into buffer.
|
||||
A Append next page of input file to buffer (no arg allowed).
|
||||
n:A Append n lines or up to page boundary of input file to buffer.
|
||||
^A Append all of input file, and close file.
|
||||
nP Output buffer and "|L", kill buffer, read one page from input file;
|
||||
all done n times.
|
||||
|
||||
OUTPUT
|
||||
------
|
||||
nP See description above under input.
|
||||
m,nP Output specified range of buffer, but do not clear it or input.
|
||||
nPW Output buffer and "|L", but do not clear it or input; done n times.
|
||||
EEfile$ Same as "infinityP EFfile$ EC".
|
||||
|
||||
CLOSE
|
||||
-----
|
||||
EFfile$ Close the output file and change its name to "file".
|
||||
EC Close the input file.
|
||||
|
||||
DELETE
|
||||
------
|
||||
EDfile$ Delete the file.
|
||||
|
||||
COPY
|
||||
----
|
||||
E_old$new$ Make a copy of file "old" and name it "new".
|
||||
|
||||
LINK
|
||||
----
|
||||
EQfrom$to$ Create a link named "from" pointing to the file "to".
|
||||
|
||||
RENAME
|
||||
------
|
||||
ENold$new$ Rename the file "old" to have name "new".
|
||||
|
||||
|
||||
Q-REGISTERS
|
||||
===========
|
||||
:Iqstring$ Insert string into Q-reg q, replacing prior contents.
|
||||
n:Iq Insert char with ASCII code n into Q-reg q, replacing prior contents.
|
||||
^:Iqxstringx Same as :Iqstring$, where string is delimited by any char x.
|
||||
m,n:Iq Same as n:Iq, but inserts m copies of char.
|
||||
nUq Inserts number n in Q-reg q; returns no value.
|
||||
m,nUq Inserts number n in Q-reg q; returns m.
|
||||
kXq Inserts text range k into Q-reg q, replacing prior contents.
|
||||
k^Xq Same as kXq, but appends text to q's contents.
|
||||
kFXq Same as X and K combined, i.e., "kXq kK".
|
||||
nFWXq Combines nFW with Xq.
|
||||
nFLXq Combines nFL with Xq.
|
||||
Gq Inserts text (or decimal representation of number) from Q-reg q into buffer.
|
||||
FS INSLEN$ is set to length of inserted string.
|
||||
%q Increments numeric contents of Q-reg q and returns result.
|
||||
[q Push text or number from Q-reg q onto Q-reg push-down list.
|
||||
]q Pop text or number from Q-reg push-down list into Q-reg q.
|
||||
FQq Value = number of char in Q-reg q or -1 if a number.
|
||||
|
||||
|
||||
MACROS
|
||||
======
|
||||
|
||||
EXECUTE
|
||||
-------
|
||||
m,nMqstring$ Execute string or buffer contents of Q-reg q as a TECO command. If q
|
||||
contains a number, execute the corresponding |R-mode character.
|
||||
|
||||
ARGUMENTS
|
||||
---------
|
||||
|X Value is m, first arg to m,nMq. Only used inside macros.
|
||||
|Y Value is n, second arg to m,nMq (or only arg to nMq).
|
||||
F|X Value is all args to kMq.
|
||||
F|Y Value is number of args to kMq.
|
||||
|]|X Reads and returns string arg which follows kMq.
|
||||
|
||||
ITERATION
|
||||
---------
|
||||
n< cmd > Command is executed n times, or indefinitely if n is null.
|
||||
n; Does nothing if n<0, otherwise passes control to char after next ">",
|
||||
i.e., terminates iteration. Null n => use value of last search.
|
||||
|
||||
TEST AND BRANCH
|
||||
---------------
|
||||
arg"x then-cmd '"# else-cmd '
|
||||
Conditional which checks arg according to condition x; discards arg;
|
||||
executes then-cmd if condition was true, else-cmd if false.
|
||||
arg"x then-cmd '
|
||||
Conditional without else-cmd.
|
||||
argF"x Same as arg"x, but passes first arg to then-cmd or else-cmd.
|
||||
Note: The conditions x are:
|
||||
B Arg is ASCII code for a delimiter(see ..D).
|
||||
C Arg is ASCII code for a non-delimiter.
|
||||
E Arg = 0.
|
||||
G Arg > 0.
|
||||
L Arg < 0.
|
||||
N Arg .NEQ. 0.
|
||||
|
||||
TAG
|
||||
---
|
||||
!label! Defines label, or brackets comments.
|
||||
|
||||
GOTO
|
||||
----
|
||||
Olabel$ Sends command execution to character after !label!.
|
||||
|
||||
|
||||
Compiled by: Mike Wirth (MCW@MIT-MC)
|
||||
Oct. 29, 1976
|
||||
|
||||
5253
doc/_teco_/tecord.1132
Executable file
5253
doc/_teco_/tecord.1132
Executable file
File diff suppressed because it is too large
Load Diff
5310
doc/info/tecman.20
Executable file
5310
doc/info/tecman.20
Executable file
File diff suppressed because it is too large
Load Diff
Reference in New Issue
Block a user