Trailing-Edge
-
PDP-10 Archives
-
custsupcuspmar86_bb-x130b-sb
-
sos.man
There are 3 other files named sos.man in the archive. Click here to see a list.
SOS MANUAL
Version 23E(77)
SOS is the Son Of Stopgap text editor. This file briefly describes each
of the SOS commands and its use. For help on a particular command, type
"H,<command name>" to SOS. For example, information on all alter mode
commands is available by typing "H,A" to SOS. Help for the various SOS
switches can be had by typing "H,/". A highly abbreviated command list
appears below.
A (Alter) Intraline editing M (Mark) Insert page mark
B (Begin) Go to top of file N (Number) Re-number lines
BP(Begin Page) Go to top of page NA(Number And open) Open a hole
C (Copy) Copy text NF(Number file) Renumber file
CC(Co-Copy) Co-edit copy NP(number page) Renumber page
CT(Co-Transfer) Co-edit text move O (Output) Output text to a file
CX(Co-edit) Begin/toggle co-edit P (Print) Print lines on TTY
D (Delete) Delete text R (Replace) Delete and insert
E (Exit) Terminate editing S (Substitute) Search and replace
F (Find) Find a string T (Transfer) Move text
G (Go) Exit and run program VL(inVert Lower) Convert to LC
H (Help) Type help messages VU(inVert Upper) Convert to UC
I (Insert) Insert new text VV(inVert inVert) Toggle case
J (Join) Join lines W (World) Save the world (file)
JC(Justify Centered) Center text X (eXtend) Append to end of line
JL(Justify Left) Flush text left ; (comment) Rest of line ignored
JR(Justify Right) Flush text right @ (indirect) Execute from a file
JU(Justify) Fully justify text = (give) Type parameter values
JW(Justify Word) Word justify text / (set) Set values
K (Kill) Delete page marks . (move) Move line pointer
L (List) List lines to LPT:
Throughout this file, the following terms apply.
Term Meaning
n a positive integer.
+n a positive integer.
-n a negative integer.
range is an SOS line range specification. It is made up of a
starting and an ending point separated by a colon. A
line number specification is given on each side of the
colon. There are several special elements that may be
used in line number specifications in place of or in
addition to an actual line number. These are:
# is the first line of the last line range
specification given.
% is the last line of the last insert command
given.
. is the current line number if used to the left
of a slash, or the current page if used to the
right of a slash. This may be omitted on most
commands (except "R" and "D" in NOVICE mode).
Thus, "A.<CR>" and "A<CR>" are equivalent.
^ is the first line on the current page if used to
the left of a slash or the first page in the
current file if used to the right of a slash.
* is the last line on the current page if used to
the left of a slash or the last page in the
current file if used to the right of a slash.
! may be suffixed to a line number or one of the
above characters and followed by a digit giving
the number of lines. Thus, ".!5" means five
lines starting at the current line.
BF is the beginning of file (same as ^/^).
EF is the end of file (same as */*) when used as
the second argument to the range specifier, or
is the entire file (same as ^/^:*/*) when used
as a range specifier by itself.
Arithmetic expressions using plus and minus may also be
included in a line number specification. Thus, ".-5"
means five lines before the current line, ".+4" means 4
lines beyond the current line, and ".-2!4" means start 2
lines before the current line and go for 4 lines.
In addition, a line number specification may be suffixed
with a slash and a page number specification. Page
numbers can be constructed in a manner similar to line
numbers. As an example, "^!5/47" means five lines
starting at the first line on page 47. If the page
specification is omitted, the current page is assumed.
Thus an example of a line range specification would be
"10/1:*/999", meaning line 10 on page 1 through the last
line on page 999.
A search string specified between ALTmodes may be
specified in place of a line number specification.
Commands using this must be terminated with 1 <CR> to
end the search string, and 1 additional <CR> to end the
command instead of the usual 1 <CR>. Thus,
"$foo$<CR><CR>" means the next line containing the
string "foo".
$ is the symbol for the ESCape or ALTmode key. If this
character is typed in response to the SOS "*", the line
preceding the current line will be printed.
<CR> is the symbol for the Carriage Return key.
<LF> is the symbol for the Line Feed key. If <LF> is typed
in response to the SOS "*", the line following the
current line will be printed.
<STRING> is used to represent a valid search string. A search
string consists of up to 20 character strings separated
by <CR> and terminated by an ALTmode. The search string
may contain certain special characters to control the
search. The S(ubstitute) command accepts two such
arguments - the first is the string to look for, while
the second is a string to replace the first one. These
special characters are preceeded by a control-E (^E). A
detailed explanation of the pattern match characters can
be found under ^E.
^^ is also used as a flag in this file for the SOS "H,x"
command. ^^ may be encountered if the monitor command
.HELP SOS
is used. It is not part of the text and should be
ignored.
A/NEWALTER
Purpose: The "A" command causes SOS to enter intraline edit mode.
Once in this mode, any of the intraline edit commands
are valid. Unless otherwise noted, an intraline edit
command may be preceded by an integer and/or a sign to
modify its function. In general, a positive integer
preceding a command means "the next <integer>
occurrences", and a negative integer means "the previous
<integer> occurrences". If no integer precedes a
command, 1 is assumed. At all times, the cursor is
positioned between 2 characters or between a character
and one end of the line. The cursor will be visually
positioned on top of the character it logically
precedes.
A "word" in the following discussion means any number of
consecutive letters, numbers, periods, percent signs,
dollar signs, and any surrounding tabs or blanks.
Examples: Cx Change next character to "x". 4Cabcd
Change the next 4 characters to "abcd". -Cz Change the
previous character to "z". -2Cgo Change the previous
two characters to "go".
There are two classes of alter commands, immediate
action, and those that require a unit and a mode. These
two types are discussed below.
Syntax: A range
Alter the line or lines specified by "range".
A list of immediate action commands follows.
Command Function
B Insert a blank at the current cursor position.
C Change the next character to be whatever is typed after
the "C".
D Delete the character under the cursor.
E Exit alter mode on the current line; do not print the
rest of line. All changes made before "E" is typed
become permanent.
I Enter insert mode. Allows an arbitrary string to be
entered starting at the current cursor position and
ending with an ALTmode or ESCape.
J Join the next line to the end of the current line and
position the cursor at the start of the joined text.
N Print the rest of the current line, make the changes
indicated, and enter alter mode on the next line.
O Insert one character in the text. "nOc" will insert "n"
occurrences of "c" starting at the current cursor
position. "-nOc" is illegal.
P Print the rest of the line, and then reprint the line
number and the line up to the current cursor position.
Q Quit alter mode. None of the changes made to the line
are retained.
T Insert a tab at the current cursor position.
X Extend. Move to the end of the current line and enter
insert mode. T may be terminated by typing ALTmode or
ESCape. If a <CR> is typed while in eXtend mode, a new
line will be started if use of the global line increment
will allow room for a new line. If there is not enough
room for a new line, <CR> returns you to SOS command
mode. The <LF> character may be used to insert new
lines and have SOS compute a new line number that will
fit. The eXtend command may be prefixed by a count
which will be interpreted as a suggested line increment.
' Insert the control equivalent of the character typed
after the apostrophe. For example, "'Z" inserts a
Control-Z in the line.
+ Insert a copy of the character preceding the current
cursor position. "n+" inserts "n" copies of whatever
character precedes the current cursor position. "-n+"
is illegal.
/ Transpose the next 2 characters.
; Break the line at the current cursor position and assign
a new line number to the rest of the line. If there is
no room for a new line, "%ORDER" is printed and the ";"
is ignored.
<CR> Type the rest of the line and end the alter, making all
indicated changes to the line.
<LF> If in insert mode, break the line at the current
position and start a new line with whatever is left. If
no room remains for another line number, "%ORDER" is
printed, and the <LF> is ignored. If not in insert
mode, <LF> is treated as <CR>.
^R (Control-R) Retype the current line up through the current cursor
position.
RUBOUT Back up the cursor 1 character if not in insert mode.
If in insert mode, it erases the previous character.
^U (Control-U) Cancel all alterations on the current line and start
over.
^W (Control-W) Backspace one word.
The other class of alter commands work with a function
to preform, and a unit (range) to perform it to. The
general format of these commands is <optional signed
repeat count number> <function> <unit>.
The functions are:
K Delete characters
R Replace characters (delete and enter insert mode)
V InVert case of characters
^ Upper case characters
\ Lower case characters
<null> Move the cursor position
The units are:
<space> Single character
F<string> Up to <string>
G<string> Up to and including <string>
L Entire line
M<string> Only to <string>
S<char> Up to <char>
W Word
Z To end of line
For example, KW would delete a word, -3KW would delete
the preceeding three words, KSx would delete up to
character "x", RW would replace a word, W (null
function) would skip a word, RZ would replace to end of
line, etc.
A/OLDALTER
Purpose: The "A" command causes SOS to enter intraline edit mode.
Once in this mode, any of the intraline edit commands
are valid. Unless otherwise noted, an intraline edit
command may be preceded by an integer and/or a sign to
modify its function. In general, a positive integer
preceding a command means "the next <integer>
occurrences", and a negative integer means "the previous
<integer> occurrences". If no integer precedes a
command, 1 is assumed. At all times, the cursor is
positioned between 2 characters or between a character
and one end of the line. The cursor will be visually
positioned on top of the character it logically
precedes.
A "word" in the following discussion means any number of
consecutive letters, numbers, periods, percent signs,
dollar signs, and any surrounding tabs or blanks.
Examples: Cx Change next character to "x". 4Cabcd
Change the next 4 characters to "abcd". -Cz Change the
previous character to "z". -2Cgo Change the previous
two characters to "go".
The table below gives some of the more frequently used
alter mode characters and their functions. The unit on
which the character operates is given at the top of each
column, and the effect of a given character is given
down the left side. Thus "X" will replace the next word
by deleting it and entering insert mode, allowing the
user to type the replacement word.
|Character| Word | Line |Character| String |
| | | | Search | |
--------+---------+---------+---------+---------+---------+
Move | Space | W | <TAB> | S | F |
cursor | Rubout | | | | G |
--------+---------+---------+---------+---------+---------+
Delete | D | Z | : | K | Y |
| | | | | |
--------+---------+---------+---------+---------+---------+
Replace | C | X | H | ! | M |
| R | | | | |
--------+---------+---------+---------+---------+---------+
Change | ^ | V | # | " | |
case | | | | | |
--------+---------+---------+---------+---------+---------+
Syntax: A range
Alter the line or lines specified by "range".
A list of these commands follows.
Command Function
B Insert a blank at the current cursor position.
C Change the next character to be whatever is typed after
the "C".
D Delete the character under the cursor.
E Exit alter mode on the current line; do not print the
rest of line. All changes made before "E" is typed
become permanent.
F Find a string. Type "F<string to look for>$". This
will look for a string and place the cursor before the
start of the string if successful; if not successful
the bell is sounded at the user's terminal. RUBOUT and
Control-U may be used to erase incorrectly typed
characters when entering the search string. The special
search control characters used with the F(ind) and
S(ubstitute) commands are not allowed in alter mode
search strings.
G Identical to "F", except the cursor is positioned at the
end of the string.
H Hack (delete) the rest of the line and enter insert
mode.
I Enter insert mode. Allows an arbitrary string to be
entered starting at the current cursor position and
ending with an ALTmode or ESCape.
J Join the next line to the end of the current line and
position the cursor at the start of the joined text.
K Search for the single character typed after "K",
deleting all characters up to, but not including, the
specified character. If the character is not found,
nothing is deleted, the cursor is not moved, and the
bell is sounded at the user's terminal.
L List rest of line, reprint the line number and place
cursor at start of line.
M Similar to "F", but deletes the string and enters insert
mode.
N Print the rest of the current line, make the changes
indicated, and enter alter mode on the next line.
O Insert one character in the text. "nOc" will insert "n"
occurrences of "c" starting at the current cursor
position. "-nOc" is illegal.
P Print the rest of the line, and then reprint the line
number and the line up to the current cursor position.
Q Quit alter mode. None of the changes made to the line
are retained.
R Replace. Deletes the specified number of characters and
enters insert mode.
S Search for the character typed after the "S" and place
the cursor before it.
T Extend. Move to the end of the current line and enter
insert mode. T may be terminated by typing ALTmode or
ESCape. If a <CR> is typed while in eXtend mode, a new
line will be started if use of the global line increment
will allow room for a new line. If there is not enough
room for a new line, <CR> returns you to SOS command
mode. The <LF> character may be used to insert new
lines and have SOS compute a new line number that will
fit. The eXtend command may be prefixed by a count
which will be interpreted as a suggested line increment.
V Invert the case of all letters in the next word.
W Skip word. Places the cursor at the start of the next
word when moving right, or at the start of the last word
skipped when moving left.
X Delete a word and enter insert mode.
Y Similar to "F", but deletes the string.
Z Delete a word.
! Similar to "K", but enters insert mode after deleting
all text up to, but not including, the character typed
after the "!".
" Invert the case of all characters up to the character
typed after the quote.
' Insert the control equivalent of the character typed
after the apostrophe. For example, "'Z" inserts a
Control-Z in the line.
# InVert the case of all letters from current cursor
position to the end of line.
+ Insert a copy of the character preceding the current
cursor position. "n+" inserts "n" copies of whatever
character precedes the current cursor position. "-n+"
is illegal.
/ Transpose the next 2 characters.
: Delete the rest of the line.
; Break the line at the current cursor position and assign
a new line number to the rest of the line. If there is
no room for a new line, "%ORDER" is printed and the ";"
is ignored.
\ Transpose the previous 2 characters.
^ Invert the case of the next character, if it is a
letter.
<CR> Type the rest of the line and end the alter, making all
indicated changes to the line.
<LF> If in insert mode, break the line at the current
position and start a new line with whatever is left. If
no room remains for another line number, "%ORDER" is
printed, and the <LF> is ignored. If not in insert
mode, <LF> is treated as <CR>.
^R (Control-R) Retype the current line up through the current cursor
position.
RUBOUT Back up the cursor 1 character if not in insert mode.
If in insert mode, it erases the previous character.
SPACE Advance the cursor 1 character if not in insert mode;
inserts a blank in the text if used in insert mode.
TAB (Control-I) Move the cursor to the end of the current line.
^U (Control-U) Cancel all alterations on the current line and start
over.
^W (Control-W) Same as -W.
B
Purpose: The B command causes SOS to establish the current
position as the line preceding the first line in the
file. It is identical to the BF command.
Syntax: B
Position the line pointer to lie prior to the first
line in the file.
BF
Purpose: The BF command causes SOS to establish the current
position as the line preceding the first line in the
file. It is identical to the B command.
Syntax: BF
Position the line pointer to lie prior to the first
line in the file.
BP
Purpose: The BP command causes SOS to establish the current
position as the line preceding the first line on the
current page.
Syntax: BP
Position the line pointer to lie prior to the first
line on the current page.
C
Purpose: Allows copying of lines from within the current file or
from another file.
Syntax: C n,range,inc1,inc2
Copy the lines given by "range" after line "n" with
an increment of "inc1" to be used before a page mark,
and "inc2" to be used after a page mark. "inc1" and
"inc2" are optional.
C n=file,range,inc1,inc2
Copy the lines given by "range" from "file" into the
file being edited after line "n". "inc1" and "inc2"
have the same meanings given above.
C n=file
Enter search mode on "file". User can use any command
that does not alter "file" to find the lines to be
copied. When the lines are located, type "E" and SOS
will print "Source Lines=". The user then types a range
of lines to be copied into the file being edited.
"Range" may be suffixed by "inc1" and "inc2" as above.
If "EQ" is used to exit the file, SOS will assume no
lines are to be copied and will simply return to normal
edit mode.
C n=file/S
Same as "C n=file".
CC
Purpose: Allows copying of lines from the second file of a
co-edit pair into the first member of the pair.
Syntax: CC n,range,inc1,inc2
Co-Copy the lines given by "range" from file 2 into
file 1 placing them after line "n" with an increment of
"inc1" to be used before a page mark, and "inc2" to be
used after a page mark. "inc1" and "inc2" are optional.
CT
Purpose: Allows transferring of lines from the second file of a
co-edit pair into the first member of the pair.
Syntax: CT n,range,inc1,inc2
Co-transfer the lines given by "range" from file 2
into file 1 placing them after line "n" with an
increment of "inc1" to be used before a page mark, and
"inc2" to be used after a page mark. "inc1" and "inc2"
are optional.
CX
Purpose: Establish the second file of a co-edit pair or switch
between the files of a co-edit pair.
Syntax: CX:file
Suspend edit on current file and enter co-edit mode
on the file given by "file". Type any of the "E"
commands to the second file of a co-edit pair to return
to normal edit mode.
CX:file/R
Same as CX:file, but file is opened for readonly.
CX
Toggle between the two co-edit files.
D
Purpose: Remove lines from a file.
Syntax: D range
Delete the line or lines specified by "range".
D range,Y
Delete the lines specified by "range" without asking for
confirmation on page deletion. The ",Y" is assumed if
EXPERT mode is in effect.
E/NEWCOMMAND
Purpose: Exit the editor either with or without saving the edit
and optionally start editing another file.
Syntax: E
Exit and update file.
E:file
Same as "E", but the updated file is written to "file".
If ":file" is used, it must be the last item in the
list.
ER:file
Same as "E", but begin SOSing "file" when done. If "ER"
is used, all strings for the last "F" and/or "S" command
are retained, as are most other attributes of the
current edit. If "R:file" is used, it must be the last
option in the list. /R may be suffixed to the file
specification to open the file in readonly mode.
The following 4 mutually exclusive characters may be suffixed to
"E" prior to the ":" or "R:" options if either is used.
C Exit contiguous, unsequencing the file, and removing all
page marks.
S Leave sequence numbers on the file.
U Unsequence the file.
X Leave the sequencing format the same as the input file.
The following 3 mutually exclusive characters may be suffixed to
any of "C", "S", "U", "X", or, if none of these options is used,
to "E".
B Create a backup file.
N Create no backup files.
O Create .BAK and .OLD files.
The following 2 options may be suffixed to any preceding option
in any order.
D If the input file is in readonly mode or is different
from the output file, delete it. If the file is write
protected, the "D" option is ignored. If /NODELETE is
in effect, SOS will ask for verification before deleting
the file.
Q Quit. All edits done since the last "[Saving]" or "W"
command are lost.
E/OLDCOMMAND
Purpose: Exit the editor either with or without saving the edit
and optionally start editing another file.
Syntax: E
Exit and update file.
E:file
Same as "E", but the updated file is written to "file".
If ":file" is used, it must be the last item in the
list.
ER:file
Same as "E", but begin SOSing "file" when done. If "ER"
is used, all strings for the last "F" and/or "S" command
are retained, as are most other attributes of the
current edit. If "R:file" is used, it must be the last
option in the list. /R may be suffixed to the file
specification to open the file in readonly mode.
The following 3 mutually exclusive characters may be suffixed to
"E" prior to the ":" or "R:" options if either is used.
C Exit contiguous, unsequencing the file, and removing all
page marks.
S Unsequence the file.
X Leave the sequencing format the same as the input file.
The following 3 mutually exclusive characters may be suffixed to
any of "C", "S", "X", or, if none of these options is used, to
"E".
B Create no backup files.
O Create .BAK and .OLD files.
The following 2 options may be suffixed to any preceding option
in any order.
D If the input file is in readonly mode or is different
from the output file, delete it. If the file is write
protected, the "D" option is ignored. If /NODELETE is
in effect, SOS will ask for verification before deleting
the file.
Q Quit. All edits done since the last "[Saving]" or "W"
command are lost.
F/NEWCOMMAND
Purpose: Locate a string of text within the file and print number
of the line containing the string, optionally followed
by the line itself. In addition, the "F" command can
place the user in alter mode on the line containing the
string.
Syntax: F
Find whatever string was last searched for, with
the search starting at the line following the current
one.
F<string>$
Find "<string>" with the search starting on the line
following the current line.
F<string>$range,x,E,n
Find the first "n" occurrences of "<string>" on the
specified range as defined by the search criterion "x"
and "E".
F$range,x,E,n
Same as above, but searches for whatever string was
given in the last "F" command.
The following search or action criterion "x" may be one or more
of the following:
A Enter alter mode on the found line, positioning the
cursor before string that was found.
D Delete the found line.
E Require exact case match on the search strings (see also
/EXACT).
L Print the line number of the found line only.
M Place a page mark before the found line.
N Find not. Find the lines that do not contain the
specified strings.
S Do not print the found line.
T Give a total of the lines found.
U Print the line without line numbers.
F/OLDCOMMAND
Purpose: Locate a string of text within the file and print number
of the line containing the string, optionally followed
by the line itself. In addition, the "F" command can
place the user in alter mode on the line containing the
string.
Syntax: F
Find whatever string was last searched for, with
the search starting at the line following the current
one.
F<string>$
Find "<string>" with the search starting on the line
following the current line.
F<string>$range,x,E,n
Find the first "n" occurrences of "<string>" on the
specified range as defined by the search criterion "x"
and "E".
F$range,x,E,n
Same as above, but searches for whatever string was
given in the last "F" command.
The following search or action criterion "x" may be one or more
of the following:
A Enter alter mode on the found line, positioning the
cursor before string that was found.
D Delete the found line.
E Require exact case match on the search strings (see also
/EXACT).
L Print the line number of the found line only.
M Place a page mark before the found line.
N Print the line number of the found line only (same as
L).
S Do not print the found line.
T Give a total of the lines found.
U Print the line without line numbers.
- Find not. Find the lines that do not contain the
specified string.
G/NEWCOMMAND
Purpose: Exit the editor either with or without saving the edit
and optionally either run the program given by the
"/RUN" switch, or edit another file.
Syntax: G
Exit, update file, and execute the program given
with the "/RUN" switch.
G:file
Same as "G", but write the updated file to "file".
GR:file
Exit and update file, and then begin SOSing "file" when
done. If "GR" is used, all strings for the last "F"
and/or "S" command are retained as are most other
attributes of the current edit. If "R:file" us used, it
must be the last option in the list. /R may be suffixed
to the file specification to open the file in readonly
mode. "GR:file" is identical in function to "ER:file".
The following 4 mutually exclusive characters may be suffixed to
"G" prior to the ":" or "R:" options if either is used.
C Exit contiguous, unsequencing the file, and removing all
page marks.
S Leave sequence numbers on the file.
U Unsequence the file.
X Leave the sequencing format the same as the input file.
The following 3 mutually exclusive characters may be suffixed to
any of "C", "S", "U", "X", or, if none of these options is used,
to "G".
B Create a backup file.
N Create no backup files.
O Create .BAK and .OLD files.
The following 2 options may be suffixed to any preceding option
in any order.
D If the input file is in readonly mode or is different
from the output file, delete it. If the file is write
protected, the "D" option is ignored. If /NODELETE is
in effect, SOS will ask for verification before deleting
the file.
Q Quit. All edits done since the last "[Saving]" or "W"
command are lost.
G/OLDCOMMAND
Purpose: Exit the editor either with or without saving the edit
and optionally either run the program given by the
"/RUN" switch, or edit another file.
Syntax: G
Exit, update file, and execute the program given
with the "/RUN" switch.
G:file
Same as "G", but write the updated file to "file".
GR:file
Exit and update file, and then begin SOSing "file" when
done. If "GR" is used, all strings for the last "F"
and/or "S" command are retained as are most other
attributes of the current edit. If "R:file" us used, it
must be the last option in the list. /R may be suffixed
to the file specification to open the file in readonly
mode. "GR:file" is identical in function to "ER:file".
The following 3 mutually exclusive characters may be suffixed to
"G" prior to the ":" or "R:" options if either is used.
C Exit contiguous, unsequencing the file, and removing all
page marks.
S Unsequence the file.
X Leave the sequencing format the same as the input file.
The following 3 mutually exclusive characters may be suffixed to
any of "C", "S", "X", or, if none of these options is used, to
"G".
B Create no backup files.
O Create .BAK and .OLD files.
The following 2 options may be suffixed to any preceding option
in any order.
D If the input file is in readonly mode or is different
from the output file, delete it. If the file is write
protected, the "D" option is ignored. If /NODELETE is
in effect, SOS will ask for verification before deleting
the file.
Q Quit. All edits done since the last "[Saving]" or "W"
command are lost.
H
Purpose: Allow an SOS user to get some help without having to
leave the editor.
Syntax: H
Type the general information section of the HELP file.
H,command
Type help for the command whose name is "command".
H,/
Type a short list of all the SOS switches and functions.
H,=
Type a short list of all the SOS editing options during
the edit.
H/switch
Type help for the switch whose name is "switch". Help
for switches named /NOxxxx (e.g., /NOEXACT) may be had
by typing H/xxxx (e.g., H/EXACT).
H,char
Type help on the special character "char".
I
Purpose: Allow insertion of new lines into the file, with or
without a user specified line increment.
Syntax: I
Begin inserting text after the current line using
the next available line number and global increment.
In
Begin inserting text on or after line "n" using the
first available line number and the global increment.
"n" is any valid line number specification.
In,inc
Same is "I,n", but uses an increment of "inc" for this
insert and resets the global line increment value to
"inc".
In;inc
Same as "I,n", but uses an increment of "inc" for this
insert, and does NOT change the global line increment.
In!m
Same as "In", but automatically selects an increment
that will allow insertion of "m" new lines. If no such
increment can be found, an error message is given.
I/n
Begin inserting text on a new page after page "n" using
the global starting line number and global increment.
J
Purpose: To allow concatenation of two lines of text.
Syntax: Jn
Concatenate line "n" + 1 to the end of line "n".
JC
Purpose: To allow centering of a range of lines.
Syntax: JC range
Center the lines specified by "range" between LMAR
and RMAR.
JL
Purpose: To allow left justification of a range of lines.
Syntax: JL range
Left justify the lines specified by "range" to the
margin as specified by LMAR.
JR
Purpose: To allow right justification of a range of lines.
Syntax: JR range
Right justify the lines specified by "range" to the
margin as specified by RMAR.
JU
Purpose: To allow full justification of a range of lines.
Syntax: JU range
Fully left and right justify the lines specified by
"range", by placing as many complete words per line as
possible, and then adding spaces between the words to
square off the left and right margins as specified by
LMAR and RMAR.
JW
Purpose: To allow word level justification of a range of lines.
Syntax: JW range
Word justify the lines specified by "range". This
produces ragged-right text by placing as many complete
words per line as possible as specified by LMAR and
RMAR.
K
Purpose: Remove page marks from a file.
Syntax: K/n
Kill the page mark between page "n" and page "n-1".
All subsequent pages are automatically renumbered.
K/n:/m
Kill the park marks between pages "n-1" and "m" All
subsequent pages are automatically renumbered.
L
Purpose: Provide a printer listing of a section of a file with
page headings and optional line numbers.
Syntax: L range
Write the lines specified by "range" to a disk file
with page headings. The file will have a ".LPT"
extension.
L range,U
Same as "L range", except that the resulting output will
be unsequenced.
M
Purpose: To place page marks in a file.
Syntax: M n
Place a page mark before line "n". "n" may be any
valid line number specification.
N/NEWCOMMAND
Purpose: To allow renumbering the lines in all or part of the
file.
Syntax: N inc,range,start
To renumber the specified range of lines starting
with the first line being given the number "start" and
incrementing by "inc". If a page boundary is crossed,
the numbering is restarted with the first line on the
page being given the number "inc".
N inc,range
To renumber the specified range of lines using the "inc"
as the starting value and the increment.
N inc
To renumber the current page with an increment of "inc",
and using the global starting value.
N
To renumber the current page using the global line
increment and starting values.
N/OLDCOMMAND
Purpose: To allow renumbering the lines in all or part of the
file.
Syntax: N inc,range,start
To renumber the specified range of lines starting
with the first line being given the number "start" and
incrementing by "inc". If a page boundary is crossed,
the numbering is restarted with the first line on the
page being given the number "inc".
N inc,range
To renumber the specified range of lines using the "inc"
as the starting value and the increment.
N inc
To renumber the current page with an increment of "inc",
and using the global starting value.
N
To renumber the entire file using the global line
increment and starting values.
NA
Purpose: To allow renumbering the lines on a page to open a hole
of a specified size for inserting new text.
Syntax: NA n,inc
To open a hole of at least "n" lines after the
current line, and renumber the rest of the page with an
increment of "inc".
NA n
To open a hole of at least "n" lines after the current
line, and renumber the rest of the page using the global
line increment.
NF
Purpose: To allow renumbering of an entire file.
Syntax: NF inc,start
Renumber the entire file with the first line being
given the number "start", and incrementing in steps of
"inc". If a page boundary is crossed, the numbering is
restarted with the first line on the page being given
the number "inc".
NF inc
Renumber the entire file with the first line being given
the number "inc", and incrementing in steps of "inc".
If a page boundary is crossed, the numbering is
restarted with the first line on the page being given
the number "inc".
NF
Renumber the entire file with the first line being given
the global starting value, and incrementing in steps
given by the global increment value. If a page boundary
is crossed, the numbering is restarted with the first
line on the page being given the global increment.
NP
Purpose: To allow renumbering of a file continuously across
page boundaries.
Syntax: NP inc,range,start
To renumber the lines specified by "range" with the
first line being given the number "start", and the rest
of the "range" being numbered in steps of "inc"
continuously across page boundaries.
NP inc,range
To renumber the lines specified by "range" with the
first line being given the number "inc", and the rest of
the "range" being numbered in steps of "inc"
continuously across page boundaries.
NP inc
To renumber the entire file with the first line being
given the number "inc", and the rest of the file being
numbered in steps of "inc" continuously across page
boundaries.
NP
To renumber the entire file with the first line being
given the the global starting value, and the rest of the
file being numbered in steps given by the global
increment, continuously across page boundaries.
O
Purpose: To allow copying of a portion of the file being edited
to another file.
Syntax: O:file,range,U,x
Output the lines specified by "range" to "file". "U"
will result in the output file being unsequenced. "x"
may be either "D" to supersede "file" if it exists, or
"A" to append the results of this "O" command to the end
of "file", if it already exists. If "A" is not
specified, and the file already exists, the user is
asked if he wishes to supersede the file. If the user
responds "YES", the old copy is superseded by the new
one; if the response is "NO", the "O" command is
ignored.
O:file,U,x
The entire file is written out as specified by the "U"
and "x" options described above.
OM
Purpose: To output currently defined macros into a file.
Syntax: OM:file,x
Output all currently defined macros into "file" such
that it can be read back in as an indirect command file,
to redefine them. "x" may be either "D" to supersede
"file" if it exists, or "A" to append the macros to the
end of the already existing "file".
P
Purpose: To allow output of the file being edited on the user's
terminal in various formats.
Syntax: P range,x
Print the lines specified by "range" on the user's
terminal. "x" may be any of the following options
separated by commas.
Option Meaning
E Eject to bottom of page when done.
F E, U, and W options combined.
N Print page numbers at bottom of page.
U Unsequence the printed file.
W Wait at the bottom of the page for
G to continue and suppress wait.
Q to quit and return to command mode.
<CR> to continue.
R
Purpose: Allow replacement of lines in the file with a single
command (combines the effects of the "D" and "I"
commands).
Syntax: R range,Y
Delete the lines specified by "range" and enter
insert mode starting with the first line number deleted
and using the global step size for an increment. The
",Y" suffix inhibits asking for confirmation on full
page replaces in "NOVICE" mode. ",Y" is assumed if
EXPERT mode is in effect.
R range,inc,Y
Same as "R range,Y", but use a step size of "inc", and
set the global default increment to "inc".
R range;inc,Y
Same as "R range,Y", but use a step size of "inc", and
do NOT change the global step size.
S/NEWCOMMAND
Purpose: To replace occurrences of one string of text in a file
with another string of text.
Syntax: S
Substitute using the last entered old and new
strings, with the search starting at the line following
the current one, and continuing until one substitution
is made, or the end of the file is reached.
S$
Same as "S".
S$range
Same as "S", but the search is over the specified range
and all occurrences of the old string are replaced by
the new string.
S<oldstring>$<newstring>$
Substitute "<newstring>" for "<oldstring>", with the
search starting at the line following the current one,
and continuing until one substitution is made, or the
end of the file is reached.
S<oldstring>$<newstring>$range
Same as "S<oldstring>$<newstring>$", but the search is
over the specified range and all occurrences of the old
string are replaced by the new string.
S<oldstring>$<newstring>$range,x,n
Replace the next "n" occurrences of "<oldstring>" by
"<newstring>" on the specified range as defined by the
search criteria "x".
S$range,x,n
Same as above, but searches for whatever string was
given in the last "S" command.
The following search or action criterion "x" may be one or more
of the following:
E Require exact case match on the search strings (see also
/EXACT).
D Enter decide mode on the specified line.
L Print the line number of the found line only.
S Do not print the found line.
T Give a total of the lines found.
U Print the line without line numbers.
The decide mode options are immediate, and can be one of:
<space> Accept the change on this line.
<rub> Do not accept the change on this line.
<CR> Accept the change on this line.
A Enter alter mode on this line.
E Exit substitution and do not change this line.
G Accept this and all other substitutions without asking.
H Give a help text.
N Do not accept the change on this line.
Q Exit substitution and do not change this line.
Y Accept the change on this line.
S/OLDCOMMAND
Purpose: To replace occurrences of one string of text in a file
with another string of text.
Syntax: S
Substitute using the last entered old and new
strings, with the search starting at the line following
the current one, and continuing until one substitution
is made, or the end of the file is reached.
S$
Same as "S".
S$range
Same as "S", but the search is over the specified range
and all occurrences of the old string are replaced by
the new string.
S<oldstring>$<newstring>$
Substitute "<newstring>" for "<oldstring>", with the
search starting at the line following the current one,
and continuing until one substitution is made, or the
end of the file is reached.
S<oldstring>$<newstring>$range
Same as "S<oldstring>$<newstring>$", but the search is
over the specified range and all occurrences of the old
string are replaced by the new string.
S<oldstring>$<newstring>$range,x,n
Replace the next "n" occurrences of "<oldstring>" by
"<newstring>" on the specified range as defined by the
search criteria "x".
S$range,x,n
Same as above, but searches for whatever string was
given in the last "S" command.
The following search or action criterion "x" may be one or more
of the following:
E Require exact case match on the search strings (see also
/EXACT).
L Print the line number of the found line only.
N Do not print the found line.
Q Enter decide mode on the specified line.
S Do not print the found line.
T Give a total of the lines found.
U Print the line without line numbers.
The decide mode options are immediate, and can be one of:
<space> Accept the change on this line.
<rub> Do not accept the change on this line.
<CR> Accept the change on this line.
A Enter alter mode on this line.
E Exit substitution and do not change this line.
G Accept this and all other substitutions without asking.
H Give a help text.
N Do not accept the change on this line.
Q Exit substitution and do not change this line.
Y Accept the change on this line.
T
Purpose: Allows transfer of lines from one point to another
within the current file.
Syntax: T n,range,inc1,inc2
Move the lines given by "range" from their current
location to be after line "n" with an increment of
"inc1" to be used before a page mark, and "inc2" to be
used after a page mark. "inc1" and "inc2" are optional,
and may be omitted.
VL
Purpose: To change the case of all alphabetic characters on a
specified range to lower case.
Syntax: VL range
Change all letters on the specified range to lower
case.
VU
Purpose: To change the case of all alphabetic characters on a
specified range to upper case.
Syntax: VU range
Change all letters on the specified range to upper
case.
VV
Purpose: To invert the case of all alphabetic characters on a
specified range.
Syntax: VV range
Invert the case of all letters on the specified
range.
W/NEWCOMMAND
Purpose: Update the file without exiting the editor. This
provides a measure of protection against interruption of
computer services.
Syntax: W
Save the world (update the file without exiting
SOS).
W:file
Save the world by writing everything onto "file". If
":file" is used, it must be the last option in the list.
The following 4 mutually exclusive characters may be suffixed to
"W" prior to the ":" option if ":" is used.
C Exit contiguous, unsequencing the file, and removing all
page marks.
S Leave sequence numbers on the file.
U Unsequence the file.
X Leave the sequencing format the same as the input file.
The following 3 mutually exclusive characters may be suffixed to
any of "C", "S", "U", "X", or, if none of these options is used,
to "W".
B Create a backup file.
N Create no backup files.
O Create .BAK and .OLD files.
W/OLDCOMMAND
Purpose: Update the file without exiting the editor. This
provides a measure of protection against interruption of
computer services.
Syntax: W
Save the world (update the file without exiting
SOS).
W:file
Save the world by writing everything onto "file". If
":file" is used, it must be the last option in the list.
The following 3 mutually exclusive characters may be suffixed to
"W" prior to the ":" option if ":" is used.
C Exit contiguous, unsequencing the file, and removing all
page marks.
S Unsequence the file.
X Leave the sequencing format the same as the input file.
The following 3 mutually exclusive characters may be suffixed to
any of "C", "S", "X", or, if none of these options is used, to
"W".
B Create no backup files.
O Create .BAK and .OLD files.
X
Purpose: Provide a single command for extending lines.
Syntax: X range,S
Alter the lines specified by "range", by placing
the cursor at the end of the line and entering insert
mode. If ",S" is omitted, the entire line is printed
and the cursor is left at the end of the line. If ",S"
is used, printing of the line is suppressed. Note that
the range specification may be suffixed with ";m" to
specify a temporary line increment to be used to number
new lines created in this eXtend operation. If <CR> is
typed while in eXtend mode, a new line will will be
started if use of the global line increment allow room
for such a line and /XINSERT is on. If no room is
available a <CR> returns you to SOS command mode. You
may exit eXtend mode by typing ALTmode or ESCape
followed by <CR>.
!
Purpose: Type out an expanded macro string, completely resolved.
Syntax: ! text
Type out the text with all macros fully expanded using
the current definitions.
<
Purpose: To delimit a macro name
Syntax: <name>
Expand the macro "name".
<name,n>
Expand the macro "name" n times.
<name,*>
Expand the macro "name" until a command error is
generated.
<name(arg,arg)>
Expand the macro "name" with arguments "arg".
See also /DEFINE, /LDEFINE, /MACRO, and /PURGE for
related information.
;
Purpose: Provide a way to insert comments in an SOS indirect
file.
Syntax: ; <comments>
The ";" command must be used as the first character in a
line to make that line a comment.
@
Purpose: Provide a method for reading command files.
Syntax: @ filespec
Execute the contents of the file given by "filespec"
just as though whatever is in the file had been typed at
the terminal. Note that if no device is given in
"filespec", devices DSK:, TED:, and SYS: are tried in
that order in an effort to find the file. If no file
extension is given in "filespec", the extensions .CCL,
.CMD, and the null extension are tried in that order on
each device.
@ filespec,n
Repeat the contents of the filespec "n" times.
^E
Purpose: To provide powerful search string pattern matching.
Syntax: ^Echar
The special match characters available with the FIND and
SEARCH commands has been expanded. A complete list of
the special match characters appear below. Note that
the C128 representation of some of these special match
characters has been removed. It is hoped that these are
more consistent and easily remembered. They are all
entered as a control-E followed by a character, as
described below:
^E equiv meaning
char
^EC match any character
^EA match any alphanumeric (A-Z, a-z, 0-9)
^EL match any letter (A-Z, a-z)
^EVU match any upper case letter (A-Z)
^EVL match any lower case letter (a-z)
^ED match any digit (0-9)
^ES match a separator
^E<space> match a space or tab
^EZ match end of line
^EB match beginning of line
^EN not the following character
^E* zero or more of the following character
^E+ one or more of the following character
^EQ quote the next character literally
and on s output strings:
^EX next match string from input side
^EnM n-th match string from input side
^EnVU Upper case equivalent n-th match string from input side
^EnVL Lower case equivalent n-th match string from input side
=
Purpose: To allow reading of selected editing options during
the edit.
Syntax: = variable
Output the current value of "variable".
Legal variables are given below.
VARIABLE Meaning
AEXACT Tell whether or not search strings in
alter mode require exact case match.
ALTER Tell what display / edit mode is in
effect.
BACKSPACE Tell what display / edit mode is in
effect.
BAK Tell what level of backup is in
effect.
BASIC Tell whether or not the input file is
being read in /BASIC mode.
BAUD Tell the current speed and the minimum speed for
display alter mode update.
BIGPG Tell what the largest page number in
the file is.
BUFFER Tell whether or not additional I/O
buffers have been allocated.
CASE Tell what display / edit mode is in
effect.
CCEXIT Tell whether or not the SOS Control-C
intercept is enabled.
CCL Tell whether or not attributes are to
be remembered across edits in a given
terminal session.
CONTIGUOUS Tell the sequencing format of the output file.
CRLF Tell what column was selected for the
automatic CRLF feature. Zero means
automatic CRLF is disabled.
C64 Tell what display / edit mode is in
effect.
C128 Tell what display / edit mode is in
effect.
DECIDE Tell whether or not auto-decide mode
for S(ubstitute) commands is enabled.
DEFINE Tell the currently defined macros.
DELETE Tell whether or not the "ED" command
will delete the input file without
asking for conformation.
DISK List disk quotas for user's PPN.
DISPLAY Tell what display / edit mode is in effect.
DPY Tell what display / edit mode is in
effect.
DPYALT Tell what display / edit mode is in
effect.
DSK List disk quotas for user's PPN.
ERROR Give the long form of the last error
message.
EXACT Tell whether or not exact case match
is required on search strings in
F(ind) and S(ubstitute) commands.
EXPERT Tell whether expert or novice mode is
in effect.
FILE Type the SOS output file specification on the user's
terminal.
FILL Tell what TTY FILL is in use.
INCREMENT Tell what insertion increment is set.
INFORM Tell whether or not the numbers of the
first and last lines affected by a
delete or replace are to be printed.
INSERT Tell if SOS will enter INSERT mode
when creating a new file.
ISAVE Tell what insertion save increment is
in use.
LC Tell the status of the case conversion in effect.
LDEFINE Tell the currently defined macros
LENGTH Tell what number of lines is to be
printed between SOS page ejects when
the "P" command is used for hard copy
output.
LF Tell what display / edit mode is in
effect.
LMAR Tell what column will be used for the
left margin in text justification.
LOCATION Give the number of the first line and
page currently in the editing buffer.
LOWER Tell what display / edit mode is in
effect.
MACRO Tell if the macro facility is enabled.
MAXLN Tell what the maximum line number to
be used on any SOS page is.
M33 Tell what display / edit mode is in
effect.
M37 Tell what display / edit mode is in
effect.
NAME Type the SOS output file specification
on the user's terminal.
NEWALTER Tell the alter mode command set in use.
NEWCOMMAND Tell the command set in use.
NOVICE Tell whether expert or novice mode is
in effect.
OLD Tell what level of backup is in
effect.
OLDALTER Tell the alter mode command set in use.
OLDCOMMAND Tell the command set in use.
PLINES Tell what number of lines is to be
printed for "P<CR>".
PMAR Tell what column will be used for the
first line of a paragraph in text
justification.
PROGRAM Tell the status of the case conversion in effect.
PROTECT Tell what protection will be used for
the file being output from the current
edit.
QZBAK Tell what level of backup is in
effect.
R Tell whether or not the file is open
in readonly mode.
READONLY Tell whether or not the file is open
in readonly mode.
REFDLY Tell what the refresh delay time for
display terminals in milliseconds.
RMAR Tell what column will be used for the
right margin in text justification.
RONLY Tell whether or not the file is open
in readonly mode.
RULER Type a column ruler on the terminal.
RUN Tell what program is to be run if "G"
is used to leave SOS.
SAVE Tell how many file changing commands
must occur between auto-"W" commands.
SEPARATOR Tell whether or not "%", "$", and "."
are to be treated as separators in F
and S commands.
SEQUENCE Tell the sequencing format of the
output file.
STANDARD Tell what display / edit mode is in
effect.
START Tell the sequence number to be used at
the start of each page when reading in
an unsequenced file.
STEP Tell the line increment to be used to
sequence an unsequenced file.
STRING Tell what strings were used in the
last F(ind) and S(ubstitute) commands.
TEXT Tell the status of the case conversion in effect.
UC Tell the status of the case conversion in effect.
UNSEQUENCE Tell the sequencing format of the
output file.
UPPER Tell what display / edit mode is in
effect.
WIDTH Tell what the current TTY WIDTH is.
WINDOW Tell what the current window size is.
WMAXIMUM Tell what the current maximum window
size is.
WMINIMUM Tell what the current minimum window
size is.
WRATIO Tell what the current window ratio is.
X Tell whether or not the file is open
in readonly mode.
XINSERT Tell whether or not the X(tend) command will insert
new lines.
XSEQUENCE Tell the sequencing format of the
output file.
# Tell what the first line of the last
line range specification was.
% Tell what the last line in the last
insert command was.
. Tell what the current line and page
numbers are.
/
Purpose: Allow setting of switches when in SOS command mode.
Syntax: /variable
Define an SOS option as indicated by "variable" (e.g.,
/AEXACT).
/variable=value
This switch causes SOS to set "variable" to "value"
(e.g., /FILL=1).
/variable:value
This syntax is equivalent to /variable=value.
Help for a specific switch may be had by typing H/xxx,
where "xxx"
is the switch name. A highly abbreviated list of
switches follows.
/AEXACT (Alter EXACT) Exact case /MACRO (MACRO) macro facility
/ALTER (ALTER) Alter from insert /MAXLN (MAXimum LiNe) Largest Line
/BACKSPACE (BACKSPACE) ^H = RUBout /NAME (file NAME) Edit file name
/BAK (BAcKup) Create backup file /NEWALTER (NEW ALTER) mode
/BASIC (BASIC) Edit BASIC file /NEWCOMMAND (NEW COMMAND) mode
/BAUD (alter BAUD rate) update /NOVICE (NOVICE) Beginner's mode
/BUFFER (BUFFER) More data in core /NUMBER (NUMBER) Type line numbers
/C128 (Character 128) Data mode /OLD (OLD) Secondary backup
/C64 (Character 64) Data mode /OLDALTER (OLD ALTER) mode
/CCEXIT (Control-C EXIT) ^C trap /OLDCOMMAND (OLD COMMAND) mode
/CCL (command file) Remember edit /OPTION (OPTION) Read SWITCH.INI
/CONTIGUOUS no numbers or pages /PLINES (Print LINES) Line count
/CRLF(Carriage Return) Data mode /PMAR (Paragraph MARgin) Indent
/DECIDE (DECIDE) Ask on Substitute /PROGRAM (PROGRAM) TTY UC
/DECRYPT (DECRYPTion) Decrypt file /PROTECT (PROTECT) File protection
/DEFINE (DEFINE) macro names /QZBAK (QZ BacKup) Multiple Backup
/DELETE (DELETE file) Ask on ED /R (Read only) Examine a file
/DISPLAY (DISPLAY) For CRT's /REFDLY (REFresh DeLaY) for
/DPY (DisPlaY mode) For CRTs /RMAR (Right MARgin) for text
/DPYALT (DisPlaY ALTer) For CRTs /RUN (RUN) Program to run
/ENCRYPT (ENCRYPTion) Encrypt file /SAVE (SAVE) Auto-update
/EXACT (EXACT) Exact case /SEPARATOR (SEPARATOR) for F and S
/EXPERT (EXPERT) Expert mode /SEQUENCE (SEQUENCE) Sequence file
/FILE (FILE name) Edit file name /STANDARD (STANDARD) Non-CRT TTY's
/FILL (FILL) TTY FILL /START (START) First Line number
/INCREMENT (INCREMENT) Line incr. /STEP (STEP) Step size
/INFORM (INFORM) Tell on deletes /TELL (TELL) Type file name
/INITIALIZE Read SOS.INI on startup /TEXT (TEXT) TTY LC
/INSERT (INSERT) Insert on create /UC (UC) TTY UC
/ISAVE (Insert SAVE) Auto-update /UNSEQUENCE (UNSEQUENCE) No number
/LC (Lower Case) TTY LC /UPPER (UPPER) Data mode
/LDEFINE (Line DEFINE) macro names /WIDTH (WIDTH) TTY WIDTH
/LENGTH (LENGTH) Lines per page /WINDOW (WINDOW) In-core space
/LF (LF) For CRT's /WMAXIMUM (Window MAXIMUM) space
/LMAR (Left MARgin) for text /WMINIMUM (Window MINIMUM) space
/LOWER (LOWER) Data mode /WRATIO (Window RATIO) Space ratio
/M33 (Model 33) Data mode /X (eXamine) Examine a file
/M37 (Model 37) Data mode /XINSERT (eXtend insert) new lines
/AEXACT
Purpose: Allow specification of exact case match on alter mode
search strings.
Syntax: /AEXACT
Require exact case match on alter mode search strings.
/NOAEXACT
Do not require exact case match on alter mode search
strings.
/ALTER
Purpose: Allow alter mode to be entered from Insert mode.
Syntax: /ALTER
Enter alter mode if ALTmode or ESCape is typed while in
Insert mode. If this switch is used, the only way to
terminate insert mode is to type ALTmode or ESCape in
response to a line number.
/NOALTER
This switch disables both /DPYALT and /ALTER.
/BACKSPACE
Purpose: Allow Control-H to be a substitute RUBout.
Syntax: /BACKSPACE
Make ^H (Control-H or Backspace) equivalent to RUBout.
If this switch is enabled, ^H may still be entered in
the text via the O sub-command in alter mode.
/NOBACKSPACE
Make ^H (Control-H or Backspace) an ordinary text
character.
/BAK
Purpose: Allow SOS to create a backup file.
Syntax: /BAK
Create a backup (.BAK) file whenever a [Saving], W
command, or E command is used. Refer to /OLD and /QZBAK
for additional information.
/NOBAK
This switch disables /BAK, /OLD, and /QZBAK, thus
preventing creation of any backup files by SOS.
/BASIC
Purpose: Allow SOS to process BASIC format files.
Syntax: /BASIC
Allow BASIC format pseudo-line numbers on the input
file. This switch may be selected only on the SOS
command line or via a SWITCH.INI file.
/BIGPG
Purpose: To list the number of pages in the file.
Syntax: =BIGPG
The largest page number in the file is printed out.
/BAUD
Purpose: To select a minimum baud rate at which display alter
mode will update the line in place on a display
terminal.
Syntax: /BAUD:n
Select baud rate "n" as the minimum baud rate at which
display alter mode will update the line in place on a
display terminal.
/BUFFER
Purpose: Allow increased I/O buffer space.
Syntax: /BUFFER
Increase I/O buffer space allocation for better editing
speed on large files. This switch may be selected only
on the SOS command line or via a SWITCH.INI file.
/NOBUFFER
Do not use extra large editing buffers. This switch may
be selected only on the SOS command line or via a
SWITCH.INI file.
/CASE
Purpose: To tell what display/edit mode is in effect.
Syntax: =CASE
This will tell what display/edit mode is in effect.
/CCEXIT
Purpose: Allow you to turn off SOS's Control-C trap.
Syntax: /CCEXIT
Allow SOS to exit to monitor mode when Control-C is
typed.
/NOCCEXIT
Make SOS intercept Control-C's, and allow the user the
options of continuing the edit, or exiting to monitor.
If /NOCCEXIT is set, any one of the following typeins
may be used followed by a carriage return when SOS types
"YES? " in response to a Control-C.
H - to type the following list of legal responses.
C - to CONTINue the edit automatically.
M - to return to MONITOR immediately.
R - to REENTEr SOS, terminating an F or S command.
E - to END the edit normally
Q - to abort (QUIT) the edit and delete scratch files.
/CCL
Purpose: Allow SOS to remember attributes across edits.
Syntax: /CCL
Remember attributes across edits in a given terminal
session. This is done via a temporary file named
"nnnESF.TMP", where "nnn" is the current job number.
These files should be deleted at the end of a terminal
session to prevent them from accumulating over several
sessions.
/NOCCL
Do not retain attributes across edits in a given
terminal session.
/CONTIGUOUS
Purpose: Force unsequencing and page mark removal of the SOS
output file.
Syntax: /CONTIGUOUS
This switch results in SOS writting an unsequenced
output file free of page page marks in response to an
"E", "G", or "W" command that does not specify "S", "U",
or "X".
/CRLF
Purpose: Allow automatic insertion of Carriage Returns in a file.
Syntax: /CRLF:n
Make SOS insert a Carriage Return in the file replacing
the first blank space typed in or after character
position "n". A value of 0 for "n" disables the
automatic insertion of Carriage Returns. Note that the
value of "n" includes the eight characters of the line
number if /NUMBER has been selected.
/NOCRLF
This switch, like /CRLF:0, deselects the automatic
insertion of Carriage Returns.
/C64
Purpose: Allow selection of normal character input mode.
Syntax: /C64
Select normal character input mode. This makes the
apostrophe an ordinary input character instead of a
special flag for control characters. This switch is the
inverse of /C128.
/C128
Purpose: Allow selection of special quoted-character input mode.
Syntax: /C128
Select special quoted-character input mode. This makes
the apostrophe a special character used for entering
control characters according to the following table.
Lower case text may be entered by typing an apostrophe
before each lower case character. This switch is the
inverse of /C64 and is useful only when the terminal you
are using has no control characters on the keyboard.
/C128 Special Character Mapping Table.
===================================================================
Typed Actual Octal Value Typed Actual Octal Value
-------------------------------------------------------------------
'' ' 47 '" ^B 2
'1 ^V 26 '# ^C 3
'2 ^W 27 '$ ^D 4
'3 ~ 176 '% ^E 5
'4 ^Z 32 ' ^F 6
'6 ^Y 31 '( ^H 10
'7 ^^ 36 ') ^N 16
'8 ^ 37 '* ^O 17
'9 ^X 30 '= ^[ (ALT) 33
'0 ^U 25 '@ ` 140
': | 174 '[ { 173
' ^R 22 '+ ^P 20
', ^Q 21 '] } 175
'. ^S 23 '< ^ 34
'/ ^T 24 '> ^] 35
'! ^A 1
===================================================================
/DECIDE
Purpose: Enable Auto-decide mode on S(ubstitute) commands.
Syntax: /DECIDE
When /DECIDE is used, SOS will print each line after
making the requested substitution, and wait for you to
type Carriage Return or <space> to accept the
substitution, RUBout to reject the substitution, or A to
enter alter mode on this line. If you enter alter mode,
type a carriage return to continue the substitute
command.
/NODECIDE
Do not pause after making each substitution.
/DECRYPT
Purpose: Allow specification of a decryption password.
Syntax: /DECRYPT
This switch tells SOS to ask for a decryption password
at the start of the edit. The password will not be
echoed at your terminal when you type it in. If there
is no password, simply type Carriage Return when SOS
asks for the password. The decryption password allows
you to read a file that has been previously encrypted
with SOS. If you give the wrong password, or try to
look at the file with something other than SOS, it will
appear to be garbage. Exiting by any other means than
EQ after having given an incorrect password may result
in the destruction of your file. /DECRYPT is only valid
on the SOS command line or in a SWITCH.INI file.
/DEFINE
Purpose: To define a macro name
Syntax: /DEFINE:name:string
DEFINE the macro called "name" to be the text "string".
"String" itself may contain other macros, which may be
expanded at definition time (if expressed with single
angle brackets <xxx>), or expanded it invocation time
(if expressed with double angle brackets <<xxx>>). See
also /LDEFINE, /MACRO, /PURGE for related information.
/DEFINE:name:"string1
string2"
Like /DEFINE, except the macro definition is several
lines long.
/DELETE
Purpose: Allow SOS to delete the input file when ED is typed
without asking for verification.
Syntax: /DELETE
If ED is typed and the input file is in readonly mode or
is different from the output file, SOS will delete the
input file without asking for verification. If the file
is write protected, the ED request is treated as an E
request.
/NODELETE
Require SOS to ask for verification when ED is typed.
You may respond with either "Y" or "N" followed by a
Carriage Return. If "Y" is entered, SOS will proceed
just as though /DELETE had been present. If "N" is
typed, the ED request is treated as an E request.
/DISK
Purpose: List disk quotas for your current job and PPN.
Syntax: =DISK
The current disk quotas for your job and PPN, as well as
the total space available to the system are listed.
/DISPLAY
Purpose: To allow optimum display handling for a given terminal.
Syntax: /DISPLAY
This switch enables SOS to do optimum display handling
for the given terminal type as set to the monitor with
the TERMINAL TYPE xxxx command.
It will enable the following, depending on the type of
terminal:
Special handling of <rub>, ^U, ^R, ^W.
Backspace up a line when print commands are given.
Allow continuous update of a line in alter mode which
causes SOS to continually update the line being altered
so that its current state is always displayed on the
terminal screen. Please note that this switch is not
useful at transmission rates of less than 600 baud
because of the time required to update the entire line
after a character is inserted or deleted from the middle
of the line. Refer to /DPY, /DPYALT, and /LF for
additional display features.
/NODISPLAY
Disable the display features.
/DPY
Purpose: Enable CRT display mode for editing.
Syntax: /DPY
This switch causes SOS to process RUBouts, ^R, and ^U
itself. When a RUBout is entered, SOS will erase the
deleted characters from the screen. This feature is
especially useful in alter mode when backing up the
cursor, as the cursor will simply move across the line
without echoing characters. When ^R is typed, SOS
retypes the line up to the current cursor position.
When ^U is typed, SOS reprints the line number, but
forgets the rest of the line. Refer to /C64, /C128,
/M33, /M37, /LOWER, /STANDARD, and /UPPER for additional
information.
/DPYALT
Purpose: Position the cursor at end-of-line and enter alter mode
from Insert mode when a ALTmode or ESCape is typed.
Syntax: /DPYALT
If /ALTER is used, but /DPYALT is not, SOS will enter
alter mode after prompting you with the current line
number. With /DPYALT enabled, SOS will enter alter mode
at the end of the current line. /DPYALT also selects
/ALTER. /DPYALT is intended primarily for use with
/DPY, but functions with /STANDARD also.
/DSK
Purpose: List disk quotas for your current job and PPN.
Syntax: =DSK
The current disk quotas for your job and PPN, as well as
the total space available to the system are listed.
/ENCRYPT
Purpose: Allow specification of a encryption password.
Syntax: /ENCRYPT
This switch tells SOS to ask for an encryption password
for the input file and for the output file at the start
of the edit. The password will not be echoed at your
terminal when you type it in. If there is no password
for a file, simply type Carriage Return when SOS
requests the password for that file. Encryption of a
file means that someone who does not know the password
cannot interpret the data in the file. Thus, if you
give the wrong the password for the file, or try to look
at it with anything but SOS, it will appear to be
garbage. Exiting by any other means than EQ after
having given an incorrect password may result in the
destruction of your file. /ENCRYPT is only valid on the
SOS command line or in a SWITCH.INI file.
/ERROR
Purpose: To list the long form on the last error message.
Syntax: =ERROR
The long form of the last error message is printed.
This is useful if /EXPERT is in effect, as /EXPERT
outputs the short form of an error message.
/EXACT
Purpose: Require exact case match in search strings on F(ind) and
S(ubstitute) commands.
Syntax: /EXACT
Require exact case match in search strings on F and S
commands.
/NOEXACT
Do not require exact case match in search strings on F
and S commands.
/EXPERT
Purpose: This command tells SOS that you are an experienced user.
Syntax: /EXPERT
This command causes SOS to use 3 character abbreviations
for error messages, with the full text of the message
available for your inspection by typing "=ERROR". SOS
will not ask for verification when a D(elete) or
R(eplace) that would remove an entire page is attempted.
In addition, SOS will allow the D and R commands to be
used without a period (e.g., "D" becomes an acceptable
substitute for "D."). /EXPERT is the inverse of
/NOVICE.
/NOEXPERT
This command, which is equivalent to /NOVICE, causes SOS
to use full length error messages instead of 3 character
abbreviations. SOS will ask for verification when a
D(elete) or R(eplace) that would remove an entire page
is attempted. In addition, SOS will not allow the D and
R commands to be used without a period (e.g., "D" is not
an acceptable substitute for "D.").
/FILE
Purpose: Define the output file name for the current edit.
Syntax: /FILE:file spec.
This option causes SOS to write the output of the edit
to "file spec.", instead of updating the original file.
/FILLCLASS
Purpose: Set the fill class for the terminal in the same manner
as the monitor command
.SET TTY FILL n
Syntax: /FILLCLASS:n
Set the fill class for the terminal to "n". "n" may be
0, 1, 2, or 3. Note that /FILLCLASS:0 is equivalent to
the monitor command
.SET TTY NO FILL
/NOFILL
Set the fill class for the terminal to 0. /NOFILL is
equivalent to /FILLCLASS:0 and to the monitor command
.SET TTY NO FILL
/INCREMENT
Purpose: Establish an initial value for the default global line
increment.
Syntax: /INCREMENT:n
Set the default global line increment to "n" at the
start of each edit.
/INFORM
Purpose: List line numbers of first and last lines (D)eleted or
(R)eplaced.
Syntax: /INFORM
This switch tells SOS to type out how many lines were
deleted by a D or R command, as well as the range of
those lines.
/NOINFORM
This switch tells SOS not to type out the numbers of the
lines affected by a D or R command.
/INITIALIZE
Purpose: To automatically perform setup functions when SOS is
started.
Syntax: /INITIALIZE
The file SOS.INI is invoked as though it was an indirect
command file, and the actions are taken accordingly.
This happens whenever SOS is first started.
/INSERT
Purpose: Cause SOS to prompt you with the first available line
number when creating a new file.
Syntax: /INSERT
This switch tells SOS to automatically enter I(nsert)
mode when creating a new file.
/NOINSERT
This switch causes SOS to prompt you with an asterisk
when creating a new file instead of prompting you with a
line number.
/ISAVE
Purpose: Make SOS automatically save the state of the file after
a selected number of lines is added.
Syntax: /ISAVE:n
Make SOS automatically save the state of the file if "n"
lines have been inserted since the last time the file
was saved. This feature can minimize the loss of
entered data in the event of an interruption of computer
service. Refer to /SAVE for additional file
preservation capabilities.
/LC
Purpose: Enable entry of lower case text.
Syntax: /LC
Allow letters not specifically typed as upper case text
to be interpreted as lower case text in the same manner
as the monitor commands
.SET TTY LC or .SET TTY NO UC
/NOLC
This command causes all text to be interpreted as upper
case text in the same manner as the monitor commands
.SET TTY NO LC or .SET TTY UC
/LDEFINE
Purpose: To define a macro name as a range specification.
Syntax: /LDEFINE:name:range
Define the macro "name" to be the resolved text form of
the "range". Any single line specifier or a range
specifier is legal. All special symbols and
addition/subtraction will be resolved at definition
time. For example, /LDEFINE:XX:200/.+1:*-5/10 might
define XX as 00200/6:05500/10. See also /DEFINE,
/MACRO, and /PURGE for related information.
/LENGTH
Purpose: Define the number of lines per physical page of paper.
Syntax: /LENGTH:n
Set the number of lines that should be printed between
SOS generated page ejects when the "P" command is used
to "n". This command is most useful when doing output
on hard copy devices directly from SOS.
/LF
Purpose: Eliminate stray blank lines between printed lines on
display terminals.
Syntax: /LF
This switch allows SOS to eliminate stray blank lines
that may occur on a display terminal when the "P"
command or the Line Feed key is used to type a file on
your terminal.
/NOLF
This switch disables the above feature.
/LMAR
Purpose: Set the left margin for SOS text justification.
Syntax: /LMAR:n
This switch sets the left margin for text justification
to character position "n". The left most character
position in any line is considered to be position 1.
/LOCATION
Purpose: To list the first line/page in the editing buffer.
Syntax: =LOCATION
The first line/page number in the editing buffer is
listed. Note the current line/page may be found with
the command "=."
/LOWER
Purpose: Make lower case the default input mode for characters
typed on a Model 33 Teletype.
Syntax: /LOWER
This switch makes all letters entered into a file be in
lower case unless the letter is preceded by an
apostrophe. When /LOWER is set, upper case characters
in a line printed by SOS will be preceded by an
apostrophe. Refer to /C64, /C128, /DPY, /M33, /M37,
/STANDARD, and /UPPER for additional information.
/MACRO
Purpose: To enable a macro facility.
Syntax: /MACRO
Allow macros to be expanded. A macro is expanded into
text, and the text used in place. It can be used in any
context, and can be some, all, or multiple commands, or
used in insert mode. When /MACRO is enabled, angle
brackets (< and >) are treated specially, and are used
to delimit macro names. See also /DEFINE, /LDEFINE, and
/PURGE for related information.
<name>
Expand the macro "name".
<name,n>
Expand the macro "name" n times.
<name,*>
Expand the macro "name" until a command error is
generated.
<name(arg,arg)>
Expand the macro "name" with arguments "arg".
/MAXLN
Purpose: Define the largest line number to allow on an SOS
"page".
Syntax: /MAXLN:n
Set the largest line number allowed on any SOS page to
"n". If, when doing an operation other than an
insertion, the next line number would exceed "n", SOS
will automatically insert a page mark in the file and
restart the sequencing.
/M33
Purpose: Inform SOS that you are using a Model 33 Teletype.
Syntax: /M33
When /M33 is used, SOS will provide character
translation for left and right curly braces and the
garroted bar. Control characters will be translated
according to the table given with /C128. Since Model 33
Teletypes do not have lower case, all lower case
characters are preceded by an apostrophe. Refer to
/C64, /C128, /DPY, /LOWER, /M37, /STANDARD, and /UPPER
for additional information.
/M37
Purpose: Inform SOS that you are using a Model 37 Teletype.
Syntax: /M37
When /M37 is used, SOS will not provide character
translation for left and right curly braces and the
garroted bar, as a Model 37 terminal has these
characters. Control characters will be translated
according to the table given with /C128. Since Model 37
Teletypes have lower case, all lower case characters are
printed as is. Refer to /C64, /C128, /DPY, /LOWER,
/M33, /STANDARD, and /UPPER for additional information.
/NAME
Purpose: Define the output file name for the current edit.
Syntax: /NAME:file spec.
This option causes SOS to write the output of the edit
to "file spec.", instead of updating the original file.
/NEWALTER
Purpose: Allow the use of the new alter command set.
Syntax: /NEWALTER
This allows the use of a new alter command set with
extended features and more mnomnic commands.
/OLDALTER
The old alter command set is enabled again.
/NEWCOMMAND
Purpose: To select a new command set.
Syntax: /NEWCOMMAND
This selects a new set of commands. For more
information, see /OLDCOMMANDS for a list of changes.
/NOVICE
Purpose: This switch tells SOS that you are not an expert user.
Syntax: /NOVICE
This command, which is equivalent to /NOEXPERT, causes
SOS to use full length error messages instead of 3
character abbreviations. SOS will ask for verification
when a D(elete) or R(eplace) that would remove an entire
page is attempted. In addition, SOS will not allow the
D and R commands to be used without a period (e.g., "D"
is not an acceptable substitute for "D."). /NOVICE is
the inverse of /EXPERT.
/NUMBER
Purpose: Print the line numbers at your terminal when editing.
Syntax: /NUMBER
This switch causes SOS to type the line number
associated with a line whenever it must type the line.
/NONUMBER
This switch prevents SOS from typing the line number
associated with a line whenever a line must be typed.
/OLD
Purpose: Allow two levels of backup files.
Syntax: /OLD
If /OLD is used, SOS will create a file of the same name
as the one you are editing, but with the extension
changed to .OLD provided such a file does not already
exist. If a .OLD file does exist, SOS will create a
.BAK file instead. Refer to /BAK and /QZBAK for
additional information.
/NOBAK
This switch disables /BAK, /OLD, and /QZBAK, thus
preventing creation of any backup files by SOS.
/OLDALTER
Purpose: Allow the use of the old format command set.
Syntax: /OLDALTER
The old alter command set is enabled again.
/NEWALTER
This allows the use of a new alter command set with
extended features and more mnonmic commands.
/OLDCOMMAND
Purpose: To select an old command set, compatible with SOS
version 21.
Syntax: /OLDCOMMAND
This makes commands that may have changed, compatible
with SOS version 21/23 as much as possible, sometimes
sacrificing new features or cleaner command
implementations. This has the following effects:
/QZBAK is the default. This writes *.Q?? and *.Z??
backup files.
/EXPERT defaults /NOINFORM, /NOVICE defaults /INFORM.
Exit options S and B mean unsequence and nobackup,
respectively.
N is treated like NF (renumber file) instead of
renumbering the current page only.
The default STEP and START are 100, and not 10.
In alter mode, V means invert case of word, # means
invert case to the end of the line, X means replace the
current word, and T means to extend the line.
/NEWCOMMAND
Disables /OLDCOMMAND, and the associated changed
commands.
/OPTION
Purpose: Select special editing options from SWITCH.INI.
Syntax: /OPTIONS:name
This switch causes SOS to process the line in SWITCH.INI
beginning with "SOS:name/switches" in addition to the
line beginning with "SOS/switches".
/PLINES
Purpose: Define the default number of lines to print in response
to a "P" command that does not specify a line range.
Syntax: /PLINES:n
Set the number of lines to print for a "P" command that
does not specify a line range to "n". A "P" command
with no line range will also terminate at a page
boundary.
/PMAR
Purpose: Set the paragraph margin for SOS text justification.
Syntax: /PMAR:n
This switch sets the indentation for the first line of a
paragraph to character position "n". The left most
character position in any line is considered to be
position 1.
/PROGRAM
Purpose: Disable entry of lower case text.
Syntax: /PROGRAM
This command causes all text to be interpreted as upper
case text in the same manner as the monitor commands
.SET TTY NO LC or .SET TTY UC
/PROTECT
Purpose: To set the file protection for the output file from SOS.
Syntax: /PROTECT:nnn
This switch sets the file protection for the file to be
written by SOS to "nnn".
/PURGE
Purpose: To purge all currently defined macros.
Syntax: /PURGE
All currently defined macros are deleted. See also
/DEFINE, /LDEFINE, and /MACRO for related information.
/QZBAK
Purpose: Allow two levels of backup files in a manner similar to
DEC release SOS.
Syntax: /QZBAK
When this switch is selected, the .BAK file will be
given the extension of the form .Qxx, where xx is the
last two letters in the original extension. For
example, if the original extension was .MAC, the backup
file with /QZBAK selected would become .QAC. Also, the
.OLD file will be given an extension of .Zxx. Use of
this switch allows a user to keep backup files from
files of the same name but with different extensions
simultaneously. Refer to /OLD and /BAK for additional
information.
/NOBAK
This switch disables /BAK, /OLD, and /QZBAK, thus
preventing creation of any backup files by SOS.
/NOQZBAK
This switch disables /QZBAK without affecting /BAK or
/OLD.
/R
Purpose: Look at a file in Readonly mode.
Syntax: /R
This switch allows you to look at a file in a manner
that prevents alterations to the file. Use of this
switch saves most of the overhead of scanning a file,
and this in turn speeds up the scanning process. Note
that if "ED" is used to exit a file for which /R is
selected, SOS will attempt to delete the file as
described under /DELETE. /R can only be turned off by
exiting SOS. Refer to /X for additional information.
/READONLY
Purpose: Look at a file in Readonly mode.
Syntax: /READONLY
This switch allows you to look at a file in a manner
that prevents alterations to the file. Use of this
switch saves most of the overhead of scanning a file,
and this in turn speeds up the scanning process. Note
that if "ED" is used to exit a file for which /READONLY
is selected, SOS will attempt to delete the file as
described under /DELETE. /READONLY can only be turned
off by exiting SOS. Refer to /X for additional
information.
/REFDLY
Purpose: Establish a delay time for screen refreshes.
Syntax: /REFDLY:n
This switch allows you to establish a minimum delay time
before the screen is refreshed when /DISPLAY is
selected. Normally, SOS will refresh the line after
each character is entered. If /REFDLY:n is selected,
SOS will refresh the line only if "n" milliseconds have
elapsed since the last character was typed in. This
reduces the number of characters transmitted to the
terminal, while still maintaining the convenience of
continuous updates.
/RONLY
Purpose: Look at a file in RONLY mode.
Syntax: /RONLY
This switch allows you to look at a file in a manner
that prevents alterations to the file. Use of this
switch saves most of the overhead of scanning a file,
and this in turn speeds up the scanning process. Note
that if "ED" is used to exit a file for which /RONLY is
selected, SOS will attempt to delete the file as
described under /DELETE. /RONLY can only be turned off
by exiting SOS. Refer to /X for additional information.
/RMAR
Purpose: Set the right margin for SOS text justification.
Syntax: /RMAR:n
This switch sets the right margin for text justification
to character position "n". The left most character
position in any line is considered to be position 1.
/RULER
Purpose: Provide a ruler for aligns columns.
Syntax: =RULER A ruler labeling the columns will be
typed out. It is of the form: 123456789 123456789 ....
to terminal width
/RUN
Purpose: This switch allows setting the name of the program to be
run in response to a "G" command.
Syntax: /RUN:file spec
This will cause the program given by "file spec" to be
run when SOS is exited with a "G" command. The default
program is "SYS:COMPIL", which will cause the last
EXECUTE, LOAD, etc., command to be repeated.
/SAVE
Purpose: Make SOS automatically save the state of the file after
a selected number of modifications is made.
Syntax: /SAVE:n
Make SOS automatically save the state of the file if "n"
lines have been modified since the last time the file
was saved. This feature can minimize the loss of
entered data in the event of an interruption of computer
service. Refer to /ISAVE for additional file
preservation capabilities.
/SEPARATOR
Purpose: Allow "%", "$", and "." to be treated as delimiters in
F(ind) and S(ubstitute) commands.
Syntax: /SEPARATOR
This switch causes "%", "$", and "." to be treated as
separators in F and S commands. A separator is normally
defined as any character which is not a letter, number,
"$", "%", or ".".
/NOSEPARATOR
This switch restores the default condition of treating
"$", "%", and "." in the same manner as letters and
digits in F and S commands.
/SEQUENCE
Purpose: Force sequence numbering of the SOS output file.
Syntax: /SEQUENCE
This switch results in SOS writing a sequence numbered
output file in response to an "E", "G", or "W" command
that does not specify "S", "U", or "X".
/NOSEQUENCE
This switch, which is equivalent to /UNSEQUENCE, results
in SOS writing an unsequence numbered output file in
response to an "E", "G", or "W" command that does not
specify "S", "U", or "X".
/STANDARD
Purpose: Inform SOS that you are using a standard terminal.
Syntax: /STANDARD
This switch informs SOS that the terminal in use is
neither a CRT nor a Model 33 or 37 Teletype. SOS will
process ^R, ^U, and RUBout itself. When ^R is typed,
the entire line, including the line number, will be
retyped up to the current cursor position. ^U will
cause the line number to be retyped, but the rest of the
line will be forgotten. RUBout will cause the
characters passed over to be echoed, but they will be
separated from the rest of the line by backslashes.
Lower case text, special characters, and control
characters are entered into the file by using the
terminal keyboard, rather than by depending on SOS for
character translations. Refer to /C64, /C128, /DPY,
/LOWER, /M33, /M37, and /UPPER for additional
information.
/START
Purpose: Define the default starting value to use for the first
line number on each page when reading in an unsequenced
file.
Syntax: /START:n
Set the default value for the first line number on each
page of an unsequenced file to "n". This switch may be
selected only on the SOS command line or via a
SWITCH.INI file.
/STEP
Purpose: Define the default line increment to use for numbering
each line on a given page when reading in an unsequenced
file.
Syntax: /STEP:n
Set the default value for the line increment on a given
page of an unsequenced file to "n". This switch may be
selected only on the SOS command line or via a
SWITCH.INI file.
/STRING
Purpose: To list the current strings used in the last F(ind) and
S(ubstitute) command.
Syntax: =STRING
The strings used in the last F(ind) and S(ubstitute)
command are listed. If no strings are given in a F or S
command, these strings will be used again.
/TELL
Purpose: To inform the user what file name SOS used for output.
Syntax: /TELL
This switch will cause SOS to type out the name of its
output file after a "E", "G", or "W" command is used.
/NOTELL
This switch will prevent SOS from typing out the name of
its output file after an "E", "G", or "W" command is
used.
/TEXT
Purpose: Enable entry of lower case text.
Syntax: /TEXT
Allow letters not specifically typed as upper case text
to be interpreted as lower case text in the same manner
as the monitor commands
.SET TTY LC or .SET TTY NO UC
/UC
Purpose: Disable entry of lower case text.
Syntax: /UC
This command causes all text to be interpreted as upper
case text in the same manner as the monitor commands
.SET TTY NO LC or .SET TTY UC
/NOUC
Allow letters not specifically typed as upper case text
to be interpreted as lower case text in the same manner
as the monitor commands
.SET TTY LC or .SET TTY NO UC
/UNSEQUENCE
Purpose: Inhibit sequence numbering of the SOS output file.
Syntax: /UNSEQUENCE
This switch, which is equivalent to /NOSEQUENCE, results
in SOS writing an unsequence numbered output file in
response to an "E", "G", or "W" command that does not
specify "S", "U", or "X".
/UPPER
Purpose: Make upper case the default input mode for characters
typed on a Model 33 Teletype.
Syntax: /UPPER
This switch makes all letters entered into a file be in
upper case unless the letter is preceded by an
apostrophe. When /UPPER is set, lower case characters
in a line printed by SOS will be preceded by an
apostrophe. Refer to /C64, /C128, /DPY, /M33, /M37,
/STANDARD, and /LOWER for additional information.
/WIDTH Purpose: /WIDTH allows setting of the terminal line width.
Syntax: /WIDTH:n
This switch will set the terminal line width to "n"
characters. "n" must lie between 16 and 200 inclusive.
If more than "n" characters are typed on a line, the
operating system will break the line visually at your
terminal and move the carriage to the beginning of the
next line. The setting of this switch has no effect on
the data entered in the file. To have a Carriage Return
automatically inserted in the file at specified
intervals, see /CRLF.
/WINDOW
Purpose: This switch allows you to change the size of the SOS
edit window.
Syntax: /WINDOW:n
"n" is the size of the in-core window to the file and
defaults to about 1620 (decimal) words. If "n" is less
than or equal to 256, it is the window size in nK;if
greater than 256, it is the size in words. Larger
window sizes can speed up editing on large files, but
may degrade your response, as SOS will need more core.
If the value of "n" is so large that SOS cannot get
enough core to satisfy it, SOS will use the default
window size. See /WMAXIMUM, /WMINIMUM, and /WRATIO for
additional information.
/WMAXIMUM
Purpose: This switch allows you to change the size of the largest
possible edit window.
Syntax: /WMAXIMUM:n
"n" is the size of the largest possible in-core window
to the file and defaults to 12K (decimal) words. If "n"
is less than or equal to 256, it is the maximum window
size in nK;if greater than 256, it is the size in words.
SOS divides the file size by the value of /WRATIO, and
then uses the result as the window size. If the
computed size would be less than the /WMINIMUM value,
the /WMINIMUM is used. If the computed size would
exceed /WMAXIMUM, the /WMAXIMUM value is used. A user
specified /WINDOW value will override the SOS computed
value. Larger window sizes can speed up editing on
large files, but may degrade your response, as SOS will
need more core. Refer to /WINDOW, /WMINIMUM, and
/WRATIO for additional information.
/WMINIMUM
Purpose: This switch allows you to change the size of the
smallest possible edit window.
Syntax: /WMINIMUM:n
"n" is the size of the smallest possible in-core window
to the file and defaults to 1K (decimal) words. If "n"
is less than or equal to 256, it is the minimum window
size in nK;if greater than 256, it is the size in words.
SOS divides the file size by the value of /WRATIO, and
then uses the result as the window size. If the
computed size would be less than the /WMINIMUM value,
the /WMINIMUM is used. If the computed size would
exceed /WMAXIMUM, the /WMAXIMUM value is used. A user
specified /WINDOW value will override the SOS computed
value. Larger window sizes can speed up editing on
large files, but may degrade your response, as SOS will
need more core. Refer to /WINDOW, /WMAXIMUM, and
/WRATIO for additional information.
/WRATIO
Purpose: This switch allows you to change the number SOS uses to
compute the initial window size from the file size.
Syntax: /WRATIO:n
"n" is the number SOS will divide into the file size to
get an initial estimate for a window size. /WRATIO
defaults to 4. If the computed size would be less than
the /WMINIMUM value, the /WMINIMUM is used. If the
computed size would exceed /WMAXIMUM, the /WMAXIMUM
value is used. A user specified /WINDOW value will
override the SOS computed value. Larger window sizes
can speed up editing on large files, but may degrade
your response, as SOS will need more core. Values of
/WRATIO in excess of 10 will greatly impair your
response. Refer to /WINDOW, /WMAXIMUM, and /WMINIMUM
for additional information.
/X
Purpose: Look at a file in eXamine mode.
Syntax: /X
This switch allows you to look at a file in a manner
that prevents alterations to the file. Use of this
switch saves most of the overhead of scanning a file,
and this in turn speeds up the scanning process. Note
that if "ED" is used to exit a file for which /X is
selected, SOS will attempt to delete the file as
described under /DELETE. /X can only be turned off by
exiting SOS. If the file is unsequenced, /X is the same
as /R plus /NONUMBER. If the file is sequenced, /X is
equivalent to /R.
/XINSERT
Purpose: To control the inserting of new lines in eXtend mode.
Syntax: /XINSERT
Allow new lines to be inserted if <CR> is typed in
eXtend mode, and the global line increment allows such a
line.
/NOXINSERT
Do not allow new lines to be inserted if a <CR> is typed
in eXtend mode.
/XSEQUENCE
Purpose: Write the SOS output file in the same sequencing format
as the SOS input file.
Syntax: /XSEQUENCE
This switch results in SOS writing a file whose
sequencing format is the same as that of the input file.
If a file is being created, /XSEQUENCE is the same as
/UNSEQUENCE. "S", "U", or "X" can be used on an "E",
"G", or "W" command to override this switch setting.