home *** CD-ROM | disk | FTP | other *** search
/ Usenet 1994 October / usenetsourcesnewsgroupsinfomagicoctober1994disk2.iso / unix / volume22 / elm2.3 / part06 < prev    next >
Text File  |  1990-06-07  |  50KB  |  1,523 lines

  1. Subject:  v22i065:  ELM mail syste, release 2.3, Part06/26
  2. Newsgroups: comp.sources.unix
  3. Approved: rsalz@uunet.UU.NET
  4. X-Checksum-Snefru: 8250de5b 90f600e8 f6d4659e 05b5850b
  5.  
  6. Submitted-by: Syd Weinstein <syd@dsinc.dsi.com>
  7. Posting-number: Volume 22, Issue 65
  8. Archive-name: elm2.3/part06
  9.  
  10. ---- Cut Here and unpack ----
  11. #!/bin/sh
  12. # this is part 6 of a multipart archive
  13. # do not concatenate these parts, unpack them in order with /bin/sh
  14. # file doc/Ref.guide continued
  15. #
  16. CurArch=6
  17. if test ! -r s2_seq_.tmp
  18. then echo "Please unpack part 1 first!"
  19.      exit 1; fi
  20. ( read Scheck
  21.   if test "$Scheck" != $CurArch
  22.   then echo "Please unpack part $Scheck next!"
  23.        exit 1;
  24.   else exit 0; fi
  25. ) < s2_seq_.tmp || exit 1
  26. echo "x - Continuing file doc/Ref.guide"
  27. sed 's/^X//' << 'SHAR_EOF' >> doc/Ref.guide
  28. X
  29. X.lp \h'24p'h 66p
  30. XDisplay the current message with all headers intact.
  31. XWhen you display a message with other commands,
  32. Xcertain header lines are formatted and others discarded (according
  33. Xto the \f2weedlist\fP parameter in your \f2.elm/elmrc\f1 file).
  34. X
  35. X.lp \h'24p'i 66p
  36. XReturn to the index screen,
  37. Xwhen issued in the builtin pager or at the end of a message (with
  38. Xeither the builtin pager or an external pager).
  39. X
  40. X.lp "\h'24p'j or <down>, k or <up>" 66p
  41. XThese four keys work similarly to what they would do in \f2vi\f1 or
  42. Xany of the other (precious few) screen oriented
  43. Xprograms.  The `j' and <down> keys move
  44. Xthe current message pointer down to the next message skipping
  45. Xover any marked deleted (going to
  46. Xthe next page if needed) and the `k' and <up> keys move the current
  47. Xmessage pointer back to the previous message skipping
  48. Xover any marked deleted (also changing pages if needed)
  49. X
  50. X.lp "\h'24p'J, K" 66p
  51. XThese two keys work similarly to their lower case counterparts,
  52. Xexcept that they don't skip over deleted messages.
  53. X
  54. X.lp \h'24p'l 66p
  55. XLimit.  This feature allows you to specify a subset of the existing
  56. Xmessages to be dealt with.  For example, let's say we had a folder with
  57. Xfour hundred messages in it, about four or five different subjects.  We
  58. Xcould then limit what we're dealing with by using the \f2limit\f1
  59. Xcommand.  Pressing `l' would result in the prompt:
  60. X.nf
  61. X.ft CW
  62. X.zf
  63. X.ti +.5i
  64. XCriteria: 
  65. X.ft 1
  66. X.fi
  67. Xto which we could answer 
  68. X.ft CW
  69. X.zf
  70. Xsubject \f2string\f1, 
  71. X.ft CW
  72. X.zf
  73. Xfrom \f2string\f1 or
  74. X.ft CW
  75. X.zf
  76. Xto \f2string\f1.  In our example, we could use 
  77. X.ft CW
  78. X.zf
  79. Xsubject programming\f1
  80. Xas a criteria for selection.  Once we've limited our selections down,
  81. Xthe screen will be rewritten with just the selected messages
  82. Xand the top line will change to have a message
  83. Xlike:
  84. X.nf
  85. X.ft CW
  86. X.zf
  87. X.ps 9
  88. X.tl ''     Folder is "=elm" with 92 shown out of 124 [Elm 2.2]'
  89. X.ps 10
  90. X.ft 1
  91. X.fi
  92. XWe can further limit selections by entering further criteria, each
  93. Xtime using the \f2limit\f1 option again.
  94. X
  95. XTo clear all the criteria and get back to the `regular' display, simply
  96. Xenter \f2all\f1 as the limiting criteria.  It should be noted that the
  97. Xselection based on ``to'' isn't fully implemented for this version, so
  98. Xit is recommended that users stay with ``subject'' and ``from'' as the
  99. Xbasis for their criteria.
  100. X
  101. X.lp \h'24p'm 66p
  102. XMail.  Send mail to a specified user.  The prompt that is associated
  103. Xwith this command is `Send mail to :'.  Entering an alias name results
  104. Xin the full address being rewritten in parenthesis immediately.  This
  105. Xprompt is followed by `Subject:' which allows the user to title their
  106. Xnote.  The final field is `Copies to: ', which allows other people
  107. Xspecified to receive "carbon copies" of the message.  (See the \f2askcc\f1
  108. Xoption of the \f2.elm/elmrc\f1 file above.)  Upon entering all three items the 
  109. Xeditor is invoked and the message can be composed.
  110. X
  111. X.lp \h'24p'n 66p
  112. XNext message that is not marked deleted:
  113. Xuseful for displaying successive messages in a folder.
  114. XWhen issued from the index screen, it displays the current message,
  115. Xand then when issued while in the builtin pager or at the end of a message
  116. X(with either the builtin pager or an external pager),
  117. Xit will display the first screen of the next message not marked for deletion.
  118. X
  119. X.lp \h'24p'o 66p
  120. XOptions.  This full-screen display allows you to alter the settings
  121. Xof a number of parameters, including the current sorting method,
  122. Xthe method of printing files, the calendar file, the save file, and
  123. Xso on.  It's self-documenting (where have you heard \f2that\f1
  124. Xbefore?) so isn't explained in too much detail here.
  125. X
  126. X.lp \h'24p'p 66p
  127. XPrint.  This allows you to print out the current
  128. Xmessage or the tagged messages to a previously defined printer.  (See
  129. Xthe section on the \f2.elm/elmrc\f1 discussing the \f2print\f1 variable.)
  130. X
  131. X.lp \h'24p'q 66p
  132. XQuit.  If you in the pager, you are returned to the index screen. If you are
  133. Xon the index screen, \f2elm\f1 quits altogether.  However, if you have the
  134. Xoption \f2ask\fP set, \f2elm\f1 first prompts you for the disposition of the
  135. Xmessages in the current folder.  If any messages are marked for deletion, it
  136. Xwill ask if you want them deleted.  If the current folder is your incoming
  137. Xmailbox, you will also be asked if read messages should be stored in your
  138. X\f2receivedmail\f1 folder,
  139. Xand if unread messages should be kept in the incoming mailbox.
  140. XThe default answers to these questions are set by the \f2.elm/elmrc\f1
  141. Xoptions \f2alwaysdelete\fP, \f2alwaysstore\fP, and \f2alwayskeep\fP.
  142. XHowever, if you elect to not store your read messages (i.e. keep them)
  143. Xit is presumed you want to keep your unread messages, too.
  144. X
  145. X.lp \h'24p'Q 66p
  146. XQuick quit.  This behaves similar to the `q' command except that
  147. Xyou are never prompted for answers to the message disposition questions.
  148. X\f2Elm\f1 will dispose of messages according to the values you
  149. Xhave set for \f2alwaysdelete\f1, \f2alwaysstore\f1, and \f2alwayskeep\f1
  150. Xin your \f2.elm/elmrc\f1 file.
  151. X
  152. X.lp \h'24p'r 66p
  153. XReply.  Reply to the sender of the current message.  If
  154. Xthe \f2autocopy\f1 flag is OFF in your \f2.elm/elmrc\f1 file, the program will 
  155. Xprompt ``Copy message? (y/n)'' to which the user can specify 
  156. Xwhether a copy of the source message is to be copied into the edit
  157. Xbuffer, or not.  If copied in, all lines from the message are 
  158. Xprepended with the \f2prefix\f1 character sequence specified in
  159. Xyour \f2.elm/elmrc\f1 file.
  160. X
  161. X.lp \h'24p's 66p
  162. XSave to folder.  This command is like the `copy' command, except
  163. Xthat the saved messages are marked for deletion, and that if you are
  164. Xsaving just the current message, the current message pointer is
  165. Xincremented afterwards (see the \f2resolve\f1 option in the \f2.elm/elmrc\f1
  166. Xfile above).  This command expands folder names
  167. Xwith `~' being your home directory and `=' being your
  168. X\f2maildir\f1 directory, if defined.  This command also allows you to
  169. Xuse `>' for your \f2receivedmail\f1 folder and
  170. X`<' for your \f2sentmail\f1 folder.
  171. X
  172. X.lp \h'24p't 66p
  173. XTag.
  174. X.fn
  175. X4. Currently only \f2pipe\f1, \f2print\f1, and \f2save\f1 support this.
  176. X.ef
  177. XTag the current message for a later operation\s-2\u4\d\s0.
  178. X
  179. X.lp \h'24p'<control>-T 66p
  180. XTag all messages containing the specified pattern.  Since \f2tagging\f1
  181. Xmessages can occur on screens other than the one being viewed, the 
  182. X\f2elm\f1 system will first check to see if any messages are currently
  183. X\f2tagged\f1 and ask you if you'd like to remove those tags.  After
  184. Xthat, it will, similar to the \f2<control>-D\f1 function, prompt for
  185. Xa pattern to match and then mark for deletion all messages that contain
  186. Xthe (case insensitive) pattern in either the \f2from\f1 or \f2subject\f1
  187. Xlines. 
  188. X
  189. X.lp \h'24p'x 66p
  190. XExit.  This leaves \f2elm\f1 discarding any changes to the mailbox.
  191. XIf changes are pending (such as messages marked for deletion) a prompt
  192. Xis made to confirm discarding the changes.  If confirmed, no
  193. Xmessages are deleted and the statuses of messages are unchanged.  That is,
  194. Xany messages that were new will remain new instead of being noted as old,
  195. Xand any messages that were read for the first time
  196. Xwill be again noted as unread.
  197. X
  198. X.lp \h'24p'X 66p
  199. XExit immediately.  This leaves \f2elm\f1 in the quickest possible manner
  200. Xwithout even prompting about discarding the changes to the mailbox.
  201. XNo messages are deleted and the statuses of messages are unchanged.  That is,
  202. Xany messages that were new will remain new instead of being noted as old,
  203. Xand any messages that were read for the first time
  204. Xwill be again noted as unread.
  205. X
  206. X.in 0
  207. X.sp
  208. XWhen you are about to send of a message under the \f2forward\f1, \f2mail\f1,
  209. Xor \f2reply\f1 commands (see above), a small menu of the following
  210. Xoptions appears:
  211. X
  212. X.lp \h'24p'c 66p
  213. XSpecify folder for saving a copy to.  This allows you to override the
  214. X\f2copy\f1, \f2forcename\f1 and \f2savename\f1 options
  215. Xof your \f2.elm/elmrc\f1 file.  It prompts you for the name
  216. Xof the folder where a copy of the outgoing message is to be saved.  The
  217. Xdefault displayed is taken from those three \f2.elm/elmrc\f1
  218. Xoptions and can be changed.  This command also allows you to
  219. Xuse `>' for your \f2receivedmail\f1 folder
  220. Xand `<' for your \f2sentmail\f1 folder,
  221. Xand `=?' to mean ``conditionally save by name''
  222. Xand `=' to mean ``unconditionally save by name''. (See the \f2savename\f1
  223. Xoption above for details on saving by name.)  (Since you could next enter
  224. Xthe \f2edit headers\f1 command and change the recipients
  225. Xof your message, the name of the folder under the
  226. Xtwo ``save by name'' options is not established until you enter the \f2send\f1
  227. Xcommand.)  You can also enter `?' at the prompt
  228. Xto list the names of your folders.
  229. X
  230. X.lp \h'24p'f 66p
  231. XForget.  This gets you out of sending a message you started. If you are
  232. Xin send-only mode, the message is saved to the file \f2Cancelled.mail\f1
  233. Xin your home directory.  Otherwise 
  234. Xit can be restored at the next \f2forward\f1, \f2mail\f1,
  235. Xor \f2reply\f1 command during the current session of \f2elm\f1. After
  236. Xissuing one of those commands you will be prompted with ``Recall last
  237. Xkept message?''
  238. X
  239. X.lp \h'24p'e 66p
  240. XEdit message (or form).  Entering this command will allow you to edit
  241. Xthe text of your message or form.
  242. X
  243. X.lp \h'24p'h 66p
  244. XEdit headers.  This puts you into the \f2header editing mode\f1, whereby
  245. Xyou can edit to any of the various headers of your message.  Like
  246. Xthe options screen, it's self-documenting, so it isn't explained in too much
  247. Xdetail here.
  248. X
  249. X.lp \h'24p'm 66p
  250. XMake form.  This converts the message you have edited into a form.  (See
  251. X\f2The Elm Forms Mode Guide\f1 for more details.)
  252. X
  253. X.lp \h'24p's 66p
  254. XSend.  This sends the message as is without any further ado.
  255. X.in 0
  256. X.br
  257. X.ne 5
  258. X.sp
  259. X.hn 1 "Using Elm with ``editor = none''"
  260. X.sp
  261. XThe \f2Elm\f1 program also supports a builtin editor for simple message 
  262. Xcomposition that is very (very) similar to the simple line
  263. Xeditor available from the \f2Berkeley Mail\f1 system.
  264. X
  265. XTo access it, you need merely to specify ``\f2editor=none\f1'' in
  266. Xyour \f2.elm/elmrc\f1 file.  
  267. XWith that, any messages to be composed
  268. Xthat don't already have text in the buffer (e.g. no reply with
  269. Xthe text included, etc), will use this editor.
  270. X.sp
  271. XFrom the builtin editor, the following options are available for use.
  272. XEach command here is prefixed with a `~'.
  273. XYou can specify a different ``escape'' character in your \f2.elm/elmrc\f1 file,
  274. Xif you desire (see above).
  275. X.sp
  276. X
  277. X.lp \h'16p'~? .5i
  278. XPrint a brief help menu.
  279. X
  280. X.lp \h'16p'~b .5i
  281. XChange the Blind-Carbon-Copy list.
  282. X
  283. X.lp \h'16p'~c .5i
  284. XChange the Carbon-Copy list.
  285. X
  286. X.lp \h'16p'~e .5i
  287. XInvoke the Emacs editor on the message, if possible.
  288. X
  289. X.lp \h'16p'~f .5i
  290. XAdd the specified message or current message.
  291. X
  292. X.lp \h'16p'~h .5i
  293. XChange all the available headers (To, Cc, Bcc, and Subject).
  294. X
  295. X.lp \h'16p'~m .5i
  296. XSame as `~f', but with the current `prefix'.
  297. X
  298. X.lp \h'16p'~o .5i
  299. XInvoke a user specified editor on the message.
  300. X
  301. X.lp \h'16p'~p .5i
  302. XPrint out the message as typed in so far.
  303. X
  304. X.lp \h'16p'~r .5i
  305. XInclude (read in) the contents of the specified file.
  306. X
  307. X.lp \h'16p'~s .5i
  308. XChange the Subject line.
  309. X
  310. X.lp \h'16p'~t .5i
  311. XChange the To list.
  312. X
  313. X.lp \h'16p'~v .5i
  314. XInvoke the Vi visual editor on the message.
  315. X
  316. X.lp \h'16p'~< .5i
  317. XExecute the specified unix command, entering the output
  318. Xof the command into the editor buffer upon completion.
  319. X(For example ``~< who'' will include the output of
  320. Xthe \f2who\f1 command in your message.)
  321. X
  322. X.lp \h'16p'~! .5i
  323. XExecute a unix command if one is given (as in ``~!ls'') or
  324. Xgive the user a shell (either from their shell setting in 
  325. Xtheir \f2.elm/elmrc\f1 file or the default).
  326. X
  327. X.lp \h'16p'~~ .5i
  328. XAdd a line prefixed by a single `~' character.
  329. X.in 0
  330. X.sp
  331. XA useful note is that the `~f' and `~m' commands invoke the \f2readmsg\f1
  332. Xcommand, so you can pass parameters along too.  For example, if we
  333. Xwanted to include a message from Joe, without any headers, prefixed,
  334. Xwe could use:
  335. X.nf
  336. X.ti .5i
  337. X~m -n Joe
  338. X.fi
  339. Xto accomplish the task.
  340. X
  341. XTo learn more about how they work, try 'em!
  342. X.br
  343. X.ne 5
  344. X.sp
  345. X.hn 1 The Alias System
  346. X.sp
  347. XAs mentioned previously, there exists in the \f2elm\f1
  348. Xsystem a set of aliases that associate
  349. Xan arbitrary word (such as a persons name) to a complex address or group.  
  350. XThe advantages are readily apparent; rather than
  351. Xremembering an address of the form:
  352. X.nf
  353. X.ps 9
  354. X.ft CW
  355. X.zf
  356. X.ti .5i
  357. Xhost1!host2! ... !hostN!user
  358. X.ft 1
  359. X.ps 10
  360. X.fi
  361. Xthe user merely has to remember a single word.  
  362. X
  363. XTwo alias tables are available for a each
  364. Xuser within \f2elm\f1,
  365. Xnamely the system alias file and the user's alias file.  The
  366. Xsystem alias file is created and maintained (by the system administrator)
  367. Xby editing the 
  368. Xfile \f2SYSTEM_ALIASES\f1 as defined in the `sysdefs.h' file
  369. X(see \f2The Elm Configuration Guide\f1) and as described
  370. Xin the documentation with the \f2newalias\f1 command,
  371. Xthen running the \f2newalias\f1 program.
  372. X
  373. XAn individual user can also have an alias file which works
  374. Xin conjunction with the system aliases.  To do this, they
  375. Xneed merely to peruse the documentation for the \f2newalias\f1
  376. Xcommand and create a file as indicated therein.  After 
  377. Xexecuting the program, the aliases will be available
  378. Xfor using from within \f2elm\f1.
  379. X.sp
  380. XPlease refer to \f2The Elm Alias Users Guide\f1 for more helpful
  381. Xhints and so on.
  382. X.sp 2
  383. XWithin \f2elm\f1,
  384. Xhowever, the alias system acts as an entirely different program, with
  385. Xit's own commands and own mini-menu.  The menu replaces the
  386. Xstandard mini-menu with:
  387. X.sp
  388. X.sd
  389. X.nf
  390. X.ps 9
  391. X.ft CW
  392. X.zf
  393. X.ce
  394. X--------------------------------------------------------------------------------
  395. X.sp
  396. X.ce
  397. XAlias commands
  398. X.sp
  399. X.ce 2
  400. Xa)lias current message, d)elete an alias, check a p)erson or s)ystem,
  401. Xl)ist existing aliases, m)ake new alias or r)eturn
  402. X.sp 2
  403. XAlias: @
  404. X.ce
  405. X--------------------------------------------------------------------------------
  406. X.sp
  407. X.ps 10
  408. X.ft 1
  409. X.ed
  410. X.fi
  411. X
  412. XThe commands are:
  413. X
  414. X.lp \h'16p'a .5i
  415. XAlias current message.  
  416. XThis allows the user to create an alias that has the
  417. Xreturn address of the current message as the address field of
  418. Xthe alias.  It prompts for a unique alias name.   Important
  419. Xnote: when you alias an address in this fashion, the mailer
  420. Xwill try to minimize the amount it needs to store by
  421. Xiteratively comparing machine names in the path with the
  422. Xmachines in the pathalias database.  Once it finds an entry
  423. Xthe address will be saved at that point.   For further 
  424. Xinformation, please see \f2The Elm Alias System Users Guide\f1.
  425. X
  426. X.lp \h'16p'd .5i
  427. XDelete an existing alias.
  428. XThis allows the user to delete an alias the user has previously made.
  429. XIt prompts for the alias name, and displays the alias information, if
  430. Xfound, and then prompts for confirmation to delete.
  431. X
  432. X.lp \h'16p'l .5i
  433. XList all existing aliases.
  434. XThis simply lists all the aliases you have previously made.
  435. X
  436. X.lp \h'16p'm .5i
  437. XMake user alias.  This will prompt for a unique alias name and
  438. Xthen for an address.  The information provided will be added
  439. Xto your individual aliases.text file (\f2$HOME/.elm/aliases.text\f1) and 
  440. Xthen added to the database.
  441. X
  442. X.lp \h'16p'p .5i
  443. XCheck personal alias.  This is a simple way of checking what is in the alias
  444. Xdatabase \(em it prompts for an alias name, and returns the address
  445. Xassociated with that name or the error message `alias not found'
  446. Xas appropriate.  
  447. X
  448. X.lp \h'16p'r .5i
  449. XReturn.  Return to the main level of the \f2elm\f1 program.
  450. X
  451. X.lp \h'16p's .5i
  452. XCheck system alias.  If you're not sure that your machine can talk
  453. Xto another machine, you can use this command to either find the
  454. Xappropriate route or find that you're correct in your suspicions 
  455. Xand it is indeed unknown!
  456. X.in 0
  457. X.br
  458. X.ne 5
  459. X.sp
  460. X.hn 1 While We're Talking Aliases...
  461. X
  462. XAnother feature worthy of discussion, since it's been getting
  463. Xlots of veiled references throughout this document, is the 
  464. Xhost-path file.  This is implemented using the uucp pathalias 
  465. Xdatabase, with a file containing lines with the format:
  466. X.nf
  467. X.ti .5i
  468. X\f2hostname\f1        \f2address\f(CW!%s\f1
  469. X  or
  470. X.ti .5i
  471. X\f2hostname\f1        \f(CW%s@\f2hostname\f1
  472. X.fi
  473. XThe actual details of the file are located in 
  474. X\f2The Alias System Users Guide\f1.
  475. X
  476. XAnyway, to use them is quite simple...when specifying the address
  477. Xof someone, you can either have an alias for them already, reply
  478. Xto their message, or use the system alias feature!
  479. X
  480. XEnough hype, right?  Okay...to use this feature, you specify an
  481. Xaddress by either "machine!person" ignoring if your specific
  482. Xmachine can talk directly to the machine specified, or, if you
  483. Xprefer the Internet addressing scheme, "person@machine".  When
  484. Xyou enter the address as specified, the mailer will quickly
  485. Xsearch through the pathalias database file and expand the
  486. Xspecified address to be a legitimate routing address.
  487. X
  488. XWhat's really nice about this is that the address that we're
  489. Xgoing to send to can be either on ARPA, CSNET, BITNET, uucp,
  490. Xor any other network.  The method of specifying the basic
  491. Xaddress is the same regardless!
  492. X
  493. XFor example, mail to me could be sent as either "hplabs!taylor"
  494. Xor "taylor@hplabs".  \f2elm\f1 will expand them
  495. Xboth in the same manner and include a ``route'' to the 
  496. Xmachine \f2hplabs\f1, if needed.
  497. X
  498. XFor those sites with the domains database installed, you can
  499. Xalso mail to users on domain based systems by simply specifying
  500. Xtheir name, the machine they receive mail on and a full domain
  501. Xspecification.
  502. X
  503. XFor example, say you have a friend Maurice who reads mail 
  504. Xon \s9JOEVAX\s10 in the Mailnet world.  You could mail to him by using
  505. Xthe address "Maurice@\s9JOEVAX.MAILNET\s10" and your system will
  506. Xexpand the address correctly.
  507. X.br
  508. X.ne 5
  509. X.sp
  510. X.hn 1 Expert Mail Users and Debugging the Mailer
  511. X
  512. XThere are some additional facilities available in the \f2elm\f1
  513. Xmailer for those people who are knowledgeable about 
  514. Xmail protocols, or trying to debug/track down a problem.
  515. X
  516. XThe `h' \f2headers\f1 command at the outermost level of the mailer
  517. Xwill display the current message ignoring the current
  518. Xsetting of the `weed' option.  This is most useful
  519. Xfor answering questions of the form "I wonder what
  520. Xthis guy put in his header?" and such.  This command
  521. Xdoes not show up on the mini-menu because it is somewhat
  522. Xesoteric, but it does appear on the `?' help screen (can
  523. Xyou find it there, though?).
  524. X
  525. XThe `@' command at the outermost level of the mailer
  526. Xwill output a screen of debugging information,
  527. Xincluding the number of lines and 
  528. Xoffsets of each of the messages in the current mailbox.
  529. X
  530. XThe `#' command at the outermost level of the mailer
  531. Xwill display the entire stored `record structure' for
  532. Xthe current message.
  533. X
  534. XThe `%' command 
  535. Xwill display the full computed return address of the
  536. Xcurrent message.
  537. X
  538. XStarting up \f2elm\f1 with the "-d" debug option will create a file called
  539. X\f2ELM:debug.info\f1 in your home directory and contain a wealth of useful
  540. Xinformation (to me, at least!) to aid in tracking down
  541. Xwhat errors are occurring and why.  
  542. X.sp
  543. X
  544. XIf there are any problems with the mailer,  please try
  545. Xto recreate the error with the debug option enabled
  546. Xand set to the highest level (11) before sending defect reports my way.
  547. X.sp 3
  548. XOne final note: all error names reported by the program
  549. Xare documented in the AT&T System V Interface Definition Reference 
  550. XManual in \f2errno\f1(2).
  551. SHAR_EOF
  552. echo "File doc/Ref.guide is complete"
  553. chmod 0444 doc/Ref.guide || echo "restore of doc/Ref.guide fails"
  554. echo "x - extracting doc/Users.guide (Text)"
  555. sed 's/^X//' << 'SHAR_EOF' > doc/Users.guide &&
  556. X.\" @(#)$Id: Users.guide,v 4.1 90/04/28 22:41:16 syd Exp $
  557. X.\"
  558. X.\"  Users guide to the ELM mail system.
  559. X.\"  format with:
  560. X.\"    'tbl Users.guide | troff tmac.n - > Users.fmtd'
  561. X.\"
  562. X.\"  Elm is now in the public trust. Bug reports, comments, suggestions, flames
  563. X.\"  etc. should go to:
  564. X.\"    Syd Weinstein        elm@DSI.COM (dsinc!elm)
  565. X.\"
  566. X.\"  (C) Copyright 1986, 1987 Dave Taylor
  567. X.\"  (C) Copyright 1988, 1989, 1990 Usenet Community Trust
  568. X.\"
  569. X.\"  $Log:    Users.guide,v $
  570. X.\" Revision 4.1  90/04/28  22:41:16  syd
  571. X.\" checkin of Elm 2.3 as of Release PL0
  572. X.\" 
  573. X.\"  
  574. X.tm I trust we've run this through "tbl" first...
  575. X.\"  Define the big box macro for troff
  576. X.de eb
  577. X.sp -1    
  578. X.nf
  579. X.ie t \{\
  580. X\h'-.5n'\L'|\\nau-1'\l'\\n(.lu+1n\(ul'\L'-|\\nau+1'\l'|0u-.5n\(ul'
  581. X.\}
  582. X.el \{\
  583. X\h'-.5n'\l'\\n(.lu+1n'
  584. X.\}
  585. X.fi
  586. X..
  587. X.po 1i
  588. X.ds h0
  589. X.ds h1
  590. X.ds h2
  591. X.ds f0
  592. X.ds f1
  593. X.ds f2
  594. X.nr Hy 1
  595. X.nr Pt 1
  596. X.nr Pi 0
  597. X.lg 0
  598. X.nf
  599. X.na
  600. X.rs
  601. X.za
  602. X.\" This will keep the nroff version of the title page on one sheet.
  603. X.if t .sv |2.0i
  604. X.ce 99
  605. X.ps 20
  606. X.ss 18
  607. X.vs 12
  608. X\f3The Elm Users Guide\f1
  609. X.sp 3
  610. X.ps 12
  611. X.ss 14
  612. X.vs 14
  613. X\f2A painless introduction to electronic mail 
  614. Xusing the \f3Elm\fP mail system\f1
  615. X.sp 2
  616. XDave Taylor
  617. X.sp 
  618. XHewlett-Packard Laboratories
  619. X1501 Page Mill Road
  620. XPalo Alto CA
  621. X94304
  622. X.sp 3
  623. Xemail: taylor\s10@\s12hplabs.HP.COM or hplabs!taylor
  624. X.sp 3
  625. X>>> Elm is now in the public trust. Bug reports, comments, etc. to: <<<
  626. X.sp
  627. XSyd Weinstein
  628. XDatacomp Systems, Inc.
  629. X3837 Byron Road
  630. XHuntingdon Valley, PA 19006-2320
  631. X.sp
  632. Xemail: elm\s-1@\s+1DSI.COM  or  dsinc\s-1!\s+1elm
  633. X.fi
  634. X.ad
  635. X.ps 8
  636. X.if t .vs 9
  637. X.sp 4
  638. X\f3ABSTRACT\f1
  639. X.ce 0
  640. X.sp
  641. X.in +1i
  642. X.ll -1i
  643. XWhile various Unix utilities have been designed to
  644. Xtake advantage of the CRT screen
  645. X(rather than line-oriented systems)
  646. Xelectronic mail systems haven't ``caught the wave''.
  647. XThis document 
  648. Xpresents \f2Elm\f1, a sophisticated
  649. Xfull-screen mail system for interactive use.
  650. X\f2Elm\f1 offers all the features of
  651. X\f2/bin/mail\f1, \f2Berkeley Mail\f1, \f2uumail\f1, \f2NMail\f1 and
  652. Xthe AT&T Mail family of Unix mailers (namely \f2PMX/TERM\f1) in a
  653. Xunified and intuitive fashion.
  654. X.ll +1i
  655. X.in -1i
  656. X.if t .sp 3
  657. X.if n .sp 2
  658. X.ce 2
  659. X.ps 18
  660. X.if t .vs 14
  661. X\f3\(co\f1\s12 Copyright 1986, 1987 by Dave Taylor
  662. X.ps 18
  663. X\f3\(co\f1\s12 Copyright 1988, 1989, 1990 by The USENET Community Trust
  664. X.ps 10
  665. X.ss 12
  666. X.vs 12
  667. X.bp 1
  668. X.sv 5v
  669. X.ce 99
  670. X.ps 14
  671. X\f3Elm Users Guide\f1
  672. X.ds h0 "Elm Users Guide
  673. X.ds h1
  674. X.ds h2 "Version 2.3
  675. X.ds f0 "May 1, 1990
  676. X.ds f1 "Page %
  677. X.ps 10
  678. X.sp
  679. X(Version 2.3)
  680. X.sp 2
  681. XDave Taylor
  682. XHewlett-Packard Laboratories
  683. X1501 Page Mill Road
  684. XPalo Alto CA
  685. X94304
  686. X.sp
  687. Xemail:  taylor\s-1@\s+1hplabs.HP.COM  or  hplabs\s-1!\s+1taylor
  688. X.sp 2
  689. X>>> Elm is now in the public trust. Bug reports, comments, etc. to: <<<
  690. X.sp
  691. XSyd Weinstein
  692. XDatacomp Systems, Inc.
  693. X3837 Byron Road
  694. XHuntingdon Valley, PA 19006-2320
  695. X.sp
  696. Xemail: elm\s-1@\s+1DSI.COM  or  dsinc\s-1!\s+1elm
  697. X.sp 2
  698. XMay 1, 1990
  699. X.ce 0
  700. X.sp 3
  701. X.hn 1 Introduction
  702. X
  703. XThe
  704. X.ux
  705. Xoperating system was originally written on a small PDP machine,
  706. Xto work with teletypewriters.  Consequently, all the original software for
  707. Xthe operating system was written with a `tty' in mind; 
  708. Xwith line oriented interfaces, rather than screen oriented.
  709. X
  710. XGradually this began to change, and, with the addition of the Berkeley \f2vi\f1
  711. Xvisual shell to the \f2ed\f1
  712. Xline editor, the trend began to be brought to the attention of 
  713. XUnix systems designers.  
  714. XAnd yet, this transition has seemed
  715. Xtoo subtle for many software engineers,
  716. Xand so precious few Unix programs are available 
  717. Xdesigned to exploit the entire CRT screen.
  718. X
  719. XConsequently, after becoming more and more disenchanted
  720. Xwith the existing electronic mail facilities (\f2binmail\f1
  721. Xand \f2Berkeley Mail\f1)
  722. XI decided to undertake creating my own system.  
  723. XOnce the ball was rolling it became quite
  724. Xdifficult not to keep enhancing it, especially as I
  725. Xbecame more and more familiar with various different mail
  726. Xsystems, but the result, I hope, is a solid, unified interface
  727. Xto electronic mail suitable for almost any environment.
  728. X
  729. XOne thing that sets \f3The Elm Mail System\f1 off from
  730. Xother packages is that it
  731. Xcomes with an extensive documentation set, including;
  732. X\f2The Elm Users Guide\f1, which you're holding,
  733. X\f2The Elm Reference Guide\f1, 
  734. X\f2The Elm Alias Users Guide\f1,
  735. X\f2The Elm Filter System Users Guide\f1,
  736. X\f2The Elm Forms Mode Guide\f1, 
  737. Xand \f2The Elm Configuration Guide\f1.  
  738. XThe names of each indicate
  739. Xwhat they discuss (not unreasonably).
  740. X
  741. XThis particular document contains;
  742. Xthis introduction, a tutorial session with the mailer, a
  743. Xdiscussion of non-interactive uses of \f3Elm\f1,
  744. Xa brief foray into the \f3Elm\f1 utilities,
  745. Xand finally, credits and references.
  746. X
  747. X\f2The Elm Reference Guide\f1 contains a
  748. Xmuch more indepth discussion of all the possible options
  749. Xavailable within the \f3Elm\f1 environment, including
  750. Xthe \f2``.elm/elmrc''\f1 file,
  751. Xthe available outbound mail processing features,
  752. Xa section for expert users, suggestions
  753. Xon debugging strange installations, and
  754. Xmany other useful topics.
  755. X
  756. X\f2The Elm Alias Users Guide\f1 is the place
  757. Xto go to learn about the format of the 
  758. X``.elm/aliases.text''
  759. Xfile and the associated data files, to learn how
  760. Xto create and use path route aliases and domain
  761. Xbased alias routing, system aliases, and other
  762. Xrelated topics.
  763. X
  764. XOne of the more innovative features of \f3Elm\f1 is
  765. Xthe ability to transmit and receive ``forms'' (as
  766. Xdefined by the AT&T Mail system).  To learn about
  767. Xhow to create and reply to forms you should refer
  768. Xto \f2The Elm Forms Mode Guide\f1.
  769. X
  770. XIf you find yourself getting too much mail delivered in
  771. Xyour mailbox, you might be a good candidate for the
  772. X\f2filter\f1 program.  To learn more about what
  773. Xthis program is and how to use it please
  774. Xconsult \f2The Elm Filter System Users Guide\f1.
  775. X
  776. XFinally, if you're working with the actual source code
  777. Xand are interested in what all the locally configured
  778. Xoptions are and mean, please see
  779. X\f2The Elm Configuration Guide\f1.  It is
  780. Xstrongly suggested that all system administrators
  781. Xand people installing the system print out the
  782. Xlocal ``sysdefs.h'' file and have it handy while
  783. Xreading the configuration guide.
  784. X
  785. XThe recommended order of learning the \f3Elm\f1
  786. Xsystem is to skim this guide until you feel
  787. Xconfident enough to start up the program.  Once
  788. Xthat's reached, \f2use it!\f1  Soon you'll find
  789. Xareas that you need to expand into, and you can
  790. Xachieve that by going into the \f2o)ptions\f1
  791. Xscreen within \f2elm\f1 and changing your
  792. Xuser level accordingly.
  793. XAfter a while, sit down again and read through this
  794. Xguide.  You should have a couple of ``aha!'' intuitive
  795. Xflashes.  After another period of time, you're
  796. Xready to delve into the real power of the system
  797. Xand read the reference guide.  The other manuals
  798. Xshould be read as the need arises.
  799. X
  800. XIn any case, the system should be useable without reading
  801. X\f2any\f1 of the documentation!
  802. X
  803. XAny comments or problems with any of the documentation or the program
  804. Xitself are welcome; if you can't get electronic mail to me, please
  805. Xfeel free instead to drop me a note via the overland mail address
  806. Xin the title page.  
  807. X.br
  808. X.ne 20
  809. X.sp 
  810. X.hn 1 The Main System
  811. X
  812. XUpon entry to the program, the main screen will be 
  813. Xdisplayed as below;
  814. X
  815. X.\" display start, constant width, remember loc for BOX
  816. X.ft CW
  817. X.zf
  818. X.ps 9
  819. X.mk a
  820. X.mk a
  821. X.sp
  822. X.ce
  823. XMailbox is '/usr/mail/mymail' with 15 messages  [Elm 2.2]
  824. X.TS
  825. Xr l n l l l l.
  826. X ->    N    1    Apr 24    Larry Fenske    (49)    Hello there
  827. X    N    2    Apr 24    jad@hpcnoe    (84)    Chico?  Why go there?
  828. X    E    3    Apr 23    Carl Smith    (53)    Dinner tonight?
  829. X    NU    4    Apr 18    Don Knuth    (354)    Your version of TeX...
  830. X    N    5    Apr 18    games    (26)    Bug in cribbage game
  831. X     A    6    Apr 15    kevin    (27)    More software requests
  832. X        7    Apr 13    John Jacobs    (194)    How can you hate RUSH?
  833. X     U    8    Apr 8    decvax!mouse    (68)    Re: your Usenet article
  834. X        9    Apr 6    root    (7)
  835. X    O    10    Apr 5    root    (13)
  836. X.TE
  837. X.sp
  838. X.ce 3
  839. XYou can use any of the following commands by pressing the first character;
  840. Xd)elete or u)ndelete mail, m)ail a message, r)eply or f)orward mail, q)uit
  841. XTo read a message, press <return>.  j = move down, k = move up, ? = help
  842. X Command : @
  843. X.sp 
  844. X.\" draw box, proportional Roman font back, display end
  845. X.eb
  846. X.ps 10
  847. X.ft 1
  848. X
  849. XThere are a number of things to notice about this, the main screen;
  850. X
  851. X.lp \h'12p'\(bu 20p
  852. XMost likely, on your computer the message currently ``active'' will be
  853. Xdisplayed in an inverse bar rather than being delimited by the two
  854. Xcharacter arrow as here.  It's nothing to worry about; displaying
  855. Xinverse video is just quite difficult on printable guides!
  856. X
  857. X.lp \h'12p'\(bu 20p
  858. XThe first line on the screen always displays the name of the current folder,
  859. Xthe number of messages in the folder, and the current \f3Elm\f1 version number.
  860. X
  861. X.lp \h'12p'\(bu 20p
  862. XThe arrow (``->'') or inverse video bar will always
  863. Xindicate which is the current message.  
  864. X
  865. X.lp \h'12p'\(bu 20p
  866. XThe first field that appears associated with each message is
  867. Xthe status field.  This can be blank (as with most of the
  868. Xones above, or can have any combination of the following:
  869. X
  870. XThe first character signifies temporary status:
  871. X
  872. X.ta .75iC 102p
  873. X.nf
  874. X    E    for an \f2expired\f1 message
  875. X    N    for a \f2new\f1 message
  876. X    O    for an \f2old\f1 (i.e. not new but not read) message
  877. X    D    for a \f2deleted\f1 message
  878. X
  879. XThe second character which signifies permanent status:
  880. X
  881. X    U    for \f2urgent\f1 mail
  882. X    A    for messages that have an \f2action\f1 associated with them
  883. X    F    for a \f2form\f1 letter
  884. X.fi
  885. X
  886. XThe third character of the status field can be a ``+'' to
  887. Xindicate that the message is \f2tagged\f1 too.
  888. X
  889. X.lp \h'12p'\(bu 20p
  890. XContinuing from left to right, the next field is the message
  891. Xnumber.  For the most part you can ignore these unless you want
  892. Xto quickly move to a specific message (as we'll see later).
  893. X
  894. X.lp \h'12p'\(bu 20p
  895. XThe date associated with each message is typically
  896. Xthe date the person actually \f2sent\f1 the message.  
  897. X
  898. X.lp \h'12p'\(bu 20p
  899. XThe next field displayed indicates whom the message is from.  
  900. X\f3Elm\f1 will try to display the \f2full name\f1 of the person who 
  901. Xsent the message, rather than the their return address or computer login.  
  902. XSome systems don't generate the correct headers, though, hence 
  903. Xmessages like numbers 2 and 8, where it's their return address.
  904. X
  905. X.lp \h'12p'\(bu 20p
  906. XThe number in parentheses is the total number of lines in the message.
  907. X
  908. X.lp \h'12p'\(bu 20p
  909. XThe final field is the subject of the message.  Notice
  910. Xthat messages might not have any subject, as in messages #9 and #10.
  911. X
  912. X.lp \h'12p'\(bu 20p
  913. XA maximum of ten messages are displayed at one time\s-2\u1\d\s0.
  914. X.fn
  915. X1. On screens with greater than 25 lines, more messages will be 
  916. Xdisplayed automatically.  Further, if you choose to turn off
  917. Xthe Menu display, you can have an even greater number 
  918. Xdisplayed.
  919. X.ef
  920. XFurther into the document we'll learn how to change ``pages'' in the folder. 
  921. X
  922. X.lp \h'12p'\(bu 20p
  923. XThe three line Menu display will always 
  924. Xindicate the relevant commands.  There are actually two possible 
  925. Xmenus that can be displayed, based
  926. Xon the \f2user level\f1 as set from either the o)ptions screen or
  927. Xthe \f2.elm/elmrc\f1 
  928. Xfile.  The alternate menu, for more advanced users, 
  929. Xlists more options;
  930. X.sp
  931. X.ft CW
  932. X.zf
  933. X.ps 9
  934. X.ce 3
  935. X|=pipe, !=shell, ?=help, <n>=set current to n, /=search pattern
  936. Xa)lias, C)copy, c)hange folder, d)elete, e)dit, f)orward, g)roup reply, m)ail, 
  937. Xn)ext, o)ptions, p)rint, r)eply, s)ave, t)ag, q)uit, u)ndelete, or e(x)it
  938. X.ps 10
  939. X.ft 1
  940. X
  941. X.lp \h'12p'\(bu 20p
  942. XFinally, the '@' character indicates where the cursor would be, awaiting
  943. Xyour input.
  944. X
  945. X.sp
  946. X.in 0
  947. XThe typical action at this point is to use the \f2<return>\f1
  948. Xkey to read the current message, which will clear the 
  949. Xscreen and display the current message:
  950. X
  951. X.ne 10
  952. X.ft CW
  953. X.zf
  954. X.ps 9
  955. X.mk a
  956. X.tl ' Message 1/15 from Larry Fenske''Apr 24 \'87 at 8:45 pm'
  957. X.tl ''Hello there''
  958. X.nf
  959. X Dave, 
  960. X      Just wanted to drop you a brief note to see what was going on with 
  961. X you this afternoon.  Life here has been the usual fun and games...
  962. X         Ah well, off to the great wilds beyond the desk!
  963. X                Larry
  964. X Command ('i' to return to index): @
  965. X.fi
  966. X.eb
  967. X.ft 1
  968. X.ps 10
  969. X
  970. XBefore we go further with our example, however, let's very
  971. Xquickly look at all the functions available from the main
  972. Xscreen:
  973. X.\" ensure we get a reasonable chunk of this table on the page...
  974. X.br
  975. X.ne 10
  976. X.lp \h'18p'\f3Command 90p
  977. XAction\f1
  978. X
  979. X.lp "\h'18p'<return> or <space>" 90p
  980. XRead current message.
  981. X.lp \h'18p'| 90p
  982. XPipe current message or tagged messages to specified system command.
  983. X.lp \h'18p'! 90p
  984. XShell escape.
  985. X.lp \h'18p'$ 90p
  986. XResynchronize folder.
  987. X.lp \h'18p'? 90p
  988. XHelp mode \(em any key pressed will be explained.
  989. X.lp "\h'18p'+ or <right>" 90p
  990. XDisplay next page of headers.
  991. X.lp "\h'18p'- or <left>" 90p
  992. XDisplay previous page of headers.
  993. X.lp \h'18p'= 90p
  994. XSet current message to 1.
  995. X.lp \h'18p'* 90p
  996. XSet current to last message.
  997. X.lp \h'18p'<number><return> 90p
  998. XSet current message to number \f2number\f1.
  999. X.lp \h'18p'/ 90p
  1000. XSearch for pattern in subject/from lines.
  1001. X.lp \h'18p'// 90p
  1002. XSearch for pattern in entire folder.
  1003. X.lp \h'18p'< 90p
  1004. XScan message for calendar entries.\s-2\u2\d\s0
  1005. X.fn
  1006. X2. Some sites might opt not to have the calendar feature available.
  1007. X.ef
  1008. X.lp \h'18p'> 90p
  1009. XA synonym for `s' \(em \f2save\f1 message or messages.
  1010. X.sp
  1011. X.lp \h'18p'a 90p
  1012. XAlias, change to ``alias'' mode.
  1013. X.lp \h'18p'b 90p
  1014. XBounce \(em remail message [see \f2f \(em forward\f1 too].
  1015. X.lp \h'18p'C 90p
  1016. XCopy current message or tagged messages to folder.
  1017. X.lp \h'18p'c 90p
  1018. XChange to another folder.
  1019. X.lp \h'18p'd 90p
  1020. XDelete current message.
  1021. X.lp \h'18p'<control>-D 90p
  1022. XDelete all messages matching specified pattern.
  1023. X.lp \h'18p'e 90p
  1024. XEdit current folder, resyncing upon reentry.\s-2\u3\d\s0
  1025. X.fn
  1026. X3. Some sites might opt not to have the edit folder feature available.
  1027. X.ef
  1028. X.lp \h'18p'f 90p
  1029. XForward message to specified user.\s-2\u4\d\s0
  1030. X.fn
  1031. X4. The difference between \f2Forward\f1 and \f2Bounce\f1 is rather 
  1032. Xsubtle \(em a forwarded message is ``from'' you, with the
  1033. Xoriginal message included, whereas a bounced message
  1034. Xis still from the original sender.  
  1035. X.ef
  1036. X.lp \h'18p'g 90p 
  1037. XGroup reply \(em reply to everyone who received the current message.
  1038. X.lp \h'18p'h 90p
  1039. XDisplay message with headers.
  1040. X.lp \h'18p'J 90p
  1041. XSet current to next message.
  1042. X.lp "\h'18p'j or <down>" 90p
  1043. XSet current to next message not marked deleted.
  1044. X.lp \h'18p'K 90p
  1045. XSet current to previous message.
  1046. X.lp "\h'18p'k or <up>" 90p
  1047. XSet current to previous message not marked deleted.
  1048. X.lp \h'18p'l 90p
  1049. XLimit displayed messages based on the specified criteria.  
  1050. X.lp \h'18p'<control>-L 90p
  1051. XRewrite screen.
  1052. X.lp \h'18p'm 90p
  1053. XMail to arbitrary user(s).
  1054. X.lp \h'18p'n 90p
  1055. XRead current message, then increment to next message not marked deleted.
  1056. X.lp \h'18p'o 90p
  1057. XAlter current system options.
  1058. X.lp \h'18p'p 90p
  1059. XPrint current message or tagged messages.
  1060. X.lp \h'18p'q 90p
  1061. XQuit \(em maybe prompting for messages to delete, store, or keep.
  1062. X.lp \h'18p'Q 90p
  1063. XQuick quit \(em like quit but without prompting.
  1064. X.lp \h'18p'<control>-Q 90p
  1065. XExit immediately \(em don't record as read, don't save...
  1066. X.lp \h'18p'r 90p
  1067. XReply to the author of current message.
  1068. X.lp \h'18p's 90p
  1069. XSave current message or tagged messages to folder.
  1070. X.lp \h'18p't 90p
  1071. XTag current message.
  1072. X.lp \h'18p'<control>-T 90p
  1073. XTag all messages matching specified pattern.
  1074. X.lp \h'18p'u 90p
  1075. XUndelete current message.
  1076. X.lp \h'18p'<control>-U 90p
  1077. XUndelete all messages matching specified pattern.
  1078. X.lp \h'18p'x 90p
  1079. XExit \(em prompt if mailbox changed, don't record as read, don't save...
  1080. X.lp \h'18p'X 90p
  1081. XExit immediately \(em don't record as read, don't save...
  1082. X.in 0
  1083. X.\" again, make sure we start on a new page please
  1084. X.br
  1085. X.ne 10
  1086. XBut let's go back to our example and see some of this at
  1087. Xwork, shall we?
  1088. X.sp
  1089. XWe were reading the message from Larry and the screen looked
  1090. Xlike:
  1091. X
  1092. X.ne 10
  1093. X.ft CW
  1094. X.zf
  1095. X.ps 9
  1096. X.mk a
  1097. X.tl ' Message 1/15 from Larry Fenske''Apr 24 \'87 at 8:45 pm'
  1098. X.tl ''Hello there''
  1099. X.nf
  1100. X Dave, 
  1101. X      Just wanted to drop you a brief note to see what was going on with 
  1102. X you this afternoon.  Life here has been the usual fun and games...
  1103. X          Ah well, off to the great wilds beyond the desk!
  1104. X                Larry
  1105. X Command ('i' to return to index): @
  1106. X.fi
  1107. X.eb
  1108. X.ft 1
  1109. X.ps 10
  1110. X
  1111. XFrom this point let's go ahead and reply to the message.  To
  1112. Xdo this, we can use the \f2reply\f1 command...
  1113. XTo do this, we type ``r'' and the last few lines change to
  1114. Xsomething like:
  1115. X.ft CW
  1116. X.zf
  1117. X.ps 9
  1118. X.sp 
  1119. X.tl '-------------------------------------------------------------------------------''
  1120. X.tl 'Command: Reply to message''Copy message (y/n) ? @ '
  1121. X.sp 2
  1122. X.ft 1
  1123. X.ps 10
  1124. XTo which we decide that we don't need the text of this message in 
  1125. Xour new one, so we reply \f2no\f1 by pressing the ``n'' key.  The
  1126. Xbottom part of the window then changes to:
  1127. X.ft CW
  1128. X.zf
  1129. X.ps 9
  1130. X.sp
  1131. X.tl '-------------------------------------------------------------------------------''
  1132. X.tl 'Command: Reply to message''To: Larry Fenske '
  1133. X.tl 'Subject: Re: Hello there@''
  1134. X.ft 1
  1135. X.ps 10
  1136. X.sp 2
  1137. Xat this point we can either decide to enter a new subject (you could
  1138. Xuse either \f2backup word\f1 (<control>-W) or \f2backup line\f1 (this
  1139. Xis the same as your `line kill' character, <control>-X or <control>-U
  1140. Xusually)) or go with this one by pressing \f2<return>\f1.  We'll
  1141. Xjust leave it as it is and press \f2<return>\f1, changing the
  1142. Xscreen to:
  1143. X.ps 9
  1144. X.ft CW
  1145. X.zf
  1146. X.sp
  1147. X.tl '-------------------------------------------------------------------------------''
  1148. X.tl 'Command: reply to message''To: Larry Fenske '
  1149. X.tl 'Subject: Re: Hello there''
  1150. X.tl 'Copies to: @'''
  1151. X.ps 10
  1152. X.ft 1
  1153. X.sp 
  1154. XThere's no one we want to have receive copies of this message, so we'll
  1155. Xjust press \f2<return>\f1 again to indicate this.  
  1156. X
  1157. XOnce you've answered these questions the program will put you into
  1158. Xyour favorite editor and let you compose a response.  When you're
  1159. Xdone it then asks:
  1160. X.ps 9
  1161. X.ft CW
  1162. X.zf
  1163. X.sp
  1164. X.tl ''-------------------------------------------------------------------------------''
  1165. X.tl 'Please choose one of the following options by parenthesized letter: @'''
  1166. X.tl ''e)dit message, edit h)eaders, s)end it, or f)orget it.''
  1167. X.ft 1
  1168. X.ps 10
  1169. X.sp
  1170. XSince we're just interested in sending the message out, we'll
  1171. Xchoose the \f2send\f1 option and press ``s''.  The program
  1172. Xthen sends the message, indicating that by the line below
  1173. Xsaying:
  1174. X.sp
  1175. X.ps 9
  1176. X.ft CW
  1177. X.zf
  1178. X    Sending mail...
  1179. X.ft 1
  1180. X.ps 10
  1181. X.sp
  1182. Xthen putting at the bottom of the screen ``Mail sent!'' and giving us
  1183. Xthe prompt:
  1184. X.ps 9
  1185. X.ft CW
  1186. X.zf
  1187. X.sp
  1188. X.tl ''-------------------------------------------------------------------------------''
  1189. X.tl 'Command:''(Use \'i\' to return to index.)''
  1190. X.sp
  1191. X.ps 10
  1192. X.ft 1
  1193. XPretty easy, isn't it?  Let's continue by going back to the main
  1194. Xscreen by requesting \f2index\f1: pressing the ``i'' key.  The
  1195. Xscreen is then:
  1196. X
  1197. X.ne 20
  1198. X.ft CW
  1199. X.zf
  1200. X.ps 9
  1201. X.mk a
  1202. X.mk a
  1203. X.sp
  1204. X.ce
  1205. XMailbox is '/usr/mail/mymail' with 15 messages  [Elm 2.2]
  1206. X.TS
  1207. Xr l r l l l l.
  1208. X ->        1    Apr 24    Larry Fenske    (49)    Hello there
  1209. X    N    2    Apr 24    jad@hpcnoe    (84)    Chico?  Why go there?
  1210. X    E    3    Apr 23    Carl Smith    (53)    Dinner tonight?
  1211. X    NU    4    Apr 18    Don Knuth    (354)    Your version of TeX...
  1212. X    N    5    Apr 18    games    (26)    Bug in cribbage game
  1213. X     A    6    Apr 15    kevin    (27)    More software requests
  1214. X        7    Apr 13    John Jacobs    (194)    How can you hate RUSH?
  1215. X     U    8    Apr 8    decvax!mouse    (68)    Re: your Usenet article
  1216. X        9    Apr 6    root    (7)
  1217. X    O    10    Apr 5    root    (13)
  1218. X.TE
  1219. X.sp
  1220. X.ce 3
  1221. XYou can use any of the following commands by pressing the first character;
  1222. Xd)elete or u)ndelete mail, m)ail a message, r)eply or f)orward mail, q)uit
  1223. XTo read a message, press <return>.  j = move down, k = move up, ? = help
  1224. X Command : @
  1225. X.sp 
  1226. X.\" draw box, proportional Roman font back, display end
  1227. X.eb
  1228. X.ft 1
  1229. X.ps 10
  1230. X
  1231. X.ft 1
  1232. XNotice that the first message is no longer marked as \f2new\f1
  1233. Xsince we've now read it.
  1234. X.sp
  1235. XLet's go ahead and read the message from kevin (message #6) since
  1236. Xit has some sort of \f2action\f1 associated with it anyway.  To
  1237. Xdo this, we simply press the ``6'' key, which will change the
  1238. Xbottom of the screen to:
  1239. X.sp
  1240. X.ps 9
  1241. X.ft CW
  1242. X.zf
  1243. X.tl 'Command: New Current Message''Set current message to : 6@'
  1244. X.ft 1
  1245. X.ps 10
  1246. X.sp
  1247. XWe'll just press \f2<return>\f1 to move the active message
  1248. Xpointer (the arrow).
  1249. X.sp
  1250. XNow we're pointing at the new message, so let's go ahead and read
  1251. Xit by pressing \f2<return>\f1 again, giving us:
  1252. X
  1253. X.ne 10
  1254. X.ft CW
  1255. X.zf
  1256. X.ps 9
  1257. X.mk a
  1258. X.tl ' Message 6/15 from kevin''Apr 15 \'87 at 11:36 am'
  1259. X.tl ''More software requests''
  1260. X Action: please acknowledge receipt
  1261. X I don't suppose you have a nifty netnews reader around too, do you??
  1262. X --
  1263. X kevin
  1264. X Command ('i' to return to index): @
  1265. X.eb
  1266. X.sp
  1267. X.ps 10
  1268. X.ft 1
  1269. X
  1270. X.br
  1271. X.ne 5
  1272. XWell, it turns out that we don't, but a friend of ours does, so
  1273. Xlet's \f2forward\f1 the message to them by pressing ``f'':
  1274. X.ps 9
  1275. X.ft CW
  1276. X.zf
  1277. X.sp
  1278. X.tl '-------------------------------------------------------------------------------''
  1279. X.tl 'Command: Forward message''Edit outgoing message (y/n) ? @ '
  1280. X.ft 1
  1281. X.ps 10
  1282. X.sp 2
  1283. XNo need to edit it, so let's answer \f2no\f1 with ``n'':
  1284. X.sp
  1285. X.ps 9
  1286. X.ft CW
  1287. X.zf
  1288. X.tl '-------------------------------------------------------------------------------''
  1289. X.tl 'Command: Forward message''Edit outgoing message (y/n) ? No '
  1290. X.tl 'To: @'''
  1291. X.ps 10
  1292. X.ft 1
  1293. X.sp 
  1294. XWe type in the address of the person we're forwarding to (in
  1295. Xthis case 
  1296. X.ft CW
  1297. X.zf
  1298. Xusenet\f1) and press
  1299. X\f2<return>\f1:
  1300. X.ft CW
  1301. X.zf
  1302. X.ps 9
  1303. X.sp
  1304. X.tl '-------------------------------------------------------------------------------''
  1305. X.tl 'Command: Forward message''To: usenet '
  1306. X.tl 'Subject: More software requests (fwd)@'
  1307. X.ft 1
  1308. X.ps 10
  1309. X.sp
  1310. XTo which we again press \f2<return>\f1 to take the default subject.
  1311. X\f3Elm\f1 asks for any possible copy recipients, asks us if we're
  1312. Xsure we want to send it, and shoots it off.
  1313. X.sp
  1314. XEnough mail for now, however, so we just \f2exit\f1 by pressing
  1315. Xthe ``x'' key and the program drops us back into our shell.
  1316. X.sp 2
  1317. XAs you can see, it's quite easy to use the \f3Elm\f1 system, so
  1318. Xrather than continue with our example, let's
  1319. Xlook at some other aspects of the program.
  1320. X.br 
  1321. X.ne 5
  1322. X.sp
  1323. X.hn 1 Non-Interactive Uses of Elm
  1324. X
  1325. XBefore we go ahead and discuss the \f3Elm\f1 utilities, it's worth 
  1326. Xnoting that 
  1327. Xthere are a couple of other ways to use the main mail
  1328. Xsystem, namely to `send only' and to send files (batchmail).
  1329. X
  1330. XTo send a message to someone without any of the associated 
  1331. Xoverhead of reading in a mail folder, you can invoke the
  1332. Xmailer with the name(s) of the people to send to.  For example:
  1333. X.nf
  1334. X  $ \f3elm dave_taylor\f1
  1335. X.fi
  1336. XThe 
  1337. Xmailer will then prompt for Subject, Copies, and then drop
  1338. Xyou in your editor (defined in the \f2.elm/elmrc\f1 file) to compose
  1339. Xthe message.   When composition is complete, the program 
  1340. Xverifies transmission then terminates.
  1341. X
  1342. X.ne 3
  1343. XThe mailer also supports batch type mailing, of files and so on,
  1344. Xby using the following command:
  1345. X.nf
  1346. X  $ \f3elm dave_taylor < help.c\f1
  1347. X.fi
  1348. Xwhich will read in the file and transmit it to the specified user.
  1349. X
  1350. X.ne 3
  1351. XA subject may be specified with ``-s \f2subject\f1'' as an option
  1352. Xto the program in either `send only' or `batch' modes, as in:
  1353. X.nf
  1354. X  $ \f3elm -s "File help.c, as promised" dave_taylor < help.c\f1
  1355. X.fi
  1356. X.br
  1357. X.ne 5
  1358. X.sp 
  1359. X.hn 1 The Elm Utilities
  1360. X
  1361. XThe \f3Elm\f1 mail system is really much more than a single
  1362. Xprogram for reading and writing mail.  It's a unified 
  1363. Xenvironment for intelligently dealing with electronic
  1364. Xcorrespondence.  As a consequence, it contains a number of other
  1365. Xprograms to aid in the easy processing of `email', 
  1366. Xincluding the following;
  1367. X
  1368. X.lp \h'10p'answer 1.0i
  1369. XAn answering-machine transcription program.  Please see the
  1370. Xmanual entry for more information on how to use this program.
  1371. X
  1372. X.lp \h'10p'autoreply 1.0i
  1373. XThis program, in conjunction with the ``arepdaemon'', enables users
  1374. Xto automatically reply to incoming mail when they're not directly
  1375. Xavailable.
  1376. X
  1377. X.lp \h'10p'checkalias 1.0i
  1378. XA script for checking aliases simply.
  1379. X
  1380. X.lp \h'10p'messages 1.0i
  1381. XA script that lists the number of messages in the specified 
  1382. Xfolder.  Suitable for login scripts and such.
  1383. X
  1384. X.lp \h'10p'newmail 1.0i
  1385. XThis program monitors a mailbox or set of mailboxes and can
  1386. Xoutput notification of new mail in one of two possible
  1387. Xformats; either:
  1388. X
  1389. X.ne 6
  1390. X.ft CW
  1391. X.zf
  1392. X.ps 9
  1393. X>> New mail from Jimmy Carter - Urgent matters of state
  1394. X>> New mail from joe@ucbvax.arpa - Did I hear someone say PARTY??
  1395. X.ft 1
  1396. X.ps 10
  1397. X
  1398. Xif running as \f2newmail\f1 or:
  1399. X
  1400. X.ft CW
  1401. X.zf
  1402. X.ps 9
  1403. XJimmy Carter -- Urgent matters of state
  1404. Xjoe@ucbvax.arpa -- Did I hear someone say PARTY??
  1405. X.ft 1
  1406. X.ps 10
  1407. X
  1408. Xif running as \f2wnewmail\f1.  BSD Users will find this is
  1409. Xa far superior \f2biff\f1 program.
  1410. X
  1411. X.lp \h'10p'wnewmail 1.0i
  1412. XThis is the same program as newmail, but has different
  1413. Xdefaults if invoked this way.
  1414. X
  1415. X.lp \h'10p'readmsg 1.0i
  1416. XThis handy little program can be used in two ways.  First off,
  1417. Xit can be used to easily read a specific message in the
  1418. Xincoming mailbox, specified by ordinal number, by a string that
  1419. Xthe message contains, by the metacharacter `$' which 
  1420. Xrepresents the last message in the folder, or `*' which matches 
  1421. Xall the messages in the folder.
  1422. X
  1423. XFor example;
  1424. X
  1425. X$ \f3readmsg 4 5 9 | lpr\f1
  1426. X
  1427. Xwould generate a printout, \f2sans\f1 superfluous headers, of the fourth,
  1428. Xfifth and ninth messages in your mailbox.
  1429. X
  1430. X$ \f3readmsg Carter | page\f1
  1431. X
  1432. Xwould be a fast way to read what `ole Jimmy has to say...
  1433. Xand
  1434. X
  1435. X$ \f3readmsg -h hear someone say\f1
  1436. X
  1437. Xwould list, including all the message headers, the message
  1438. Xcontaining the string ``hear someone say''.
  1439. X
  1440. X.lp \h'10p'frm 1.0i
  1441. XSimilar to the Berkeley \f2from\f1 command, this will
  1442. Xgive you a ``table of contents'' of either the current
  1443. Xmailbox or a mailbox of your choice.   It's useful to
  1444. Xsee what mail is pending, or what's in a mailbox.
  1445. XIf used with the `-n' option, it will number each message
  1446. Xin a way compatible with the arguments \f2readmsg\f1
  1447. Xexpects to get, too!
  1448. X
  1449. X.lp \h'10p'newalias 1.0i
  1450. XThis is used to install new user/group aliases.  Please see
  1451. X\f2The Elm Alias Users Guide\f1 for further information on this!
  1452. X
  1453. X.lp \h'10p'fastmail 1.0i
  1454. XSometimes you want to have a batchmailing system that works as
  1455. Xquickly as possible, not bothering with aliases or any of the
  1456. Xother ``deluxe'' features of \f3Elm\f1.  An example of this would
  1457. Xbe if you have a large mailing list for a newsletter, say.
  1458. XThis command, \f2fastmail\f1, is designed just for that purpose.
  1459. XIt avoids the lengthy startup time of \f3Elm\f1 while still
  1460. Xgenerating valid \f2RFC-822\f1\s-2\u5\d\s0 mail.
  1461. X.fn
  1462. X5. If you don't know what RFC-822 is, don't worry about it!
  1463. X.ef
  1464. XPlease see the manual entry for more information on this
  1465. Xcommand.
  1466. X.in 0
  1467. X.br
  1468. X.ne 5
  1469. X.sp
  1470. X.hn 1 Credits and So on
  1471. X
  1472. XThis mailer has been evolving over the past few years with
  1473. Xinvaluable comments on the interface and general mail 
  1474. Xissues from the following people;
  1475. XJim Davis, Steve Wolf (or should that say Steve!! Wolf!!!! perhaps?),
  1476. XLarry Fenske, Rob Sartin,
  1477. XJohn Dilley and Carl Dierschow.
  1478. X.sp
  1479. XFor the Berkeley implementation, lots of help came from
  1480. Xboth John Lebovitz and Ken Stone.
  1481. X.sp
  1482. XFor the Amdahl/UTS implementation, thanks to Scott McGregor and
  1483. XStan Isaacs.
  1484. X.sp
  1485. XFor the Sun problems, Dave England in Lancaster (UK) turned out to be
  1486. X``bloody useful'', as he would no doubt say.
  1487. X.sp
  1488. XThe Pyramid version is due to the work of Steve Malone
  1489. Xof the University of Washington.
  1490. X.sp
  1491. XA number of other people have been amazingly disciplined at reporting 
  1492. Xproblems and (usually, much to my relief) indicating the fixes needed,
  1493. Xespecially Guy Hillyer, Bruce Townsend and Eric Negaard.
  1494. X.sp
  1495. XThere have been many, many others, too numerous to mention, that
  1496. Xhave inspired me with questions like "Why can't Elm..." or 
  1497. X"Why does it ..." or "Can we make it..." too.  A loud round of
  1498. Xapplause and an enthusiastic THANK YOU to you all!!
  1499. X.sp
  1500. XAlso helpful was the ability to have my `own' machine to 
  1501. Xclose up the many many iterative loops that this software
  1502. Xhas gone through \(em since being on a big multi-user machine
  1503. Xtends to slow it down to a standstill...
  1504. XFor that, I thank Hewlett-Packard Colorado Networks Division for their 
  1505. Xinitial support, and now HP Laboratories for the wonderful working 
  1506. Xenvironment that I have here (more than any one person is safe having, 
  1507. XI suspect).
  1508. X.sp
  1509. XMailers that have influenced the design and implementation of \f3Elm\f1, 
  1510. Xfor better or worse, include the following;
  1511. X
  1512. X.lp \h'4p'\f2/bin/mail\f1 1.0i
  1513. XThe most basic of mailers, this one was simply the example of how \f2not\f1
  1514. Xto force the user to interact with a program.
  1515. X
  1516. SHAR_EOF
  1517. echo "End of part 6"
  1518. echo "File doc/Users.guide is continued in part 7"
  1519. echo "7" > s2_seq_.tmp
  1520. exit 0
  1521.  
  1522. exit 0 # Just in case...
  1523.