home *** CD-ROM | disk | FTP | other *** search
/ Columbia Kermit / kermit.zip / mm / mm-manual-mss.tar.Z / mm-manual-mss.tar / mm-manual / 02-samples-ps.mss < prev    next >
Text File  |  1991-01-04  |  39KB  |  1,148 lines

  1. @part<two,root="mm.mss">
  2. @begin(text)
  3. @Chapter(Sample Sessions and Examples)
  4.  
  5. This section presents a series of sample sessions demonstrating the
  6. use of MM.  These topics will be covered:
  7.  
  8. @blankspace(2 lines)
  9. @begin(itemize)
  10.  
  11.           Getting Started
  12.  
  13.       Sending a Message
  14.  
  15.       Reading Mail
  16.  
  17.       Replying to Messages
  18.  
  19.       Headers
  20.  
  21.       Managing Your Mail File: Delete and Undelete
  22.  
  23.       Reading Old Messages
  24.  
  25.       Forwarding Messages
  26.  
  27.       Copying To and From Regular (Non-Mail) Files
  28.  
  29.           File Transfer Using Kermit
  30.  
  31.       Using Emacs from within MM
  32.  
  33.           Additional Mail Files
  34.  
  35.       Defining Mailing Lists
  36.  
  37. @end(itemize)
  38.  
  39. @blankspace(2 lines)
  40.  
  41. In the following examples, what you type appears in @b<bold>.  After
  42. most of the commands, hit the carriage return, marked @i(return) or
  43. @i(enter) on most keyboards, and shown here by the abbreviation
  44. @p(<cr>).  You do not have to type a space before the carriage return.
  45.  
  46. The @i(escape) key is indicated by the symbol @p<[ESC]>; it may be
  47. marked @i(meta) or @i(alt) on some keyboards.  Control Sequences are
  48. represented by @p[<ctrl/>] or @p[CTRL-] or the caret @p(^) followed
  49. by a letter.  To type a Control letter, depress the control key while
  50. typing the letter (similar to pressing shift for upper case).
  51.  
  52. @newpage<>
  53.  
  54. @Section(Getting Started)
  55.  
  56. MM can be started by simply typing @p[mm] to the Unix shell command
  57. interpreter.  Most people at Columbia use the kornshell (ksh), which is
  58. identified by the $ prompt.  So to start MM you would type:
  59.  
  60. @blankspace<1 line>
  61.  
  62. @end(text)
  63.  
  64. @begin(text2)
  65.  
  66. @begin(example)
  67. $ @b[mm <cr>]
  68. @end(example)
  69. @end(text2)
  70.  
  71. @blankspace<1 line>
  72.  
  73. @begin(text)
  74.  
  75. MM then checks to see whether you have new mail.  If you do, it displays a
  76. line indicating what the message number is, the date it was received,
  77. who the message is from, the subject and the length of the message in
  78. characters.
  79.  
  80. @begin(example) 
  81. $ @b[mm <cr>]
  82. Columbia MM, version 0.90.0
  83. Please report all bugs using MM's BUG command, or send mail to BUG-MM.  
  84. Suggestions are also welcome.
  85. Reading /u/student/CC/lmc/mbox
  86. 19 messages read
  87. N      20) 18-May Rob Cartolano       Meeting Canceled (475 chars)
  88.  
  89. [ H=headers R=read REV=review S=send Q=quit BYE ?=Hints HELP ]
  90. MM>
  91. @end(example)
  92.  
  93. In the example above, the user typed @p[mm].  The next three lines
  94. show a greeting message.  Then @i(Reading)... indicates that the old
  95. mail is being found in the file /u/student/CC/lmc/mbox.  @i(19
  96. messages read) indicates what was already stored in the mail file.
  97. The next line indicates that the user has one piece of new mail, from
  98. Rob Cartolano.  Finally, there is a "hint" line, and the @i[MM>]
  99. prompt, which is what MM types to show that it is waiting to receive a
  100. command from you. 
  101.  
  102. The "new mail" line is called a header.  It is actually a combination
  103. of several header fields that you will become familiar with later on.
  104. What do we learn from it?  The message is @i(N)ew (not read yet), it's
  105. message number @i(20) in the mail file, and it was sent on @i(18-May)
  106. by @i(Rob Cartolano).  Rob put the subject as @i(Meeting Canceled) and
  107. the message is @i(475 chars) long.
  108.  
  109. Usually, you read your new messages each time you start MM, but you
  110. don't have to.  The headers of the new messages are shown so you can
  111. decide about reading them, based on who sent a message, what it's
  112. about, and how long it is.
  113.  
  114. @newpage<>
  115.  
  116. @Section(Sending a Message)
  117.  
  118. @blankspace<1 line> 
  119.  
  120. Now that we are in MM, we would like to send a message.  Sue is
  121. sending mail to Walter with a copy to Maurice.  First she starts the
  122. MM program, then she types @p{send}.  MM prompts for the addressee,
  123. any carbon copies (cc:), and the topic of the message.  After Sue
  124. provides this information, she types in the body of the message.  When
  125. that is finished, she hits the ESC key.
  126.  
  127. @blankspace<1 line>
  128.  
  129.  
  130. @begin<example>
  131.  
  132.    $ @b<mm>
  133.    Columbia MM, version 0.90.0
  134.    Please report all bugs using MM's BUG command, or send mail to BUG-MM. 
  135.    Suggestions are also welcome.
  136.    Reading /us/us/sue/mbox
  137.    8 messages read
  138.  
  139.    [ H=headers R=read REV=review S=send Q=quit BYE ?=Hints HELP ]
  140.    MM>@b<send>
  141.     To: @b<walter>
  142.     cc: @b<maurice>
  143.     Subject: @b<SPSSX TNote Draft>
  144.     Message (End with CTRL-D or ESC
  145.      Use CTRL-B to insert a file, CTRL-E to enter editor, CTRL-F to run text 
  146.      through a filter, CTRL-K to redisplay message, CTRL-L to clear screen and
  147.      redisplay, CTRL-N to abort, CTRL-P to run a program and insert output.):
  148.  
  149.    @b<I think this is now ready for critical reading.  Do you> 
  150.    @b<want to find readers or shall I?   /sue>
  151.  
  152.    [ D=display S=send TE=text ED=edit TY=type Q=quit ?=Hints HELP ]
  153.    Send>@b(s)
  154.    walter... Queued
  155.    maurice...Queued
  156.  
  157.    [ H=headers R=read REV=review S=send Q=quit BYE ?=Hints HELP ]
  158.    MM>@b<exit>
  159.    No messages deleted.
  160.    [1] + Stopped (signal)          mm
  161.    $
  162.  
  163. @end(example)
  164.  
  165. @blankspace<1 line> 
  166.  
  167. In the above example, typing the ESC key terminated the message and
  168. left Sue in @b{send mode}, indicated by the @i<Send>> prompt.  @i{Send
  169. mode} has many of its own commands that you can see by typing @p(?).
  170. To send the message off, she typed @p(s) to the @i<Send>> prompt.  To
  171. exit MM she typed @p(exit).  If she had decided NOT to send the
  172. message, she could have typed @p(quit) at the @i<Send> prompt.
  173.  
  174. @newpage<>
  175.  
  176. @b(KEEPING A COPY FOR YOURSELF)
  177.  
  178. You may want to have a copy of a message he or she has sent.  MM does
  179. not automatically keep a copy, but there are several ways of
  180. accomplishing it.  One method is to @i<cc> yourself, and you will
  181. receive a copy of the message in your mailbox.  A second method is to
  182. use the @i<fcc> command, which sends a copy of the message to a file
  183. that you name.  In the example, both are done for the sake of
  184. demonstration.
  185.  
  186. @blankspace<1 line>
  187.  
  188. @begin<example>
  189.  
  190.    $ @b<mm>
  191.    Columbia MM, version 0.90.0
  192.    Please report all bugs using MM's BUG command, or send mail to BUG-MM. 
  193.    Suggestions are also welcome.
  194.    Reading /us/us/sue/mbox
  195.    8 messages read
  196.  
  197.    [ H=headers R=read REV=review S=send Q=quit BYE ?=Hints HELP ]
  198.    MM>@b<send>
  199.     To: @b<walter>
  200.     cc: @b<maurice, sue>
  201.     Subject: @b<SPSSX TNote Draft>
  202.     Message (End with CTRL-D or ESC
  203.      Use CTRL-B to insert a file, CTRL-E to enter editor, CTRL-F to run text
  204.      through a filter, CTRL-K to redisplay message, CTRL-L to clear screen and
  205.      redisplay, CTRL-N to abort, CTRL-P to run a program and insert output.):
  206.  
  207.    @b<I think this is now ready for critical reading.  Do you want to> 
  208.    @b<find readers or shall I?   /sue>
  209.  
  210.    [ D=display S=send TE=text ED=edit TY=type Q=quit ?=Hints HELP ]
  211.    Send>@b<fcc outmsg>
  212.    Send>@b<s>
  213.    walter... Queued
  214.    maurice...Queued
  215.    sue...Queued
  216.    *outmsg...Sent
  217.  
  218.    [ H=headers R=read REV=review S=send Q=quit BYE ?=Hints HELP ]
  219.    MM>@b<exit>
  220.    No messages deleted.
  221.    [1] + Stopped (signal)          mm
  222.    $
  223.  
  224. @end(example)
  225.  
  226. If you want to keep copies of everything you send, you can customize
  227. MM so that it does so, using one of the @i(set) commands described
  228. starting on page @Pageref<setcoms>.  
  229.  
  230. The customization commands @i(set default-cc-list) and @i(set
  231. default-fcc-list) can be used to put yourself on every cc list, or
  232. a certain file on every fcc list.  
  233.  
  234. If you use @i(fcc), either directly or through @i(set default-fcc-list),
  235. note that it assumes the file goes into the current directory.  This
  236. may cause problems if you change from your usual directory and then
  237. use MM.  You have to start MM from the right directory, or specify
  238. the directory in the @i(fcc).  The customization command @i(set
  239. saved-messages-file) is similar to @i(set default-fcc-list), but
  240. will always assume the file is in your mail-directory, and may therefore
  241. be preferable.
  242.  
  243. The file where the copies go is referred to as an additional mail
  244. file.  To look at it, at the @i(MM>) prompt type @p(get <filename>),
  245. and you can then use all the MM commands with the file, like
  246. @i(headers), @i(read), and so on.  To return to the main mail file,
  247. just type @p(get).
  248.  
  249. @newpage<>
  250. @Section(Reading Mail)
  251. @blankspace<1 line>
  252.  
  253.  
  254. The mail sent by Sue in the previous example is now read by Walter.
  255.  
  256.  
  257. @begin<example>
  258.  
  259.   $ @b<mm>
  260.   /usr/local/mm
  261.   N      6) 18-May Sue Zayac       SPSSX TNote Draft (251 chars)
  262.  
  263.   [ H=headers R=read REV=review S=send Q=quit BYE ?=Hints HELP ]
  264.   MM>@b<read>
  265.    Message 6 (251 chars)
  266.   Received: by cunixf.columbia.edu (5.54/5.10) id AA12719; 
  267.           Fri, 18 May 90 15:53:45 EDT
  268.   Date: Fri, 18 May 1990 15:53:43 EDT
  269.   From: Sue Zayac <sue@@cunixf.columbia.edu>
  270.   To: walter
  271.   Cc: maurice
  272.   Subject: SPSSX TNote Draft
  273.   Message-Id: <CMM.0.90.580161223.sue@@cunixf.columbia.edu>
  274.  
  275.   I think this is now ready for proofreading.  Do you want to 
  276.   find readers or shall I?      /sue
  277.   [Press any key to continue]
  278.  
  279.   [ D=delete H=header R=reply TY=type PRI=print Q=quit ?=Hints HELP ]
  280.   Read>
  281.  
  282. @end<example>
  283.  
  284.  
  285. After showing Walter the message, MM remained in @b{read mode},
  286. indicated by the @i[Read>] prompt.  @b{Read mode}, like @b{send mode},
  287. has several of its own commands.  Type a @p(?) at the @i(Read>) prompt
  288. to see them.  If you press @p[<cr>] at the @i(Read>) prompt, the next
  289. unseen message is displayed.  When there are no more, @p[<cr>] returns
  290. you to the top-level prompt, @i[MM>].
  291.  
  292. @newpage<>
  293.  
  294. @Section(Replying to Messages)
  295. @blankspace<1 line>
  296.  
  297. The @i(reply) command simplifies sending a message in reply to one
  298. you have received.  In this example, Walter has just read Sue's
  299. message and sends her a reply.
  300.  
  301. @begin<example>
  302.   Read>@b<reply>
  303.    Message (End with CTRL-D or ESC
  304.     Use CTRL-B to insert a file, CTRL-E to enter editor, CTRL-F to run text 
  305.     through a filter, CTRL-K to redisplay message, CTRL-L to clear screen and ]
  306.     redisplay, CTRL-N to abort, CTRL-P to run a program and insert output.):
  307.  
  308.   @b<Have Lisa and Lynn read it. - Walter>
  309.  
  310.   [ D=display S=send TE=text ED=edit TY=type Q=quit ?=Hints HELP ]
  311.   Send>@b<s>
  312.   sue... Queued
  313.  
  314.   [ D=delete H=header R=reply TY=type PRI=print Q=quit ?=Hints HELP ]
  315.   Read>
  316.  
  317. @end<example>
  318.  
  319. @i(Reply) is similar to @i(send).  @i(Reply) automatically fills in
  320. "To:" as the original sender, and copies the "Subject:" from the original
  321. message.  
  322.  
  323. @b(REPLY ALL) and @b(REPLY INCLUDING)
  324.  
  325. Two keywords can be added to the reply command.  Normally, the reply
  326. goes just to the sender of the original message, even though there may be
  327. other people who received the original message as part of its "To:" or
  328. "cc:" lists.  If you command @p(reply all), the reply will be sent to
  329. all the people who got the original.
  330.  
  331. The second keyword, @i(including), includes the original message in the
  332. reply.  In the example above, for example, if Walter had delayed
  333. replying, Sue might have forgotten what Walter's reply was about.  To
  334. guard against that, Walter could have typed @p(reply including), so
  335. Sue would receive a message containing her own message followed by
  336. Walter's response.  The included text is set off by > marks.
  337.  
  338. Both keywords can be used together, @p(reply all including).
  339.  
  340. @newpage<>
  341. @Section(Headers)@tag<hdrs>
  342. @blankspace<1 line>
  343.  
  344. Another useful command is @i{headers}.  @i{Headers} will give you a
  345. headline summary of messages in your mail file. In this example,
  346. Walter uses the command @i{headers all} to get a list of all his mail
  347. messages. [Note: @i{all} here is a message sequence that refers to all
  348. messages contained in the current mail file.  For a complete
  349. explanation of what message sequences are and which sequences are
  350. available, see page @pageref<messseq>].
  351.  
  352.  
  353. @begin<example>
  354.   $ @b<mm>
  355.   /usr/local/mm
  356.  
  357.   [ H=headers R=read REV=review S=send Q=quit BYE ?=Hints HELP ]
  358.   MM>@b<headers all>
  359.          1) 17-May Margarita Suarez    LaserWriter B (317 chars         
  360.          2) 17-May Charlie C. Kim      sunos 4.0 (313 chars)
  361.     A    3) 18-May Don Lanini          Emacs question (1036 chars)
  362.          4) 18-May Robert C Lehman     Mets on Sunday (285 chars)
  363.     A    5) 18-May Robert T. Cartolano Mac stuff (5258 chars)
  364.   R A    6) 18-May Sue Zayac           SPSSX TNote Draft (251 chars)
  365.  
  366.   [ H=headers R=read REV=review S=send Q=quit BYE ?=Hints HELP ]
  367.   MM>
  368. @end<example>
  369.  
  370.  
  371. Messages that have been answered are marked with an "A" in the first
  372. column area.  See the next page.
  373.  
  374. A useful variant of the @i{headers} command is @i{headers from <name>}
  375. (where @i{from <name>} is another example of a message sequence) to
  376. see only messages from certain people.  For example:
  377.  
  378.  
  379. @begin<example>
  380.   MM>@b<headers from su>
  381.          1) 17-May Margarita Suarez    LaserWriter B (317 chars)
  382.   R A    6) 18-May Sue Zayac           SPSSX TNote Draft (251 chars)
  383.  
  384.   [ H=headers R=read REV=review S=send Q=quit BYE ?=Hints HELP ]
  385.   MM>
  386. @end<example>
  387.  
  388.  
  389. This is a string search, not a keyword search.  Typing only part of
  390. the name ("su") will match any name with "su" in it.
  391.  
  392. Two very useful variants of the @i{headers} command are @i{headers
  393. subject <string>} and @i{headers text <string>}, which look for any
  394. messages with the string in their subject or text fields,
  395. respectively.  Sometimes you remember getting a message about 
  396. something, but not when or from whom.  Choose a good topic word (or
  397. partial word) and one of these commands should help find the
  398. message.  For example:
  399.  
  400. @begin<example> 
  401.   MM>@b<headers subj su>
  402.          2) 17-May Charlie C. Kim      sunos 4.0 (313 chars)
  403.          4) 18-May Robert C Lehman     Mets on Sunday (285 chars)
  404.  
  405.   [ H=headers R=read REV=review S=send Q=quit BYE ?=Hints HELP ]
  406.   MM> 
  407. @end<example> 
  408.  
  409. Again, note that this is a string search, not a keyword search.  Think
  410. about this when choosing the "Subject" for your own mail.  Be specific
  411. so your correspondents can do efficient @i{headers} searches.  For
  412. example, don't use something like "meeting"; use "Thursday Brown Bag
  413. Meeting".
  414.  
  415. Type @p{help message-sequence} at the @i[MM>] prompt to see all the
  416. variations of the @i{headers} command.
  417.  
  418. The letter codes at the left side of the @i(headers) display show the
  419. status of the message, as follows:
  420.  
  421. @standardtable(Name=tablet, Columns=3, AllColumns=Center, boxed)
  422. @begin(tablet)
  423. @Tableid(tablet)
  424. @TableHeading(Immediate, RowFormat tabletTopHeading, Line 
  425. 'Message Header Abbreviations') 
  426.  
  427. @TableHeading(Immediate, RowFormat tabletColumnHeadings,
  428. Line [Letter@\Name@\Meaning])
  429.  
  430. A@\answered@\You sent a @i(reply) or @i(answer) to the message.
  431.  
  432. D@\deleted@\You marked the message for deletion.  It will be erased 
  433. from your message file the next time you type @i(exit) or @i(expunge).
  434.  
  435. F@\flagged@\You used the @i(flag) command to mark the message.
  436.  
  437. N@\new@\The message is both @i(recent) and @i(unseen) (see @i[R] and @i[U]).
  438.  
  439. K@\keyword@\You used the @i(keyword) command to mark a keyword on the message.
  440.  
  441. R@\recent@\The message has arrived as of this MM session.
  442.  
  443. U@\unseen@\The message has never been @i(type)d or @i(read.)
  444.  
  445. @i(no letter)@\@\The message has already been seen.
  446.  
  447. @end(tablet)
  448. @blankspace(4 lines)
  449.  
  450. @newpage<>
  451. @Section(Managing Your Mail File: Delete and Undelete)
  452. @blankspace<1 line>
  453.  
  454. You can get rid of messages you no longer need with the @i{delete}
  455. command:
  456.  
  457. @begin<example>
  458.   MM>@b<delete 1,2>
  459.      1:2
  460.  
  461.   [ H=headers R=read REV=review S=send Q=quit BYE ?=Hints HELP ]
  462.   MM>@b<headers all>
  463.      D   1) 17-May Margarita Suarez    LaserWriter B  (317 chars)
  464.      D   2) 17-May Charlie C. Kim      sunos 4.0 (313 chars)
  465.     A    3) 18-May Don Lanini          Emacs question (1036 chars)
  466.          4) 18-May Robert C Lehman     Mets on Sunday (285 chars)
  467.     A    5) 18-May Robert T. Cartolano Mac stuff (5258 chars)
  468.   R A    6) 18-May Sue Zayac           SPSSX TNote Draft (251 chars)
  469.  
  470.   [ H=headers R=read REV=review S=send Q=quit BYE ?=Hints HELP ]
  471.   MM>
  472. @end<example> 
  473.  
  474.  
  475. Messages that have been deleted are marked with a "D" in the first
  476. column area.  Note that after messages are @i{delete}d, they are still
  477. there until you type @p{exit} and leave MM or until you type the command
  478. @p{expunge}.  This is useful if you should change your mind and want
  479. to @i{undelete} a @i{delete}d message:
  480.  
  481.  
  482. @begin<example>
  483.   MM>@b<undel 2>
  484.    2
  485.  
  486.   [ H=headers R=read REV=review S=send Q=quit BYE ?=Hints HELP ]
  487.   MM>@b<headers all>
  488.      D   1) 17-May Margarita Suarez    LaserWriter B (317 chars)
  489.          2) 17-May Charlie C. Kim      sunos 4.0 (313 chars)
  490.     A    3) 18-May Don Lanini          Emacs question (1036 chars)
  491.          4) 18-May Robert C Lehman     Mets on Sunday (285 chars)
  492.     A    5) 18-May Robert T. Cartolano Mac stuff (5258 chars)
  493.   R A    6) 18-May Sue Zayac           SPSSX TNote Draft (251 chars)
  494.  
  495.   [ H=headers R=read REV=review S=send Q=quit BYE ?=Hints HELP ]
  496.   MM>
  497. @end<example>
  498.  
  499.  
  500. @newpage<>
  501. @Section(Reading Old Messages)
  502. @blankspace<1 line>
  503.  
  504. You can reread messages in your mail file with the @i{read} or
  505. @i{review} command and the message number.
  506.  
  507. @blankspace<1 line>
  508.  
  509. @begin<example>
  510.   MM>@b<headers 6>
  511.   R A    6) 18-May Sue Zayac           SPSSX TNote Draft (251 chars)
  512.  
  513.   [ H=headers R=read REV=review S=send Q=quit BYE ?=Hints HELP ]
  514.   MM>@b<read 6>
  515.    Message 6 (251 characters):
  516.   Received: by cunixf.columbia.edu (5.54/5.10) id AA12852; 
  517.           Fri, 18 May 90 15:55:07 EDT
  518.   Date: Fri, 18 May 1990 15:55:05 EDT
  519.   From: Sue Zayac <sue@@cunixf.columbia.edu>
  520.   To: walter
  521.   Subject: SPSSX TNote Draft
  522.   Message-Id: <CMM.0.90.580161305.sue@@cunixf.columbia.edu>
  523.  
  524.   I think this is now ready for critical reading.  Do you
  525.   want to find readers or shall I?   /sue
  526.   [Press any key to continue]
  527.  
  528.   [ D=delete H=header R=reply TY=type PRI=print Q=quit ?=Hints HELP ]
  529.   Read>
  530.  
  531. @end<example>
  532.  
  533.  
  534. You can use @i{read from <name>} and @i{read subject <string>} and other
  535. variants, too.  Type @p{help message-sequence} for the variants.
  536.  
  537.  
  538.  
  539. @newpage<>
  540. @Section(Forwarding Messages)
  541. @blankspace<1 line>
  542.  
  543. Messages can be forwarded to other computer IDs with the @i{forward}
  544. command.  Before the message is sent on, you are given an opportunity
  545. to preface it with a comment.  If you don't wish to insert a comment,
  546. just press the "Escape" key (the way you usually finish entering
  547. text).  MM will send the message with a header indicating it has been
  548. forwarded from you and not sent directly from the original sender.
  549. Replies will come to you.
  550.  
  551. In this example, Walter sends Sue's message on to two other IDs.  He
  552. prefaces her message with a note of his own.
  553.  
  554. @blankspace<1 line>
  555.  
  556. @begin<example>
  557.   Read>@b<for>ward (message to) @b<lynn,lisa>
  558.    Message (End with CTRL-D or ESC
  559.      Use CTRL-B to insert a file, CTRL-E to enter editor, CTRL-F to run text 
  560.      through a filter, CTRL-K to redisplay message, CTRL-L to clear screen and
  561.      redisplay, CTRL-N to abort, CTRL-P to run a program and insert output.):
  562.  
  563.   @b<Can you read Sue's new TNote before Friday? - Walter>
  564.  
  565.   [ D=display ED=edit H=header S=send TY=type Q=quit ?=Hints HELP ]
  566.   Send>@b<s>
  567.   lynn... Queued
  568.   lisa... Queued
  569.  
  570.   [ D=delete H=header R=reply TY=type PRI=print Q=quit ?=Hints HELP ]  
  571.   Read>
  572.  
  573.   [ H=headers R=read REV=review S=send Q=quit BYE ?=Hints HELP ]
  574.   MM>@b<exit>
  575.   Expunging deleted messages.
  576.   [1] + Stopped  (signal)          mm
  577.   $
  578.  
  579. @end<example>
  580.  
  581.  
  582. Walter used the TAB key to make the computer finish out the
  583. @i(forward) command, so "ward (message to)" was printed by the
  584. computer.  Also, note that when Walter exited MM this time, the
  585. message he deleted earlier was expunged.
  586.  
  587. Lynn and Lisa will receive a message containing Walter's line "Can you
  588. read..." followed by Sue's message to Walter.
  589.  
  590. The command @i(remail) acts similarly, but does not let you insert any
  591. comment, and replies will go to the original sender.  @i(Remail) is
  592. for messages that weren't really for you.
  593.  
  594. @newpage<>
  595. @section[Copying To and From Regular (Non-Mail) Files]
  596. @blankspace(1 line)
  597.  
  598. @b(COPYING FROM A FILE INTO A MESSAGE)
  599.  
  600. You can insert a regular file into a message.  Start as you would in
  601. @i(send)ing a message.  When you wish to insert the text from the
  602. file, type CTRL-b.  You will then be prompted for the name of the
  603. file.  In this example, Sue sends her document, spssx-tnote.mss, to
  604. Lisa and Lynn.
  605.  
  606. @begin(example)
  607.   MM>@b<send>
  608.    To: @b<lisa,lynn>
  609.    cc: @b<maurice>
  610.    Subject: @b<SPSSX TNote Draft>
  611.    Message (End with CTRL-D or ESC
  612.     Use CTRL-B to insert a file, CTRL-E to enter editor, CTRL-F to run text 
  613.     through a filter, CTRL-K to redisplay message, CTRL-L to clear screen and
  614.     redisplay, CTRL-N to abort, CTRL-P to run a program and insert output.):
  615.  
  616.   @b<Here it is:>
  617.   @b<^b>
  618.   Insert file: @b<spssx-tnote.mss>
  619.   [OK]
  620.  
  621.   @b<If you have any questions, send me mail.  /sue>
  622.  
  623.   [ D=display ED=edit H=header S=send TY=type Q=quit ?=Hints HELP ]
  624.   Send>@b<s>
  625.   lisa... Queued
  626.   lynn... Queued
  627.  
  628.   [ H=headers R=read REV=review S=send Q=quit BYE ?=Hints HELP ]
  629.   MM>
  630.  
  631. @end<example>
  632.  
  633.  
  634. CTRL-b is not visible on screen, just the resulting prompt @i(Insert file: ).
  635.  
  636. It is not necessary to type anything to MM before or after inserting an
  637. external file; your entire message can consist of the inserted file.
  638.  
  639. @b(COPYING FROM A MESSAGE TO A FILE)
  640.  
  641. The @i(list) command copies a message to a regular file.  For example,
  642. here Lynn has just read Sue's message containing the document, and
  643. decides to copy it out to a file, so she can work on it outside MM.
  644.  
  645. @begin(example)
  646.   Read>@b(list suesdocument)
  647.  
  648.   [ D=delete H=header R=reply TY=type PRI=print Q=quit ?=Hints HELP ]     
  649.   Read>
  650.  
  651. @end(example)
  652.  
  653.  
  654. From the @i(MM>) prompt, specify a message sequence after @p(list
  655. suesdocument).  
  656.  
  657. A file created by @i(list) starts with a list of message headers (like
  658. the result of the @i[headers] command) for its contents, followed by a
  659. page break, and then copies of each message.  There is no page break
  660. between the messages, unless you request breaks by typing @i(list
  661. /separate-pages ...).  @i(List) does not add to an existing file; the
  662. new file created by @i(list) will replace an existing one of the same
  663. name.
  664.  
  665. @newpage<>
  666. @section(File Transfer Using Kermit)
  667. @blankspace(1 line)
  668.  
  669. Kermit can transfer files between your PC and the host computer that
  670. runs MM.  File transfer is actually the original purpose of Kermit.
  671.  
  672. There are numerous reasons to use file transfer in connection with MM.
  673. You may want to compose long MM messages with your usual PC word
  674. processor, to avoid long connect time and to avoid learning emacs.
  675. You may want to send a PC file that wasn't originally intended for
  676. electronic mail.  You and a colleague may want to work together on an
  677. article, using electronic mail to send drafts from one PC to another,
  678. possibly over long distance.
  679.  
  680. @b(FILE-TO-FILE TRANSFER)
  681.  
  682. The basic Kermit operation is to transfer files between the PC and the
  683. host.  For information, see the handouts @i(Using MS-DOS Kermit) and
  684. @i(Using MacKermit), and the booklet @i(Kermit User's Guide), at the
  685. Business Office, 102 Philosophy Hall (854-3555).
  686.  
  687. You can use file-to-file transfer if you wish.  Downloading, use the
  688. MM command @i(list) at the @i(MM>) or @i(Read>) prompt to copy a
  689. message into a file on the host, and then, at the shell, use Kermit to
  690. transfer that file to your PC.  Uploading, use Kermit to transfer a
  691. file from your PC to the host, and then, when sending a message, use
  692. CTRL-b to copy that file into the message.
  693.  
  694. The basic procedure has the drawback that a file is created on the
  695. host solely for purposes of transfer.  You don't really need it there,
  696. and you have to remember to remove it at some point.  The following
  697. examples show how to transfer directly from and to MM.
  698.  
  699. @b(TRANSFER FROM MM TO PC) @tag(klist)
  700.  
  701. In this example, Lynn has just read the document sent by Walter, and
  702. decides to copy it to a file to be called @i(spssx) on her IBM XT.
  703.  
  704. @begin(example)
  705.  
  706.   Read>@b(list | "kermit -s - -a spssx")
  707.   Escape back to your local system and give a RECEIVE command...
  708.       @b(^]c)
  709.  
  710.       Kermit-MS>@b(receive)
  711.       @r([--Kermit screen showing file transfer--]) 
  712.       Kermit-MS>@b(c)
  713.  
  714.   Read>
  715.  
  716. @end(example)
  717.  
  718. The Kermit commands, shown above as indented, are cleared from the screen
  719. once the file transfer is complete.
  720.  
  721. The key to the transfer is the command @i(list | "kermit -s - -a
  722. spssx"), which starts up the host Kermit and tells it to send.  Notice
  723. the quotation marks.
  724.  
  725. Lynn also could have done this later on from the @i(MM>) prompt.  If
  726. it were message 12, for example, the command at @i(MM>) would be
  727. @i(list | "kermit -s - -a spssx" 12).  
  728.  
  729. @newpage<>
  730.  
  731. @b(TRANSFER FROM PC TO MM)
  732.  
  733. Kermit transfers files in a format called @i(ASCII) or @i(text).  Many
  734. MS-DOS word processors keep files in their own special formats, so the
  735. files must be translated into ASCII before sending and from ASCII
  736. after receiving.  Each word processor has a procedure to do so fairly
  737. simply.  (Macintosh is similar.  A file you create should be saved as
  738. @i(text).  When you try to open a @i(text) file for editing, it is
  739. converted automatically.)
  740.  
  741. In this example, Lynn has written up comments about Sue's document
  742. using her favorite word processor on her XT.  She then used the word
  743. processor's commands to make an ASCII text version of the document,
  744. named @i(comments).  Now she is sending it to Sue.
  745.  
  746. @begin(example)
  747.  
  748.   MM>@b(send)
  749.    To: @b(sue)
  750.    cc: 
  751.    Subject: @b(spssx tnote)
  752.    Message (End with CTRL-D or ESC
  753.     Use CTRL/B to insert a file, CTRL/E to enter editor, CTRL/F to run text
  754.     through a filter, CTRL/K to redisplay message, CTRL/L to clear screen and
  755.     redisplay, CTRL/N to abort, CTRL/P to run a program and insert output.):
  756.  
  757.   @b(Sue, here are some comments on the spssx tnote:)
  758.  
  759.   @b(^p)
  760.   Command: @b(kermit -k)
  761.       @b(^]c)
  762.   
  763.       Kermit-MS>@b(send comments)
  764.       @r([--Kermit screen showing file transfer--])
  765.       Kermit-MS>@b(c)      
  766.  
  767.   [Done]
  768.   
  769.   @b(Lisa is sending her comments separately.  Lynn)
  770.   
  771.   [ D=display S=send TE=text ED=edit TY=type Q=quit ?=Hints HELP ]
  772.   Send>
  773.  
  774. @end(example)
  775.  
  776. CTRL-p does not appear on screen, but only the response to it, the
  777. prompt @i(Command: ).  After the command @i(kermit -k), the cursor
  778. drops to the next line, but there is no prompt at all.  After the file
  779. transfer, the Kermit commands, shown above as indented, are cleared
  780. from the screen, so the comment @i([Done]) appears on the line right
  781. under @i(Command: ).
  782.  
  783. As you can see, MM states that CTRL-p is used "to run a program and
  784. insert output".  The command @i(kermit -k) runs the host Kermit and
  785. tells it to stand by to receive a file.  Kermit's output is the file
  786. that it receives.
  787.  
  788. In the example, Lynn wrote a line of text before and after the file.
  789. This is not required; the file could be the entire message.
  790.  
  791. @b(MAC KERMIT)
  792.  
  793. Mac Kermit works substantially the same as MS-DOS Kermit, shown in the
  794. examples here.  Instead of typing @p(CTRL-] c) and then @p(send) or
  795. @p(receive), pull down the file menu and choose @i(send) or
  796. @i(receive).
  797.  
  798. @newpage<>
  799. @Section(Using Emacs from within MM)@tag<emacsref>
  800. @blankspace<1 line>
  801.  
  802. MM's editor, called text mode, is fairly limited.  It does line wrap,
  803. but the only way to go back and change anything is to backspace to it,
  804. erasing the last part you typed, and then retype forward.
  805.  
  806. @i{GNU Emacs}, a screen-oriented text editor, is far more powerful.
  807. If you know @i{emacs}, you may want to use it from within MM.  [Note:
  808. If you don't know @i{emacs}, try the online tutorial.  Type @p{edit}
  809. to the shell prompt @i($), then type @p(CTRL-h t).]  With @i{emacs} you
  810. can do such things as move easily back and forth, insert, move and
  811. delete larger pieces of text, clean up messy lines by re-justifying
  812. paragraphs, search for and replace specific strings of characters, and
  813. use the @i{ispell} spelling checker and correction program.
  814.  
  815. It is difficult to demonstrate the use of a screen-oriented editor on
  816. a piece of paper, so this example only shows how to begin and end
  817. @i{emacs} and then send the edited file.  In this example, Lynn is
  818. sending comments on the SPSSX TNote back to Sue.  She starts her
  819. message in text mode.  After a line or two, she decides that she needs
  820. more editing power.  She then hits CTRL-e to move to @i{emacs}.
  821.  
  822. @blankspace<1 line>
  823.  
  824. @begin<example>
  825.  
  826.    $ @b<mm>
  827.    /usr/local/mm
  828.  
  829.    [ H=headers R=read REV=review S=send Q=quit BYE ?=Hints HELP ]
  830.    MM>@b<send>
  831.     To: @b<sue>
  832.     cc: @b<lisa>
  833.     Subject: @b<Comments on the SPSSX TNote Draft>
  834.     Message (End with CTRL-D or ESC
  835.      Use CTRL-B to insert a file, CTRL-E to enter editor, CTRL-F to run text 
  836.      through a filter, CTRL-K to redisplay message, CTRL-L to clear screen and
  837.      redisplay, CTRL-N to abort, CTRL-P to run a program and insert output.):
  838.  
  839.    @b<I have a couple of comments:>
  840.  
  841.    @b<1.  COuld you make the 2nd exxample shorter.>
  842.  
  843.    @b<2.  In the first exampel, I think your using one of your>
  844.    @b<own commands, not a system one.  Tiht may might will confuse>
  845.    @b<people.>
  846.  
  847.    @b<2.  Thirdly.  Oh drat, I better edit this....>
  848.    @b<^E>
  849.  
  850. @end<example>
  851.  
  852. @newpage<>
  853.  
  854. The display in @i<emacs> is actually two screens: In the smaller, top
  855. screen is the address information.  In the larger, bottom screen is
  856. the message waiting to be edited.  At the very bottom you will see the
  857. message @i[Don't forget to save your buffers if you want your changes
  858. to take effect.]
  859.  
  860. @begin<example>
  861.  
  862.  From: Lynn Jacobsen <lynn@@cunixf.cc.columbia.edu>
  863.  To: sue                                                         
  864.  Cc: lisa                                                        
  865.  Subject: Comments on the SPSSX TNote Draft                      
  866.  @i{-----Emacs: *MM Headers*         (Text Fill)--------All--------}
  867.                                                                 
  868.     @b<I have a couple of comments:>                                
  869.                                                                 
  870.     @b<1.  COuld you make the 2nd exxample shorter.>                
  871.                                                                 
  872.     @b<2.  In the first exampel, I think your using one of>         
  873.     @b<your own commands, not a system one.  Tiht may might>        
  874.     @b<will confuse people.>                                        
  875.                                                                 
  876.     @b<2.  Thirdly.  Oh drat, I better edit this....>               
  877.                                                                 
  878. @blankspace<3 lines>
  879.  @i{-----Emacs: *MM Outgoing*        (Text)----Bot-----------------}
  880.  Don't forget to save your buffers if you want your changes to take effect
  881. @end<example>
  882.  
  883. Now make whatever changes need to be made.  When you are finished, start
  884. returning to MM by typing CTRL-x CTRL-z:
  885.  
  886. @begin<example>
  887.                                                                 
  888.  From: Lynn Jacobsen <lynn@@cunixf.cc.columbia.edu>
  889.  To: sue                                                         
  890.  Cc: lisa                                                        
  891.  Subject: Comments on the SPSSX TNote Draft                      
  892.  @i{-----Emacs: *MM Headers*         (Text Fill)--------All--------}
  893.                                                                 
  894.     @b<I have a couple of comments:>
  895.                                 
  896.     @b<1.  In the first example, I think you're using one of>       
  897.     @b<    your own commands, i.e., "pp".  This will confuse>       
  898.     @b<    people.  It would be better to use "p unn".>             
  899.                                                                 
  900.     @b<2.  Could you make the 2nd example shorter?  You>            
  901.     @b<    don't really need the second "list".>                    
  902.                                                                 
  903.     @b<3.  There's a typo in example 3.  It's "curmudgeon">         
  904.     @b<    not "crudmugeon".>                                       
  905.                                                                 
  906. @blankspace<3 lines>
  907.  
  908.  @i{-----Emacs: *MM Outgoing*        (Text)----Bot-----------------}
  909.  @b<C-x C-z>                                                        
  910.  
  911. @end<example>
  912.  
  913. @newpage<>
  914.  
  915. Immediately after you type CTRL-x CTRL-z but @i<before> you are returned to
  916. MM, you will see a message like this one at the bottom of the @i{emacs}
  917. screen:
  918. @begin<example>
  919. @i[Save file /f/us/us/lynn/.mm-outgoing.21393? (y or n)]
  920. @end<example>
  921. @blankspace<1 line>
  922.  
  923. Type a @p(y) if you want to save this message.  Typing an @p(n) will discard
  924. the changes made since starting @i<emacs>.  Actually, @i(emacs) will ask
  925. first if you are sure you want to discard the message.
  926.  
  927. Now you are back at the @i(Send>) prompt.  If you like, use the
  928. @i<display> command to check what your editing looks like.
  929.  
  930. If, at the @i(Send>) prompt, you still had second thoughts about the
  931. message, you could type the word @p{edit} to return again to
  932. @i{emacs}.
  933.  
  934. The message is sent only when you give a @p(send) command.
  935.  
  936. @newpage<>
  937. @Section(Additional Mail Files)
  938. @blankspace(1 line)
  939.  
  940. Your main mail file is named @i(mbox).  All the messages you have are
  941. stored in the one file.  When MM starts up, it copies any new mail you
  942. have into mbox, and then shows you the headers of the new mail.
  943.  
  944. If you want to keep a large number of old messages, it is a good idea
  945. to put them into additional mail files, rather than leave them in
  946. mbox.  MM can start up faster.  You might have just one other file
  947. for old mail, or you could classify the mail by topic or sender.
  948.  
  949. Either of the commands @i(move) and @i(copy) place mail into another 
  950. mail file.  The difference is that @i(move) marks the messages for
  951. deletion, while @i(copy) does not.
  952.  
  953. The command @i(get) is used to change between mail files.
  954.  
  955. Here, Sue has decide to start a mail file called waltermail to hold
  956. messages from Walter.  To be sure, she then @i(get)s that file and
  957. uses the @i(headers) command to check it.
  958.  
  959. @begin(example)
  960.  
  961.   MM>@b(move waltermail from walter)
  962.   File does not exist: /f/us/us/sue/waltermail
  963.   Do you want to create it? @b(yes)
  964.    4,15:16,22,26,31:32,45,51
  965.   
  966.   [ H=headers R=read REV=review S=send Q=quit BYE ?=Hints HELP ]  
  967.   MM>@b(get waltermail)
  968.  
  969.   [ H=headers R=read REV=review S=send Q=quit BYE ?=Hints HELP ]
  970.   MM>@b(headers all)
  971.  
  972. @end(example)
  973.  
  974. Since this is a new mail file, MM first verifies whether Sue wants to
  975. create it.  The response to the @i(move) command then indicates that
  976. the messages specified by "from walter" are 4, 15, 16, 22, 26, 31, 32,
  977. 45 and 51.  In the new file waltermail, they will be numbered 1, 2, 3,
  978. etc., as Sue will see in response to the @i(headers all) command
  979. issued at the end of the example.  Since Sue used the @i(move)
  980. command, the messages are now marked for deletion in mbox.
  981.  
  982. From now on, Sue can type @p(move waltermail) at the @i(Read>) prompt
  983. after reading a message, and that message will be moved to the
  984. waltermail file.  
  985.  
  986. Once she has typed the command @i(get waltermail), Sue can type the
  987. usual MM commands and they will apply to the waltermail file.  One
  988. thing she will need to do is delete unwanted messages in it, and
  989. type the @i(expunge) command to eliminate them, so that the file does
  990. not become too large.
  991.  
  992. To return to mbox, Sue can then type @p(get mbox), but the command
  993. @i(get), with no filename, always refers to mbox, so Sue actually
  994. types:
  995.  
  996. @begin(example)
  997.  
  998.   MM>@b(get)
  999.  
  1000.   [ H=headers R=read REV=review S=send Q=quit BYE ?=Hints HELP ]
  1001.   MM>
  1002.  
  1003. @end(example)
  1004.  
  1005. @newpage<>
  1006. @Section(Nicknames and Mailing Lists)@tag<defref>
  1007. @blankspace<1 line>
  1008.  
  1009. @b(NICKNAMES)
  1010.  
  1011. Probably you will send mail regularly to certain people.  If they have
  1012. long or strange addresses, you may want to define an @i(alias) for
  1013. each of them to save typing or to avoid looking up the address. To do
  1014. so, use the @i(define) command:
  1015.  
  1016. @begin(example)
  1017.   MM>@b(define linda muurb@@cuvmb)
  1018.   MM>@b(define rich rich@@machine1.com.bfu.edu)
  1019. @end(example)
  1020.  
  1021. Then, when you send mail, type the alias after @i(To:), and MM will
  1022. send the mail to the real address you defined.
  1023.  
  1024. After you have defined an alias, you must deliberately save it if you
  1025. want to use it again.  To save an alias definition, use the @i{save-init} 
  1026. command.  It takes no arguments:
  1027.  
  1028. @blankspace(1 line)
  1029. @end(text)
  1030. @begin(text2)
  1031.  
  1032. @begin<example>
  1033.   MM>@b<save-init>
  1034. @end<example>
  1035.  
  1036. @end(text2)
  1037. @begin(text)
  1038. @blankspace(1 line)
  1039.  
  1040. This  will update a file named @i{.mminit} in your directory (or create
  1041. it).  Whenever you use MM in the future, any aliases in this file will
  1042. be available.
  1043.  
  1044. To find out what aliases you have already defined, use the command
  1045. @i{who ?}.  This will give a list of aliases.  To find out who a
  1046. particular alias is, type @p{who} and the name of the alias.  For
  1047. example:
  1048.  
  1049. @begin<example>
  1050.   MM>@b<who ?> mail alias, one of the following:
  1051.   linda    rich
  1052.    or recipient name, text string
  1053.   MM>@b<who linda>
  1054.   muurb@@cuvmb
  1055. @end<example>
  1056.  
  1057. @blankspace(1 line)
  1058.  
  1059. @b(MAILING LISTS)
  1060.  
  1061. You can also use an alias as a mailing list.  Just define the alias as
  1062. a group of user IDs:
  1063.  
  1064. @begin<example>
  1065.   MM>@b<define stats sue,maurice,jte,wmbcu@@cuvmb>
  1066. @end<example>
  1067.  
  1068. Send mail, typing @i(stats) after the @i(To:) prompt, and MM will send it
  1069. to the whole list.
  1070.  
  1071. Although the purpose is different, a mailing list alias is the same
  1072. thing to MM as a nickname alias.  The @i(who) command now will show
  1073. this:
  1074.  
  1075. @begin<example>
  1076.   MM>@b<who ?> mail alias, one of the following:
  1077.   linda    rich    stats
  1078.    or recipient name, text string
  1079.   MM>@b<who stats>
  1080.   sue, maurice, jte, wmbcu@@cuvmb
  1081. @end<example>
  1082.  
  1083. @newpage<>
  1084.  
  1085. A better way to define a mailing list is to create a file that has all
  1086. the addresses in the list.  (Use @i(emacs) for example.)  Then use the
  1087. @i<define> command to tell MM about the file.  In the example below,
  1088. we start by creating a file called @i<statspeople> containing all the
  1089. ID's we want in our group.
  1090.  
  1091. The shell command @i(more) shows the contents of a file.
  1092.  
  1093. @begin<example>
  1094.  
  1095. $ @b<more statspeople>
  1096. sue,maurice,jte,wmbcu@@cuvmb.bitnet
  1097.  
  1098. @end(example)
  1099.  
  1100. Now we define @i(stats) so that it will be an alias for whatever is in
  1101. the file @i(statspeople).
  1102.  
  1103. @begin(example)
  1104.  
  1105. MM>@b<define stats @@@@statspeople>
  1106. MM>@b<who stats>
  1107. @@@@/us/us/lynn/statspeople
  1108. MM>@b<send>
  1109.  To: @b(stats)
  1110.  cc:
  1111.  Subject: @b<Time sheets>
  1112.  Message (End with CTRL-D or ESC
  1113.   Use CTRL-B to insert a file, CTRL-E to enter editor, CTRL-F to run text 
  1114.   through a filter, CTRL-K to redisplay message, CTRL-L to clear screen and 
  1115.   redisplay, CTRL-N to abort, CTRL-P to run a program and insert output.):
  1116.  
  1117.    @b<There was an error in one of the timesheets last week.>
  1118.    @b<I will correct it as soon as I can.>
  1119.  
  1120.    @b<lynn>
  1121. S>@b<display>
  1122. From:  lynn jacobsen <lynn@@cunixf.cc.columbia.edu>
  1123. To:  sue, maurice, jte, wmbcu@@cuvmb.bitnet
  1124. Subject: Time sheets
  1125.  
  1126. There was an error in one of the timesheets last week.
  1127. I will correct it as soon as I can.
  1128.  
  1129. lynn
  1130. @end<example>
  1131.  
  1132. The symbols @i(@@@@) tell MM to use the file @i(statspeople) whenever
  1133. you mail to @i(stats).  You can change the file as the people involved
  1134. change, and each time you send a message to @i(stats), MM will look at
  1135. the file @i(statspeople) to see who is in it now.  Note that @i(who
  1136. stats) shows the name of the file, not who is in it.
  1137.  
  1138. If, instead, you type @i(define stats @@statspeople), with only one
  1139. @i(@@), MM will copy the list of names out of @i(statspeople) at the
  1140. time you define it.  MM will not look in the file again: even if you
  1141. change it, MM will not change the definition of @i(stats).  In this
  1142. case @i(who stats) will show the list of names.
  1143.  
  1144. The file can have the same name @i(stats) as the alias; we used
  1145. different names here to clarify the discussion.
  1146.  
  1147. @end(text)
  1148.