Trailing-Edge
-
PDP-10 Archives
-
T10_T20_MS_V10_SRCS_830128
-
ms20.hlp
There are no other files named ms20.hlp in the archive.
Version
This help file reflects DECmail/MS version 10(2124), running
under TOPS-20.
The SHOW VERSION command will display MS's version number,
GLXLIB's version number (GLXLIB is a subroutine library used
by MS), and a list of optional features which the current
version supports (such as networks).
Introduction
DECmail/MS is a product that provides facilities for
sending and receiving messages, and for filing, retrieving,
editing, and discarding these messages. This help file ex-
plains how to use MS. MS is that part of DECmail/MS which
provides a command-mode user interface; it is the only pro-
gram that you actually communicate directly with (although
there are other programs performing tasks invisibly in the
background). MS is extensively tailorable to individual
taste and styles of usage, and yet is easy for the novice or
infrequent user to use. The structured HELP command makes
it self-documenting. This file (MS.HLP) is separated into
pages, one page per topic. The name of the topic appears on
the first line of each page. This is how the HELP command
in MS can select that part of the documentation pertaining
to a single topic.
o If this is your first exposure to TOPS-20, you
should give the command HELP NOVICE first.
o If you are familiar with TOPS-20-style command
parsers (that is, you know about the functions of
the ESC and ? keys), but not with electronic mail
systems similar to MS, you should say HELP
VOCABULARY and HELP COMMAND-LEVELS first.
o If you are already familiar with TOPS-20-style
command parsers and you have used other electronic
mail systems before, you probably need only to type
? a lot and feel your way around.
For all users, it is recommended that you read the
documentation under HELP COMMAND-LEVELS before first using
MS.
Novice
If you've gotten this far, you already know how to get into
MS and how to use the HELP command. This section explains
elementary usage of MS. But first, a little terminology.
YOUR KEYBOARD
The keyboard of the terminal you're using is almost
exactly like that of a modern electric typewriter. The
major difference is that there are a few new keys, and one
or two with different meanings.
CARRIAGE-RETURN or RETURN (sometimes called CR, RET, <ret>,
or <return>)
This key has the usual meaning of telling the
terminal that you're done with the current line of text and
wish to move on to the next line. It also indicates to MS
that you're finished typing a command, and would now like MS
to act upon the command. All MS commands must be finished
with RETURN and MS will not act upon the command until
you've pressed the RETURN key.
ESCAPE (sometimes called ESC, or ALTMODE on older terminals)
This key, usually found at the upper lefthand corner
of the keyboard, performs a particularly useful function
called RECOGNITION. Many MS commands have long names, and
to have to type the name out in entirety would become rather
dreary. In order to save you some typing, MS will allow you
to type only as much of the command name as is necessary to
uniquely specify it. For example: suppose there are only
three commands beginning with the letter T: TAKE, TAPE, and
TWIST. If you typed only TA, MS cannot know whether you
mean TAKE or TAPE, since both begin with TA. If, however,
you type TW, MS knows you mean TWIST. Similarly, TAK could
be a valid abbreviation for TAKE and TAP for TAPE.
Using abbreviations at all times can save you
typing, but can look rather cryptic. And you sometimes
don't know how much of a command you need to type before MS
will be able to recognize it, especially when you're just
starting out.
The ESCAPE key makes all this much easier. If you
think you've typed enough of a command for MS to recognize,
press the ESCAPE key. If you have typed enough of the name,
MS will finish typing the name for you. If you haven't
typed enough, so that what you have typed is ambiguous, MS
will ring the terminal's bell. And if there are no commands
beginning with the abbreviation you've typed, MS will tell
you that.
Returning to our previous example, where the only
three commands beginning with the letter T were TAPE, TAKE,
and TWIST, if you were to type TW and then press the ESCAPE
key, MS would type the letters IST, to complete the word
TWIST.
Using recognition has one additional advantage: if
the command whose name is being typed requires additional
information, pressing the ESCAPE key will cause MS to type
"guide words", in parentheses, which hint at what you are
expected to type next. In our example, if you typed
TW<ESC>, you might see this on your screen:
MS>TWist (and shout)
The words "and shout" are the guide words for the
TWIST command. This example is a bit whimsical, but does
illustrate how recognition and guide words act together to
help lead you through the commands.
CONTROL CHARACTERS
Another key on your terminal which is not found on
typewriter keyboards is the CONTROL key, which is usally
labelled CTRL. This works much like the SHIFT key, in that
it does nothing by itself, but modifies the action of any
key you press while holding the CTRL key down. Characters
typed while holding the CTRL key down are called CONTROL
CHARACTERS; for instance, the character you generate when
you hold the CTRL key down and type the letter A is called
ctrl-A. The most useful control character to you right now
is ctrl-Z. You use ctrl-Z to tell MS that you have finished
typing the text of a message you're sending and that MS can
now send the message. You would not want to use any
ordinary text character for this purpose, because that text
then would not be allowed in the text of a message you're
sending. Since control characters don't ordinarily print
anything on your screen, but simply instruct the system to
do something for you, they are the only good way to type
commands to the system while you're entering the text of a
message.
QUESTION MARK
At any time, if you are not sure what commands or
arguments MS has available, you can type a question mark and
MS will list them all for you. This is very similar to
"menu mode" in other systems, except that the menu is shown
only when you request it by typing a question mark. For in-
stance, when you first run MS, it prompts you by typing
MS>
and awaits your first command. This is called TOP LEVEL.
At this point, to get a list of all the available top level
commands, type a question mark, and they will be displayed.
You give MS a command by typing the command's name,
possibly followed by additional information (depending on
the particular command), and then typing a RETURN. The
additional information you supply is called the "arguments"
to the command. If MS prompts you with anything other than
MS>
then you have entered another command level. The QUIT
command always returns you to the previous level. This
is the end of the NOVICE part of MS's documentation. We re-
commend now that you skim the information under HELP
COMMAND-LEVELS and HELP VOCABULARY; there is a lot of in-
formation there, but for now just try to skim it once. Then
try HELP SEND and HELP READ, and try sending yourself some
mail. That should get you started.
Vocabulary
MESSAGE
MS sends, receives, and files messages. These are exactly
analagous to office memos; they are sent "To:" some people,
and "cc:" to others. They have a subject, and some text.
They also have a date, which is supplied automatically when
you send the message. A message is composed of two parts:
the "header area", at the top of the page in which a message
occurs, contains things like the date, subject, to and cc
lists, and other identifying information; the "text part"
contains the actual text of the message.
MESSAGE HEADER
The first few lines of a message are called the header area,
or message header. The header area is separated from the
text of the message by a blank line. The header area
consists of several "header-items". A header-item consists
of the header-item's name, a colon, and then the data
portion of the header-item (which may extend over more than
one line). Typical header-items that MS always supplies in-
clude the date the message was sent, the subject, to and cc
lists, and the name of the sender. You may use the DEFINE
HEADER-ITEM command to define your own header-items. Here
is a sample message:
Date: 12 Sep 81 1445-EST
From: Larry Campbell <LCampbell at DEC-MARLBORO>
To: Joe Newcomer at CMU-10A, Hurley at KL2102
cc: Fred the New Guy at MIT-XX, Engel at KL2102, Hall at KL2102,
Purretta at KL2102, Another User at MIT-XX
Subject: This is a test
Hi! This is just a test of this system.
This is the message text.
-------
In this example, the first six lines, beginning with
"Date:" and ending with "Subject:", are the header area.
Next is a blank line, which separates the header area from
the message text. Finally there are two lines of message
text and the closing line, contain a string of hyphens.
There are five header-items present in this message:
"Date:", "From:", "To:", "cc:", and "Subject:". The "cc:"
item in this message illustrates the case of a header-item
which is too long to fit on one line. The strings
DEC-MARLBORO, MIT-XX, KL2102, and CMU-10A are all the names
of different computers in a network. To fully specify an
address, you need both the user's name and the name of the
computer that he or she uses.
FILE
A file is similar to the contents of an ordinary file
folder. A file has a name, called a FILESPEC (short for
file specification). Although a filespec can have up to
four parts (the DEVICE, DIRECTORY, NAME, and EXTENSION),
ordinarily you can ignore the device and directory and use
only the name and extension. A file name or extension can
consist of any sequence of letters, numbers, and hyphens up
to 39 characters long; it must not contain spaces, dots, or
other special characters. For instance, "name1", "budget",
"memo-to-the-president", and "my-letter" are all valid
names. "This is my letter" is not; it contains spaces.
The extension is separated from the name by a dot, so that
MAIL.TXT is a file whose name is MAIL and whose extension is
TXT. For more information about filespecs, see the TOPS-20
User's Guide.
MESSAGE FILE
MS deals with message files, one at a time. A message file
is simply a file containing one or more messages. MS can
only handle one file at a time, but it is simple to put one
file away and take another out to look at. Each message in
a file has a MESSAGE NUMBER; the messages are numbered from
one on up to however many messages there are in the file.
CURRENT MESSAGE FILE
Since MS can only handle one message file at a time, the one
you are currently dealing with is called the current message
file. You may think of MS as a desk which is only big
enough to hold one file folder.
MAIL FILE
Every user has his or her own personal message file. This
is exactly analogous to an in basket. All incoming messages
go into your message file. It is called MAIL.TXT (the name
is MAIL and the extension is TXT).
USERNAMES
You send messages to, and receive them from, users of a com-
puter. Each user of a computer has a username, which is the
name by which the computer knows that person. When sending
to another TOPS-20 system, or a TOPS-10 system, usernames
generally follow the same rules as file names; up to 39
characters of letters, digits, and hyphens. When sending to
a system which does not run TOPS-10 or TOPS-20, the rules
for forming usernames may be different. If you are sending
to a user whose username contains characters not allowed in
TOPS-10/TOPS-20 usernames (like parentheses, spaces, and the
like), then you must enclose the username inside double
quotes.
ADDRESSES
An address tells MS where to send a message. There are two
kinds of address, depending on whether the person you are
sending to uses the same computer that you do (LOCAL
ADDRESS) or a different one (NETWORK ADDRESS, because their
computer is connected to yours through a computer network).
A local address is just a username. A network address has
two parts: a username (just like a local user), and a HOST
NAME, which names the computer that they use. For instance,
somebody who uses a computer called HOST2 and who has a
username of Joe would have a NETWORK ADDRESS of "Joe at
HOST2".
Command-levels
MS has three command levels: top level, read level, and
send level. Each command level has a different prompt, and
each level has its own set of commands. TOP LEVEL, which is
the level you see when you first run MS, has commands for
dealing with message files as a whole, or for manipulating
entire groups of messages at once. READ LEVEL operates
after you have selected a message to read, and has commands
for dealing with the current message only. And SEND LEVEL
contains commands for composing, editing, and filing drafts
of messages, and for finally sending the message once it is
complete. At all levels, the QUIT command always returns
you to the previous level; typing QUIT at top level causes
MS to stop.
When you first run MS, you are at top level. MS prompts you
for a command by typing
MS>
The next command level you are likely to see is read level.
It prompts you for a command by typing
MS Read>>
You enter read level by using the READ command. You give
the READ command a message sequence, which tells MS which
messages you want to read. It then types the first message
in the sequence, and prompts you for a command. You may now
type a command to do something with that message, or type
carriage-return to go on to the next message. When there
are no more messages to read, MS returns to top level. For
more details on read level, give the command HELP READ.
Most top level commands which act upon a message sequence
are also available in read level. At read level, instead of
taking a message sequence as an argument, they act upon the
most recently displayed message.
SEND LEVEL is sometimes invoked as part of the process of
sending a message, or composing a message draft prior to
sending it. Send level is invoked in one of the following
four ways:
1) You ask MS to put you there, by typing an ESC while
entering the text of a message you are sending;
2) You use the RETRIEVE DRAFT (q.v.) command to con-
tinue working on a draft which you had previously
saved with the SAVE DRAFT command (q.v.);
3) You use the RETRIEVE LAST-MESSAGE (q.v.) command to
retrieve the draft of the last message you sent;
4) MS puts you there automatically, because it encoun-
tered some problem while sending a message.
The send level prompt is:
MS Send>>
The commands available in send level allow you to modify any
part of a message which you are in the process of sending.
You can add or delete users to the "To:" or "cc:" lists,
change the subject line, edit the text of the message, and
so forth. If MS encounters any difficulties in sending the
message, it will automatically put you into send level, so
that you have a chance to fix the part of the message which
caused the problem. At send level, you can return to the
previous level without sending the message by giving the
QUIT command, or you can give the SEND command, which sends
the message and then returns to the previous command level.
Message-sequence
Most MS commands perform some action on one or more mes-
sages. You need to tell MS which message or messages you
want to act upon, and you do this with a MESSAGE SEQUENCE.
A message sequence simply specifies a group of messages.
The simplest sequence is a message number, or list of
numbers. For instance, the following is a message sequence
which specifies the first six messages in a file:
1,2,3,4,5,6
For example, to read the first six messages in a file, you
might say:
MS>read 1,2,3,4,5,6
A shorthand way to specify the same thing is "1:6". You can
mix these: the message sequence "1:4,7:10" means the same
as "1,2,3,4,7,8,9,10".
You can also select messages based on their contents. For
instance, the message sequence
SUBJECT BUDGET
selects all messages with the word "budget" in the subject.
So the command:
MS>read subject monthly
would be used to read all messages with the word "monthly"
in their subject. Similarly,
MS>read first 9
would let you read the first 9 messages in your current mes-
sage file. One particularly useful message sequence is
called "same". This directs MS to use the same message se-
quence that you used in your last command. For instance,
suppose you want to delete all messages from a certain
person named Jones. However, before deleting them you'd
really like to check and be sure that they are all the mes-
sages you think they are. To do this, you might give the
command:
MS>summarize from Jones
to get a one-line summary of each message from Jones. Once
you're satisfied that you really want to delete all these
messages, you could then say:
MS>delete same
Messages can be selected by date and time, using the
SINCE and BEFORE keywords; by the SUBJECT, FROM and TO
fields; by searching for words in the message text with the
KEYWORD command; by message size with the SMALLER and
LARGER commands; and so on. To get a complete list of all
the possible ways to select messages, type a question mark
when MS prompts you for a message sequence.
Send
The SEND command is used to compose and send a message. It
prompts you for the required information, which includes
"To:", "cc:" (which may be blank), and "Subject:". It then
prompts you for the text of the message. When you have com-
pleted the text of the message, type ctrl-Z, which will
cause the message to be sent immediately.
If, at some point while you are typing the text of the mes-
sage, you realize that you've made a mistake, like omitting
somebody from the "To:" list, you can easily correct it.
Hit the ESC key. This will put you into send level, which
prompts with "MS Send>>", and has several commands which you
can use to alter the current draft of the message. Among
these are the REMOVE command, which removes addresses from
the "To:" or "cc:" list; the ERASE command, which erases
entire fields in the header (like an entire cc list); and
the TEXT command, which returns you to text mode so you can
add text to the draft of the message. If you're at send
level and decide that you really don't want to send the mes-
sage after all, use the QUIT command, which will return you
to the level from which you came. Otherwise, give the SEND
command, which will send the message and then return you to
the previous command level.
Read
The read command is used to read a sequence of messages.
You specify a message sequence after the READ command, or
you can just type READ, in which case you will be shown all
the messages which you have not yet seen. For example,
MS>read subject evaluations
would be used to read all messages with the word
"evaluations" in the subject field, while
MS>read
would be used to read all "new" (that is, not yet seen) mes-
sages. After each message is displayed, MS is at read level
and prompts with:
MS Read>>
You may then type a read level command to do something with
the message just displayed. When you are finished with the
current message, pressing the RETURN key will cause MS to go
on to the next message in the sequence and display it. You
may get a list of all possible read level commands by typing
a question mark when you see the "MS Read>>" prompt.
When you've finished reading all the messages you specified
in the READ command, typing carriage-return to the "MS
Read>>" prompt will return you to the previous command level
(this is usually top level).
Reply
The REPLY command allows you to send a reply to a message
which you have received. MS determines from the message
being replied to who the sender was, and thus who the reply
should go to, so that you need not type in the name of the
recipient. The reply command is available both at top
level, where it takes a message sequence specifying which
messages to reply to, and at read level, in which case it
assumes that you wish to reply to the current message.
There are two possible ways to reply to a message; the
reply can be sent to the sender (only) of the message, or to
the sender and to all recipients of the message as well.
When using the reply command at top level, MS will first ask
you "Reply message 1 to:", to which you reply either ALL or
SENDER-ONLY. When using the reply command from read level,
you can optionally follow the word REPLY with ALL or
SENDER-ONLY; if you omit the second part MS will assume
SENDER-ONLY. (You may change this, and many more assump-
tions that MS makes as well, by using the SET commands
(q.v.).)
Once you have given the REPLY command, it works just like a
SEND command, except that since it knows who to send the
message to it doesn't ask for the "To:" or "cc:" lists. If
you decide that you would like to change the "To:" or "cc:"
lists, you can press the ESC key while entering the text of
the message, which will put you at send level. You can then
use the send level commands to edit the message.
Forward
The FORWARD command, available at both top level and read
level, allows you to forward a message which you have
received to another user. Its usage is straightforward; it
prompts for the "To:" and "cc:" lists, just as the send
command does. It does not prompt for the subject; instead
it supplies the subject of the forwarded message. It then
prompts you for text; this text is inserted in front of the
forwarded message. This is useful for adding your own
comments about the forwarded message.
Answer
ANSWER is just a synonym for REPLY; see the REPLY command.
Copy
The COPY command, available from both top level and read
level, places a copy of a message into a file. This is
useful if you wish to collect a set of related messages into
one place. The COPY command requires that you supply the
name of the file in which to place the message. The message
is appended to the file you name; the existing contents of
the file are preserved. If the file does not exist, it is
created. You may examine and manipulate the contents of
message files which you create this way with the GET command
(q.v.).
Move
The MOVE command, available from both top level and read
level, allows you to move a message into a different file.
It works exactly as if you had used the COPY command (q.v.)
to copy the message into the other file, and then used the
DELETE command to delete the message.
Delete
The DELETE command, available from both top level and read
level, allows you to delete messages from the current mes-
sage file. Messages which you delete don't disappear imme-
diately, but are marked as deleted. They do not actually
disappear until you give the EXPUNGE or EXIT command. If
you accidentally delete a message which you really wish to
keep, you may use the UNDELETE command to get it back,
unless an expunge has occurred. Once you have expunged a
message, you cannot get it back.
Summarize
The SUMMARIZE command, available from both top level and
read level, gives you a one-line summary of each message
specified. The line looks something like this:
NFAD 12-Jul Fred at OFFICE-3 |This Monday's meeting (549 chars)
The letters at the beginning of the line are called the mes-
sage flags. Each letter has a meaning, and appears only
when it applies. The letters' meanings are:
F - the message is Flagged
A - the message has been Answered
D - the message is Deleted
N - the message is New (that is, you haven't seen it yet)
The next column is the date of the message. Next is the
name of the user who sent the message, in this case, Fred at
OFFICE-3. The next column, beginning at the vertical bar ()
character, is the subject of the message; if it is so long
that it would run off the right margin, then it is trun-
cated. And last, in parentheses, is the length of the mes-
sage, in characters.
If the message was sent by you (this can happen if you are
saving your outgoing messages in your mail file, or if you
explicitly sent a copy to yourself), instead of displaying
the "From:" field in the third column, MS will display the
"To:" field of the message, preceded by the word "To:". For
example:
NFAD 12-Jul To: Fred at OFFICE-3 |This Monday's meeting (549 chars)
For information on saving your outgoing messages, give the
command HELP SAVE.
Flag
The FLAG command, available from both top level and read
level, allows you to flag certain messages as important.
You may wish, for instance, to read all your mail quickly,
and flag the important messages, so that you can later come
back and say READ FLAGGED, which will display all the
flagged messages on your terminal. The UNFLAG command will
turn off the flag on a message.
Init-file
An "init file" is a file which contains MS commands. These
commands are executed by MS every time it starts up. This
is useful for setting parameters (see the SET command
description) and having them remembered permanently. You
can create an init file either with an editor, or with the
MS command CREATE-INIT-FILE. If you create the file with an
editor, the file must be named MS.INIT. For information on
the CREATE-INIT command, give the command HELP CREATE-INIT.
There may be a default, system-wide init file which takes
effect for those users who do not have their own. This file
is called SYSTEM:MS.INIT. If you create your own init file,
however, MS takes commands only from your init file and no
longer takes them from the system init file. If you wish to
always use the system-wide init file (quite possible,
because it may contain important system-wide defaults or ad-
dress-list definitions), you can continue to do so by
putting the following command in your own init file:
TAKE SYSTEM:MS.INIT
Check
Every time MS updates your message file, and every time it
returns to the top-level prompt, it checks the current mes-
sage file to see if any new messages have arrived. If new
messages have arrived, MS notifies you by displaying a
one-line summary of each new message. To force MS to check
immediately for new messages, give the CHECK command. If
new messages have arrived, MS will display the new state of
the message file, along with a one-line summary of each new
message.
Get
The GET command causes MS to read in a new message file. It
expects, as an argument, the name of the message file you
wish to read. Once MS reads the file, it will type a couple
of lines of status information about the file. You can then
use any of MS's top-level commands to manipulate the file.
Save
There are two SAVE commands: SAVE OUTGOING-MESSAGES and
SAVE DRAFT.
SAVE OUTGOING-MESSAGES
This command allows you to keep a record of all messages
which you send. It takes a filespec as an argument, and
once this command has been given, every message which you
send is copied into the file you named. You may examine the
contents of this file by using the GET command (q.v.). This
command is most commonly placed into an init-file (q.v.).
SAVE DRAFT
The SAVE DRAFT command, available only at send level, allows
you to store a copy of the current draft which you are
working on. The draft includes the "To:" and "cc:" lists,
the subject, and the text of the message. You may then use
the RETRIEVE DRAFT (q.v.) command to retrieve the draft and
continue composing a message.
The SAVE DRAFT command will leave you at send level; if you
wish to send the draft as is, give the SEND command, and if
you wish to quit send level without sending the draft, give
the QUIT command.
Blank
This command clears your screen if you are on a video
terminal and have not previously given a SET NO VIDEO-MODE
command. Some people place this command into their init
file (q.v.) so that when they enter MS for the first time,
they start with a clear screen.
Repair
This command is only applicable to DECNET systems. It
allows you to examine mail which has been returned to you as
undeliverable by the network. It takes, as an argument, the
name of the host which the undeliverable mail was trying to
reach. If more than one undeliverable message ("dead
letter") exists, MS will inform you of that fact and ask you
which one you wish to handle. Once you have successfully
identified a dead letter to MS, the message is displayed on
your terminal and you are placed at send level. You may
then use any of the send level commands to correct the
problem with the message and try to send it again.
Set
The SET commands allow you to alter many of the assumptions
which MS ordinarily makes on your behalf. They also allow
you to customize MS's behavior, and make it more agreeable
with your own particular style of usage. There are many SET
commands, and they are all listed here alphabetically. In
the following descriptions, words enclosed in square
brackets denote optional words; for example:
SET [NO] VIDEO-MODE
This indicates that the word NO is optional. Words or
phrases in lowercase, inside angle brackets, denote the name
of an item which you must supply; for example:
SET REPLY-ADDRESS <address list>
means that instead of typing "<address-list>", you would
actually type a list of addresses. And lists of items
inside curly brackets, separated by vertical bars, denote a
list of choices from which only one must be selected. For
example:
SET DEFAULT { REPLY-TO-ALL | REPLY-TO-SENDER-ONLY }
means you would type either SET DEFAULT REPLY-TO-ALL or SET
DEFAULT REPLY-TO-SENDER-ONLY.
The available SET commands are:
SET AUTO-EXPUNGE (ON) {ANY-EXIT | EXIT-COMMAND-ONLY | NEVER}
Controls automatic expunging of deleted messages.
The default is SET AUTO-EXPUNGE (ON) EXIT-COMMAND-
ONLY.
SET [NO] BRIEF-ADDRESS-LIST-DISPLAY
When brief-address-list-display is in effect, MS
will not type the contents of address lists in mes-
sages being displayed, but instead only the name of
the address list. This makes reading messages which
have been sent to very long address lists less tire-
some. If a message contains a nested address list,
only the name of the outermost list is displayed.
SET [NO] CONCISE-MODE
Shortens some of the messages typed by MS; should
only be set by experienced users.
SET DEFAULT CC-LIST <address list>
Causes the users named in the address list to be
cc'ed on every outgoing message.
SET DEFAULT DIRECTORY (FOR CREATED FILES) { CONNECTED-DIRECTORY |
LOGGED-IN-DIRECTORY |
<directory name> }
Sets the default directory into which created files
go. For more information on directories, see the
DECSYSTEM-20 User's Guide.
SET DEFAULT PROTECTION (FOR CREATED FILES) <protection code>
Causes all files created by MS (by the COPY and MOVE
commands, for instance) to be protected with the
code you specified. For more information on file
protection, see the DECSYSTEM-20 User's Guide.
SET DEFAULT { REPLY-TO-SENDER-ONLY | REPLY-TO-ALL }
Sets the default recipient list for the REPLY
command. SET DEFAULT REPLY-TO-SENDER-ONLY will
cause replies to go to the addressees named in the
"Reply-to:" field of the message being replied to,
or to the sender of the message, if no "Reply-to:"
field exists. SET DEFAULT REPLY-TO-ALL will cause
replies to also be sent to all users in the "To:"
and "cc:" lists as well.
SET [NO] SUMMARY-ON-PRINTER-OUTPUT
When set, causes the first page of any line printer
listing of messages created by the LIST command to
contain a one-line summary summary of each message
listed. This information is the same as that
printed by the SUMMARIZE command.
SET [NO] SUMMARY-PERSONAL-NAME-ONLY
When set, causes the SUMMARIZE command to display
only the personal name of each message, rather than
the full "From:" or "To:" field. For messages with-
out personal names, the entire field is displayed.
SET [NO] INCLUDE-ME-IN-REPLIES
Controls whether you receive copies of your replies
to other users' messages. Has no effect if you have
also given the command SET DEFAULT REPLY-TO-SENDER-
ONLY.
SET LOGOUT-ON-EXIT
This command puts MS into a state where any attempt
to exit from MS will log you off the computer. It
is usually employed for users who wish to use only
MS; the system administrator will put the following
command in their LOGIN.CMD:
MS SET LOGOUT-ON-EXIT
Which will cause them to enter MS immediately upon
logging in, and force them to stay in MS for the du-
ration of the session. For more information on
LOGIN.CMD, see the DECSYSTEM-20 User's Guide.
SET ONLY-HEADERS-SHOWN <header-name> [, <header-name>, ...]
Restricts the amount of header information displayed
by the READ and TYPE commands. If this command is
given, only the headers named will be displayed.
This is particularly useful on slow terminals when
reading messages with large headers. For instance,
SET ONLY-HEADERS-SHOWN to, subject, from
will cause only the "To:", "Subject:", and "From:"
fields to be shown. If you wish to temporarily
override the effect of this command, the VERBOSE-
TYPE command will show the entire message literally.
A less restrictive, and somewhat more flexible, way
of reducing the amount of header information dis-
played is to use the SET SUPPRESSED-HEADERS command
(q.v.).
SET PERSONAL-NAME <your full name>
Causes MS to add your real name to outgoing mail (in
addition to your username). Bear in mind that
certain special characters, including most punctua-
tion characters, are allowed only inside quoted
strings (text enclosed by double quotes). For a
list of special characters, say HELP RFC733.
SET [NO] REPLY-ADDRESS <address list>
SET [NO] REPLY-TO <address list>
These two (synonymous) commands allow you to cause
replies which other users send to your messages to
go to a different place than they ordinarily
would. They cause the following line to be
inserted into every message you send:
Reply-to: <address list>
When the recipient of such a message uses the REPLY
command to compose a reply, the reply will go to the
address(es) specified in the "Reply-to:" line,
rather than to the sender of the message.
SET [NO] SUPPRESSED-HEADERS <header-name>, <header-name>,
...
This command takes, as an argument, a list of
header-names separated by commas, and causes MS not
to display the named header-items when displaying
messages on your terminal. The SET ONLY-HEADERS-
SHOWN command, which is stronger, will override the
effect of this command.
SET [NO] TEXT-SCROLL-REGION [(TO) <number> (LINES)]
On terminals capable of defining scroll regions (for
example, VT100's and VT125's), MS can, in read mode,
scroll only the text of messages being displayed,
while leaving the headers in place. If the header
area of a message is too long, though, this results
in an annoyingly small number of lines being used to
display the message text. The SET TEXT-SCROLL-
REGION command instructs MS to scroll the text of
the message in this manner, but only if <number>
lines are available in which to scroll the text. If
the headers are so big as to not leave <number>
lines available for text, then the headers are
scrolled as well as the text. SET NO TEXT-SCROLL-
REGION tells MS to display messages in the usual
manner, without setting up a scroll region. This is
the default behavior.
SET [NO] TYPE-INITIAL-SUMMARY
Controls whether, when MS starts up, it prints the
initial lines of status information about your mes-
sage file. This information is also printed by the
SHOW STATUS command.
SET [NO] VIDEO-MODE
Turns on or off MS's video display features for
video terminals. The default is SET VIDEO-MODE.
Net-mail
MS handles two kinds of mail: local mail, which goes to and
from users of the same computer which you use, and network
mail, which goes to and from users of other (remote) com-
puters. Ordinarily, the only difference which is important
to you is that when you send mail to remote users, you must
identify the computer which they use, by adding the phrase
"at NAME" to their username, where NAME is the name of the
computer they use.
When you send network mail, it is not delivered immediately
(as local mail is), but is queued for later transmission
("posted for delivery"). If you do nothing after the mail
has been queued, the system will come along at some time in
the future and send your mail. This will occur within a
half an hour. However, if you wish the mail to be sent im-
mediately, you may give the NET-MAIL command. This forces
MS to try to send the mail out immediately. MS will inform
you of its progress in trying to send the mail. If the mail
fails because the other computer cannot be contacted (MS
will say something like "Can't connect because: no path to
destination node"), your mail will remain in the queue, and
the system will send it as soon as the destination becomes
accessible.
Bad-format
Occasionally, a message file will get damaged, either by a
bug in MS, a bug in the computer on which MS runs, or a
hardware problem. If this happens, you will see one of the
following messages from MS:
?File has bad format - last message has no size field
?File has bad format - cannot find start of last message
?File has bad format - message nn has no receive date
If you give a SUMMARIZE ALL command, you will most likely
see some peculiar-looking headers; usually they will have
no Subject, From, or Date field, and the length of the mes-
sage will either be zero, or ridiculously large.
MS can repair almost any kind of damage to a message file.
First, make a copy of the damaged file using the COPY
command. When MS creates a message file (with either COPY
or MOVE), it always writes a correctly-formatted file. If
the file being copied is damaged, MS is forced to make some
assumptions about its format, but in all cases the new file
is correctly formatted. Then use the GET command to read in
the copy you've just made. You should get no error mes-
sages, but you may still have some peculiar-looking headers.
Read the messages with these headers, and if they contain
only garbage, you can delete them. If they contain frag-
ments of real messages, you may want to keep them, rather
than lose the fragments.
Once you have made a good copy of the damaged file, you
should delete the contents of the damaged file to save
space. Return to the damaged file (using the GET command),
delete all the messages, and give the EXPUNGE command.
If the damaged file was your mail file, be aware that your
mail file is now empty (although you have a good copy of
your old mail in another file). If you wish to put the good
copy back into your mail file, use the GET command to get
the good copy, then use the MOVE command to move all the
messages back into your mail file. The filespec of a mail
file is "MAIL.TXT.1"; Be sure to type it completely. This
sequence of commands will look like:
MS>get (messages from file) good-copy
Last read 25-Sep-80 15:22, 53 messages, 12 pages
MS>move (message sequence) all
Into file: mail.txt.1
1:53
MS>
In all cases, instances of damaged message files should be
reported to the person responsible for running your com-
puter, so that the cause can be eliminated.
Retrieve
There are two RETRIEVE commands: RETRIEVE DRAFT and
RETRIEVE LAST-MESSAGE.
RETRIEVE DRAFT
This command, available only at top level, allows you to
retrieve a draft you previously stored with the SAVE DRAFT
(q.v.) command. It retrieves the draft, displays the draft
on your terminal, and leaves you at send level. You may
then give any of the send level commands to manipulate the
draft; most commonly, you would give the TEXT command to
add message text to the draft.
RETRIEVE LAST-MESSAGE
This command, available only at top level, allows you to re-
cover a copy of the last message you sent, so that you may
edit it and resend it. This is typically used when you have
just sent a message, and then realized that you forgot to
include someone in the address lists. This command will
display the message and put you into send level. You may
then use all the send level commands to add or delete users
in the address lists, edit the text of the message, and send
it again.
This command does NOT retract mail; that is, if you have
sent a message to someone and then changed your mind, this
command does not remove the message from the recipient's
mailbox. Once a message has been sent, it has been sent.
What this command does is retrieves the draft of the message
so you need not type it in again.
Define
The DEFINE command allows you to define extensions to MS's
basic capabilities. You can define aliases for users, using
the DEFINE ALIAS command. You can define named address
lists, using the DEFINE ADDRESS-LIST command. And you can
define new header-items, with the DEFINE HEADER-ITEM
command.
DEFINE ALIAS
This command defines an alias for an address. This is
useful when you have a long or non-mnemonic address to which
you frequently send mail, or when you wish to refer to some-
one by other than their real username. The command format
is:
MS>DEFINE ALIAS John (TO BE) Purretta at KL2102
This command will define the alias "John" to be the same as
"Purretta at KL2102". You can now give the alias "John" in
any address specification, such as a to or cc list, and MS
will convert it to the full address for you. Aliases may
also represent a list of addresses, as in:
MS>DEFINE ALIAS Neffs (TO BE) LNeff at KL2102, DNeff at KL2116
To delete an alias definition, give the command DEFINE ALIAS
<name>, where <name> is the name of the alias definition to
be deleted. To delete all alias definitions, give the
command DEFINE ALIAS *.
DEFINE ADDRESS-LIST
This command allows you to define named address lists.
These behave almost exactly like aliases, with one excep-
tion: the name of the address list is shown in the message.
For example, if you defined the following address list:
MS>DEFINE ADDRESS-LIST Task-force (TO BE) LCampbell, King, Jones, Dickson
and then sent mail to "Task-force", the mail received would
have a "To:" field looking like:
To: Task-force: LCampbell, King, Jones, Dickson;
System administrators may find this command useful in
defining mailbox names which refer to subjects; for in-
stance, rather than expecting users to know who maintains a
particular program, the system administrator could put the
following commands in the system MS.INIT (init file):
DEFINE ADDRESS-LIST MS-Bugs LCampbell at 2102
DEFINE ADDRESS-LIST EMACS-Bugs RMS at MIT-AI
To delete an address-list definition, give the command
DEFINE ADDRESS-LIST <name>, where <name> is the name of the
address-list to be deleted. To delete all address-list de-
finitions, give the command DEFINE ADDRESS-LIST *.
DEFINE HEADER-ITEM
This command allows users to define header-items. A header-
item is a field which appears in the header portion of a
message; that is, the portion before the first blank line.
These fields consist of a keyword, a colon, and possibly
some data. MS has six header-items built in to it: "To:",
"Subject:", "Date:", "From:", "cc:", "In-reply-to:". The
DEFINE HEADER-ITEM command allows you to define your own new
header-items.
To define a header-item, you must supply its name, its
flavor, and its type. If you wish the data for the header-
item to be predefined, you must enter that as well.
Header-items come in three flavors: optional, predefined,
and required.
1) An optional header-item is one which you may elect
to include in an outgoing message, but which is not
required. MS will not prompt you for it, so to in-
clude it, you must use the send-level command
INCLUDE.
2) A predefined header-item is one whose data is
defined in advance. MS will not prompt for it, but
it will be included in all outgoing messages. An
example of a predefined header-item might be your
telephone number or postal address.
3) A required header-item is one whose data is not sup-
plied in advance, and which must be supplied before
sending any message. MS will prompt you for these
header-items every time you send a message.
Header-items also come in six types. These types are: ad-
dress, date, date-and-time, time, text-string, and keyword.
When defining a keyword header-item, you must supply a list
of legal keywords for that header-item. Predefined keyword
header-items don't make much sense, and are not allowed.
Here is an example of defining your telephone number so that
it is always included in messages you send:
MS>DEFINE HEADER-ITEM Phone (TYPE) predefined text-string 475-6446
Message which you send will now look something like this:
Date: 14-Jan-81 15:33
From: <your name>
To:
cc:
note -> Phone: 475-6446
Subject: <subject>
<text>
-------
One possible use for keyword header-items is illustrated by
the following example:
MS>DEFINE HEADER-ITEM Priority REQUIRED KEYWORD urgent,high,medium,low
To delete a header-item definition, just give the command
DEFINE HEADER-ITEM <name>, where <name> is the name of the
header-item. To delete all header-item definitions, give
the command DEFINE HEADER-ITEM *.
Show
Available SHOW commands are:
SHOW ALIASES
Displays all currently defined aliases.
SHOW ADDRESS-LISTS
Displays all currently defined address-lists.
SHOW DAYTIME
Displays the current date and time.
SHOW DEFAULTS
Shows the defaults (assumptions which MS makes on
your behalf) which are currently in effect. Each
default is displayed by showing the exact command
which would cause that default to be in effect.
Most of the defaults shown by this command may be
changed with the SET command (q.v.).
SHOW HEADER-ITEMS
Displays all currently-defined header-items and
their types, and for predefined header-items dis-
plays the currently defined value.
SHOW STATUS
Shows you the name and status of the current message
file. This includes the number of messages in the
file, the size of the file in disk pages (each page
contains 2560 characters), the date and time the
file was last read, the number of deleted messages,
the number of unseen (new) messages, and a list of
flagged messages.
SHOW VERSION
Displays the version of MS currently running, and a
list of optional features which are supported by
this version (such as network mail).
Expunge
The EXPUNGE command causes messages which have been marked
for removal with the DELETE command to actually disappear.
Until a message is expunged, you may get it back by using
the UNDELETE command. Once you have expunged it, though, it
is gone forever. The EXIT command usually expunges deleted
messages automatically. This can be changed, though, with
the SET AUTO-EXPUNGE command (q.v.).
Mark
The MARK command marks a messages, or messages, as having
been seen. Messages are marked automatically when you
examine them using the READ, TYPE, or VERBOSE-TYPE commands.
When MS first starts up, it will display a header line for
each message which is not marked as having been seen. The
UNMARK command (q.v.) will remove the "seen" mark from a
message.
Unmark
The UNMARK command removes the mark on a message which flags
it as having been seen (see the MARK command description).
Verbose-type
This command displays a message literally. Even if you have
given a SET ONLY-HEADERS-SHOWN command or a SET SUPPRESSED-
HEADERS command to restrict the amount of headers shown, the
whole message will be displayed.
Print
This command, which takes a message sequence as an argument,
causes the messages specified to be printed on the line
printer. The listing will be prefaced by a one-line summary
of each message if you have given the SET SUMMARY-ON-
PRINTER-OUTPUT command.
NOTE
This command actually causes
MS to copy the message to
device LL: (lowercase line
printer); if that doesn't
work, MS tries device LPT:.
MS does this to try to print
the message(s) on a printer
with lowercase capabilities.
System-messages
The system has a public mail file which contains messages of
interest to all users; this is similar to a bulletin board.
The SYSTEM-MESSAGES command loads the public message file.
You then read it just like ordinary mail. Unless you have
special privileges, though, you may not DELETE messages or
EXPUNGE deleted messages from this file.
Take
This command takes a filespec as an argument. It reads the
contents of the file and executes them as MS commands.
Command files may be nested; that is, a command file may
contain TAKE commands. You create command files with any
editor; for more information on editors, refer to the ap-
propriate user's manual.
RFC733
RFC733 (Request For Comments number 733) is the name of the
ARPANET mail format standard. It is the oldest and most
widely-known electronic mail standard, and forms the basis
of many other standards (usually subsets). MS tries very
hard to adhere to RFC733. While it certainly does not
understand everything allowed by the standard, it should
never generate messages which violate it.
Those interested in the details of RFC733 should read the
RFC itself. It is available online at SRI-KL on the ARPANET
and can be accessed through the NIC facility. If you do not
have access to the ARPANET, you can obtain a document that
includes a description of RFC733. The name of the document
is "ARPANET Protocol Handbook", and is available as
Publication no. NIC 7104 from:
National Technical Information Service (NTIS)
5285 Port Royal Road
Springfield, VA 22161
For the benefit of readers who may have been referred to
this topic by the reference in the entry for the SET
PERSONAL-NAME command, RFC733 defines "special characters"
(characters which must be in a quoted string to appear in a
header-item) as follows:
specials: ( ) < > @ , ; : \ "
Echo
The ECHO command, followed by a line of text, simply
types the line of text back at you. This sounds useless,
but in fact can be helpful in defining long, involved
command files for use in situations where unsophisticated
users are being prompted for relatively canned messages: an
online problem-reporting system, for example. The ECHO
command provides a means of typing arbitrary text at the
user at suitable points in the command file.
Create-init-file
The CREATE-INIT-FILE command, available only at top
level, provides an easy way for you to create an init file
(for more information about init files, say HELP INIT-FILE).
When you give the CREATE-INIT-FILE command, MS enters
create-init mode. Instead of prompting with the standard
prompt,
MS>
MS prompts this way:
MS Create-init>>
While in this mode, every command you type goes into
the init file, with the exception of the HELP and TAKE
commands. The HELP command is excluded so that you can get
help during your create-init session without cluttering up
your init file with HELP commands.
If you wish to add to an existing init file, rather
than creating a new one from scratch, just give the fol-
lowing command at some point during your create-init
dialogue:
TAKE MS.INIT
If during create-init mode you change your mind and
you decide you really don't want to change your init file,
give the QUIT command. Or, when you are finished creating
your init file and wish to update the init file and return
to normal mode, give the FINISH command.
File
The FILE command is similar to both the MOVE and
COPY commands. It allows you to copy a number of messages
(at top level) or the current message (at read level) into
another message file, and optionally can delete the original
message(s) from the current message file. After copying the
message(s) into the file you specify, MS will ask whether
you wish to delete the original copy of the message(s) from
the current message file. You reply either YES or NO; NO
is the default and is assumed if you give a blank reply.
EMACS
The EMACS command runs EMACS in an inferior fork.
The EMACS library MS-MAIL contains two functions (^R MS-MAIL
Yank and ^R MS-MAIL Mail buffer) which allow you to yank the
current message into EMACS's buffer, annotate it, and then
insert it into MS's send buffer to be transmitted. Your
EMACS.INIT file should be set up to load the MS-MAIL library
if EMACS is run as an inferior of MS; if this is not done
then you must load the library by hand after giving the
EMACS command.
EMACS is a sophisticated programmable video editor
developed at MIT. Neither EMACS nor the MS-MAIL library are
distributed by Digital Equipment Corporation. They are both
available, however, by the usual informal distribution
channels.
Unflag
The UNFLAG command removes the "flag" from a
message. For more information, see the description of the
FLAG command.
Undelete
The UNDELETE command removes the "deleted" flag from
a message. For more detail, see the description of the
DELETE command.
Type
The TYPE command simply types the messages you name
on your terminal. No screen clearing is done, and if you
specify more than one message, they are typed all at once
with no pauses. This contrasts with the READ command, which
pauses after displaying each message to allow you to
manipulate the messages as they go by.
Exit
The EXIT command is used to leave MS and return to
the program which invoked it (the command language
processor). In addition, unless you have given an
overriding SET AUTO-EXPUNGE command, the EXIT command will
do an implied EXPUNGE to discard deleted messages.
Quit
The QUIT command causes MS to leave the current
command level and return to the level which invoked the
current level. At top level then, the QUIT command returns
you to the command language processor.
Push
The PUSH command creates a copy of the command
language processor and pushes you there, at which point you
can perform any ordinary TOPS-20 function or command.
Giving the POP command to the command language processor
will return you to MS.
Next
The NEXT command causes MS to display the "next"
message, that is, the message following the current message.
If the current message is the last message in the file, you
will receive an error message.