mirror of
https://github.com/PDP-10/stacken.git
synced 2026-04-20 08:46:31 +00:00
1562 lines
60 KiB
Plaintext
1562 lines
60 KiB
Plaintext
.;COPYRIGHT (c) DIGITAL EQUIPMENT CORPORATION 1988. ALL RIGHTS RESERVED.
|
||
|
||
.flags break
|
||
.flags hyphenate
|
||
.right margin 60
|
||
.no paging
|
||
.no number
|
||
.left margin 0
|
||
Version
|
||
.blank
|
||
This help file re=flects DECmail/MS ver=sion 11(2365),
|
||
run=ning under
|
||
.if TOPS10
|
||
TOPS-10.
|
||
.endif TOPS10
|
||
.if TOPS20
|
||
TOPS-20.
|
||
.endif TOPS20
|
||
.blank
|
||
The SHOW VERSION command will dis=play MS's ver=sion number, GLXLIB's
|
||
ver=sion number (GLXLIB is a sub=routine library used by MS), and a
|
||
list of optional features which the current ver=sion sup=ports (such as
|
||
net=works).
|
||
.page
|
||
Introduction
|
||
.blank
|
||
DECmail/MS is a pro=duct that pro=vides facilities for sending
|
||
and receiving mes=sages, and for filing, retrieving, editing, and
|
||
dis=carding these mes=sages. This help file ex=plains how to use MS.
|
||
MS is that part of DECmail/MS which pro=vides a com=mand-mode user
|
||
inter=face; it is the only pro=gram that you actually com=mu=nicate
|
||
directly with (al=though there are other pro=grams per=forming tasks
|
||
invisibly in the background).
|
||
MS is ex=tens=ively tailorable to in=div=idual taste and
|
||
styles of usage, and yet is easy for the novice or in=fre=quent user
|
||
to use. The struc=tured 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 com=mand in MS can select that part of the doc=u=men=tation
|
||
pertaining to a single topic.
|
||
.left margin 8
|
||
.blank
|
||
.indent -8
|
||
o If this is your first exposure to
|
||
.if TOPS10
|
||
TOPS-10,
|
||
.endif TOPS10
|
||
.if TOPS20
|
||
TOPS-20,
|
||
.endif TOPS20
|
||
you should give the command HELP NOVICE first.
|
||
.blank
|
||
.indent -8
|
||
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 elec=tronic mail systems similar to MS, you should say HELP VOCABULARY
|
||
and HELP COMMAND-LEVELS first.
|
||
.blank
|
||
.indent -8
|
||
o If you are already familiar with TOPS-20-style command parsers
|
||
and you have used other elec=tronic mail systems before, you
|
||
probably need only to type ? a lot and feel your way around.
|
||
.left margin 0
|
||
.blank
|
||
For all users, it is recommended that you read the
|
||
doc=u=men=tation under HELP COMMAND-LEVELS before first using MS.
|
||
.page
|
||
Novice
|
||
.blank
|
||
If you've gotten this far, you already know how to get
|
||
into MS and how to use the HELP command. This sec=tion ex=plains
|
||
el=e=men=tary usage of MS. But first, a little term=in=ology.
|
||
.blank
|
||
YOUR KEYBOARD
|
||
.blank
|
||
The keyboard of the terminal you're using is almost exactly
|
||
like that of a modern electric type=writer. The major dif=fer=ence is
|
||
that there are a few new keys, and one or two with dif=ferent
|
||
meanings.
|
||
.blank
|
||
CARRIAGE-RETURN or RETURN (some=times called CR, RET, <ret>, or <return>)
|
||
.blank
|
||
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
|
||
com=mand, and would now like MS to act upon the com=mand. All MS
|
||
commands must be finished with RETURN and MS will not act upon the
|
||
com=mand until you've pressed the RETURN key.
|
||
.blank
|
||
ESCAPE (some=times called ESC, or ALTMODE on older terminals)
|
||
.blank
|
||
This key, usually found at the upper left=hand corner of the
|
||
key=board, per=forms a par=tic=u=larly 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
|
||
com=mand 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 can=not know whether
|
||
you mean TAKE or TAPE, since both begin with TA. If, how=ever, you
|
||
type TW, MS knows you mean TWIST. Similarly, TAK could be a valid
|
||
abbreviation for TAKE and TAP for TAPE.
|
||
.break
|
||
Using ab=brev=i=ations at all times can save you typing, but
|
||
can look rather cryptic. And you some=times don't know how much of a
|
||
com=mand you need to type before MS will be able to recognize it,
|
||
especially when you're just starting out.
|
||
.break
|
||
The ESCAPE key makes all this much easier. If you think
|
||
you've typed enough of a com=mand 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 ab=brev=i=ation you've typed,
|
||
MS will tell you that.
|
||
.break
|
||
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 com=plete the word TWIST.
|
||
.break
|
||
Using re=cog=ni=tion has one ad=di=tional ad=van=tage: if the
|
||
com=mand whose name is being typed requires ad=di=tional
|
||
in=for=mation, pressing the ESCAPE key will cause MS to type "guide
|
||
words", in pa=ren=theses, 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:
|
||
.literal
|
||
|
||
MS>TWist (and shout)
|
||
|
||
.end literal
|
||
The words "and shout" are the guide words for the TWIST
|
||
com=mand. This example is a bit whimsical, but does illustrate how
|
||
re=cog=ni=tion and guide words act together to help lead you through
|
||
the commands.
|
||
.blank
|
||
CONTROL CHARACTERS
|
||
.blank
|
||
Another key on your terminal which is not found on type=writer
|
||
key=boards 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. Cha=rac=ters typed while holding the CTRL key down are called
|
||
CONTROL CHA=RAC=TERS; for in=stance, the character you gen=erate 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 mes=sage
|
||
you're sending and that MS can now send the mes=sage. 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 mes=sage you're
|
||
sending. Since control cha=rac=ters don't ordinarily print anything
|
||
on your screen, but simply instruct the system to do some=thing for
|
||
you, they are the only good way to type commands to the system while
|
||
you're entering the text of a mes=sage.
|
||
.blank
|
||
QUESTION MARK
|
||
.blank
|
||
At any time, if you are not sure what commands or arguments MS
|
||
has avail=able, 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 re=quest it by typing a question
|
||
mark. For in=stance, when you first run MS, it prompts you by typing
|
||
.blank
|
||
MS>
|
||
.blank
|
||
and awaits your first command. This is called TOP LEVEL.
|
||
At this point, to get a list of all the avail=able top level commands,
|
||
type a question mark, and they will be dis=played.
|
||
.blank
|
||
You give MS a command by typing the command's name, possibly
|
||
followed by additional in=for=mation (de=pen=ding on the par=tic=ular
|
||
command), and then typing a RETURN. The additional in=for=mation you
|
||
supply is called the "arguments" to the command. If MS prompts you
|
||
with anything other than
|
||
.blank
|
||
MS>
|
||
.blank
|
||
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 doc=u=men=tation.
|
||
We re=com=mend now that you skim the in=for=mation under HELP
|
||
COMMAND-LEVELS and HELP VOCABULARY; there is a lot of in=for=mation
|
||
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.
|
||
.page
|
||
Vocabulary
|
||
.blank
|
||
MESSAGE
|
||
.break
|
||
MS sends, receives, and files mes=sages. These are exactly analagous
|
||
to office memos; they are sent "To:" some people, and "cc:" to others.
|
||
They have a sub=ject, and some text. They also have a date, which is
|
||
sup=plied auto=ma=tic=ally when you send the mes=sage.
|
||
A mes=sage is com=posed of two parts: the "header area", at the top
|
||
of the page in which a mes=sage occurs, con=tains things
|
||
like the date, sub=ject, to and cc lists, and other iden=tifying
|
||
in=for=mation; the "text part" con=tains the actual text of the mes=sage.
|
||
.blank
|
||
MESSAGE HEADER
|
||
.break
|
||
The first few lines of a mes=sage are called the header area, or
|
||
mes=sage header. The header area is separated from the text of the
|
||
mes=sage 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 mes=sage was sent, the sub=ject, 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 mes=sage:
|
||
.literal
|
||
|
||
Date: 12 Sep 86 1445-EST
|
||
From: Larry Campbell <LCampbell@DEC-MARLBORO>
|
||
To: Joe Newcomer@CMU-10A, Hurley@KL2102
|
||
cc: Fred the New Guy@MIT-XX, Engel@KL2102, Hall@KL2102,
|
||
Purretta@KL2102, Another User@MIT-XX
|
||
Subject: This is a test
|
||
|
||
Hi! This is just a test of this system.
|
||
This is the message text.
|
||
-------
|
||
|
||
.end literal
|
||
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 mes=sage text. Finally
|
||
there are two lines of mes=sage text and the closing line, con=tain
|
||
a string of hyphens. There are five header-items present in this
|
||
mes=sage: "Date:", "From:", "To:", "cc:", and "Subject:". The "cc:"
|
||
item in this mes=sage 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 dif=ferent com=puters in a
|
||
net=work. To fully specify an ad=dress, you need both the user's name
|
||
and the name of the com=puter that he or she uses.
|
||
.blank
|
||
FILE
|
||
.break
|
||
A file is similar to the con=tents of an ordinary file folder.
|
||
A file has a name, called a FILESPEC (short for file spe=ci=fi=ca=tion).
|
||
Al=though a file=spec can have up to four parts (the DEVICE, DIRECTORY,
|
||
NAME, and EXTENSION), ordinarily you can ig=nore the device and di=rec=tory
|
||
and use only the name and ex=ten=sion. A file name or ex=ten=sion can
|
||
consist of any se=quence of
|
||
.if TOPS20
|
||
letters, numbers, and hyphens up to 39
|
||
cha=rac=ters long; it must not con=tain spaces, dots, or other special
|
||
cha=rac=ters. For in=stance, "name1", "budget", "memo-to-the-president",
|
||
and "my-letter" are all valid names. "This is my letter" is not;
|
||
it con=tains spaces.
|
||
.endif TOPS20
|
||
.if TOPS10
|
||
uppercase letters and numbers up to six cha=rac=ters long; the
|
||
ex=ten=sion can only be three cha=rac=ters long. For example,
|
||
"MEMO1", "JULY", and "OPEN" are all valid names; "REPORTS"
|
||
is not (con=tains seven cha=rac=ters), and "JUL-81" is not (the hyphen
|
||
is neither a letter nor a number).
|
||
.endif TOPS10
|
||
The ex=ten=sion is separated from the name by a dot, so that MAIL.TXT is a
|
||
file whose name is MAIL and whose ex=ten=sion is TXT. For more
|
||
in=for=mation about file=specs, see the
|
||
.if TOPS20
|
||
TOPS-20 User's Guide.
|
||
.endif TOPS20
|
||
.if TOPS10
|
||
DECsystem-10 Oper=ating System Commands Manual.
|
||
.endif TOPS10
|
||
.blank
|
||
MESSAGE FILE
|
||
.break
|
||
MS deals with mes=sage files, one at a time. A mes=sage file is simply
|
||
a file con=taining one or more mes=sages. 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 mes=sage in a file has a MESSAGE NUMBER; the mes=sages
|
||
are num=bered from one on up to how=ever many mes=sages there are in the file.
|
||
.blank
|
||
CURRENT MESSAGE FILE
|
||
.break
|
||
Since MS can only handle one mes=sage file at a time, the one you are
|
||
cur=rently dealing with is called the current mes=sage file. You may think
|
||
of MS as a desk which is only big enough to hold one file folder.
|
||
.blank
|
||
MAIL FILE
|
||
.break
|
||
Every user has his or her own per=sonal mes=sage file. This is exactly
|
||
analogous to an in basket. All in=coming mes=sages go into your mes=sage
|
||
file. It is called MAIL.TXT (the name is MAIL and the ex=ten=sion is TXT).
|
||
.blank
|
||
USERNAMES
|
||
.break
|
||
You send mes=sages to, and receive them from, users of a com=puter.
|
||
Each user of a com=puter has a user=name, which is the name by which
|
||
the com=puter knows that person. When sending to
|
||
.if TOPS20
|
||
another TOPS-20 system, or a TOPS-10 system,
|
||
user=names generally follow the same rules as file names;
|
||
.endif TOPS20
|
||
.if TOPS10
|
||
another TOPS-10 system, or a TOPS-20 system, user=names are com=posed of
|
||
.endif TOPS10
|
||
up to 39 cha=rac=ters of letters, digits, and hyphens. When sending
|
||
to a system which does not run TOPS-10 or TOPS-20, the rules for forming
|
||
user=names may be dif=ferent. If you are sending to a user whose
|
||
user=name con=tains cha=rac=ters not allowed in TOPS-10/TOPS-20 user=names
|
||
(like pa=ren=theses, spaces, and the like), then you must en=close the
|
||
user=name inside double quotes.
|
||
.blank
|
||
ADDRESSES
|
||
.break
|
||
An ad=dress tells MS where to send a mes=sage. There are two kinds
|
||
of ad=dress, de=pen=ding on whether the person you are sending to uses the
|
||
same com=puter that you do (LOCAL ADDRESS) or a dif=ferent one (NETWORK
|
||
ADDRESS, because their com=puter is con=nected to yours through a com=puter
|
||
net=work). A local ad=dress is just a user=name. A net=work ad=dress has
|
||
two parts: a user=name (just like a local user), and a HOST NAME,
|
||
which names the com=puter that they use. For in=stance, some=body who
|
||
uses a com=puter called HOST2 and who has a user=name of Joe would have
|
||
a NETWORK ADDRESS of "Joe@HOST2".
|
||
.if TOPS20
|
||
Addresses for users within your computer cluster should be local.
|
||
.endif TOPS20
|
||
.page
|
||
Command-levels
|
||
.blank
|
||
MS has three command levels: top level, read level, and send level.
|
||
Each command level has a dif=ferent 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 mes=sage files as a whole, or
|
||
for man=i=pu=lating entire groups of mes=sages at once. READ LEVEL
|
||
operates after you have selected a mes=sage to read, and has commands
|
||
for dealing with the current mes=sage (the default) along with any other
|
||
message sequence. And SEND LEVEL con=tains
|
||
commands for com=posing, editing, and filing drafts of mes=sages, and
|
||
for finally sending the mes=sage once it is com=plete. At all levels,
|
||
the QUIT command always returns you to the previous level; typing QUIT
|
||
at top level causes MS to stop.
|
||
.blank
|
||
When you first run MS, you are at top level. MS prompts you for a
|
||
command by typing
|
||
.blank
|
||
MS>
|
||
.blank
|
||
The next command level you are likely to see is read level.
|
||
It prompts you for a command by typing
|
||
.literal
|
||
|
||
MS Read>>
|
||
|
||
.end literal
|
||
You enter read level by using the READ command. You give the READ
|
||
command a mes=sage se=quence, which tells MS which mes=sages you want to read.
|
||
It then types the first mes=sage in the se=quence, and prompts you for a
|
||
command. You may now type a command to do some=thing with that mes=sage,
|
||
or type car=riage-|return to go on to the next mes=sage. When there are no
|
||
more mes=sages to read, MS returns to top level. For more details on
|
||
read level, give the command HELP READ.
|
||
.blank
|
||
Most top level commands which act upon a mes=sage se=quence are also
|
||
available in read level.
|
||
.blank
|
||
SEND LEVEL is some=times invoked as part of the pro=cess of sending a
|
||
mes=sage, or com=posing a mes=sage draft prior to sending it. Send
|
||
level is invoked in one of the following four ways:
|
||
.blank
|
||
.left margin 8
|
||
.indent -8
|
||
1) You ask MS to put you there, by typing an ESC while entering
|
||
the text of a mes=sage you are sending;
|
||
.blank
|
||
.indent -8
|
||
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.);
|
||
.blank
|
||
.indent -8
|
||
3) You use the RETRIEVE LAST-MESSAGE (q.v.) command to retrieve
|
||
the draft of the last mes=sage you sent;
|
||
.blank
|
||
.indent -8
|
||
4) MS puts you there auto=ma=tic=ally, because it en=coun=tered
|
||
some problem while sending a mes=sage.
|
||
.blank
|
||
.left margin 0
|
||
The send level prompt is:
|
||
.literal
|
||
|
||
MS Send>>
|
||
|
||
.end literal
|
||
The commands available in send level allow you to modify any part of a
|
||
mes=sage which you are in the pro=cess of sending. You can add or
|
||
delete users to the "To:" or "cc:" lists, change the sub=ject line, edit
|
||
the text of the mes=sage, and so forth. If MS en=coun=ters any
|
||
dif=fi=cul=ties in sending the mes=sage, it will auto=ma=tic=ally put
|
||
you into send level, so that you have a chance to fix the part of the
|
||
mes=sage which caused the problem. At send level, you can return to
|
||
the previous level with=out sending the mes=sage by giving the QUIT
|
||
com=mand, or you can give the SEND com=mand, which sends the mes=sage
|
||
and then returns to the previous com=mand level.
|
||
.page
|
||
Message-sequence
|
||
.blank
|
||
Most MS commands perform some action on one or more mes=sages. You
|
||
need to tell MS which mes=sage or mes=sages you want to act upon, and
|
||
you do this with a MESSAGE SEQUENCE. A mes=sage se=quence simply
|
||
specifies a group of mes=sages.
|
||
.blank
|
||
The simplest se=quence is a mes=sage number, or list of numbers. For
|
||
in=stance, the fol=lowing is a mes=sage se=quence which specifies the
|
||
first six mes=sages in a file:
|
||
.literal
|
||
|
||
1,2,3,4,5,6
|
||
|
||
.end literal
|
||
For example, to read the first six mes=sages in a file, you
|
||
might say:
|
||
.literal
|
||
|
||
MS>read 1,2,3,4,5,6
|
||
|
||
.end literal
|
||
A short=hand way to specify the same thing is "1:6". You can mix these:
|
||
the mes=sage se=quence "1:4,7:10" means the same as "1,2,3,4,7,8,9,10".
|
||
.blank
|
||
You can also select mes=sages based on their con=tents. For
|
||
in=stance, the mes=sage se=quence
|
||
.literal
|
||
|
||
SUBJECT BUDGET
|
||
|
||
.end literal
|
||
selects all mes=sages with the word "budget" in the sub=ject. So the
|
||
command:
|
||
.literal
|
||
|
||
MS>read subject monthly
|
||
|
||
.end literal
|
||
would be used to read all mes=sages with the word "monthly" in
|
||
their sub=ject. Similarly,
|
||
.literal
|
||
|
||
MS>read first 9
|
||
|
||
.end literal
|
||
would let you read the first 9 mes=sages in your current mes=sage file.
|
||
One par=tic=u=larly useful mes=sage se=quence is called
|
||
"same". This directs MS to use the same mes=sage se=quence that you
|
||
used in your last com=mand. For in=stance, suppose you want to delete
|
||
all mes=sages from a certain person named Jones. How=ever, 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
|
||
com=mand:
|
||
.literal
|
||
|
||
MS>headers from Jones
|
||
|
||
.end literal
|
||
|
||
to get a one-line sum=mary of each mes=sage from Jones. Once you're
|
||
satisfied that you really want to delete all these mes=sages, you
|
||
could then say:
|
||
.literal
|
||
|
||
MS>delete same
|
||
|
||
.end literal
|
||
Mes=sages can be selected by date and time, using the SINCE
|
||
and BEFORE key=words; by the SUBJECT, FROM and TO fields; by searching
|
||
for words in the mes=sage text with the KEYWORD com=mand; by mes=sage
|
||
size with the SMALLER and LARGER com=mands; and so on. To get a
|
||
com=plete list of all the possible ways to select mes=sages, type a
|
||
question mark when MS prompts you for a mes=sage se=quence.
|
||
.page
|
||
Send
|
||
.blank
|
||
The SEND command is used to com=pose and send a mes=sage. It prompts
|
||
you for the required in=for=mation, which in=cludes "To:", "cc:"
|
||
(which may be blank), and "Subject:". It then prompts you for the
|
||
text of the mes=sage. When you have com=pleted the text of the
|
||
mes=sage, type ctrl-Z, which will cause the mes=sage to be sent
|
||
im=me=di=ately.
|
||
.blank
|
||
If, at some point while you are typing the text of the mes=sage, you
|
||
realize that you've made a mis=take, like omitting some=body 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 mes=sage.
|
||
Among these are the REMOVE command, which removes ad=dresses 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 mes=sage. 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. Other=wise, give the SEND com=mand, which
|
||
will send the mes=sage and then return you to the previous com=mand level.
|
||
.page
|
||
Read
|
||
.blank
|
||
The read command is used to read a se=quence of mes=sages. You
|
||
specify a mes=sage se=quence after the READ command, or you can just
|
||
type READ, in which case you will be shown all the mes=sages which you
|
||
have not yet seen. For example,
|
||
.literal
|
||
|
||
MS>read subject evaluations
|
||
|
||
.end literal
|
||
would be used to read all mes=sages with the word "evaluations" in the
|
||
sub=ject field, while
|
||
.literal
|
||
|
||
MS>read
|
||
|
||
.end literal
|
||
would be used to read all "new" (that is, not yet seen) mes=sages.
|
||
After each mes=sage is dis=played, MS is at read level and prompts
|
||
with:
|
||
.literal
|
||
|
||
MS Read>>
|
||
|
||
.end literal
|
||
In previous versions of MS, at read level, commands such as DELETE
|
||
and READ only applied to the current (just displayed) message. That
|
||
is still the default, but you can now give arguments to these commands,
|
||
as if you were at top level. For example:
|
||
.literal
|
||
|
||
MS READ>>DELETE FROM BRONSON
|
||
|
||
.end literal
|
||
You can also give the READ command, to branch off and read another
|
||
entirely different sequence of messages before con=tinuing with the
|
||
current sequence:
|
||
.literal
|
||
|
||
MS READ>>READ FROM OLSEN
|
||
|
||
.end literal
|
||
After such a command, you will enter a recursive read level and read
|
||
the messages you specified. Recursive read levels prompt with:
|
||
.literal
|
||
|
||
MS READ(n) >>
|
||
|
||
.end literal
|
||
where n is the depth of recursion, a number that starts at 1 and
|
||
in=creases by 1 every time you go one read level deeper. This tells
|
||
you, for example, how many QUIT commands would be required to return
|
||
to top level (since each Quit command backs up exactly one level).
|
||
.blank
|
||
When you've finished reading all the mes=sages you spec=i=fied in the
|
||
READ com=mand, typing car=riage-|return to the "MS Read>>" prompt will
|
||
return you to the previous com=mand level (this is usually top level).
|
||
.page
|
||
Reply
|
||
.blank
|
||
The REPLY command allows you to send a reply to a mes=sage which you
|
||
have received. MS de=ter=mines from the mes=sage 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 mes=sage se=quence specifying which
|
||
mes=sages to reply to, and at read level, in which case it assumes that
|
||
you wish to reply to the current mes=sage.
|
||
.blank
|
||
There are two possible ways to reply to a mes=sage; the reply can be
|
||
sent to the sender (only) of the mes=sage, or to the sender and to all
|
||
recipients of the mes=sage 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 as=sump=tions that MS makes as
|
||
well, by using the SET commands (q.v.).)
|
||
.blank
|
||
Once you have given the REPLY command, it works just like a SEND
|
||
command, except that since it knows who to send the mes=sage 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 mes=sage, which will put you at
|
||
send level. You can then use the send level commands to edit the
|
||
mes=sage.
|
||
.page
|
||
Forward
|
||
.blank
|
||
The FORWARD command, available at both top level and read level, allows
|
||
you to forward a mes=sage which you have received to another user.
|
||
Its usage is straight=for=ward; it prompts for the "To:" and "cc:"
|
||
lists, just as the send command does. It does not prompt for the
|
||
sub=ject; in=stead it supplies the sub=ject of the forwarded mes=sage.
|
||
It then prompts you for text; this text is inserted in front of the
|
||
forwarded mes=sage. This is useful for adding your own comments
|
||
about the forwarded mes=sage.
|
||
.page
|
||
Copy
|
||
.blank
|
||
The COPY command, available from both top level and read level, places
|
||
a copy of a mes=sage into a file. This is useful if you wish to
|
||
collect a set of related mes=sages into one place. The COPY command
|
||
requires that you supply the name of the file in which to place the
|
||
mes=sage. The mes=sage is appended to the file you name; the existing
|
||
con=tents of the file are pre=served. If the file does not exist, it
|
||
is created. You may examine and man=ip=u=late the con=tents of
|
||
mes=sage files which you create this way with the GET command (q.v.).
|
||
.page
|
||
Move
|
||
.blank
|
||
The MOVE command, available from both top level and read level, allows
|
||
you to move a mes=sage into a dif=ferent file. It works exactly as if
|
||
you had used the COPY command (q.v.) to copy the mes=sage into the
|
||
other file, and then used the DELETE com=mand to delete the mes=sage.
|
||
.page
|
||
Delete
|
||
.blank
|
||
The DELETE command, available from both top level and read level, allows
|
||
you to delete mes=sages from the current mes=sage file. Mes=sages which
|
||
you delete don't dis=ap=pear im=me=di=ately, but are marked as deleted.
|
||
They do not actually dis=ap=pear until you give the EXPUNGE or EXIT
|
||
command. If you ac=ci=den=tally delete a mes=sage which you really wish
|
||
to keep, you may use the UNDELETE command to get it back, unless
|
||
an ex=punge has occurred. Once you have ex=punged a mes=sage, you cannot
|
||
get it back.
|
||
.page
|
||
Skim
|
||
.blank
|
||
The SKIM command works just like READ but only types a header
|
||
line for each message, not the whole message.
|
||
.blank
|
||
The SKIM command permits recursive calls. The prompt will show the
|
||
level of recursion that SKIM is currently in.
|
||
.page
|
||
Headers
|
||
.blank
|
||
The HEADERS command, available from both top level and read level,
|
||
gives you a one-line sum=mary of each mes=sage specified. The line
|
||
looks some=thing like this:
|
||
.literal
|
||
|
||
NFAD 12-Jul Fred@OFFICE-3 |This Monday's meeting (549 chars)
|
||
|
||
.end literal
|
||
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:
|
||
.literal
|
||
|
||
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)
|
||
|
||
.end literal
|
||
The next column is the date of the mes=sage. Next is the name of the user
|
||
who sent the mes=sage, in this case, Fred@OFFICE-3. The next column,
|
||
beginning at the ver=tical bar (|) character, is the sub=ject of the mes=sage;
|
||
if it is so long that it would run off the right margin, then it is trun=cated.
|
||
And last, in pa=ren=theses, is the length of the mes=sage, in cha=rac=ters.
|
||
.blank
|
||
If the mes=sage was sent by you (this can happen if you are saving
|
||
your out=going mes=sages in your mail file, or if you explicitly sent
|
||
a copy to yourself), in=stead of dis=playing the "From:" field in the
|
||
third column, MS will dis=play the "To:" field of the mes=sage,
|
||
pre=ceded by the word "To:". For example:
|
||
.literal
|
||
|
||
NFAD 12-Jul To: Fred@OFFICE-3 |This Monday's meeting (549 chars)
|
||
|
||
.end literal
|
||
For in=for=mation on saving your out=going mes=sages, give the command
|
||
HELP SAVE.
|
||
HEADERS and DIRECTORY perform the same function.
|
||
.page
|
||
Flag
|
||
.blank
|
||
The FLAG command, available from both top level and read level, allows
|
||
you to flag certain mes=sages as im=por=tant. You may wish, for in=stance,
|
||
to read all your mail quickly, and flag the im=por=tant mes=sages, so
|
||
that you can later come back and say READ FLAGGED, which will dis=play
|
||
all the flagged mes=sages on your terminal. The UNFLAG command will
|
||
turn off the flag on a mes=sage.
|
||
.page
|
||
Init-file
|
||
.blank
|
||
An "init file" is a file which con=tains MS commands. These commands
|
||
are executed by MS every time it starts up. This is useful for
|
||
setting pa=ra=me=ters (see the SET com=mand description) and having
|
||
them re=mem=bered per=ma=nently. 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
|
||
.if TOPS20
|
||
MS.INIT.
|
||
.endif TOPS20
|
||
.if TOPS10
|
||
MS.INI.
|
||
.endif TOPS10
|
||
For in=for=mation on the CREATE-INIT com=mand, give the com=mand HELP
|
||
CREATE-INIT.
|
||
.blank
|
||
There may also be a de=fault, system-wide init file for system-wide
|
||
defaults and address lists. This file is called
|
||
.if TOPS20
|
||
SYSTEM:MS.INIT.
|
||
.endif TOPS20
|
||
.if TOPS10
|
||
STD:MS.INI.
|
||
.endif TOPS10
|
||
.b
|
||
When you begin a mail session, the system init file is processed
|
||
after your own. If you do not have one, only the system init file
|
||
is processed.
|
||
.page
|
||
Check
|
||
.blank
|
||
Every time MS up=dates your mes=sage file, and every time it returns
|
||
to the top-level prompt, it checks the current mes=sage file to see if
|
||
any new mes=sages have arrived. If new mes=sages have arrived, MS
|
||
notifies you by dis=playing a one-line sum=mary of each new mes=sage.
|
||
To force MS to check im=me=di=ately for new mes=sages, give the CHECK
|
||
com=mand. If new mes=sages have arrived, MS will dis=play the new
|
||
state of the mes=sage file, along with a one-line sum=mary of each new
|
||
mes=sage.
|
||
.page
|
||
Get
|
||
.blank
|
||
The GET command causes MS to read in a new mes=sage file. It expects,
|
||
as an argument, the name of the mes=sage file you wish to read. Once MS
|
||
reads the file, it will type a couple of lines of status in=for=mation
|
||
about the file. You can then use any of MS's top-|level commands to
|
||
man=ip=u=late the file.
|
||
.page
|
||
Save
|
||
.blank
|
||
There are two SAVE commands: SAVE OUTGOING-MESSAGES and SAVE DRAFT.
|
||
.blank
|
||
SAVE OUTGOING-MESSAGES
|
||
.blank
|
||
This command allows you to keep a record of all mes=sages which you
|
||
send. It takes a file=spec as an argument, and once this command has
|
||
been given, every mes=sage which you send is copied into the file you
|
||
named. You may examine the con=tents of this file by using the GET
|
||
command (q.v.). This command is most commonly placed into an init-|file
|
||
(q.v.).
|
||
.blank
|
||
SAVE DRAFT
|
||
.blank
|
||
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
|
||
in=cludes the "To:" and "cc:" lists, the sub=ject, and the text of the
|
||
mes=sage. You may then use the RETRIEVE DRAFT (q.v.) command
|
||
to retrieve the draft and con=tinue com=posing a mes=sage.
|
||
.blank
|
||
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 with=out sending the draft, give the QUIT command.
|
||
.page
|
||
Blank
|
||
.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.
|
||
.page
|
||
Repair
|
||
.blank
|
||
This command is only applicable to DECNET systems. It allows you to
|
||
examine mail which has been returned to you as un=de=liv=er=able by
|
||
the net=work. It takes, as an argument, the numeric part of the .RPR
|
||
file specification referred to in the Postmaster message sent to you.
|
||
Once you have
|
||
suc=cess=fully identified a dead letter to MS, the mes=sage is
|
||
dis=played 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 mes=sage and try to send it again.
|
||
.page
|
||
Set
|
||
.blank
|
||
The SET commands allow you to alter many of the as=sump=tions which MS
|
||
ordinarily makes on your behalf. They also allow you to customize
|
||
MS's be=ha=vior, and make it more agree=able with your own
|
||
par=tic=ular style of usage. There are many SET commands, and they
|
||
are all listed here alphabetically. In the fol=lowing descriptions,
|
||
words en=closed in square brackets denote optional words; for example:
|
||
.literal
|
||
|
||
SET [NO] VIDEO-MODE
|
||
|
||
.end literal
|
||
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:
|
||
.literal
|
||
|
||
SET REPLY-TO <address list>
|
||
|
||
.end literal
|
||
means that in=stead of typing "<ad=dress-list>", you would actually
|
||
type a list of ad=dresses. And lists of items inside curly brackets,
|
||
separated by ver=tical bars, denote a list of choices from which only
|
||
one must be selected. For example:
|
||
.literal
|
||
|
||
SET DEFAULT { REPLY-TO-ALL | REPLY-TO-SENDER-ONLY }
|
||
|
||
.end literal
|
||
means you would type either SET DEFAULT REPLY-TO-ALL or SET DEFAULT
|
||
REPLY-TO-SENDER-ONLY.
|
||
.blank 2
|
||
The avail=able SET commands are:
|
||
.blank
|
||
.left margin 8
|
||
.no flags break
|
||
.indent -8
|
||
SET AUTO-EXPUNGE (ON) {ANY-EXIT | EXIT-COMMAND-ONLY | NEVER}
|
||
.flags break
|
||
.break
|
||
Controls auto=matic ex=pun=ging of deleted mes=sages. The de=fault
|
||
is SET AUTO-|EXPUNGE (ON) EXIT-|COMMAND-|ONLY.
|
||
.blank
|
||
.indent -8
|
||
SET AUTO-FILL
|
||
.break
|
||
The command SET AUTO-FILL puts MS into auto-fill mode. This means
|
||
that you can type messages without crlf's; MS will
|
||
handle that automatically.
|
||
.blank
|
||
.indent -8
|
||
SET [NO] BRIEF-ADDRESS-LIST-DISPLAY
|
||
.break
|
||
When brief-|address-|list-|display is in effect, MS will not type the con=tents
|
||
of ad=dress lists in mes=sages being dis=played, but in=stead only the name
|
||
of the ad=dress list. This makes reading mes=sages which have been
|
||
sent to very long ad=dress lists less tire=some. If a mes=sage con=tains
|
||
a nested ad=dress list, only the name of the outer=most list is dis=played.
|
||
.blank
|
||
.indent -8
|
||
SET CLOSING-TEXT
|
||
.break
|
||
The command SET CLOSING-TEXT allows you to predefine a line
|
||
of text that will subsequently be sent at the end of each
|
||
message.
|
||
.blank
|
||
.indent -8
|
||
SET [NO] CONCISE-MODE
|
||
.break
|
||
Shortens some of the mes=sages typed by MS; should only be set by
|
||
experienced users.
|
||
.blank
|
||
.indent -8
|
||
SET DEFAULT CC-LIST <address list>
|
||
.break
|
||
Causes the users named in the ad=dress list to be cc'ed on every out=going
|
||
mes=sage.
|
||
.blank
|
||
.no flags
|
||
.indent -8
|
||
SET DEFAULT DIRECTORY (TO) {CONNECTED-DIRECTORY |LOGGED-IN-DIRECTORY| <directory name>
|
||
.flags
|
||
.blank
|
||
Sets the de=fault di=rec=tory into which created files go. For more
|
||
in=for=mation on di=rec=tories, see the
|
||
.if TOPS10
|
||
TOPS-10 Operating System Commands Manual.
|
||
.endif TOPS10
|
||
.if TOPS20
|
||
TOPS-20 User's Guide.
|
||
.blank
|
||
.indent -8
|
||
SET DEFAULT PROTECTION (FOR CREATED FILES) <protection code>
|
||
.break
|
||
Causes all files created by MS (by the COPY and MOVE commands,
|
||
for in=stance) to be pro=tected with the code you spec=i=fied.
|
||
For more in=for=mation on file pro=tec=tion, see the TOPS-20
|
||
User's Guide.
|
||
.endif TOPS20
|
||
.blank
|
||
.no flags break
|
||
.indent -8
|
||
SET DEFAULT { REPLY-TO-SENDER-ONLY | REPLY-TO-ALL }
|
||
.flags break
|
||
.break
|
||
Sets the de=fault recipient list for the REPLY command. SET DEFAULT
|
||
REPLY-|TO-|SENDER-|ONLY will cause replies to go to the ad=dres=sees
|
||
named in the "Reply-to:" field of the mes=sage being replied to, or to
|
||
the sender of the mes=sage, 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.
|
||
.blank
|
||
.indent -8
|
||
SET EXPERIENCE-LEVEL
|
||
.break
|
||
Establishes you as either an expert or novice. Novices can use only
|
||
the following commands: DELETE, EXIT, EXPUNGE, FILE, HEADERS, HELP,
|
||
PRINT, READ, SEND, SET, SYSTEM-MESESAGES, UNDELETE.
|
||
.blank
|
||
.indent -8
|
||
SET [NO] FORCE-DIRECTORY-LOOKUP
|
||
.break
|
||
When set, verifies local addresses in the TO: and CC: lists, and in
|
||
address-list definitions.
|
||
.blank
|
||
.indent -8
|
||
SET [NO] SUMMARY-ON-PRINTER-OUTPUT
|
||
.break
|
||
When set, causes the first page of any line printer lis=ting of
|
||
mes=sages created by the PRINT command to con=tain a one-|line summary
|
||
sum=mary of each mes=sage listed. This in=for=mation is the same as
|
||
that printed by the HEADERS command.
|
||
.blank
|
||
.indent -8
|
||
SET [NO] SUMMARY-PERSONAL-NAME-ONLY
|
||
.break
|
||
When set, causes the HEADERS command to dis=play only the per=sonal
|
||
name of each mes=sage, rather than the full "From:" or "To:" field.
|
||
For mes=sages with=out per=sonal names, the en=tire field is dis=played.
|
||
.blank
|
||
.indent -8
|
||
SET [NO] INCLUDE-ME-IN-REPLIES
|
||
.break
|
||
Controls whether you receive copies of your replies to other
|
||
users' mes=sages. Has no effect if you have also given the
|
||
command SET DEFAULT REPLY-|TO-|SENDER-|ONLY.
|
||
.if TOPS20
|
||
.blank
|
||
.indent -8
|
||
SET LOGOUT-ON-EXIT
|
||
.blank
|
||
This command puts MS into a state where any attempt to exit from MS
|
||
will log you off the com=puter. It is usually employed for users who
|
||
wish to use only MS; the system ad=min=is=trator will put the
|
||
fol=lowing command in their LOGIN.CMD:
|
||
.literal
|
||
|
||
MS SET LOGOUT-ON-EXIT
|
||
|
||
.end literal
|
||
Which will cause them to enter MS im=me=di=ately upon logging in, and force
|
||
them to stay in MS for the du=ra=tion of the ses=sion. For more in=for=mation
|
||
on LOGIN.CMD, see the TOPS-20 User's Guide.
|
||
.endif TOPS20
|
||
.blank
|
||
.indent -8
|
||
SET ONLY-HEADERS-SHOWN <header-name> [, <header-name>, ...]
|
||
.break
|
||
Re=stricts the amount of header in=for=mation dis=played by the READ
|
||
and TYPE commands. If this command is given, only the headers named
|
||
will be dis=played. This is par=tic=u=larly useful on slow terminals
|
||
when reading mes=sages with large headers. For in=stance,
|
||
.literal
|
||
|
||
SET ONLY-HEADERS-SHOWN to, subject, from
|
||
|
||
.end literal
|
||
will cause only the "To:", "Subject:", and "From:" fields to be shown.
|
||
If you wish to tem=po=rarily over=ride the effect of this command,
|
||
the VERBOSE-|TYPE command will show the entire mes=sage literally.
|
||
A less re=stric=tive, and some=what more flexible, way of reducing
|
||
the amount of header in=for=mation dis=played is to use the
|
||
SET SUPPRESSED-|HEADERS command (q.v.).
|
||
.blank
|
||
.indent -8
|
||
SET PERSONAL-NAME <your full name>
|
||
.break
|
||
Causes MS to add your real name to out=going mail (in addition to your
|
||
user=name). Bear in mind that certain special cha=rac=ters, including
|
||
most punc=tua=tion cha=rac=ters, are allowed only inside quoted
|
||
strings (text en=closed by double quotes). For a list of special
|
||
cha=rac=ters, say HELP RFC822.
|
||
.blank
|
||
.indent -8
|
||
SET [NO] REPLY-TO <address list>
|
||
.break
|
||
Allows you to cause replies which
|
||
other users send to your mes=sages to go to a dif=ferent place than
|
||
they ordinarily would. They cause the fol=lowing line to be inserted
|
||
into every mes=sage you send:
|
||
.literal
|
||
|
||
Reply-to: <address list>
|
||
|
||
.end literal
|
||
When the recipient of such a mes=sage uses the REPLY command
|
||
to com=pose a reply, the reply will go to the ad=dress(es)
|
||
specified in the "Reply-to:" line, rather than to the sender of
|
||
the mes=sage.
|
||
.blank
|
||
.indent -8
|
||
SET [NO] SUPPRESSED-HEADERS <header-name>, <header-name>, ...
|
||
.break
|
||
This command takes, as an argument, a list of header-|names separated
|
||
by commas, and causes MS not to dis=play the named header-|items when
|
||
dis=playing mes=sages on your terminal. The SET ONLY-|HEADERS-|SHOWN
|
||
command, which is stronger, will over=ride the effect of this command.
|
||
.blank
|
||
.indent -8
|
||
SET [NO] TEXT-SCROLL-REGION [(TO) <number> (LINES)]
|
||
.break
|
||
On terminals capable of defining scroll regions (for example, VT100
|
||
and VT200 series terminals), MS can, in read mode, scroll only the text of mes=sages
|
||
being dis=played, while leaving the headers in place. If the header
|
||
area of a mes=sage is too long, though, this results in an annoyingly
|
||
small number of lines being used to dis=play the mes=sage text. The
|
||
SET TEXT-|SCROLL-|REGION command instructs MS to scroll the text of
|
||
the mes=sage in this manner, but only if <number> lines are avail=able
|
||
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 dis=play
|
||
mes=sages in the usual manner, with=out setting up a scroll region.
|
||
This is the de=fault be=ha=vior.
|
||
.blank
|
||
.indent -8
|
||
SET [NO] TYPE-INITIAL-SUMMARY
|
||
.break
|
||
Controls whether, when MS starts up, it prints the initial lines of
|
||
status in=for=mation about your mes=sage file. This in=for=mation is
|
||
also printed by the SHOW STATUS command.
|
||
.blank
|
||
.indent -8
|
||
SET [NO] VIDEO-MODE
|
||
.break
|
||
Turns on or off MS's video dis=play features for video terminals.
|
||
The de=fault is SET VIDEO-|MODE.
|
||
.left margin 0
|
||
.page
|
||
Net-mail
|
||
.blank
|
||
MS handles two kinds of mail: local mail, which goes to and from users
|
||
of the same com=puter which you use, and net=work mail, which goes to
|
||
and from users of other (remote) com=puters. Ordinarily, the only
|
||
dif=fer=ence which is im=por=tant to you is that when you send mail to
|
||
remote users, you must iden=tify the com=puter which they use, by
|
||
adding the phrase "@NAME" to their user=name, where NAME is the name
|
||
of the com=puter they use.
|
||
.blank
|
||
When you send mail, it is not delivered im=me=di=ately,
|
||
but is queued for later trans=mis=sion ("Mail queued for
|
||
de=livery by MX"). The
|
||
system will send your mail almost immediately, though, if the destination host is accessible.
|
||
That host is given fourteen days to become accessible. After
|
||
that, the message is undeliverable.
|
||
.page
|
||
Bad-format
|
||
.blank
|
||
Occasionally, a mes=sage file will get damaged, either by a bug in MS,
|
||
a bug in the com=puter on which MS runs, or a hard=ware problem. If this
|
||
happens, you will see one of the fol=lowing mes=sages from MS:
|
||
.literal
|
||
|
||
?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
|
||
|
||
.end literal
|
||
If you give a HEADERS ALL command, you will most likely see some
|
||
peculiar-|looking headers; usually they will have no Sub=ject, From,
|
||
or Date field, and the length of the mes=sage will either be zero, or
|
||
ridiculously large.
|
||
.blank
|
||
MS can repair almost any kind of damage to a mes=sage file. First,
|
||
make a copy of the damaged file using the COPY command. When MS
|
||
creates a mes=sage 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 as=sump=tions 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 mes=sages with these headers, and if they con=tain
|
||
only garbage, you can delete them. If they con=tain frag=ments of
|
||
real mes=sages, you may want to keep them, rather than lose the frag=ments.
|
||
.blank
|
||
Once you have made a good copy of the damaged file, you should delete
|
||
the con=tents of the damaged file to save space. Return to the damaged
|
||
file (using the GET command), delete all the mes=sages, and give the
|
||
EXPUNGE command.
|
||
.blank
|
||
If the damaged file was your mail file, be aware that your mail file
|
||
is now empty (al=though 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 mes=sages back into your mail file. The file=spec of a mail
|
||
file is
|
||
.if TOPS20
|
||
"MAIL.TXT.1";
|
||
.endif TOPS20
|
||
.if TOPS10
|
||
"MAIL.TXT";
|
||
.endif TOPS10
|
||
Be sure to type it com=pletely. This se=quence of commands will look
|
||
like:
|
||
.literal
|
||
|
||
MS>get (messages from file) good-copy
|
||
|
||
Last read: Monday, February 10, 1986 17:27-EST.
|
||
182 messages (206873 characters), in 81 disk pages.
|
||
Message 166 flagged.
|
||
|
||
MS>move (message sequence) all
|
||
.end literal
|
||
.if TOPS20
|
||
.literal
|
||
Into file: mail.txt.1
|
||
.end literal
|
||
.endif TOPS20
|
||
.if TOPS10
|
||
.literal
|
||
Into file: mail.txt
|
||
.end literal
|
||
.endif TOPS10
|
||
.literal
|
||
1:53
|
||
MS>
|
||
|
||
.end literal
|
||
In all cases, in=stances of damaged mes=sage files should be re=ported
|
||
to the person re=spon=sible for running your com=puter, so that the cause
|
||
can be eliminated.
|
||
.page
|
||
Retrieve
|
||
.blank
|
||
There are two RETRIEVE commands: RETRIEVE DRAFT and
|
||
RETRIEVE LAST-|MESSAGE.
|
||
.blank
|
||
RETRIEVE DRAFT
|
||
.blank
|
||
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, dis=plays the draft on your terminal, and leaves
|
||
you at send level. You may then give any of the send level commands
|
||
to man=ip=u=late the draft; most commonly, you would give the TEXT
|
||
command to add mes=sage text to the draft.
|
||
.blank
|
||
RETRIEVE LAST-MESSAGE
|
||
.blank
|
||
This command, available only at top level, allows you to re=cover a copy
|
||
of the last mes=sage you sent, so that you may edit it and re=send
|
||
it. This is typically used when you have just sent a mes=sage, and
|
||
then realized that you forgot to include some=one in the ad=dress lists.
|
||
This command will dis=play the mes=sage and put you into send level.
|
||
You may then use all the send level commands to add or delete users in
|
||
the ad=dress lists, edit the text of the mes=sage, and send it again.
|
||
.blank
|
||
This com=mand does NOT retract mail; that is, if you have sent a
|
||
mes=sage to some=one and then changed your mind, this com=mand does
|
||
not remove the mes=sage from the recipient's mail=box. Once a
|
||
mes=sage has been sent, it has been sent. What this com=mand does is
|
||
retrieves the draft of the mes=sage so you need not type it in again.
|
||
.page
|
||
Define
|
||
.blank
|
||
The DEFINE command allows you to define ex=ten=sions to MS's basic
|
||
ca=pa=bil=ities. You can define aliases for users, using the DEFINE
|
||
ALIAS command. You can define named ad=dress lists, using the DEFINE
|
||
ADDRESS-|LIST command. And you can define new header-|items, with the
|
||
DEFINE HEADER-|ITEM command.
|
||
.blank
|
||
DEFINE ALIAS
|
||
.blank
|
||
This command defines an alias for an ad=dress. This is useful when
|
||
you have a long or non-|mnemonic ad=dress to which you fre=quently
|
||
send mail, or when you wish to refer to some=one by other than their
|
||
real user=name. The command format is:
|
||
.literal
|
||
|
||
MS>DEFINE ALIAS John (TO BE) Purretta@KL2102
|
||
|
||
.end literal
|
||
This command will define the alias "John" to be the same as "Purretta@KL2102".
|
||
You can now give the alias "John" in any ad=dress
|
||
spe=ci=fi=ca=tion, such as a to or cc list, and MS will convert it to
|
||
the full ad=dress for you. Aliases may also re=pre=sent a list of
|
||
ad=dresses, as in:
|
||
.literal
|
||
|
||
MS>DEFINE ALIAS Neffs (TO BE) LNeff@KL2102, DNeff@KL2116
|
||
|
||
.end literal
|
||
To delete an alias de=fi=ni=tion, give the command DEFINE ALIAS <name>, where
|
||
<name> is the name of the alias de=fi=ni=tion to be deleted. To delete
|
||
all alias de=fi=ni=tions, give the command DEFINE ALIAS *.
|
||
.blank 2
|
||
DEFINE ADDRESS-LIST
|
||
.blank
|
||
This command allows you to define named ad=dress lists. These be=have
|
||
almost exactly like aliases, with one ex=cep=tion: the name of the
|
||
ad=dress list is shown in the mes=sage. For example, if you defined
|
||
the fol=lowing ad=dress list:
|
||
.literal
|
||
|
||
MS>DEFINE ADDRESS-LIST Task-force (TO BE) LCampbell, King, Jones, Dickson
|
||
|
||
.end literal
|
||
and then sent mail to "Task-force", the mail received would have a "To:"
|
||
field looking like:
|
||
.literal
|
||
|
||
To: Task-force: LCampbell, King, Jones, Dickson;
|
||
|
||
.end literal
|
||
System ad=min=is=tra=tors may find this command useful in defining
|
||
mail=box names which refer to sub=jects; for in=stance, rather than
|
||
ex=pec=ting users to know who main=tains a par=tic=ular pro=gram, the
|
||
system ad=min=is=trator could put the fol=lowing commands in the system
|
||
MS.INIT (init file):
|
||
.literal
|
||
|
||
DEFINE ADDRESS-LIST MS-Bugs LCampbell@2102
|
||
DEFINE ADDRESS-LIST EMACS-Bugs RMS@MIT-AI
|
||
|
||
.end literal
|
||
To delete an ad=dress-|list de=fi=ni=tion, give the command DEFINE
|
||
ADDRESS-|LIST <name>, where <name> is the name of the address-|list to
|
||
be deleted. To delete all ad=dress-|list de=fi=ni=tions, give the
|
||
com=mand DEFINE ADDRESS-|LIST *.
|
||
.blank 2
|
||
DEFINE HEADER-ITEM
|
||
.blank
|
||
This command allows users to define header-|items. A header-|item is
|
||
a field which appears in the header portion of a mes=sage; that is, the
|
||
portion before the first blank line. These fields consist of a key=word,
|
||
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.
|
||
.blank
|
||
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.
|
||
.blank
|
||
Header-items come in three flavors: optional, pre=defined, and required.
|
||
.blank
|
||
.left margin 8
|
||
.indent -8
|
||
1) An optional header-item is one which you may elect to in=clude
|
||
in an out=going mes=sage, 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.
|
||
.blank
|
||
.indent -8
|
||
2) A pre=defined header-item is one whose data is defined in
|
||
ad=vance. MS will not prompt for it, but it will be in=cluded
|
||
in all out=going mes=sages. An example of a pre=defined header-|item
|
||
might be your tele=phone number or postal ad=dress.
|
||
.blank
|
||
.indent -8
|
||
3) A required header-item is one whose data is not sup=plied in
|
||
ad=vance, and which must be sup=plied before sending any mes=sage. MS
|
||
will prompt you for these header-|items every time you send a
|
||
mes=sage.
|
||
.left margin 0
|
||
.blank
|
||
Header-items also come in six types. These types are: ad=dress, date,
|
||
date-|and-|time, time, text-|string, and key=word. When defining a
|
||
key=word header-|item, you must supply a list of legal key=words for
|
||
that header-|item. Pre=defined key=word header-|items don't make much
|
||
sense, and are not allowed.
|
||
.blank
|
||
Here is an example of defining your tele=phone number so that it is
|
||
always in=cluded in mes=sages you send:
|
||
.literal
|
||
|
||
MS>DEFINE HEADER-ITEM Phone (TYPE) predefined text-string 475-6446
|
||
|
||
.end literal
|
||
Mes=sage which you send will now look some=thing like this:
|
||
.literal
|
||
|
||
Date: 14-Jan-86 15:33
|
||
From: <your name>
|
||
To:
|
||
cc:
|
||
note -> Phone: 475-6446
|
||
Subject: <subject>
|
||
|
||
<text>
|
||
-------
|
||
|
||
.end literal
|
||
One possible use for key=word header-|items is il=lus=trated by the fol=lowing
|
||
example:
|
||
.literal
|
||
|
||
MS>DEFINE HEADER-ITEM Priority REQUIRED KEYWORD urgent,high,medium,low
|
||
|
||
.end literal
|
||
To delete a header-|item de=fi=ni=tion, just give the command DEFINE
|
||
HEADER-|ITEM <name>, where <name> is the name of the header-|item. To
|
||
delete all header-|item de=fi=ni=tions, give the command DEFINE
|
||
HEADER-|ITEM *.
|
||
.page
|
||
Show
|
||
.blank
|
||
Available SHOW commands are:
|
||
.blank
|
||
.left margin 8
|
||
.indent -8
|
||
SHOW ALIASES
|
||
.break
|
||
Displays all currently defined aliases.
|
||
.blank
|
||
.indent -8
|
||
SHOW ADDRESS-LISTS
|
||
.break
|
||
Displays all currently defined address-lists.
|
||
.blank
|
||
.indent -8
|
||
SHOW DAYTIME
|
||
.break
|
||
Displays the current date and time.
|
||
.blank
|
||
.indent -8
|
||
SHOW DEFAULTS
|
||
.break
|
||
Shows the defaults (assumptions which MS makes on your behalf) which
|
||
are cur=rently in effect. Each de=fault is dis=played by showing the
|
||
exact command which would cause that de=fault to be in effect. Most
|
||
of the de=faults shown by this command may be changed with the SET
|
||
command (q.v.).
|
||
.blank
|
||
.indent -8
|
||
SHOW HEADER-ITEMS
|
||
.break
|
||
Displays all currently-|defined header-|items and their types, and
|
||
for pre=defined header-|items dis=plays the cur=rently defined value.
|
||
.blank
|
||
.indent -8
|
||
SHOW STATUS
|
||
.break
|
||
Shows you the name and status of the current mes=sage file. This
|
||
in=cludes the number of mes=sages in the file,
|
||
the size of the file in
|
||
.if TOPS10
|
||
disk blocks (each block con=tains 640 cha=rac=ters),
|
||
.endif TOPS10
|
||
.if TOPS20
|
||
disk pages (each page con=tains 2560 cha=rac=ters),
|
||
the date and time the file was last read,
|
||
.endif TOPS20
|
||
the number of deleted mes=sages, the number of un=seen (new) mes=sages, the current message number, and
|
||
a list of flagged mes=sages.
|
||
.blank
|
||
.indent -8
|
||
SHOW VERSION
|
||
.break
|
||
Displays the ver=sion of MS cur=rently running, and a list of optional
|
||
features which are sup=ported by this ver=sion (such as net=work mail).
|
||
.left margin 0
|
||
.page
|
||
Expunge
|
||
.blank
|
||
The EXPUNGE command causes mes=sages which have been marked for removal
|
||
with the DELETE command to actually dis=ap=pear. Until a mes=sage is
|
||
ex=punged, you may get it back by using the UNDELETE command. Once you
|
||
have ex=punged it, though, it is gone for=ever. The EXIT command usually
|
||
expunges deleted mes=sages auto=ma=tic=ally. This can be changed, though,
|
||
with the SET AUTO-|EXPUNGE command.
|
||
.page
|
||
Mark
|
||
.blank
|
||
The MARK command marks a mes=sages, or mes=sages, as having been seen.
|
||
Mes=sages are marked auto=ma=tic=ally when you examine them using the READ,
|
||
TYPE, or VERBOSE-|TYPE commands. When MS first starts up, it will
|
||
dis=play a header line for each mes=sage which is not marked as having
|
||
been seen. The UNMARK command will remove the "seen" mark
|
||
from a mes=sage.
|
||
.page
|
||
Unmark
|
||
.blank
|
||
The UNMARK com=mand removes the mark on a mes=sage which flags it as
|
||
having been seen (see the MARK command description).
|
||
.page
|
||
Verbose-type
|
||
.blank
|
||
This command dis=plays a mes=sage literally. Even if you have given a
|
||
SET ONLY-|HEADERS-|SHOWN command or a SET SUPPRESSED-|HEADERS command
|
||
to re=strict the amount of headers shown, the whole mes=sage will be
|
||
dis=played.
|
||
.page
|
||
Print
|
||
.blank
|
||
This command, which takes a mes=sage se=quence as an argument, causes
|
||
the mes=sages specified to be printed on the line printer. The lis=ting
|
||
will be pre=faced by a one-|line sum=mary of each mes=sage if you have
|
||
given the SET SUMMARY-|ON-|PRINTER-|OUTPUT command.
|
||
.note
|
||
This com=mand actually causes MS to copy the mes=sage to device LL:
|
||
(lowercase line printer); if that doesn't work, MS tries device LPT:.
|
||
MS does this to try to print the mes=sage(s) on a printer with
|
||
lowercase ca=pa=bil=ities.
|
||
.if TOPS10
|
||
.break
|
||
If you do not have spooling set for device LPT:, MS will try to assign
|
||
the physical line printer. It is highly recommended (and the usual
|
||
de=fault) that you run with spooling for all devices (SET SPOOL ALL).
|
||
Your system ad=min=is=trator (the person who assigned you your account
|
||
on the system) can set this up for you per=ma=nently.
|
||
.endif TOPS10
|
||
.end note
|
||
.page
|
||
System-messages
|
||
.blank
|
||
The system has a public mail file which con=tains mes=sages of in=terest
|
||
to all users; this is similar to a bul=letin board. The SYSTEM-|MESSAGES
|
||
command loads the public mes=sage file. You then read it just like
|
||
ordinary mail. Unless you have special privileges, though, you may not
|
||
DELETE mes=sages or EXPUNGE deleted mes=sages from this file.
|
||
.page
|
||
Take
|
||
.blank
|
||
This command takes a file=spec as an argument. It reads the con=tents
|
||
of the file and executes them as MS commands. Command files may be
|
||
nested; that is, a command file may con=tain TAKE commands.
|
||
You create command files with any editor; for more in=for=mation
|
||
on editors, refer to the ap=pro=priate user's manual.
|
||
.page
|
||
RFC822
|
||
.blank
|
||
RFC822 (Request For Comments number 822) is the name of the ARPANET
|
||
mail format stan=dard. It is the oldest and most widely-|known
|
||
elec=tronic mail stan=dard, and forms the basis of many other
|
||
stan=dards (usually sub=sets). MS tries very hard to adhere to RFC822.
|
||
While it certainly does not under=stand every=thing allowed by the
|
||
stan=dard, it should never generate mes=sages which violate it.
|
||
.blank
|
||
Those interested in the details of RFC822 should read the RFC itself.
|
||
It is available on=line 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 docu=ment that in=cludes a de=scrip=tion of RFC822.
|
||
The name of the docu=ment is "ARPANET Pro=tocol Handbook", and is
|
||
avail=able as Publication no. NIC 7104 from:
|
||
.literal
|
||
|
||
National Technical Information Service (NTIS)
|
||
5285 Port Royal Road
|
||
Springfield, VA 22161
|
||
|
||
.end literal
|
||
.blank
|
||
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, RFC822
|
||
defines "special characters" (cha=rac=ters which must be in a quoted
|
||
string to appear in a header-|item) as follows:
|
||
.literal
|
||
|
||
specials: ( ) < > @ , ; : \ " ! % []
|
||
|
||
.end literal
|
||
.page
|
||
Create-init-file
|
||
.blank
|
||
The CREATE-INIT-FILE com=mand, avail=able only at top level,
|
||
pro=vides an easy way for you to create an init file (for more
|
||
in=for=mation about init files, say HELP INIT-|FILE). When you give
|
||
the CREATE-|INIT-|FILE com=mand, MS enters create-|init mode. In=stead
|
||
of prompting with the stan=dard prompt,
|
||
.literal
|
||
|
||
MS>
|
||
|
||
.end literal
|
||
MS prompts this way:
|
||
.literal
|
||
|
||
MS Create-init>>
|
||
|
||
.end literal
|
||
While in this mode, every com=mand you type goes into the init
|
||
file, with the ex=cep=tion of the HELP and TAKE commands. The HELP
|
||
com=mand is excluded so that you can get help during your create-|init
|
||
ses=sion with=out cluttering up your init file with HELP commands.
|
||
.break
|
||
If you wish to add to an existing init file, rather than
|
||
creating a new one from scratch, just give the fol=lowing com=mand at
|
||
some point during your create-|init dialogue:
|
||
.if TOPS20
|
||
.literal
|
||
|
||
TAKE MS.INIT
|
||
|
||
.end literal
|
||
.endif TOPS20
|
||
.if TOPS10
|
||
.literal
|
||
|
||
TAKE MS.INI
|
||
|
||
.end literal
|
||
.endif TOPS10
|
||
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
|
||
com=mand. Or, when you are finished creating your init file and wish
|
||
to update the init file and return to normal mode, give the FINISH
|
||
com=mand.
|
||
.page
|
||
File
|
||
.blank
|
||
The FILE com=mand is similar to both the MOVE and COPY
|
||
commands. It allows you to copy a number of mes=sages (at top level)
|
||
or the current mes=sage (at read level) into another mes=sage file,
|
||
and optionally can delete the orig=inal mes=sage(s) from the current
|
||
mes=sage file. After copying the mes=sage(s) into the file you
|
||
specify, MS will ask whether you wish to delete the orig=inal copy of
|
||
the mes=sage(s) from the current mes=sage file. You reply either YES
|
||
or NO; NO is the de=fault and is assumed if you give a blank reply.
|
||
.page
|
||
Unflag
|
||
.blank
|
||
The UNFLAG command removes the "flag" from a message. For
|
||
more information, see the description of the FLAG command.
|
||
.page
|
||
Undelete
|
||
.blank
|
||
The UNDELETE command removes the "deleted" flag from a
|
||
message. For more detail, see the description of the DELETE command.
|
||
.page
|
||
Type
|
||
.blank
|
||
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.
|
||
.page
|
||
Exit
|
||
.blank
|
||
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.
|
||
.page
|
||
Quit
|
||
.blank
|
||
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.
|
||
.page
|
||
Push
|
||
.blank
|
||
The PUSH command places your terminal at operating system
|
||
command level, at which point you can perform any
|
||
ordinary operating system function or command. Giving the POP command
|
||
will return you to MS.
|
||
.page
|
||
Next
|
||
.blank
|
||
The NEXT com=mand causes MS to dis=play the "next" mes=sage,
|
||
that is, the mes=sage fol=lowing the current mes=sage. If the current
|
||
mes=sage is the last mes=sage in the file, you will receive an error
|
||
mes=sage.
|
||
.page
|
||
Directory
|
||
.bl
|
||
The DIRECTORY command is equivalent to the HEADERS command.
|
||
.! CMS REPLACEMENT HISTORY
|
||
|
||
|
||
.!*2 WARREN 11-Feb-1984 09:57:35 "Added help for BBoard."
|
||
.!*1 WARREN 31-Oct-1983 07:53:15 "Runoff source for MS help file"
|