In scan.highlighted, set black background on the colorized lines
[mmh] / docs / historical / MH-19921214.txt
1
2
3
4
5
6
7
8
9                                             _\bd_\bi_\bs_\bc_\ba_\br_\bd _\bt_\bh_\bi_\bs _\bp_\ba_\bg_\be
10
11
12
13
14                                                The RAND _\bM_\bH
15                                          Message Handling System:
16                                               User's Manual
17
18                                                UCI Version
19
20
21                                             December 14, 1992
22                                                6.6 #1[UCI]
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74                                              _\b1. _\bI_\bN_\bT_\bR_\bO_\bD_\bU_\bC_\bT_\bI_\bO_\bN
75
76
77
78
79
80                       Although people can travel cross-country in  hours  and  can  reach
81                  others by telephone in seconds, communications still depend heavily upon
82                  paper, most of which is distributed through the mails.
83
84                       There are several major reasons for this  continued  dependence  on
85                  written  documents.   First,  a  written  document  may be proofread and
86                  corrected prior to its distribution, giving the author complete  control
87                  over  his  words.   Thus,  a written document is better than a telephone
88                  conversation in this respect.  Second, a carefully written  document  is
89                  far  less  likely to be misinterpreted or poorly translated than a phone
90                  conversation.  Third, a  signature  offers  reasonable  verification  of
91                  authorship, which cannot be provided with media such as telegrams.
92
93                       However, the need for fast\b\b\b\b____,  accurate,  and  reproducible  document
94                  distribution is obvious.  One solution in widespread use is the telefax.
95                  Another that is rapidly gaining popularity is  electronic  mail.   Elec-
96                  tronic  mail is similar to telefax in that the data to be sent are digi-
97                  tized, transmitted via phone lines, and turned back into a  document  at
98                  the  receiver.   The  advantage of electronic mail is in its compression
99                  factor.  Whereas a telefax must scan a page in very fine lines and  send
100                  all  of the black and white information, electronic mail assigns charac-
101                  ters fixed codes which can be transmitted as a few bits of  information.
102                  Telefax  presently  has the advantage of being able to transmit an arbi-
103                  trary page, including pictures, but electronic mail is beginning to deal
104                  with  this  problem.   Electronic mail also integrates well with current
105                  directions  in  office  automation,  allowing  documents  prepared  with
106                  sophisticated  equipment  at  one  site  to  be  quickly transferred and
107                  printed at another site.
108
109                       Currently, most electronic mail is intraorganizational,  with  mail
110                  transfer  remaining within one computer.  As computer networking becomes
111                  more common, however, it is becoming more feasible to  communicate  with
112                  anyone whose computer can be linked to your own via a network.
113
114                       The pioneering efforts on general-purpose electronic mail  were  by
115                  organizations using the DoD ARPAnet[1].  The capability to send messages
116                  between computers existed before the ARPAnet was developed, but  it  was
117                  used  only in limited ways.  With the advent of the ARPAnet, tools began
118                  to be developed which made it convenient for  individuals  or  organiza-
119                  tions  to distribute messages over broad geographic areas, using diverse
120                  computer facilities.  The interest and activity in message  systems  has
121                  now  reached  such proportions that steps have been taken within the DoD
122                  to coordinate and unify the development  of  military  message  systems.
123                  The  use  of electronic mail is expected to increase dramatically in the
124                  next few years.  The utility of such systems in the command and  control
125                  and  intelligence environments is clear, and applications in these areas
126
127
128
129
130
131
132
133
134
135
136
137                                                    -2-
138
139
140                  will probably lead the way.  As the costs for sending and handling elec-
141                  tronic messages continue their rapid decrease, such uses can be expected
142                  to spread rapidly into other areas and, of course, will not  be  limited
143                  to the DoD.
144
145                       A message system provides tools that  help  users  (individuals  or
146                  organizations)  deal  with  messages  in various ways.  Messages must be
147                  composed, sent, received, stored, retrieved, forwarded, and replied  to.
148                  Today's  best  interactive  computer  systems provide a variety of word-
149                  processing and information handling capabilities.  The message  handling
150                  facilities  should be well integrated with the rest of the system, so as
151                  to be a graceful extension of overall system capability.
152
153                       The message system described in this report, _\bM_\bH, provides  most  of
154                  the  features that can be found in other message systems and also incor-
155                  porates some new ones.  It has been built on the UNIX time-sharing  sys-
156                  tem[2],  a  popular  operating  system  for the DEC PDP-11[1] and VAX-11
157                  classes of computers.  A "secure" operating system similar  to  UNIX  is
158                  currently being developed[3], and that system will also run _\bM_\bH.
159
160                       This report provides a complete description  of  _\bM_\bH  and  thus  may
161                  serve  as  a  user's  manual,  although  parts  of the report will be of
162                  interest to non-users as well.  Sections  2  and  3,  the  Overview  and
163                  Tutorial,  present  the key ideas of _\bM_\bH and will give those not familiar
164                  with message systems an idea of what such systems are like.
165
166                       _\bM_\bH consists of a set of commands which use some special  files  and
167                  conventions.   The final section is divided into three parts.  The first
168                  part covers the information a user needs to know in addition to the com-
169                  mands.   Then, each of the _\bM_\bH commands is described in detail.  Finally,
170                  other obscure details are revealed.  A summary of the commands is  given
171                  in  Appendix A, and the syntax of message sequences is given in Appendix
172                  B.
173
174                       A novel approach has been taken in the design of  _\bM_\bH.   Instead  of
175                  creating  a large subsystem that appears as a single command to the user
176                  (such as MS[4]), _\bM_\bH is a collection of separate commands which  are  run
177                  as  separate  programs.   The file and directory system of UNIX are used
178                  directly.  Messages are stored as individual files (datasets), and  col-
179                  lections  of them are grouped into directories.  In contrast, most other
180                  message systems store messages in a complicated data structure within  a
181                  monolithic file.  With the _\bM_\bH approach, UNIX commands can be interleaved
182                  with commands invoking the  functions  of  the  message  handler.   Con-
183                  versely, existing UNIX commands can be used in connection with messages.
184                  For example, all the usual UNIX editing, text-formatting,  and  printing
185                  facilities  can  be applied directly to individual messages.  MH, there-
186                  fore, consists of a relatively small amount of new code; it makes exten-
187                  sive  use  of  other  UNIX software to provide the capabilities found in
188
189
190                     [1] PDP and VAX are trademarks of Digital Equipment Corporation.
191
192
193
194
195
196
197
198
199
200
201
202
203                                                    -3-
204
205
206                  other message systems.
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272                                                _\b2. _\bO_\bV_\bE_\bR_\bV_\bI_\bE_\bW
273
274
275
276
277
278                       There are three main aspects  of  _\bM_\bH :   the   way   messages   are
279                  stored  (the  message  database),  the user's profile (which directs how
280                  certain actions of the message handler take place), and the commands for
281                  dealing with messages.
282
283                       Under _\bM_\bH, each message is stored as a separate file.   A  user  can
284                  take  any  action  with a message that he could with an ordinary file in
285                  UNIX.  A UNIX directory in which messages are stored is called a folder.
286                  Each  folder  contains  some  standard  entries  to support the message-
287                  handling functions.  The messages in  a  folder  have  numerical  names.
288                  These  folders (directories) are entries in a particular directory path,
289                  described in the user profile, through which _\bM_\bH can find  message  fold-
290                  ers.   Using  the UNIX "link" facility, it is possible for one copy of a
291                  message to be "filed" in more than one folder, providing a message index
292                  facility.   Also, using the UNIX tree-structured file system, it is pos-
293                  sible to have a folder within a folder,  nested  arbitrarily  deep,  and
294                  have the full power of the _\bM_\bH commands available.
295
296                       Each user of _\bM_\bH has a user profile, a file in  his  $HOME  (initial
297                  login)  directory  called  ._\bm_\bh__\bp_\br_\bo_\bf_\bi_\bl_\be.   This  profile contains several
298                  pieces of information used by the _\bM_\bH commands: a path name to the direc-
299                  tory  that  contains  the  message folders and parameters that tailor _\bM_\bH
300                  commands to the individual user's requirements.  There is  also  another
301                  file,  called  the  user  context, which contains information concerning
302                  which folder the user last referenced (the "current" folder).   It  also
303                  contains most of the necessary state information concerning how the user
304                  is dealing with his messages, enabling _\bM_\bH to be implemented as a set  of
305                  individual  UNIX commands, in contrast to the usual approach of a monol-
306                  ithic subsystem.
307
308                       In _\bM_\bH, incoming mail is appended to the end of a file in  a  system
309                  spooling  area  for  the user.  This area is called the mail drop direc-
310                  tory, and the file is called the user's mail drop.   Normally  when  the
311                  user  logins  in, s/he is informed of new mail (or the _\bM_\bH program _\bm_\bs_\bg_\bc_\bh_\bk
312                  may be run).  The user adds the new messages to his/her collection of _\bM_\bH
313                  messages  by  invoking  the  command _\bi_\bn_\bc.  The _\bi_\bn_\bc (incorporate) command
314                  adds the new messages to a folder called "inbox", assigning  them  names
315                  which  are  consecutive  integers starting with the next highest integer
316                  available in inbox.  _\bi_\bn_\bc also produces a _\bs_\bc_\ba_\bn summary  of  the  messages
317                  thus  incorporated.   A  folder can be compacted into a single file, for
318                  easy storage, by using the  _\bp_\ba_\bc_\bk_\bf  command.   Also,  messages  within  a
319                  folder can be sorted by date and time with the _\bs_\bo_\br_\bt_\bm command.
320
321
322                       There are four commands for examining the  messages  in  a  folder:
323                  _\bs_\bh_\bo_\bw,  _\bp_\br_\be_\bv,  _\bn_\be_\bx_\bt,  and _\bs_\bc_\ba_\bn.  The _\bs_\bh_\bo_\bw command displays a message in a
324
325                                                    -4-
326
327
328
329
330
331
332
333
334
335                                                    -5-
336
337
338                  folder, _\bp_\br_\be_\bv displays the message preceding  the  current  message,  and
339                  _\bn_\be_\bx_\bt  displays  the  message following the current message.  _\bM_\bH lets the
340                  user choose the program that displays individual  messages.   A  special
341                  program,  _\bm_\bh_\bl,  can  be used to display messages according to the user's
342                  preferences.  The _\bs_\bc_\ba_\bn command summarizes the messages in a folder, nor-
343                  mally  producing  one line per message, showing who the message is from,
344                  the date, the subject, etc.
345
346                       The user may move a message from one folder  to  another  with  the
347                  command  _\br_\be_\bf_\bi_\bl_\be.   Messages may be removed from a folder by means of the
348                  command _\br_\bm_\bm.  In addition, a user may query what the current  folder  is
349                  and may specify that a new folder become the current folder, through the
350                  command _\bf_\bo_\bl_\bd_\be_\br.  All folders may be summarized with the _\bf_\bo_\bl_\bd_\be_\br_\bs command.
351                  A  message  folder (or subfolder) may be removed by means of the command
352                  _\br_\bm_\bf.
353
354                       A set of messages based on content may be selected by  use  of  the
355                  command  _\bp_\bi_\bc_\bk.   This  command searches through messages in a folder and
356                  selects those that match a given set of criteria.   These  messages  are
357                  then  bound  to  a  "sequence" name for use with other _\bM_\bH commands.  The
358                  _\bm_\ba_\br_\bk command manipulates these sequences.
359
360                       There are five commands enabling the user to  create  new  messages
361                  and  send them: _\bc_\bo_\bm_\bp, _\bd_\bi_\bs_\bt, _\bf_\bo_\br_\bw, _\br_\be_\bp_\bl, and _\bs_\be_\bn_\bd.  The _\bc_\bo_\bm_\bp command pro-
362                  vides the facility for the user to compose a new message; _\bd_\bi_\bs_\bt redistri-
363                  butes  mail  to  additional addressees; _\bf_\bo_\br_\bw enables the user to forward
364                  messages; and _\br_\be_\bp_\bl facilitates the generation of a reply to an  incoming
365                  message.   The  last three commands may optionally annotate the original
366                  message.  Messages may be arbitrarily annotated with the  _\ba_\bn_\bn_\bo  command.
367                  Once  a  draft has been constructed by one of the four above composition
368                  programs, a user-specifiable program is run to query the user as to  the
369                  disposition of the draft prior to sending.  _\bM_\bH provides the simple _\bw_\bh_\ba_\bt_\b-
370                  _\bn_\bo_\bw program to start users off.  If a message is not  sent  directly  by
371                  one  of these commands, it may be sent at a later time using the command
372                  _\bs_\be_\bn_\bd.  _\bM_\bH allows the use of any UNIX editor when  composing  a  message.
373                  For rapid entry, a special editor, _\bp_\br_\bo_\bm_\bp_\bt_\be_\br, is provided.  For programs,
374                  a special mail-sending program, _\bm_\bh_\bm_\ba_\bi_\bl, is provided.
375
376                       _\bM_\bH supports a personal aliasing  facility  which  gives  users  the
377                  capability  to  considerably  shorten  address typein and use meaningful
378                  names for addresses.  The _\ba_\bl_\bi program can be used to query _\bM_\bH as to  the
379                  expansion of a list of aliases.  After composing a message, but prior to
380                  sending, the _\bw_\bh_\bo_\bm command can be used to determine exactly who a message
381                  would go to.
382
383                       _\bM_\bH provides a natural interface for telling the  user's  shell  the
384                  names  of  _\bM_\bH  messages  and  folders.  The _\bm_\bh_\bp_\ba_\bt_\bh program achieves this
385                  capability.
386
387                       Finally, _\bM_\bH supports the UCI BBoards facility.  _\bb_\bb_\bc can be used  to
388                  query  the  status  of a group of BBoards, while _\bm_\bs_\bh can be used to read
389                  them.  The _\bb_\bu_\br_\bs_\bt command can be used to "shred" digests of messages into
390
391
392
393
394
395
396
397
398
399
400
401                                                    -6-
402
403
404                  individual messages.
405
406                       All of the elements summarized above are described in  more  detail
407                  in  the  following sections.  Many of the normal facilities of UNIX pro-
408                  vide additional capabilities for dealing with messages in various  ways.
409                  For  example,  it  is  possible  to  print  messages on the line-printer
410                  without requiring any additional code within _\bM_\bH .  Using  standard  UNIX
411                  facilities, any terminal output can be redirected to a file for repeated
412                  or future viewing.  In general, the flexibility and capabilities of  the
413                  UNIX  interface  with the user are preserved as a result of the integra-
414                  tion of _\bM_\bH into the UNIX structure.
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470                                                _\b3. _\bT_\bU_\bT_\bO_\bR_\bI_\bA_\bL
471
472
473
474
475
476                       This tutorial provides a brief introduction to the _\bM_\bH commands.  It
477                  should  be sufficient to allow the user to read his mail, do some simple
478                  manipulations of it, and create and send messages.
479
480                       A message has two major pieces:  the header and the body.  The body
481                  consists  of the text of the message (whatever you care to type in).  It
482                  follows the header and is separated from it by an empty line.  (When you
483                  compose  a  message, the form that appears on your terminal shows a line
484                  of dashes after the header.  This is for convenience and is replaced  by
485                  an  empty  line  when  the  message is sent.)  The header is composed of
486                  several components, including the subject of the message and the  person
487                  to whom it is addressed.  Each component starts with a name and a colon;
488                  components must not start with a blank.  The text of the  component  may
489                  take  more  than  one line, but each continuation line must start with a
490                  blank.  Messages typically have "To:", "cc:", and "Subject:" components.
491                  When  composing  a  message, you should include the "To:" and "Subject:"
492                  components; the "cc:" (for people you want to send  copies  to)  is  not
493                  necessary.
494
495                       The basic _\bM_\bH commands are _\bi_\bn_\bc, _\bs_\bc_\ba_\bn, _\bs_\bh_\bo_\bw, _\bn_\be_\bx_\bt, _\bp_\br_\be_\bv,  _\br_\bm_\bm,  _\bc_\bo_\bm_\bp,
496                  and _\br_\be_\bp_\bl.  These are described below.
497
498                  _\bi_\bn_\bc
499
500                       When you get the message "You have mail",  type  the  command  _\bi_\bn_\bc.
501                  You will get a "scan listing" such as:
502
503                       7+   7/13  Cas      revival of measurement work
504                       8   10/ 9  Norm     NBS people and publications
505                       9   11/26  To:norm  question <<Are there any functions
506
507                       This shows the messages you received since the last time  you  exe-
508                  cuted  this  command (_\bi_\bn_\bc adds these new messages to your inbox folder).
509                  You can see this list again, plus a list of any other messages you have,
510                  by using the _\bs_\bc_\ba_\bn command.
511
512                  _\bs_\bc_\ba_\bn
513
514                       The scan listing shows the message number, followed by the date and
515                  the  sender.   (If  you  are the sender, the addressee in the "To:" com-
516                  ponent is displayed.  You may send yourself a message by including  your
517                  name  among  the "To:" or "cc:" addressees.) It also shows the message's
518                  subject; if the subject is short, the first part of the body of the mes-
519                  sage is included after the characters <<.
520
521
522
523                                                    -7-
524
525
526
527
528
529
530
531
532
533                                                    -8-
534
535
536                  _\bs_\bh_\bo_\bw
537
538                       This command shows the current message, that is, the first  one  of
539                  the  new messages after an _\bi_\bn_\bc.  If the message is not specified by name
540                  (number), it is generally the last message referred to by an _\bM_\bH command.
541                  For example,
542
543
544                       _\bs_\bh_\bo_\bw 5      will show message 5.
545
546
547                       You can use the show command to copy a message or print a message.
548
549
550                       _\bs_\bh_\bo_\bw > _\bx    will copy the message to file x.
551                       _\bs_\bh_\bo_\bw | _\bl_\bp_\br  will print the message, using the _\bl_\bp_\br command.
552                       _\bn_\be_\bx_\bt        will show the message that follows the current message.
553                       _\bp_\br_\be_\bv        will show the message previous to the current message.
554                       _\br_\bm_\bm         will remove the current message.
555                       _\br_\bm_\bm _\b3       will remove message 3.
556
557
558                  _\bc_\bo_\bm_\bp
559
560                       The _\bc_\bo_\bm_\bp command puts you in the editor to write or edit a message.
561                  Fill  in or delete the "To:", "cc:", and "Subject:" fields, as appropri-
562                  ate, and type the body of the message.  Then exit normally from the edi-
563                  tor.   You will be asked "What now?".  Type a carriage return to see the
564                  options.  Typing send will cause the message to  be  sent;  typing  quit
565                  will cause an exit from _\bc_\bo_\bm_\bp, with the message draft saved.
566
567                       If you quit without sending the message, it will be saved in a file
568                  called  <name>/Mail/draft  (where  <name> is your $HOME directory).  You
569                  can resume editing the message later with "comp -use"; or you  can  send
570                  the message later, using the _\bs_\be_\bn_\bd command.
571
572                  _\bc_\bo_\bm_\bp -_\be_\bd_\bi_\bt_\bo_\br _\bp_\br_\bo_\bm_\bp_\bt_\be_\br
573
574                       This command uses a different editor and is  useful  for  preparing
575                  "quick  and  dirty"  messages.  It prompts you for each component of the
576                  header.  Type the information for that component,  or  type  a  carriage
577                  return to omit the component.  After that, type the body of the message.
578                  Backspacing is the only form of editing allowed with this editor.   When
579                  the  body is complete, type a carriage return followed by <EOT> (usually
580                  <CTRL-D>).  This completes the initial preparation of the message;  from
581                  then on, use the same procedures as with _\bc_\bo_\bm_\bp (above).
582
583                  _\br_\be_\bp_\bl
584                  _\br_\be_\bp_\bl n
585
586                       This command makes up an initial message form with a header that is
587                  appropriate  for  replying  to  an  existing message.  The message being
588
589
590
591
592
593
594
595
596
597
598
599                                                    -9-
600
601
602                  answered is the current message if no message number is mentioned, or  n
603                  if a number is specified.  After the header is completed, you can finish
604                  the message as in _\bc_\bo_\bm_\bp (above).
605
606                       This is enough information to get you going using  _\bM_\bH.   There  are
607                  more commands, and the commands described here have more features.  Sub-
608                  sequent sections explain _\bM_\bH in complete detail.   The  system  is  quite
609                  powerful  if you want to use its sophisticated features, but the forego-
610                  ing commands suffice for sending and receiving messages.
611
612                       There are numerous additional capabilities you may wish to explore.
613                  For  example, the _\bp_\bi_\bc_\bk command will select a subset of messages based on
614                  specified criteria such as sender and/or subject.   Groups  of  messages
615                  may  be  designated, as described in Sec. IV, under Message Naming.  The
616                  file ._\bm_\bh__\bp_\br_\bo_\bf_\bi_\bl_\be can be used to tailor your use of the message system to
617                  your needs and preferences, as described in Sec. IV, under The User Pro-
618                  file.  In general, you may  learn  additional  features  of  the  system
619                  selectively,  according  to  your requirements, by studying the relevant
620                  sections of this manual.  There is no need to learn all the  details  of
621                  the system at once.
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668                                          _\b4. _\bD_\bE_\bT_\bA_\bI_\bL_\bE_\bD _\bD_\bE_\bS_\bC_\bR_\bI_\bP_\bT_\bI_\bO_\bN
669
670
671
672
673
674                       This section describes the _\bM_\bH system in detail, including the  com-
675                  ponents  of  the  user  profile, the conventions for message naming, and
676                  some of the other _\bM_\bH conventions.  Readers who  are  generally  familiar
677                  with  computer  systems  will  be  able  to  follow the principal ideas,
678                  although some details may be meaningful  only  to  those  familiar  with
679                  UNIX.
680
681
682                  _\bT_\bH_\bE _\bU_\bS_\bE_\bR _\bP_\bR_\bO_\bF_\bI_\bL_\bE
683
684                       The first time an _\bM_\bH command is issued by a new  user,  the  system
685                  prompts for a "Path" and creates an _\bM_\bH "profile".
686
687                       Each _\bM_\bH user has a profile which contains tailoring information for
688                  each  individual  program.   Other  profile  entries control the _\bM_\bH path
689                  (where folders and special files are kept), folder and  message  protec-
690                  tions,  editor  selection,  and  default  arguments for each _\bM_\bH program.
691                  Each user of _\bM_\bH also has a context file  which  contains  current  state
692                  information for the _\bM_\bH package (the location of the context file is kept
693                  in the user's _\bM_\bH directory, or may be named in the user profile).   When
694                  a  folder  becomes the current folder, it is recorded in the user's con-
695                  text.  (Other state information is kept in the  context  file,  see  the
696                  manual  entry for _\bm_\bh-_\bp_\br_\bo_\bf_\bi_\bl_\be (5) for more details.) In general, the term
697                  "profile entry" refer to entries in either the profile or context  file.
698                  Users of _\bM_\bH needn't worry about the distinction, _\bM_\bH handles these things
699                  automatically.
700
701                       The _\bM_\bH profile is stored in the  file  ._\bm_\bh__\bp_\br_\bo_\bf_\bi_\bl_\be  in  the  user's
702                  $HOME directory[1].  It has the format of a message  without  any  body.
703                  That is, each profile entry is on one line, with a keyword followed by a
704                  colon (:) followed by text particular to the keyword.
705                  =>   _\bT_\bh_\bi_\bs _\bf_\bi_\bl_\be _\bm_\bu_\bs_\bt _\bn_\bo_\bt _\bh_\ba_\bv_\be _\bb_\bl_\ba_\bn_\bk _\bl_\bi_\bn_\be_\bs.
706                  The keywords may have any combination of upper and lower case.  (See the
707                  information of _\bm_\bh-_\bm_\ba_\bi_\bl later on in this manual for a description of mes-
708                  sage formats.)
709
710                       For the average _\bM_\bH user, the only profile entry  of  importance  is
711                  "Path".   Path  specifies  a  directory  in which _\bM_\bH folders and certain
712                  files such as "draft" are found.  The argument to this keyword must be a
713                  legal  UNIX  path that names an existing directory.  If this path is not
714                  absolute (i.e., does not begin with a / ), it will be presumed to  start
715
716
717                     [1] By defining the envariable $MH, you can specify an alternate pro-
718                  file to be used by _\bM_\bH commands.
719
720
721                                                    -10-
722
723
724
725
726
727
728
729
730
731                                                    -11-
732
733
734                  from the user's $HOME directory.   All  folder  and  message  references
735                  within _\bM_\bH will relate to this path unless full path names are used.
736
737                       Message protection defaults to 644, and folder protection  to  711.
738                  These  may  be  changed  by  profile  entries "Msg-Protect" and "Folder-
739                  Protect", respectively.  The argument to  these  keywords  is  an  octal
740                  number which is used as the UNIX file mode[2].
741
742                       When an _\bM_\bH program starts running, it looks through the user's pro-
743                  file for an entry with a keyword matching the program's name.  For exam-
744                  ple, when _\bc_\bo_\bm_\bp is run, it looks for a "comp" profile entry.  If  one  is
745                  found,  the text of the profile entry is used as the default switch set-
746                  ting until all defaults are overridden by explicit  switches  passed  to
747                  the     program     as    arguments.     Thus    the    profile    entry
748                  "comp: -form standard.list"  would  direct  _\bc_\bo_\bm_\bp   to   use   the   file
749                  "standard.list"  as the message skeleton.  If an explicit form switch is
750                  given to the _\bc_\bo_\bm_\bp command, it will override the switch obtained from the
751                  profile.
752
753                       In UNIX, a program may exist under several names, either by linking
754                  or  aliasing.   The actual invocation name is used by an _\bM_\bH program when
755                  scanning for its profile defaults[3].  Thus, each _\bM_\bH  program  may  have
756                  several  names by which it can be invoked, and each name may have a dif-
757                  ferent set of default switches.  For example, if _\bc_\bo_\bm_\bp is invoked by  the
758                  name  _\bi_\bc_\bo_\bm_\bp, the profile entry "icomp" will control the default switches
759                  for this invocation of the  _\bc_\bo_\bm_\bp  program.   This  provides  a  powerful
760                  definitional facility for commonly used switch settings.
761
762                       The default editor for editing within _\bc_\bo_\bm_\bp, _\br_\be_\bp_\bl, _\bf_\bo_\br_\bw,  and  _\bd_\bi_\bs_\bt,
763                  is  usually  _\bp_\br_\bo_\bm_\bp_\bt_\be_\br, but might be something else at your site, such as
764                  /_\bu_\bs_\br/_\bu_\bc_\bb/_\be_\bx or /_\bb_\bi_\bn/_\be.  A different editor may be used by specifying the
765                  profile  entry  "Editor:  ".  The argument to "Editor" is the name of an
766                  executable program or shell command file which  can  be  found  via  the
767                  user's  $PATH defined search path, excluding the current directory.  The
768                  "Editor:"  profile  specification  may  in  turn  be  overridden  by   a
769                  `-editor <editor>'  profile  switch associated with _\bc_\bo_\bm_\bp, _\br_\be_\bp_\bl, _\bf_\bo_\br_\bw, or
770                  _\bd_\bi_\bs_\bt.  Finally, an explicit editor switch specified with  any  of  these
771                  four commands will have ultimate precedence.
772
773                       During message composition, more than one editor may be used.   For
774                  example,  one  editor  (such  as _\bp_\br_\bo_\bm_\bp_\bt_\be_\br ) may be used initially, and a
775
776
777                     [2] See _\bc_\bh_\bm_\bo_\bd (1) in the _\bU_\bN_\bI_\bX _\bP_\br_\bo_\bg_\br_\ba_\bm_\bm_\be_\br'_\bs _\bM_\ba_\bn_\bu_\ba_\bl [5].
778                     [3] Unfortunately, the shell does not preserve  aliasing  information
779                  when  calling  a program, hence if a program is invoked by an alias dif-
780                  ferent than its name, the program will examine  the  profile  entry  for
781                  it's name, not the alias that the user invoked it as.  The correct solu-
782                  tion is to create a (soft) link in your $_\bH_\bO_\bM_\bE/_\bb_\bi_\bn directory  to  the  _\bM_\bH
783                  program  of  your choice.  By giving this link a different name, you can
784                  use an alternate set of defaults for the command.
785
786
787
788
789
790
791
792
793
794
795
796
797                                                    -12-
798
799
800                  second editor may be invoked later to revise the message being  composed
801                  (see  the discussion of _\bc_\bo_\bm_\bp in Section 5 for details).  A profile entry
802                  "<lasteditor>-next: <editor>" specifies the name of  the  editor  to  be
803                  used  after  a  particular  editor.  Thus "comp: -e prompter" causes the
804                  initial text  to  be  collected  by  _\bp_\br_\bo_\bm_\bp_\bt_\be_\br,  and  the  profile  entry
805                  "prompter-next: ed"  names  ed  as the editor to be invoked for the next
806                  round of editing.
807
808                       Some of the _\bM_\bH commands, such as _\bs_\bh_\bo_\bw, can be used on message fold-
809                  ers owned by others, if those folders are readable.  However, you cannot
810                  write in someone else's folder.  All the _\bM_\bH command actions not  requir-
811                  ing write permission may be used with a "read-only" folder.
812
813                       Table 1 lists examples of some of  the  currently  defined  profile
814                  entries, typical arguments, and the programs that reference the entries.
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863                                                    -13-
864
865
866                                                  Table 1
867
868                                             PROFILE COMPONENTS
869                           ______________________________________________________
870
871                                                        _\bM_\bH Programs that
872                           Keyword and Argument          use Component\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b______________________________________________________
873
874                           Path: Mail                   All
875                           Current-Folder: inbox        Most
876                           Editor: /usr/ucb/ex          _\bc_\bo_\bm_\bp, _\bd_\bi_\bs_\bt, _\bf_\bo_\br_\bw, _\br_\be_\bp_\bl
877                           Inbox: inbox                 _\bi_\bn_\bc, _\br_\bm_\bf
878                           Msg-Protect: 644             _\bi_\bn_\bc
879                           Folder-Protect: 711          _\bi_\bn_\bc, _\bp_\bi_\bc_\bk, _\br_\be_\bf_\bi_\bl_\be
880                           <program>: default switches  All
881                           prompter-next: ed            _\bc_\bo_\bm_\bp, _\bd_\bi_\bs_\bt, _\bf_\bo_\br_\bw, _\br_\be_\bp_\bl
882                           ______________________________________________________
883
884
885                       Path should\b\b\b\b\b\b______ be present.  Current-Folder is maintained automatically
886                  by many _\bM_\bH commands (see the Context sections of the individual commands
887                  in Sec. IV).  All other entries are optional, defaulting to  the  values
888                  described above.
889
890
891                  _\bM_\bE_\bS_\bS_\bA_\bG_\bE _\bN_\bA_\bM_\bI_\bN_\bG
892
893                       Messages may be referred to explicitly or implicitly when using  _\bM_\bH
894                  commands.   A formal syntax of message names is given in Appendix B, but
895                  the following description should be sufficient for most _\bM_\bH users.   Some
896                  details  of  message  naming  that  apply  only  to certain commands are
897                  included in the description of those commands.
898
899                       Most of the _\bM_\bH commands accept arguments  specifying  one  or  more
900                  folders,  and  one  or more messages to operate on.  The use of the word
901                  "msg" as an argument to a command means that exactly  one  message  name
902                  may  be  specified.   A  message name may be a number, such as 1, 33, or
903                  234, or it may be one of the  "reserved"  message  names:  first,  last,
904                  prev,  next,  and  cur.   (As a shorthand, a period (.) is equivalent to
905                  cur.) The meanings of these names are straightforward:  "first"  is  the
906                  first  message  in the folder; "last" is the last message in the folder;
907                  "prev" is the message  numerically  previous  to  the  current  message;
908                  "next"  is  the message numerically following the current message; "cur"
909                  (or ".") is the current message in the folder.  In addition, _\bM_\bH supports
910                  user-defined-sequences; see the description of the _\bm_\ba_\br_\bk command for more
911                  information.
912
913                       The default in commands that take a "msg" argument is always "cur".
914
915                       The word "msgs" indicates that several messages may  be  specified.
916                  Such  a specification consists of several message designations separated
917                  by spaces.  A message designation is either a message name or a  message
918
919
920
921
922
923
924
925
926
927
928
929                                                    -14-
930
931
932                  range.   A  message  range is a specification of the form name1-name2 or
933                  name1:n, where name1 and name2 are message names and n  is  an  integer.
934                  The  first  form  designates  all  the  messages  from  name1  to  name2
935                  inclusive; this must be a non-empty range.  The second form specifies up
936                  to  n messages, starting with name1 if name1 is a number, or first, cur,
937                  or next, and ending with name1 if name1 is last or prev.  This interpre-
938                  tation  of  n  is  overridden if n is preceded by a plus sign or a minus
939                  sign; +n always means up to n  messages  starting  with  name1,  and  -n
940                  always  means  up  to n messages ending with name1.  Repeated specifica-
941                  tions of the same message have the same effect as a single specification
942                  of the message.  Examples of specifications are:
943
944
945                      1 5 7-11 22
946                      first 6 8 next
947                      first-10
948                      last:5
949
950
951                       The message name "all" is a shorthand for "first-last",  indicating
952                  all of the messages in the folder.
953
954                       In commands that accept "msgs" arguments, the default is either cur
955                  or all, depending on which makes more sense.
956
957                       In all of the _\bM_\bH commands, a plus sign preceding an argument  indi-
958                  cates  a folder name.  Thus, "+inbox" is the name of the user's standard
959                  inbox.  If an explicit folder argument is given to  an  _\bM_\bH  command,  it
960                  will  become the current folder (that is, the "Current-Folder:" entry in
961                  the user's profile will be changed to this folder).  In the case of  the
962                  _\br_\be_\bf_\bi_\bl_\be  command,  which  can  have multiple output folders, a new source
963                  folder  (other  than  the  default  current  folder)  is  specified   by
964                  `-src +folder'.
965
966
967                  _\bO_\bT_\bH_\bE_\bR _\bM_\bH _\bC_\bO_\bN_\bV_\bE_\bN_\bT_\bI_\bO_\bN_\bS
968
969                       One very powerful feature of _\bM_\bH is that  the  _\bM_\bH  commands  may  be
970                  issued  from any current directory, and the proper path to the appropri-
971                  ate folder(s) will be taken from the user's profile.  If the _\bM_\bH path  is
972                  not  appropriate for a specific folder or file, the automatic prepending
973                  of the _\bM_\bH path can be avoided by beginning a folder or file name with /,
974                  or  with  ./  or  ../ component.  Thus any specific absolute path may be
975                  specified along with any path relative to the current working directory.
976
977                       Arguments to the various programs may be given in any  order,  with
978                  the exception of a few switches whose arguments must follow immediately,
979                  such as `-src +folder' for _\br_\be_\bf_\bi_\bl_\be.
980
981                       Whenever an _\bM_\bH command prompts the user, the valid options will  be
982                  listed  in  response to a <RETURN>.  (The first of the listed options is
983                  the default if end-of-file is encountered, such as from a command file.)
984
985
986
987
988
989
990
991
992
993
994
995                                                    -15-
996
997
998                  A  valid  response  is  any  _\bu_\bn_\bi_\bq_\bu_\be  abbreviation  of  one of the listed
999                  options.
1000
1001                       Standard UNIX documentation conventions are used in this report  to
1002                  describe  _\bM_\bH  command  syntax.  Arguments enclosed in brackets ([ ]) are
1003                  optional; exactly one of the arguments enclosed within braces ({ }) must
1004                  be specified, and all other arguments are required.  The use of ellipsis
1005                  dots (...) indicates zero or more repetitions of the previous item.  For
1006                  example,  "+folder  ..." would indicate that one or more "+folder" argu-
1007                  ments is required and "[+folder ...]" indicates that 0 or more "+folder"
1008                  arguments may be given.
1009
1010                       _\bM_\bH departs from UNIX standards by using switches  that  consist  of
1011                  more  than  one  character,  e.g. `-header'.  To minimize typing, only a
1012                  unique abbreviation of a switch need  be  typed;  thus,  for  `-header',
1013                  `-hea'  is probably sufficient, depending on the other switches the com-
1014                  mand accepts.  Each _\bM_\bH program accepts the switch `-help' (which must be
1015                  spelled  out  fully)  and  produces  a  syntax description and a list of
1016                  switches.  In the list of switches, parentheses indicate required  char-
1017                  acters.   For  example,  all  `-help' switches will appear as "-(help)",
1018                  indicating that no abbreviation is accepted.  Furthermore,  the  `-help'
1019                  switch tells the version of the _\bM_\bH program you invoked.
1020
1021                       Many _\bM_\bH switches have both on and off forms, such as `-format'  and
1022                  `-noformat'.  In many of the descriptions which follow, only one form is
1023                  defined; the other form, often used to nullify profile switch  settings,
1024                  is assumed to be the opposite.
1025
1026
1027
1028
1029
1030
1031
1032
1033
1034
1035
1036
1037
1038
1039
1040
1041
1042
1043
1044
1045
1046
1047
1048
1049
1050
1051
1052
1053
1054
1055
1056
1057
1058
1059
1060
1061                                                    -16-
1062
1063
1064                  _\bM_\bH _\bC_\bO_\bM_\bM_\bA_\bN_\bD_\bS
1065
1066                       The _\bM_\bH package comprises several programs:
1067
1068                       ali (1)        - list mail aliases
1069                       anno (1)       - annotate messages
1070                       bbc (1)        - check on BBoards
1071                       bboards (1)    - the UCI BBoards facility
1072                       burst (1)      - explode digests into messages
1073                       comp (1)       - compose a message
1074                       dist (1)       - redistribute a message to additional addresses
1075                       folder (1)     - set/list current folder/message
1076                       folders (1)    - list all folders
1077                       forw (1)       - forward messages
1078                       inc (1)        - incorporate new mail
1079                       mark (1)       - mark messages
1080                       mhl (1)        - produce formatted listings of MH messages
1081                       mhmail (1)     - send or read mail
1082                       mhook (1)      - MH receive-mail hooks
1083                       mhparam (1)    - print MH profile components
1084                       mhpath (1)     - print full pathnames of MH messages and folders
1085                       msgchk (1)     - check for messages
1086                       msh (1)        - MH shell (and BBoard reader)
1087                       next (1)       - show the next message
1088                       packf (1)      - compress a folder into a single file
1089                       pick (1)       - select messages by content
1090                       prev (1)       - show the previous message
1091                       prompter (1)   - prompting editor front end
1092                       rcvstore (1)   - incorporate new mail asynchronously
1093                       refile (1)     - file messages in other folders
1094                       repl (1)       - reply to a message
1095                       rmf (1)        - remove folder
1096                       rmm (1)        - remove messages
1097                       scan (1)       - produce a one line per message scan listing
1098                       send (1)       - send a message
1099                       show (1)       - show (list) messages
1100                       slocal (1)     - special local mail delivery
1101                       sortm (1)      - sort messages
1102                       vmh (1)        - visual front-end to MH
1103                       whatnow (1)    - prompting front-end for send
1104                       whom (1)       - report to whom a message would go
1105
1106
1107                       These programs are described below.  The form of  the  descriptions
1108             conforms to the standard form for the description of UNIX commands.
1109
1110
1111
1112
1113
1114
1115
1116
1117
1118
1119
1120
1121
1122
1123
1124
1125
1126
1127             ALI(1)                            -17-                            ALI(1)
1128
1129
1130             _\bN_\bA_\bM_\bE
1131                  ali - list mail aliases
1132
1133             _\bS_\bY_\bN_\bO_\bP_\bS_\bI_\bS
1134                  ali [-alias aliasfile] [-list] [-nolist] [-normalize]
1135                       [-nonormalize] [-user] [-nouser] aliases ...  [-help]
1136
1137             _\bD_\bE_\bS_\bC_\bR_\bI_\bP_\bT_\bI_\bO_\bN
1138
1139                  _\bA_\bl_\bi searches the named mail alias  files  for  each  of  the  given
1140                  _\ba_\bl_\bi_\ba_\bs_\be_\bs.   It  creates  a  list of addresses for those _\ba_\bl_\bi_\ba_\bs_\be_\bs, and
1141                  writes that list on standard output.   If  the  `-list'  option  is
1142                  specified,  each address appears on a separate line; otherwise, the
1143                  addresses are separated by commas and printed on as  few  lines  as
1144                  possible.
1145
1146                  The `-user' option directs _\ba_\bl_\bi to  perform  its  processing  in  an
1147                  inverted  fashion: instead of listing the addresses that each given
1148                  alias expands to, _\ba_\bl_\bi will list the aliases  that  expand  to  each
1149                  given  address.   If the `-normalize' switch is given, _\ba_\bl_\bi will try
1150                  to track down the official hostname of the address.
1151
1152                  The files specified by the profile entry "Aliasfile:" and any addi-
1153                  tional  alias  files given by the `-alias aliasfile' switch will be
1154                  read.  Each _\ba_\bl_\bi_\ba_\bs is processed as described in _\bm_\bh-_\ba_\bl_\bi_\ba_\bs (5).
1155
1156             _\bF_\bi_\bl_\be_\bs
1157                  $HOME/.mh_profile                    The user profile
1158                  /etc/passwd                          List of users
1159                  /etc/group                           List of groups
1160
1161
1162             _\bP_\br_\bo_\bf_\bi_\bl_\be _\bC_\bo_\bm_\bp_\bo_\bn_\be_\bn_\bt_\bs
1163                  Path:                To determine the user's MH directory
1164                  Aliasfile:           For a default alias file
1165
1166
1167             _\bS_\be_\be _\bA_\bl_\bs_\bo
1168                  mh-alias(5)
1169
1170
1171             _\bD_\be_\bf_\ba_\bu_\bl_\bt_\bs
1172                  `-alias /usr/bs/mh-6.8/lib/MailAliases'
1173                  `-nolist'
1174                  `-nonormalize'
1175                  `-nouser'
1176
1177
1178             _\bC_\bo_\bn_\bt_\be_\bx_\bt
1179                  None
1180
1181
1182
1183             [mh.6]                           MH.6.8                      UCI version
1184
1185
1186
1187
1188
1189
1190
1191
1192
1193             ALI(1)                            -18-                            ALI(1)
1194
1195
1196             _\bB_\bu_\bg_\bs
1197                  The `-user' option with `-nonormalize' is not entirely accurate, as
1198                  it  does  not replace local nicknames for hosts with their official
1199                  site names.
1200
1201
1202
1203
1204
1205
1206
1207
1208
1209
1210
1211
1212
1213
1214
1215
1216
1217
1218
1219
1220
1221
1222
1223
1224
1225
1226
1227
1228
1229
1230
1231
1232
1233
1234
1235
1236
1237
1238
1239
1240
1241
1242
1243
1244
1245
1246
1247
1248
1249             [mh.6]                           MH.6.8                      UCI version
1250
1251
1252
1253
1254
1255
1256
1257
1258
1259             ANNO(1)                           -19-                           ANNO(1)
1260
1261
1262             _\bN_\bA_\bM_\bE
1263                  anno - annotate messages
1264
1265             _\bS_\bY_\bN_\bO_\bP_\bS_\bI_\bS
1266                  anno [+folder] [msgs] [-component field] [-inplace] [-noinplace]
1267                       [-date] [-nodate] [-text body] [-help]
1268
1269             _\bD_\bE_\bS_\bC_\bR_\bI_\bP_\bT_\bI_\bO_\bN
1270
1271                  _\bA_\bn_\bn_\bo annotates the specified messages in the named folder using the
1272                  field  and body.  Annotation is optionally performed by _\bd_\bi_\bs_\bt, _\bf_\bo_\br_\bw,
1273                  and _\br_\be_\bp_\bl, to keep track of your distribution of, forwarding of, and
1274                  replies  to  a  message.   By using _\ba_\bn_\bn_\bo, you can perform arbitrary
1275                  annotations of your own.  Each message selected will  be  annotated
1276                  with the lines
1277
1278                      field: date
1279                      field: body
1280
1281                  The `-nodate' switch inhibits the date annotation, leaving only the
1282                  body  annotation.   The  `-inplace'  switch causes annotation to be
1283                  done in place in order to preserve links to the annotated message.
1284
1285                  The field specified should be a valid 822-style message field name,
1286                  which  means  that  it  should consist of alphanumerics (or dashes)
1287                  only.  The body specified is arbitrary text.
1288
1289                  If a `-component field' is not specified when _\ba_\bn_\bn_\bo is invoked, _\ba_\bn_\bn_\bo
1290                  will prompt the user for the name of field for the annotation.
1291
1292             _\bF_\bi_\bl_\be_\bs
1293                  $HOME/.mh_profile                    The user profile
1294
1295
1296             _\bP_\br_\bo_\bf_\bi_\bl_\be _\bC_\bo_\bm_\bp_\bo_\bn_\be_\bn_\bt_\bs
1297                  Path:                To determine the user's MH directory
1298                  Current-Folder:      To find the default current folder
1299
1300
1301             _\bS_\be_\be _\bA_\bl_\bs_\bo
1302                  dist (1), forw (1), repl (1)
1303
1304
1305             _\bD_\be_\bf_\ba_\bu_\bl_\bt_\bs
1306                  `+folder' defaults to the current folder
1307                  `msgs' defaults to cur
1308                  `-noinplace'
1309                  `-date'
1310
1311
1312
1313
1314
1315             [mh.6]                           MH.6.8                      UCI version
1316
1317
1318
1319
1320
1321
1322
1323
1324
1325             ANNO(1)                           -20-                           ANNO(1)
1326
1327
1328             _\bC_\bo_\bn_\bt_\be_\bx_\bt
1329                  If a folder is given, it will become the current folder.  The first
1330                  message annotated will become the current message.
1331
1332
1333
1334
1335
1336
1337
1338
1339
1340
1341
1342
1343
1344
1345
1346
1347
1348
1349
1350
1351
1352
1353
1354
1355
1356
1357
1358
1359
1360
1361
1362
1363
1364
1365
1366
1367
1368
1369
1370
1371
1372
1373
1374
1375
1376
1377
1378
1379
1380
1381             [mh.6]                           MH.6.8                      UCI version
1382
1383
1384
1385
1386
1387
1388
1389
1390
1391             BBC(1)                            -21-                            BBC(1)
1392
1393
1394             _\bN_\bA_\bM_\bE
1395                  bbc - check on BBoards
1396
1397             _\bS_\bY_\bN_\bO_\bP_\bS_\bI_\bS
1398                  bbc [bboards ...] [-topics] [-check] [-read] [-quiet] [-verbose]
1399                       [-archive] [-noarchive] [-protocol] [-noprotocol]
1400                       [-mshproc program] [switches for _\bm_\bs_\bh_\bp_\br_\bo_\bc] [-rcfile rcfile]
1401                       [-norcfile] [-file BBoardsfile] [-user BBoardsuser]
1402                       [-host host] [-help]
1403
1404             _\bD_\bE_\bS_\bC_\bR_\bI_\bP_\bT_\bI_\bO_\bN
1405
1406                  _\bb_\bb_\bc is a BBoard reading/checking program  that  interfaces  to  the
1407                  BBoard channel.
1408
1409                  The _\bb_\bb_\bc program has three action switches which direct  its  opera-
1410                  tion:
1411
1412                  The `-read' switch invokes the _\bm_\bs_\bh program on  the  named  _\bB_\bB_\bo_\ba_\br_\bd_\bs.
1413                  If  you  also  specify the `-archive' switch, then  _\bb_\bb_\bc will invoke
1414                  the _\bm_\bs_\bh program on the  archives  of  the  named  _\bB_\bB_\bo_\ba_\br_\bd_\bs.   If  no
1415                  _\bB_\bB_\bo_\ba_\br_\bd_\bs   are   given  on  the  command  line,  and  you  specified
1416                  `-archive', _\bb_\bb_\bc will not read your  `bboards'  profile  entry,  but
1417                  will read the archives of the "system" _\bB_\bB_\bo_\ba_\br_\bd instead.
1418
1419                  The `-check' switch types out  status  information  for  the  named
1420                  _\bB_\bB_\bo_\ba_\br_\bd_\bs.   _\bb_\bb_\bc  can  print one of several messages depending on the
1421                  status of both the BBoard and the user's reading  habits.  As  with
1422                  each  of these messages, the number given is the item number of the
1423                  last item placed in the BBoard.  This number (which  is  marked  in
1424                  the  messages  as the "BBoard-Id") is ever increasing.  Hence, when
1425                  _\bb_\bb_\bc says "n items", it really means that the highest  BBoard-Id  is
1426                  "n".   There  may,  or may not actually be "n" items in the BBoard.
1427                  Some common messages are:
1428
1429                       BBoard -- n items unseen
1430                            This message tells how many items the user  has  not  yet
1431                            seen.  When invoked with the `-quiet' switch, this is the
1432                            only informative line that _\bb_\bb_\bc will possibly print out.
1433
1434                       BBoard -- empty
1435                            The BBoard is empty.
1436
1437                       BBoard -- n items (none seen)
1438                            The BBoard has items in it, but the user hasn't seen any.
1439
1440                       BBoard -- n items (all seen)
1441                            The BBoard is non-empty, and the user has seen everything
1442                            in it.
1443
1444                       BBoard -- n items seen out of m
1445                            The BBoard has at most m-n items that the  user  has  not
1446
1447             [mh.6]                           MH.6.8                      UCI version
1448
1449
1450
1451
1452
1453
1454
1455
1456
1457             BBC(1)                            -22-                            BBC(1)
1458
1459
1460                            seen.
1461
1462                  The `-topics' switch directs _\bb_\bb_\bc to print  three  items  about  the
1463                  named _\bB_\bB_\bo_\ba_\br_\bd_\bs: it's official name, the number of items present, and
1464                  the date and time of the last update.  If  no  _\bB_\bB_\bo_\ba_\br_\bd_\bs  are  named,
1465                  then  all  BBoards  are listed.  If the `-verbose' switch is given,
1466                  more information is output.
1467
1468                  The `-quiet' switch specifies that  _\bb_\bb_\bc  should  be  silent  if  no
1469                  _\bB_\bB_\bo_\ba_\br_\bd_\bs  are  found  with  new  information.  The `-verbose' switch
1470                  specifies that _\bb_\bb_\bc is to consider you to be interested  in  _\bB_\bB_\bo_\ba_\br_\bd_\bs
1471                  that you've already seen everything in.
1472
1473                  To override the default _\bm_\bs_\bh_\bp_\br_\bo_\bc and  the  profile  entry,  use  the
1474                  `-mshproc program' switch.  Any arguments not understood by _\bb_\bb_\bc are
1475                  passed to this program.  The `-protocol' switch tells _\bb_\bb_\bc that your
1476                  _\bm_\bs_\bh_\bp_\br_\bo_\bc  knows  about  the  special _\bb_\bb_\bc protocol for reporting back
1477                  information.  _\bm_\bs_\bh (1), the default _\bm_\bs_\bh_\bp_\br_\bo_\bc, knows all about this.
1478
1479                  The `-file BBoardsfile' switch tells  _\bb_\bb_\bc  to  use  a  non-standard
1480                  _\bB_\bB_\bo_\ba_\br_\bd_\bs  file  when  performing  its  calculations.  Similarly, the
1481                  `-user BBoardsuser' switch tells _\bb_\bb_\bc to use  a  non-standard  user-
1482                  name.   Both  of  these  switches  are  useful  for debugging a new
1483                  _\bB_\bB_\bo_\ba_\br_\bd_\bs or _\bP_\bO_\bP file.
1484
1485                  If the local host is configured as an NNTP BBoards  client,  or  if
1486                  the `-host host' switch is given, then _\bb_\bb_\bc will query the NNTP ser-
1487                  vice host as to the  status  of  the  BBoards.   For  NNTP  BBoards
1488                  clients, the `-user user' and the `-rpop' switches are ignored.
1489
1490                  The ._\bb_\bb_\br_\bc file in the user's $HOME directory is used to keep  track
1491                  of what messages have been read.  The `-rcfile rcfile' switch over-
1492                  rides the use of ._\bb_\bb_\br_\bc for this purpose.  If the value given to the
1493                  switch  is  not absolute, (i.e., does not begin with a / ), it will
1494                  be presumed to start from the current working directory.   If  this
1495                  switch  is not given (or the `-norcfile' switch is given), then _\bb_\bb_\bc
1496                  consults the envariable $MHBBRC, and honors it similarly.
1497
1498             _\bF_\bi_\bl_\be_\bs
1499                  $HOME/.mh_profile                    The user profile
1500                  $HOME/.bbrc                          BBoard "current" message information
1501
1502
1503             _\bP_\br_\bo_\bf_\bi_\bl_\be _\bC_\bo_\bm_\bp_\bo_\bn_\be_\bn_\bt_\bs
1504                  Path:                To determine the user's MH directory
1505                  bboards:             To specify interesting BBoards
1506                  mshproc:             Program to read a given BBoard
1507
1508
1509             _\bS_\be_\be _\bA_\bl_\bs_\bo
1510                  bbl(1), bboards(1), msh(1)
1511
1512
1513             [mh.6]                           MH.6.8                      UCI version
1514
1515
1516
1517
1518
1519
1520
1521
1522
1523             BBC(1)                            -23-                            BBC(1)
1524
1525
1526             _\bD_\be_\bf_\ba_\bu_\bl_\bt_\bs
1527                  `-read'
1528                  `-noarchive'
1529                  `-protocol'
1530                  `bboards' defaults to "system"
1531                  `-file /usr/bs/mh-6.8/bboards/BBoards'
1532                  `-user bboards'
1533
1534
1535             _\bC_\bo_\bn_\bt_\be_\bx_\bt
1536                  None
1537
1538
1539             _\bB_\bu_\bg_\bs
1540                  The `-user' switch takes effect only if  followed  by  the  `-file'
1541                  switch.
1542
1543
1544
1545
1546
1547
1548
1549
1550
1551
1552
1553
1554
1555
1556
1557
1558
1559
1560
1561
1562
1563
1564
1565
1566
1567
1568
1569
1570
1571
1572
1573
1574
1575
1576
1577
1578
1579             [mh.6]                           MH.6.8                      UCI version
1580
1581
1582
1583
1584
1585
1586
1587
1588
1589             BBOARDS(1)                        -24-                        BBOARDS(1)
1590
1591
1592             _\bN_\bA_\bM_\bE
1593                  bboards - the UCI BBoards facility
1594
1595             _\bS_\bY_\bN_\bO_\bP_\bS_\bI_\bS
1596                  bbc [-check] [-read] bboards ...  [-help]
1597
1598             _\bD_\bE_\bS_\bC_\bR_\bI_\bP_\bT_\bI_\bO_\bN
1599
1600                  The home directory of _\bb_\bb_\bo_\ba_\br_\bd_\bs is where the BBoard system  is  kept.
1601                  This documentation describes some of the nuances of the BBoard sys-
1602                  tem.
1603
1604                  BBoards, BBoard-IDs
1605                       A BBoard is just a file containing a group of messages  relat-
1606                       ing  to the same topic.  These files live in the ~bboards home
1607                       directory.  Each message in a BBoard file has  in  its  header
1608                       the  line  "BBoard-Id:  n",  where "n" is an ascending decimal
1609                       number.  This id-number  is  unique  for  each  message  in  a
1610                       BBoards  file.   It  should  NOT  be confused with the message
1611                       number of a message, which can change as messages are  removed
1612                       from the BBoard.
1613
1614                  BBoard Handling
1615                       To read BBoards, use the _\bb_\bb_\bc and _\bm_\bs_\bh programs.  The  _\bm_\bs_\bh  com-
1616                       mand  is  a  monolithic  program  which contains all the func-
1617                       tionality of _\bM_\bH in a single program.  The `-check'  switch  to
1618                       _\bb_\bb_\bc  lets  you check on the status of BBoards, and the `-read'
1619                       switch tells _\bb_\bb_\bc to invoke _\bm_\bs_\bh to read those BBoards.
1620
1621                  Creating a BBoard
1622                       Both public, and private BBoards are supported.   Contact  the
1623                       mail  address  _\bP_\bo_\bs_\bt_\bM_\ba_\bs_\bt_\be_\br  if  you'd  like  to  have  a BBoard
1624                       created.
1625
1626                  BBoard addresses
1627                       Each BBoard has associated with it 4 addresses, these are (for
1628                       the ficticious BBoard called ``hacks''):
1629                         hacks : The Internet wide distribution list.
1630                         dist-hacks : The local BBoard.
1631                         hacks-request : The people responsible for the BBoard at the
1632                              Internet level.
1633                         local-hacks-request : The people responsible for the  BBoard
1634                              locally.
1635
1636             _\bF_\bi_\bl_\be_\bs
1637                 $HOME/.mh_profile                    The user profile
1638                 $HOME/.bbrc                          BBoard information
1639
1640
1641
1642
1643
1644
1645             [mh.6]                           MH.6.8                      UCI version
1646
1647
1648
1649
1650
1651
1652
1653
1654
1655             BBOARDS(1)                        -25-                        BBOARDS(1)
1656
1657
1658             _\bP_\br_\bo_\bf_\bi_\bl_\be _\bC_\bo_\bm_\bp_\bo_\bn_\be_\bn_\bt_\bs
1659                  Path:                To determine the user's MH directory
1660                  bboards:             To specify interesting BBoards
1661                  mshproc:             Program to read a given BBoard
1662
1663
1664             _\bS_\be_\be _\bA_\bl_\bs_\bo
1665                 bbc(1), bbl(1), bbleader(1), msh(1)
1666
1667
1668             _\bD_\be_\bf_\ba_\bu_\bl_\bt_\bs
1669                  The default bboard is "system"
1670
1671
1672             _\bC_\bo_\bn_\bt_\be_\bx_\bt
1673                 None
1674
1675
1676
1677
1678
1679
1680
1681
1682
1683
1684
1685
1686
1687
1688
1689
1690
1691
1692
1693
1694
1695
1696
1697
1698
1699
1700
1701
1702
1703
1704
1705
1706
1707
1708
1709
1710
1711             [mh.6]                           MH.6.8                      UCI version
1712
1713
1714
1715
1716
1717
1718
1719
1720
1721             BURST(1)                          -26-                          BURST(1)
1722
1723
1724             _\bN_\bA_\bM_\bE
1725                  burst - explode digests into messages
1726
1727             _\bS_\bY_\bN_\bO_\bP_\bS_\bI_\bS
1728                  burst [+folder] [msgs] [-inplace] [-noinplace] [-quiet] [-noquiet]
1729                       [-verbose] [-noverbose] [-help]
1730
1731             _\bD_\bE_\bS_\bC_\bR_\bI_\bP_\bT_\bI_\bO_\bN
1732
1733                  _\bB_\bu_\br_\bs_\bt considers the specified messages in the named  folder  to  be
1734                  Internet digests, and explodes them in that folder.
1735
1736                  If `-inplace' is given, each digest is replaced by  the  "table  of
1737                  contents"  for  the digest (the original digest is removed).  _\bB_\bu_\br_\bs_\bt
1738                  then renumbers all of the messages  following  the  digest  in  the
1739                  folder  to  make room for each of the messages contained within the
1740                  digest.  These messages are placed immediately after the digest.
1741
1742                  If `-noinplace' is given, each digest is  preserved,  no  table  of
1743                  contents  is produced, and the messages contained within the digest
1744                  are placed at the end of the folder.  Other messages are  not  tam-
1745                  pered with in any way.
1746
1747                  The `-quiet' switch directs _\bb_\bu_\br_\bs_\bt to be silent about reporting mes-
1748                  sages that are not in digest format.
1749
1750                  The `-verbose' switch directs _\bb_\bu_\br_\bs_\bt to tell the  user  the  general
1751                  actions that it is taking to explode the digest.
1752
1753                  It turns out that _\bb_\bu_\br_\bs_\bt works equally well  on  forwarded  messages
1754                  and  blind-carbon-copies  as on Internet digests, provided that the
1755                  former two were generated by _\bf_\bo_\br_\bw or _\bs_\be_\bn_\bd.
1756
1757             _\bF_\bi_\bl_\be_\bs
1758                  $HOME/.mh_profile                    The user profile
1759
1760
1761             _\bP_\br_\bo_\bf_\bi_\bl_\be _\bC_\bo_\bm_\bp_\bo_\bn_\be_\bn_\bt_\bs
1762                  Path:                To determine the user's MH directory
1763                  Current-Folder:      To find the default current folder
1764                  Msg-Protect:         To set mode when creating a new message
1765
1766
1767             _\bS_\be_\be _\bA_\bl_\bs_\bo
1768                  _\bP_\br_\bo_\bp_\bo_\bs_\be_\bd _\bS_\bt_\ba_\bn_\bd_\ba_\br_\bd _\bf_\bo_\br _\bM_\be_\bs_\bs_\ba_\bg_\be _\bE_\bn_\bc_\ba_\bp_\bs_\bu_\bl_\ba_\bt_\bi_\bo_\bn (aka RFC-934),
1769                  inc(1), msh(1), pack(1)
1770
1771
1772
1773
1774
1775
1776
1777             [mh.6]                           MH.6.8                      UCI version
1778
1779
1780
1781
1782
1783
1784
1785
1786
1787             BURST(1)                          -27-                          BURST(1)
1788
1789
1790             _\bD_\be_\bf_\ba_\bu_\bl_\bt_\bs
1791                  `+folder' defaults to the current folder
1792                  `msgs' defaults to cur
1793                  `-noinplace'
1794                  `-noquiet'
1795                  `-noverbose'
1796
1797
1798             _\bC_\bo_\bn_\bt_\be_\bx_\bt
1799                  If a folder is given, it will become the current folder.  If  `-in-
1800                  place'  is  given, then the first message burst becomes the current
1801                  message.  This leaves the context ready for a _\bs_\bh_\bo_\bw of the table  of
1802                  contents  of the digest, and a _\bn_\be_\bx_\bt to see the first message of the
1803                  digest.  If `-noinplace' is given, then the first message extracted
1804                  from  the  first  digest  burst  becomes the current message.  This
1805                  leaves the context in a similar, but not identical,  state  to  the
1806                  context achieved when using `-inplace'.
1807
1808
1809             _\bB_\bu_\bg_\bs
1810                  The _\bb_\bu_\br_\bs_\bt program enforces a limit on the number of messages  which
1811                  may be _\bb_\bu_\br_\bs_\bt from a single message.  This number is on the order of
1812                  1000 messages.  There is usually no limit on the number of messages
1813                  which may reside in the folder after the _\bb_\bu_\br_\bs_\bting.
1814
1815                  Although _\bb_\bu_\br_\bs_\bt uses a sophisticated algorithm  to  determine  where
1816                  one  encapsulated message ends and another begins, not all digesti-
1817                  fying programs  use  an  encapsulation  algorithm.   In  degenerate
1818                  cases, this usually results in _\bb_\bu_\br_\bs_\bt finding an encapsulation boun-
1819                  dary prematurely and splitting a single encapsulated  message  into
1820                  two or more messages.  These erroneous digestifying programs should
1821                  be fixed.
1822
1823                  Furthermore, any text which appears  after  the  last  encapsulated
1824                  message  is not placed in a seperate message by _\bb_\bu_\br_\bs_\bt.  In the case
1825                  of digestified messages, this text is usally  an  "End  of  digest"
1826                  string.   As  a result of this possibly un-friendly behavior on the
1827                  part of _\bb_\bu_\br_\bs_\bt, note that when the `-inplace' option is  used,  this
1828                  trailing  information  is lost.  In practice, this is not a problem
1829                  since correspondents usually place remarks in  text  prior  to  the
1830                  first encapsulated message, and this information is not lost.
1831
1832
1833
1834
1835
1836
1837
1838
1839
1840
1841
1842
1843             [mh.6]                           MH.6.8                      UCI version
1844
1845
1846
1847
1848
1849
1850
1851
1852
1853             COMP(1)                           -28-                           COMP(1)
1854
1855
1856             _\bN_\bA_\bM_\bE
1857                  comp - compose a message
1858
1859             _\bS_\bY_\bN_\bO_\bP_\bS_\bI_\bS
1860                  comp [+folder] [msg] [-draftfolder +folder] [-draftmessage msg]
1861                       [-nodraftfolder] [-editor editor] [-noedit] [-file file]
1862                       [-form formfile] [-use] [-nouse] [-whatnowproc program]
1863                       [-nowhatnowproc] [-help]
1864
1865             _\bD_\bE_\bS_\bC_\bR_\bI_\bP_\bT_\bI_\bO_\bN
1866
1867                  _\bC_\bo_\bm_\bp is used to create a new message to be  mailed.   It  copies  a
1868                  message form to the draft being composed and then invokes an editor
1869                  on the draft (unless `-noedit' is given, in which case the  initial
1870                  edit is suppressed).
1871
1872                  The default message form contains the following elements:
1873
1874                       To:
1875                       cc:
1876                       Subject:
1877                       --------
1878
1879                  If the file named "components" exists in the user's  MH  directory,
1880                  it  will  be  used  instead  of  this  form.  The file specified by
1881                  `-form formfile' will be used if given.  You may  also  start  _\bc_\bo_\bm_\bp
1882                  using the contents of an existing message as the form.  If you sup-
1883                  ply either a `+folder' or `msg' argument, that message will be used
1884                  as  the  form.   You  may  not supply both a `-form formfile' and a
1885                  `+folder' or `msg' argument.  The line of dashes or  a  blank  line
1886                  must be left between the header and the body of the message for the
1887                  message to be identified properly when it is sent  (see  _\bs_\be_\bn_\bd (1)).
1888                  The  switch  `-use'  directs  _\bc_\bo_\bm_\bp  to  continue editing an already
1889                  started message.  That is, if a _\bc_\bo_\bm_\bp (or _\bd_\bi_\bs_\bt, _\br_\be_\bp_\bl, or  _\bf_\bo_\br_\bw )  is
1890                  terminated without sending the draft, the draft can be edited again
1891                  via "comp -use".
1892
1893                  If the draft already exists, _\bc_\bo_\bm_\bp will ask you as to  the  disposi-
1894                  tion  of  the  draft.  A reply of quit will abort _\bc_\bo_\bm_\bp, leaving the
1895                  draft intact; replace will replace  the  existing  draft  with  the
1896                  appropriate  form;  list  will  display the draft; use will use the
1897                  draft for further composition; and  refile +folder  will  file  the
1898                  draft  in  the  given  folder,  and  give  you a new draft with the
1899                  appropriate form.  (The `+folder' argument to refile is required.)
1900
1901                  The `-draftfolder +folder' and `-draftmessage msg' switches  invoke
1902                  the _\bM_\bH draft folder facility.  This is an advanced (and highly use-
1903                  ful) feature.  Consult the Advanced  Features  section  of  the  _\bM_\bH
1904                  manual for more information.
1905
1906                  The `-file file' switch says to use the named file as  the  message
1907                  draft.
1908
1909             [mh.6]                           MH.6.8                      UCI version
1910
1911
1912
1913
1914
1915
1916
1917
1918
1919             COMP(1)                           -29-                           COMP(1)
1920
1921
1922                  The `-editor editor' switch indicates the editor  to  use  for  the
1923                  initial  edit.   Upon exiting from the editor, _\bc_\bo_\bm_\bp will invoke the
1924                  _\bw_\bh_\ba_\bt_\bn_\bo_\bw program.  See _\bw_\bh_\ba_\bt_\bn_\bo_\bw (1) for  a  discussion  of  available
1925                  options.   The invocation of this program can be inhibited by using
1926                  the `-nowhatnowproc' switch.  (In truth of fact, it is the  _\bw_\bh_\ba_\bt_\bn_\bo_\bw
1927                  program  which  starts  the  initial edit.  Hence, `-nowhatnowproc'
1928                  will prevent any edit from occurring.)
1929
1930             _\bF_\bi_\bl_\be_\bs
1931                  /usr/bs/mh-6.8/lib/components        The message skeleton
1932                  or <mh-dir>/components               Rather than the standard skeleton
1933                  $HOME/.mh_profile                    The user profile
1934                  <mh-dir>/draft                       The draft file
1935
1936
1937             _\bP_\br_\bo_\bf_\bi_\bl_\be _\bC_\bo_\bm_\bp_\bo_\bn_\be_\bn_\bt_\bs
1938                  Path:                To determine the user's MH directory
1939                  Draft-Folder:        To find the default draft-folder
1940                  Editor:              To override the default editor
1941                  Msg-Protect:         To  set  mode  when  creating  a  new  message
1942                  (draft)
1943                  fileproc:            Program to refile the message
1944                  whatnowproc:         Program to ask the "What now?" questions
1945
1946
1947             _\bS_\be_\be _\bA_\bl_\bs_\bo
1948                  dist(1), forw(1), repl(1), send(1), whatnow(1), mh-profile(5)
1949
1950
1951             _\bD_\be_\bf_\ba_\bu_\bl_\bt_\bs
1952                  `+folder' defaults to the current folder
1953                  `msg' defaults to the current message
1954                  `-nodraftfolder'
1955                  `-nouse'
1956
1957
1958             _\bC_\bo_\bn_\bt_\be_\bx_\bt
1959                  None
1960
1961
1962             _\bB_\bu_\bg_\bs
1963                  If _\bw_\bh_\ba_\bt_\bn_\bo_\bw_\bp_\br_\bo_\bc is _\bw_\bh_\ba_\bt_\bn_\bo_\bw, then _\bc_\bo_\bm_\bp uses a  built-in  _\bw_\bh_\ba_\bt_\bn_\bo_\bw,  it
1964                  does  not  actually  run the _\bw_\bh_\ba_\bt_\bn_\bo_\bw program.  Hence, if you define
1965                  your own _\bw_\bh_\ba_\bt_\bn_\bo_\bw_\bp_\br_\bo_\bc, don't call it _\bw_\bh_\ba_\bt_\bn_\bo_\bw since  _\bc_\bo_\bm_\bp  won't  run
1966                  it.
1967
1968
1969
1970
1971
1972
1973
1974
1975             [mh.6]                           MH.6.8                      UCI version
1976
1977
1978
1979
1980
1981
1982
1983
1984
1985             DIST(1)                           -30-                           DIST(1)
1986
1987
1988             _\bN_\bA_\bM_\bE
1989                  dist - redistribute a message to additional addresses
1990
1991             _\bS_\bY_\bN_\bO_\bP_\bS_\bI_\bS
1992                  dist [+folder] [msg] [-annotate] [-noannotate]
1993                       [-draftfolder +folder] [-draftmessage msg] [-nodraftfolder]
1994                       [-editor editor] [-noedit] [-form formfile] [-inplace]
1995                       [-noinplace] [-whatnowproc program] [-nowhatnowproc] [-help]
1996
1997             _\bD_\bE_\bS_\bC_\bR_\bI_\bP_\bT_\bI_\bO_\bN
1998
1999                  _\bD_\bi_\bs_\bt is similar to _\bf_\bo_\br_\bw.  It prepares  the  specified  message  for
2000                  redistribution to addresses that (presumably) are not on the origi-
2001                  nal address list.
2002
2003                  The default message form contains the following elements:
2004
2005                       Resent-To:
2006                       Resent-cc:
2007
2008                  If the file named "distcomps" exists in the user's MH directory, it
2009                  will be used instead of this form.  In either case, the file speci-
2010                  fied by `-form formfile' will be used if given.  The form used will
2011                  be prepended to the message being resent.
2012
2013                  If the draft already exists, _\bd_\bi_\bs_\bt will ask you as to  the  disposi-
2014                  tion  of  the  draft.  A reply of quit will abort _\bd_\bi_\bs_\bt, leaving the
2015                  draft intact; replace will replace the existing draft with a  blank
2016                  skeleton; and list will display the draft.
2017
2018                  Only   those   addresses   in   "Resent-To:",   "Resent-cc:",   and
2019                  "Resent-Bcc:"  will  be sent.  Also, a "Resent-Fcc: folder" will be
2020                  honored (see _\bs_\be_\bn_\bd (1)).  Note that with _\bd_\bi_\bs_\bt, the draft should con-
2021                  tain  only  "Resent-xxx:"  fields and no body.  The headers and the
2022                  body of the original message are copied to the draft when the  mes-
2023                  sage  is sent.  Use care in constructing the headers for the redis-
2024                  tribution.
2025
2026                  If the `-annotate' switch is given, the  message being  distributed
2027                  will be annotated with the lines:
2028
2029                       Resent: date
2030                       Resent: addrs
2031
2032                  where each address list contains as many lines as  required.   This
2033                  annotation  will  be done only if the message is sent directly from
2034                  _\bd_\bi_\bs_\bt.  If the message is not  sent  immediately  from  _\bd_\bi_\bs_\bt,  "comp
2035                  -use"  may be used to re-edit and send the constructed message, but
2036                  the annotations won't take place.   The  '-inplace'  switch  causes
2037                  annotation  to  be  done in place in order to preserve links to the
2038                  annotated message.
2039
2040
2041             [mh.6]                           MH.6.8                      UCI version
2042
2043
2044
2045
2046
2047
2048
2049
2050
2051             DIST(1)                           -31-                           DIST(1)
2052
2053
2054                  See _\bc_\bo_\bm_\bp (1) for a  description  of  the  `-editor'  and  `-noedit'
2055                  switches.   Note that while in the editor, the message being resent
2056                  is available through a link named "@" (assuming the  default  _\bw_\bh_\ba_\bt_\b-
2057                  _\bn_\bo_\bw_\bp_\br_\bo_\bc ).   In  addition,  the  actual  pathname of the message is
2058                  stored in the envariable $editalt, and the pathname of  the  folder
2059                  containing the message is stored in the envariable $mhfolder.
2060
2061                  The `-draftfolder +folder' and `-draftmessage msg' switches  invoke
2062                  the _\bM_\bH draft folder facility.  This is an advanced (and highly use-
2063                  ful) feature.  Consult the Advanced  Features  section  of  the  _\bM_\bH
2064                  manual for more information.
2065
2066                  Upon exiting from the editor, _\bd_\bi_\bs_\bt will invoke the _\bw_\bh_\ba_\bt_\bn_\bo_\bw program.
2067                  See _\bw_\bh_\ba_\bt_\bn_\bo_\bw (1) for a discussion of available options.  The invoca-
2068                  tion of this program can be inhibited by using the `-nowhatnowproc'
2069                  switch.   (In truth of fact, it is the _\bw_\bh_\ba_\bt_\bn_\bo_\bw program which starts
2070                  the initial edit.  Hence, `-nowhatnowproc' will  prevent  any  edit
2071                  from occurring.)
2072
2073             _\bF_\bi_\bl_\be_\bs
2074                  /usr/bs/mh-6.8/lib/distcomps         The message skeleton
2075                  or <mh-dir>/distcomps                Rather than the standard skeleton
2076                  $HOME/.mh_profile                    The user profile
2077                  <mh-dir>/draft                       The draft file
2078
2079
2080             _\bP_\br_\bo_\bf_\bi_\bl_\be _\bC_\bo_\bm_\bp_\bo_\bn_\be_\bn_\bt_\bs
2081                  Path:                To determine the user's MH directory
2082                  Current-Folder:      To find the default current folder
2083                  Draft-Folder:        To find the default draft-folder
2084                  Editor:              To override the default editor
2085                  fileproc:            Program to refile the message
2086                  whatnowproc:         Program to ask the "What now?" questions
2087
2088
2089             _\bS_\be_\be _\bA_\bl_\bs_\bo
2090                  comp(1), forw(1), repl(1), send(1), whatnow(1)
2091
2092
2093             _\bD_\be_\bf_\ba_\bu_\bl_\bt_\bs
2094                  `+folder' defaults to the current folder
2095                  `msg' defaults to cur
2096                  `-noannotate'
2097                  `-nodraftfolder'
2098                  `-noinplace'
2099
2100
2101             _\bC_\bo_\bn_\bt_\be_\bx_\bt
2102                  If a folder is given, it will become the current folder.  The  mes-
2103                  sage distributed will become the current message.
2104
2105
2106
2107             [mh.6]                           MH.6.8                      UCI version
2108
2109
2110
2111
2112
2113
2114
2115
2116
2117             DIST(1)                           -32-                           DIST(1)
2118
2119
2120             _\bH_\bi_\bs_\bt_\bo_\br_\by
2121                  _\bD_\bi_\bs_\bt originally used headers of the form "Distribute-xxx:"  instead
2122                  of "Resent-xxx:".  In order to conform with the ARPA Internet stan-
2123                  dard, RFC-822, the "Resent-xxx:"  form  is  now  used.   _\bD_\bi_\bs_\bt  will
2124                  recognize  "Distribute-xxx:" type headers and automatically convert
2125                  them to "Resent-xxx:".
2126
2127
2128             _\bB_\bu_\bg_\bs
2129                  _\bD_\bi_\bs_\bt does not _\br_\bi_\bg_\bo_\br_\bo_\bu_\bs_\bl_\by check the message  being  distributed  for
2130                  adherence  to the transport standard, but _\bp_\bo_\bs_\bt called by _\bs_\be_\bn_\bd does.
2131                  The _\bp_\bo_\bs_\bt program will balk (and rightly  so)  at  poorly  formatted
2132                  messages, and _\bd_\bi_\bs_\bt won't correct things for you.
2133
2134                  If _\bw_\bh_\ba_\bt_\bn_\bo_\bw_\bp_\br_\bo_\bc is _\bw_\bh_\ba_\bt_\bn_\bo_\bw, then _\bd_\bi_\bs_\bt uses a  built-in  _\bw_\bh_\ba_\bt_\bn_\bo_\bw,  it
2135                  does  not  actually  run the _\bw_\bh_\ba_\bt_\bn_\bo_\bw program.  Hence, if you define
2136                  your own _\bw_\bh_\ba_\bt_\bn_\bo_\bw_\bp_\br_\bo_\bc, don't call it _\bw_\bh_\ba_\bt_\bn_\bo_\bw since  _\bd_\bi_\bs_\bt  won't  run
2137                  it.
2138
2139                  If your current working directory is not writable, the  link  named
2140                  "@" is not available.
2141
2142
2143
2144
2145
2146
2147
2148
2149
2150
2151
2152
2153
2154
2155
2156
2157
2158
2159
2160
2161
2162
2163
2164
2165
2166
2167
2168
2169
2170
2171
2172
2173             [mh.6]                           MH.6.8                      UCI version
2174
2175
2176
2177
2178
2179
2180
2181
2182
2183             FOLDER(1)                         -33-                         FOLDER(1)
2184
2185
2186             _\bN_\bA_\bM_\bE
2187                  folder, folders - set/list current folder/message
2188
2189             _\bS_\bY_\bN_\bO_\bP_\bS_\bI_\bS
2190                  folder [+folder] [msg] [-all] [-print] [-fast] [-nofast] [-header]
2191                       [-noheader] [-recurse] [-norecurse] [-total] [-nototal]
2192                       [-list] [-nolist] [-push] [-pop] [-pack] [-nopack] [-verbose]
2193                       [-noverbose] [-help]
2194
2195                  folders
2196
2197             _\bD_\bE_\bS_\bC_\bR_\bI_\bP_\bT_\bI_\bO_\bN
2198
2199                  Since the _\bM_\bH environment is the shell, it is easy to lose track  of
2200                  the  current  folder  from  day  to  day.  When _\bf_\bo_\bl_\bd_\be_\br is given the
2201                  `-print' switch (the default), _\bf_\bo_\bl_\bd_\be_\br will list the current folder,
2202                  the number of messages in it, the range of the messages (low-high),
2203                  and the current message within the  folder,  and  will  flag  extra
2204                  files if they exist.  An example of this summary is:
2205
2206                  inbox+            has  16 messages (  3- 22); cur=  5.
2207
2208                  If a `+folder' and/or `msg' are specified,  they  will  become  the
2209                  current  folder  and/or  message.   If  the  specified (or default)
2210                  folder doesn't exist, the user will be queried as  to  whether  the
2211                  folder  should  be  created.  When standard input is not a tty, the
2212                  folder is created without any query.  (This  is  the  easy  way  to
2213                  create an empty folder for use later.)
2214
2215                  By comparison, when a `+folder' argument is given, this corresponds
2216                  to  a  "cd"  operation  in the _\bs_\bh_\be_\bl_\bl; when no `+folder' argument is
2217                  given, this corresponds roughly to a "pwd" operation in the _\bs_\bh_\be_\bl_\bl.
2218
2219
2220
2221               _\bM_\bu_\bl_\bt_\bi_\bp_\bl_\be _\bF_\bo_\bl_\bd_\be_\br_\bs
2222
2223                  Specifying `-all' will produce a summary line  for  each  top-level
2224                  folder  in  the  user's  MH  directory, sorted alphabetically.  (If
2225                  _\bf_\bo_\bl_\bd_\be_\br is invoked by a  name  ending  with  "s"  (e.g.,  _\bf_\bo_\bl_\bd_\be_\br_\bs ),
2226                  `-all'  is  assumed).   Specifying `-recurse' with `-all' will also
2227                  produce a line for all sub-folders.  These folders are all preceded
2228                  by  the read-only folders, which occur as "atr-cur-" entries in the
2229                  user's _\bM_\bH context.  For example,
2230
2231
2232
2233
2234
2235
2236
2237
2238
2239             [mh.6]                           MH.6.8                      UCI version
2240
2241
2242
2243
2244
2245
2246
2247
2248
2249             FOLDER(1)                         -34-                         FOLDER(1)
2250
2251
2252                  Folder               # of messages ( range )  cur msg (other files)
2253                  /fsd/rs/m/tacc    has  35 messages (  1- 35); cur= 23.
2254                  /rnd/phyl/Mail/EP has  82 messages (  1-108); cur= 82.
2255                  ff                has  no messages.
2256                  inbox+            has  16 messages (  3- 22); cur=  5.
2257                  mh                has  76 messages (  1- 76); cur= 70.
2258                  notes             has   2 messages (  1-  2); cur=  1.
2259                  ucom              has 124 messages (  1-124); cur=  6; (others).
2260                            TOTAL=      339 messages in 7 folders
2261
2262                  The "+" after inbox indicates that it is the current  folder.   The
2263                  "(others)"  indicates that the folder `ucom' has files which aren't
2264                  messages.  These files may either be  sub-folders,  or  files  that
2265                  don't belong under the MH file naming scheme.
2266
2267                  The header is output if either a `-all' or a  `-header'  switch  is
2268                  specified; it is suppressed by `-noheader'.  A `-total' switch will
2269                  produce only the summary line.
2270
2271                  If `-fast' is given, only the folder name (or names in the case  of
2272                  `-all')  will  be listed.  (This is faster because the folders need
2273                  not be read.)
2274
2275                  If a `+folder' is given along with the `-all' switch, _\bf_\bo_\bl_\bd_\be_\br  will,
2276                  in addition to setting the current folder, list the top-level fold-
2277                  ers for the current folder (with `-norecurse')  or  list  all  sub-
2278                  folders under the current folder recursively (with `-recurse').  In
2279                  this case, if a `msg' is also supplied, it will become the  current
2280                  message of `+folder'.
2281
2282                  The `-recurse' switch lists each folder recursively, so use of this
2283                  option  effectively  defeats  the  speed enhancement of the `-fast'
2284                  option,  since  each  folder  must  be  searched  for   subfolders.
2285                  Nevertheless, the combination of these options is useful.
2286
2287
2288               _\bC_\bo_\bm_\bp_\ba_\bc_\bt_\bi_\bn_\bg _\ba _\bF_\bo_\bl_\bd_\be_\br
2289
2290                  The `-pack' switch will compress the message names  in  the  desig-
2291                  nated folders, removing holes in message numbering.  The `-verbose'
2292                  switch directs _\bf_\bo_\bl_\bd_\be_\br to tell the user the general actions that  it
2293                  is taking to compress the folder.
2294
2295
2296               _\bT_\bh_\be _\bF_\bo_\bl_\bd_\be_\br _\bS_\bt_\ba_\bc_\bk
2297
2298                  The `-push' switch directs _\bf_\bo_\bl_\bd_\be_\br to push the current  folder  onto
2299                  the  _\bf_\bo_\bl_\bd_\be_\br-_\bs_\bt_\ba_\bc_\bk,  and  make  the  `+folder'  argument the current
2300                  folder.  If `+folder' is not given, the current folder and the  top
2301                  of the _\bf_\bo_\bl_\bd_\be_\br-_\bs_\bt_\ba_\bc_\bk are exchanged.  This corresponds to the "pushd"
2302                  operation in the _\bC_\bS_\bh_\be_\bl_\bl.
2303
2304
2305             [mh.6]                           MH.6.8                      UCI version
2306
2307
2308
2309
2310
2311
2312
2313
2314
2315             FOLDER(1)                         -35-                         FOLDER(1)
2316
2317
2318                  The `-pop'  switch  directs  _\bf_\bo_\bl_\bd_\be_\br  to  discard  the  top  of  the
2319                  _\bf_\bo_\bl_\bd_\be_\br-_\bs_\bt_\ba_\bc_\bk,  after  setting the current folder to that value.  No
2320                  `+folder' argument is allowed.   This  corresponds  to  the  "popd"
2321                  operation  in the _\bC_\bS_\bh_\be_\bl_\bl.  The `-push' switch and the `-pop' switch
2322                  are mutually exclusive: the last occurrence of either one overrides
2323                  any  previous occurrence of the other.  Both of these switches also
2324                  set `-list' by default.
2325
2326                  The `-list' switch directs _\bf_\bo_\bl_\bd_\be_\br  to  list  the  contents  of  the
2327                  _\bf_\bo_\bl_\bd_\be_\br-_\bs_\bt_\ba_\bc_\bk.   No `+folder' argument is allowed.  After a success-
2328                  ful `-push' or `-pop', the `-list' action is taken, unless a `-nol-
2329                  ist'  switch follows them on the command line.  This corresponds to
2330                  the "dirs" operation in  the  _\bC_\bS_\bh_\be_\bl_\bl.   The  `-push',  `-pop',  and
2331                  `-list' switches turn off `-print'.
2332
2333             _\bF_\bi_\bl_\be_\bs
2334                  $HOME/.mh_profile                    The user profile
2335
2336
2337             _\bP_\br_\bo_\bf_\bi_\bl_\be _\bC_\bo_\bm_\bp_\bo_\bn_\be_\bn_\bt_\bs
2338                  Path:                To determine the user's MH directory
2339                  Current-Folder:      To find the default current folder
2340                  Folder-Protect:      To set mode when creating a new folder
2341                  Folder-Stack:        To determine the folder stack
2342
2343
2344             _\bS_\be_\be _\bA_\bl_\bs_\bo
2345                  refile(1), mhpath(1)
2346
2347
2348             _\bD_\be_\bf_\ba_\bu_\bl_\bt_\bs
2349                  `+folder' defaults to the current folder
2350                  `msg' defaults to none
2351                  `-nofast'
2352                  `-noheader'
2353                  `-nototal'
2354                  `-nopack'
2355                  `-norecurse'
2356                  `-noverbose'
2357                  `-print' is the default if no `-list', `-push', or `-pop' is specified
2358                  `-list' is the default if `-push', or `-pop' is specified
2359
2360
2361             _\bC_\bo_\bn_\bt_\be_\bx_\bt
2362                  If `+folder' and/or `msg' are given, they will become  the  current
2363                  folder and/or message.
2364
2365
2366
2367
2368
2369
2370
2371             [mh.6]                           MH.6.8                      UCI version
2372
2373
2374
2375
2376
2377
2378
2379
2380
2381             FOLDER(1)                         -36-                         FOLDER(1)
2382
2383
2384             _\bH_\bi_\bs_\bt_\bo_\br_\by
2385                  In previous versions of _\bM_\bH, the `-fast'  switch  prevented  context
2386                  changes  from  occurring for the current folder.  This is no longer
2387                  the case: if `+folder' is given, then _\bf_\bo_\bl_\bd_\be_\br will always change the
2388                  current folder to that.
2389
2390
2391             _\bB_\bu_\bg_\bs
2392                  `-all' forces `-header'.
2393
2394
2395
2396
2397
2398
2399
2400
2401
2402
2403
2404
2405
2406
2407
2408
2409
2410
2411
2412
2413
2414
2415
2416
2417
2418
2419
2420
2421
2422
2423
2424
2425
2426
2427
2428
2429
2430
2431
2432
2433
2434
2435
2436
2437             [mh.6]                           MH.6.8                      UCI version
2438
2439
2440
2441
2442
2443
2444
2445
2446
2447             FORW(1)                           -37-                           FORW(1)
2448
2449
2450             _\bN_\bA_\bM_\bE
2451                  forw - forward messages
2452
2453             _\bS_\bY_\bN_\bO_\bP_\bS_\bI_\bS
2454                  forw [+folder] [msgs] [-annotate] [-noannotate]
2455                       [-draftfolder +folder] [-draftmessage msg] [-nodraftfolder]
2456                       [-editor editor] [-noedit] [-filter filterfile]
2457                       [-form formfile] [-format] [-noformat] [-inplace] [-noinplace]
2458                       [-mime] [-nomime] [-whatnowproc program] [-nowhatnowproc]
2459                       [-help]
2460
2461                  forw [+folder] [msgs] [-digest list] [-issue number]
2462                       [-volume number] [other switches for _\bf_\bo_\br_\bw] [-help]
2463
2464             _\bD_\bE_\bS_\bC_\bR_\bI_\bP_\bT_\bI_\bO_\bN
2465
2466                  _\bF_\bo_\br_\bw may be used to prepare a message  containing  other  messages.
2467                  It   constructs  the  new  message  from  the  components  file  or
2468                  `-form formfile'  (see  _\bc_\bo_\bm_\bp ),  with  a  body  composed   of   the
2469                  message(s)  to  be forwarded.  An editor is invoked as in _\bc_\bo_\bm_\bp, and
2470                  after editing is complete, the user is prompted before the  message
2471                  is sent.
2472
2473                  The default message form contains the following elements:
2474
2475                       To:
2476                       cc:
2477                       Subject:
2478                       --------
2479
2480                  If the file named "forwcomps" exists in the user's MH directory, it
2481                  will be used instead of this form.  In either case, the file speci-
2482                  fied by `-form formfile' will be used if given.
2483
2484                  If the draft already exists, _\bf_\bo_\br_\bw will ask you as to  the  disposi-
2485                  tion  of  the  draft.  A reply of quit will abort _\bf_\bo_\br_\bw, leaving the
2486                  draft intact; replace will replace the existing draft with a  blank
2487                  skeleton; and list will display the draft.
2488
2489                  If the `-annotate' switch is given, each  message  being  forwarded
2490                  will be annotated with the lines
2491
2492                       Forwarded: date
2493                       Forwarded: addrs
2494
2495                  where each address list contains as many lines as  required.   This
2496                  annotation  will  be done only if the message is sent directly from
2497                  _\bf_\bo_\br_\bw.   If  the  message  is  not  sent  immediately   from   _\bf_\bo_\br_\bw,
2498                  "comp -use"  may  be  used to re-edit and send the constructed mes-
2499                  sage, but the annotations won't take place.  The '-inplace'  switch
2500                  causes annotation to be done in place in order to preserve links to
2501                  the annotated message.
2502
2503             [mh.6]                           MH.6.8                      UCI version
2504
2505
2506
2507
2508
2509
2510
2511
2512
2513             FORW(1)                           -38-                           FORW(1)
2514
2515
2516                  See _\bc_\bo_\bm_\bp (1) for a  description  of  the  `-editor'  and  `-noedit'
2517                  switches.
2518
2519                  Although _\bf_\bo_\br_\bw uses the `-form formfile' switch to direct it how  to
2520                  construct  the  beginning  of  the draft, the `-filter filterfile',
2521                  `-format', and `-noformat' switches direct _\bf_\bo_\br_\bw as to how each for-
2522                  warded  message  should  be formatted in the body of the draft.  If
2523                  `-noformat' is specified, then each  forwarded  message  is  output
2524                  exactly  as  it  appears.   If `-format' or `-filter filterfile' is
2525                  specified, then each forwarded message is  filtered  (re-formatted)
2526                  prior  to  being  output to the body of the draft.  The filter file
2527                  for _\bf_\bo_\br_\bw should be a standard form  file  for  _\bm_\bh_\bl,  as  _\bf_\bo_\br_\bw  will
2528                  invoke  _\bm_\bh_\bl  to format the forwarded messages.  The default message
2529                  filter (what you get with `-format') is:
2530
2531                       width=80,overflowtext=,overflowoffset=10
2532                       leftadjust,compress,compwidth=9
2533                       Date:formatfield="%<(nodate{text})%{text}%|%(tws{text})%>"
2534                       From:
2535                       To:
2536                       cc:
2537                       Subject:
2538                       :
2539                       body:nocomponent,overflowoffset=0,noleftadjust,nocompress
2540
2541                  If the file named "mhl.forward" exists in the user's MH  directory,
2542                  it  will  be  used  instead of this form.  In either case, the file
2543                  specified by `-filter filterfile' will be used if given.   To  sum-
2544                  marize:  `-noformat' will reproduce each forwarded message exactly,
2545                  `-format' will use _\bm_\bh_\bl and a default filterfile, "mhl.forward",  to
2546                  format  each  forwarded  message, and `-filter filterfile' will use
2547                  the named filterfile to format each forwarded message with _\bm_\bh_\bl.
2548
2549                  Each forwarded message is separated with an encapsulation delimiter
2550                  and  dashes  in  the first column of the forwarded messages will be
2551                  prepended with `- ' so that when received, the message is  suitable
2552                  for  bursting  by  _\bb_\bu_\br_\bs_\bt (1).   This  follows  the Internet RFC-934
2553                  guidelines.
2554
2555                  For users of  _\bp_\br_\bo_\bm_\bp_\bt_\be_\br (1),  by  specifying  prompter's  `-prepend'
2556                  switch  in  the  .mh_profile  file,  any commentary text is entered
2557                  before the forwarded messages.  (A major win!)
2558
2559                  To use the  MIME  rules  for  encapsulation,  specify  the  `-mime'
2560                  switch.   This  directs  _\bf_\bo_\br_\bw  to generate an _\bm_\bh_\bn composition file.
2561                  Note that MH will not invoke _\bm_\bh_\bn  automatically,  unless  you   add
2562                  this line to your .mh_profile file:
2563
2564                       automhnproc: mhn
2565
2566                  Otherwise, you must specifically give the command
2567
2568
2569             [mh.6]                           MH.6.8                      UCI version
2570
2571
2572
2573
2574
2575
2576
2577
2578
2579             FORW(1)                           -39-                           FORW(1)
2580
2581
2582                       What now? edit mhn
2583
2584                  prior to sending the draft.
2585
2586                  To automate this somewhat, create a link to _\bp_\br_\bo_\bm_\bp_\bt_\be_\br  called  _\br_\ba_\bp_\bi_\bd
2587                  and put these lines in your .mh_profile file:
2588
2589                       forw: -editor rapid -mime
2590                       rapid: -rapid
2591                       rapid-next: mhn
2592
2593                  Then, you can simply do:
2594
2595                       _\bf_\bo_\br_\bw _\bm_\bs_\bg_\bs
2596                       To: _\bm_\ba_\bi_\bl_\bb_\bo_\bx
2597                       cc:
2598                       Subject: _\bw_\bh_\ba_\bt_\be_\bv_\be_\br
2599
2600                       --------Enter initial text
2601
2602                       _\bb_\bl_\ba_\bh, _\bb_\bl_\ba_\bh, _\bb_\bl_\ba_\bh.
2603                       <CTRL-D>
2604                       --------
2605
2606                       What now? _\be_\bd_\bi_\bt
2607                       What now? _\bs_\be_\bn_\bd
2608
2609                  The _\be_\bd_\bi_\bt command invokes _\bm_\bh_\bn automatically.
2610
2611                  The `-draftfolder +folder' and `-draftmessage msg' switches  invoke
2612                  the _\bM_\bH draft folder facility.  This is an advanced (and highly use-
2613                  ful) feature.  Consult the Advanced  Features  section  of  the  _\bM_\bH
2614                  manual for more information.
2615
2616                  Upon exiting from the editor, _\bf_\bo_\br_\bw will invoke the _\bw_\bh_\ba_\bt_\bn_\bo_\bw program.
2617                  See _\bw_\bh_\ba_\bt_\bn_\bo_\bw (1) for a discussion of available options.  The invoca-
2618                  tion of this program can be inhibited by using the `-nowhatnowproc'
2619                  switch.   (In truth of fact, it is the _\bw_\bh_\ba_\bt_\bn_\bo_\bw program which starts
2620                  the initial edit.  Hence, `-nowhatnowproc' will  prevent  any  edit
2621                  from occurring.)
2622
2623                  The `-digest list', `-issue number', and `-volume number'  switches
2624                  implement  a  digest  facility  for  _\bM_\bH.  Specifying these switches
2625                  enables and/or overloads the following escapes:
2626
2627                  _\bT_\by_\bp_\be       _\bE_\bs_\bc_\ba_\bp_\be  _\bR_\be_\bt_\bu_\br_\bn_\bs  _\bD_\be_\bs_\bc_\br_\bi_\bp_\bt_\bi_\bo_\bn
2628                  _\bc_\bo_\bm_\bp_\bo_\bn_\be_\bn_\bt  _\bd_\bi_\bg_\be_\bs_\bt  string   Argument to `-digest'
2629                  _\bf_\bu_\bn_\bc_\bt_\bi_\bo_\bn   _\bc_\bu_\br     integer  Argument to `-volume'
2630                  _\bf_\bu_\bn_\bc_\bt_\bi_\bo_\bn   _\bm_\bs_\bg     integer  Argument to `-issue'
2631
2632                  Consult the Advanced Features section of the _\bM_\bH User's  Manual  for
2633                  more information on making digests.
2634
2635             [mh.6]                           MH.6.8                      UCI version
2636
2637
2638
2639
2640
2641
2642
2643
2644
2645             FORW(1)                           -40-                           FORW(1)
2646
2647
2648             _\bF_\bi_\bl_\be_\bs
2649                  /usr/bs/mh-6.8/lib/forwcomps         The message skeleton
2650                  or <mh-dir>/forwcomps                Rather than the standard skeleton
2651                  /usr/bs/mh-6.8/lib/digestcomps       The message skeleton if `-digest' is given
2652                  or <mh-dir>/digestcomps              Rather than the standard skeleton
2653                  /usr/bs/mh-6.8/lib/mhl.forward       The message filter
2654                  or <mh-dir>/mhl.forward              Rather than the standard filter
2655                  $HOME/.mh_profile                    The user profile
2656                  <mh-dir>/draft                       The draft file
2657
2658
2659             _\bP_\br_\bo_\bf_\bi_\bl_\be _\bC_\bo_\bm_\bp_\bo_\bn_\be_\bn_\bt_\bs
2660                  Path:                To determine the user's MH directory
2661                  Current-Folder:      To find the default current folder
2662                  Draft-Folder:        To find the default draft-folder
2663                  Editor:              To override the default editor
2664                  Msg-Protect:         To  set  mode  when  creating  a  new  message
2665                  (draft)
2666                  fileproc:            Program to refile the message
2667                  mhlproc:             Program to filter messages being forwarded
2668                  whatnowproc:         Program to ask the "What now?" questions
2669
2670
2671             _\bS_\be_\be _\bA_\bl_\bs_\bo
2672                  _\bP_\br_\bo_\bp_\bo_\bs_\be_\bd _\bS_\bt_\ba_\bn_\bd_\ba_\br_\bd _\bf_\bo_\br _\bM_\be_\bs_\bs_\ba_\bg_\be _\bE_\bn_\bc_\ba_\bp_\bs_\bu_\bl_\ba_\bt_\bi_\bo_\bn (aka RFC-934),
2673                  comp(1), dist(1), repl(1), send(1), whatnow(1), mh-format(5)
2674
2675
2676             _\bD_\be_\bf_\ba_\bu_\bl_\bt_\bs
2677                  `+folder' defaults to the current folder
2678                  `msgs' defaults to cur
2679                  `-noannotate'
2680                  `-nodraftfolder'
2681                  `-noformat'
2682                  `-noinplace'
2683                  `-nomime'
2684
2685
2686             _\bC_\bo_\bn_\bt_\be_\bx_\bt
2687                  If a folder is given, it will become the current folder.  The first
2688                  message forwarded will become the current message.
2689
2690
2691
2692
2693
2694
2695
2696
2697
2698
2699
2700
2701             [mh.6]                           MH.6.8                      UCI version
2702
2703
2704
2705
2706
2707
2708
2709
2710
2711             FORW(1)                           -41-                           FORW(1)
2712
2713
2714             _\bB_\bu_\bg_\bs
2715                  If _\bw_\bh_\ba_\bt_\bn_\bo_\bw_\bp_\br_\bo_\bc is _\bw_\bh_\ba_\bt_\bn_\bo_\bw, then _\bf_\bo_\br_\bw uses a  built-in  _\bw_\bh_\ba_\bt_\bn_\bo_\bw,  it
2716                  does  not  actually  run the _\bw_\bh_\ba_\bt_\bn_\bo_\bw program.  Hence, if you define
2717                  your own _\bw_\bh_\ba_\bt_\bn_\bo_\bw_\bp_\br_\bo_\bc, don't call it _\bw_\bh_\ba_\bt_\bn_\bo_\bw since  _\bf_\bo_\br_\bw  won't  run
2718                  it.
2719
2720                  When _\bf_\bo_\br_\bw is told to annotate the messages it forwards, it  doesn't
2721                  actually  annotate  them  until the draft is successfully sent.  If
2722                  from the _\bw_\bh_\ba_\bt_\bn_\bo_\bw_\bp_\br_\bo_\bc, you _\bp_\bu_\bs_\bh instead of _\bs_\be_\bn_\bd,  it's  possible  to
2723                  confuse   _\bf_\bo_\br_\bw   by   re-ordering   the   file   (e.g.,   by  using
2724                  `folder -pack') before the message is successfully sent.  _\bD_\bi_\bs_\bt  and
2725                  _\br_\be_\bp_\bl don't have this problem.
2726
2727                  To avoid prepending the leading dash characters in  forwarded  mes-
2728                  sages,  there  is  a  `-nodashmunging'  option.   See  the  "Hidden
2729                  Features" section of the _\bM_\bH _\bA_\bd_\bm_\bi_\bn_\bi_\bs_\bt_\br_\ba_\bt_\bo_\br'_\bs _\bG_\bu_\bi_\bd_\be for more details.
2730
2731
2732
2733
2734
2735
2736
2737
2738
2739
2740
2741
2742
2743
2744
2745
2746
2747
2748
2749
2750
2751
2752
2753
2754
2755
2756
2757
2758
2759
2760
2761
2762
2763
2764
2765
2766
2767             [mh.6]                           MH.6.8                      UCI version
2768
2769
2770
2771
2772
2773
2774
2775
2776
2777             INC(1)                            -42-                            INC(1)
2778
2779
2780             _\bN_\bA_\bM_\bE
2781                  inc - incorporate new mail
2782
2783             _\bS_\bY_\bN_\bO_\bP_\bS_\bI_\bS
2784                  inc [+folder] [-audit audit-file] [-noaudit] [-changecur]
2785                       [-nochangecur] [-form formatfile] [-format string]
2786                       [-file name] [-silent] [-nosilent] [-truncate] [-notruncate]
2787                       [-width columns] [-host host] [-user user] [-apop] [-noapop]
2788                       [-rpop] [-norpop] [-pack file] [-nopack] [-help]
2789
2790             _\bD_\bE_\bS_\bC_\bR_\bI_\bP_\bT_\bI_\bO_\bN
2791
2792                  _\bI_\bn_\bc incorporates mail from the user's incoming mail drop into an _\bM_\bH
2793                  folder.   If  `+folder'  isn't specified, a folder in the user's _\bM_\bH
2794                  directory will be used, either that specified by the "Inbox:" entry
2795                  in  the  user's profile, or the folder named "inbox".  The new mes-
2796                  sages being incorporated are assigned  numbers  starting  with  the
2797                  next  highest  number in the folder.  If the specified (or default)
2798                  folder doesn't exist, the user will be queried prior to  its  crea-
2799                  tion.   As  the  messages  are processed, a _\bs_\bc_\ba_\bn listing of the new
2800                  mail is produced.
2801
2802                  If the user's profile contains a "Msg-Protect: nnn" entry, it  will
2803                  be  used as the protection on the newly created messages, otherwise
2804                  the _\bM_\bH default of 0644 will be used.  During all operations on mes-
2805                  sages,  this  initially  assigned  protection will be preserved for
2806                  each message, so _\bc_\bh_\bm_\bo_\bd(1) may be used to set  a  protection  on  an
2807                  individual   message,   and   its   protection  will  be  preserved
2808                  thereafter.
2809
2810                  If the  switch  `-audit audit-file'  is  specified  (usually  as  a
2811                  default  switch in the profile), then _\bi_\bn_\bc will append a header line
2812                  and a line per message to the end of the specified audit-file  with
2813                  the format:
2814
2815                       <<inc>> date
2816                            <scan line for first message>
2817                            <scan line for second message>
2818                                      <etc.>
2819
2820                  This is useful for keeping track of volume and source  of  incoming
2821                  mail.   Eventually,  _\br_\be_\bp_\bl,  _\bf_\bo_\br_\bw,  _\bc_\bo_\bm_\bp,  and _\bd_\bi_\bs_\bt may also produce
2822                  audits to this (or another) file, perhaps with "Message-Id:" infor-
2823                  mation  to keep an exact correspondence history.  "Audit-file" will
2824                  be in the user's MH directory unless a full path is specified.
2825
2826                  _\bI_\bn_\bc will incorporate even improperly formatted  messages  into  the
2827                  user's  MH  folder,  inserting  a blank line prior to the offending
2828                  component and printing a comment identifying the bad message.
2829
2830                  In all cases, the user's mail  drop  will  be  zeroed,  unless  the
2831                  `-notruncate' switch is given.
2832
2833             [mh.6]                           MH.6.8                      UCI version
2834
2835
2836
2837
2838
2839
2840
2841
2842
2843             INC(1)                            -43-                            INC(1)
2844
2845
2846                  If the profile entry "Unseen-Sequence" is  present  and  non-empty,
2847                  then  _\bi_\bn_\bc  will add each of the newly incorporated messages to each
2848                  sequence named by the  profile  entry.   This  is  similar  to  the
2849                  "Previous-Sequence"  profile  entry  supported  by  all _\bM_\bH commands
2850                  which take `msgs' or `msg' arguments.  Note that _\bi_\bn_\bc will not  zero
2851                  each sequence prior to adding messages.
2852
2853                  The interpretation of the `-form formatfile', `-format string', and
2854                  `-width columns' switches is the same as in _\bs_\bc_\ba_\bn (1).
2855
2856                  By using the `-file name' switch, one can direct _\bi_\bn_\bc to incorporate
2857                  messages from a file other than the user's maildrop.  Note that the
2858                  name file will NOT be zeroed,  unless  the  `-truncate'  switch  is
2859                  given.
2860
2861                  If the envariable $MAILDROP is set, then _\bi_\bn_\bc uses it as  the  loca-
2862                  tion  of  the  user's  maildrop  instead  of  the  default  (the `-
2863                  file name' switch still overrides this, however).  If this  envari-
2864                  able is not set, then _\bi_\bn_\bc will consult the profile entry "MailDrop"
2865                  for this information.  If the value found is not absolute, then  it
2866                  is  interpreted  relative to the user's _\bM_\bH directory.  If the value
2867                  is not found, then _\bi_\bn_\bc will look in the  standard  system  location
2868                  for the user's maildrop.
2869
2870                  The `-silent' switch directs _\bi_\bn_\bc to be quiet and not ask any  ques-
2871                  tions at all.  This is useful for putting _\bi_\bn_\bc in the background and
2872                  going on to other things.
2873
2874                  If the local host  is  configured  as  a  POP  client,  or  if  the
2875                  `-host host'  switch  is given, then _\bi_\bn_\bc will query the POP service
2876                  host as to the status of mail waiting.  If the `-user user'  switch
2877                  is  not  given,  then  the current username is used.  Normally, _\bi_\bn_\bc
2878                  will prompt for a password to use.  However, if the `-apop'  switch
2879                  is  given,  _\bi_\bn_\bc will generate authentication credentials to provide
2880                  for origin authentication and replay protection, but which  do  not
2881                  involve  sending  a password in the clear over the network.  Other-
2882                  wise, if the `-rpop' switch is given, then _\bi_\bn_\bc will try  to  use  a
2883                  "trusted" connection (ala the BSD r-commands).
2884
2885                  If _\bi_\bn_\bc uses POP, then the `-pack file' switch  is  considered.   If
2886                  given,  then  _\bi_\bn_\bc simply uses the POP to _\bp_\ba_\bc_\bk_\bf (1) the user's mail-
2887                  drop from the POP service host to the named file.  This  switch  is
2888                  provided  for those users who prefer to use _\bm_\bs_\bh to read their mail-
2889                  drops.
2890
2891             _\bF_\bi_\bl_\be_\bs
2892                  $HOME/.mh_profile                    The user profile
2893                  /usr/bs/mh-6.8/lib/mtstailor         tailor file
2894                  /usr/spool/mail/$USER                Location of mail drop
2895
2896
2897
2898
2899             [mh.6]                           MH.6.8                      UCI version
2900
2901
2902
2903
2904
2905
2906
2907
2908
2909             INC(1)                            -44-                            INC(1)
2910
2911
2912             _\bP_\br_\bo_\bf_\bi_\bl_\be _\bC_\bo_\bm_\bp_\bo_\bn_\be_\bn_\bt_\bs
2913                  Path:                To determine the user's MH directory
2914                  Alternate-Mailboxes: To determine the user's mailboxes
2915                  Inbox:               To determine the inbox, default "inbox"
2916                  Folder-Protect:      To set mode when creating a new folder
2917                  Msg-Protect:         To set mode when creating a  new  message  and
2918                  audit-file
2919                  Unseen-Sequence:     To name sequences denoting unseen messages
2920
2921
2922             _\bS_\be_\be _\bA_\bl_\bs_\bo
2923                  _\bP_\bo_\bs_\bt _\bO_\bf_\bf_\bi_\bc_\be _\bP_\br_\bo_\bt_\bo_\bc_\bo_\bl - _\bv_\be_\br_\bs_\bi_\bo_\bn _\b3 (aka RFC-1081),
2924                  mhmail(1), scan(1), mh-mail(5), post(8)
2925
2926
2927             _\bD_\be_\bf_\ba_\bu_\bl_\bt_\bs
2928                  `+folder' defaulted by "Inbox" above
2929                  `-noaudit'
2930                  `-changecur'
2931                  `-format' defaulted as described above
2932                  `-nosilent'
2933                  `-truncate' if `-file name' not given, `-notruncate' otherwise
2934                  `-width' defaulted to the width of the terminal
2935                  `-nopack'
2936                  `-rpop'
2937
2938
2939             _\bC_\bo_\bn_\bt_\be_\bx_\bt
2940                  The folder into which messages are being incorporated  will  become
2941                  the current folder.  The first message incorporated will become the
2942                  current message, unless the  `-nochangecur'  option  is  specified.
2943                  This leaves the context ready for a _\bs_\bh_\bo_\bw of the first new message.
2944
2945
2946             _\bB_\bu_\bg_\bs
2947                  The argument to the `-format' switch must be interpreted as a  sin-
2948                  gle  token by the shell that invokes _\bi_\bn_\bc.  Therefore, one must usu-
2949                  ally place the argument to this switch inside double-quotes.
2950
2951
2952
2953
2954
2955
2956
2957
2958
2959
2960
2961
2962
2963
2964
2965             [mh.6]                           MH.6.8                      UCI version
2966
2967
2968
2969
2970
2971
2972
2973
2974
2975             MARK(1)                           -45-                           MARK(1)
2976
2977
2978             _\bN_\bA_\bM_\bE
2979                  mark - mark messages
2980
2981             _\bS_\bY_\bN_\bO_\bP_\bS_\bI_\bS
2982                  mark [+folder] [msgs] [-sequence name ...] [-add] [-delete] [-list]
2983                       [-public] [-nopublic] [-zero] [-nozero] [-help]
2984
2985             _\bD_\bE_\bS_\bC_\bR_\bI_\bP_\bT_\bI_\bO_\bN
2986
2987                  The _\bm_\ba_\br_\bk command manipulates message sequences by adding or  delet-
2988                  ing  message  numbers from folder-specific message sequences, or by
2989                  listing those sequences and messages.  A message sequence is a key-
2990                  word,  just  like  one  of  the  "reserved"  message names, such as
2991                  "first" or "next".  Unlike the "reserved" message names, which have
2992                  a fixed semantics on a per-folder basis, the semantics of a message
2993                  sequence may be defined, modified, and removed by the  user.   Mes-
2994                  sage  sequences are folder-specific, e.g., the sequence name "seen"
2995                  in the context of folder "+inbox" need not have any relation  what-
2996                  soever  to the sequence of the same name in a folder of a different
2997                  name.
2998
2999                  Three action switches direct the operation of _\bm_\ba_\br_\bk.  These switches
3000                  are  mutually  exclusive:  the last occurrence of any of them over-
3001                  rides any previous occurrence of the other two.
3002
3003                  The `-add' switch tells _\bm_\ba_\br_\bk to add messages  to  sequences  or  to
3004                  create   a   new   sequence.   For  each  sequence  named  via  the
3005                  `-sequence name' argument (which must occur at least once) the mes-
3006                  sages  named  via  `msgs' (which defaults to "cur" if no `msgs' are
3007                  given), are added to the sequence.  The messages to be  added  need
3008                  not  be  absent from the sequence.  If the `-zero' switch is speci-
3009                  fied, the sequence will be emptied prior to  adding  the  messages.
3010                  Hence,  `-add -zero' means that each sequence should be initialized
3011                  to the indicated messages, while  `-add -nozero'  means  that  each
3012                  sequence should be appended to by the indicated messages.
3013
3014                  The `-delete' switch tells _\bm_\ba_\br_\bk to delete messages from  sequences,
3015                  and  is  the  dual of `-add'.  For each of the named sequences, the
3016                  named messages are removed from the sequence.  These messages  need
3017                  not  be  already present in the sequence.  If the `-zero' switch is
3018                  specified, then all messages in the  folder  are  appended  to  the
3019                  sequence  prior  to  removing the messages.  Hence, `-delete -zero'
3020                  means that each sequence should contain all messages  except  those
3021                  indicated,  while  `-delete -nozero'  means that only the indicated
3022                  messages should be removed from each sequence.   As  expected,  the
3023                  command   `mark -sequence seen -delete all'  deletes  the  sequence
3024                  "seen" from the current folder.
3025
3026                  When creating (or modifying) a sequence, the `-public' switch indi-
3027                  cates that the sequence should be made readable for other _\bM_\bH users.
3028                  In contrast, the `-nopublic' switch  indicates  that  the  sequence
3029                  should be private to the user's _\bM_\bH environment.
3030
3031             [mh.6]                           MH.6.8                      UCI version
3032
3033
3034
3035
3036
3037
3038
3039
3040
3041             MARK(1)                           -46-                           MARK(1)
3042
3043
3044                  The `-list' switch tells _\bm_\ba_\br_\bk to list both  the  sequences  defined
3045                  for  the  folder  and the messages associated with those sequences.
3046                  _\bM_\ba_\br_\bk will list the name of each sequence given by  `-sequence name'
3047                  and  the  messages  associated  with that sequence.  If `-sequence'
3048                  isn't used, all sequences will be listed,  with  private  sequences
3049                  being  so indicated.  The `-zero' switch does not affect the opera-
3050                  tion of `-list'.
3051
3052                  The current restrictions on sequences are:
3053
3054                    The name used to denote a message sequence  must  consist  of  an
3055                    alphabetic  character followed by zero or more alphanumeric char-
3056                    acters, and can not be one of the "reserved" message names (e.g.,
3057                    "first", "cur", and so forth).
3058
3059                    Only a certain number of sequences may be  defined  for  a  given
3060                    folder.   This  number is usually limited to 26 (10 on small sys-
3061                    tems).
3062
3063                    Message ranges with user-defined sequence names are restricted to
3064                    the  form  "name:n"  or "name:-n", and refer to the first or last
3065                    `n' messages of the sequence `name', respectively.  Constructs of
3066                    the form "name1-name2" are forbidden.
3067
3068             _\bF_\bi_\bl_\be_\bs
3069                 $HOME/.mh_profile                    The user profile
3070
3071
3072             _\bP_\br_\bo_\bf_\bi_\bl_\be _\bC_\bo_\bm_\bp_\bo_\bn_\be_\bn_\bt_\bs
3073                  Path:                To determine the user's MH directory
3074                  Current-Folder:      To find the default current folder
3075
3076
3077             _\bS_\be_\be _\bA_\bl_\bs_\bo
3078                 pick (1), mh-sequence (5)
3079
3080
3081             _\bD_\be_\bf_\ba_\bu_\bl_\bt_\bs
3082                  `+folder' defaults to the current folder
3083                  `-add' if `-sequence' is specified, `-list' otherwise
3084                  `msgs' defaults to cur (or all if `-list' is specified)
3085                  `-nopublic' if the folder is read-only, `-public' otherwise
3086                  `-nozero'
3087
3088
3089             _\bC_\bo_\bn_\bt_\be_\bx_\bt
3090                 If a folder is given, it will become the current folder.
3091
3092             _\bH_\be_\bl_\bp_\bf_\bu_\bl _\bH_\bi_\bn_\bt_\bs
3093
3094                  Use "pick sequence -list" to enumerate the messages in  a  sequence
3095                  (such as for use by a shell script).
3096
3097             [mh.6]                           MH.6.8                      UCI version
3098
3099
3100
3101
3102
3103
3104
3105
3106
3107             MARK(1)                           -47-                           MARK(1)
3108
3109
3110             _\bN_\bA_\bM_\bE
3111                  mhl - produce formatted listings of MH messages
3112
3113             _\bS_\bY_\bN_\bO_\bP_\bS_\bI_\bS
3114                  /usr/bs/mh-6.8/lib/mhl [-bell] [-nobell] [-clear] [-noclear]
3115                       [-folder +folder] [-form formfile] [-length lines]
3116                       [-width columns] [-moreproc program] [-nomoreproc] [files ...]
3117                       [-help]
3118
3119             _\bD_\bE_\bS_\bC_\bR_\bI_\bP_\bT_\bI_\bO_\bN
3120
3121                  _\bM_\bh_\bl is a formatted message listing program.  It can be  used  as  a
3122                  replacement  for  _\bm_\bo_\br_\be (1)  (the default _\bs_\bh_\bo_\bw_\bp_\br_\bo_\bc ).  As with _\bm_\bo_\br_\be,
3123                  each of the messages specified as arguments (or the standard input)
3124                  will  be  output.   If more than one message file is specified, the
3125                  user will be prompted prior to each one, and a  <RETURN>  or  <EOT>
3126                  will  begin  the  output,  with  <RETURN>  clearing  the screen (if
3127                  appropriate), and <EOT> (usually  CTRL-D)  suppressing  the  screen
3128                  clear.  An <INTERRUPT> (usually CTRL-C) will abort the current mes-
3129                  sage output, prompting for the next message (if there is one),  and
3130                  a  <QUIT> (usually CTRL-\) will terminate the program (without core
3131                  dump).
3132
3133                  The `-bell' option tells _\bm_\bh_\bl to ring the terminal's bell at the end
3134                  of  each  page,  while  the  `-clear' option tells _\bm_\bh_\bl to clear the
3135                  scree at the end of each page (or output a formfeed after each mes-
3136                  sage).   Both  of  these  switches (and their inverse counterparts)
3137                  take effect only if the  profile  entry  _\bm_\bo_\br_\be_\bp_\br_\bo_\bc  is  defined  but
3138                  empty,  and _\bm_\bh_\bl is outputting to a terminal.  If the _\bm_\bo_\br_\be_\bp_\br_\bo_\bc entry
3139                  is defined and non-empty, and _\bm_\bh_\bl is outputting to a terminal, then
3140                  _\bm_\bh_\bl  will  cause the _\bm_\bo_\br_\be_\bp_\br_\bo_\bc to be placed between the terminal and
3141                  _\bm_\bh_\bl and the switches are ignored.   Furthermore,  if  the  `-clear'
3142                  switch is used and _\bm_\bh_\bl'_\bs output is directed to a terminal, then _\bm_\bh_\bl
3143                  will consult the $TERM and $TERMCAP envariables  to  determine  the
3144                  user's  terminal type in order to find out how to clear the screen.
3145                  If the `-clear' switch is used and _\bm_\bh_\bl'_\bs output is not directed  to
3146                  a  terminal (e.g., a pipe or a file), then _\bm_\bh_\bl will send a formfeed
3147                  after each message.
3148
3149                  To override the default _\bm_\bo_\br_\be_\bp_\br_\bo_\bc and the  profile  entry,  use  the
3150                  `-moreproc program'  switch.   Note  that  _\bm_\bh_\bl  will  never start a
3151                  _\bm_\bo_\br_\be_\bp_\br_\bo_\bc if invoked on a hardcopy terminal.
3152
3153                  The `-length length' and `-width width'  switches  set  the  screen
3154                  length  and width, respectively.  These default to the values indi-
3155                  cated by $TERMCAP, if appropriate, otherwise they default to 40 and
3156                  80, respectively.
3157
3158                  The default format file used by _\bm_\bh_\bl is called _\bm_\bh_\bl._\bf_\bo_\br_\bm_\ba_\bt (which  is
3159                  first  searched  for in the user's _\bM_\bH directory, and then sought in
3160                  the /_\bu_\bs_\br/_\bb_\bs/_\bm_\bh-_\b6._\b8/_\bl_\bi_\bb directory), this can be changed by using the
3161                  `-form formatfile' switch.
3162
3163             [mh.6]                           MH.6.8                      UCI version
3164
3165
3166
3167
3168
3169
3170
3171
3172
3173             MHL(1)                            -48-                            MHL(1)
3174
3175
3176                  Finally, the `-folder +folder' switch  sets  the  _\bM_\bH  folder  name,
3177                  which  is  used  for the "messagename:" field described below.  The
3178                  envariable $mhfolder is consulted  for  the  default  value,  which
3179                  _\bs_\bh_\bo_\bw, _\bn_\be_\bx_\bt, and _\bp_\br_\be_\bv initialize appropriately.
3180
3181                  _\bM_\bh_\bl operates in two phases: 1) read and parse the format file,  and
3182                  2)  process  each  message  (file).   During  phase  1, an internal
3183                  description of the format is produced as  a  structured  list.   In
3184                  phase  2,  this list is walked for each message, outputting message
3185                  information under the format constraints from the format file.
3186
3187                  The "mhl.format" form file contains information controlling  screen
3188                  clearing,  screen size, wrap-around control, transparent text, com-
3189                  ponent ordering, and component formatting.  Also, a  list  of  com-
3190                  ponents  to ignore may be specified, and a couple of "special" com-
3191                  ponents are defined to provide added functionality.  Message output
3192                  will be in the order specified by the order in the format file.
3193
3194                  Each line of mhl.format has one of the formats:
3195
3196                       ;comment
3197                       :cleartext
3198                       variable[,variable...]
3199                       component:[variable,...]
3200
3201                  A line beginning with a `;' is a comment, and is ignored.   A  line
3202                  beginning with a `:' is clear text, and is output exactly as is.  A
3203                  line containing only a `:' produces a blank line in the output.   A
3204                  line  beginning with "component:" defines the format for the speci-
3205                  fied component, and finally,  remaining  lines  define  the  global
3206                  environment.
3207
3208                  For example, the line:
3209
3210                       width=80,length=40,clearscreen,overflowtext="***",overflowoffset=5
3211
3212                  defines the screen size to be 80 columns by 40 rows, specifies that
3213                  the screen should be cleared prior to each page, that the  overflow
3214                  indentation  is  5,  and  that overflow text should be flagged with
3215                  "***".
3216
3217                  Following are all of the current variables and their arguments.  If
3218                  they  follow a component, they apply only to that component, other-
3219                  wise, their affect is global.  Since the  whole  format  is  parsed
3220                  before  any output processing, the last global switch setting for a
3221                  variable applies to the whole message if that variable is used in a
3222                  global context (i.e., bell, clearscreen, width, length).
3223
3224                       _\bv_\ba_\br_\bi_\ba_\bb_\bl_\be       _\bt_\by_\bp_\be       _\bs_\be_\bm_\ba_\bn_\bt_\bi_\bc_\bs
3225                       width          integer    screen width or component width
3226                       length         integer    screen length or component length
3227                       offset         integer    positions to indent "component: "
3228
3229             [mh.6]                           MH.6.8                      UCI version
3230
3231
3232
3233
3234
3235
3236
3237
3238
3239             MHL(1)                            -49-                            MHL(1)
3240
3241
3242                       overflowtext   string     text to use at the beginning of an
3243                                                 overflow line
3244                       overflowoffset integer    positions to indent overflow lines
3245                       compwidth      integer    positions to indent component text
3246                                                 after the first line is output
3247                       uppercase      flag       output text of this component in all
3248                                                 upper case
3249                       nouppercase    flag       don't uppercase
3250                       clearscreen    flag/G     clear the screen prior to each page
3251                       noclearscreen  flag/G     don't clearscreen
3252                       bell           flag/G     ring the bell at the end of each page
3253                       nobell         flag/G     don't bell
3254                       component      string/L   name to use instead of "component" for
3255                                                 this component
3256                       nocomponent    flag       don't output "component: " for this
3257                                                 component
3258                       center         flag       center component on line (works for
3259                                                 one-line components only)
3260                       nocenter       flag       don't center
3261                       leftadjust     flag       strip off leading whitespace on each
3262                                                 line of text
3263                       noleftadjust   flag       don't leftadjust
3264                       compress       flag       change newlines in text to spaces
3265                       nocompress     flag       don't compress
3266                       split          flag       don't combine multiple fields into a single field
3267                       nosplit        flag       combine multiple fields into a single field
3268                       newline        flag       print newline at end of components (default)
3269                       nonewline      flag       don't print newline at end of components
3270                       formatfield    string     format string for this component (see below)
3271                       addrfield      flag       field contains addresses
3272                       datefield      flag       field contains dates
3273
3274                  To specify the value of integer-valued and string-valued variables,
3275                  follow   their   name   with   an   equals-sign   and   the  value.
3276                  Integer-valued  variables   are   given   decimal   values,   while
3277                  string-valued  variables  are  given  arbitrary  text  bracketed by
3278                  double-quotes.  If a value is suffixed by "/G" or  "/L",  then  its
3279                  value  is  useful  in  a global-only or local-only context (respec-
3280                  tively).
3281
3282                  A line of the form:
3283
3284                      ignores=component,...
3285
3286                  specifies a list of components which are never output.
3287
3288                  The component  "MessageName"  (case-insensitive)  will  output  the
3289                  actual  message name (file name) preceded by the folder name if one
3290                  is specified or found in the environment.  The format is  identical
3291                  to that produced by the `-header' option to _\bs_\bh_\bo_\bw.
3292
3293                  The component "Extras" will output all of  the  components  of  the
3294
3295             [mh.6]                           MH.6.8                      UCI version
3296
3297
3298
3299
3300
3301
3302
3303
3304
3305             MHL(1)                            -50-                            MHL(1)
3306
3307
3308                  message  which were not matched by explicit components, or included
3309                  in the ignore list.  If this component is not specified, an  ignore
3310                  list  is  not  needed  since  all  non-specified components will be
3311                  ignored.
3312
3313                  If "nocomponent" is NOT specified, then the component name will  be
3314                  output as it appears in the format file.
3315
3316                  The default format is:
3317
3318                       : -- using template mhl.format --
3319                       overflowtext="***",overflowoffset=5
3320                       leftadjust,compwidth=9
3321                       ignores=msgid,message-id,received
3322                       Date:formatfield="%<(nodate{text})%{text}%|%(pretty{text})%>"
3323                       To:
3324                       cc:
3325                       :
3326                       From:
3327                       Subject:
3328                       :
3329                       extras:nocomponent
3330                       :
3331                       body:nocomponent,overflowtext=,overflowoffset=0,noleftadjust
3332
3333                  The  variable  "formatfield"  specifies  a   format   string   (see
3334                  _\bm_\bh-_\bf_\bo_\br_\bm_\ba_\bt (5)).   The  flag  variables  "addrfield" and "datefield"
3335                  (which are mutually exclusive), tell _\bm_\bh_\bl to interpret  the  escapes
3336                  in the format string as either addresses or dates, respectively.
3337
3338                  By default, _\bm_\bh_\bl does not apply any formatting string to fields con-
3339                  taining  address  or  dates  (see  _\bm_\bh-_\bm_\ba_\bi_\bl (5)  for a list of these
3340                  fields).  Note that this results in faster operation since _\bm_\bh_\bl must
3341                  parse both addresses and dates in order to apply a format string to
3342                  them.  If desired, _\bm_\bh_\bl can be given a  default  format  string  for
3343                  either  address  or  date  fields (but not both).  To do this, on a
3344                  global line specify: either the flag addrfield or datefield,  along
3345                  with the apropriate formatfield variable string.
3346
3347             _\bF_\bi_\bl_\be_\bs
3348                  /usr/bs/mh-6.8/lib/mhl.format        The message template
3349                  or <mh-dir>/mhl.format               Rather than the standard template
3350                  $HOME/.mh_profile                    The user profile
3351
3352
3353             _\bP_\br_\bo_\bf_\bi_\bl_\be _\bC_\bo_\bm_\bp_\bo_\bn_\be_\bn_\bt_\bs
3354                  moreproc:            Program to use as interactive front-end
3355
3356
3357             _\bS_\be_\be _\bA_\bl_\bs_\bo
3358                  show(1), ap(8), dp(8)
3359
3360
3361             [mh.6]                           MH.6.8                      UCI version
3362
3363
3364
3365
3366
3367
3368
3369
3370
3371             MHL(1)                            -51-                            MHL(1)
3372
3373
3374             _\bD_\be_\bf_\ba_\bu_\bl_\bt_\bs
3375                  `-bell'
3376                  `-noclear'
3377                  `-length 40'
3378                  `-width 80'
3379
3380
3381             _\bC_\bo_\bn_\bt_\be_\bx_\bt
3382                  None
3383
3384
3385             _\bB_\bu_\bg_\bs
3386                  There should be some way to pass `bell' and `clear' information  to
3387                  the front-end.
3388
3389                  On hosts where _\bM_\bH was configured  with  the  BERK  option,  address
3390                  parsing is not enabled.
3391
3392                  The "nonewline" option interacts badly with "compress" and "split".
3393
3394
3395
3396
3397
3398
3399
3400
3401
3402
3403
3404
3405
3406
3407
3408
3409
3410
3411
3412
3413
3414
3415
3416
3417
3418
3419
3420
3421
3422
3423
3424
3425
3426
3427             [mh.6]                           MH.6.8                      UCI version
3428
3429
3430
3431
3432
3433
3434
3435
3436
3437             MHMAIL(1)                         -52-                         MHMAIL(1)
3438
3439
3440             _\bN_\bA_\bM_\bE
3441                  mhmail - send or read mail
3442
3443             _\bS_\bY_\bN_\bO_\bP_\bS_\bI_\bS
3444                  mhmail [ addrs ... [-body text] [-cc addrs ...] [-from addr]
3445                       [-subject subject]] [-help]
3446
3447             _\bD_\bE_\bS_\bC_\bR_\bI_\bP_\bT_\bI_\bO_\bN
3448
3449                  _\bM_\bH_\bm_\ba_\bi_\bl is intended as a replacement for the standard Bell mail pro-
3450                  gram  (_\bb_\be_\bl_\bl_\bm_\ba_\bi_\bl (1)),  compatible  with  _\bM_\bH.   When invoked without
3451                  arguments, it simply invokes _\bi_\bn_\bc (1) to  incorporate  new  messages
3452                  from  the  user's maildrop.  When one or more users is specified, a
3453                  message is read from the standard input and spooled to a  temporary
3454                  file.   _\bM_\bH_\bm_\ba_\bi_\bl then invokes _\bp_\bo_\bs_\bt (8) with the name of the temporary
3455                  file as its argument to deliver the message to the specified user.
3456
3457                  The `-subject subject' switch can be used to specify the "Subject:"
3458                  field  of  the  message.   The  `-body text'  switch can be used to
3459                  specify the text of the message; if it is specified, then the stan-
3460                  dard input is not read.  Normally, addresses appearing as arguments
3461                  are put in the "To:" field.  If  the  `-cc'  switch  is  used,  all
3462                  addresses following it are placed in the "cc:" field.
3463
3464                  By using `-from addr', you can specify the "From:"  header  of  the
3465                  draft.    Naturally,   _\bp_\bo_\bs_\bt   will  fill-in  the  "Sender:"  header
3466                  correctly.
3467
3468                  This program is intended for the use of programs  such  as  _\ba_\bt (1),
3469                  which  expect  to  send  mail automatically to various users.  Nor-
3470                  mally, real people (as opposed to the "unreal" ones) will prefer to
3471                  use _\bc_\bo_\bm_\bp (1) and _\bs_\be_\bn_\bd (1) to send messages.
3472
3473             _\bF_\bi_\bl_\be_\bs
3474                  /usr/bs/mh-6.8/bin/inc               Program to incorporate a maildrop into a folder
3475                  /usr/bs/mh-6.8/lib/post              Program to deliver a message
3476                  /tmp/mhmail*                         Temporary copy of message
3477
3478
3479             _\bP_\br_\bo_\bf_\bi_\bl_\be _\bC_\bo_\bm_\bp_\bo_\bn_\be_\bn_\bt_\bs
3480                  None
3481
3482
3483             _\bS_\be_\be _\bA_\bl_\bs_\bo
3484                  inc(1), post(8)
3485
3486
3487             _\bD_\be_\bf_\ba_\bu_\bl_\bt_\bs
3488                  None
3489
3490
3491
3492
3493             [mh.6]                           MH.6.8                      UCI version
3494
3495
3496
3497
3498
3499
3500
3501
3502
3503             MHMAIL(1)                         -53-                         MHMAIL(1)
3504
3505
3506             _\bC_\bo_\bn_\bt_\be_\bx_\bt
3507                  If _\bi_\bn_\bc is invoked, then _\bi_\bn_\bc's context changes occur.
3508
3509
3510
3511
3512
3513
3514
3515
3516
3517
3518
3519
3520
3521
3522
3523
3524
3525
3526
3527
3528
3529
3530
3531
3532
3533
3534
3535
3536
3537
3538
3539
3540
3541
3542
3543
3544
3545
3546
3547
3548
3549
3550
3551
3552
3553
3554
3555
3556
3557
3558
3559             [mh.6]                           MH.6.8                      UCI version
3560
3561
3562
3563
3564
3565
3566
3567
3568
3569             MHN(1)                            -54-                            MHN(1)
3570
3571
3572             _\bN_\bA_\bM_\bE
3573                  mhn - multi-media MH
3574
3575             _\bS_\bY_\bN_\bO_\bP_\bS_\bI_\bS
3576                  mhn [+folder] [msgs] [-part number]... [-type content]...
3577                       [-list [-headers] [-noheaders]
3578                              [-realsize] [-norealsize]] [-nolist]
3579                       [-show [-serialonly] [-noserialonly]]
3580                              [-form formfile]] [-noshow]
3581                       [-store [-auto] [-noauto]] [-nostore]
3582                       [-verbose] [-noverbose] [-rfc934mode] [-norfc934mode]
3583                       [-ebcdicsafe] [-noebcdicsafe]
3584                       [-help]
3585
3586             _\bD_\bE_\bS_\bC_\bR_\bI_\bP_\bT_\bI_\bO_\bN
3587
3588                  The _\bm_\bh_\bn command manipulates multi-media messages  as  specified  in
3589                  RFC 1341.
3590
3591                  Three action switches direct the operation of _\bm_\bh_\bn, namely  `-list',
3592                  `-show',  and  `-store'.   Any  of  these switches may be used con-
3593                  currently.  Normally these action switches will operate on the con-
3594                  tent  of each of the named messages.  However, by using the `-part'
3595                  and `-type' switches, the scope of the operation can be focused  on
3596                  particular subparts (of a multipart content) and/or particular con-
3597                  tent types.
3598
3599                  A part specification consists of a series of numbers  separated  by
3600                  dots.   For example, in a multipart content containing three parts,
3601                  these would be named as 1, 2, and 3, respectively.  If part  2  was
3602                  also a multipart content containing two parts, these would be named
3603                  as 2.1 and 2.2, respectively.  Note  that  the  `-part'  switch  is
3604                  effective  for  only messages containing a multipart content.  If a
3605                  message has some other kind of content, or if the  part  is  itself
3606                  another  multipart content, the `-part' switch will not prevent the
3607                  content from being acted upon.
3608
3609                  A content specification consists of a content type and  a  subtype.
3610                  The  initial  list  of "standard" content types and subtypes can be
3611
3612
3613
3614
3615
3616
3617
3618
3619
3620
3621
3622
3623
3624
3625             [mh.6]                           MH.6.8                      UCI version
3626
3627
3628
3629
3630
3631
3632
3633
3634
3635             MHN(1)                            -55-                            MHN(1)
3636
3637
3638                  found in RFC 1341.  A list of commonly  used  contents  is  briefly
3639                  reproduced here:
3640
3641                       Type         Subtypes
3642                       ----         --------
3643                       text         plain, richtext
3644                       multipart    mixed, alternative, digest, parallel
3645                       message      rfc822, partial, external-body
3646                       application  octet-stream, oda, postscript
3647                       image        jpeg, gif, x-pbm, x-pgm, x-ppm, x-xwd
3648                       audio        basic
3649                       video        mpeg
3650
3651                  Subtypes are mandatory.  To specify a content,  regardless  of  its
3652                  subtype,  just  use  the  name  of  the content, e.g., "audio".  To
3653                  specify a specific subtype, separate the two with  a  slash,  e.g.,
3654                  "audio/basic".   Note  that  regardless  of the values given to the
3655                  `-type' switch, a multipart content is always acted upon.   Further
3656                  note that if the `-type' switch is used, and it is desirable to act
3657                  on a message/external-body content, then the `-type' switch must be
3658                  used twice: once for message/external-body and once for the content
3659                  externally referenced.
3660
3661
3662               _\bL_\bi_\bs_\bt_\bi_\bn_\bg _\bt_\bh_\be _\bC_\bo_\bn_\bt_\be_\bn_\bt_\bs
3663
3664                  The `-list' switch tells _\bm_\bh_\bn to list the table of contents  associ-
3665                  ated with the named messages.  The `-headers' switch indicates that
3666                  a one-line banner should  be  displayed  above  the  listing.   The
3667                  `-realsize'  switch  tells  _\bm_\bh_\bn  to evaluate the "native" (decoded)
3668                  format of each content prior to listing.  This provides an accurate
3669                  count at the expense of a small delay.
3670
3671
3672               _\bS_\bh_\bo_\bw_\bi_\bn_\bg _\bt_\bh_\be _\bC_\bo_\bn_\bt_\be_\bn_\bt_\bs
3673
3674                  The `-show' switch tells _\bm_\bh_\bn to display the contents of  the  named
3675                  messages.   The  headers  of  the  message  are  displayed with the
3676                  _\bm_\bh_\bl_\bp_\br_\bo_\bc, using format file _\bm_\bh_\bl._\bh_\be_\ba_\bd_\be_\br_\bs.  (The choice of format file
3677                  can be overridden by the `-form formfile' switch.)
3678
3679                  _\bm_\bh_\bn will look for information in the user's  profile  to  determine
3680                  how  the  different  contents  should be displayed.  This is accom-
3681                  plished by consulting a display  string,  and  executing  it  under
3682
3683
3684
3685
3686
3687
3688
3689
3690
3691             [mh.6]                           MH.6.8                      UCI version
3692
3693
3694
3695
3696
3697
3698
3699
3700
3701             MHN(1)                            -56-                            MHN(1)
3702
3703
3704                  /bin/sh,  with  the standard input set to the content.  The display
3705                  string may contain these escapes:
3706
3707                       %a  additional arguments
3708                       %e  exclusive execution
3709                       %f  filename containing content
3710                       %F  %e, %f, and stdin is terminal not content
3711                       %l  display listing prior to displaying content
3712                       %p  %l, and ask for confirmation
3713                       %s  subtype
3714
3715                  For those display strings containing the e- or F-escape,  _\bm_\bh_\bn  will
3716                  execute  at  most  one of these at any given time.  Although the F-
3717                  escape expands to be the filename containing the  content,  the  e-
3718                  escape has no expansion as far as the shell is concerned.
3719
3720                  When the p-escape prompts for confirmation,  typing  INTR  (usually
3721                  control-C)  will  tell  _\bm_\bh_\bn  not to display that content.  Further,
3722                  when _\bm_\bh_\bn is display a content, typing QUIT (usually control-\) will
3723                  tell _\bm_\bh_\bn to wrap things up immediately.
3724
3725                  First, _\bm_\bh_\bn will look for an entry of the form:
3726
3727                       mhn-show-<type>/<subtype>
3728
3729                  to determine the command to use to display the  content.   If  this
3730                  isn't found, _\bm_\bh_\bn will look for an entry of the form:
3731
3732                       mhn-show-<type>
3733
3734                  to determine the display command.  If this isn't found, _\bm_\bh_\bn has two
3735                  default values:
3736
3737                       mhn-show-text/plain: %pmoreproc '%F'
3738                       mhn-show-message/rfc822: %pshow -file '%F'
3739
3740                  If neither apply, _\bm_\bh_\bn will check  to  see  if  the  message  has  a
3741                  application/octet-stream content with parameter "type=tar".  If so,
3742                  _\bm_\bh_\bn will use an appropriate command.  If not, _\bm_\bh_\bn will complain.
3743
3744                  Example entries might be:
3745
3746                       mhn-show-audio/basic: raw2audio 2>/dev/null | play
3747                       mhn-show-image: xv '%f'
3748                       mhn-show-application/PostScript: lpr -Pps
3749
3750                  Note that when using the f- or F-escape, it's a good  idea  to  use
3751                  single-quotes  around  the escape.  This prevents misinterpretation
3752                  by the shell of any funny characters that might be present  in  the
3753                  filename.
3754
3755                  Because the text content might be in  a  non-ASCII  character  set,
3756
3757             [mh.6]                           MH.6.8                      UCI version
3758
3759
3760
3761
3762
3763
3764
3765
3766
3767             MHN(1)                            -57-                            MHN(1)
3768
3769
3770                  when  _\bm_\bh_\bn  encounters  a  "charset"  parameter for this content, it
3771                  checks to see whether the environment variable $MM_CHARSET  is  set
3772                  and  whether the value of this environment variable is equal to the
3773                  value of the charset parameter.  If not, then _\bm_\bh_\bn will look for  an
3774                  entry of the form:
3775
3776                       mhn-charset-<charset>
3777
3778                  which should contain a command creating an  environment  to  render
3779                  the  character set.  This command string should containing a single
3780                  "%s", which will be filled-in with the command to display the  con-
3781                  tent.
3782
3783                  An example entry might be:
3784
3785                       mhn-charset-iso-8859-1: xterm  -fn  '-*-*-medium-r-normal-*-*-
3786                       120-*-*-c-*-iso8859-*' -e %s
3787
3788                  Note that many pagination programs strip off  the  high-order  bit.
3789                  However, newer releases of the _\bl_\be_\bs_\bs program have modest support for
3790                  single-octet character sets.  The source to _\bl_\be_\bs_\bs version 177, which
3791                  has   such   support,   is  found  in  the  MH  source  tree  under
3792                  miscellany/less-177.  In order to view messages  sent  in  the  ISO
3793                  8859/1  character  set  using  _\bl_\be_\bs_\bs, put these lines in your .login
3794                  file:
3795
3796                       setenv LESSCHARSET latin1
3797                       setenv LESS "-f"
3798
3799                  The first line tells _\bl_\be_\bs_\bs to use 8859/1  definition  for  determing
3800                  whether  a  character  is  "normal",  "control",  or "binary".  The
3801                  second line tells _\bl_\be_\bs_\bs not to warn you if it encounters a file that
3802                  has  non-ASCII  characters.   Then, simply set the moreproc profile
3803                  entry to _\bl_\be_\bs_\bs, and it will get called  automatically.   (To  handle
3804                  other  single-octet  character  sets,  look  at the _\bl_\be_\bs_\bs (1) manual
3805                  entry for information about the LESSCHARDEF environment variable.)
3806
3807                  Finally, _\bm_\bh_\bn will process each message serially -- it  won't  start
3808                  showing the next message until all the commands executed to display
3809                  the current message have terminated.  In the case  of  a  multipart
3810                  content, the content contains advice indicating if the parts should
3811                  be displayed serially or in parallel.  Because this may cause  con-
3812                  fusion,  particularly  on  uni-window  displays,  the `-serialonly'
3813                  switch can be given to tell _\bm_\bh_\bn to never display parts in parallel.
3814
3815
3816               _\bS_\bt_\bo_\br_\bi_\bn_\bg _\bt_\bh_\be _\bC_\bo_\bn_\bt_\be_\bn_\bt_\bs
3817
3818                  The `-store' switch tells _\bm_\bh_\bn to store the contents  of  the  named
3819                  messages  in  "native" (decoded) format.  Two things must be deter-
3820                  mined: the directory to  store  the  content,  and  the  filenames.
3821                  Files are written in the directory given by the mhn-storage profile
3822
3823             [mh.6]                           MH.6.8                      UCI version
3824
3825
3826
3827
3828
3829
3830
3831
3832
3833             MHN(1)                            -58-                            MHN(1)
3834
3835
3836                  entry, e.g.,
3837
3838                       mhn-storage: /tmp
3839
3840                  If this entry isn't present, the current working directory is used.
3841
3842                  _\bm_\bh_\bn will look for information in the user's  profile  to  determine
3843                  how  the  different  contents  should  be stored.  This is achieved
3844                  through the use of a formatting string,  which  may  contain  these
3845                  escapes:
3846
3847                       %m  message number
3848                       %P  .part
3849                       %p  part
3850                       %s  subtype
3851
3852                  If the content isn't part of a multipart content, the p-escapes are
3853                  ignored.   Note  that  if  the  formatting string starts with a "+"
3854                  character, then these escapes  are  ignored,  and  the  content  is
3855                  stored in the named folder.  (A formatting string consisting solely
3856                  of a "+" character indicates the current folder.) Further,  a  for-
3857                  matting  string  consisting solely of a "-" character indicates the
3858                  standard-output.
3859
3860                  First, _\bm_\bh_\bn will look for an entry of the form:
3861
3862                       mhn-store-<type>/<subtype>
3863
3864                  to determine the formatting string.  If this isn't found, _\bm_\bh_\bn  will
3865                  look for an entry of the form:
3866
3867                       mhn-store-<type>
3868
3869                  to determine the formatting string.  If this isn't found, _\bm_\bh_\bn  will
3870                  check to see if the content is application/octet-stream with param-
3871                  eter "type=tar".  If so, _\bm_\bh_\bn will choose an  appropriate  filename.
3872                  If the content is not application/octet-stream, then _\bm_\bh_\bn will check
3873                  to see if the content is a message.  If so, _\bm_\bh_\bn will use the  value
3874                  "+".  If not, _\bm_\bh_\bn will use the value "%m%P.%s".
3875
3876                  Note that if the formatting string starts with a '/', then  content
3877                  will  be stored in the full path given (rather than using the value
3878                  of mhn-storage or the current working directory.) Similarly, if the
3879                  formatting  string  starts with a '|', then _\bm_\bh_\bn will execute a com-
3880                  mand which should ultimately store the content.  Note  that  before
3881                  executing  the  command,  _\bm_\bh_\bn will change to the appropriate direc-
3882                  tory.  Also note that if the formatting string starts with  a  '|',
3883                  then  _\bm_\bh_\bn  will also honor the a-escape when processing the format-
3884                  ting string.
3885
3886
3887
3888
3889             [mh.6]                           MH.6.8                      UCI version
3890
3891
3892
3893
3894
3895
3896
3897
3898
3899             MHN(1)                            -59-                            MHN(1)
3900
3901
3902                  Example entries might be:
3903
3904                       mhn-store-text: %m%P.txt
3905                       mhn-store-audio/basic: | raw2audio -e ulaw -s 8000 -c 1 > %m%P.au
3906                       mhn-store-application/PostScript: %m%P.ps
3907
3908                  Further, note that when asked to store a content containing a  par-
3909                  tial  message,  _\bm_\bh_\bn will try to locate all of the portions and com-
3910                  bine them accordingly.  Thus, if someone's sent you  a  message  in
3911                  several parts, you might put them all in their own folder and do:
3912
3913                       mhn all -store
3914
3915                  This will store exactly one message,  containing  the  sum  of  the
3916                  parts.   Note  that  if  _\bm_\bh_\bn  can not locate each part, it will not
3917                  store anything.
3918
3919                  Finally, if the `-auto' switch is given and  the  content  contains
3920                  information indicating the filename the content should be stored as
3921                  (and if the filename doesn't begin with a '/'), then  the  filename
3922                  from the content will be used instead.
3923
3924
3925               _\bE_\bx_\bt_\be_\br_\bn_\ba_\bl _\bA_\bc_\bc_\be_\bs_\bs
3926
3927                  For contents of  type  message/external-body,  _\bm_\bh_\bn  supports  these
3928                  access-types:
3929
3930                       afs
3931                       anon-ftp
3932                       ftp
3933                       local-file
3934                       mail-server
3935
3936                  If your system supports a SOCKETs interface  to  TCP/IP,  then  _\bm_\bh_\bn
3937                  will  use  a built-in FTP client.  Otherwise, _\bm_\bh_\bn will look for the
3938                  mhn-access-ftp profile entry, e.g.,
3939
3940                       mhn-access-ftp: myftp.sh
3941
3942                  to  determine  the  pathname  of  a  program  to  perform  the  FTP
3943
3944
3945
3946
3947
3948
3949
3950
3951
3952
3953
3954
3955             [mh.6]                           MH.6.8                      UCI version
3956
3957
3958
3959
3960
3961
3962
3963
3964
3965             MHN(1)                            -60-                            MHN(1)
3966
3967
3968                  retrieval.  This program is invoked with these arguments:
3969
3970                       domain name of FTP-site
3971                       username
3972                       password
3973                       remote directory
3974                       remote filename
3975                       local filename
3976                       "ascii" or "binary"
3977
3978                  The program should terminate with a zero-valued exit-status if  the
3979                  retrieval is success.
3980
3981
3982               _\bT_\bh_\be _\bC_\bo_\bn_\bt_\be_\bn_\bt _\bC_\ba_\bc_\bh_\be
3983
3984                  When _\bm_\bh_\bn encounters an external content containing a  "Content-ID:"
3985                  field,  and  if  the content allows caching, then _\bm_\bh_\bn looks for the
3986                  profile entry mhn-cache to determine if the content should be  read
3987                  from/written to a cache.  Any content written to the cache will, by
3988                  default, be world-readable.  (To prevent this, use a directory name
3989                  with  the desired read and execute permissions.) The mhn-cache pro-
3990                  file entry names the directory used for caching, e.g.,
3991
3992                       mhn-cache: /tmp
3993
3994                  might be used if you didn't care that the  cache  got  wiped  after
3995                  each reboot of the system.
3996
3997
3998               _\bC_\bo_\bm_\bp_\bo_\bs_\bi_\bn_\bg _\bt_\bh_\be _\bC_\bo_\bn_\bt_\be_\bn_\bt_\bs
3999
4000                  The _\bm_\bh_\bn program can also be used as a simple editor to aid in  com-
4001                  posing  multi-media  messages.   When invoked by a _\bw_\bh_\ba_\bt_\bn_\bo_\bw program,
4002                  _\bm_\bh_\bn will expect the body of the draft to be formatted  as  an  "_\bm_\bh_\bn
4003                  composition file."
4004
4005
4006
4007
4008
4009
4010
4011
4012
4013
4014
4015
4016
4017
4018
4019
4020
4021             [mh.6]                           MH.6.8                      UCI version
4022
4023
4024
4025
4026
4027
4028
4029
4030
4031             MHN(1)                            -61-                            MHN(1)
4032
4033
4034                  The syntax of this is straight-forward:
4035
4036                          body         ::=     1*(content | EOL)
4037
4038                          content      ::=     directive | plaintext
4039
4040                          directive    ::=     "#" type "/" subtype
4041                                                   0*(";" attribute "=" value)
4042                                                   [ "(" comment ")" ]
4043                                                   [ "[" description "]" ]
4044                                                   [ filename ]
4045                                                   EOL
4046
4047                                             | "#@" type "/" subtype
4048                                                   0*(";" attribute "=" value)
4049                                                   [ "(" comment ")" ]
4050                                                   [ "[" description "]" ]
4051                                                   external-parameters
4052                                                   EOL
4053
4054                                             | "#forw"
4055                                                   [ "[" description "]" ]
4056                                                   [ "+"folder ] [ 0*msg ]
4057                                                   EOL
4058
4059                                             | "#begin"
4060                                                     [ "[" description "]" ]
4061                                                     [   "alternative"
4062                                                       | "parallel"    ]
4063                                                     EOL
4064                                                   1*body
4065                                               "#end" EOL
4066
4067                          plaintext    ::=     [ "Content-Description:"
4068                                                     description EOL EOL ]
4069                                                   1*line
4070                                               [ "#" EOL ]
4071
4072                                             | "#<" type "/" subtype
4073                                                   0*(";" attribute "=" value)
4074                                                   [ "(" comment ")" ]
4075                                                   [ "[" description "]" ]
4076                                                   EOL
4077                                                   1*line
4078                                               [ "#" EOL ]
4079
4080                          line         ::=     "##" text EOL
4081                                               -- interpreted as "#"text EOL
4082                                             | text EOL
4083
4084                  Basically, the body contains one or more contents.  A content  con-
4085                  sists  of  either  a  directive,  indicated with a "#" as the first
4086
4087             [mh.6]                           MH.6.8                      UCI version
4088
4089
4090
4091
4092
4093
4094
4095
4096
4097             MHN(1)                            -62-                            MHN(1)
4098
4099
4100                  character of a line; or, plaintext (one or  more  lines  of  text).
4101                  The  continuation  character,  "\",  may  be used to enter a single
4102                  directive on more than one line, e.g.,
4103
4104                       #@application/octet-stream; \
4105                           type=tar; \
4106                           conversions=x-compress
4107
4108                  There are four kinds of directives: "type" directives,  which  name
4109                  the  type  and  subtype of the content; "external-type" directives,
4110                  which also name the type and subtype of  the  content;  the  "forw"
4111                  directive,  which is used to forward a digest of messages; and, the
4112                  "begin" directive, which is used to create a multipart content.
4113
4114                  For the type directives, the user may optionally specify  the  name
4115                  of  a  file  containing  the contents in "native" (decoded) format.
4116                  (If the filename starts with the "|" character, then this  gives  a
4117                  command whose output is captured accordingly.) If a filename is not
4118                  given, _\bm_\bh_\bn will look for  information  in  the  user's  profile  to
4119                  determine  how  the different contents should be composed.  This is
4120                  accomplished by consulting a composition string, and  executing  it
4121                  under  /bin/sh,  with  the standard output set to the content.  The
4122                  composition string may contain these escapes:
4123
4124                       %a  additional arguments
4125                       %f  filename containing content
4126                       %F  %f, and stdout is not re-directed
4127                       %s  subtype
4128
4129                  First, _\bm_\bh_\bn will look for an entry of the form:
4130
4131                       mhn-compose-<type>/<subtype>
4132
4133                  to determine the command to use to compose the  content.   If  this
4134                  isn't found, _\bm_\bh_\bn will look for an entry of the form:
4135
4136                       mhn-compose-<type>
4137
4138                  to determine the composition command.  If  this  isn't  found,  _\bm_\bh_\bn
4139                  will complain.
4140
4141                  An example entry might be:
4142
4143                       mhn-compose-audio/basic: record | raw2audio -F
4144
4145                  Because commands like these will vary,  depending  on  the  display
4146                  environment  used for login, composition strings for different con-
4147                  tents should probably be put in the  file  specified  by  the  $MHN
4148                  environment variable, instead of directly in your user profile.
4149
4150                  The external-type directives are used to provide a reference  to  a
4151                  content, rather than enclosing the contents itself.  Hence, instead
4152
4153             [mh.6]                           MH.6.8                      UCI version
4154
4155
4156
4157
4158
4159
4160
4161
4162
4163             MHN(1)                            -63-                            MHN(1)
4164
4165
4166                  of providing a filename as  with  the  type  directives,  external-
4167                  parameters  are  supplied.   These look like regular parameters, so
4168                  they must be separated accordingly, e.g.,
4169
4170                       #@application/octet-stream; \
4171                           type=tar; \
4172                           conversions=x-compress [] \
4173                           access-type=anon-ftp; \
4174                           name="mh-mime.tar.Z"; \
4175                           directory="mrose/mh-mime"; \
4176                           site="ftp.ics.uci.edu"
4177
4178                  By specifying "[]", an empty description string is given,  and  the
4179                  start  of  the external-parameters is identified.  These parameters
4180                  are of the form:
4181
4182                       access-type=  usually _\ba_\bn_\bo_\bn-_\bf_\bt_\bp or _\bm_\ba_\bi_\bl-_\bs_\be_\br_\bv_\be_\br
4183                       name=         filename
4184                       directory=    directoryname (optional)
4185                       site=         hostname
4186                       mode=         usually _\ba_\bs_\bc_\bi_\bi or _\bi_\bm_\ba_\bg_\be (optional)
4187                       server=       mailbox
4188                       body=         command to send for retrieval
4189
4190
4191                  For the forw directive, the user may optionally specify the name of
4192                  the  folder and which messages are to be forwarded.  if a folder is
4193                  not given, it defaults to the current folder.  Similarly, if a mes-
4194                  sage  is not given, it defaults to the current message.  Hence, the
4195                  forw directive is similar to the _\bf_\bo_\br_\bw (1) command, except that  the
4196                  former  uses  the  MIME  rules  for encapsulation rather than those
4197                  specified in RFC 934.  Usage of the `-rfc934mode' switch  indicates
4198                  whether  _\bm_\bh_\bn  should  attempt to utilize the encapsulation rules in
4199                  such a way as to appear that RFC 934 is being used.  If given, then
4200                  RFC  934-compliant  user-agents should be able to burst the message
4201                  on reception -- providing that the messages being  encapsulated  do
4202                  not contain encapsulated messages themselves.  The drawback of this
4203                  approach is that the encapsulations are  generated  by  placing  an
4204                  extra newline at the end of the body of each message.
4205
4206                  For the begin directive, the user must specify at least one content
4207                  between the begin and end pairs.
4208
4209                  For all of these directives, the user may include a brief  descrip-
4210                  tion  of  the content between the "[" character and the "]" charac-
4211
4212
4213
4214
4215
4216
4217
4218
4219             [mh.6]                           MH.6.8                      UCI version
4220
4221
4222
4223
4224
4225
4226
4227
4228
4229             MHN(1)                            -64-                            MHN(1)
4230
4231
4232                  ter.  Putting this all together, here is a brief example of what  a
4233                  user's components file might look like:
4234
4235                       To:
4236                       cc:
4237                       Subject:
4238                       --------
4239                       #audio/basic [Flint phone]  \
4240                           |raw2audio -F < /home/mrose/lib/multi-media/flint.au
4241                       #image/gif   [MTR's photo] \
4242                                           /home/mrose/lib/multi-media/mrose.gif
4243
4244                  For a later example, we'll call this components file _\bm_\bh_\bn_\bc_\bo_\bm_\bp_\bs.
4245
4246                  As noted earlier, in  addition  to  directives,  plaintext  can  be
4247                  present.   Plaintext is gathered, until a directive is found or the
4248                  draft is exhausted, and this is made to form a  text  content.   If
4249                  the plaintext must contain a "#" at the beginning of a line, simply
4250                  double it, e.g.,
4251
4252                       ##when sent, this line will start with only one #
4253
4254                  If you want to end the plaintext prior to  a  directive,  e.g.,  to
4255                  have two plaintext contents adjacent, simply insert a line contain-
4256                  ing a single "#" character, e.g.,
4257
4258                       this is the first content
4259                       #
4260                       and this is the second
4261
4262                  Finally, if the plaintext starts with a line of the form:
4263
4264                       Content-Description: text
4265
4266                  then this will be used to describe  the  plaintext  content.   NOTE
4267                  WELL:  you  must follow this line with a blank line before starting
4268                  your text.
4269
4270                  By default, plaintext is captured as a text/plain content.  You can
4271                  override  this  by  starting  the plaintext with "#<" followed by a
4272                  content-type specification, e.g.,
4273
4274                       #<text/richtext
4275                       this content will be tagged as text/richtext
4276                       #
4277                       and this content will be tagged as text/plain
4278
4279                  Note that if you use the "#<"  plaintext-form,  then  the  content-
4280                  description  must  be on the same line which identifies the content
4281                  type of the plaintext.
4282
4283                  If _\bm_\bh_\bn is successful, it renames the original draft to  start  with
4284
4285             [mh.6]                           MH.6.8                      UCI version
4286
4287
4288
4289
4290
4291
4292
4293
4294
4295             MHN(1)                            -65-                            MHN(1)
4296
4297
4298                  the "," character and end with the string ".orig", e.g., if you are
4299                  editing the file "draft", it  will  be  renamed  to  ",draft.orig".
4300                  This allows you to easily recover the _\bm_\bh_\bn composition file.
4301
4302
4303               _\bA_\bu_\bt_\bo_\bm_\ba_\bt_\bi_\bc _\bC_\bo_\bm_\bp_\bo_\bs_\bi_\bt_\bi_\bo_\bn
4304
4305                  Note that MH will not invoke _\bm_\bh_\bn automatically, unless you add this
4306                  line to your .mh_profile file:
4307
4308                       automhnproc: mhn
4309
4310                  Otherwise, you must specifically give the command
4311
4312                       What now? edit mhn
4313
4314                  prior to sending the draft.
4315
4316                  You can easily tailor MH to help you remember to do this.   Suppose
4317                  you have these lines in your profile:
4318
4319                       mcomp:          -editor mprompter -form mhncomps
4320                       mprompter:      -noprepend -norapid
4321                       mprompter-next: mhn
4322
4323                  where _\bm_\bc_\bo_\bm_\bp is a link to _\bc_\bo_\bm_\bp (1),  and  _\bm_\bp_\br_\bo_\bm_\bp_\bt_\be_\br  is  a  link  to
4324                  _\bp_\br_\bo_\bm_\bp_\bt_\be_\br (1).  Then to send a message using the _\bm_\bh_\bn_\bc_\bo_\bm_\bp_\bs components
4325
4326
4327
4328
4329
4330
4331
4332
4333
4334
4335
4336
4337
4338
4339
4340
4341
4342
4343
4344
4345
4346
4347
4348
4349
4350
4351             [mh.6]                           MH.6.8                      UCI version
4352
4353
4354
4355
4356
4357
4358
4359
4360
4361             MHN(1)                            -66-                            MHN(1)
4362
4363
4364                  file above, the sequence is:
4365
4366                       % mcomp
4367                       To: user@host
4368                       cc:
4369                       Subject: multi-media message
4370                       --------
4371                       #audio/basic [Flint phone]  \
4372                           |raw2audio -F < /home/mrose/lib/multi-media/flint.au
4373                       #image/gif   [MTR's photo] \
4374                                           /home/mrose/lib/multi-media/mrose.gif
4375
4376                       --------Enter additional text
4377
4378                       This message contains three contents.
4379                       <CTRL-D>
4380                       --------
4381
4382                       What now? edit (this invokes _\bm_\bh_\bn)
4383
4384                       What now? send
4385
4386                  You have to remember to type the additional edit  command,  but  it
4387                  should be fairly obvious from the interaction.
4388
4389                  Finally, you should consider adding this line to your profile:
4390
4391                       lproc: show
4392
4393                  This way, if you decide to list after invoking _\bm_\bh_\bn as your  editor,
4394                  the command
4395
4396                       What now? list
4397
4398                  will work as you expect.
4399
4400
4401               _\bS_\be_\bn_\bd_\bi_\bn_\bg _\bF_\bi_\bl_\be_\bs _\bv_\bi_\ba _\bM_\ba_\bi_\bl
4402
4403                  When you want to send a bunch of files to someone, you can run  the
4404                  _\bv_\bi_\ba_\bm_\ba_\bi_\bl shell script, which is similar the tarmail command:
4405
4406                       /usr/bs/mh-6.8/lib/viamail mailpath "subject" files ...
4407
4408                  _\bv_\bi_\ba_\bm_\ba_\bi_\bl will archive the directories/files you name  with  _\bt_\ba_\br (1),
4409                  and  then  mail  the  compressed archive to the `mailpath' with the
4410                  given `subject'.  The archive will be automatically split  up  into
4411                  as many messages as necessary in order to get past most mailers.
4412
4413                  Sometimes you want _\bv_\bi_\ba_\bm_\ba_\bi_\bl to pause after posting  a  partial  mes-
4414                  sage.   This  is usually the case when you are running _\bs_\be_\bn_\bd_\bm_\ba_\bi_\bl and
4415                  expect to generate  a  lot  of  partial  messages.   If  the  first
4416
4417             [mh.6]                           MH.6.8                      UCI version
4418
4419
4420
4421
4422
4423
4424
4425
4426
4427             MHN(1)                            -67-                            MHN(1)
4428
4429
4430                  argument  given  to  _\bv_\bi_\ba_\bm_\ba_\bi_\bl  starts with a dash, then it is inter-
4431                  preted as the number of seconds to pause in between postings, e.g.,
4432
4433                       /usr/bs/mh-6.8/lib/viamail -300 mailpath "subject" files ...
4434
4435                  will pause 5 minutes in between each posting.
4436
4437                  When these messages are received, invoke _\bm_\bh_\bn once, with the list of
4438                  messages,  and  the  `-store'  command.   The _\bm_\bh_\bn program will then
4439                  store exactly one message containing the archive.  You can then use
4440                  `-show'  to  find out what's inside; possibly  followed by `-store'
4441                  to  write  the  archive  to  a  file  where  you  can  subsequently
4442                  uncompress and untar it, e.g.,
4443
4444                       % mhn -list all
4445                        msg part  type/subtype             size description
4446                          1       message/partial           47K part 1 of 4
4447                          2       message/partial           47K part 2 of 4
4448                          3       message/partial           47K part 3 of 4
4449                          4       message/partial           18K part 4 of 4
4450                       % mhn -store all
4451                       % mhn -list -verbose last
4452                        msg part  type/subtype             size description
4453                          5       application/octet-stream 118K
4454                                    (extract with uncompress | tar xvpf -)
4455                                    type=tar
4456                                    conversions=x-compress
4457                       % mhn -show last
4458                        msg part  type/subtype             size description
4459                          5       application/octet-stream 118K
4460                       -- headers of message, followed by _\bt_\ba_\br listing appears here
4461                       % mhn -store last
4462                       % uncompress < 5.tar.Z | tar xvpf -
4463
4464                  Alternately, by using the `-auto' switch, _\bm_\bh_\bn will automatically do
4465
4466
4467
4468
4469
4470
4471
4472
4473
4474
4475
4476
4477
4478
4479
4480
4481
4482
4483             [mh.6]                           MH.6.8                      UCI version
4484
4485
4486
4487
4488
4489
4490
4491
4492
4493             MHN(1)                            -68-                            MHN(1)
4494
4495
4496                  the extraction for you, e.g.,
4497
4498                       % mhn -list all
4499                        msg part  type/subtype             size description
4500                          1       message/partial           47K part 1 of 4
4501                          2       message/partial           47K part 2 of 4
4502                          3       message/partial           47K part 3 of 4
4503                          4       message/partial           18K part 4 of 4
4504                       % mhn -store all
4505                       % mhn -list -verbose last
4506                        msg part  type/subtype             size description
4507                          5       application/octet-stream 118K
4508                                    (extract with uncompress | tar xvpf -)
4509                                    type=tar
4510                                    conversions=x-compress
4511                       % mhn -show last
4512                        msg part  type/subtype             size description
4513                          5       application/octet-stream 118K
4514                       -- headers of message, followed by _\bt_\ba_\br listing appears here
4515                       % mhn -store -auto last
4516                       -- _\bt_\ba_\br listing appears here as files are extracted
4517
4518                  As the second _\bt_\ba_\br listing is generated, the files are extracted.  A
4519                  prudent  user  will never put `-auto' in the .mh_profile file.  The
4520                  correct procedure is to first use `-show', to find out what will be
4521                  extracted.   Then  _\bm_\bh_\bn can be invoked with  `-store' and `-auto' to
4522                  perform the extraction.
4523
4524
4525               _\bU_\bs_\be_\br _\bE_\bn_\bv_\bi_\br_\bo_\bn_\bm_\be_\bn_\bt
4526
4527                  Because the display environment in which _\bm_\bh_\bn operates may vary  for
4528                  a  user,  _\bm_\bh_\bn  will  look  for  the  environment variable $MHN.  If
4529                  present, this specifies the name  of  an  additional  user  profile
4530                  which  should  be read.  Hence, when a user logs in on a particular
4531                  display device, this environment variable should be set to refer to
4532                  a  file containing definitions useful for the display device.  Nor-
4533                  mally, only entries of the form
4534
4535                       mhn-show-<type>/<subtype>
4536                       mhn-show-<type>
4537
4538                  need be present.  Finally, _\bm_\bh_\bn will attempt to  consult  one  other
4539                  additional user profile, e.g.,
4540
4541                       /usr/bs/mh-6.8/lib/mhn_defaults
4542
4543                  which is created automatically during MH installation.
4544
4545
4546
4547
4548
4549             [mh.6]                           MH.6.8                      UCI version
4550
4551
4552
4553
4554
4555
4556
4557
4558
4559             MHN(1)                            -69-                            MHN(1)
4560
4561
4562             _\bF_\bi_\bl_\be_\bs
4563                  $HOME/.mh_profile                    The user profile
4564                  $MHN                                 Additional profile entries
4565                  /usr/bs/mh-6.8/lib/mhn_defaults      System-default profile entries
4566                  /usr/bs/mh-6.8/lib/mhl.headers       The headers template
4567
4568
4569             _\bP_\br_\bo_\bf_\bi_\bl_\be _\bC_\bo_\bm_\bp_\bo_\bn_\be_\bn_\bt_\bs
4570                  Path:                To determine the user's MH directory
4571                  Current-Folder:      To find the default current folder
4572                  mhlproc:             Default program to display message headers
4573                  mhn-access-ftp:      Program to retrieve contents via FTP
4574                  mhn-cache            Directory to store cached external contents
4575                  mhn-charset-<charset>Template for environment to  render  character
4576                  sets
4577                  mhn-compose-<type>*  Template for composing contents
4578                  mhn-show-<type>*     Template for displaying contents
4579                  mhn-storage          Directory to store contents
4580                  mhn-store-<type>*    Template for storing contents
4581                  moreproc:            Default program to display text/plain content
4582
4583
4584             _\bS_\be_\be _\bA_\bl_\bs_\bo
4585                  mhl(1)
4586                  _\bM_\bI_\bM_\bE: _\bM_\be_\bc_\bh_\ba_\bn_\bi_\bs_\bm_\bs _\bf_\bo_\br _\bS_\bp_\be_\bc_\bi_\bf_\by_\bi_\bn_\bg _\ba_\bn_\bd _\bD_\be_\bs_\bc_\br_\bi_\bb_\bi_\bn_\bg _\bt_\bh_\be _\bF_\bo_\br_\bm_\ba_\bt _\bo_\bf _\bI_\bn_\bt_\be_\br-
4587                  _\bn_\be_\bt _\bM_\be_\bs_\bs_\ba_\bg_\be _\bB_\bo_\bd_\bi_\be_\bs (RFC 1341),
4588                  _\bP_\br_\bo_\bp_\bo_\bs_\be_\bd _\bS_\bt_\ba_\bn_\bd_\ba_\br_\bd _\bf_\bo_\br _\bM_\be_\bs_\bs_\ba_\bg_\be _\bE_\bn_\bc_\ba_\bp_\bs_\bu_\bl_\ba_\bt_\bi_\bo_\bn (RFC 934).
4589
4590
4591             _\bD_\be_\bf_\ba_\bu_\bl_\bt_\bs
4592                  `+folder' defaults to the current folder
4593                  `-noauto'
4594                  `-noebcdicsafe'
4595                  `-form mhl.headers'
4596                  `-headers'
4597                  `-realsize'
4598                  `-rfc934mode'
4599                  `-noserialonly'
4600                  `-show'
4601                  `-noverbose'
4602
4603
4604             _\bC_\bo_\bn_\bt_\be_\bx_\bt
4605                  If a folder is given, it will become the current folder.  The  last
4606                  message selected will become the current message.
4607
4608
4609             _\bB_\bu_\bg_\bs
4610                  Partial messages contained  within  a  multipart  content  are  not
4611                  reassembled with the `-store' switch.
4612
4613
4614
4615             [mh.6]                           MH.6.8                      UCI version
4616
4617
4618
4619
4620
4621
4622
4623
4624
4625             MHOOK(1)                          -70-                          MHOOK(1)
4626
4627
4628             _\bN_\bA_\bM_\bE
4629                  mhook, rcvdist, rcvpack, rcvtty  - MH receive-mail hooks
4630
4631             _\bS_\bY_\bN_\bO_\bP_\bS_\bI_\bS
4632                  /usr/bs/mh-6.8/lib/rcvdist [-form formfile] [switches for _\bp_\bo_\bs_\bt_\bp_\br_\bo_\bc]
4633                       address ...  [-help]
4634
4635                  /usr/bs/mh-6.8/lib/rcvpack file [-help]
4636
4637                  /usr/bs/mh-6.8/lib/rcvtty [command] [-form formatfile]
4638                       [-format string] [-bell] [-nobell] [-newline] [-nonewline]
4639                       [-biff] [-help]
4640
4641             _\bD_\bE_\bS_\bC_\bR_\bI_\bP_\bT_\bI_\bO_\bN
4642
4643                  A receive-mail hook is a program that is run whenever you receive a
4644                  mail message.  You do NOT invoke the hook yourself, rather the hook
4645                  is invoked on your behalf by your system's Message Transport Agent.
4646                  See _\bs_\bl_\bo_\bc_\ba_\bl (1) for details on how to activate receive-mail hooks on
4647                  your system.
4648
4649                  Four programs are  currently  available  as  part  of  _\bM_\bH,  _\br_\bc_\bv_\bd_\bi_\bs_\bt
4650                  (redistribute  incoming messages to additional recipients), _\br_\bc_\bv_\bp_\ba_\bc_\bk
4651                  (save incoming messages in a _\bp_\ba_\bc_\bk_\bf'd file), and _\br_\bc_\bv_\bt_\bt_\by (notify user
4652                  of   incoming  messages).   The  fourth  program,  _\br_\bc_\bv_\bs_\bt_\bo_\br_\be (1)  is
4653                  described separately.  They all reside in  the  /_\bu_\bs_\br/_\bb_\bs/_\bm_\bh-_\b6._\b8/_\bl_\bi_\bb/
4654                  directory.
4655
4656                  The _\br_\bc_\bv_\bd_\bi_\bs_\bt program will resend a copy of the message to all of the
4657                  addresses  listed  on  its command line.  It uses the format string
4658                  facility described in _\bm_\bh-_\bf_\bo_\br_\bm_\ba_\bt (5).
4659
4660                  The _\br_\bc_\bv_\bp_\ba_\bc_\bk program will append a copy of the message to  the  file
4661                  listed  on  its  command  line.  Its use is obsoleted by the "file"
4662                  action of _\bs_\bl_\bo_\bc_\ba_\bl.
4663
4664                  The _\br_\bc_\bv_\bt_\bt_\by program executes the named file with the message as  its
4665                  standard input, and writes the resulting output on your terminal.
4666
4667                  If no file is specified,  or  is  bogus,  etc.,  then  _\br_\bc_\bv_\bt_\bt_\by  will
4668                  instead    write    a    one-line   scan   listing.    Either   the
4669                  `-form formatfile' or `-format string' option may be used to  over-
4670                  ride  the  default output format (see _\bm_\bh-_\bf_\bo_\br_\bm_\ba_\bt (5)).  A newline is
4671                  output before the message output, and the  terminal  bell  is  rung
4672                  after  the  output.   The  `-nonewline'  and `-nobell' options will
4673                  inhibit these functions.
4674
4675                  In addition to the  standard  _\bm_\bh-_\bf_\bo_\br_\bm_\ba_\bt (5)  escapes,  _\br_\bc_\bv_\bt_\bt_\by  also
4676                  recognizes the following additional _\bc_\bo_\bm_\bp_\bo_\bn_\be_\bn_\bt escapes:
4677
4678
4679
4680
4681             [mh.6]                           MH.6.8                      UCI version
4682
4683
4684
4685
4686
4687
4688
4689
4690
4691             MHOOK(1)                          -71-                          MHOOK(1)
4692
4693
4694                  _\bE_\bs_\bc_\ba_\bp_\be    _\bR_\be_\bt_\bu_\br_\bn_\bs  _\bD_\be_\bs_\bc_\br_\bi_\bp_\bt_\bi_\bo_\bn
4695                  body      string   the (compressed) first part of the body
4696                  dtimenow  date     the current date
4697                  folder    string   the name of the current folder
4698
4699                  Normally, _\br_\bc_\bv_\bt_\bt_\by obeys write permission  as  granted  by  _\bm_\be_\bs_\bg (1).
4700                  With  the  `-biff' option, _\br_\bc_\bv_\bt_\bt_\by will obey the notification status
4701                  set by _\bb_\bi_\bf_\bf (1) instead.  If the terminal access daemon  (TTYD)  is
4702                  available  on  your system, then _\br_\bc_\bv_\bt_\bt_\by will give its output to the
4703                  daemon for output instead of writing on the user's terminal.
4704
4705             _\bF_\bi_\bl_\be_\bs
4706                  /usr/bs/mh-6.8/lib/mtstailor         tailor file
4707                  $HOME/.maildelivery                  The file controlling local delivery
4708                  /usr/bs/mh-6.8/lib/maildelivery      Rather than the standard file
4709
4710
4711             _\bS_\be_\be _\bA_\bl_\bs_\bo
4712                  rcvstore (1), mh-format(5), slocal(1)
4713
4714
4715             _\bB_\bu_\bg_\bs
4716                  Only two return codes are meaningful, others should be.
4717
4718
4719
4720
4721
4722
4723
4724
4725
4726
4727
4728
4729
4730
4731
4732
4733
4734
4735
4736
4737
4738
4739
4740
4741
4742
4743
4744
4745
4746
4747             [mh.6]                           MH.6.8                      UCI version
4748
4749
4750
4751
4752
4753
4754
4755
4756
4757             MHPARAM(1)                        -72-                        MHPARAM(1)
4758
4759
4760             _\bN_\bA_\bM_\bE
4761                  mhparam - print MH profile components
4762
4763             _\bS_\bY_\bN_\bO_\bP_\bS_\bI_\bS
4764                  mhparam [components] [-all] [-component] [-nocomponent] [-help]
4765
4766             _\bD_\bE_\bS_\bC_\bR_\bI_\bP_\bT_\bI_\bO_\bN
4767
4768                  _\bM_\bh_\bp_\ba_\br_\ba_\bm writes the value of the specified profile component to  the
4769                  standard output separated by newlines.  If the profile component is
4770                  not present, the default value (or nothing if there is no  default)
4771                  is printed.
4772
4773                  If more than one component is specified in the  `components'  list,
4774                  the  component  value is preceded by the component name.  If `-com-
4775                  ponent' is specified, the component name  is  displayed  even  when
4776                  only  one  component is specified.  If `-nocomponent' is specified,
4777                  the component name is not displayed even when more  than  one  com-
4778                  ponent is specified.
4779
4780                  If `-all' is specified,  all  components  if  the  MH  profile  are
4781                  displayed and other arguments are ignored.
4782
4783                  Examples:
4784
4785                       % mhparam path
4786                       Mail
4787
4788                       % mhparam mhlproc
4789                       /usr/bs/mh-6.8/lib/mhl
4790
4791                       % mhparam -component path
4792                       Path:       Mail
4793
4794                       % mhparam AliasFile rmmproc
4795                       AliasFile:  aliases
4796                       rmmproc:    rmmproc
4797
4798                       % mhparam -nocomponent AliasFile rmmproc
4799                       aliases
4800                       rmmproc
4801
4802                  _\bM_\bh_\bp_\ba_\br_\ba_\bm is also useful in back-quoted operations:
4803
4804                       % fgrep cornell.edu `mhpath +`/`mhparam aliasfile`
4805
4806
4807             _\bF_\bi_\bl_\be_\bs
4808                  $HOME/.mh_profile                    The user profile
4809
4810
4811
4812
4813             [mh.6]                           MH.6.8                      UCI version
4814
4815
4816
4817
4818
4819
4820
4821
4822
4823             MHPARAM(1)                        -73-                        MHPARAM(1)
4824
4825
4826             _\bS_\be_\be _\bA_\bl_\bs_\bo
4827                  mh-profile(5)
4828
4829
4830             _\bD_\be_\bf_\ba_\bu_\bl_\bt_\bs
4831                  `-nocomponent' if only one component is specified
4832                  `-component' if more than one component is specified
4833                  `components' defaults to none
4834
4835
4836             _\bC_\bo_\bn_\bt_\be_\bx_\bt
4837                  None
4838
4839
4840
4841
4842
4843
4844
4845
4846
4847
4848
4849
4850
4851
4852
4853
4854
4855
4856
4857
4858
4859
4860
4861
4862
4863
4864
4865
4866
4867
4868
4869
4870
4871
4872
4873
4874
4875
4876
4877
4878
4879             [mh.6]                           MH.6.8                      UCI version
4880
4881
4882
4883
4884
4885
4886
4887
4888
4889             MHPATH(1)                         -74-                         MHPATH(1)
4890
4891
4892             _\bN_\bA_\bM_\bE
4893                  mhpath - print full pathnames of MH messages and folders
4894
4895             _\bS_\bY_\bN_\bO_\bP_\bS_\bI_\bS
4896                  mhpath [+folder] [msgs] [-help]
4897
4898             _\bD_\bE_\bS_\bC_\bR_\bI_\bP_\bT_\bI_\bO_\bN
4899
4900                  _\bM_\bh_\bp_\ba_\bt_\bh expands and sorts the message list  `msgs'  and  writes  the
4901                  full  pathnames of the messages to the standard output separated by
4902                  newlines.  If no `msgs' are specified, _\bm_\bh_\bp_\ba_\bt_\bh  outputs  the  folder
4903                  pathname  instead.   If  the  only argument is `+', your MH _\bP_\ba_\bt_\bh is
4904                  output; this can be useful is shell scripts.
4905
4906                  Contrasted with other MH commands, a message argument to _\bm_\bh_\bp_\ba_\bt_\bh may
4907                  often be intended for _\bw_\br_\bi_\bt_\bi_\bn_\bg.  Because of this:
4908
4909                  1) the name "new" has been added to _\bm_\bh_\bp_\ba_\bt_\bh's list of reserved  mes-
4910                  sage  names (the others are "first", "last", "prev", "next", "cur",
4911                  and "all").  The new message is equivalent to the message after the
4912                  last  message  in a folder (and equivalent to 1 in a folder without
4913                  messages).  The "new" message may not be used as part of a  message
4914                  range.
4915
4916                  2) Within a message list, the following designations may  refer  to
4917                  messages that do not exist: a single numeric message name, the sin-
4918                  gle message name "cur", and (obviously)  the  single  message  name
4919                  "new".   All  other message designations must refer to at least one
4920                  existing message.
4921
4922                  3) An empty folder is not in itself an error.
4923
4924                  Message numbers greater than the  highest  existing  message  in  a
4925                  folder  as  part  of a range designation are replaced with the next
4926                  free message number.
4927
4928                  Examples: The current folder foo contains messages 3 5 6.   Cur  is
4929                  4.
4930
4931                       % mhpath
4932                       /r/phyl/Mail/foo
4933
4934                       % mhpath all
4935                       /r/phyl/Mail/foo/3
4936                       /r/phyl/Mail/foo/5
4937                       /r/phyl/Mail/foo/6
4938
4939                       % mhpath 2001
4940                       /r/phyl/Mail/foo/7
4941
4942                       % mhpath 1-2001
4943                       /r/phyl/Mail/foo/3
4944
4945             [mh.6]                           MH.6.8                      UCI version
4946
4947
4948
4949
4950
4951
4952
4953
4954
4955             MHPATH(1)                         -75-                         MHPATH(1)
4956
4957
4958                       /r/phyl/Mail/foo/5
4959                       /r/phyl/Mail/foo/6
4960
4961                       % mhpath new
4962                       /r/phyl/Mail/foo/7
4963
4964                       % mhpath last new
4965                       /r/phyl/Mail/foo/6
4966                       /r/phyl/Mail/foo/7
4967
4968                       % mhpath last-new
4969                       bad message list "last-new".
4970
4971                       % mhpath cur
4972                       /r/phyl/Mail/foo/4
4973
4974                       % mhpath 1-2
4975                       no messages in range "1-2".
4976
4977                       % mhpath first:2
4978                       /r/phyl/Mail/foo/3
4979                       /r/phyl/Mail/foo/5
4980
4981                       % mhpath 1 2
4982                       /r/phyl/Mail/foo/1
4983                       /r/phyl/Mail/foo/2
4984
4985                  _\bM_\bH_\bp_\ba_\bt_\bh is also useful in back-quoted operations:
4986
4987                       % cd `mhpath +inbox`
4988
4989                       % echo `mhpath +`
4990                       /r/phyl/Mail
4991
4992             _\bF_\bi_\bl_\be_\bs
4993                  $HOME/.mh_profile                    The user profile
4994
4995
4996             _\bP_\br_\bo_\bf_\bi_\bl_\be _\bC_\bo_\bm_\bp_\bo_\bn_\be_\bn_\bt_\bs
4997                  Path:                To determine the user's MH directory
4998                  Current-Folder:      To find the default current folder
4999
5000
5001             _\bS_\be_\be _\bA_\bl_\bs_\bo
5002                  folder(1)
5003
5004
5005             _\bD_\be_\bf_\ba_\bu_\bl_\bt_\bs
5006                  `+folder' defaults to the current folder
5007                  `msgs' defaults to none
5008
5009
5010
5011             [mh.6]                           MH.6.8                      UCI version
5012
5013
5014
5015
5016
5017
5018
5019
5020
5021             MHPATH(1)                         -76-                         MHPATH(1)
5022
5023
5024             _\bC_\bo_\bn_\bt_\be_\bx_\bt
5025                  None
5026
5027
5028             _\bB_\bu_\bg_\bs
5029                  Like all MH commands, _\bm_\bh_\bp_\ba_\bt_\bh expands and sorts  [msgs].   So  don't
5030                  expect
5031
5032                       mv `mhpath 501 500`
5033
5034                  to move 501 to 500.  Quite the reverse.  But
5035
5036                       mv `mhpath 501` `mhpath 500`
5037
5038                  will do the trick.
5039
5040                  Out of range message 0 is treated far more severely than large  out
5041                  of range message numbers.
5042
5043
5044
5045
5046
5047
5048
5049
5050
5051
5052
5053
5054
5055
5056
5057
5058
5059
5060
5061
5062
5063
5064
5065
5066
5067
5068
5069
5070
5071
5072
5073
5074
5075
5076
5077             [mh.6]                           MH.6.8                      UCI version
5078
5079
5080
5081
5082
5083
5084
5085
5086
5087             MSGCHK(1)                         -77-                         MSGCHK(1)
5088
5089
5090             _\bN_\bA_\bM_\bE
5091                  msgchk - check for messages
5092
5093             _\bS_\bY_\bN_\bO_\bP_\bS_\bI_\bS
5094                  msgchk [-date] [-nodate] [-notify all/mail/nomail]
5095                       [-nonotify all/mail/nomail] [-host host] [-user user] [-apop]
5096                       [-noapop] [-rpop] [-norpop] [users ...] [-help]
5097
5098             _\bD_\bE_\bS_\bC_\bR_\bI_\bP_\bT_\bI_\bO_\bN
5099
5100                  The _\bm_\bs_\bg_\bc_\bh_\bk program checks all known mail drops for mail waiting for
5101                  you.  For those drops which have mail for you, _\bm_\bs_\bg_\bc_\bh_\bk will indicate
5102                  if it believes that you have seen the mail in question before.
5103
5104                  The `-notify type' switch indicates under what circumstances _\bm_\bs_\bg_\bc_\bh_\bk
5105                  should  produce a message.  The default is `-notify all' which says
5106                  that _\bm_\bs_\bg_\bc_\bh_\bk should always report the status of the users  maildrop.
5107                  Other  values  for  `type'  include  `mail'  which says that _\bm_\bs_\bg_\bc_\bh_\bk
5108                  should report the status of waiting mail; and, `nomail' which  says
5109                  that  _\bm_\bs_\bg_\bc_\bh_\bk  should  report  the  status  of empty maildrops.  The
5110                  `-nonotify type' switch has the inverted sense, so  `-nonotify all'
5111                  directs  _\bm_\bs_\bg_\bc_\bh_\bk  to  never report the status of maildrops.  This is
5112                  useful if the  user  wishes  to  check  _\bm_\bs_\bg_\bc_\bh_\bk's  exit  status.   A
5113                  non-zero  exit  status  indicates  that mail was not waiting for at
5114                  least one of the indicated users.
5115
5116                  If _\bm_\bs_\bg_\bc_\bh_\bk produces output, then the `-date' switch  directs  _\bm_\bs_\bg_\bc_\bh_\bk
5117                  to  print  out  the  last date mail was read, if this can be deter-
5118                  mined.
5119
5120                  If the local host  is  configured  as  a  POP  client,  or  if  the
5121                  `-host host'  switch  is  given,  _\bm_\bs_\bg_\bc_\bh_\bk will query the POP service
5122                  host as to the status of mail waiting.  If the `-user user'  switch
5123                  is  not given, then the current username is used.  Normally, _\bm_\bs_\bg_\bc_\bh_\bk
5124                  will prompt for a password to use.  However, if the `-apop'  switch
5125                  is  given,  _\bm_\bs_\bg_\bc_\bh_\bk will generate authentication credentials to pro-
5126                  vide for origin authentication and replay protection, but which  do
5127                  not involve sending a password in the clear over the network.  Oth-
5128                  erwise, if the `-rpop' switch is given, then _\bm_\bs_\bg_\bc_\bh_\bk will try to use
5129                  a "trusted" connection (ala the BSD r-commands).
5130
5131             _\bF_\bi_\bl_\be_\bs
5132                  $HOME/.mh_profile                    The user profile
5133                  /usr/bs/mh-6.8/lib/mtstailor         tailor file
5134                  /usr/spool/mail/$USER                Location of mail drop
5135
5136
5137             _\bP_\br_\bo_\bf_\bi_\bl_\be _\bC_\bo_\bm_\bp_\bo_\bn_\be_\bn_\bt_\bs
5138                  None
5139
5140
5141
5142
5143             [mh.6]                           MH.6.8                      UCI version
5144
5145
5146
5147
5148
5149
5150
5151
5152
5153             MSGCHK(1)                         -78-                         MSGCHK(1)
5154
5155
5156             _\bS_\be_\be _\bA_\bl_\bs_\bo
5157                  _\bP_\bo_\bs_\bt _\bO_\bf_\bf_\bi_\bc_\be _\bP_\br_\bo_\bt_\bo_\bc_\bo_\bl - _\bv_\be_\br_\bs_\bi_\bo_\bn _\b3 (aka RFC-1081),
5158                  inc(1)
5159
5160
5161             _\bD_\be_\bf_\ba_\bu_\bl_\bt_\bs
5162                  `user' defaults to the current user
5163                  `-date'
5164                  `-notify all'
5165                  `-rpop'
5166
5167
5168             _\bC_\bo_\bn_\bt_\be_\bx_\bt
5169                  None
5170
5171
5172
5173
5174
5175
5176
5177
5178
5179
5180
5181
5182
5183
5184
5185
5186
5187
5188
5189
5190
5191
5192
5193
5194
5195
5196
5197
5198
5199
5200
5201
5202
5203
5204
5205
5206
5207
5208
5209             [mh.6]                           MH.6.8                      UCI version
5210
5211
5212
5213
5214
5215
5216
5217
5218
5219             MSH(1)                            -79-                            MSH(1)
5220
5221
5222             _\bN_\bA_\bM_\bE
5223                  msh - MH shell (and BBoard reader)
5224
5225             _\bS_\bY_\bN_\bO_\bP_\bS_\bI_\bS
5226                  msh [-prompt string] [-scan] [-noscan] [-topcur] [-notopcur] [file]
5227                       [-help]
5228
5229             _\bD_\bE_\bS_\bC_\bR_\bI_\bP_\bT_\bI_\bO_\bN
5230
5231                  _\bm_\bs_\bh is an interactive program that implements a subset of the  nor-
5232                  mal _\bM_\bH commands operating on a single file in _\bp_\ba_\bc_\bk_\bf'd format.  That
5233                  is, _\bm_\bs_\bh is used to read a file that contains a number of  messages,
5234                  as  opposed  to the standard _\bM_\bH style of reading a number of files,
5235                  each file being a separate message in a folder.  _\bm_\bs_\bh's chief advan-
5236                  tage is that the normal _\bM_\bH style does not allow a file to have more
5237                  than one message in it.  Hence, _\bm_\bs_\bh is ideal for  reading  _\bB_\bB_\bo_\ba_\br_\bd_\bs,
5238                  as  these  files are delivered by the transport system in this for-
5239                  mat.  In addition, _\bm_\bs_\bh can be used on other files, such as  message
5240                  archives  which  have been _\bp_\ba_\bc_\bked (see _\bp_\ba_\bc_\bk_\bf (1)).  Finally, _\bm_\bs_\bh is
5241                  an excellent _\bM_\bH tutor.  As the only commands available to the  user
5242                  are  _\bM_\bH  commands,  this  allows _\bM_\bH beginners to concentrate on how
5243                  commands to _\bM_\bH are formed and (more or less) what they mean.
5244
5245                  When invoked, _\bm_\bs_\bh reads the named file, and enters a command  loop.
5246                  The  user  may type most of the normal _\bM_\bH commands.  The syntax and
5247                  semantics of these commands typed to _\bm_\bs_\bh are identical to their  _\bM_\bH
5248                  counterparts.   In  cases  where  the nature of _\bm_\bs_\bh would be incon-
5249                  sistent (e.g., specifying a `+folder' with some commands), _\bm_\bs_\bh will
5250                  duly inform the user.  The commands that _\bm_\bs_\bh currently supports (in
5251                  some slightly modified or restricted forms) are:
5252
5253                       ali
5254                       burst
5255                       comp
5256                       dist
5257                       folder
5258                       forw
5259                       inc
5260                       mark
5261                       mhmail
5262                       mhn
5263                       msgchk
5264                       next
5265                       packf
5266                       pick
5267                       prev
5268                       refile
5269                       repl
5270                       rmm
5271                       scan
5272                       send
5273                       show
5274
5275             [mh.6]                           MH.6.8                      UCI version
5276
5277
5278
5279
5280
5281
5282
5283
5284
5285             MSH(1)                            -80-                            MSH(1)
5286
5287
5288                       sortm
5289                       whatnow
5290                       whom
5291
5292                  In addition, _\bm_\bs_\bh has a "help" command which gives a brief overview.
5293                  To  terminate  _\bm_\bs_\bh, type CTRL-D, or use the "quit" command.  If _\bm_\bs_\bh
5294                  is being invoked from _\bb_\bb_\bc, then typing CTRL-D will also tell _\bb_\bb_\bc to
5295                  exit as well, while using the "quit" command will return control to
5296                  _\bb_\bb_\bc, and _\bb_\bb_\bc will continue examining the list of BBoards that it is
5297                  scanning.
5298
5299                  If the file is writable and has been modified,  then  using  "quit"
5300                  will query the user if the file should be updated.
5301
5302                  The `-prompt string' switch sets the prompting string for _\bm_\bs_\bh.
5303
5304                  You may wish to use an alternate _\bM_\bH profile for the  commands  that
5305                  _\bm_\bs_\bh  executes; see _\bm_\bh-_\bp_\br_\bo_\bf_\bi_\bl_\be (5) for details about the $MH envari-
5306                  able.
5307
5308                  When invoked from _\bb_\bb_\bc, two special features are enabled: First, the
5309                  `-scan' switch directs _\bm_\bs_\bh to do a `scan unseen' on start-up if new
5310                  items are present in the BBoard.  This feature is  best  used  from
5311                  _\bb_\bb_\bc,  which  correctly sets the stage.  Second, the _\bm_\ba_\br_\bk command in
5312                  _\bm_\bs_\bh acts specially when you are reading a BBoard,  since  _\bm_\bs_\bh  will
5313                  consult the sequence "unseen" in determining what messages you have
5314                  actually read.  When _\bm_\bs_\bh exits, it reports this information to _\bb_\bb_\bc.
5315                  In  addition,  if  you give the _\bm_\ba_\br_\bk command with no arguments, _\bm_\bs_\bh
5316                  will interpret  it  as  `mark -sequence unseen -delete -nozero all'
5317                  Hence,  to discard all of the messages in the current BBoard you're
5318                  reading, just use the _\bm_\ba_\br_\bk command with no arguments.
5319
5320                  Normally, the "exit" command is identical to the "quit" command  in
5321                  _\bm_\bs_\bh.   When  run  under _\bb_\bb_\bc however, "exit" directs _\bm_\bs_\bh to mark all
5322                  messages as seen and then "quit".  For speedy type-in, this command
5323                  is often abbreviated as just "e".
5324
5325                  When invoked from _\bv_\bm_\bh, another  special  feature  is  enabled:  The
5326                  `topcur' switch directs _\bm_\bs_\bh to have the current message "track" the
5327                  top line of the _\bv_\bm_\bh scan window.  Normally,  _\bm_\bs_\bh  has  the  current
5328                  message  "track" the center of the window (under `-notopcur', which
5329                  is the default).
5330
5331                  _\bm_\bs_\bh supports an output redirection facility.  Commands may be  fol-
5332                  lowed by one of
5333
5334                       > _\bf_\bi_\bl_\be     write output to _\bf_\bi_\bl_\be
5335                       >> _\bf_\bi_\bl_\be    append output to _\bf_\bi_\bl_\be
5336                       | _\bc_\bo_\bm_\bm_\ba_\bn_\bd  pipe output to UNIX _\bc_\bo_\bm_\bm_\ba_\bn_\bd
5337
5338                  If _\bf_\bi_\bl_\be starts with a `~' (tilde), then a _\bc_\bs_\bh-like expansion  takes
5339                  place.  Note that _\bc_\bo_\bm_\bm_\ba_\bn_\bd is interpreted by _\bs_\bh (1).  Also note that
5340
5341             [mh.6]                           MH.6.8                      UCI version
5342
5343
5344
5345
5346
5347
5348
5349
5350
5351             MSH(1)                            -81-                            MSH(1)
5352
5353
5354                  _\bm_\bs_\bh does NOT support history substitutions, variable substitutions,
5355                  or alias substitutions.
5356
5357                  When parsing commands to the left of any  redirection  symbol,  _\bm_\bs_\bh
5358                  will honor `\' (back-slash) as the quote next-character symbol, and
5359                  `"' (double-quote)  as  quote-word  delimiters.   All  other  input
5360                  tokens are separated by whitespace (spaces and tabs).
5361
5362             _\bF_\bi_\bl_\be_\bs
5363                  $HOME/.mh_profile                    The user profile
5364                  /usr/bs/mh-6.8/lib/mtstailor         tailor file
5365
5366
5367             _\bP_\br_\bo_\bf_\bi_\bl_\be _\bC_\bo_\bm_\bp_\bo_\bn_\be_\bn_\bt_\bs
5368                  Path:                To determine the user's MH directory
5369                  Msg-Protect:         To set mode when creating a new `file'
5370                  fileproc:            Program to file messages
5371                  showproc:            Program to show messages
5372
5373
5374             _\bS_\be_\be _\bA_\bl_\bs_\bo
5375                  bbc(1)
5376
5377
5378             _\bD_\be_\bf_\ba_\bu_\bl_\bt_\bs
5379                  `file' defaults to "./msgbox"
5380                  `-prompt (msh) '
5381                  `-noscan'
5382                  `-notopcur'
5383
5384
5385             _\bC_\bo_\bn_\bt_\be_\bx_\bt
5386                  None
5387
5388
5389
5390
5391
5392
5393
5394
5395
5396
5397
5398
5399
5400
5401
5402
5403
5404
5405
5406
5407             [mh.6]                           MH.6.8                      UCI version
5408
5409
5410
5411
5412
5413
5414
5415
5416
5417             MSH(1)                            -82-                            MSH(1)
5418
5419
5420             _\bB_\bu_\bg_\bs
5421                  The argument to the `-prompt' switch must be interpreted as a  sin-
5422                  gle  token by the shell that invokes _\bm_\bs_\bh.  Therefore, one must usu-
5423                  ally place the argument to this switch inside double-quotes.
5424
5425                  There is a strict limit of messages  per  file  in  _\bp_\ba_\bc_\bk_\bf'd  format
5426                  which _\bm_\bs_\bh can handle.  Usually, this limit is 1000 messages.
5427
5428                  Please remember that _\bm_\bs_\bh is not the _\bC_\bS_\bh_\be_\bl_\bl, and that a lot  of  the
5429                  nice facilities provided by the latter are not present in the form-
5430                  er.
5431
5432                  In particular, _\bm_\bs_\bh does not understand back-quoting,  so  the  only
5433                  effective  way  to  use  _\bp_\bi_\bc_\bk  inside  _\bm_\bs_\bh  is  to  always  use the
5434                  `-seq select' switch.  Clever users of _\bM_\bH will put the line
5435
5436                       pick: -seq select -list
5437
5438                  in their .mh_profile file so that _\bp_\bi_\bc_\bk works equally well from both
5439                  the shell and _\bm_\bs_\bh.
5440
5441                  _\bs_\bo_\br_\bt_\bm always uses "-noverbose" and if "-textfield field"  is  used,
5442                  "-limit 0".
5443
5444                  The _\bm_\bs_\bh program inherits most (if not all) of the bugs from the  _\bM_\bH
5445                  commands it implements.
5446
5447
5448
5449
5450
5451
5452
5453
5454
5455
5456
5457
5458
5459
5460
5461
5462
5463
5464
5465
5466
5467
5468
5469
5470
5471
5472
5473             [mh.6]                           MH.6.8                      UCI version
5474
5475
5476
5477
5478
5479
5480
5481
5482
5483             NEXT(1)                           -83-                           NEXT(1)
5484
5485
5486             _\bN_\bA_\bM_\bE
5487                  next - show the next message
5488
5489             _\bS_\bY_\bN_\bO_\bP_\bS_\bI_\bS
5490                  next [+folder] [-header] [-noheader] [-showproc program]
5491                       [-noshowproc] [switches for _\bs_\bh_\bo_\bw_\bp_\br_\bo_\bc] [-help]
5492
5493             _\bD_\bE_\bS_\bC_\bR_\bI_\bP_\bT_\bI_\bO_\bN
5494
5495                  _\bN_\be_\bx_\bt performs a _\bs_\bh_\bo_\bw on the  next  message  in  the  specified  (or
5496                  current)  folder.  Like _\bs_\bh_\bo_\bw, it passes any switches on to the pro-
5497                  gram _\bs_\bh_\bo_\bw_\bp_\br_\bo_\bc, which is called to list the message.   This  command
5498                  is  almost  exactly  equivalent to "show next".  Consult the manual
5499                  entry for _\bs_\bh_\bo_\bw (1) for all the details.
5500
5501             _\bF_\bi_\bl_\be_\bs
5502                  $HOME/.mh_profile                    The user profile
5503
5504
5505             _\bP_\br_\bo_\bf_\bi_\bl_\be _\bC_\bo_\bm_\bp_\bo_\bn_\be_\bn_\bt_\bs
5506                  Path:                To determine the user's MH directory
5507                  Current-Folder:      To find the default current folder
5508                  showproc:            Program to show the message
5509
5510
5511             _\bS_\be_\be _\bA_\bl_\bs_\bo
5512                  show(1), prev(1)
5513
5514
5515             _\bD_\be_\bf_\ba_\bu_\bl_\bt_\bs
5516                  `+folder' defaults to the current folder
5517                  `-header'
5518
5519
5520             _\bC_\bo_\bn_\bt_\be_\bx_\bt
5521                  If a folder is specified, it will become the current  folder.   The
5522                  message that is shown (i.e., the next message in sequence) will be-
5523                  come the current message.
5524
5525
5526             _\bB_\bu_\bg_\bs
5527                  _\bn_\be_\bx_\bt is really a link to the _\bs_\bh_\bo_\bw program.  As  a  result,  if  you
5528                  make  a  link  to  _\bn_\be_\bx_\bt and that link is not called _\bn_\be_\bx_\bt, your link
5529                  will  act  like  _\bs_\bh_\bo_\bw  instead.   To   circumvent   this,   add   a
5530                  profile-entry  for the link to your _\bM_\bH profile and add the argument
5531                  _\bn_\be_\bx_\bt to the entry.
5532
5533
5534
5535
5536
5537
5538
5539             [mh.6]                           MH.6.8                      UCI version
5540
5541
5542
5543
5544
5545
5546
5547
5548
5549             PACKF(1)                          -84-                          PACKF(1)
5550
5551
5552             _\bN_\bA_\bM_\bE
5553                  packf - compress an MH folder into a single file
5554
5555             _\bS_\bY_\bN_\bO_\bP_\bS_\bI_\bS
5556                  packf [+folder] [msgs] [-file name] [-help]
5557
5558             _\bD_\bE_\bS_\bC_\bR_\bI_\bP_\bT_\bI_\bO_\bN
5559
5560                  _\bP_\ba_\bc_\bk_\bf takes messages from a folder and  copies  them  to  a  single
5561                  file.  Each message in the file is separated by four CTRL-A's and a
5562                  newline (identical to the way messages are stored in your receiving
5563                  mail drop).  Messages packed can be unpacked using _\bi_\bn_\bc.
5564
5565                  If the _\bn_\ba_\bm_\be given to the `-file name' switch exists, then the  mes-
5566                  sages  specified will be appended to the end of the file, otherwise
5567                  the file will be created and the messages appended.
5568
5569             _\bF_\bi_\bl_\be_\bs
5570                  $HOME/.mh_profile                    The user profile
5571                  .msgbox.map                          A binary index of the file
5572
5573
5574             _\bP_\br_\bo_\bf_\bi_\bl_\be _\bC_\bo_\bm_\bp_\bo_\bn_\be_\bn_\bt_\bs
5575                  Path:                To determine the user's MH directory
5576                  Current-Folder:      To find the default current folder
5577                  Msg-Protect:         To set mode when creating a new `file'
5578
5579
5580             _\bS_\be_\be _\bA_\bl_\bs_\bo
5581                  inc(1)
5582
5583
5584             _\bD_\be_\bf_\ba_\bu_\bl_\bt_\bs
5585                  `+folder' defaults to the current folder
5586                  `msgs' defaults to all
5587                  `-file ./msgbox'
5588
5589
5590             _\bC_\bo_\bn_\bt_\be_\bx_\bt
5591                  If a folder is given, it will become the current folder.  The first
5592                  message packed will become the current message.
5593
5594
5595             _\bB_\bu_\bg_\bs
5596                  _\bP_\ba_\bc_\bk_\bf doesn't handle the old  UUCP-style  "mbox"  format  (used  by
5597                  _\bS_\be_\bn_\bd_\bM_\ba_\bi_\bl).   To  pack  messages  into  this  format, use the script
5598                  /_\bu_\bs_\br/_\bb_\bs/_\bm_\bh-_\b6._\b8/_\bl_\bi_\bb/_\bp_\ba_\bc_\bk_\bm_\bb_\bo_\bx.  Note that _\bp_\ba_\bc_\bk_\bm_\bb_\bo_\bx does not take  the
5599                  `-file' option of _\bp_\ba_\bc_\bk_\bf, and instead writes its output on _\bs_\bt_\bd_\bo_\bu_\bt.
5600
5601
5602
5603
5604
5605             [mh.6]                           MH.6.8                      UCI version
5606
5607
5608
5609
5610
5611
5612
5613
5614
5615             PICK(1)                           -85-                           PICK(1)
5616
5617
5618             _\bN_\bA_\bM_\bE
5619                  pick - select messages by content
5620
5621             _\bS_\bY_\bN_\bO_\bP_\bS_\bI_\bS
5622                  pick [+folder] [msgs] [-and ...] [-or ...] [-not ...]
5623                       [-lbrace ... -rbrace] [--component pattern] [-cc pattern]
5624                       [-date pattern] [-from pattern] [-search pattern]
5625                       [-subject pattern] [-to pattern] [-after date] [-before date]
5626                       [-datefield field] [-sequence name ...] [-public] [-nopublic]
5627                       [-zero] [-nozero] [-list] [-nolist] [-help]
5628
5629                  typically:
5630                       scan `pick -from jones`
5631                       pick -to holloway -sequence select
5632                       show `pick -before friday`
5633
5634             _\bD_\bE_\bS_\bC_\bR_\bI_\bP_\bT_\bI_\bO_\bN
5635
5636                  _\bP_\bi_\bc_\bk searches messages within a folder for the specified  contents,
5637                  and then identifies those messages.  Two types of search primitives
5638                  are available: pattern matching and date constraint operations.
5639
5640                  A modified _\bg_\br_\be_\bp(1) is used to perform the  matching,  so  the  full
5641                  regular  expression  (see _\be_\bd(1)) facility is available within `pat-
5642                  tern'.  With `-search', `pattern' is used directly,  and  with  the
5643                  others, the grep pattern constructed is:
5644
5645                       "component[ \t]*:.*pattern"
5646
5647                  This means that the pattern specified for a `-search' will be found
5648                  everywhere in the message, including the header and the body, while
5649                  the other pattern matching  requests  are  limited  to  the  single
5650                  specified component.  The expression
5651
5652                       `--component pattern'
5653
5654                  is a shorthand for specifying
5655
5656                       `-search "component[ \t]*:.*pattern" '
5657
5658                  It is used to pick a component which is not one  of  "To:",  "cc:",
5659                  "Date:",     "From:",     or    "Subject:".     An    example    is
5660                  `pick --reply-to pooh'.
5661
5662                  Pattern matching is performed on  a  per-line  basis.   Within  the
5663                  header  of the message, each component is treated as one long line,
5664                  but in the body, each line is separate.  Lower-case letters in  the
5665                  search  pattern  will  match either lower or upper case in the mes-
5666                  sage, while upper case will match only upper case.
5667
5668                  Note that since the `-date' switch is a pattern matching  operation
5669                  (as  described  above), to find messages sent on a certain date the
5670
5671             [mh.6]                           MH.6.8                      UCI version
5672
5673
5674
5675
5676
5677
5678
5679
5680
5681             PICK(1)                           -86-                           PICK(1)
5682
5683
5684                  pattern string must match the text of the "Date:" field of the mes-
5685                  sage.
5686
5687                  Independent of  any  pattern  matching  operations  requested,  the
5688                  switches `-after date' or `-before date' may also be used to intro-
5689                  duce date/time contraints on all of the messages.  By default,  the
5690                  "Date:"  field  is  consulted,  but  if another date yielding field
5691                  (such as "BB-Posted:" or  "Delivery-Date:")  should  be  used,  the
5692                  `-datefield field' switch may be used.
5693
5694                  With `-before' and `-after', _\bp_\bi_\bc_\bk  will  actually  parse  the  date
5695                  fields in each of the messages specified in `msgs' and compare them
5696                  to the date/time specified.  If `-after' is given, then only  those
5697                  messages  whose  "Date:"  field  value is chronologically after the
5698                  date specified will be considered.  The `-before' switch  specifies
5699                  the complimentary action.
5700
5701                  Both the `-after' and `-before' switches take legal 822-style  date
5702                  specifications  as  arguments.   _\bP_\bi_\bc_\bk  will default certain missing
5703                  fields so that the entire date need not be specified.  These fields
5704                  are  (in  order  of defaulting): timezone, time and timezone, date,
5705                  date and timezone.  All defaults are taken from the  current  date,
5706                  time, and timezone.
5707
5708                  In addition to 822-style dates, _\bp_\bi_\bc_\bk will also recognize any of the
5709                  days  of  the week ("sunday", "monday", and so on), and the special
5710                  dates "today", "yesterday" (24 hours ago), and "tomorrow" (24 hours
5711                  from  now).   All  days of the week are judged to refer to a day in
5712                  the past (e.g.,  telling  _\bp_\bi_\bc_\bk  "saturday"  on  a  "tuesday"  means
5713                  "last saturday" not "this saturday").
5714
5715                  Finally, in addition to these  special  specifications,  _\bp_\bi_\bc_\bk  will
5716                  also  honor a specification of the form "-dd", which means "dd days
5717                  ago".
5718
5719                  _\bP_\bi_\bc_\bk supports complex boolean operations on  the  searching  primi-
5720                  tives  with  the  `-and',  `-or', `-not', and `-lbrace ... -rbrace'
5721                  switches.  For example,
5722
5723                       pick -after yesterday -and
5724                            -lbrace -from freida -or -from fear -rbrace
5725
5726                  identifies messages recently sent by "frieda" or "fear".
5727
5728                  The matching primitives take precedence  over  the  `-not'  switch,
5729                  which in turn takes precedence over `-and' which in turn takes pre-
5730                  cedence over  `-or'.   To  override  the  default  precedence,  the
5731                  `-lbrace'  and `-rbrace' switches are provided, which act just like
5732                  opening and closing parentheses in logical expressions.
5733
5734                  If no search criteria are given, all the messages specified on  the
5735                  command line are selected (this defaults to "all").
5736
5737             [mh.6]                           MH.6.8                      UCI version
5738
5739
5740
5741
5742
5743
5744
5745
5746
5747             PICK(1)                           -87-                           PICK(1)
5748
5749
5750                  Once the search has been performed, if the `-list' switch is given,
5751                  the  message  numbers  of  the selected messages are written to the
5752                  standard output separated by newlines.  This  is  _\be_\bx_\bt_\br_\be_\bm_\be_\bl_\by  useful
5753                  for quickly generating arguments for other _\bM_\bH programs by using the
5754                  "backquoting" syntax of the shell.  For example, the command
5755
5756                       scan `pick +todo -after "31 Mar 83 0123 PST"`
5757
5758                  says to _\bs_\bc_\ba_\bn those messages in the indicated folder which meet  the
5759                  appropriate criterion.  Note that since _\bp_\bi_\bc_\bk 's context changes are
5760                  written out prior to _\bs_\bc_\ba_\bn 's invocation,  you  need  not  give  the
5761                  folder argument to _\bs_\bc_\ba_\bn as well.
5762
5763                  Regardless of the operation of the `-list' switch,  the  `-sequence
5764                  name' switch may be given once for each sequence the user wishes to
5765                  define.  For each sequence named, that sequence will be defined  to
5766                  mean exactly those messages selected by _\bp_\bi_\bc_\bk.  For example,
5767
5768                       pick -from frated -seq fred
5769
5770                  defines a new message sequence for the current folder called "fred"
5771                  which contains exactly those messages that were selected.
5772
5773                  Note that whenever _\bp_\bi_\bc_\bk processes  a  `-sequence name'  switch,  it
5774                  sets `-nolist'.
5775
5776                  By default, _\bp_\bi_\bc_\bk will zero the sequence  before  adding  it.   This
5777                  action  can be disabled with the `-nozero' switch, which means that
5778                  the messages selected by _\bp_\bi_\bc_\bk will be added to the sequence, if  it
5779                  already  exists,  and  any messages already a part of that sequence
5780                  will remain so.
5781
5782                  The `-public' and `-nopublic' switches are used by _\bp_\bi_\bc_\bk in the same
5783                  way _\bm_\ba_\br_\bk uses them.
5784
5785             _\bF_\bi_\bl_\be_\bs
5786                  $HOME/.mh_profile                    The user profile
5787
5788
5789             _\bP_\br_\bo_\bf_\bi_\bl_\be _\bC_\bo_\bm_\bp_\bo_\bn_\be_\bn_\bt_\bs
5790                  Path:                To determine the user's MH directory
5791                  Current-Folder:      To find the default current folder
5792
5793
5794             _\bS_\be_\be _\bA_\bl_\bs_\bo
5795                  mark(1)
5796
5797
5798
5799
5800
5801
5802
5803             [mh.6]                           MH.6.8                      UCI version
5804
5805
5806
5807
5808
5809
5810
5811
5812
5813             PICK(1)                           -88-                           PICK(1)
5814
5815
5816             _\bD_\be_\bf_\ba_\bu_\bl_\bt_\bs
5817                  `+folder' defaults to the current folder
5818                  `msgs' defaults to all
5819                  `-datefield date'
5820                  `-nopublic' if the folder is read-only, `-public' otherwise
5821                  `-zero'
5822                  `-list' is the default if no `-sequence', `-nolist' otherwise
5823
5824
5825             _\bC_\bo_\bn_\bt_\be_\bx_\bt
5826                  If a folder is given, it will become the current folder.
5827
5828
5829             _\bH_\bi_\bs_\bt_\bo_\br_\by
5830                  In previous versions of _\bM_\bH, the _\bp_\bi_\bc_\bk command would _\bs_\bh_\bo_\bw,  _\bs_\bc_\ba_\bn,  or
5831                  _\br_\be_\bf_\bi_\bl_\be  the  selected  messages.   This was rather "inverted logic"
5832                  from the UNIX point of view, so _\bp_\bi_\bc_\bk  was  changed  to  define  se-
5833                  quences  and  output  those  sequences.  Hence, _\bp_\bi_\bc_\bk can be used to
5834                  generate the arguments for all other _\bM_\bH commands, instead of giving
5835                  _\bp_\bi_\bc_\bk endless switches for invoking those commands itself.
5836
5837                  Also, previous versions of _\bp_\bi_\bc_\bk balked  if  you  didn't  specify  a
5838                  search  string or a date/time constraint.  The current version does
5839                  not, and merely matches the messages you specify.   This  lets  you
5840                  type something like:
5841
5842                       show `pick last:20 -seq fear`
5843
5844                  instead of typing
5845
5846                       mark -add -nozero -seq fear last:20
5847                       show fear
5848
5849                  Finally, timezones used to be ignored when  comparing  dates:  they
5850                  aren't any more.
5851
5852             _\bH_\be_\bl_\bp_\bf_\bu_\bl _\bH_\bi_\bn_\bt_\bs
5853
5854                  Use "pick sequence -list" to enumerate the messages in  a  sequence
5855                  (such as for use by a shell script).
5856
5857
5858
5859
5860
5861
5862
5863
5864
5865
5866
5867
5868
5869             [mh.6]                           MH.6.8                      UCI version
5870
5871
5872
5873
5874
5875
5876
5877
5878
5879             PICK(1)                           -89-                           PICK(1)
5880
5881
5882             _\bB_\bu_\bg_\bs
5883                  The argument to the `-after' and `-before' switches must be  inter-
5884                  preted  as  a  single token by the shell that invokes _\bp_\bi_\bc_\bk.  There-
5885                  fore, one must usually place the argument  to  this  switch  inside
5886                  double-quotes.  Furthermore, any occurance of `-datefield' must oc-
5887                  cur prior to the `-after' or `-before' switch it applies to.
5888
5889                  If _\bp_\bi_\bc_\bk is used in a back-quoted operation, such as
5890
5891                       scan `pick -from jones`
5892
5893                  and _\bp_\bi_\bc_\bk selects no messages (e.g., no messages are from  "jones"),
5894                  then  the  shell  will  still run the outer command (e.g., "scan").
5895                  Since no messages were matched, _\bp_\bi_\bc_\bk produced no  output,  and  the
5896                  argument given to the outer command as a result of backquoting _\bp_\bi_\bc_\bk
5897                  is empty.  In the case of _\bM_\bH programs, the outer command  now  acts
5898                  as  if  the  default `msg' or `msgs' should be used (e.g., "all" in
5899                  the case of  _\bs_\bc_\ba_\bn ).   To  prevent  this  unexpected  behavior,  if
5900                  `-list'  was  given,  and if its standard output is not a tty, then
5901                  _\bp_\bi_\bc_\bk outputs the illegal message number "0" when  it  fails.   This
5902                  lets the outer command fail gracefully as well.
5903
5904                  The pattern syntax "[l-r]" is not  supported;  each  letter  to  be
5905                  matched must be included within the square brackets.
5906
5907
5908
5909
5910
5911
5912
5913
5914
5915
5916
5917
5918
5919
5920
5921
5922
5923
5924
5925
5926
5927
5928
5929
5930
5931
5932
5933
5934
5935             [mh.6]                           MH.6.8                      UCI version
5936
5937
5938
5939
5940
5941
5942
5943
5944
5945             PREV(1)                           -90-                           PREV(1)
5946
5947
5948             _\bN_\bA_\bM_\bE
5949                  prev - show the previous message
5950
5951             _\bS_\bY_\bN_\bO_\bP_\bS_\bI_\bS
5952                  prev [+folder] [-header] [-noheader] [-showproc program]
5953                       [-noshowproc] [-switches for _\bs_\bh_\bo_\bw_\bp_\br_\bo_\bc] [-help]
5954
5955             _\bD_\bE_\bS_\bC_\bR_\bI_\bP_\bT_\bI_\bO_\bN
5956
5957                  _\bP_\br_\be_\bv performs a _\bs_\bh_\bo_\bw on the previous message in the  specified  (or
5958                  current)  folder.  Like _\bs_\bh_\bo_\bw, it passes any switches on to the pro-
5959                  gram named by _\bs_\bh_\bo_\bw_\bp_\br_\bo_\bc, which is called to list the message.   This
5960                  command  is  almost exactly equivalent to "show prev".  Consult the
5961                  manual entry for _\bs_\bh_\bo_\bw (1) for all the details.
5962
5963             _\bF_\bi_\bl_\be_\bs
5964                  $HOME/.mh_profile                    The user profile
5965
5966
5967             _\bP_\br_\bo_\bf_\bi_\bl_\be _\bC_\bo_\bm_\bp_\bo_\bn_\be_\bn_\bt_\bs
5968                  Path:                To determine the user's MH directory
5969                  Current-Folder:      To find the default current folder
5970                  showproc:            Program to show the message
5971
5972
5973             _\bS_\be_\be _\bA_\bl_\bs_\bo
5974                  show(1), next(1)
5975
5976
5977             _\bD_\be_\bf_\ba_\bu_\bl_\bt_\bs
5978                  `+folder' defaults to the current folder
5979                  `-header'
5980
5981
5982             _\bC_\bo_\bn_\bt_\be_\bx_\bt
5983                  If a folder is specified, it will become the current  folder.   The
5984                  message that is shown (i.e., the previous message in sequence) will
5985                  become the current message.
5986
5987
5988             _\bB_\bu_\bg_\bs
5989                  _\bp_\br_\be_\bv is really a link to the _\bs_\bh_\bo_\bw program.  As  a  result,  if  you
5990                  make  a  link  to  _\bp_\br_\be_\bv and that link is not called _\bp_\br_\be_\bv, your link
5991                  will  act  like  _\bs_\bh_\bo_\bw  instead.   To   circumvent   this,   add   a
5992                  profile-entry  for the link to your _\bM_\bH profile and add the argument
5993                  _\bp_\br_\be_\bv to the entry.
5994
5995
5996
5997
5998
5999
6000
6001             [mh.6]                           MH.6.8                      UCI version
6002
6003
6004
6005
6006
6007
6008
6009
6010
6011             PROMPTER(1)                       -91-                       PROMPTER(1)
6012
6013
6014             _\bN_\bA_\bM_\bE
6015                  prompter - prompting editor front-end for MH
6016
6017             _\bS_\bY_\bN_\bO_\bP_\bS_\bI_\bS
6018                  prompter [-erase chr] [-kill chr] [-prepend] [-noprepend] [-rapid]
6019                       [-norapid] [-doteof] [-nodoteof] file [-help]
6020
6021             _\bD_\bE_\bS_\bC_\bR_\bI_\bP_\bT_\bI_\bO_\bN
6022
6023                  This program is normally not invoked directly by  users  but  takes
6024                  the  place  of  an  editor  and  acts  as  an editor front-end.  It
6025                  operates on an 822-style message draft skeleton specified by  file,
6026                  normally provided by _\bc_\bo_\bm_\bp, _\bd_\bi_\bs_\bt, _\bf_\bo_\br_\bw, or _\br_\be_\bp_\bl.
6027
6028                  _\bP_\br_\bo_\bm_\bp_\bt_\be_\br is an editor which allows rapid composition  of  messages.
6029                  It  is particularly useful to network and low-speed (less than 2400
6030                  baud) users of _\bM_\bH.  It is an _\bM_\bH program in that it can have its own
6031                  profile  entry with switches, but it is not invoked directly by the
6032                  user.  The commands _\bc_\bo_\bm_\bp, _\bd_\bi_\bs_\bt, _\bf_\bo_\br_\bw, and _\br_\be_\bp_\bl invoke  _\bp_\br_\bo_\bm_\bp_\bt_\be_\br  as
6033                  an  editor,  either when invoked with `-editor prompter', or by the
6034                  profile  entry  "Editor: prompter",  or  when  given  the   command
6035                  `edit prompter' at "What now?" level.
6036
6037                  For each empty component _\bp_\br_\bo_\bm_\bp_\bt_\be_\br finds in the draft, the  user  is
6038                  prompted  for a response; A <RETURN> will cause the whole component
6039                  to be left out.  Otherwise, a `\' preceding a  <RETURN>  will  con-
6040                  tinue  the  response  on the next line, allowing for multiline com-
6041                  ponents.  Continuation lines must begin with a space or tab.
6042
6043                  Each non-empty component is copied to the draft  and  displayed  on
6044                  the terminal.
6045
6046                  The start of the message body is denoted by a blank line or a  line
6047                  of dashes.  If the body is non-empty, the prompt, which isn't writ-
6048                  ten to the file, is
6049
6050                      "--------Enter additional text",
6051
6052                  or (if `-prepend' was given)
6053
6054                      "--------Enter initial text".
6055
6056                  Message-body typing is  terminated  with  an  end-of-file  (usually
6057                  CTRL-D).   With  the  `-doteof'  switch,  a period on a line all by
6058                  itself also  signifies  end-of-file.   At  this  point  control  is
6059                  returned  to  the  calling  program,  where the user is asked "What
6060                  now?".  See _\bw_\bh_\ba_\bt_\bn_\bo_\bw for the valid options to this query.
6061
6062                  By using the `-prepend' switch, the user can  add  type-in  to  the
6063                  beginning of the message body and have the rest of the body follow.
6064                  This is useful for the _\bf_\bo_\br_\bw command.
6065
6066
6067             [mh.6]                           MH.6.8                      UCI version
6068
6069
6070
6071
6072
6073
6074
6075
6076
6077             PROMPTER(1)                       -92-                       PROMPTER(1)
6078
6079
6080                  By using the `-rapid' switch, if the draft already contains text in
6081                  the message-body, it is not displayed on the user's terminal.  This
6082                  is useful for low-speed terminals.
6083
6084                  The line editing characters for kill and erase may be specified  by
6085                  the  user via the arguments `-kill chr' and `-erase chr', where chr
6086                  may be a character; or `\nnn', where "nnn" is the octal  value  for
6087                  the character.
6088
6089                  An interrupt (usually CTRL-C) during component  typing  will  abort
6090                  _\bp_\br_\bo_\bm_\bp_\bt_\be_\br  and  the _\bM_\bH command that invoked it.  An interrupt during
6091                  message-body typing is equivalent to CTRL-D,  for  historical  rea-
6092                  sons.  This means that _\bp_\br_\bo_\bm_\bp_\bt_\be_\br should finish up and exit.
6093
6094                  The first non-flag argument to _\bp_\br_\bo_\bm_\bp_\bt_\be_\br is taken as the name of the
6095                  draft file, and subsequent non-flag arguments are ignored.
6096
6097             _\bF_\bi_\bl_\be_\bs
6098                  $HOME/.mh_profile                    The user profile
6099                  /tmp/prompter*                       Temporary copy of message
6100
6101
6102             _\bP_\br_\bo_\bf_\bi_\bl_\be _\bC_\bo_\bm_\bp_\bo_\bn_\be_\bn_\bt_\bs
6103                  prompter-next:       To name the editor to be  used  on  exit  from
6104                  _\bp_\br_\bo_\bm_\bp_\bt_\be_\br
6105                  Msg-Protect:         To set mode when creating a new draft
6106
6107
6108             _\bS_\be_\be _\bA_\bl_\bs_\bo
6109                  comp(1), dist(1), forw(1), repl(1), whatnow(1)
6110
6111
6112             _\bD_\be_\bf_\ba_\bu_\bl_\bt_\bs
6113                  `-prepend'
6114                  `-norapid'
6115                  `-nodoteof'
6116
6117
6118             _\bC_\bo_\bn_\bt_\be_\bx_\bt
6119                  None
6120
6121             _\bH_\be_\bl_\bp_\bf_\bu_\bl _\bH_\bi_\bn_\bt_\bs
6122
6123                  The  `-rapid'  option  is  particularly  useful  with   _\bf_\bo_\br_\bw,   and
6124                  `-noprepend' is useful with _\bc_\bo_\bm_\bp -_\bu_\bs_\be.
6125
6126                  The user may wish to link _\bp_\br_\bo_\bm_\bp_\bt_\be_\br under several names (e.g.,  "ra-
6127                  pid")  and  give  appropriate switches in the profile entries under
6128                  these names (e.g., "rapid:  -rapid").   This  facilitates  invoking
6129                  prompter  differently for different _\bM_\bH commands (e.g., "forw: -edi-
6130                  tor rapid").
6131
6132
6133             [mh.6]                           MH.6.8                      UCI version
6134
6135
6136
6137
6138
6139
6140
6141
6142
6143             PROMPTER(1)                       -93-                       PROMPTER(1)
6144
6145
6146             _\bB_\bu_\bg_\bs
6147                  _\bP_\br_\bo_\bm_\bp_\bt_\be_\br uses _\bs_\bt_\bd_\bi_\bo (3), so it will lose if  you  edit  files  with
6148                  nulls in them.
6149
6150
6151
6152
6153
6154
6155
6156
6157
6158
6159
6160
6161
6162
6163
6164
6165
6166
6167
6168
6169
6170
6171
6172
6173
6174
6175
6176
6177
6178
6179
6180
6181
6182
6183
6184
6185
6186
6187
6188
6189
6190
6191
6192
6193
6194
6195
6196
6197
6198
6199             [mh.6]                           MH.6.8                      UCI version
6200
6201
6202
6203
6204
6205
6206
6207
6208
6209             RCVSTORE(1)                       -94-                       RCVSTORE(1)
6210
6211
6212             _\bN_\bA_\bM_\bE
6213                  rcvstore - incorporate new mail asynchronously
6214
6215             _\bS_\bY_\bN_\bO_\bP_\bS_\bI_\bS
6216                  /usr/bs/mh-6.8/lib/rcvstore [+folder] [-create] [-nocreate]
6217                       [-sequence name ...] [-public] [-nopublic] [-zero] [-nozero]
6218                       [-help]
6219
6220             _\bD_\bE_\bS_\bC_\bR_\bI_\bP_\bT_\bI_\bO_\bN
6221
6222                  _\bR_\bc_\bv_\bs_\bt_\bo_\br_\be incorporates a message from the standard input into an  _\bM_\bH
6223                  folder.   If  `+folder'  isn't specified, a folder in the user's _\bM_\bH
6224                  directory will be used, either that specified by the "Inbox:" entry
6225                  in  the  user's profile, or the folder named "inbox".  The new mes-
6226                  sage being incorporated is assigned the next highest number in  the
6227                  folder.   If  the specified (or default) folder doesn't exist, then
6228                  it will be created if the `-create' option is specified,  otherwise
6229                  _\br_\bc_\bv_\bs_\bt_\bo_\br_\be will exit.
6230
6231                  If the user's profile contains a "Msg-Protect: nnn" entry, it  will
6232                  be  used as the protection on the newly created messages, otherwise
6233                  the _\bM_\bH default of 0644 will be used.  During all operations on mes-
6234                  sages,  this  initially  assigned  protection will be preserved for
6235                  each message, so _\bc_\bh_\bm_\bo_\bd(1) may be used to set  a  protection  on  an
6236                  individual   message,   and   its   protection  will  be  preserved
6237                  thereafter.
6238
6239                  _\bR_\bc_\bv_\bs_\bt_\bo_\br_\be will incorporate anything except zero length messages into
6240                  the user's MH folder.
6241
6242                  If the profile entry "Unseen-Sequence" is  present  and  non-empty,
6243                  then  _\br_\bc_\bv_\bs_\bt_\bo_\br_\be  will  add  the  newly  incorporated message to each
6244                  sequence named by the  profile  entry.   This  is  similar  to  the
6245                  "Previous-Sequence"  profile  entry  supported  by  all _\bM_\bH commands
6246                  which take `msgs' or `msg' arguments.  Note that _\br_\bc_\bv_\bs_\bt_\bo_\br_\be will  not
6247                  zero each sequence prior to adding messages.
6248
6249                  Furthermore, the incoming messages may  be  added  to  user-defined
6250                  sequences  as  they  arrive  by  appropriate use of the `-sequence'
6251                  option.  As with _\bp_\bi_\bc_\bk, use of the `-zero'  and  `-nozero'  switches
6252                  can  also  be used to zero old sequences or not.  Similarly, use of
6253                  the `-public' and `-nopublic switches may be used  to  force  addi-
6254                  tions to public and private sequences.
6255
6256             _\bF_\bi_\bl_\be_\bs
6257                  $HOME/.mh_profile                    The user profile
6258
6259
6260
6261
6262
6263
6264
6265             [mh.6]                           MH.6.8                      UCI version
6266
6267
6268
6269
6270
6271
6272
6273
6274
6275             RCVSTORE(1)                       -95-                       RCVSTORE(1)
6276
6277
6278             _\bP_\br_\bo_\bf_\bi_\bl_\be _\bC_\bo_\bm_\bp_\bo_\bn_\be_\bn_\bt_\bs
6279                  Path:                To determine the user's MH directory
6280                  Folder-Protect:      To set mode when creating a new folder
6281                  Inbox:               To find the default inbox
6282                  Msg-Protect:         To set mode when creating a new message
6283                  Unseen-Sequence:     To name sequences denoting unseen messages
6284
6285
6286             _\bS_\be_\be _\bA_\bl_\bs_\bo
6287                  inc(1), pick(1), mh-mail(5)
6288
6289
6290             _\bD_\be_\bf_\ba_\bu_\bl_\bt_\bs
6291                  `+folder' defaults to "inbox"
6292                  `-create'
6293                  `-nopublic' if the folder is read-only, `-public' otherwise
6294                  `-nozero'
6295
6296
6297             _\bC_\bo_\bn_\bt_\be_\bx_\bt
6298                  No context changes will be attempted, with  the  exception  of  se-
6299                  quence manipulation.
6300
6301
6302             _\bB_\bu_\bg_\bs
6303                  If you use the "Unseen-Sequence" profile entry, _\br_\bc_\bv_\bs_\bt_\bo_\br_\be could  try
6304                  to update the context while another _\bM_\bH process is also trying to do
6305                  so.  This can cause the context  to  become  corrupted.   To  avoid
6306                  this,  do not use _\br_\bc_\bv_\bs_\bt_\bo_\br_\be if you use the "Unseen-Sequence" profile
6307                  entry.
6308
6309
6310
6311
6312
6313
6314
6315
6316
6317
6318
6319
6320
6321
6322
6323
6324
6325
6326
6327
6328
6329
6330
6331             [mh.6]                           MH.6.8                      UCI version
6332
6333
6334
6335
6336
6337
6338
6339
6340
6341             REFILE(1)                         -96-                         REFILE(1)
6342
6343
6344             _\bN_\bA_\bM_\bE
6345                  refile - file message in other folders
6346
6347             _\bS_\bY_\bN_\bO_\bP_\bS_\bI_\bS
6348                  refile [msgs] [-draft] [-link] [-nolink] [-preserve] [-nopreserve]
6349                       [-src +folder] [-file file] [-rmmproc program] [-normmproc]
6350                       +folder ...  [-help]
6351
6352             _\bD_\bE_\bS_\bC_\bR_\bI_\bP_\bT_\bI_\bO_\bN
6353
6354                  _\bR_\be_\bf_\bi_\bl_\be moves (_\bm_\bv (1)) or links  (_\bl_\bn (1))  messages  from  a  source
6355                  folder  into  one  or  more destination folders.  If you think of a
6356                  message as a sheet of paper, this operation is  not  unlike  filing
6357                  the  sheet  of  paper  (or copies) in file cabinet folders.  When a
6358                  message is filed, it is linked into the  destination  folder(s)  if
6359                  possible,  and  is  copied  otherwise.   As long as the destination
6360                  folders are all on the same file  system,  multiple  filing  causes
6361                  little  storage  overhead.   This  facility  provides a good way to
6362                  cross-file or multiply-index messages.  For example, if  a  message
6363                  is received from Jones about the ARPA Map Project, the command
6364
6365                       refile cur +jones +Map
6366
6367                  would allow the message to be found in either of  the  two  folders
6368                  `jones' or `Map'.
6369
6370                  The option `-file file' directs _\br_\be_\bf_\bi_\bl_\be to use the specified file as
6371                  the  source  message  to  be  filed,  rather  than a message from a
6372                  folder.  Note that the file should be a validly formatted  message,
6373                  just like any other _\bM_\bH message.  It should NOT be in mail drop for-
6374                  mat (to convert a file in mail drop format to a folder of  _\bM_\bH  mes-
6375                  sages, see _\bi_\bn_\bc (1)).
6376
6377                  If a destination folder doesn't exist, _\br_\be_\bf_\bi_\bl_\be will ask if you  want
6378                  to  create  it.  A negative response will abort the file operation.
6379                  If the standard input for _\br_\be_\bf_\bi_\bl_\be is _\bn_\bo_\bt a tty, then _\br_\be_\bf_\bi_\bl_\be will not
6380                  ask  any  questions  and  will  proceed as if the user's answer was
6381                  "yes" for all questions.
6382
6383                  The option `-link' preserves the source folder copy of the  message
6384                  (i.e.,  it  does  a  _\bl_\bn(1) rather than a _\bm_\bv(1)), whereas, `-nolink'
6385                  deletes the filed messages from the source folder.  Normally,  when
6386                  a  message  is filed, it is assigned the next highest number avail-
6387                  able in each of the destination folders.  Use  of  the  `-preserve'
6388                  switch  will override this message renaming, but name conflicts may
6389                  occur, so use this switch cautiously.
6390
6391                  If `-link' is not specified (or `-nolink' is specified), the  filed
6392                  messages  will  be removed from the source folder, by renaming them
6393                  with a site-dependent prefix (usually a comma).
6394
6395
6396
6397             [mh.6]                           MH.6.8                      UCI version
6398
6399
6400
6401
6402
6403
6404
6405
6406
6407             REFILE(1)                         -97-                         REFILE(1)
6408
6409
6410                  If the user has a profile component such as
6411
6412                          rmmproc:        /bin/rm
6413
6414                  then _\br_\be_\bf_\bi_\bl_\be will instead call the named program to delete the  mes-
6415                  sage files.  The user may specify `-rmmproc program' on the command
6416                  line to override  this  profile  specification.   The  `-normmproc'
6417                  option  forces  the message files to be deleted by renaming them as
6418                  described above.
6419
6420                  The `-draft' switch tells _\br_\be_\bf_\bi_\bl_\be to file the <mh-dir>/draft.
6421
6422             _\bF_\bi_\bl_\be_\bs
6423                  $HOME/.mh_profile                    The user profile
6424
6425
6426             _\bP_\br_\bo_\bf_\bi_\bl_\be _\bC_\bo_\bm_\bp_\bo_\bn_\be_\bn_\bt_\bs
6427                  Path:                To determine the user's MH directory
6428                  Current-Folder:      To find the default current folder
6429                  Folder-Protect:      To set mode when creating a new folder
6430                  rmmproc:             Program to delete the message
6431
6432
6433             _\bS_\be_\be _\bA_\bl_\bs_\bo
6434                  folder(1)
6435
6436
6437             _\bD_\be_\bf_\ba_\bu_\bl_\bt_\bs
6438                  `-src +folder' defaults to the current folder
6439                  `msgs' defaults to cur
6440                  `-nolink'
6441                  `-nopreserve'
6442
6443
6444             _\bC_\bo_\bn_\bt_\be_\bx_\bt
6445                  If `-src +folder' is given, it will become the current folder.   If
6446                  neither  `-link' nor `all' is specified, the current message in the
6447                  source folder will be set to the last message specified; otherwise,
6448                  the current message won't be changed.
6449
6450                  If the Previous-Sequence profile entry is set, in addition  to  de-
6451                  fining the named sequences from the source folder, _\br_\be_\bf_\bi_\bl_\be will also
6452                  define  those  sequences  for   the   destination   folders.    See
6453                  _\bm_\bh-_\bs_\be_\bq_\bu_\be_\bn_\bc_\be (5) for information concerning the previous sequence.
6454
6455
6456             _\bB_\bu_\bg_\bs
6457                  Since _\br_\be_\bf_\bi_\bl_\be uses your _\br_\bm_\bm_\bp_\br_\bo_\bc to delete the message,  the  _\br_\bm_\bm_\bp_\br_\bo_\bc
6458                  must  NOT  call _\br_\be_\bf_\bi_\bl_\be without specifying `-normmproc', or you will
6459                  create an infinte loop.
6460
6461
6462
6463             [mh.6]                           MH.6.8                      UCI version
6464
6465
6466
6467
6468
6469
6470
6471
6472
6473             REPL(1)                           -98-                           REPL(1)
6474
6475
6476             _\bN_\bA_\bM_\bE
6477                  repl - reply to a message
6478
6479             _\bS_\bY_\bN_\bO_\bP_\bS_\bI_\bS
6480                  repl [+folder] [msg] [-annotate] [-noannotate] [-cc all/to/cc/me]
6481                       [-nocc all/to/cc/me] [-draftfolder +folder]
6482                       [-draftmessage msg] [-nodraftfolder] [-editor editor]
6483                       [-noedit] [-fcc +folder] [-filter filterfile] [-form formfile]
6484                       [-inplace] [-noinplace] [-query] [-noquery] [-width columns]
6485                       [-whatnowproc program] [-nowhatnowproc] [-help]
6486
6487             _\bD_\bE_\bS_\bC_\bR_\bI_\bP_\bT_\bI_\bO_\bN
6488
6489                  _\bR_\be_\bp_\bl aids a user in producing a reply to an existing message.  _\bR_\be_\bp_\bl
6490                  uses  a  reply  template to guide its actions when constructing the
6491                  message draft of the reply.  In its simplest form  (with  no  argu-
6492                  ments),  it  will  set  up  a message-form skeleton in reply to the
6493                  current message in the  current  folder,  and  invoke  the  whatnow
6494                  shell.   The  default  reply template will direct _\br_\be_\bp_\bl to construct
6495                  the composed message as follows:
6496
6497                       To: <Reply-To> or <From>
6498                       cc: <cc>, <To>, and yourself
6499                       Subject: Re: <Subject>
6500                       In-reply-to: Your message of <Date>.
6501                                    <Message-Id>
6502
6503                  where field names enclosed in angle  brackets  (< >)  indicate  the
6504                  contents  of the named field from the message to which the reply is
6505                  being made.  A  reply  template  is  simply  a  format  file.   See
6506                  _\bm_\bh-_\bf_\bo_\br_\bm_\ba_\bt (5) for the details.
6507
6508                  The `-cc type' switch takes an argument which  specifies  who  gets
6509                  placed  on  the "cc:" list of the reply.  The `-query' switch modi-
6510                  fies the action of `-cc type' switch by interactively asking you if
6511                  each  address  that normally would be placed in the "To:" and "cc:"
6512                  list  should  actually  be  sent  a  copy.   (This  is  useful  for
6513                  special-purpose  replies.)  Note that the position of the `-cc' and
6514                  `-nocc' switches, like all other switches which take a positive and
6515                  negative form, is important.
6516
6517                  Lines beginning with the fields "To:", "cc:", and  "Bcc:"  will  be
6518                  standardized  and  have  duplicate addresses removed.  In addition,
6519                  the `-width columns' switch will guide _\br_\be_\bp_\bl's formatting  of  these
6520                  fields.
6521
6522                  If the file named "replcomps" exists in the user's MH directory, it
6523                  will be used instead of the default form.  In either case, the file
6524                  specified by `-form formfile' will be used if given.
6525
6526                  If the draft already exists, _\br_\be_\bp_\bl will ask you as to  the  disposi-
6527                  tion  of  the  draft.  A reply of quit will abort _\br_\be_\bp_\bl, leaving the
6528
6529             [mh.6]                           MH.6.8                      UCI version
6530
6531
6532
6533
6534
6535
6536
6537
6538
6539             REPL(1)                           -99-                           REPL(1)
6540
6541
6542                  draft intact; replace will replace the existing draft with a  blank
6543                  skeleton; and list will display the draft.
6544
6545                  See _\bc_\bo_\bm_\bp (1) for a  description  of  the  `-editor'  and  `-noedit'
6546                  switches.  Note that while in the editor, the message being replied
6547                  to is available through a link  named  "@"  (assuming  the  default
6548                  _\bw_\bh_\ba_\bt_\bn_\bo_\bw_\bp_\br_\bo_\bc ).   In addition, the actual pathname of the message is
6549                  stored in the envariable $editalt, and the pathname of  the  folder
6550                  containing the message is stored in the envariable $mhfolder.
6551
6552                  Although _\br_\be_\bp_\bl uses the `-form formfile' switch to direct it how  to
6553                  construct  the  beginning  of  the  draft, the `-filter filterfile'
6554                  switch directs _\br_\be_\bp_\bl as to how the message being  replied-to  should
6555                  be  formatted in the body of the draft.  If `-filter' is not speci-
6556                  fied, then the message being replied-to is not included in the body
6557                  of  the draft.  If `-filter filterfile' is specified, then the mes-
6558                  sage being replied-to is filtered  (re-formatted)  prior  to  being
6559                  output  to  the body of the draft.  The filter file for _\br_\be_\bp_\bl should
6560                  be a standard form file for _\bm_\bh_\bl, as _\br_\be_\bp_\bl will invoke _\bm_\bh_\bl to  format
6561                  the  message  being replied-to.  There is no default message filter
6562                  (`-filter' must be followed by a file name).  A filter file that is
6563                  commonly used is:
6564
6565                       :
6566                       body:nocomponent,compwidth=9,offset=9
6567
6568                  which says to output a blank line and then the body of the  message
6569                  being replied-to, indented by one tab-stop.  Another format popular
6570                  on USENET is:
6571
6572
6573                       message-id:nocomponent,nonewline,\
6574                       formatfield="In message %{text}, "
6575                       from:nocomponent,formatfield="%(friendly{text}) writes:"
6576                       body:component=">",overflowtext=">",overflowoffset=0
6577
6578                  Which  cites  the  Message-ID  and  author  of  the  message  being
6579                  replied-to,  and  then  outputs each line of the body prefaced with
6580                  the ">" character.
6581
6582                  If the `-annotate' switch is given, the  message  being  replied-to
6583                  will be annotated with the lines
6584
6585                       Replied: date
6586                       Replied: addrs
6587
6588                  where the address list contains one line for each  addressee.   The
6589                  annotation  will  be done only if the message is sent directly from
6590                  _\br_\be_\bp_\bl.   If  the  message  is  not  sent  immediately   from   _\br_\be_\bp_\bl,
6591                  "comp -use"  may  be  used to re-edit and send the constructed mes-
6592                  sage, but the annotations won't take place.  The `-inplace'  switch
6593                  causes annotation to be done in place in order to preserve links to
6594
6595             [mh.6]                           MH.6.8                      UCI version
6596
6597
6598
6599
6600
6601
6602
6603
6604
6605             REPL(1)                          -100-                           REPL(1)
6606
6607
6608                  the annotated message.
6609
6610                  The `-fcc +folder' switch can be used to  automatically  specify  a
6611                  folder  to  receive Fcc:s.  More than one folder, each preceeded by
6612                  `-fcc' can be named.
6613
6614                  In addition to the standard _\bm_\bh-_\bf_\bo_\br_\bm_\ba_\bt (5) escapes, _\br_\be_\bp_\bl also recog-
6615                  nizes the following additional _\bc_\bo_\bm_\bp_\bo_\bn_\be_\bn_\bt escape:
6616
6617                  _\bE_\bs_\bc_\ba_\bp_\be  _\bR_\be_\bt_\bu_\br_\bn_\bs  _\bD_\be_\bs_\bc_\br_\bi_\bp_\bt_\bi_\bo_\bn
6618                  _\bf_\bc_\bc     string   Any folders specified with `-fcc folder'
6619
6620                  To avoid reiteration, _\br_\be_\bp_\bl strips any leading `Re: '  strings  from
6621                  the _\bs_\bu_\bb_\bj_\be_\bc_\bt component.
6622
6623                  The `-draftfolder +folder' and `-draftmessage msg' switches  invoke
6624                  the _\bM_\bH draft folder facility.  This is an advanced (and highly use-
6625                  ful) feature.  Consult the Advanced  Features  section  of  the  _\bM_\bH
6626                  manual for more information.
6627
6628                  Upon exiting from the editor, _\br_\be_\bp_\bl will invoke the _\bw_\bh_\ba_\bt_\bn_\bo_\bw program.
6629                  See _\bw_\bh_\ba_\bt_\bn_\bo_\bw (1) for a discussion of available options.  The invoca-
6630                  tion of this program can be inhibited by using the `-nowhatnowproc'
6631                  switch.   (In truth of fact, it is the _\bw_\bh_\ba_\bt_\bn_\bo_\bw program which starts
6632                  the initial edit.  Hence, `-nowhatnowproc' will  prevent  any  edit
6633                  from occurring.)
6634
6635             _\bF_\bi_\bl_\be_\bs
6636                  /usr/bs/mh-6.8/lib/replcomps         The reply template
6637                  or <mh-dir>/replcomps                Rather than the standard template
6638                  $HOME/.mh_profile                    The user profile
6639                  <mh-dir>/draft                       The draft file
6640
6641
6642             _\bP_\br_\bo_\bf_\bi_\bl_\be _\bC_\bo_\bm_\bp_\bo_\bn_\be_\bn_\bt_\bs
6643                  Path:                To determine the user's MH directory
6644                  Alternate-Mailboxes: To determine the user's mailboxes
6645                  Current-Folder:      To find the default current folder
6646                  Draft-Folder:        To find the default draft-folder
6647                  Editor:              To override the default editor
6648                  Msg-Protect:         To  set  mode  when  creating  a  new  message
6649                  (draft)
6650                  fileproc:            Program to refile the message
6651                  mhlproc:             Program to filter message being replied-to
6652                  whatnowproc:         Program to ask the "What now?" questions
6653
6654
6655             _\bS_\be_\be _\bA_\bl_\bs_\bo
6656                  comp(1), dist(1), forw(1), send(1), whatnow(1), mh-format(5)
6657
6658
6659
6660
6661             [mh.6]                           MH.6.8                      UCI version
6662
6663
6664
6665
6666
6667
6668
6669
6670
6671             REPL(1)                          -101-                           REPL(1)
6672
6673
6674             _\bD_\be_\bf_\ba_\bu_\bl_\bt_\bs
6675                  `+folder' defaults to the current folder
6676                  `msg' defaults to cur
6677                  `-nocc all' at ATHENA sites, `-cc all' otherwise
6678                  `-noannotate'
6679                  `-nodraftfolder'
6680                  `-noinplace'
6681                  `-noquery'
6682                  `-width 72'
6683
6684
6685             _\bC_\bo_\bn_\bt_\be_\bx_\bt
6686                  If a folder is given, it will become the current folder.  The  mes-
6687                  sage replied-to will become the current message.
6688
6689
6690             _\bH_\bi_\bs_\bt_\bo_\br_\by
6691                  Prior to using the format string  mechanism,  `-noformat'  used  to
6692                  cause  address  headers to be output as-is.  Now all address fields
6693                  are formatted using Internet standard guidelines.
6694
6695
6696             _\bB_\bu_\bg_\bs
6697                  If any addresses occur in the reply template, addresses in the tem-
6698                  plate that do not contain hosts are defaulted incorrectly.  Instead
6699                  of using the localhost for the  default,  _\br_\be_\bp_\bl  uses  the  sender's
6700                  host.   Moral of the story: if you're going to include addresses in
6701                  a reply template, include the host portion of the address.
6702
6703                  The `-width columns' switch is only  used  to  do  address-folding;
6704                  other headers are not line-wrapped.
6705
6706                  If _\bw_\bh_\ba_\bt_\bn_\bo_\bw_\bp_\br_\bo_\bc is _\bw_\bh_\ba_\bt_\bn_\bo_\bw, then _\br_\be_\bp_\bl uses a  built-in  _\bw_\bh_\ba_\bt_\bn_\bo_\bw,  it
6707                  does  not  actually  run the _\bw_\bh_\ba_\bt_\bn_\bo_\bw program.  Hence, if you define
6708                  your own _\bw_\bh_\ba_\bt_\bn_\bo_\bw_\bp_\br_\bo_\bc, don't call it _\bw_\bh_\ba_\bt_\bn_\bo_\bw since  _\br_\be_\bp_\bl  won't  run
6709                  it.
6710
6711                  If your current working directory is not writable, the  link  named
6712                  "@" is not available.
6713
6714
6715
6716
6717
6718
6719
6720
6721
6722
6723
6724
6725
6726
6727             [mh.6]                           MH.6.8                      UCI version
6728
6729
6730
6731
6732
6733
6734
6735
6736
6737             RMF(1)                           -102-                            RMF(1)
6738
6739
6740             _\bN_\bA_\bM_\bE
6741                  rmf - remove an MH folder
6742
6743             _\bS_\bY_\bN_\bO_\bP_\bS_\bI_\bS
6744                  rmf [+folder] [-interactive] [-nointeractive] [-help]
6745
6746             _\bD_\bE_\bS_\bC_\bR_\bI_\bP_\bT_\bI_\bO_\bN
6747
6748                  _\bR_\bm_\bf removes all of the messages (files) within  the  specified  (or
6749                  default)  folder,  and  then removes the folder (directory) itself.
6750                  If there are any files within the folder which are not  a  part  of
6751                  _\bM_\bH,  they  will  _\bn_\bo_\bt be removed, and an error will be produced.  If
6752                  the folder is given explicitly or the  `-nointeractive'  option  is
6753                  given,  then the folder will be removed without confirmation.  Oth-
6754                  erwise, the user will be asked for confirmation.  If _\br_\bm_\bf can't find
6755                  the  current  folder,  for  some  reason,  the folder to be removed
6756                  defaults to `+inbox' (unless overridden  by  user's  profile  entry
6757                  "Inbox") with confirmation.
6758
6759                  _\bR_\bm_\bf irreversibly deletes messages that don't have other  links,  so
6760                  use it with caution.
6761
6762                  If the folder being removed is a subfolder, the parent folder  will
6763                  become  the new current folder, and _\br_\bm_\bf will produce a message tel-
6764                  ling the user this has happened.  This provides an  easy  mechanism
6765                  for selecting a set of messages, operating on the list, then remov-
6766                  ing the list and returning to the current  folder  from  which  the
6767                  list was extracted.
6768
6769                  _\bR_\bm_\bf of a read-only folder will delete the private sequence and  cur
6770                  information  (i.e.,  "atr-_\bs_\be_\bq-_\bf_\bo_\bl_\bd_\be_\br"  entries)  from  the  profile
6771                  without affecting the folder itself.
6772
6773             _\bF_\bi_\bl_\be_\bs
6774                  $HOME/.mh_profile                    The user profile
6775
6776
6777             _\bP_\br_\bo_\bf_\bi_\bl_\be _\bC_\bo_\bm_\bp_\bo_\bn_\be_\bn_\bt_\bs
6778                  Path:                To determine the user's MH directory
6779                  Current-Folder:      To find the default current folder
6780                  Inbox:               To find the default inbox
6781
6782
6783             _\bS_\be_\be _\bA_\bl_\bs_\bo
6784                  rmm(1)
6785
6786
6787             _\bD_\be_\bf_\ba_\bu_\bl_\bt_\bs
6788                  `+folder' defaults to the current folder, usually with confirmation
6789                  `-interactive' if +folder' not given, `-nointeractive' otherwise
6790
6791
6792
6793             [mh.6]                           MH.6.8                      UCI version
6794
6795
6796
6797
6798
6799
6800
6801
6802
6803             RMF(1)                           -103-                            RMF(1)
6804
6805
6806             _\bC_\bo_\bn_\bt_\be_\bx_\bt
6807                  _\bR_\bm_\bf will set the current folder to the parent folder if a subfolder
6808                  is  removed; or if the current folder is removed, it will make "in-
6809                  box" current.  Otherwise, it doesn't change the current  folder  or
6810                  message.
6811
6812
6813             _\bB_\bu_\bg_\bs
6814                  Although intuitively one would suspect that _\br_\bm_\bf works  recursively,
6815                  it  does  not.   Hence if you have a sub-folder within a folder, in
6816                  order to _\br_\bm_\bf the parent, you must first _\br_\bm_\bf each of the children.
6817
6818
6819
6820
6821
6822
6823
6824
6825
6826
6827
6828
6829
6830
6831
6832
6833
6834
6835
6836
6837
6838
6839
6840
6841
6842
6843
6844
6845
6846
6847
6848
6849
6850
6851
6852
6853
6854
6855
6856
6857
6858
6859             [mh.6]                           MH.6.8                      UCI version
6860
6861
6862
6863
6864
6865
6866
6867
6868
6869             RMM(1)                           -104-                            RMM(1)
6870
6871
6872             _\bN_\bA_\bM_\bE
6873                  rmm - remove messages
6874
6875             _\bS_\bY_\bN_\bO_\bP_\bS_\bI_\bS
6876                  rmm [+folder] [msgs] [-help]
6877
6878             _\bD_\bE_\bS_\bC_\bR_\bI_\bP_\bT_\bI_\bO_\bN
6879
6880                  _\bR_\bm_\bm removes the specified messages by renaming  the  message  files
6881                  with preceding commas.  Many sites consider files that start with a
6882                  comma to be a temporary backup, and arrange for _\bc_\br_\bo_\bn (8) to  remove
6883                  such files once a day.
6884
6885                  If the user has a profile component such as
6886
6887                          rmmproc:        /bin/rm
6888
6889                  then instead of simply renaming the message file, _\br_\bm_\bm will call the
6890                  named program to delete the file.  Note that at most installations,
6891                  _\bc_\br_\bo_\bn (8) is told to remove files that begin with  a  comma  once  a
6892                  night.
6893
6894                  Some users of csh prefer the following:
6895
6896                          alias rmm 'refile +d'
6897
6898                  where folder +d is a folder for deleted messages, and
6899
6900                          alias mexp 'rm `mhpath +d all`'
6901
6902                  is used to "expunge" deleted messages.
6903
6904                  The current message is not changed by _\br_\bm_\bm, so a _\bn_\be_\bx_\bt  will  advance
6905                  to the next message in the folder as expected.
6906
6907             _\bF_\bi_\bl_\be_\bs
6908                  $HOME/.mh_profile                    The user profile
6909
6910
6911             _\bP_\br_\bo_\bf_\bi_\bl_\be _\bC_\bo_\bm_\bp_\bo_\bn_\be_\bn_\bt_\bs
6912                  Path:                To determine the user's MH directory
6913                  Current-Folder:      To find the default current folder
6914                  rmmproc:             Program to delete the message
6915
6916
6917             _\bS_\be_\be _\bA_\bl_\bs_\bo
6918                  rmf(1)
6919
6920
6921             _\bD_\be_\bf_\ba_\bu_\bl_\bt_\bs
6922                  `+folder' defaults to the current folder
6923                  `msgs' defaults to cur
6924
6925             [mh.6]                           MH.6.8                      UCI version
6926
6927
6928
6929
6930
6931
6932
6933
6934
6935             RMM(1)                           -105-                            RMM(1)
6936
6937
6938             _\bC_\bo_\bn_\bt_\be_\bx_\bt
6939                  If a folder is given, it will become the current folder.
6940
6941
6942             _\bB_\bu_\bg_\bs
6943                  Since _\br_\be_\bf_\bi_\bl_\be uses your _\br_\bm_\bm_\bp_\br_\bo_\bc to delete the message,  the  _\br_\bm_\bm_\bp_\br_\bo_\bc
6944                  must  NOT  call _\br_\be_\bf_\bi_\bl_\be without specifying `-normmproc', or you will
6945                  create an infinte loop.
6946
6947
6948
6949
6950
6951
6952
6953
6954
6955
6956
6957
6958
6959
6960
6961
6962
6963
6964
6965
6966
6967
6968
6969
6970
6971
6972
6973
6974
6975
6976
6977
6978
6979
6980
6981
6982
6983
6984
6985
6986
6987
6988
6989
6990
6991             [mh.6]                           MH.6.8                      UCI version
6992
6993
6994
6995
6996
6997
6998
6999
7000
7001             SCAN(1)                          -106-                           SCAN(1)
7002
7003
7004             _\bN_\bA_\bM_\bE
7005                  scan - produce a one line per message scan listing
7006
7007             _\bS_\bY_\bN_\bO_\bP_\bS_\bI_\bS
7008                  scan [+folder] [msgs] [-clear] [-noclear] [-form formatfile]
7009                       [-format string] [-header] [-noheader] [-width columns]
7010                       [-reverse] [-noreverse] [-file filename] [-help]
7011
7012             _\bD_\bE_\bS_\bC_\bR_\bI_\bP_\bT_\bI_\bO_\bN
7013
7014                  _\bS_\bc_\ba_\bn produces a one-line-per-message listing of the specified  mes-
7015                  sages.   Each  _\bs_\bc_\ba_\bn  line  contains  the message number (name), the
7016                  date, the "From:" field, the "Subject" field, and, if room  allows,
7017                  some of the body of the message.  For example:
7018
7019                       15+  7/ 5  Dcrocker  nned  <<Last week I asked some of
7020                       16 - 7/ 5  dcrocker  message id format  <<I recommend
7021                       18   7/ 6  Obrien    Re: Exit status from mkdir
7022                       19   7/ 7  Obrien    "scan" listing format in MH
7023
7024                  The `+' on message 15 indicates that it  is  the  current  message.
7025                  The  `-'  on  message  16 indicates that it has been replied to, as
7026                  indicated by a "Replied:"  component  produced  by  an  `-annotate'
7027                  switch to the _\br_\be_\bp_\bl command.
7028
7029                  If there is sufficient room left on the _\bs_\bc_\ba_\bn line  after  the  sub-
7030                  ject,  the line will be filled with text from the body, preceded by
7031                  <<, and terminated by >> if the body is sufficiently  short.   _\bS_\bc_\ba_\bn
7032                  actually  reads  each  of the specified messages and parses them to
7033                  extract the desired fields.  During parsing, appropriate error mes-
7034                  sages  will  be  produced  if there are format errors in any of the
7035                  messages.
7036
7037                  The `-header' switch produces a header line prior to the _\bs_\bc_\ba_\bn list-
7038                  ing.   Currently,  the  name of the folder and the current date and
7039                  time are output (see the HISTORY section for more information).
7040
7041                  If the `-clear' switch is used and _\bs_\bc_\ba_\bn'_\bs output is directed  to  a
7042                  terminal, then _\bs_\bc_\ba_\bn will consult the $TERM and $TERMCAP envariables
7043                  to determine your terminal type in order to find out how  to  clear
7044                  the  screen  prior  to exiting.  If the `-clear' switch is used and
7045                  _\bs_\bc_\ba_\bn'_\bs output is not directed to a terminal  (e.g.,  a  pipe  or  a
7046                  file), then _\bs_\bc_\ba_\bn will send a formfeed prior to exiting.
7047
7048                  For example, the command:
7049
7050                       (scan -clear -header; show all -show pr -f) | lpr
7051
7052                  produces a scan listing  of  the  current  folder,  followed  by  a
7053                  formfeed,  followed  by  a formatted listing of all messages in the
7054                  folder, one per page.  Omitting `-show pr -f' will cause  the  mes-
7055                  sages  to  be  concatenated, separated by a one-line header and two
7056
7057             [mh.6]                           MH.6.8                      UCI version
7058
7059
7060
7061
7062
7063
7064
7065
7066
7067             SCAN(1)                          -107-                           SCAN(1)
7068
7069
7070                  blank lines.
7071
7072                  If _\bs_\bc_\ba_\bn encounters a message without a "Date:" field,  rather  than
7073                  leaving  that  portion  of  the  scan  listing  blank,  the date is
7074                  filled-in with the last write date of the message,  and  post-fixed
7075                  with  a  `*'.   This  is  particularly  handy  for scanning a _\bd_\br_\ba_\bf_\bt
7076                  _\bf_\bo_\bl_\bd_\be_\br, as message drafts usually aren't allowed to have  dates  in
7077                  them.
7078
7079                  To override the output format used by _\bs_\bc_\ba_\bn, the `-format string' or
7080                  `-format file'  switches  are used.  This permits individual fields
7081                  of the scan listing to be extracted with ease.  The string is  sim-
7082                  ply  a  format  string  and  the file is simply a format file.  See
7083                  _\bm_\bh-_\bf_\bo_\br_\bm_\ba_\bt (5) for the details.
7084
7085                  In addition to the standard _\bm_\bh-_\bf_\bo_\br_\bm_\ba_\bt (5) escapes, _\bs_\bc_\ba_\bn also recog-
7086                  nizes the following additional _\bc_\bo_\bm_\bp_\bo_\bn_\be_\bn_\bt escapes:
7087
7088                  _\bE_\bs_\bc_\ba_\bp_\be    _\bR_\be_\bt_\bu_\br_\bn_\bs  _\bD_\be_\bs_\bc_\br_\bi_\bp_\bt_\bi_\bo_\bn
7089                  body      string   the (compressed) first part of the body
7090                  dtimenow  date     the current date
7091                  folder    string   the name of the current folder
7092
7093                  Also, if no date header was present in the  message,  the  _\bf_\bu_\bn_\bc_\bt_\bi_\bo_\bn
7094                  escapes  which operate on {_\bd_\ba_\bt_\be} will return values for the date of
7095                  last modification of the message file itself.
7096
7097                  _\bs_\bc_\ba_\bn will update the _\bM_\bH context prior to starting the  listing,  so
7098                  interrupting  a  long  _\bs_\bc_\ba_\bn  listing preserves the new context.  _\bM_\bH
7099                  purists hate this idea.
7100
7101             _\bF_\bi_\bl_\be_\bs
7102                  $HOME/.mh_profile                    The user profile
7103
7104
7105             _\bP_\br_\bo_\bf_\bi_\bl_\be _\bC_\bo_\bm_\bp_\bo_\bn_\be_\bn_\bt_\bs
7106                  Path:                To determine the user's MH directory
7107                  Alternate-Mailboxes: To determine the user's mailboxes
7108                  Current-Folder:      To find the default current folder
7109
7110
7111             _\bS_\be_\be _\bA_\bl_\bs_\bo
7112                  inc(1), pick(1), show(1), mh-format(5)
7113
7114
7115             _\bD_\be_\bf_\ba_\bu_\bl_\bt_\bs
7116                  `+folder' defaults to the folder current
7117                  `msgs' defaults to all
7118                  `-format' defaulted as described above
7119                  `-noheader'
7120                  `-width' defaulted to the width of the terminal
7121
7122
7123             [mh.6]                           MH.6.8                      UCI version
7124
7125
7126
7127
7128
7129
7130
7131
7132
7133             SCAN(1)                          -108-                           SCAN(1)
7134
7135
7136             _\bC_\bo_\bn_\bt_\be_\bx_\bt
7137                  If a folder is given, it will become the current folder.
7138
7139
7140             _\bH_\bi_\bs_\bt_\bo_\br_\by
7141                  Prior to using the format string mechanism, `-header' used to  gen-
7142                  erate a heading saying what each column in the listing was.  Format
7143                  strings prevent this from happening.
7144
7145
7146             _\bB_\bu_\bg_\bs
7147                  The argument to the `-format' switch must be interpreted as a  sin-
7148                  gle token by the shell that invokes _\bs_\bc_\ba_\bn.  Therefore, one must usu-
7149                  ally place the argument to this switch inside double-quotes.
7150                  The value of each _\bc_\bo_\bm_\bp_\bo_\bn_\be_\bn_\bt escape is set by _\bs_\bc_\ba_\bn to  the  contents
7151                  of  the first message header _\bs_\bc_\ba_\bn encounters with the corresponding
7152                  component name; any following headers with the same component  name
7153                  are ignored.
7154
7155                  The switch `-reverse', makes _\bs_\bc_\ba_\bn list the messages in reverse ord-
7156                  er; this should be considered a bug.
7157
7158                  The `-file filename' switch allows the user to obtain a _\bs_\bc_\ba_\bn  list-
7159                  ing of a maildrop file as produced by _\bp_\ba_\bc_\bk_\bf.  This listing includes
7160                  every message in the file.  The user should use _\bm_\bs_\bh for more selec-
7161                  tive  processing  of the file.  `-reverse' is ignored with this op-
7162                  tion.
7163
7164
7165
7166
7167
7168
7169
7170
7171
7172
7173
7174
7175
7176
7177
7178
7179
7180
7181
7182
7183
7184
7185
7186
7187
7188
7189             [mh.6]                           MH.6.8                      UCI version
7190
7191
7192
7193
7194
7195
7196
7197
7198
7199             SEND(1)                          -109-                           SEND(1)
7200
7201
7202             _\bN_\bA_\bM_\bE
7203                  send - send a message
7204
7205             _\bS_\bY_\bN_\bO_\bP_\bS_\bI_\bS
7206                  send [-alias aliasfile] [-draft] [-draftfolder +folder]
7207                       [-draftmessage msg] [-nodraftfolder] [-filter filterfile]
7208                       [-nofilter] [-format] [-noformat] [-forward] [-noforward]
7209                       [-mime] [-nomime] [-msgid] [-nomsgid] [-push] [-nopush]
7210                       [-split seconds] [-verbose] [-noverbose] [-watch] [-nowatch]
7211                       [-width columns] [file ...] [-help]
7212
7213             _\bD_\bE_\bS_\bC_\bR_\bI_\bP_\bT_\bI_\bO_\bN
7214
7215                  _\bS_\be_\bn_\bd will cause each of the specified files to  be  delivered  (via
7216                  _\bp_\bo_\bs_\bt (8))  to each of the destinations in the "To:", "cc:", "Bcc:",
7217                  and "Fcc:" fields of the message.  If  _\bs_\be_\bn_\bd  is  re-distributing  a
7218                  message,  as invoked from _\bd_\bi_\bs_\bt, then the corresponding "Resent-xxx"
7219                  fields are examined instead.
7220
7221                  If `-push' is specified, _\bs_\be_\bn_\bd will detach itself  from  the  user's
7222                  terminal and perform its actions in the background.  If _\bp_\bu_\bs_\bh 'd and
7223                  the draft can't be sent, then the `-forward' switch says that draft
7224                  should be forwarded with the failure notice sent to the user.  This
7225                  differs from putting _\bs_\be_\bn_\bd in the background because the  output  is
7226                  trapped and analyzed by _\bM_\bH.
7227
7228                  If `-verbose' is specified, _\bs_\be_\bn_\bd  will  indicate  the  interactions
7229                  occurring  with the transport system, prior to actual delivery.  If
7230                  `-watch' is specified _\bs_\be_\bn_\bd will monitor the delivery of  local  and
7231                  network  mail.   Hence, by specifying both switches, a large detail
7232                  of information can be gathered about each  step  of  the  message's
7233                  entry into the transport system.
7234
7235                  The `-draftfolder +folder' and `-draftmessage msg' switches  invoke
7236                  the _\bM_\bH draft folder facility.  This is an advanced (and highly use-
7237                  ful) feature.  Consult the Advanced  Features  section  of  the  _\bM_\bH
7238                  manual for more information.
7239
7240                  If `-split' is specified, _\bs_\be_\bn_\bd will split the  draft  into  one  or
7241                  more  partial  messages  prior  to  sending.  This makes use of the
7242                  multi-media content feature in MH.  Note however that  if  _\bs_\be_\bn_\bd  is
7243                  invoked  under _\bd_\bi_\bs_\bt (1), then this switch is ignored -- it makes no
7244                  sense to redistribute a message in  this  fashion.   Sometimes  you
7245                  want  _\bs_\be_\bn_\bd  to pause after posting a partial message.  This is usu-
7246                  ally the case when you are running _\bs_\be_\bn_\bd_\bm_\ba_\bi_\bl and expect to  generate
7247                  a  lot  of partial messages.  The argument to `-split' tells it how
7248                  long to pause between postings.
7249
7250                  _\bS_\be_\bn_\bd with no _\bf_\bi_\bl_\be argument will query  whether  the  draft  is  the
7251                  intended  file, whereas `-draft' will suppress this question.  Once
7252                  the transport system has successfully accepted custody of the  mes-
7253                  sage,  the  file will be renamed with a leading comma, which allows
7254
7255             [mh.6]                           MH.6.8                      UCI version
7256
7257
7258
7259
7260
7261
7262
7263
7264
7265             SEND(1)                          -110-                           SEND(1)
7266
7267
7268                  it to be retrieved until the next draft message is sent.  If  there
7269                  are errors in the formatting of the message, _\bs_\be_\bn_\bd will abort with a
7270                  (hopefully) helpful error message.
7271
7272                  If a "Bcc:" field is encountered, its addresses will  be  used  for
7273                  delivery,  and  the  "Bcc:"  field will be removed from the message
7274                  sent to sighted recipients.  The blind recipients will  receive  an
7275                  entirely  new  message  with a minimal set of headers.  Included in
7276                  the body of the message will be a copy of the message sent  to  the
7277                  sighted  recipients.   If  `-filter filterfile'  is specified, then
7278                  this copy is filtered (re-formatted) prior to  being  sent  to  the
7279                  blind  recipients.  Otherwise, to use the MIME rules for encapsula-
7280                  tion, specify the `-mime' switch.
7281
7282                  Prior to sending the message, the  fields  "From: user@local",  and
7283                  "Date: now" will be appended to the headers in the message.  If the
7284                  envariable $SIGNATURE is set, then its value is used as  your  per-
7285                  sonal  name  when constructing the "From:" line of the message.  If
7286                  this envariable is not set, then  _\bs_\be_\bn_\bd  will  consult  the  profile
7287                  entry "Signature" for this information.  On hosts where _\bM_\bH was con-
7288                  figured with the UCI option, if $SIGNATURE is not set and the "Sig-
7289                  nature"   profile   entry   is   not   present,   then   the   file
7290                  $HOME/.signature is consulted.  If `-msgid' is  specified,  then  a
7291                  "Message-ID:" field will also be added to the message.
7292
7293                  If _\bs_\be_\bn_\bd is re-distributing a message (when invoked by _\bd_\bi_\bs_\bt ),  then
7294                  "Resent-"  will  be  prepended  to  each  of these fields: "From:",
7295                  "Date:", and "Message-ID:".  If  the  message  already  contains  a
7296                  "From:"  field,  then a "Sender: user@local" field will be added as
7297                  well.  (An already existing "Sender:" field is an error!)
7298
7299                  By using the `-format' switch, each of the entries in the "To:" and
7300                  "cc:" fields will be replaced with "standard" format entries.  This
7301                  standard format is designed to be usable  by  all  of  the  message
7302                  handlers  on  the various systems around the Internet.  If `-nofor-
7303                  mat' is given, then headers are output exactly as  they  appear  in
7304                  the message draft.
7305
7306                  If an "Fcc: folder" is encountered, the message will be  copied  to
7307                  the  specified folder for the sender in the format in which it will
7308                  appear to any non-Bcc receivers of the message.  That is,  it  will
7309                  have the appended fields and field reformatting.  The "Fcc:" fields
7310                  will be removed from all outgoing copies of the message.
7311
7312                  By using the `-width columns' switch, the user can direct  _\bs_\be_\bn_\bd  as
7313                  to how long it should make header lines containing addresses.
7314
7315                  The files specified by the profile entry "Aliasfile:" and any addi-
7316                  tional  alias  files given by the `-alias aliasfile' switch will be
7317                  read (more than one file,  each   preceeded  by  `-alias',  can  be
7318                  named).  See _\bm_\bh-_\ba_\bl_\bi_\ba_\bs (5) for more information.
7319
7320
7321             [mh.6]                           MH.6.8                      UCI version
7322
7323
7324
7325
7326
7327
7328
7329
7330
7331             SEND(1)                          -111-                           SEND(1)
7332
7333
7334             _\bF_\bi_\bl_\be_\bs
7335                  $HOME/.mh_profile                    The user profile
7336
7337
7338             _\bP_\br_\bo_\bf_\bi_\bl_\be _\bC_\bo_\bm_\bp_\bo_\bn_\be_\bn_\bt_\bs
7339                  Path:                To determine the user's MH directory
7340                  Draft-Folder:        To find the default draft-folder
7341                  Aliasfile:           For a default alias file
7342                  Signature:           To determine the user's mail signature
7343                  mailproc:            Program to post failure notices
7344                  postproc:            Program to post the message
7345
7346
7347             _\bS_\be_\be _\bA_\bl_\bs_\bo
7348                  comp(1), dist(1), forw(1), repl(1), mh-alias(5), post(8)
7349
7350
7351             _\bD_\be_\bf_\ba_\bu_\bl_\bt_\bs
7352                  `file' defaults to <mh-dir>/draft
7353                  `-alias /usr/bs/mh-6.8/lib/MailAliases'
7354                  `-nodraftfolder'
7355                  `-nofilter'
7356                  `-format'
7357                  `-forward'
7358                  `-nomime'
7359                  `-nomsgid'
7360                  `-nopush'
7361                  `-noverbose'
7362                  `-nowatch'
7363                  `-width 72'
7364
7365
7366             _\bC_\bo_\bn_\bt_\be_\bx_\bt
7367                  None
7368
7369
7370             _\bB_\bu_\bg_\bs
7371                  Under some configurations, it is not possible to mointor  the  mail
7372                  delivery transaction; `-watch' is a no-op on those systems.
7373
7374                  Using `-split 0' doesn't work correctly.
7375
7376
7377
7378
7379
7380
7381
7382
7383
7384
7385
7386
7387             [mh.6]                           MH.6.8                      UCI version
7388
7389
7390
7391
7392
7393
7394
7395
7396
7397             SHOW(1)                          -112-                           SHOW(1)
7398
7399
7400             _\bN_\bA_\bM_\bE
7401                  show - show (list) messages
7402
7403             _\bS_\bY_\bN_\bO_\bP_\bS_\bI_\bS
7404                  show [+folder] [msgs] [-draft] [-header] [-noheader]
7405                       [-showproc program] [-noshowproc] [switches for _\bs_\bh_\bo_\bw_\bp_\br_\bo_\bc]
7406                       [-help]
7407
7408             _\bD_\bE_\bS_\bC_\bR_\bI_\bP_\bT_\bI_\bO_\bN
7409
7410                  _\bS_\bh_\bo_\bw lists each of the specified messages to  the  standard  output
7411                  (typically,  the  terminal).   Typically,  the  messages are listed
7412                  exactly as they are, with no reformatting.  A program named by  the
7413                  _\bs_\bh_\bo_\bw_\bp_\br_\bo_\bc  profile  component  is invoked to do the listing, and any
7414                  switches not recognized by _\bs_\bh_\bo_\bw are passed along to  that  program.
7415                  The  default program is known as _\bm_\bo_\br_\be (1).  To override the default
7416                  and the _\bs_\bh_\bo_\bw_\bp_\br_\bo_\bc profile  component,  use  the  `-showproc program'
7417                  switch.   For  example, `-show pr' will cause the _\bp_\br (1) program to
7418                  list the messages.  The _\bM_\bH command _\bm_\bh_\bl can be used as a _\bs_\bh_\bo_\bw_\bp_\br_\bo_\bc to
7419                  show  messages in a more uniform format.  Normally, this program is
7420                  specified as the _\bs_\bh_\bo_\bw_\bp_\br_\bo_\bc is the user's .mh_profile.   See  _\bm_\bh_\bl (1)
7421                  for  the  details.   If  the  `-noshowproc'  option  is  specified,
7422                  `/bin/cat' is used instead of _\bs_\bh_\bo_\bw_\bp_\br_\bo_\bc.
7423
7424                  If you have messages with multi-media content,  you  should  define
7425                  the  profile entry _\bm_\bh_\bn_\bp_\br_\bo_\bc, which is the name of a program to mani-
7426                  pulate multi-media messages.  The _\bm_\bh_\bn (1) program is  suitable  for
7427                  this  purpose.   Note that if the _\bm_\bh_\bn_\bp_\br_\bo_\bc profile entry is defined,
7428                  the `-noshowproc' option is NOT specified, and if one or more named
7429                  messages  has  a multi-media content, then the program indicated by
7430                  _\bm_\bh_\bn_\bp_\br_\bo_\bc will be run instead of _\bs_\bh_\bo_\bw_\bp_\br_\bo_\bc.  The use  of  the  _\bm_\bh_\bn_\bp_\br_\bo_\bc
7431                  can also be disabled if the environment variable $NOMHNPROC is set.
7432
7433                  The `-header' switch tells _\bs_\bh_\bo_\bw to display a  one-line  description
7434                  of  the  message being shown.  This description includes the folder
7435                  and the message number.
7436
7437                  If no `msgs' are specified, the current message is used.   If  more
7438                  than  one  message  is  specified,  _\bm_\bo_\br_\be will prompt for a <RETURN>
7439                  prior to listing each message.  _\bm_\bo_\br_\be will list each message, a page
7440                  at  a  time.   When  the end of page is reached, _\bm_\bo_\br_\be will ring the
7441                  bell and wait for a <SPACE> or <RETURN>.  If a <RETURN> is entered,
7442                  _\bm_\bo_\br_\be  will print the next line, whereas <SPACE> will print the next
7443                  screenful.  To exit _\bm_\bo_\br_\be, type "q".
7444
7445                  If the standard output is not a terminal, no queries are made,  and
7446                  each file is listed with a one-line header and two lines of separa-
7447                  tion.
7448
7449                  "show -draft" will list the file <mh-dir>/draft if it exists.
7450
7451                  If the profile entry "Unseen-Sequence" is  present  and  non-empty,
7452
7453             [mh.6]                           MH.6.8                      UCI version
7454
7455
7456
7457
7458
7459
7460
7461
7462
7463             SHOW(1)                          -113-                           SHOW(1)
7464
7465
7466                  then _\bs_\bh_\bo_\bw will remove each of the messages shown from each sequence
7467                  named  by  the   profile   entry.    This   is   similar   to   the
7468                  "Previous-Sequence"  profile  entry  supported  by  all _\bM_\bH commands
7469                  which take `msgs' or `msg' arguments.
7470
7471             _\bF_\bi_\bl_\be_\bs
7472                  $HOME/.mh_profile                    The user profile
7473
7474
7475             _\bP_\br_\bo_\bf_\bi_\bl_\be _\bC_\bo_\bm_\bp_\bo_\bn_\be_\bn_\bt_\bs
7476                  Path:                To determine the user's MH directory
7477                  Current-Folder:      To find the default current folder
7478                  Unseen-Sequence:     To name sequences denoting unseen messages
7479                  showproc:            Program to show messages
7480                  mhnproc:             Program to show messages with multi-media con-
7481                  tent
7482
7483
7484             _\bS_\be_\be _\bA_\bl_\bs_\bo
7485                  mhl(1), more(1), next(1), pick(1), prev(1), scan(1)
7486
7487
7488             _\bD_\be_\bf_\ba_\bu_\bl_\bt_\bs
7489                  `+folder' defaults to the current folder
7490                  `msgs' defaults to cur
7491                  `-header'
7492
7493
7494             _\bC_\bo_\bn_\bt_\be_\bx_\bt
7495                  If a folder is given, it will become the current folder.  The  last
7496                  message shown will become the current message.
7497
7498
7499
7500
7501
7502
7503
7504
7505
7506
7507
7508
7509
7510
7511
7512
7513
7514
7515
7516
7517
7518
7519             [mh.6]                           MH.6.8                      UCI version
7520
7521
7522
7523
7524
7525
7526
7527
7528
7529             SHOW(1)                          -114-                           SHOW(1)
7530
7531
7532             _\bB_\bu_\bg_\bs
7533                  The `-header' switch doesn't work when `msgs' expands to more  than
7534                  one  message.   If the _\bs_\bh_\bo_\bw_\bp_\br_\bo_\bc is _\bm_\bh_\bl, then is problem can be cir-
7535                  cumvented by referencing the "messagename" field in the _\bm_\bh_\bl  format
7536                  file.
7537
7538                  _\bS_\bh_\bo_\bw updates the user's context before showing the message.   Hence
7539                  _\bs_\bh_\bo_\bw  will  mark messages as seen prior to the user actually seeing
7540                  them.  This is generally not a problem, unless the user  relies  on
7541                  the  "unseen"  messages  mechanism, and interrupts _\bs_\bh_\bo_\bw while it is
7542                  showing "unseen" messages.
7543
7544                  If _\bs_\bh_\bo_\bw_\bp_\br_\bo_\bc is _\bm_\bh_\bl, then _\bs_\bh_\bo_\bw uses a built-in _\bm_\bh_\bl: it does not  ac-
7545                  tually  run  the  _\bm_\bh_\bl  program.   Hence,  if  you  define  your own
7546                  _\bs_\bh_\bo_\bw_\bp_\br_\bo_\bc, don't call it _\bm_\bh_\bl since _\bs_\bh_\bo_\bw won't run it.
7547
7548                  If _\bm_\bo_\br_\be (1) is your showproc (the default), then avoid running _\bs_\bh_\bo_\bw
7549                  in  the  background  with only its standard output piped to another
7550                  process, as in
7551
7552                       show | imprint &
7553
7554                  Due to a bug in _\bm_\bo_\br_\be, show will go into a "tty  input"  state.   To
7555                  avoid  this  problem,  re-direct  _\bs_\bh_\bo_\bw's diagnostic output as well.
7556                  For users of _\bc_\bs_\bh:
7557
7558                       show |& imprint &
7559
7560                  For users of _\bs_\bh:
7561
7562                       show 2>&1 | imprint &
7563
7564
7565
7566
7567
7568
7569
7570
7571
7572
7573
7574
7575
7576
7577
7578
7579
7580
7581
7582
7583
7584
7585             [mh.6]                           MH.6.8                      UCI version
7586
7587
7588
7589
7590
7591
7592
7593
7594
7595             SLOCAL(1)                        -115-                         SLOCAL(1)
7596
7597
7598             _\bN_\bA_\bM_\bE
7599                  slocal - special local mail delivery
7600
7601             _\bS_\bY_\bN_\bO_\bP_\bS_\bI_\bS
7602                  /usr/bs/mh-6.8/lib/slocal [address info sender]
7603                       [-addr address] [-info data] [-sender sender]
7604                       [-user username] [-mailbox mbox] [-file file]
7605                       [-maildelivery deliveryfile] [-verbose] [-noverbose] [-debug]
7606                       [-help]
7607
7608             _\bD_\bE_\bS_\bC_\bR_\bI_\bP_\bT_\bI_\bO_\bN
7609
7610                  _\bS_\bl_\bo_\bc_\ba_\bl is a program designed to allow you to have your inbound mail
7611                  processed according to a complex set of selection criteria.  You do
7612                  not normally invoke _\bs_\bl_\bo_\bc_\ba_\bl yourself, rather _\bs_\bl_\bo_\bc_\ba_\bl  is  invoked  on
7613                  your behalf by your system's Message Transfer Agent.
7614
7615                  The message selection criteria used by _\bs_\bl_\bo_\bc_\ba_\bl is specified  in  the
7616                  file  ._\bm_\ba_\bi_\bl_\bd_\be_\bl_\bi_\bv_\be_\br_\by  in  the  user's home directory.  The format of
7617                  this file is given below.
7618
7619                  The message delivery address and message sender are determined from
7620                  the  Message  Transfer  Agent  envelope  information,  if possible.
7621                  Under _\bS_\be_\bn_\bd_\bM_\ba_\bi_\bl, the sender will  obtained  from  the  UUCP  "From "
7622                  line,  if present.  The user may override these values with command
7623                  line arguments, or arguments to the `-addr' and `-sender' switches.
7624
7625                  The message is normally read from the standard input.  The  `-file'
7626                  switch  sets  the name of the file from which the message should be
7627                  read, instead of reading stdin.  The `-user'  switch  tells  _\bs_\bl_\bo_\bc_\ba_\bl
7628                  the  name  of the user for whom it is delivering mail.  The `-mail-
7629                  box' switch tells _\bs_\bl_\bo_\bc_\ba_\bl the name of the user's maildrop file.
7630
7631                  The `-info' switch may be used to pass  an  arbitrary  argument  to
7632                  sub-processes  which  _\bs_\bl_\bo_\bc_\ba_\bl may invoke on your behalf.  The `-ver-
7633                  bose' switch causes _\bs_\bl_\bo_\bc_\ba_\bl to give information on stdout about  its
7634                  progress.  The `-debug' switch produces more verbose debugging out-
7635                  put on stderr.
7636
7637
7638               _\bM_\be_\bs_\bs_\ba_\bg_\be _\bT_\br_\ba_\bn_\bs_\bf_\be_\br _\bA_\bg_\be_\bn_\bt_\bs
7639
7640                  If your MTA is _\bS_\be_\bn_\bd_\bM_\ba_\bi_\bl, you should include the line
7641
7642                           "| /usr/bs/mh-6.8/lib/slocal -user username"
7643
7644                  in your .forward file in your  home  directory.   This  will  cause
7645                  _\bS_\be_\bn_\bd_\bM_\ba_\bi_\bl to invoke _\bs_\bl_\bo_\bc_\ba_\bl on your behalf.
7646
7647                  If your MTA is _\bM_\bM_\bD_\bF-_\bI, you should (symbolically)  link  /usr/bs/mh-
7648                  6.8/lib/slocal  to  the  file  bin/rcvmail  in your home directory.
7649                  This will cause _\bM_\bM_\bD_\bF-_\bI to invoke _\bs_\bl_\bo_\bc_\ba_\bl on  your  behalf  with  the
7650
7651             [mh.6]                           MH.6.8                      UCI version
7652
7653
7654
7655
7656
7657
7658
7659
7660
7661             SLOCAL(1)                        -116-                         SLOCAL(1)
7662
7663
7664                  correct "_\ba_\bd_\bd_\br_\be_\bs_\bs _\bi_\bn_\bf_\bo _\bs_\be_\bn_\bd_\be_\br" arguments.
7665
7666                  If your MTA is  _\bM_\bM_\bD_\bF-_\bI_\bI,  then  you  should  not  use  _\bs_\bl_\bo_\bc_\ba_\bl.   An
7667                  equivalent  functionality is already provided by _\bM_\bM_\bD_\bF-_\bI_\bI; see mail-
7668                  delivery(5) for details.
7669
7670
7671               _\bT_\bh_\be _\bM_\ba_\bi_\bl_\bd_\be_\bl_\bi_\bv_\be_\br_\by _\bF_\bi_\bl_\be
7672
7673
7674                  The ._\bm_\ba_\bi_\bl_\bd_\be_\bl_\bi_\bv_\be_\br_\by file controls how local  delivery  is  performed.
7675                  Each  line  of  this  file  consists  of  five fields, separated by
7676                  white-space or comma.  Since double-quotes are honored, these char-
7677                  acters may be included in a single argument by enclosing the entire
7678                  argument in double-quotes.   A  double-quote  can  be  included  by
7679                  preceding  it  with  a  backslash.   Lines  beginning  with `#' are
7680                  ignored.  The format of each line in the ._\bm_\ba_\bi_\bl_\bd_\be_\bl_\bi_\bv_\be_\br_\by file is:
7681
7682
7683                          header  pattern action  result  string
7684
7685                  header:
7686                       The name of a header field that is to be searched for  a  pat-
7687                       tern.   This  is  any field in the headers of the message that
7688                       might be present.   The  following  special  fields  are  also
7689                       defined:
7690
7691                       _\bs_\bo_\bu_\br_\bc_\be    the out-of-band sender information
7692                       _\ba_\bd_\bd_\br      the address that was used to cause delivery  to  the
7693                                 recipient
7694                       _\bd_\be_\bf_\ba_\bu_\bl_\bt   this  matches  _\bo_\bn_\bl_\by  if  the  message  hasn't   been
7695                                 delivered yet
7696                       *         this always matches
7697
7698                  pattern:
7699                       The sequence of characters to match in  the  specified  header
7700                       field.  Matching is case-insensitive, but does not use regular
7701                       expressions.
7702
7703                  action:
7704                       The action to take to deliver the message:
7705
7706                       _\bd_\be_\bs_\bt_\br_\bo_\by   This action always succeeds.
7707
7708                       _\bf_\bi_\bl_\be or > Append the message to the file named by string.  The
7709                                 message is appended to the file in the maildrop for-
7710                                 mat which is used by your message transport  system.
7711                                 If  the  message  can  be appended to the file, then
7712                                 this action succeeds.  When writing to the  file,  a
7713                                 "Delivery-Date: date"  header  is  added which indi-
7714                                 cates the date and time that message was appended to
7715                                 the file.
7716
7717             [mh.6]                           MH.6.8                      UCI version
7718
7719
7720
7721
7722
7723
7724
7725
7726
7727             SLOCAL(1)                        -117-                         SLOCAL(1)
7728
7729
7730                       _\bm_\bb_\bo_\bx      Identical to _\bf_\bi_\bl_\be, but always  appends  the  message
7731                                 using  the  format  used  by _\bp_\ba_\bc_\bk_\bf (the MMDF mailbox
7732                                 format).
7733
7734                       _\bp_\bi_\bp_\be or | Pipe the message as the standard input to  the  com-
7735                                 mand  named  by string, using the Bourne shell _\bs_\bh(1)
7736                                 to interpret the string.  Prior to giving the string
7737                                 to  the  shell,  it  is  expanded with the following
7738                                 built-in variables:
7739
7740                                 $(sender) the out-of-band sender information
7741                                 $(address)  the  address  that  was  used  to  cause
7742                                           delivery to the recipient
7743                                 $(size)   the size of the message in bytes
7744                                 $(reply-to) either the "Reply-To:" or "From:"  field
7745                                           of the message
7746                                 $(info)   the out-of-band information specified
7747                       _\bq_\bp_\bi_\bp_\be or
7748                       <_\bc_\ba_\br_\be_\bt>   Similar to _\bp_\bi_\bp_\be, but executes the command  directly,
7749                                 after  built-in  variable  expansion, without assis-
7750                                 tance from the shell.  This action can  be  used  to
7751                                 avoid  quoting  special  characters which your shell
7752                                 might interpret.
7753
7754                  result:
7755                       Indicates how the action should be performed:
7756
7757                       _\bA         Perform the action.  If the  action  succeeds,  then
7758                                 the message is considered delivered.
7759
7760                       _\bR         Perform the action.  Regardless of  the  outcome  of
7761                                 the action, the message is not considered delivered.
7762
7763                       ?         Perform the action only if the message has not  been
7764                                 delivered.  If the action succeeds, then the message
7765                                 is considered delivered.
7766
7767                       _\bN         Perform the action only if the message has not  been
7768                                 delivered  and  the  previous  action succeeded.  If
7769                                 this action succeeds, then the message is considered
7770                                 delivered.
7771
7772                  To summarize, here's an example:
7773
7774                  #_\bf_\bi_\be_\bl_\bd   _\bp_\ba_\bt_\bt_\be_\br_\bn   _\ba_\bc_\bt_\bi_\bo_\bn  _\br_\be_\bs_\bu_\bl_\bt    _\bs_\bt_\br_\bi_\bn_\bg
7775                  # lines starting with a '#' are ignored, as are blank lines
7776                  #
7777                  # file mail with mmdf2 in the "To:" line into file mmdf2.log
7778                  _\bT_\bo       _\bm_\bm_\bd_\bf_\b2      _\bf_\bi_\bl_\be     _\bA       _\bm_\bm_\bd_\bf_\b2._\bl_\bo_\bg
7779                  # Messages from mmdf pipe to the program err-message-archive
7780                  _\bF_\br_\bo_\bm     _\bm_\bm_\bd_\bf       _\bp_\bi_\bp_\be     _\bA       /_\bb_\bi_\bn/_\be_\br_\br-_\bm_\be_\bs_\bs_\ba_\bg_\be-_\ba_\br_\bc_\bh_\bi_\bv_\be
7781                  # Anything with the "Sender:" address "mh-workers"
7782
7783             [mh.6]                           MH.6.8                      UCI version
7784
7785
7786
7787
7788
7789
7790
7791
7792
7793             SLOCAL(1)                        -118-                         SLOCAL(1)
7794
7795
7796                  # file in mh.log if not filed already
7797                  _\bS_\be_\bn_\bd_\be_\br   _\bm_\bh-_\bw_\bo_\br_\bk_\be_\br_\bs _\bf_\bi_\bl_\be     ?       _\bm_\bh._\bl_\bo_\bg
7798                  # "To:" unix - put in file unix-news
7799                  _\bT_\bo       _\bU_\bn_\bi_\bx        >       _\bA       _\bu_\bn_\bi_\bx-_\bn_\be_\bw_\bs
7800                  # if the address is jpo=ack - send an acknowledgement copy back
7801                  _\ba_\bd_\bd_\br     _\bj_\bp_\bo=_\ba_\bc_\bk     |       _\bR       "/_\bb_\bi_\bn/_\br_\be_\bs_\be_\bn_\bd -_\br $(_\br_\be_\bp_\bl_\by-_\bt_\bo)"
7802                  # anything from steve - destroy!
7803                  _\bF_\br_\bo_\bm     _\bs_\bt_\be_\bv_\be    _\bd_\be_\bs_\bt_\br_\bo_\by    _\bA       -
7804                  # anything not matched yet - put into mailbox
7805                  _\bd_\be_\bf_\ba_\bu_\bl_\bt  -           >       ?       _\bm_\ba_\bi_\bl_\bb_\bo_\bx
7806                  # always run rcvtty
7807                  *        -           |       _\bR       /_\bm_\bh/_\bl_\bi_\bb/_\br_\bc_\bv_\bt_\bt_\by
7808
7809                  The file is always read completely, so that several matches can  be
7810                  made and several actions can be taken.  The ._\bm_\ba_\bi_\bl_\bd_\be_\bl_\bi_\bv_\be_\br_\by file must
7811                  be owned either by the user or by root, and must be  writable  only
7812                  by  the  owner.  If the ._\bm_\ba_\bi_\bl_\bd_\be_\bl_\bi_\bv_\be_\br_\by file cannot be found, or does
7813                  not perform an action which delivers the  message,  then  the  file
7814                  /usr/bs/mh-6.8/lib/maildelivery  is  read  according  to  the  same
7815                  rules.  This file must be owned by the root and  must  be  writable
7816                  only by the root.  If this file cannot be found or does not perform
7817                  an action which delivers the message, then standard delivery to the
7818                  user's maildrop is performed.
7819
7820
7821               _\bS_\bu_\bb-_\bp_\br_\bo_\bc_\be_\bs_\bs _\be_\bn_\bv_\bi_\br_\bo_\bn_\bm_\be_\bn_\bt
7822
7823                  When a process is invoked, its environment is:  the  user/group-ids
7824                  are   set   to  recipient's  ids;  the  working  directory  is  the
7825                  recipient's home directory; the umask is 0077; the process  has  no
7826                  /dev/tty;  the  standard  input is set to the message; the standard
7827                  output and diagnostic output are set to /dev/null; all other  file-
7828                  descriptors  are  closed;  the envariables $USER, $HOME, $SHELL are
7829                  set appropriately, and no other envariables exist.
7830
7831                  The process is given a certain amount of time to execute.   If  the
7832                  process  does  not exit within this limit, the process will be ter-
7833                  minated with extreme prejudice.  The amount of time  is  calculated
7834                  as  ((size  x 60) + 300) seconds, where size is the number of bytes
7835                  in the message.
7836
7837                  The exit status of the process is consulted in determining the suc-
7838                  cess  of  the action.  An exit status of zero means that the action
7839                  succeeded.  Any other exit status (or abnormal  termination)  means
7840                  that the action failed.
7841
7842                  In order to avoid any time limitations, you might implement a  pro-
7843                  cess  that began by _\bf_\bo_\br_\bk_\bi_\bn_\bg.  The parent would return the appropri-
7844                  ate value immediately, and the child could continue on, doing what-
7845                  ever it wanted for as long as it wanted.  This approach is somewhat
7846                  risky if the parent is going to return an exit status of zero.   If
7847                  the  parent  is  going  to return a non-zero exit status, then this
7848
7849             [mh.6]                           MH.6.8                      UCI version
7850
7851
7852
7853
7854
7855
7856
7857
7858
7859             SLOCAL(1)                        -119-                         SLOCAL(1)
7860
7861
7862                  approach can lead to quicker delivery into your maildrop.
7863
7864             _\bF_\bi_\bl_\be_\bs
7865                  /usr/bs/mh-6.8/lib/mtstailor         MH tailor file
7866                  $HOME/.maildelivery                  The file controlling local delivery
7867                  /usr/bs/mh-6.8/lib/maildelivery      Rather than the standard file
7868                  /usr/spool/mail/$USER                The default maildrop
7869
7870
7871             _\bS_\be_\be _\bA_\bl_\bs_\bo
7872                  rcvstore(1), mhook(1), mh-format(5) , maildelivery(5)
7873
7874
7875             _\bD_\be_\bf_\ba_\bu_\bl_\bt_\bs
7876                  `-noverbose'
7877                  `-maildelivery .maildelivery'
7878                  `-mailbox /usr/spool/mail/$USER'
7879                  `-file' defaults to stdin
7880                  `-user' defaults to the current user
7881
7882
7883             _\bC_\bo_\bn_\bt_\be_\bx_\bt
7884                  None
7885
7886
7887             _\bH_\bi_\bs_\bt_\bo_\br_\by
7888                  _\bS_\bl_\bo_\bc_\ba_\bl is designed to be backward-compatible with the  _\bm_\ba_\bi_\bl_\bd_\be_\bl_\bi_\bv_\be_\br_\by
7889                  facility  provided by _\bM_\bM_\bD_\bF-_\bI_\bI.  Thus, the ._\bm_\ba_\bi_\bl_\bd_\be_\bl_\bi_\bv_\be_\br_\by file syntax
7890                  is limited, as is the functionality of _\bs_\bl_\bo_\bc_\ba_\bl.
7891
7892                  In addition to an exit status of zero, the _\bM_\bM_\bD_\bF values _\bR_\bP__\bM_\bO_\bK  (32)
7893                  and  _\bR_\bP__\bO_\bK (9) mean that the message has been fully delivered.  Any
7894                  other non-zero exit status, including abnormal termination, is  in-
7895                  terpreted  as the _\bM_\bM_\bD_\bF value _\bR_\bP__\bM_\bE_\bC_\bH (200), which means "use an al-
7896                  ternate route" (deliver the message to the maildrop).
7897
7898
7899             _\bB_\bu_\bg_\bs
7900                  Only two return codes are meaningful, others should be.
7901
7902                  _\bS_\bl_\bo_\bc_\ba_\bl is designed to be backwards-compatible with the _\bm_\ba_\bi_\bl_\bd_\be_\bl_\bi_\bv_\be_\br_\by
7903                  functionality provided by MMDF-II.
7904
7905                  Versions of _\bM_\bM_\bD_\bF with the _\bm_\ba_\bi_\bl_\bd_\be_\bl_\bi_\bv_\be_\br_\by  mechanism  aren't  entirely
7906                  backwards-compatible with earlier versions of _\bM_\bM_\bD_\bF.  If you have an
7907                  _\bM_\bM_\bD_\bF-_\bI old-style hook, the best you can do is to  have  a  one-line
7908                  ._\bm_\ba_\bi_\bl_\bd_\be_\bl_\bi_\bv_\be_\br_\by file:
7909
7910                       default - pipe A "bin/rcvmail $(address) $(info) $(sender)"
7911
7912
7913
7914
7915             [mh.6]                           MH.6.8                      UCI version
7916
7917
7918
7919
7920
7921
7922
7923
7924
7925             SORTM(1)                         -120-                          SORTM(1)
7926
7927
7928             _\bN_\bA_\bM_\bE
7929                  sortm - sort messages
7930
7931             _\bS_\bY_\bN_\bO_\bP_\bS_\bI_\bS
7932                  sortm [+folder] [msgs] [-datefield field] [-textfield field]
7933                       [-notextfield] [-limit days] [-nolimit] [-verbose]
7934                       [-noverbose] [-help]
7935
7936             _\bD_\bE_\bS_\bC_\bR_\bI_\bP_\bT_\bI_\bO_\bN
7937
7938                  _\bS_\bo_\br_\bt_\bm sorts the specified messages in the named folder according to
7939                  the chronological order of the "Date:" field of each message.
7940
7941                  The `-verbose' switch directs _\bs_\bo_\br_\bt_\bm to tell the  user  the  general
7942                  actions that it is taking to place the folder in sorted order.
7943
7944                  The `-datefield field' switch tells _\bs_\bo_\br_\bt_\bm the name of the field  to
7945                  use  when  making  the  date comparison.  If the user has a special
7946                  field in each message, such as  "BB-Posted:"  or  "Delivery-Date:",
7947                  then  the  `-datefield'  switch  can  be used to direct _\bs_\bo_\br_\bt_\bm which
7948                  field to examine.
7949
7950                  The `-textfield field' switch causes _\bs_\bo_\br_\bt_\bm to sort messages by  the
7951                  specified  text  field.   If  this  field is "subject", any leading
7952                  "re:" is stripped off.  In any case, all characters except  letters
7953                  and  numbers  are  stripped  and  the  resulting strings are sorted
7954                  datefield-major, textfield-minor, using  a  case  insensitive  com-
7955                  parison.
7956
7957                  With `-textfield field', if `-limit days'  is  specified,  messages
7958                  with  similar textfields that are dated within `days' of each other
7959                  appear together.  Specifying `-nolimit' makes the  limit  infinity.
7960                  With   `-limit  0',  the  sort  is  instead  made  textfield-major,
7961                  date-minor.
7962
7963                  For example, to order a folder by date-major, subject-minor, use:
7964
7965                       sortm -textfield subject +folder
7966
7967
7968             _\bF_\bi_\bl_\be_\bs
7969                  $HOME/.mh_profile                    The user profile
7970
7971
7972             _\bP_\br_\bo_\bf_\bi_\bl_\be _\bC_\bo_\bm_\bp_\bo_\bn_\be_\bn_\bt_\bs
7973                  Path:                To determine the user's MH directory
7974                  Current-Folder:      To find the default current folder
7975
7976
7977             _\bS_\be_\be _\bA_\bl_\bs_\bo
7978                  folder (1)
7979
7980
7981             [mh.6]                           MH.6.8                      UCI version
7982
7983
7984
7985
7986
7987
7988
7989
7990
7991             SORTM(1)                         -121-                          SORTM(1)
7992
7993
7994             _\bD_\be_\bf_\ba_\bu_\bl_\bt_\bs
7995                  `+folder' defaults to the current folder
7996                  `msgs' defaults to all
7997                  `-datefield date'
7998                  `-notextfield'
7999                  `-noverbose'
8000                  `-nolimit'
8001
8002
8003             _\bC_\bo_\bn_\bt_\be_\bx_\bt
8004                  If a folder is given, it will become the current  folder.   If  the
8005                  current  message  is  moved,  _\bs_\bo_\br_\bt_\bm  will  preserve  its  status as
8006                  current.
8007
8008
8009             _\bH_\bi_\bs_\bt_\bo_\br_\by
8010                  Timezones used to be ignored when comparing dates: they aren't  any
8011                  more.
8012
8013                  Messages which were in the folder, but  not  specified  by  `msgs',
8014                  used  to  be  moved to the end of the folder; now such messages are
8015                  left untouched.
8016
8017                  Previously, _\bs_\bo_\br_\bt_\bm would try to fill any gaps in a folder within the
8018                  range  of  messages  it  sorted.  To improve performance, _\bs_\bo_\br_\bt_\bm now
8019                  minimizes the number of message  moves.   To  pack  a  folder,  use
8020                  "_\bf_\bo_\bl_\bd_\be_\br -_\bp_\ba_\bc_\bk" instead.
8021
8022
8023             _\bB_\bu_\bg_\bs
8024                  If _\bs_\bo_\br_\bt_\bm encounters a message without a date-field, or if the  mes-
8025                  sage  has a date-field that _\bs_\bo_\br_\bt_\bm cannot parse, then _\bs_\bo_\br_\bt_\bm attempts
8026                  to keep the message in the same relative position.  This  does  not
8027                  always  work.  For instance, if the first message encountered lacks
8028                  a date which can be parsed, then it will usually be placed  at  the
8029                  end of the messages being sorted.
8030
8031                  When _\bs_\bo_\br_\bt_\bm complains about a message which it can't temporally ord-
8032                  er,  it  complains  about  the message number _\bp_\br_\bi_\bo_\br to sorting.  It
8033                  should indicate what the message number will be _\ba_\bf_\bt_\be_\br sorting.
8034
8035
8036
8037
8038
8039
8040
8041
8042
8043
8044
8045
8046
8047             [mh.6]                           MH.6.8                      UCI version
8048
8049
8050
8051
8052
8053
8054
8055
8056
8057             VMH(1)                           -122-                            VMH(1)
8058
8059
8060             _\bN_\bA_\bM_\bE
8061                  vmh - visual front-end to MH
8062
8063             _\bS_\bY_\bN_\bO_\bP_\bS_\bI_\bS
8064                  vmh [-prompt string] [-vmhproc program] [-novmhproc]
8065                       [switches for _\bv_\bm_\bh_\bp_\br_\bo_\bc] [-help]
8066
8067             _\bD_\bE_\bS_\bC_\bR_\bI_\bP_\bT_\bI_\bO_\bN
8068
8069                  _\bv_\bm_\bh is a program which implements the server side of the _\bM_\bH  window
8070                  management  protocol  and  uses  _\bc_\bu_\br_\bs_\be_\bs (3)  routines to maintain a
8071                  split-screen interface to any program which implements  the  client
8072                  side  of the protocol.  This latter program, called the _\bv_\bm_\bh_\bp_\br_\bo_\bc, is
8073                  specified using the `-vmhproc program' switch.
8074
8075                  The upshot of all this is that one can run _\bm_\bs_\bh on a display  termi-
8076                  nal and get a nice visual interface.  To do this, for example, just
8077                  add the line
8078
8079                       mshproc: vmh
8080
8081                  to your .mh_profile.  (This takes advantage of the fact that _\bm_\bs_\bh is
8082                  the default _\bv_\bm_\bh_\bp_\br_\bo_\bc for _\bv_\bm_\bh.)
8083
8084                  In order to facilitate things, if the `-novmhproc' switch is given,
8085                  and  _\bv_\bm_\bh  can't  run  on  the  user's  terminal, the _\bv_\bm_\bh_\bp_\br_\bo_\bc is run
8086                  directly without the window management protocol.
8087
8088                  After initializing the protocol, _\bv_\bm_\bh prompts the user for a command
8089                  to  be  given to the client.  Usually, this results in output being
8090                  sent to one or more windows.  If a output to a window  would  cause
8091                  it  to  scroll, _\bv_\bm_\bh prompts the user for instructions, roughly per-
8092                  mitting the capabilities of _\bl_\be_\bs_\bs or  _\bm_\bo_\br_\be  (e.g.,  the  ability  to
8093                  scroll backwards and forwards):
8094
8095                       SPACE      advance to the next windowful
8096                       RETURN  *  advance to the next line
8097                       y       *  retreat to the previous line
8098                       d       *  advance to the next ten lines
8099                       u       *  retreat to the previous ten lines
8100                       g       *  go to an arbitrary line
8101                                  (preceed g with the line number)
8102                       G       *  go to the end of the window
8103                                  (if a line number is given, this acts like `g')
8104                       CTRL-L     refresh the entire screen
8105                       h          print a help message
8106                       q          abort the window
8107
8108                  (A `*' indicates that a numeric prefix is meaningful for this  com-
8109                  mand.)
8110
8111                  Note that if a command resulted in more than one window's worth  of
8112
8113             [mh.6]                           MH.6.8                      UCI version
8114
8115
8116
8117
8118
8119
8120
8121
8122
8123             VMH(1)                           -123-                            VMH(1)
8124
8125
8126                  information  being  displayed,  and  you allow the command which is
8127                  generating information for the window to gracefully  finish  (i.e.,
8128                  you  don't  use  the `q' command to abort information being sent to
8129                  the window), then _\bv_\bm_\bh will give you one last change to  peruse  the
8130                  window.   This  is  useful for scrolling back and forth.  Just type
8131                  `q' when you're done.
8132
8133                  To abnormally terminate _\bv_\bm_\bh (without core dump), use  <QUIT>  (usu-
8134                  ally  CTRL-\).   For instance, this does the "right" thing with _\bb_\bb_\bc
8135                  and _\bm_\bs_\bh.
8136
8137             _\bF_\bi_\bl_\be_\bs
8138                  $HOME/.mh_profile                    The user profile
8139
8140
8141             _\bP_\br_\bo_\bf_\bi_\bl_\be _\bC_\bo_\bm_\bp_\bo_\bn_\be_\bn_\bt_\bs
8142                  Path:                To determine the user's MH directory
8143
8144
8145             _\bS_\be_\be _\bA_\bl_\bs_\bo
8146                  msh(1)
8147
8148
8149             _\bD_\be_\bf_\ba_\bu_\bl_\bt_\bs
8150                  `-prompt (vmh) '
8151                  `-vmhproc msh'
8152
8153
8154             _\bC_\bo_\bn_\bt_\be_\bx_\bt
8155                  None
8156
8157
8158             _\bB_\bu_\bg_\bs
8159                  The argument to the `-prompt' switch must be interpreted as a  sin-
8160                  gle  token by the shell that invokes _\bv_\bm_\bh.  Therefore, one must usu-
8161                  ally place the argument to this switch inside double-quotes.
8162
8163                  At present, there is no way to pass signals (e.g., interrupt, quit)
8164                  to the client.  However, generating QUIT when _\bv_\bm_\bh is reading a com-
8165                  mand from the terminal is sufficient to tell the client to go  away
8166                  quickly.
8167
8168                  Acts strangely (loses peer or botches  window  management  protocol
8169                  with peer) on random occasions.
8170
8171
8172
8173
8174
8175
8176
8177
8178
8179             [mh.6]                           MH.6.8                      UCI version
8180
8181
8182
8183
8184
8185
8186
8187
8188
8189             WHATNOW(1)                       -124-                        WHATNOW(1)
8190
8191
8192             _\bN_\bA_\bM_\bE
8193                  whatnow - prompting front-end for send
8194
8195             _\bS_\bY_\bN_\bO_\bP_\bS_\bI_\bS
8196                  whatnow [-draftfolder +folder] [-draftmessage msg] [-nodraftfolder]
8197                       [-editor editor] [-noedit] [-prompt string] [file] [-help]
8198
8199             _\bD_\bE_\bS_\bC_\bR_\bI_\bP_\bT_\bI_\bO_\bN
8200
8201                  _\bW_\bh_\ba_\bt_\bn_\bo_\bw is the default program that  queries  the  user  about  the
8202                  disposition  of a composed draft.  It is normally invoked by one of
8203                  _\bc_\bo_\bm_\bp, _\bd_\bi_\bs_\bt, _\bf_\bo_\br_\bw, or _\br_\be_\bp_\bl after the initial edit.
8204
8205                  When started, the editor is started on the draft (unless  `-noedit'
8206                  is  given,  in  which  case the initial edit is suppressed).  Then,
8207                  _\bw_\bh_\ba_\bt_\bn_\bo_\bw repetitively prompts the user with "What now?" and awaits a
8208                  response.  The valid responses are:
8209
8210                  display         to list the message being distributed/replied-to on
8211                                  the terminal
8212                  edit            to re-edit using the same editor that was used on the
8213                                  preceding round unless a profile entry
8214                                  "<lasteditor>-next: <editor>" names an alternate editor
8215                  edit <editor>   to invoke <editor> for further editing
8216                  list            to list the draft on the terminal
8217                  push            to send the message in the background
8218                  quit            to terminate the session and preserve the draft
8219                  quit -delete    to terminate, then delete the draft
8220                  refile +folder  to refile the draft into the given folder
8221                  send            to send the message
8222                  send -watch     to cause the delivery process to be monitored
8223                  whom            to list the addresses that the message will go to
8224                  whom -check     to list the addresses and verify that they are
8225                                  acceptable to the transport service
8226
8227                  For the edit response, any valid switch to  the  editor  is  valid.
8228                  Similarly,  for  the  send  and whom responses, any valid switch to
8229                  _\bs_\be_\bn_\bd (1) and _\bw_\bh_\bo_\bm (1) commands, respectively, are valid.   For  the
8230                  push  response,  any  valid  switch  to  _\bs_\be_\bn_\bd (1) is valid (as this
8231                  merely invokes _\bs_\be_\bn_\bd with  the  `-push'  option).   For  the  _\br_\be_\bf_\bi_\bl_\be
8232                  response,  any  valid  switch  to  the  _\bf_\bi_\bl_\be_\bp_\br_\bo_\bc is valid.  For the
8233                  display and list responses, any valid  argument  to  the  _\bl_\bp_\br_\bo_\bc  is
8234                  valid.   If any non-switch arguments are present, then the pathname
8235                  of the draft will be excluded from the argument list given  to  the
8236                  _\bl_\bp_\br_\bo_\bc (this is useful for listing another _\bM_\bH message).
8237
8238                  See _\bm_\bh-_\bp_\br_\bo_\bf_\bi_\bl_\be (5) for further information about  how  editors  are
8239                  used  by MH.  It also discusses how complex envariables can be used
8240                  to direct _\bw_\bh_\ba_\bt_\bn_\bo_\bw's actions.
8241
8242                  The `-prompt string' switch sets the prompting string for _\bw_\bh_\ba_\bt_\bn_\bo_\bw.
8243
8244
8245             [mh.6]                           MH.6.8                      UCI version
8246
8247
8248
8249
8250
8251
8252
8253
8254
8255             WHATNOW(1)                       -125-                        WHATNOW(1)
8256
8257
8258                  The `-draftfolder +folder' and `-draftmessage msg' switches  invoke
8259                  the _\bM_\bH draft folder facility.  This is an advanced (and highly use-
8260                  ful) feature.  Consult the Advanced  Features  section  of  the  _\bM_\bH
8261                  manual for more information.
8262
8263             _\bF_\bi_\bl_\be_\bs
8264                  $HOME/.mh_profile                    The user profile
8265                  <mh-dir>/draft                       The draft file
8266
8267
8268             _\bP_\br_\bo_\bf_\bi_\bl_\be _\bC_\bo_\bm_\bp_\bo_\bn_\be_\bn_\bt_\bs
8269                  Path:                To determine the user's MH directory
8270                  Draft-Folder:        To find the default draft-folder
8271                  Editor:              To override the default editor
8272                  <lasteditor>-next:   To name an editor to be used after  exit  from
8273                  <lasteditor>
8274                  automhnproc:         Program to automatically run prior to  sending
8275                                       if the draft is an _\bm_\bh_\bn composition file
8276                  fileproc:            Program to refile the message
8277                  lproc:               Program to list the contents of a message
8278                  sendproc:            Program to use to send the message
8279                  whomproc:            Program to determine who a message would go to
8280
8281
8282             _\bS_\be_\be _\bA_\bl_\bs_\bo
8283                  send(1), whom(1)
8284
8285
8286             _\bD_\be_\bf_\ba_\bu_\bl_\bt_\bs
8287                  `-prompt "What Now? "'
8288
8289
8290             _\bC_\bo_\bn_\bt_\be_\bx_\bt
8291                  None
8292
8293
8294
8295
8296
8297
8298
8299
8300
8301
8302
8303
8304
8305
8306
8307
8308
8309
8310
8311             [mh.6]                           MH.6.8                      UCI version
8312
8313
8314
8315
8316
8317
8318
8319
8320
8321             WHATNOW(1)                       -126-                        WHATNOW(1)
8322
8323
8324             _\bB_\bu_\bg_\bs
8325                  The argument to the `-prompt' switch must be interpreted as a  sin-
8326                  gle  token  by the shell that invokes _\bw_\bh_\ba_\bt_\bn_\bo_\bw.  Therefore, one must
8327                  usually place the argument to this switch inside double-quotes.
8328
8329                  If the initial edit fails, _\bw_\bh_\ba_\bt_\bn_\bo_\bw deletes your draft (by  renaming
8330                  it  with  a  leading  comma); failure of a later edit preverves the
8331                  draft.
8332
8333                  If _\bw_\bh_\ba_\bt_\bn_\bo_\bw_\bp_\br_\bo_\bc is _\bw_\bh_\ba_\bt_\bn_\bo_\bw, then _\bc_\bo_\bm_\bp, _\bd_\bi_\bs_\bt, _\bf_\bo_\br_\bw, and  _\br_\be_\bp_\bl  use  a
8334                  built-in  _\bw_\bh_\ba_\bt_\bn_\bo_\bw,  and  do  not  actually run the _\bw_\bh_\ba_\bt_\bn_\bo_\bw program.
8335                  Hence, if you define your own _\bw_\bh_\ba_\bt_\bn_\bo_\bw_\bp_\br_\bo_\bc, don't  call  it  _\bw_\bh_\ba_\bt_\bn_\bo_\bw
8336                  since it won't be run.
8337
8338                  If _\bs_\be_\bn_\bd_\bp_\br_\bo_\bc is _\bs_\be_\bn_\bd, then _\bw_\bh_\ba_\bt_\bn_\bo_\bw uses a built-in _\bs_\be_\bn_\bd, it does not
8339                  actually  run  the  _\bs_\be_\bn_\bd  program.   Hence,  if you define your own
8340                  _\bs_\be_\bn_\bd_\bp_\br_\bo_\bc, don't call it _\bs_\be_\bn_\bd since _\bw_\bh_\ba_\bt_\bn_\bo_\bw won't run it.
8341
8342
8343
8344
8345
8346
8347
8348
8349
8350
8351
8352
8353
8354
8355
8356
8357
8358
8359
8360
8361
8362
8363
8364
8365
8366
8367
8368
8369
8370
8371
8372
8373
8374
8375
8376
8377             [mh.6]                           MH.6.8                      UCI version
8378
8379
8380
8381
8382
8383
8384
8385
8386
8387             WHOM(1)                          -127-                           WHOM(1)
8388
8389
8390             _\bN_\bA_\bM_\bE
8391                  whom - report to whom a message would go
8392
8393             _\bS_\bY_\bN_\bO_\bP_\bS_\bI_\bS
8394                  whom [-alias aliasfile] [-check] [-nocheck] [-draft]
8395                       [-draftfolder +folder] [-draftmessage msg] [-nodraftfolder]
8396                       [file] [-help]
8397
8398             _\bD_\bE_\bS_\bC_\bR_\bI_\bP_\bT_\bI_\bO_\bN
8399
8400                  _\bW_\bh_\bo_\bm is used to expand the headers of  a  message  into  a  set  of
8401                  addresses  and  optionally verify that those addresses are deliver-
8402                  able at that time (if `-check' is given).
8403
8404                  The `-draftfolder +folder' and `-draftmessage msg' switches  invoke
8405                  the _\bM_\bH draft folder facility.  This is an advanced (and highly use-
8406                  ful) feature.  Consult the Advanced  Features  section  of  the  _\bM_\bH
8407                  manual for more information.
8408
8409                  The files specified by the profile entry "Aliasfile:" and any addi-
8410                  tional  alias  files given by the `-alias aliasfile' switch will be
8411                  read (more than one file,  each   preceeded  by  `-alias',  can  be
8412                  named).  See _\bm_\bh-_\ba_\bl_\bi_\ba_\bs (5) for more information.
8413
8414             _\bF_\bi_\bl_\be_\bs
8415                  $HOME/.mh_profile                    The user profile
8416
8417
8418             _\bP_\br_\bo_\bf_\bi_\bl_\be _\bC_\bo_\bm_\bp_\bo_\bn_\be_\bn_\bt_\bs
8419                  Path:                To determine the user's MH directory
8420                  Draft-Folder:        To find the default draft-folder
8421                  Aliasfile:           For a default alias file
8422                  postproc:            Program to post the message
8423
8424
8425             _\bS_\be_\be _\bA_\bl_\bs_\bo
8426                  mh-alias(5), post(8)
8427
8428
8429             _\bD_\be_\bf_\ba_\bu_\bl_\bt_\bs
8430                  `file' defaults to <mh-dir>/draft
8431                  `-nocheck'
8432                  `-alias /usr/bs/mh-6.8/lib/MailAliases'
8433
8434
8435             _\bC_\bo_\bn_\bt_\be_\bx_\bt
8436                  None
8437
8438
8439
8440
8441
8442
8443             [mh.6]                           MH.6.8                      UCI version
8444
8445
8446
8447
8448
8449
8450
8451
8452
8453             WHOM(1)                          -128-                           WHOM(1)
8454
8455
8456             _\bB_\bu_\bg_\bs
8457                  With the `-check' option, _\bw_\bh_\bo_\bm makes no  guarantees  that  the  ad-
8458                  dresses  listed  as being ok are really deliverable, rather, an ad-
8459                  dress being listed as ok means that at the time that _\bw_\bh_\bo_\bm  was  run
8460                  the address was thought to be deliverable by the transport service.
8461                  For local addresses, this is absolute; for  network  addresses,  it
8462                  means  that the host is known; for uucp addresses, it (often) means
8463                  that the _\bU_\bU_\bC_\bP network is available for use.
8464
8465
8466
8467
8468
8469
8470
8471
8472
8473
8474
8475
8476
8477
8478
8479
8480
8481
8482
8483
8484
8485
8486
8487
8488
8489
8490
8491
8492
8493
8494
8495
8496
8497
8498
8499
8500
8501
8502
8503
8504
8505
8506
8507
8508
8509                  [mh.6]                           MH.6.8                      UCI version
8510
8511
8512
8513
8514
8515
8516
8517
8518
8519                                                   -129-
8520
8521
8522                  _\bM_\bO_\bR_\bE _\bD_\bE_\bT_\bA_\bI_\bL_\bS
8523
8524                       This section describes some of the more intense points  of  the  _\bM_\bH
8525                  system,  by  expanding  on  topics  previously  discussed.   The  format
8526                  presented conforms to the standard form  for  the  description  of  UNIX
8527             documentation.
8528
8529
8530
8531
8532
8533
8534
8535
8536
8537
8538
8539
8540
8541
8542
8543
8544
8545
8546
8547
8548
8549
8550
8551
8552
8553
8554
8555
8556
8557
8558
8559
8560
8561
8562
8563
8564
8565
8566
8567
8568
8569
8570
8571
8572
8573
8574
8575
8576
8577
8578
8579
8580
8581
8582
8583
8584
8585             MH-ALIAS(5)                      -130-                       MH-ALIAS(5)
8586
8587
8588             _\bN_\bA_\bM_\bE
8589                  mh-alias - alias file for MH message system
8590
8591             _\bS_\bY_\bN_\bO_\bP_\bS_\bI_\bS
8592                  any _\bM_\bH command
8593
8594             _\bD_\bE_\bS_\bC_\bR_\bI_\bP_\bT_\bI_\bO_\bN
8595
8596                  This describes both _\bM_\bH personal alias files and the (primary) alias
8597                  file for mail delivery, the file
8598
8599                          /usr/bs/mh-6.8/lib/MailAliases
8600
8601                  It does not describe aliases files used by  the  message  transport
8602                  system.  Each line of the alias file has the format:
8603
8604                          alias : address-group
8605                  or
8606                          alias ; address-group
8607                  or
8608                          < alias-file
8609                  or
8610                          ; comment
8611
8612                  where:
8613
8614                          address-group  :=  address-list
8615                                         |   "<" file
8616                                         |   "=" UNIX-group
8617                                         |   "+" UNIX-group
8618                                         |   "*"
8619
8620                          address-list   :=  address
8621                                         |   address-list, address
8622
8623                  Continuation lines in alias files end with `\' followed by the new-
8624                  line character.
8625
8626                  Alias-file and file are UNIX file names.   UNIX-group  is  a  group
8627                  name  (or  number)  from  /_\be_\bt_\bc/_\bg_\br_\bo_\bu_\bp.   An  address  is  a "simple"
8628                  Internet-style address.  Througout  this  file,  case  is  ignored,
8629                  except for alias-file names.
8630
8631                  If the line starts with a `<', then the file named after the `<' is
8632                  read  for more alias definitions.  The reading is done recursively,
8633                  so a `<' may occur in the beginning  of  an  alias  file  with  the
8634                  expected results.
8635
8636                  If the address-group starts with a `<', then the file  named  after
8637                  the  `<' is read and its contents are added to the address-list for
8638                  the alias.
8639
8640
8641             [mh.6]                           MH.6.8                      UCI version
8642
8643
8644
8645
8646
8647
8648
8649
8650
8651             MH-ALIAS(5)                      -131-                       MH-ALIAS(5)
8652
8653
8654                  If the address-group starts with an `=', then the  file  /_\be_\bt_\bc/_\bg_\br_\bo_\bu_\bp
8655                  is  consulted  for  the UNIX-group named after the `='.  Each login
8656                  name  occurring  as  a  member  of  the  group  is  added  to   the
8657                  address-list for the alias.
8658
8659                  In contrast, if the address-group starts with a `+', then the  file
8660                  /_\be_\bt_\bc/_\bg_\br_\bo_\bu_\bp is consulted to determine the group-id of the UNIX-group
8661                  named after the `+'.  Each login name occurring in the  /_\be_\bt_\bc/_\bp_\ba_\bs_\bs_\bw_\bd
8662                  file  whose  group-id  is  indicated  by this group is added to the
8663                  address-list for the alias.
8664
8665                  If the address-group is simply `*', then the  file  /_\be_\bt_\bc/_\bp_\ba_\bs_\bs_\bw_\bd  is
8666                  consulted and all login names with a userid greater than some magic
8667                  number (usually 200) are added to the address-list for the alias.
8668
8669                  In match, a trailing * on an alias will match just  about  anything
8670                  appropriate.  (See example below.)
8671
8672                  An approximation of the way aliases are resolved at posting time is
8673                  (it's not really done this way):
8674
8675                       1) Build a list of  all  addresses  from  the  message  to  be
8676                       delivered, eliminating duplicate addresses.
8677
8678                       2) If this draft originated on the local host, then for  those
8679                       addresses  in the message that have no host specified, perform
8680                       alias resolution.
8681
8682                       3) For each line in the alias file,  compare  "alias"  against
8683                       all of the existing addresses.  If a match, remove the matched
8684                       "alias" from the address list, and add each new address in the
8685                       address-group  to the address list if it is not already on the
8686                       list.  The alias itself is  not  usually  output,  rather  the
8687                       address-group  that  the  alias maps to is output instead.  If
8688                       "alias" is terminated with a `;' instead of a `:',  then  both
8689                       the  "alias" and the address are output in the correct format.
8690                       (This makes replies possible since  _\bM_\bH  aliases  and  personal
8691                       aliases are unknown to the mail transport system.)
8692
8693                  Since the alias file is read line by line, forward references work,
8694                  but  backward  references  are  not  recognized,  thus, there is no
8695                  recursion.
8696
8697
8698
8699
8700
8701
8702
8703
8704
8705
8706
8707             [mh.6]                           MH.6.8                      UCI version
8708
8709
8710
8711
8712
8713
8714
8715
8716
8717             MH-ALIAS(5)                      -132-                       MH-ALIAS(5)
8718
8719
8720                  Example:
8721                       </usr/bs/mh-6.8/lib/BBoardAliases
8722                       sgroup: fred, fear, freida
8723                       b-people: Blind List: bill, betty;
8724                       fred: frated@UCI
8725                       UNIX-committee: <unix.aliases
8726                       staff: =staff
8727                       wheels: +wheel
8728                       everyone: *
8729                       news.*: news
8730
8731                  The first line says that more aliases should  immediately  be  read
8732                  from  the  file  /_\bu_\bs_\br/_\bb_\bs/_\bm_\bh-_\b6._\b8/_\bl_\bi_\bb/_\bB_\bB_\bo_\ba_\br_\bd_\bA_\bl_\bi_\ba_\bs_\be_\bs.  Following this,
8733                  "fred" is defined as an alias for  "frated@UCI",  and  "sgroup"  is
8734                  defined  as  an alias for the three names "frated@UCI", "fear", and
8735                  "freida".
8736
8737                  The alias "b-people" is a blind list which includes  the  addresses
8738                  "bill"   and  "betty";  the  message  will  be  delieved  to  those
8739                  addresses, but the message header will  show only "Blind  List:  ;"
8740                  (not the addresses).
8741
8742                  Next, the definition of "UNIX-committee" is given  by  reading  the
8743                  file  _\bu_\bn_\bi_\bx._\ba_\bl_\bi_\ba_\bs_\be_\bs in the users _\bM_\bH directory, "staff" is defined as
8744                  all users who are listed as members of the  group  "staff"  in  the
8745                  /_\be_\bt_\bc/_\bg_\br_\bo_\bu_\bp  file,  and  "wheels"  is  defined  as  all  users whose
8746                  group-id in /_\be_\bt_\bc/_\bp_\ba_\bs_\bs_\bw_\bd is equivalent to the "wheel" group.
8747
8748                  Finally, "everyone" is defined as  all  users  with  a  user-id  in
8749                  /_\be_\bt_\bc/_\bp_\ba_\bs_\bs_\bw_\bd   greater  than  200,  and  all  aliases  of  the  form
8750                  "news.<anything>" are defined to be "news".
8751
8752                  The key thing to understand about aliasing in _\bM_\bH is that aliases in
8753                  _\bM_\bH  alias  files  are expanded into the headers of messages posted.
8754                  This aliasing occurs first, at posting time, without the  knowledge
8755                  of  the  message  transport  system.  In contrast, once the message
8756                  transport system is given  a  message  to  deliver  to  a  list  of
8757                  addresses, for each address that appears to be local, a system-wide
8758                  alias file is consulted.  These aliases are NOT expanded  into  the
8759                  headers of messages delivered.
8760
8761             _\bH_\be_\bl_\bp_\bf_\bu_\bl _\bH_\bi_\bn_\bt_\bs
8762
8763                  To use aliasing in _\bM_\bH quickly, do the following:
8764
8765                       First, in your ._\bm_\bh__\bp_\br_\bo_\bf_\bi_\bl_\be, choose a name for your alias file,
8766                       say "aliases", and add the line:
8767
8768                            Aliasfile: aliases
8769
8770                       Second, create the file "aliases" in your _\bM_\bH directory.
8771
8772
8773             [mh.6]                           MH.6.8                      UCI version
8774
8775
8776
8777
8778
8779
8780
8781
8782
8783             MH-ALIAS(5)                      -133-                       MH-ALIAS(5)
8784
8785
8786                       Third,  start  adding  aliases  to  your  "aliases"  file   as
8787                       appropriate.
8788
8789             _\bF_\bi_\bl_\be_\bs
8790                  /usr/bs/mh-6.8/lib/MailAliases       Primary alias file
8791
8792
8793             _\bP_\br_\bo_\bf_\bi_\bl_\be _\bC_\bo_\bm_\bp_\bo_\bn_\be_\bn_\bt_\bs
8794                  Aliasfile:           For a default alias file
8795
8796
8797             _\bS_\be_\be _\bA_\bl_\bs_\bo
8798                  ali(1), send(1), whom(1), group(5), passwd(5), conflict(8), post(8)
8799
8800
8801             _\bD_\be_\bf_\ba_\bu_\bl_\bt_\bs
8802                  None
8803
8804
8805             _\bC_\bo_\bn_\bt_\be_\bx_\bt
8806                  None
8807
8808
8809             _\bH_\bi_\bs_\bt_\bo_\br_\by
8810                  In previous releases of _\bM_\bH, only  a  single,  system-wide  mh-alias
8811                  file  was  supported.  Now that _\bM_\bH uses _\bM_\bM_\bD_\bF as a transport system,
8812                  the system-wide aliasing facility can  be  more  consistently  con-
8813                  trolled  by  the  latter.   This  means  that  at  most  sites, the
8814                  system-wide mh-alias file will  be  empty  (or  trivial  at  best).
8815                  Hence,  the semantics of mh-alias were extended to support personal
8816                  alias files.  Users of _\bM_\bH no longer need to bother mail-system  ad-
8817                  ministrators for keeping information in the system-wide alias file,
8818                  as each _\bM_\bH user can create/modify/remove aliases at will  from  any
8819                  number of personal files.
8820
8821
8822             _\bB_\bu_\bg_\bs
8823                  Although  the  forward-referencing  semantics  of  _\bm_\bh-_\ba_\bl_\bi_\ba_\bs   files
8824                  prevent  recursion,  the  "< alias-file"  command  may defeat this.
8825                  Since the number of file descriptors is finite (and very  limited),
8826                  such  infinite recursion will terminate with a meaningless diagnos-
8827                  tic when all the fds are used up.
8828
8829                  Forward references do not work correctly inside blind lists.
8830
8831
8832
8833
8834
8835
8836
8837
8838
8839             [mh.6]                           MH.6.8                      UCI version
8840
8841
8842
8843
8844
8845
8846
8847
8848
8849             MH-FORMAT(5)                     -134-                      MH-FORMAT(5)
8850
8851
8852             _\bN_\bA_\bM_\bE
8853                  mh-format - format file for MH message system
8854
8855             _\bS_\bY_\bN_\bO_\bP_\bS_\bI_\bS
8856                  some _\bM_\bH commands
8857
8858             _\bD_\bE_\bS_\bC_\bR_\bI_\bP_\bT_\bI_\bO_\bN
8859
8860                  Several _\bM_\bH commands utilize either a _\bf_\bo_\br_\bm_\ba_\bt string or a _\bf_\bo_\br_\bm_\ba_\bt file
8861                  during their execution.  For example, _\bs_\bc_\ba_\bn (1) uses a format string
8862                  which directs it how to generate the scan listing for each message;
8863                  _\br_\be_\bp_\bl (1)  uses  a  format file which directs it how to generate the
8864                  reply to a message, and so on.
8865
8866                  Format strings are designed to be efficiently parsed  by  _\bM_\bH  which
8867                  means  they  are  not  necessarily  simple to write and understand.
8868                  This means that novice, casual, or even advanced users of _\bM_\bH should
8869                  not  have  to deal with them.  Some canned scan listing formats are
8870                  in /usr/bs/mh-6.8/lib/scan.time, /usr/bs/mh-6.8/lib/scan.size,  and
8871                  /usr/bs/mh-6.8/lib/scan.timely.   Look  in  /usr/bs/mh-6.8/lib  for
8872                  other _\bs_\bc_\ba_\bn and _\br_\be_\bp_\bl format files which may  have  been  written  at
8873                  your site.
8874
8875                  It suffices to have your local _\bM_\bH expert actually write new  format
8876                  commands or modify existing ones.  This manual section explains how
8877                  to do that.   Note:  familiarity  with  the  C  _\bp_\br_\bi_\bn_\bt_\bf  routine  is
8878                  assumed.
8879
8880                  A format string consists  of  ordinary  text,  and  special  multi-
8881                  character _\be_\bs_\bc_\ba_\bp_\be sequences which begin with `%'.  When specifying a
8882                  format string, the usual C backslash characters are honored:  `\b',
8883                  `\f', `\n', `\r', and `\t'.  Continuation lines in format files end
8884                  with `\' followed by the newline character.  There are three  types
8885                  of  _\be_\bs_\bc_\ba_\bp_\be  sequences:  header  _\bc_\bo_\bm_\bp_\bo_\bn_\be_\bn_\bt_\bs, built-in _\bf_\bu_\bn_\bc_\bt_\bi_\bo_\bn_\bs, and
8886                  flow _\bc_\bo_\bn_\bt_\br_\bo_\bl.
8887
8888                  A _\bc_\bo_\bm_\bp_\bo_\bn_\be_\bn_\bt escape is specified as `%{_\bc_\bo_\bm_\bp_\bo_\bn_\be_\bn_\bt}', and  exists  for
8889                  each  header  found  in  the  message being processed.  For example
8890                  `%{date}' refers to the "Date:" field of the  appropriate  message.
8891                  All  component  escapes  have  a string value.  Normally, component
8892                  values are compressed by converting any control characters (tab and
8893                  newline  included)  to spaces, then eliding any leading or multiple
8894                  spaces.  However, commands may give  different  interpretations  to
8895                  some  component  escapes; be sure to refer to each command's manual
8896                  entry for complete details.
8897
8898                  A _\bf_\bu_\bn_\bc_\bt_\bi_\bo_\bn escape is specified as `%(_\bf_\bu_\bn_\bc_\bt_\bi_\bo_\bn)'.  All functions are
8899                  built-in, and most have a string or numeric value.
8900
8901
8902
8903
8904
8905             [mh.6]                           MH.6.8                      UCI version
8906
8907
8908
8909
8910
8911
8912
8913
8914
8915             MH-FORMAT(5)                     -135-                      MH-FORMAT(5)
8916
8917
8918               _\bC_\bo_\bn_\bt_\br_\bo_\bl-_\bf_\bl_\bo_\bw _\be_\bs_\bc_\ba_\bp_\be_\bs
8919
8920                  A _\bc_\bo_\bn_\bt_\br_\bo_\bl escape is one of: `%<', `%?', `%|', or  `%>'.  These  are
8921                  combined into the conditional execution construct:
8922
8923                          %<condition
8924                                  _\bf_\bo_\br_\bm_\ba_\bt _\bt_\be_\bx_\bt _\b1
8925                          %?condition2
8926                                  _\bf_\bo_\br_\bm_\ba_\bt _\bt_\be_\bx_\bt _\b2
8927                          %?condition3
8928                                  _\bf_\bo_\br_\bm_\ba_\bt _\bt_\be_\bx_\bt _\b3
8929                          ...
8930                          %|
8931                                  _\bf_\bo_\br_\bm_\ba_\bt _\bt_\be_\bx_\bt _\bN
8932                          %>
8933
8934                  Extra white space is shown here only for clarity.  These constructs
8935                  may   be   nested   without   ambiguity.    They   form  a  general
8936                  if-elseif-else-endif block where only one of the _\bf_\bo_\br_\bm_\ba_\bt  _\bt_\be_\bx_\bt  seg-
8937                  ments is interpreted.
8938
8939                  The `%<'  and  `%?'  control  escapes  causes  a  condition  to  be
8940                  evaluated.  This condition may be either a _\bc_\bo_\bm_\bp_\bo_\bn_\be_\bn_\bt or a _\bf_\bu_\bn_\bc_\bt_\bi_\bo_\bn.
8941                  The four constructs have the following syntax:
8942
8943                          %<{component}
8944                          %<(function)
8945                          %?{component}
8946                          %?(function)
8947
8948                  These control escapes test whether the function or component  value
8949                  is   non-zero  (for  integer-valued  escapes),  or  non-empty  (for
8950                  string-valued escapes).
8951
8952                  If this test evaulates true, then the format text up  to  the  next
8953                  corresponding control escape (one of `%|', `%?', or `%>') is inter-
8954                  preted normally.   Next,  all  format  text  (if  any)  up  to  the
8955                  corresponding  `%>'  control  escape  is skipped.  The `%>' control
8956                  escape is not interpreted; normal interpretation resumes after  the
8957                  `%>' escape.
8958
8959                  If the test evaluates false, however, then the format  text  up  to
8960                  the next corresponding control escape (again, one of `%|', `%?', or
8961                  `%>') is skipped, instead of being  interpreted.   If  the  control
8962                  escape  encountered  was  `%?',  then the condition associated with
8963                  that control escape is evaluated, and interpretation proceeds after
8964                  that  test  as described in the previous paragraph.  If the control
8965                  escape encountered was  `%|',  then  the  format  text  up  to  the
8966                  corresponding  `%>'  escape is interpreted normally.  As above, the
8967                  `%>' escape is not interpreted and  normal  interpretation  resumes
8968                  after the `%>' escape.
8969
8970
8971             [mh.6]                           MH.6.8                      UCI version
8972
8973
8974
8975
8976
8977
8978
8979
8980
8981             MH-FORMAT(5)                     -136-                      MH-FORMAT(5)
8982
8983
8984                  The `%?' control escape and its following format text is  optional,
8985                  and  may  be  included zero or more times.  The `%|' control escape
8986                  and its following format text is also optional, and may be included
8987                  zero or one times.
8988
8989
8990               _\bF_\bu_\bn_\bc_\bt_\bi_\bo_\bn _\be_\bs_\bc_\ba_\bp_\be_\bs
8991
8992                  Most functions expect an argument of a particular type:
8993
8994                  _\bA_\br_\bg_\bu_\bm_\be_\bn_\bt _\bD_\be_\bs_\bc_\br_\bi_\bp_\bt_\bi_\bo_\bn            _\bE_\bx_\ba_\bm_\bp_\bl_\be _\bS_\by_\bn_\bt_\ba_\bx
8995                  literal  A literal number,      %(_\bf_\bu_\bn_\bc 1234)
8996                           or string              %(_\bf_\bu_\bn_\bc text string)
8997                  comp     Any header component   %(_\bf_\bu_\bn_\bc{_\bi_\bn-_\br_\be_\bp_\bl_\by-_\bt_\bo})
8998                  date     A date component       %(_\bf_\bu_\bn_\bc{_\bd_\ba_\bt_\be})
8999                  addr     An address component   %(_\bf_\bu_\bn_\bc{_\bf_\br_\bo_\bm})
9000                  expr     An optional component, %(_\bf_\bu_\bn_\bc(_\bf_\bu_\bn_\bc_\b2))
9001                           function or control,   %(_\bf_\bu_\bn_\bc %<{_\br_\be_\bp_\bl_\by-_\bt_\bo}%|%{_\bf_\br_\bo_\bm}%>)
9002                           perhaps nested         %(_\bf_\bu_\bn_\bc(_\bf_\bu_\bn_\bc_\b2{_\bc_\bo_\bm_\bp}))
9003
9004                  The types _\bd_\ba_\bt_\be and _\ba_\bd_\bd_\br have the same syntax as _\bc_\bo_\bm_\bp,  but  require
9005                  that  the  header  component  be  a date string, or address string,
9006                  respectively.
9007
9008                  All arguments except those of type _\be_\bx_\bp_\br are required.  For the _\be_\bx_\bp_\br
9009                  argument  type,  the  leading `%' must be omitted for component and
9010                  function escape arguments, and must  be  present  (with  a  leading
9011                  space) for control escape arguments.
9012
9013                  The evaluation of format strings is based on a simple machine  with
9014                  an  integer  register  _\bn_\bu_\bm, and a text string register _\bs_\bt_\br.  When a
9015                  function escape is processed, if it accepts an optional _\be_\bx_\bp_\br  argu-
9016                  ment which is not present, it reads the current value of either _\bn_\bu_\bm
9017                  or _\bs_\bt_\br as appropriate.
9018
9019
9020               _\bR_\be_\bt_\bu_\br_\bn _\bv_\ba_\bl_\bu_\be_\bs
9021
9022                  Component escapes write the value of their message header  in  _\bs_\bt_\br.
9023                  Function  escapes  write  their  return  value in _\bn_\bu_\bm for functions
9024                  returning _\bi_\bn_\bt_\be_\bg_\be_\br or _\bb_\bo_\bo_\bl_\be_\ba_\bn  values,  and  in  _\bs_\bt_\br  for  functions
9025                  returning string values.  (The _\bb_\bo_\bo_\bl_\be_\ba_\bn type is a subset of integers
9026                  with usual values 0=false and 1=true.)  Control  escapes  return  a
9027                  _\bb_\bo_\bo_\bl_\be_\ba_\bn value, and set _\bn_\bu_\bm.
9028
9029                  All component escapes, and those function escapes which  return  an
9030                  _\bi_\bn_\bt_\be_\bg_\be_\br  or  _\bs_\bt_\br_\bi_\bn_\bg  value, pass this value back to their caller in
9031                  addition to setting _\bs_\bt_\br or _\bn_\bu_\bm.  These escapes will print out  this
9032                  value  unless  called  as  part  of  an  argument to another escape
9033                  sequence.  Escapes which return a _\bb_\bo_\bo_\bl_\be_\ba_\bn value do pass this  value
9034                  back to their caller in _\bn_\bu_\bm, but will never print out the value.
9035
9036
9037             [mh.6]                           MH.6.8                      UCI version
9038
9039
9040
9041
9042
9043
9044
9045
9046
9047             MH-FORMAT(5)                     -137-                      MH-FORMAT(5)
9048
9049
9050                  _\bF_\bu_\bn_\bc_\bt_\bi_\bo_\bn   _\bA_\br_\bg_\bu_\bm_\be_\bn_\bt _\bR_\be_\bt_\bu_\br_\bn   _\bD_\be_\bs_\bc_\br_\bi_\bp_\bt_\bi_\bo_\bn
9051                  msg                 integer  message number
9052                  cur                 integer  message is current
9053                  size                integer  size of message
9054                  strlen              integer  length of _\bs_\bt_\br
9055                  width               integer  output buffer size in bytes
9056                  charleft            integer  bytes left in output buffer
9057                  timenow             integer  seconds since the UNIX epoch
9058                  me                  string   the user's mailbox
9059                  eq         literal  boolean  _\bn_\bu_\bm == _\ba_\br_\bg
9060                  ne         literal  boolean  _\bn_\bu_\bm != _\ba_\br_\bg
9061                  gt         literal  boolean  _\bn_\bu_\bm > _\ba_\br_\bg
9062                  match      literal  boolean  _\bs_\bt_\br contains _\ba_\br_\bg
9063                  amatch     literal  boolean  _\bs_\bt_\br starts with _\ba_\br_\bg
9064                  plus       literal  integer  _\ba_\br_\bg plus _\bn_\bu_\bm
9065                  minus      literal  integer  _\ba_\br_\bg minus _\bn_\bu_\bm
9066                  divide     literal  integer  _\bn_\bu_\bm divided by _\ba_\br_\bg
9067                  modulo     literal  integer  _\bn_\bu_\bm modulo _\ba_\br_\bg
9068                  num        literal  integer  Set _\bn_\bu_\bm to _\ba_\br_\bg
9069                  lit        literal  string   Set _\bs_\bt_\br to _\ba_\br_\bg
9070                  getenv     literal  string   Set _\bs_\bt_\br to environment value of _\ba_\br_\bg
9071                  nonzero    expr     boolean  _\bn_\bu_\bm is non-zero
9072                  zero       expr     boolean  _\bn_\bu_\bm is zero
9073                  null       expr     boolean  _\bs_\bt_\br is empty
9074                  nonnull    expr     boolean  _\bs_\bt_\br is non-empty
9075                  void       expr              Set _\bs_\bt_\br or _\bn_\bu_\bm
9076                  comp       comp     string   Set _\bs_\bt_\br to component text
9077                  compval    comp     integer  _\bn_\bu_\bm set to "atoi(_\bc_\bo_\bm_\bp)"
9078                  trim       expr              trim trailing white-space from _\bs_\bt_\br
9079                  putstr     expr              print _\bs_\bt_\br
9080                  putstrf    expr              print _\bs_\bt_\br in a fixed width
9081                  putnum     expr              print _\bn_\bu_\bm
9082                  putnumf    expr              print _\bn_\bu_\bm in a fixed width
9083
9084                  These functions require a date component as an argument:
9085
9086                  _\bF_\bu_\bn_\bc_\bt_\bi_\bo_\bn   _\bA_\br_\bg_\bu_\bm_\be_\bn_\bt _\bR_\be_\bt_\bu_\br_\bn   _\bD_\be_\bs_\bc_\br_\bi_\bp_\bt_\bi_\bo_\bn
9087                  sec        date     integer  seconds of the minute
9088                  min        date     integer  minutes of the hour
9089                  hour       date     integer  hours of the day (0-23)
9090                  wday       date     integer  day of the week (Sun=0)
9091                  day        date     string   day of the week (abbrev.)
9092                  weekday    date     string   day of the week
9093                  sday       date     integer  day of the week known?
9094                                               (0=implicit,-1=unknown)
9095                  mday       date     integer  day of the month
9096                  yday       date     integer  day of the year
9097                  mon        date     integer  month of the year
9098                  month      date     string   month of the year (abbrev.)
9099                  lmonth     date     string   month of the year
9100                  year       date     integer  year (may be > 100)
9101                  zone       date     integer  timezone in hours
9102
9103             [mh.6]                           MH.6.8                      UCI version
9104
9105
9106
9107
9108
9109
9110
9111
9112
9113             MH-FORMAT(5)                     -138-                      MH-FORMAT(5)
9114
9115
9116                  tzone      date     string   timezone string
9117                  szone      date     integer  timezone explicit?
9118                                               (0=implicit,-1=unknown)
9119                  date2local date              coerce date to local timezone
9120                  date2gmt   date              coerce date to GMT
9121                  dst        date     integer  daylight savings in effect?
9122                  clock      date     integer  seconds since the UNIX epoch
9123                  rclock     date     integer  seconds prior to current time
9124                  tws        date     string   official 822 rendering
9125                  pretty     date     string   user-friendly rendering
9126                  nodate     date     integer  _\bs_\bt_\br not a date string
9127
9128                  These functions require an address component as  an  argument.  The
9129                  return  value of functions noted with `*' pertain only to the first
9130                  address present in the header component.
9131
9132                  _\bF_\bu_\bn_\bc_\bt_\bi_\bo_\bn   _\bA_\br_\bg_\bu_\bm_\be_\bn_\bt _\bR_\be_\bt_\bu_\br_\bn   _\bD_\be_\bs_\bc_\br_\bi_\bp_\bt_\bi_\bo_\bn
9133                  proper     addr     string   official 822 rendering
9134                  friendly   addr     string   user-friendly rendering
9135                  addr       addr     string   mbox@host or host!mbox rendering*
9136                  pers       addr     string   the personal name*
9137                  note       addr     string   commentary text*
9138                  mbox       addr     string   the local mailbox*
9139                  mymbox     addr     integer  the user's addresses? (0=no,1=yes)
9140                  host       addr     string   the host domain*
9141                  nohost     addr     integer  no host was present*
9142                  type       addr     integer  host type* (0=local,1=network,
9143                                               -1=uucp,2=unknown)
9144                  path       addr     string   any leading host route*
9145                  ingrp      addr     integer  address was inside a group*
9146                  gname      addr     string   name of group*
9147                  formataddr expr              append _\ba_\br_\bg to _\bs_\bt_\br as a
9148                                               (comma separated) address list
9149                  putaddr    literal           print _\bs_\bt_\br address list with
9150                                               _\ba_\br_\bg as optional label;
9151                                               get line width from _\bn_\bu_\bm
9152
9153                  When escapes are nested, evaluation  is  done  from  inner-most  to
9154                  outer-most.   The  outer-most escape must begin with `%'; the inner
9155                  escapes must not.  For example,
9156
9157                       %<(mymbox{from}) To: %{to}%>
9158
9159                  writes the value of the header component "From:" to _\bs_\bt_\br; then (_\bm_\by_\bm_\b-
9160                  _\bb_\bo_\bx)  reads  _\bs_\bt_\br  and  writes  its  result to _\bn_\bu_\bm; then the control
9161                  escape evaluates _\bn_\bu_\bm.  If _\bn_\bu_\bm is non-zero, the  string  "To:  "  is
9162                  printed followed by the value of the header component "To:".
9163
9164                  A minor explanation of (_\bm_\by_\bm_\bb_\bo_\bx{_\bc_\bo_\bm_\bp}) is in order.  In general,  it
9165                  checks each of the addresses in the header component "_\bc_\bo_\bm_\bp" against
9166                  the user's mailbox name and any  _\bA_\bl_\bt_\be_\br_\bn_\ba_\bt_\be-_\bM_\ba_\bi_\bl_\bb_\bo_\bx_\be_\bs.   It  returns
9167                  true  if  any address matches, however, it also returns true if the
9168
9169             [mh.6]                           MH.6.8                      UCI version
9170
9171
9172
9173
9174
9175
9176
9177
9178
9179             MH-FORMAT(5)                     -139-                      MH-FORMAT(5)
9180
9181
9182                  "_\bc_\bo_\bm_\bp" header is not present in the message.  If needed, the (_\bn_\bu_\bl_\bl)
9183                  function can be used to explicitly test for this condition.
9184
9185                  When a function or component escape is interpreted and  the  result
9186                  will  be immediately printed, an optional field width can be speci-
9187                  fied to print the field in exactly a given  number  of  characters.
9188                  For  example,  a  numeric escape like %4(_\bs_\bi_\bz_\be) will print at most 4
9189                  digits of the message size; overflow will be indicated by a `?'  in
9190                  the first position (like `?234').  A string escape like %4(_\bm_\be) will
9191                  print the first 4 characters and truncate at the end. Short  fields
9192                  are  padded  at  the  right  with  the  fill character (normally, a
9193                  blank).  If the field width argument begins with  a  leading  zero,
9194                  then the fill character is set to a zero.
9195
9196                  As above, the functions (_\bp_\bu_\bt_\bn_\bu_\bm_\bf) and (_\bp_\bu_\bt_\bs_\bt_\br_\bf) print their  result
9197                  in  exactly  the  number  of  characters specified by their leading
9198                  field width argument. For example,  %06(_\bp_\bu_\bt_\bn_\bu_\bm_\bf(_\bs_\bi_\bz_\be))  will  print
9199                  the message size in a field six characters wide filled with leading
9200                  zeros; %14(_\bp_\bu_\bt_\bs_\bt_\br_\bf{_\bf_\br_\bo_\bm}) will print the "From:"  header  component
9201                  in  fourteen  characters with trailing spaces added as needed.  For
9202                  _\bp_\bu_\bt_\bs_\bt_\br_\bf, using a negative value for the field width  causes  right-
9203                  justification  of  the string within the field, with padding on the
9204                  left up to the field width.  The functions  (_\bp_\bu_\bt_\bn_\bu_\bm)  and  (_\bp_\bu_\bt_\bs_\bt_\br)
9205                  print  their  result  in the minimum number of characters required,
9206                  and ignore any leading field width argument.
9207
9208                  The available output width is kept in  an  internal  register;  any
9209                  output past this width will be truncated.
9210
9211                  Comments may be inserted in most places where a  function  argument
9212                  is  not expected.  A comment begins with `%;' and ends with a (non-
9213                  escaped) newline.
9214
9215                  With all this in mind, here's the default format string  for  _\bs_\bc_\ba_\bn.
9216                  It's  been  divided into several pieces for readability.  The first
9217                  part is:
9218
9219                       %4(msg)%<(cur)+%| %>%<{replied}-%?{encrypted}E%| %>
9220
9221                  which says that the  message  number  should  be  printed  in  four
9222                  digits,  if  the  message  is the current message then a `+' else a
9223                  space should be printed, and if a "Replied:" field is present  then
9224                  a  `-'  else if an "Encrypted:" field is present then an `E' other-
9225                  wise a space should be printed.  Next:
9226
9227                       %02(mon{date})/%02(mday{date})
9228
9229                  the month  and  date  are  printed  in  two  digits  (zero  filled)
9230                  separated by a slash.  Next,
9231
9232                       %<{date} %|*>
9233
9234
9235             [mh.6]                           MH.6.8                      UCI version
9236
9237
9238
9239
9240
9241
9242
9243
9244
9245             MH-FORMAT(5)                     -140-                      MH-FORMAT(5)
9246
9247
9248                  If a "Date:" field was present, then a space is printed,  otherwise
9249                  a `*'.  Next,
9250
9251                       %<(mymbox{from})%<{to}To:%14(friendly{to})%>%>
9252
9253                  if the message is from me, and there is a "To:" header, print `To:'
9254                  followed by a "user-friendly" rendering of the first address in the
9255                  "To:" field.  Continuing,
9256
9257                       %<(zero)%17(friendly{from})%>
9258
9259                  if either of the above two tests failed, then the  "From:"  address
9260                  is printed in a "user-friendly" format.  And finally,
9261
9262                       %{subject}%<{body}<<%{body}%>
9263
9264                  the subject and initial body (if any) are printed.
9265
9266                  For a more complicated example, next consider the default _\br_\be_\bp_\bl_\bc_\bo_\bm_\bp_\bs
9267                  format file.
9268
9269                       %(lit)%(formataddr %<{reply-to}
9270
9271                  This clears _\bs_\bt_\br and formats the "Reply-To:" header if present.   If
9272                  not present, the else-if clause is executed.
9273
9274                       %?{from}%?{sender}%?{return-path}%>)\
9275
9276                  This formats the "From:",  "Sender:"  and  "Return-Path:"  headers,
9277                  stopping as soon as one of them is present.  Next:
9278
9279                       %<(nonnull)%(void(width))%(putaddr To: )\n%>\
9280
9281                  If the _\bf_\bo_\br_\bm_\ba_\bt_\ba_\bd_\bd_\br result is non-null, it is printed as  an  address
9282                  (with  line folding if needed) in a field _\bw_\bi_\bd_\bt_\bh wide with a leading
9283                  label of "To: ".
9284
9285                       %(lit)%(formataddr{to})%(formataddr{cc})%(formataddr(me))\
9286
9287                  _\bs_\bt_\br is cleared, and the "To:" and "Cc:"  headers,  along  with  the
9288                  user's  address  (depending  on  what  was specified with the "-cc"
9289                  switch to _\br_\be_\bp_\bl) are formatted.
9290
9291                       %<(nonnull)%(void(width))%(putaddr cc: )\n%>\
9292
9293                  If the result is non-null, it is printed as above  with  a  leading
9294                  label of "cc: ".
9295
9296                       %<{fcc}Fcc: %{fcc}\n%>\
9297
9298                  If a "-fcc folder" switch was given to _\br_\be_\bp_\bl (see _\br_\be_\bp_\bl (1) for  more
9299                  details about %{_\bf_\bc_\bc}), an "Fcc:" header is output.
9300
9301             [mh.6]                           MH.6.8                      UCI version
9302
9303
9304
9305
9306
9307
9308
9309
9310
9311             MH-FORMAT(5)                     -141-                      MH-FORMAT(5)
9312
9313
9314                       %<{subject}Subject: Re: %{subject}\n%>\
9315
9316                  If a subject component was present, a  suitable  reply  subject  is
9317                  output.
9318
9319                       %<{date}In-reply-to: Your message of "\
9320                       %<(nodate{date})%{date}%|%(pretty{date})%>."%<{message-id}
9321                                    %{message-id}%>\n%>\
9322                       --------
9323
9324                  If a date component was present, an "In-Reply-To:" header is output
9325                  with the preface "Your message of ".  If the date was parseable, it
9326                  is output in a user-friendly format, otherwise it is output  as-is.
9327                  The message-id is included if present.  As with all plain-text, the
9328                  row of dashes are output as-is.
9329
9330                  This last part is a good example for  a  little  more  elaboration.
9331                  Here's that part again in pseudo-code:
9332
9333                       if (comp_exists(date))  then
9334                            print ("In-reply-to: Your message of \"")
9335                            if (not_date_string(date.value) then
9336                                 print (date.value)
9337                            else
9338                                 print (pretty(date.value))
9339                            endif
9340                            print ("\"")
9341                            if (comp_exists(message-id)) then
9342                                 print ("\n\t")
9343                                 print (message-id.value)
9344                            endif
9345                            print ("\n")
9346                       endif
9347
9348                  Although this seems complicated, in point of fact, this  method  is
9349                  flexible  enough to extract individual fields and print them in any
9350                  format the user desires.
9351
9352             _\bF_\bi_\bl_\be_\bs
9353                  None
9354
9355
9356             _\bP_\br_\bo_\bf_\bi_\bl_\be _\bC_\bo_\bm_\bp_\bo_\bn_\be_\bn_\bt_\bs
9357                  None
9358
9359
9360             _\bS_\be_\be _\bA_\bl_\bs_\bo
9361                  scan(1), repl(1), ap(8), dp(8)
9362
9363
9364             _\bD_\be_\bf_\ba_\bu_\bl_\bt_\bs
9365                  None
9366
9367             [mh.6]                           MH.6.8                      UCI version
9368
9369
9370
9371
9372
9373
9374
9375
9376
9377             MH-FORMAT(5)                     -142-                      MH-FORMAT(5)
9378
9379
9380             _\bC_\bo_\bn_\bt_\be_\bx_\bt
9381                  None
9382
9383
9384             _\bH_\bi_\bs_\bt_\bo_\br_\by
9385                  This software was contributed for MH 6.3.  Prior  to  this,  output
9386                  format  specifications  were much easier to write, but considerably
9387                  less flexible.
9388
9389
9390             _\bB_\bu_\bg_\bs
9391                  On hosts where _\bM_\bH was configured  with  the  BERK  option,  address
9392                  parsing is not enabled.
9393
9394
9395
9396
9397
9398
9399
9400
9401
9402
9403
9404
9405
9406
9407
9408
9409
9410
9411
9412
9413
9414
9415
9416
9417
9418
9419
9420
9421
9422
9423
9424
9425
9426
9427
9428
9429
9430
9431
9432
9433             [mh.6]                           MH.6.8                      UCI version
9434
9435
9436
9437
9438
9439
9440
9441
9442
9443             MH-MAIL(5)                       -143-                        MH-MAIL(5)
9444
9445
9446             _\bN_\bA_\bM_\bE
9447                  mh-mail - message format for MH message system
9448
9449             _\bS_\bY_\bN_\bO_\bP_\bS_\bI_\bS
9450                  any _\bM_\bH command
9451
9452             _\bD_\bE_\bS_\bC_\bR_\bI_\bP_\bT_\bI_\bO_\bN
9453
9454                  _\bM_\bH processes messages in a particular format.  It should  be  noted
9455                  that  although  neither  Bell  nor Berkeley mailers produce message
9456                  files in the format that _\bM_\bH prefers, _\bM_\bH can read message  files  in
9457                  that antiquated format.
9458
9459                  Each user possesses a mail drop box which  initially  receives  all
9460                  messages  processed  by _\bp_\bo_\bs_\bt (8).  _\bI_\bn_\bc (1) will read from that drop
9461                  box and incorporate the new messages found there  into  the  user's
9462                  own  mail folders (typically `+inbox').  The mail drop box consists
9463                  of one or more messages.  To facilitate the separation of messages,
9464                  each  message begins and ends with a line consisting of nothing but
9465                  four CTRL-A (octal 001) characters.
9466
9467                  Messages are expected to consist of lines of  text.   Graphics  and
9468                  binary data are not handled.  No data compression is accepted.  All
9469                  text is clear ASCII 7-bit data.
9470
9471                  The general "memo" framework of RFC-822 is used.   A  message  con-
9472                  sists of a block of information in a rigid format, followed by gen-
9473                  eral text with no specified format.  The  rigidly  formatted  first
9474                  part of a message is called the header, and the free-format portion
9475                  is called the body.  The header must always exist, but the body  is
9476                  optional.   These  parts  are separated by an empty line, i.e., two
9477                  consecutive newline characters.  Within _\bM_\bH, the header and body may
9478                  be separated by a line consisting of dashes:
9479
9480                       To:
9481                       cc:
9482                       Subject:
9483                       --------
9484
9485                  The header is composed of one or more header  items.   Each  header
9486                  item  can  be  viewed as a single logical line of ASCII characters.
9487                  If the text of a header item extends across several real lines, the
9488                  continuation lines are indicated by leading spaces or tabs.
9489
9490                  Each header item is called a component and is composed of a keyword
9491                  or  name,  along  with  associated text.  The keyword begins at the
9492                  left margin, may NOT contain spaces or  tabs,  may  not  exceed  63
9493                  characters  (as specified by RFC-822), and is terminated by a colon
9494                  (`:').  Certain components (as identified by their  keywords)  must
9495                  follow rigidly defined formats in their text portions.
9496
9497                  The  text  for  most  formatted  components  (e.g.,   "Date:"   and
9498
9499             [mh.6]                           MH.6.8                      UCI version
9500
9501
9502
9503
9504
9505
9506
9507
9508
9509             MH-MAIL(5)                       -144-                        MH-MAIL(5)
9510
9511
9512                  "Message-Id:") is produced automatically.  The only ones entered by
9513                  the user are address fields such as "To:",  "cc:",  etc.   Internet
9514                  addresses  are  assigned mailbox names and host computer specifica-
9515                  tions.  The rough format is "local@domain", such  as  "MH@UCI",  or
9516                  "MH@UCI-ICSA.ARPA".  Multiple addresses are separated by commas.  A
9517                  missing host/domain is assumed to be the local host/domain.
9518
9519                  As mentioned above, a blank line (or a line of dashes) signals that
9520                  all  following text up to the end of the file is the body.  No for-
9521                  matting is expected or enforced within the body.
9522
9523                  Following is a list of header components that are considered  mean-
9524                  ingful to various MH programs.
9525                  Date:
9526                       Added by _\bp_\bo_\bs_\bt (8), contains date and  time  of  the  message's
9527                       entry into the transport system.
9528
9529                  From:
9530                       Added by _\bp_\bo_\bs_\bt (8), contains  the  address  of  the  author  or
9531                       authors  (may  be  more  than  one  if  a  "Sender:"  field is
9532                       present).  Replies are typically directed to addresses in  the
9533                       "Reply-To:"  or  "From:"  field  (the former has precedence if
9534                       present).
9535
9536                  Sender:
9537                       Added by _\bp_\bo_\bs_\bt (8) in the event that the message already has  a
9538                       "From:"  line.   This  line contains the address of the actual
9539                       sender.  Replies are never sent to addresses in the  "Sender:"
9540                       field.
9541
9542                  To:
9543                       Contains addresses of primary recipients.
9544
9545                  cc:
9546                       Contains addresses of secondary recipients.
9547
9548                  Bcc:
9549                       Still more recipients.  However, the "Bcc:" line is not copied
9550                       onto  the  message  as  delivered, so these recipients are not
9551                       listed.  _\bM_\bH uses an encapsulation method for blind copies, see
9552                       _\bs_\be_\bn_\bd (1).
9553
9554                  Fcc:
9555                       Causes _\bp_\bo_\bs_\bt (8) to copy the message into the specified  folder
9556                       for  the  sender, if the message was successfully given to the
9557                       transport system.
9558
9559                  Message-ID:
9560                       A unique message identifier added by _\bp_\bo_\bs_\bt (8) if the  `-msgid'
9561                       flag is set.
9562
9563                  Subject:
9564
9565             [mh.6]                           MH.6.8                      UCI version
9566
9567
9568
9569
9570
9571
9572
9573
9574
9575             MH-MAIL(5)                       -145-                        MH-MAIL(5)
9576
9577
9578                       Sender's commentary.  It is displayed by _\bs_\bc_\ba_\bn (1).
9579
9580                  In-Reply-To:
9581                       A commentary line added by _\br_\be_\bp_\bl (1) when replying  to  a  mes-
9582                       sage.
9583
9584                  Resent-Date:
9585                       Added when redistributing a message by _\bp_\bo_\bs_\bt (8).
9586
9587                  Resent-From:
9588                       Added when redistributing a message by _\bp_\bo_\bs_\bt (8).
9589
9590                  Resent-To:
9591                       New recipients for a message resent by _\bd_\bi_\bs_\bt (1).
9592
9593                  Resent-cc:
9594                       Still more recipients.  See "cc:" and "Resent-To:".
9595
9596                  Resent-Bcc:
9597                       Even more recipients.  See "Bcc:" and "Resent-To:".
9598
9599                  Resent-Fcc:
9600                       Copy  resent  message  into  a   folder.    See   "Fcc:"   and
9601                       "Resent-To:".
9602
9603                  Resent-Message-Id:
9604                       A unique identifier glued on by _\bp_\bo_\bs_\bt (8) if the `-msgid'  flag
9605                       is set.  See "Message-Id:" and "Resent-To:".
9606
9607                  Resent:
9608                       Annotation for _\bd_\bi_\bs_\bt (1) under the `-annotate' option.
9609
9610                  Forwarded:
9611                       Annotation for _\bf_\bo_\br_\bw (1) under the `-annotate' option.
9612
9613                  Replied:
9614                       Annotation for _\br_\be_\bp_\bl (1) under the `-annotate' option.
9615
9616
9617             _\bF_\bi_\bl_\be_\bs
9618                  /usr/spool/mail/$USER                Location of mail drop
9619
9620
9621             _\bP_\br_\bo_\bf_\bi_\bl_\be _\bC_\bo_\bm_\bp_\bo_\bn_\be_\bn_\bt_\bs
9622                  None
9623
9624
9625             _\bS_\be_\be _\bA_\bl_\bs_\bo
9626                  _\bS_\bt_\ba_\bn_\bd_\ba_\br_\bd _\bf_\bo_\br  _\bt_\bh_\be  _\bF_\bo_\br_\bm_\ba_\bt  _\bo_\bf  _\bA_\bR_\bP_\bA  _\bI_\bn_\bt_\be_\br_\bn_\be_\bt  _\bT_\be_\bx_\bt  _\bM_\be_\bs_\bs_\ba_\bg_\be_\bs  (aka
9627                  RFC-822)
9628
9629
9630
9631             [mh.6]                           MH.6.8                      UCI version
9632
9633
9634
9635
9636
9637
9638
9639
9640
9641             MH-MAIL(5)                       -146-                        MH-MAIL(5)
9642
9643
9644             _\bD_\be_\bf_\ba_\bu_\bl_\bt_\bs
9645                  None
9646
9647
9648             _\bC_\bo_\bn_\bt_\be_\bx_\bt
9649                  None
9650
9651
9652
9653
9654
9655
9656
9657
9658
9659
9660
9661
9662
9663
9664
9665
9666
9667
9668
9669
9670
9671
9672
9673
9674
9675
9676
9677
9678
9679
9680
9681
9682
9683
9684
9685
9686
9687
9688
9689
9690
9691
9692
9693
9694
9695
9696
9697             [mh.6]                           MH.6.8                      UCI version
9698
9699
9700
9701
9702
9703
9704
9705
9706
9707             MH-PROFILE(5)                    -147-                     MH-PROFILE(5)
9708
9709
9710             _\bN_\bA_\bM_\bE
9711                  mh-profile - user profile customization for MH message handler
9712
9713             _\bS_\bY_\bN_\bO_\bP_\bS_\bI_\bS
9714                  ._\bm_\bh__\bp_\br_\bo_\bf_\bi_\bl_\be
9715
9716             _\bD_\bE_\bS_\bC_\bR_\bI_\bP_\bT_\bI_\bO_\bN
9717
9718                  Each user of _\bM_\bH is expected to have a file named ._\bm_\bh__\bp_\br_\bo_\bf_\bi_\bl_\be in his
9719                  or her home directory.  This file contains a set of user parameters
9720                  used by some or all of the _\bM_\bH family of programs.  Each line of the
9721                  file is of the format
9722
9723                      _\bp_\br_\bo_\bf_\bi_\bl_\be-_\bc_\bo_\bm_\bp_\bo_\bn_\be_\bn_\bt: _\bv_\ba_\bl_\bu_\be
9724
9725                  The  possible  profile  components  are  exemplified  below.   Only
9726                  `Path:'  is  mandatory.  The others are optional; some have default
9727                  values if they are not present.  In the notation used below,  (pro-
9728                  file,  default)  indicates  whether  the information is kept in the
9729                  user's _\bM_\bH profile or _\bM_\bH context, and  indicates  what  the  default
9730                  value is.
9731
9732                  Path: Mail
9733                            Locates _\bM_\bH transactions in directory  "Mail".   (profile,
9734                            no default)
9735
9736                  context: context
9737                            Declares the location of the _\bM_\bH  context  file,  see  the
9738                            HISTORY     section     below.      (profile,    default:
9739                            <mh-dir>/context)
9740
9741                  Current-Folder: inbox
9742                            Keeps  track  of  the  current  open  folder.   (context,
9743                            default: folder specified by "Inbox")
9744
9745                  Inbox:  inbox
9746                            Defines the  name  of  your  inbox.   (profile,  default:
9747                            inbox)
9748
9749                  Previous-Sequence: pseq
9750                            Names the sequences which should be defined as the `msgs'
9751                            or  `msg' argument given to the program.  If not present,
9752                            or empty, no sequences are defined.  Otherwise, for  each
9753                            name  given,  the  sequence is first zero'd and then each
9754                            message is added to the sequence.  (profile, no default)
9755
9756                  Sequence-Negation: not
9757                            Defines the string which, when  prefixed  to  a  sequence
9758                            name,  negates that sequence.  Hence, "notseen" means all
9759                            those messages that are not  a  member  of  the  sequence
9760                            "seen".  (profile, no default)
9761
9762
9763             [mh.6]                           MH.6.8                      UCI version
9764
9765
9766
9767
9768
9769
9770
9771
9772
9773             MH-PROFILE(5)                    -148-                     MH-PROFILE(5)
9774
9775
9776                  Unseen-Sequence: unseen
9777                            Names the sequences which should be defined as those mes-
9778                            sages recently incorporated by _\bi_\bn_\bc.  _\bS_\bh_\bo_\bw knows to remove
9779                            messages from this sequence once it thinks they have been
9780                            seen.   If  not  present,  or  empty,  no  sequences  are
9781                            defined.   Otherwise,  each  message  is  added  to  each
9782                            sequence name given.  (profile, no default)
9783
9784                  mh-sequences: .mh_sequences
9785                            The name of the file in each folder which defines  public
9786                            sequences.  To disable the use of public sequences, leave
9787                            the  value  portion  of  this  entry  blank.    (profile,
9788                            default: .mh_sequences)
9789
9790                  atr-_\bs_\be_\bq-_\bf_\bo_\bl_\bd_\be_\br: 172 178-181 212
9791                            Keeps track of the private sequence  called  _\bs_\be_\bq  in  the
9792                            specified folder.  (context, no default)
9793
9794                  Editor: /usr/ucb/ex
9795                            Defines  editor  to  be  used  by   _\bc_\bo_\bm_\bp (1),   _\bd_\bi_\bs_\bt (1),
9796                            _\bf_\bo_\br_\bw (1), and _\br_\be_\bp_\bl (1).  (profile, default: prompter)
9797
9798                  Msg-Protect: 644
9799                            Defines octal protection bits  for  message  files.   See
9800                            _\bc_\bh_\bm_\bo_\bd (1)  for an explanation of the octal number.  (pro-
9801                            file, default: 0644)
9802
9803                  Folder-Protect: 711
9804                            Defines protection bits for  folder  directories.   (pro-
9805                            file, default: 0711)
9806
9807                  _\bp_\br_\bo_\bg_\br_\ba_\bm: default switches
9808                            Sets default switches to be used whenever the mh  program
9809                            _\bp_\br_\bo_\bg_\br_\ba_\bm  is invoked.  For example, one could override the
9810                            _\bE_\bd_\bi_\bt_\bo_\br: profile component when replying  to  messages  by
9811                            adding a component such as:
9812                                    repl: -editor /bin/ed
9813                            (profile, no defaults)
9814
9815                  _\bl_\ba_\bs_\bt_\be_\bd_\bi_\bt_\bo_\br-next: nexteditor
9816                            Names "nexteditor" to be the default editor  after  using
9817                            "lasteditor".   This takes effect at "What now?" level in
9818                            _\bc_\bo_\bm_\bp, _\bd_\bi_\bs_\bt, _\bf_\bo_\br_\bw, and _\br_\be_\bp_\bl.  After editing the draft with
9819                            "lasteditor",  the  default editor is set to be "nextedi-
9820                            tor".  If the user types "edit" without any arguments  to
9821                            "What  now?",  then  "nexteditor"  is used.  (profile, no
9822                            default)
9823
9824                  bboards: system
9825                            Tells _\bb_\bb_\bc which BBoards you are interested in.  (profile,
9826                            default: system)
9827
9828
9829             [mh.6]                           MH.6.8                      UCI version
9830
9831
9832
9833
9834
9835
9836
9837
9838
9839             MH-PROFILE(5)                    -149-                     MH-PROFILE(5)
9840
9841
9842                  Folder-Stack: _\bf_\bo_\bl_\bd_\be_\br_\bs
9843                            The contents of the folder-stack for the _\bf_\bo_\bl_\bd_\be_\br  command.
9844                            (context, no default)
9845
9846                  mhe:
9847                            If present, tells _\bi_\bn_\bc to  compose  an  _\bM_\bH_\bE  auditfile  in
9848                            addition  to  its other tasks.  _\bM_\bH_\bE is Brian Reid's _\bE_\bm_\ba_\bc_\bs
9849                            front-end for _\bM_\bH.  An early version is supplied with  the
9850                            _\bm_\bh._\b6 distribution.  (profile, no default)
9851
9852                  Alternate-Mailboxes: mh@uci-750a, bug-mh*
9853                            Tells _\br_\be_\bp_\bl and _\bs_\bc_\ba_\bn which addresses are really yours.  In
9854                            this  way,  _\br_\be_\bp_\bl knows which addresses should be included
9855                            in the reply, and _\bs_\bc_\ba_\bn knows if the message  really  ori-
9856                            ginated  from  you.   Addresses  must  be  separated by a
9857                            comma, and the hostnames listed should be the  "official"
9858                            hostnames  for the mailboxes you indicate, as local nick-
9859                            names for hosts are not replaced with their official site
9860                            names.   For  each  address, if a host is not given, then
9861                            that address on any host is considered  to  be  you.   In
9862                            addition,  an asterisk (`*') may appear at either or both
9863                            ends of the mailbox and host to indicate wild-card match-
9864                            ing.  (profile, default: your user-id)
9865
9866                  Aliasfile: aliases other-alias
9867                            Indicates aliases files for _\ba_\bl_\bi, _\bw_\bh_\bo_\bm,  and  _\bs_\be_\bn_\bd.   This
9868                            may  be  used instead of the `-alias file' switch.  (pro-
9869                            file, no default)
9870
9871                  Draft-Folder: drafts
9872                            Indicates a default draft folder for  _\bc_\bo_\bm_\bp,  _\bd_\bi_\bs_\bt,  _\bf_\bo_\br_\bw,
9873                            and _\br_\be_\bp_\bl.  (profile, no default)
9874
9875                  digest-issue-_\bl_\bi_\bs_\bt: 1
9876                            Tells _\bf_\bo_\br_\bw the last issue of the last volume sent for the
9877                            digest _\bl_\bi_\bs_\bt.  (context, no default)
9878
9879                  digest-volume-_\bl_\bi_\bs_\bt: 1
9880                            Tells _\bf_\bo_\br_\bw the last volume  sent  for  the  digest  _\bl_\bi_\bs_\bt.
9881                            (context, no default)
9882
9883                  MailDrop: .mail
9884                            Tells _\bi_\bn_\bc your maildrop, if different from  the  default.
9885                            This is superceded by the MAILDROP envariable.  (profile,
9886                            default: /usr/spool/mail/$USER)
9887
9888                  Signature: RAND MH System (agent: Marshall Rose)
9889                            Tells _\bs_\be_\bn_\bd your mail signature.  This  is  superceded  by
9890                            the  SIGNATURE envariable.  On hosts where _\bM_\bH was config-
9891                            ured with the UCI option, if SIGNATURE  is  not  set  and
9892                            this   profile   entry   is   not   present,   the   file
9893                            $HOME/.signature is consulted.  Your  signature  will  be
9894
9895             [mh.6]                           MH.6.8                      UCI version
9896
9897
9898
9899
9900
9901
9902
9903
9904
9905             MH-PROFILE(5)                    -150-                     MH-PROFILE(5)
9906
9907
9908                            added  to the address _\bs_\be_\bn_\bd puts in the "From:" header; do
9909                            not include an address in the signature text.   (profile,
9910                            no default)
9911
9912                  The following profile elements are  used  whenever  an  _\bM_\bH  program
9913                  invokes  some  other program such as _\bm_\bo_\br_\be (1).  The ._\bm_\bh__\bp_\br_\bo_\bf_\bi_\bl_\be can
9914                  be used to select alternate  programs  if  the  user  wishes.   The
9915                  default values are given in the examples.
9916
9917                       fileproc:     /usr/bs/mh-6.8/bin/refile
9918                       incproc:      /usr/bs/mh-6.8/bin/inc
9919                       installproc:  /usr/bs/mh-6.8/lib/install-mh
9920                       lproc:        /usr/ucb/more
9921                       mailproc:     /usr/bs/mh-6.8/bin/mhmail
9922                       mhlproc:      /usr/bs/mh-6.8/lib/mhl
9923                       moreproc:     /usr/ucb/more
9924                       mshproc:      /usr/bs/mh-6.8/bin/msh
9925                       packproc:     /usr/bs/mh-6.8/bin/packf
9926                       postproc:     /usr/bs/mh-6.8/lib/post
9927                       rmmproc:      none
9928                       rmfproc:      /usr/bs/mh-6.8/bin/rmf
9929                       sendproc:     /usr/bs/mh-6.8/bin/send
9930                       showproc:     /usr/ucb/more
9931                       whatnowproc:  /usr/bs/mh-6.8/bin/whatnow
9932                       whomproc:     /usr/bs/mh-6.8/bin/whom
9933
9934                  If you define the envariable MH, you can specify  a  profile  other
9935                  than ._\bm_\bh__\bp_\br_\bo_\bf_\bi_\bl_\be to be read by the _\bM_\bH programs that you invoke.  If
9936                  the value of MH is not absolute, (i.e., does not begin with a  / ),
9937                  it  will  be  presumed to start from the current working directory.
9938                  This is one of the very few exceptions  in  _\bM_\bH  where  non-absolute
9939                  pathnames are not considered relative to the user's _\bM_\bH directory.
9940
9941                  Similarly, if you define the envariable MHCONTEXT, you can  specify
9942                  a  context  other than the normal context file (as specified in the
9943                  _\bM_\bH profile).  As always, unless the value of MHCONTEXT is absolute,
9944                  it will be presumed to start from your _\bM_\bH directory.
9945
9946                  _\bM_\bH programs also support other envariables:
9947
9948                  MAILDROP : tells _\bi_\bn_\bc the default maildrop
9949                       This supercedes the "MailDrop:" profile entry.
9950
9951                  SIGNATURE : tells _\bs_\be_\bn_\bd and _\bp_\bo_\bs_\bt your mail signature
9952                       This supercedes the "Signature:" profile entry.
9953
9954                  HOME : tells all _\bM_\bH programs your home directory
9955
9956                  SHELL : tells _\bb_\bb_\bl the default shell to run
9957
9958                  TERM : tells _\bM_\bH your terminal type
9959                       The TERMCAP envariable  is  also  consulted.   In  particular,
9960
9961             [mh.6]                           MH.6.8                      UCI version
9962
9963
9964
9965
9966
9967
9968
9969
9970
9971             MH-PROFILE(5)                    -151-                     MH-PROFILE(5)
9972
9973
9974                       these  tell  _\bs_\bc_\ba_\bn  and _\bm_\bh_\bl how to clear your terminal, and how
9975                       many columns wide your terminal is.  They also  tell  _\bm_\bh_\bl  how
9976                       many lines long your terminal screen is.
9977
9978                  editalt : the alternate message
9979                       This is set by _\bd_\bi_\bs_\bt and _\br_\be_\bp_\bl during edit sessions so  you  can
9980                       peruse  the message being distributed or replied to.  The mes-
9981                       sage is also available  through  a  link  called  "@"  in  the
9982                       current  directory  if  your current working directory and the
9983                       folder the message lives in are on the same UNIX filesystem.
9984
9985                  mhdraft : the path to the working draft
9986                       This is set by _\bc_\bo_\bm_\bp, _\bd_\bi_\bs_\bt, _\bf_\bo_\br_\bw, and _\br_\be_\bp_\bl to  tell  the  _\bw_\bh_\ba_\bt_\b-
9987                       _\bn_\bo_\bw_\bp_\br_\bo_\bc  which  file  to  ask "What now?" questions about.  In
9988                       addition, _\bd_\bi_\bs_\bt, _\bf_\bo_\br_\bw, and _\br_\be_\bp_\bl set  mhfolder  if  appropriate.
9989                       Further,  _\bd_\bi_\bs_\bt  and  _\br_\be_\bp_\bl set mhaltmsg to tell the _\bw_\bh_\ba_\bt_\bn_\bo_\bw_\bp_\br_\bo_\bc
9990                       about an alternate message associated with the draft (the mes-
9991                       sage being distributed or replied to), and _\bd_\bi_\bs_\bt sets mhdist to
9992                       tell the _\bw_\bh_\ba_\bt_\bn_\bo_\bw_\bp_\br_\bo_\bc that message  re-distribution  is  occur-
9993                       ring.   Also,  mheditor  is  set  to  tell the _\bw_\bh_\ba_\bt_\bn_\bo_\bw_\bp_\br_\bo_\bc the
9994                       user's choice of  editor  (unless  overridden  by  `-noedit').
9995                       Similarly,  mhuse  may be set by _\bc_\bo_\bm_\bp.  Finally, mhmessages is
9996                       set by _\bd_\bi_\bs_\bt, _\bf_\bo_\br_\bw, and _\br_\be_\bp_\bl if annotations are to occur (along
9997                       with  mhannotate, and mhinplace).  It's amazing all the infor-
9998                       mation that has to get passed  via  envariables  to  make  the
9999                       "What now?" interface look squeaky clean to the _\bM_\bH user, isn't
10000                       it?  The reason for all this is that the _\bM_\bH  user  can  select
10001                       _\ba_\bn_\by  program as the _\bw_\bh_\ba_\bt_\bn_\bo_\bw_\bp_\br_\bo_\bc, including one of the standard
10002                       shells.  As a result, it's not possible  to  pass  information
10003                       via an argument list.
10004                       If the WHATNOW option was set during  _\bM_\bH  configuration  (type
10005                       `-help'  to an _\bM_\bH command to find out), and if this envariable
10006                       is set, if the commands _\br_\be_\bf_\bi_\bl_\be, _\bs_\be_\bn_\bd, _\bs_\bh_\bo_\bw, or  _\bw_\bh_\bo_\bm  are  not
10007                       given  any  `msgs'  arguments, then they will default to using
10008                       the file indicated by mhdraft.  This is useful for getting the
10009                       default behavior supplied by the default _\bw_\bh_\ba_\bt_\bn_\bo_\bw_\bp_\br_\bo_\bc.
10010
10011                  mhfolder : the folder containing the alternate message
10012                       This is set by _\bd_\bi_\bs_\bt and _\br_\be_\bp_\bl during edit sessions so  you  can
10013                       peruse  other  messages  in the current folder besides the one
10014                       being distributed or replied to.  The mhfolder  envariable  is
10015                       also set by _\bs_\bh_\bo_\bw, _\bp_\br_\be_\bv, and _\bn_\be_\bx_\bt for use by _\bm_\bh_\bl.
10016
10017                  MHBBRC :
10018                       If you define the envariable MHBBRC, you can specify a BBoards
10019                       information  file  other than ._\bb_\bb_\br_\bc to be read by _\bb_\bb_\bc.  If the
10020                       value of MHBBRC is not absolute, (i.e., does not begin with  a
10021                       / ),  it  will  be  presumed to start from the current working
10022                       directory.
10023
10024                  MHFD :
10025                       If the OVERHEAD option was set during _\bM_\bH  configuration  (type
10026
10027             [mh.6]                           MH.6.8                      UCI version
10028
10029
10030
10031
10032
10033
10034
10035
10036
10037             MH-PROFILE(5)                    -152-                     MH-PROFILE(5)
10038
10039
10040                       `-help' to an _\bM_\bH command to find out), then if this envariable
10041                       is set, _\bM_\bH considers it to be the number of a file  descriptor
10042                       which  is  opened, read-only to the _\bM_\bH profile.  Similarly, if
10043                       the envariable MHCONTEXTFD is set, this is  the  number  of  a
10044                       file  descriptor  which is opened read-only to the _\bM_\bH context.
10045                       This feature of _\bM_\bH is experimental, and  is  used  to  examine
10046                       possible  speed  improvements for _\bM_\bH startup.  Note that these
10047                       envariables must be set and non-empty to enable this  feature.
10048                       However,  if OVERHEAD is enabled during _\bM_\bH configuration, then
10049                       when _\bM_\bH programs call other _\bM_\bH programs, this scheme is  used.
10050                       These file descriptors are not closed throughout the execution
10051                       of the _\bM_\bH program, so children may  take  advantage  of  this.
10052                       This approach is thought to be completely safe and does result
10053                       in some performance enhancements.
10054
10055
10056             _\bF_\bi_\bl_\be_\bs
10057                  $HOME/.mh_profile                    The user profile
10058                  or $MH                               Rather than the standard profile
10059                  <mh-dir>/context                     The user context
10060                  or $CONTEXT                          Rather than the standard context
10061                  <folder>/.mh_sequences               Public sequences for <folder>
10062
10063
10064             _\bP_\br_\bo_\bf_\bi_\bl_\be _\bC_\bo_\bm_\bp_\bo_\bn_\be_\bn_\bt_\bs
10065                  All
10066
10067
10068             _\bS_\be_\be _\bA_\bl_\bs_\bo
10069                  mh(1), environ(5), mh-sequence(5)
10070
10071
10072             _\bD_\be_\bf_\ba_\bu_\bl_\bt_\bs
10073                  None
10074
10075
10076             _\bC_\bo_\bn_\bt_\be_\bx_\bt
10077                  All
10078
10079
10080
10081
10082
10083
10084
10085
10086
10087
10088
10089
10090
10091
10092
10093             [mh.6]                           MH.6.8                      UCI version
10094
10095
10096
10097
10098
10099
10100
10101
10102
10103             MH-PROFILE(5)                    -153-                     MH-PROFILE(5)
10104
10105
10106             _\bH_\bi_\bs_\bt_\bo_\br_\by
10107                  In previous versions of _\bM_\bH, the current-message value of a writable
10108                  folder  was  kept  in a file called "cur" in the folder itself.  In
10109                  _\bm_\bh._\b3, the ._\bm_\bh__\bp_\br_\bo_\bf_\bi_\bl_\be contained the current-message values for  all
10110                  folders, regardless of their writability.
10111
10112                  In all versions of _\bM_\bH since _\bm_\bh._\b4,  the  ._\bm_\bh__\bp_\br_\bo_\bf_\bi_\bl_\be  contains  only
10113                  static  information, which _\bM_\bH programs will NOT update.  Changes in
10114                  context are made to the _\bc_\bo_\bn_\bt_\be_\bx_\bt file kept in the users MH  _\bd_\bi_\br_\be_\bc_\bt_\bo-
10115                  _\br_\by.  This includes, but is not limited to: the "Current-Folder" en-
10116                  try and all private sequence information.  Public sequence informa-
10117                  tion is kept in a file called ._\bm_\bh__\bs_\be_\bq_\bu_\be_\bn_\bc_\be_\bs in each folder.
10118
10119                  To convert from the format used in releases of _\bM_\bH prior to the for-
10120                  mat used in the _\bm_\bh._\b4 release, _\bi_\bn_\bs_\bt_\ba_\bl_\bl-_\bm_\bh should be invoked with the
10121                  `-compat' switch.  This generally happens automatically on _\bM_\bH  sys-
10122                  tems generated with the "COMPAT" option during _\bM_\bH configuration.
10123
10124                  The ._\bm_\bh__\bp_\br_\bo_\bf_\bi_\bl_\be may override the  path  of  the  _\bc_\bo_\bn_\bt_\be_\bx_\bt  file,  by
10125                  specifying  a "context" entry (this must be in lower-case).  If the
10126                  entry is not absolute (does not start with a / ), then it is inter-
10127                  preted  relative  to the user's _\bM_\bH directory.  As a result, you can
10128                  actually have more than one set of private sequences by using  dif-
10129                  ferent context files.
10130
10131
10132
10133
10134
10135
10136
10137
10138
10139
10140
10141
10142
10143
10144
10145
10146
10147
10148
10149
10150
10151
10152
10153
10154
10155
10156
10157
10158
10159             [mh.6]                           MH.6.8                      UCI version
10160
10161
10162
10163
10164
10165
10166
10167
10168
10169             MH-PROFILE(5)                    -154-                     MH-PROFILE(5)
10170
10171
10172             _\bB_\bu_\bg_\bs
10173                  The shell quoting conventions are not available in the .mh_profile.
10174                  Each token is separated by whitespace.
10175
10176                  There is some question as to  what  kind  of  arguments  should  be
10177                  placed  in  the  profile  as  options.  In order to provide a clear
10178                  answer, recall command line semantics of all _\bM_\bH programs: conflict-
10179                  ing  switches  (e.g., `-header and `-noheader') may occur more than
10180                  one time on the command line, with the last switch  taking  effect.
10181                  Other  arguments, such as message sequences, filenames and folders,
10182                  are always remembered on the invocation line and are not superseded
10183                  by  following  arguments  of  the  same type.  Hence, it is safe to
10184                  place only switches (and their arguments) in the profile.
10185
10186                  If one finds that an _\bM_\bH program is being invoked  again  and  again
10187                  with  the same arguments, and those arguments aren't switches, then
10188                  there are a few possible solutions to this problem.  The  first  is
10189                  to  create a (soft) link in your $_\bH_\bO_\bM_\bE/_\bb_\bi_\bn directory to the _\bM_\bH pro-
10190                  gram of your choice.  By giving this link a different name, you can
10191                  create  a new entry in your profile and use an alternate set of de-
10192                  faults for the _\bM_\bH command.  Similarly, you  could  create  a  small
10193                  shell script which called the _\bM_\bH program of your choice with an al-
10194                  ternate set of invocation line switches (using links and an  alter-
10195                  nate profile entry is preferable to this solution).
10196
10197                  Finally, the _\bc_\bs_\bh user could create an alias for the command of  the
10198                  form:
10199
10200                       alias cmd 'cmd arg1 arg2 ...'
10201
10202                  In this way, the user can avoid lengthy type-in to the  shell,  and
10203                  still  give  _\bM_\bH commands safely.  (Recall that some _\bM_\bH commands in-
10204                  voke others, and that in all cases, the profile  is  read,  meaning
10205                  that aliases are disregarded beyond an initial command invocation)
10206
10207
10208
10209
10210
10211
10212
10213
10214
10215
10216
10217
10218
10219
10220
10221
10222
10223
10224
10225             [mh.6]                           MH.6.8                      UCI version
10226
10227
10228
10229
10230
10231
10232
10233
10234
10235             MH-SEQUENCE(5)                   -155-                    MH-SEQUENCE(5)
10236
10237
10238             _\bN_\bA_\bM_\bE
10239                  mh-sequence - sequence specification for MH message system
10240
10241             _\bS_\bY_\bN_\bO_\bP_\bS_\bI_\bS
10242                  most _\bM_\bH commands
10243
10244             _\bD_\bE_\bS_\bC_\bR_\bI_\bP_\bT_\bI_\bO_\bN
10245
10246                  Most _\bM_\bH commands accept a  `msg'  or  `msgs'  specification,  where
10247                  `msg'  indicates  one message and `msgs' indicates one or more mes-
10248                  sages.  To designate a message,  you  may  use  either  its  number
10249                  (e.g., 1, 10, 234) or one of these "reserved" message names:
10250
10251                       _\bN_\ba_\bm_\be      _\bD_\be_\bs_\bc_\br_\bi_\bp_\bt_\bi_\bo_\bn
10252                       first     the first message in the folder
10253                       last      the last message in the folder
10254                       cur       the most recently accessed message
10255                       prev      the message numerically preceding "cur"
10256                       next      the message numerically following "cur"
10257
10258                  In commands that take a `msg' argument, the default is "cur".  As a
10259                  shorthand, "." is equivalent to "cur".
10260
10261                  For example: In a folder containing five messages numbered  5,  10,
10262                  94,  177  and 325, "first" is 5 and "last" is 325.  If "cur" is 94,
10263                  then "prev" is 10 and "next" is 177.
10264
10265                  The word `msgs' indicates that one or more messages may  be  speci-
10266                  fied.   Such a specification consists of one message designation or
10267                  of several message designations separated  by  spaces.   A  message
10268                  designation  consists either of a message name as defined above, or
10269                  a message range.
10270
10271                  A message range is specified as "name1-name2"  or  "name:n",  where
10272                  `name',  `name1'  and  `name2'  are  message  names,  and `n' is an
10273                  integer.
10274
10275                  The specification "name1-name2" designates  all  currently-existing
10276                  messages from `name1' to `name2' inclusive.  The message name "all"
10277                  is a shorthand for the message range "first-last".
10278
10279                  The specification "name:n" designates up to  `n'  messages.   These
10280                  messages  start with `name' if `name' is a message number or one of
10281                  the reserved names "first" "cur", or "next", The messages end  with
10282                  `name'  if  `name'  is "prev" or "last".  The interpretation of `n'
10283                  may be overridden by preceding `n' with a plus or minus sign;  `+n'
10284                  always  means  up  to  `n'  messages starting with `name', and `-n'
10285                  always means up to `n' messages ending with `name'.
10286
10287                  In commands which accept a `msgs' argument, the default  is  either
10288                  "cur"  or  "all", depending on which makes more sense for each com-
10289                  mand  (see  the  individual  man  pages  for  details).    Repeated
10290
10291             [mh.6]                           MH.6.8                      UCI version
10292
10293
10294
10295
10296
10297
10298
10299
10300
10301             MH-SEQUENCE(5)                   -156-                    MH-SEQUENCE(5)
10302
10303
10304                  specifications of the same message have the same effect as a single
10305                  specification of the message.
10306
10307
10308               _\bU_\bs_\be_\br-_\bD_\be_\bf_\bi_\bn_\be_\bd _\bM_\be_\bs_\bs_\ba_\bg_\be _\bS_\be_\bq_\bu_\be_\bn_\bc_\be_\bs
10309
10310                  In addition to the "reserved"  (pre-defined)  message  names  given
10311                  above,  _\bM_\bH  supports  user-defined  sequence  names.   User-defined
10312                  sequences allow the _\bM_\bH user a tremendous amount of power in dealing
10313                  with  groups of messages in the same folder by allowing the user to
10314                  bind a group of messages to a meaningful symbolic name.
10315
10316                  The name used to denote a  message  sequence  must  consist  of  an
10317                  alphabetic  character followed by zero or more alphanumeric charac-
10318                  ters, and can not be one of the  "reserved"  message  names  above.
10319                  After  defining  a  sequence, it can be used wherever an _\bM_\bH command
10320                  expects a `msg' or `msgs' argument.
10321
10322                  Some  forms  of  message  ranges  are  allowed  with   user-defined
10323                  sequences.   The  specification "name:n" may be used, and it desig-
10324                  nates up to the first `n' messages (or last `n' messages for  `-n')
10325                  which are elements of the user-defined sequence `name'.
10326
10327                  The specifications "name:next" and "name:prev" may  also  be  used,
10328                  and  they  designate  the next or previous message (relative to the
10329                  current message) which is an element of the  user-defined  sequence
10330                  `name'.   The  specificaitions  "name:first"  and  "name:last"  are
10331                  equivalent to "name:1" and "name:-1", respectively.  The specifica-
10332                  tion  "name:cur" is not allowed (use just "cur" instead).  The syn-
10333                  tax of these message range specifcations is subject  to  change  in
10334                  the future.
10335
10336                  User-defined sequence names are specific to each folder.  They  are
10337                  defined using the _\bp_\bi_\bc_\bk and _\bm_\ba_\br_\bk commands.
10338
10339
10340               _\bP_\bu_\bb_\bl_\bi_\bc _\ba_\bn_\bd _\bP_\br_\bi_\bv_\ba_\bt_\be _\bU_\bs_\be_\br-_\bD_\be_\bf_\bi_\bn_\be_\bd _\bS_\be_\bq_\bu_\be_\bn_\bc_\be_\bs
10341
10342                  There are two varieties of sequences: _\bp_\bu_\bb_\bl_\bi_\bc sequences and  _\bp_\br_\bi_\bv_\ba_\bt_\be
10343                  sequences.   _\bP_\bu_\bb_\bl_\bi_\bc  sequences of a folder are accessible to any _\bM_\bH
10344                  user that can read that folder and are kept  in  the  .mh_sequences
10345                  file  in  the folder.  _\bP_\br_\bi_\bv_\ba_\bt_\be sequences are accessible only to the
10346                  _\bM_\bH user that defined those sequences and are kept in the user's  _\bM_\bH
10347                  context file.  By default, _\bp_\bi_\bc_\bk and _\bm_\ba_\br_\bk create _\bp_\bu_\bb_\bl_\bi_\bc sequences if
10348                  the folder for which the sequences are being defined is writable by
10349                  the  _\bM_\bH  user.  Otherwise, _\bp_\br_\bi_\bv_\ba_\bt_\be sequences are created.  This can
10350                  be overridden with the `-public' and `-private' switches to _\bm_\ba_\br_\bk.
10351
10352
10353               _\bS_\be_\bq_\bu_\be_\bn_\bc_\be _\bN_\be_\bg_\ba_\bt_\bi_\bo_\bn
10354
10355                  _\bM_\bH provides the ability to select all messages not  elements  of  a
10356
10357             [mh.6]                           MH.6.8                      UCI version
10358
10359
10360
10361
10362
10363
10364
10365
10366
10367             MH-SEQUENCE(5)                   -157-                    MH-SEQUENCE(5)
10368
10369
10370                  user-defined  sequence.   To  do  this,  the user should define the
10371                  entry "Sequence-Negation" in the _\bM_\bH profile file; its value may  be
10372                  any  string.  This string is then used to preface an existing user-
10373                  defined sequence name.  This specification  then  refers  to  those
10374                  messages not elements of the specified sequence name.  For example,
10375                  if the profile entry is:
10376
10377                       Sequence-Negation: not
10378
10379                  then anytime an _\bM_\bH command is given "notfoo" as a `msg'  or  `msgs'
10380                  argument, it would substitute all messages that are not elements of
10381                  the sequence "foo".
10382
10383                  Obviously, the user should beware of defining sequences with  names
10384                  that begin with the value of the "Sequence-Negation" profile entry.
10385
10386
10387               _\bT_\bh_\be _\bP_\br_\be_\bv_\bi_\bo_\bu_\bs _\bS_\be_\bq_\bu_\be_\bn_\bc_\be
10388
10389                  _\bM_\bH provides the ability to remember the `msgs'  or  `msg'  argument
10390                  last  given to an _\bM_\bH command.  The entry "Previous-Sequence" should
10391                  be defined in the _\bM_\bH profile; its value should be a  sequence  name
10392                  or  multiple  sequence names separated by spaces.  If this entry is
10393                  defined, when when an _\bM_\bH  command  finishes,  it  will  define  the
10394                  sequence(s)  named  in the value of this entry to be those messages
10395                  that were specified to the command.  Hence, a profile entry of
10396
10397                       Previous-Sequence: pseq
10398
10399                  directs any _\bM_\bH command that accepts a `msg' or `msgs'  argument  to
10400                  define the sequence "pseq" as those messages when it finishes.
10401
10402                  Note:  there  can  be  a   performance   penalty   in   using   the
10403                  "Previous-Sequence"  facility.  If it is used, all _\bM_\bH programs have
10404                  to write the sequence information to the .mh_sequences file for the
10405                  folder  each  time  they  run.   If the "Previous-Sequence" profile
10406                  entry is not included,  only  _\bp_\bi_\bc_\bk  and  _\bm_\ba_\br_\bk  will  write  to  the
10407                  .mh_sequences file.
10408
10409
10410               _\bT_\bh_\be _\bU_\bn_\bs_\be_\be_\bn _\bS_\be_\bq_\bu_\be_\bn_\bc_\be
10411
10412                  Finally, some users like to indicate messages which have  not  been
10413                  previously seen by them.  Both _\bi_\bn_\bc and _\bs_\bh_\bo_\bw honor the profile entry
10414                  "Unseen-Sequence" to support this  activity.   This  entry  in  the
10415                  .mh_profile  should  be  defined  as  one  or  more  sequence names
10416                  separated by spaces.  If there is a value for "Unseen-Sequence"  in
10417                  the profile, then whenever _\bi_\bn_\bc places new messages in a folder, the
10418                  new messages will also be added to the  sequence(s)  named  in  the
10419                  value of this entry.  Hence, a profile entry of
10420
10421                       Unseen-Sequence: unseen
10422
10423             [mh.6]                           MH.6.8                      UCI version
10424
10425
10426
10427
10428
10429
10430
10431
10432
10433             MH-SEQUENCE(5)                   -158-                    MH-SEQUENCE(5)
10434
10435
10436                  directs _\bi_\bn_\bc to add new messages to the sequence  "unseen".   Unlike
10437                  the  behavior of the "Previous-Sequence" entry in the profile, how-
10438                  ever, the sequence(s) will not be zeroed by _\bi_\bn_\bc.
10439
10440                  Similarly, whenever _\bs_\bh_\bo_\bw (or _\bn_\be_\bx_\bt or _\bp_\br_\be_\bv) displays a message, that
10441                  message   will   be   removed  from  any  sequences  named  by  the
10442                  "Unseen-Sequence" entry in the profile.
10443
10444
10445             _\bF_\bi_\bl_\be_\bs
10446                  $HOME/.mh_profile                    The user profile
10447                  <mh-dir>/context                     The user context
10448                  <folder>/.mh_sequences               Public sequences for <folder>
10449
10450
10451             _\bP_\br_\bo_\bf_\bi_\bl_\be _\bC_\bo_\bm_\bp_\bo_\bn_\be_\bn_\bt_\bs
10452                  Sequence-Negation:   To designate messages not in a sequence
10453                  Previous-Sequence:   The last message specification given
10454                  Unseen-Sequence:     Those messages not yet seen by the user
10455
10456
10457             _\bS_\be_\be _\bA_\bl_\bs_\bo
10458                  mh(1), mark(1), pick(1), mh-profile(5)
10459
10460
10461             _\bD_\be_\bf_\ba_\bu_\bl_\bt_\bs
10462                  None
10463
10464
10465             _\bC_\bo_\bn_\bt_\be_\bx_\bt
10466                  All
10467
10468
10469             _\bB_\bu_\bg_\bs
10470                  User-defined sequences are stored in the .mh_sequences  file  as  a
10471                  series  of  message specifications separated by spaces.  If a user-
10472                  defined sequence contains too many  individual  message  specifica-
10473                  tions,  that line in the file may become too long for _\bM_\bH to handle.
10474                  This will generate the error message ".mh_sequences is poorly  for-
10475                  matted".   You'll  have  to edit the file by hand to remove the of-
10476                  fending line.
10477
10478                  This can happen to users who define the  "Previous-Sequence"  entry
10479                  in  the  _\bM_\bH profile and have a folder containing many messages with
10480                  gaps in the numbering.  A workaround for large folders is to minim-
10481                  ize numbering gaps by using "folder -pack" often.
10482
10483
10484
10485
10486
10487
10488
10489             [mh.6]                           MH.6.8                      UCI version
10490
10491
10492
10493
10494
10495
10496
10497
10498
10499             AP(8)                            -159-                             AP(8)
10500
10501
10502             _\bN_\bA_\bM_\bE
10503                  ap - parse addresses 822-style
10504
10505             _\bS_\bY_\bN_\bO_\bP_\bS_\bI_\bS
10506                  /usr/bs/mh-6.8/lib/ap [-form formatfile] [-format string]
10507                       [-normalize] [-nonormalize] [-width columns] addrs ...
10508                       [-help]
10509
10510             _\bD_\bE_\bS_\bC_\bR_\bI_\bP_\bT_\bI_\bO_\bN
10511
10512                  _\bA_\bp is a program that parses addresses according to the ARPA  Inter-
10513                  net  standard.   It also understands many non-standard formats.  It
10514                  is useful for seeing how _\bM_\bH will interpret an address.
10515
10516                  The _\ba_\bp program treats each argument as one or more  addresses,  and
10517                  prints  those  addresses out in the official 822-format.  Hence, it
10518                  is usually best to enclose each argument in double-quotes  for  the
10519                  shell.
10520
10521                  To override the output format used by _\ba_\bp, the  `-format string'  or
10522                  `-format file'  switches  are used.  This permits individual fields
10523                  of the address to be extracted with ease.  The string is  simply  a
10524                  format   stringand   thefile   is   simply   a  format  file.   See
10525                  _\bm_\bh-_\bf_\bo_\br_\bm_\ba_\bt (5) for the details.
10526
10527                  In addition to the standard escapes, _\ba_\bp also recognizes the follow-
10528                  ing additional escape:
10529
10530                  _\bE_\bs_\bc_\ba_\bp_\be  _\bR_\be_\bt_\bu_\br_\bn_\bs  _\bD_\be_\bs_\bc_\br_\bi_\bp_\bt_\bi_\bo_\bn
10531                  error   string   A diagnostic if the parse failed
10532
10533                  If the `-normalize' switch is given, _\ba_\bp will try to track down  the
10534                  official hostname of the address.
10535
10536                  Here is the default format string used by _\ba_\bp:
10537
10538                       %<{error}%{error}: %{text}%|%(putstr(proper{text}))%>
10539
10540                  which says that if an error was detected, print the error,  a  `:',
10541                  and  the address in error.  Otherwise, output the 822-proper format
10542                  of the address.
10543
10544             _\bF_\bi_\bl_\be_\bs
10545                  $HOME/.mh_profile                    The user profile
10546                  /usr/bs/mh-6.8/lib/mtstailor         tailor file
10547
10548
10549             _\bP_\br_\bo_\bf_\bi_\bl_\be _\bC_\bo_\bm_\bp_\bo_\bn_\be_\bn_\bt_\bs
10550                  None
10551
10552
10553
10554
10555             [mh.6]                           MH.6.8                      UCI version
10556
10557
10558
10559
10560
10561
10562
10563
10564
10565             AP(8)                            -160-                             AP(8)
10566
10567
10568             _\bS_\be_\be _\bA_\bl_\bs_\bo
10569                  dp(8),
10570                  _\bS_\bt_\ba_\bn_\bd_\ba_\br_\bd _\bf_\bo_\br  _\bt_\bh_\be  _\bF_\bo_\br_\bm_\ba_\bt  _\bo_\bf  _\bA_\bR_\bP_\bA  _\bI_\bn_\bt_\be_\br_\bn_\be_\bt  _\bT_\be_\bx_\bt  _\bM_\be_\bs_\bs_\ba_\bg_\be_\bs  (aka
10571                  RFC-822)
10572
10573
10574             _\bD_\be_\bf_\ba_\bu_\bl_\bt_\bs
10575                  `-format' defaults as described above
10576                  `-normalize'
10577                  `-width' defaults to the width of the terminal
10578
10579
10580             _\bC_\bo_\bn_\bt_\be_\bx_\bt
10581                  None
10582
10583
10584             _\bB_\bu_\bg_\bs
10585                  The argument to the `-format' switch must be interpreted as a  sin-
10586                  gle token by the shell that invokes _\ba_\bp.  Therefore, one must usual-
10587                  ly place the argument to this switch inside double-quotes.
10588
10589                  On hosts where _\bM_\bH was configured  with  the  BERK  option,  address
10590                  parsing is not enabled.
10591
10592
10593
10594
10595
10596
10597
10598
10599
10600
10601
10602
10603
10604
10605
10606
10607
10608
10609
10610
10611
10612
10613
10614
10615
10616
10617
10618
10619
10620
10621             [mh.6]                           MH.6.8                      UCI version
10622
10623
10624
10625
10626
10627
10628
10629
10630
10631             CONFLICT(8)                      -161-                       CONFLICT(8)
10632
10633
10634             _\bN_\bA_\bM_\bE
10635                  conflict - search for alias/password conflicts
10636
10637             _\bS_\bY_\bN_\bO_\bP_\bS_\bI_\bS
10638                  /usr/bs/mh-6.8/lib/conflict [-mail name] [-search directory]
10639                       [aliasfiles...] [-help]
10640
10641             _\bD_\bE_\bS_\bC_\bR_\bI_\bP_\bT_\bI_\bO_\bN
10642
10643                  _\bC_\bo_\bn_\bf_\bl_\bi_\bc_\bt is a program that checks to see if the  interface  between
10644                  _\bM_\bH and transport system is in good shape
10645
10646                  _\bC_\bo_\bn_\bf_\bl_\bi_\bc_\bt also checks for maildrops in /usr/spool/mail which do  not
10647                  belong  to  a  valid user.  It assumes that no user name will start
10648                  with `.', and thus ignores files  in  /usr/spool/mail  which  begin
10649                  with  `.'.   It also checks for entries in the _\bg_\br_\bo_\bu_\bp (5) file which
10650                  do not belong to a valid user, and for users  who  do  not  have  a
10651                  valid  group  number.   In  addition duplicate users and groups are
10652                  noted.
10653
10654                  If the `-mail name' switch is used, then the results will  be  sent
10655                  to  the  specified  _\bn_\ba_\bm_\be.   Otherwise,  the results are sent to the
10656                  standard output.
10657
10658                  The `-search directory' switch can be used  to  search  directories
10659                  other  than /usr/spool/mail and to report anomalies in those direc-
10660                  tories.  The `-search directory' switch can appear  more  than  one
10661                  time in an invocation to _\bc_\bo_\bn_\bf_\bl_\bi_\bc_\bt.
10662
10663                  _\bC_\bo_\bn_\bf_\bl_\bi_\bc_\bt should be run under  _\bc_\br_\bo_\bn (8), or whenever system account-
10664                  ing takes place.
10665
10666             _\bF_\bi_\bl_\be_\bs
10667                  /usr/bs/mh-6.8/lib/mtstailor         tailor file
10668                  /etc/passwd                          List of users
10669                  /etc/group                           List of groups
10670                  /usr/bs/mh-6.8/bin/mhmail            Program to send mail
10671                  /usr/spool/mail/                     Directory of mail drop
10672
10673
10674             _\bP_\br_\bo_\bf_\bi_\bl_\be _\bC_\bo_\bm_\bp_\bo_\bn_\be_\bn_\bt_\bs
10675                  None
10676
10677
10678             _\bS_\be_\be _\bA_\bl_\bs_\bo
10679                  mh-alias(5)
10680
10681
10682             _\bD_\be_\bf_\ba_\bu_\bl_\bt_\bs
10683                  `aliasfiles' defaults to /usr/bs/mh-6.8/lib/MailAliases
10684
10685
10686
10687             [mh.6]                           MH.6.8                      UCI version
10688
10689
10690
10691
10692
10693
10694
10695
10696
10697             CONFLICT(8)                      -162-                       CONFLICT(8)
10698
10699
10700             _\bC_\bo_\bn_\bt_\be_\bx_\bt
10701                  None
10702
10703
10704
10705
10706
10707
10708
10709
10710
10711
10712
10713
10714
10715
10716
10717
10718
10719
10720
10721
10722
10723
10724
10725
10726
10727
10728
10729
10730
10731
10732
10733
10734
10735
10736
10737
10738
10739
10740
10741
10742
10743
10744
10745
10746
10747
10748
10749
10750
10751
10752
10753             [mh.6]                           MH.6.8                      UCI version
10754
10755
10756
10757
10758
10759
10760
10761
10762
10763             DP(8)                            -163-                             DP(8)
10764
10765
10766             _\bN_\bA_\bM_\bE
10767                  dp - parse dates 822-style
10768
10769             _\bS_\bY_\bN_\bO_\bP_\bS_\bI_\bS
10770                  /usr/bs/mh-6.8/lib/dp [-form formatfile] [-format string]
10771                       [-width columns] dates ...  [-help]
10772
10773             _\bD_\bE_\bS_\bC_\bR_\bI_\bP_\bT_\bI_\bO_\bN
10774
10775                  _\bD_\bp is a program that parses dates according to  the  ARPA  Internet
10776                  standard.   It  also understands many non-standard formats, such as
10777                  those  produced  by  TOPS-20  sites  and  some  UNIX  sites   using
10778                  _\bc_\bt_\bi_\bm_\be (3).  It is useful for seeing how _\bM_\bH will interpret a date.
10779
10780                  The _\bd_\bp program treats each argument as a single  date,  and  prints
10781                  the date out in the official 822-format.  Hence, it is usually best
10782                  to enclose each argument in double-quotes for the shell.
10783
10784                  To override the output format used by _\bd_\bp, the  `-format string'  or
10785                  `-format file'  switches  are used.  This permits individual fields
10786                  of the address to be extracted with ease.  The string is  simply  a
10787                  format   stringand   thefile   is   simply   a  format  file.   See
10788                  _\bm_\bh-_\bf_\bo_\br_\bm_\ba_\bt (5) for the details.
10789
10790                  Here is the default format string used by _\bd_\bp:
10791
10792                       %<(nodate{text})error: %{text}%|%(putstr(pretty{text}))%>
10793
10794                  which says that if an error was detected, print the error,  a  `:',
10795                  and  the date in error.  Otherwise, output the 822-proper format of
10796                  the date.
10797
10798             _\bF_\bi_\bl_\be_\bs
10799                  $HOME/.mh_profile                    The user profile
10800
10801
10802             _\bP_\br_\bo_\bf_\bi_\bl_\be _\bC_\bo_\bm_\bp_\bo_\bn_\be_\bn_\bt_\bs
10803                  None
10804
10805
10806             _\bS_\be_\be _\bA_\bl_\bs_\bo
10807                  ap(8)
10808                  _\bS_\bt_\ba_\bn_\bd_\ba_\br_\bd _\bf_\bo_\br  _\bt_\bh_\be  _\bF_\bo_\br_\bm_\ba_\bt  _\bo_\bf  _\bA_\bR_\bP_\bA  _\bI_\bn_\bt_\be_\br_\bn_\be_\bt  _\bT_\be_\bx_\bt  _\bM_\be_\bs_\bs_\ba_\bg_\be_\bs  (aka
10809                  RFC-822)
10810
10811
10812             _\bD_\be_\bf_\ba_\bu_\bl_\bt_\bs
10813                  `-format' default as described above
10814                  `-width' default to the width of the terminal
10815
10816
10817
10818
10819             [mh.6]                           MH.6.8                      UCI version
10820
10821
10822
10823
10824
10825
10826
10827
10828
10829             DP(8)                            -164-                             DP(8)
10830
10831
10832             _\bC_\bo_\bn_\bt_\be_\bx_\bt
10833                  None
10834
10835
10836             _\bB_\bu_\bg_\bs
10837                  The argument to the `-format' switch must be interpreted as a  sin-
10838                  gle token by the shell that invokes _\bd_\bp.  Therefore, one must usual-
10839                  ly place the argument to this switch inside double-quotes.
10840
10841
10842
10843
10844
10845
10846
10847
10848
10849
10850
10851
10852
10853
10854
10855
10856
10857
10858
10859
10860
10861
10862
10863
10864
10865
10866
10867
10868
10869
10870
10871
10872
10873
10874
10875
10876
10877
10878
10879
10880
10881
10882
10883
10884
10885             [mh.6]                           MH.6.8                      UCI version
10886
10887
10888
10889
10890
10891
10892
10893
10894
10895             FMTDUMP(8)                       -165-                        FMTDUMP(8)
10896
10897
10898             _\bN_\bA_\bM_\bE
10899                  fmtdump - decode MH format files
10900
10901             _\bS_\bY_\bN_\bO_\bP_\bS_\bI_\bS
10902                  /usr/bs/mh-6.8/lib/fmtdump [-form formatfile] [-format string]
10903                       [-help]
10904
10905             _\bD_\bE_\bS_\bC_\bR_\bI_\bP_\bT_\bI_\bO_\bN
10906
10907                  _\bF_\bm_\bt_\bd_\bu_\bm_\bp is a program that parses an _\bM_\bH format file and  produces  a
10908                  pseudo-language listing of the how _\bM_\bH interprets the file.
10909
10910                  The `-format string' and `-form formatfile' switches may be used to
10911                  specify a format string or format file to read.  The string is sim-
10912                  ply a format string and the file is simply a format file.  See  _\bm_\bh-
10913                  _\bf_\bo_\br_\bm_\ba_\bt(5) for the details.
10914
10915             _\bF_\bi_\bl_\be_\bs
10916                  $HOME/.mh_profile                    The user profile
10917                  /usr/bs/mh-6.8/lib/scan.default      The default format file
10918
10919
10920             _\bP_\br_\bo_\bf_\bi_\bl_\be _\bC_\bo_\bm_\bp_\bo_\bn_\be_\bn_\bt_\bs
10921                  Path:                To determine the user's MH directory
10922
10923
10924             _\bS_\be_\be _\bA_\bl_\bs_\bo
10925                  mh-format(5), mh-sequences(8)
10926
10927
10928             _\bC_\bo_\bn_\bt_\be_\bx_\bt
10929                  None
10930
10931
10932             _\bB_\bu_\bg_\bs
10933                  The output may not be useful  unless  you  are  familiar  with  the
10934                  internals of the mh-format subroutines.
10935
10936
10937
10938
10939
10940
10941
10942
10943
10944
10945
10946
10947
10948
10949
10950
10951             [mh.6]                           MH.6.8                      UCI version
10952
10953
10954
10955
10956
10957
10958
10959
10960
10961             INSTALL-MH(8)                    -166-                     INSTALL-MH(8)
10962
10963
10964             _\bN_\bA_\bM_\bE
10965                  install-mh - initialize the MH environment
10966
10967             _\bS_\bY_\bN_\bO_\bP_\bS_\bI_\bS
10968                  /usr/bs/mh-6.8/lib/install-mh [-auto] [-compat]
10969
10970             _\bD_\bE_\bS_\bC_\bR_\bI_\bP_\bT_\bI_\bO_\bN
10971
10972                  When a user runs any _\bM_\bH program for the  first  time,  the  program
10973                  will  invoke _\bi_\bn_\bs_\bt_\ba_\bl_\bl-_\bm_\bh (with the `-auto' switch) to query the user
10974                  for the initial _\bM_\bH environment.  The user does NOT invoke this pro-
10975                  gram  directly.   The  user  is asked for the name of the directory
10976                  that will be designated as the user's _\bM_\bH directory.  If this direc-
10977                  tory  does  not  exist,  the user is asked if it should be created.
10978                  Normally, this directory should be under the user's home directory,
10979                  and  has  the  default name of Mail/.  After _\bi_\bn_\bs_\bt_\ba_\bl_\bl-_\bm_\bh has written
10980                  the initial .mh_profile for the user, control returns to the origi-
10981                  nal _\bM_\bH program.
10982
10983                  As with all  _\bM_\bH  commands,  _\bi_\bn_\bs_\bt_\ba_\bl_\bl-_\bm_\bh  first  consults  the  $HOME
10984                  envariable to determine the user's home directory.  If $HOME is not
10985                  set, then the /_\be_\bt_\bc/_\bp_\ba_\bs_\bs_\bw_\bd file is consulted.
10986
10987                  When converting from _\bm_\bh._\b3  to  _\bm_\bh._\b4,  _\bi_\bn_\bs_\bt_\ba_\bl_\bl-_\bm_\bh  is  automatically
10988                  invoked with the `-compat' switch.
10989
10990             _\bF_\bi_\bl_\be_\bs
10991                  $HOME/.mh_profile                    The user profile
10992
10993
10994             _\bP_\br_\bo_\bf_\bi_\bl_\be _\bC_\bo_\bm_\bp_\bo_\bn_\be_\bn_\bt_\bs
10995                  Path:                To set the user's MH directory
10996
10997
10998             _\bC_\bo_\bn_\bt_\be_\bx_\bt
10999                  With `-auto', the current folder is changed to "inbox".
11000
11001
11002
11003
11004
11005
11006
11007
11008
11009
11010
11011
11012
11013
11014
11015
11016
11017             [mh.6]                           MH.6.8                      UCI version
11018
11019
11020
11021
11022
11023
11024
11025
11026
11027             POST(8)                          -167-                           POST(8)
11028
11029
11030             _\bN_\bA_\bM_\bE
11031                  post - deliver a message
11032
11033             _\bS_\bY_\bN_\bO_\bP_\bS_\bI_\bS
11034                  /usr/bs/mh-6.8/lib/post [-alias aliasfile] [-filter filterfile]
11035                       [-nofilter] [-format] [-noformat] [-mime] [-nomime] [-msgid]
11036                       [-nomsgid] [-verbose] [-noverbose] [-watch] [-nowatch]
11037                       [-width columns] file [-help]
11038
11039             _\bD_\bE_\bS_\bC_\bR_\bI_\bP_\bT_\bI_\bO_\bN
11040
11041                  _\bP_\bo_\bs_\bt is the program called by _\bs_\be_\bn_\bd (1) to deliver  the  message  in
11042                  _\bf_\bi_\bl_\be  to  local  and  remote  users.  In fact, all of the functions
11043                  attributed to _\bs_\be_\bn_\bd on its manual page are performed by  _\bp_\bo_\bs_\bt,  with
11044                  _\bs_\be_\bn_\bd  acting as a relatively simple preprocessor.  Thus, it is _\bp_\bo_\bs_\bt
11045                  which parses the various header fields,  appends  From:  and  Date:
11046                  lines, and interacts with the _\bM_\bM_\bD_\bF transport system.  _\bP_\bo_\bs_\bt will not
11047                  normally be called directly by the user.
11048
11049                  _\bP_\bo_\bs_\bt searches the "To:", "cc:", "Bcc:", "Fcc:",  and  "Resent-xxx:"
11050                  header  lines  of  the specified message for destination addresses,
11051                  checks these addresses for validity, and formats them so as to con-
11052                  form  to  ARPAnet  Internet  Message  Format  protocol,  unless the
11053                  `-noformat' flag is set.  This will normally cause "@_\bl_\bo_\bc_\ba_\bl-_\bs_\bi_\bt_\be" to
11054                  be appended to each local destination address, as well as any local
11055                  return addresses. The `-width columns' switch can be used to  indi-
11056                  cate  the  preferred  length  of the header components that contain
11057                  addresses.
11058
11059                  If a "Bcc:" field is encountered, its addresses will  be  used  for
11060                  delivery,  and  the  "Bcc:"  field will be removed from the message
11061                  sent to sighted recipients.  The blind recipients will  receive  an
11062                  entirely  new  message  with a minimal set of headers.  Included in
11063                  the body of the message will be a copy of the message sent  to  the
11064                  sighted  recipients.   If  `-filter filterfile'  is specified, then
11065                  this copy is filtered (re-formatted) prior to  being  sent  to  the
11066                  blind  recipients.  Otherwise, to use the MIME rules for encapsula-
11067                  tion, specify the `-mime' switch.
11068
11069                  The `-alias aliasfile' switch can be used to specify  a  file  that
11070                  post  should  take  aliases from.  More than one file can be speci-
11071                  fied, each being preceded with `-alias'.  In any event, the primary
11072                  alias file is read first.
11073
11074                  The   `-msgid'   switch   indicates   that   a   "Message-ID:"   or
11075                  "Resent-Message-ID:" field should be added to the header.
11076
11077                  The `-verbose' switch indicates that the user should be informed of
11078                  each step of the posting/filing process.
11079
11080                  The `-watch' switch indicates that the user would like to watch the
11081                  transport  system's handling of the message (e.g., local and "fast"
11082
11083             [mh.6]                           MH.6.8                      UCI version
11084
11085
11086
11087
11088
11089
11090
11091
11092
11093             POST(8)                          -168-                           POST(8)
11094
11095
11096                  delivery).
11097
11098                  _\bP_\bo_\bs_\bt consults the envariable $SIGNATURE to determine  the  sender's
11099                  personal name in constructing the "From:" line of the message.
11100
11101             _\bF_\bi_\bl_\be_\bs
11102                  /usr/bs/mh-6.8/lib/mtstailor         tailor file
11103                  /usr/bs/mh-6.8/bin/refile            Program to process Fcc:s
11104                  /usr/bs/mh-6.8/lib/mhl               Program to process Bcc:s
11105                  /usr/bs/mh-6.8/lib/MailAliases       Primary alias file
11106
11107
11108             _\bP_\br_\bo_\bf_\bi_\bl_\be _\bC_\bo_\bm_\bp_\bo_\bn_\be_\bn_\bt_\bs
11109                  _\bp_\bo_\bs_\bt does NOT consult the user's .mh_profile
11110
11111
11112             _\bS_\be_\be _\bA_\bl_\bs_\bo
11113                  _\bS_\bt_\ba_\bn_\bd_\ba_\br_\bd _\bf_\bo_\br  _\bt_\bh_\be  _\bF_\bo_\br_\bm_\ba_\bt  _\bo_\bf  _\bA_\bR_\bP_\bA  _\bI_\bn_\bt_\be_\br_\bn_\be_\bt  _\bT_\be_\bx_\bt  _\bM_\be_\bs_\bs_\ba_\bg_\be_\bs  (aka
11114                  RFC-822),
11115                  mhmail(1), send(1), mh-mail(5), mh-alias(5)
11116
11117
11118             _\bD_\be_\bf_\ba_\bu_\bl_\bt_\bs
11119                  `-alias /usr/bs/mh-6.8/lib/MailAliases'
11120                  `-format'
11121                  `-nomime'
11122                  `-nomsgid'
11123                  `-noverbose'
11124                  `-nowatch'
11125                  `-width 72'
11126                  `-nofilter'
11127
11128
11129             _\bC_\bo_\bn_\bt_\be_\bx_\bt
11130                  None
11131
11132
11133             _\bB_\bu_\bg_\bs
11134                  "Reply-To:" fields are allowed to have groups in them according  to
11135                  the 822 specification, but _\bp_\bo_\bs_\bt won't let you use them.
11136
11137
11138
11139
11140
11141
11142
11143
11144
11145
11146
11147
11148
11149                  [mh.6]                           MH.6.8                      UCI version
11150
11151
11152
11153
11154
11155
11156
11157
11158
11159
11160
11161
11162                                           _\b5. _\bR_\bE_\bP_\bO_\bR_\bT_\bI_\bN_\bG _\bP_\bR_\bO_\bB_\bL_\bE_\bM_\bS
11163
11164
11165
11166
11167
11168                       If problems are encountered with an _\bM_\bH program, the problems should
11169                  be  reported  to the local maintainers of _\bM_\bH.  When doing this, the name
11170                  of the program should be reported, along with  the  version  information
11171                  for  the  program.   To  find out what version of an _\bM_\bH program is being
11172                  run, invoke the program with the `-help' switch.  In addition to listing
11173                  the  syntax of the command, the program will list information pertaining
11174                  to its version.  This information includes the version of _\bM_\bH,  the  host
11175                  it was generated on, and the date the program was loaded.  A second line
11176                  of information, found on versions of _\bM_\bH after #5.380 include  _\bM_\bH  confi-
11177                  guration options.  For example,
11178
11179                       version: MH 6.1 #1[UCI] (nrtc-gremlin) of Wed Nov  6  01:13:53  PST
11180                       1985
11181                       options: [BSD42] [MHE] [NETWORK] [SENDMTS] [MMDFII] [SMTP] [POP]
11182
11183                  The `6.1 #1[UCI]' indicates that the program is from the UCI  _\bm_\bh._\b6  ver-
11184                  sion  of  _\bM_\bH.   The  program was generated on the host `nrtc-gremlin' on
11185                  `Wed Nov  6 01:13:53 PST 1985'.  It's usually a good idea  to  send  the
11186                  output of the `-help' switch along with your report.
11187
11188                  If there is no local _\bM_\bH maintainer, try the  address  Bug-MH.   If  that
11189                  fails, use the Internet mailbox Bug-MH@ICS.UCI.EDU.
11190
11191
11192
11193
11194
11195
11196
11197
11198
11199
11200
11201
11202
11203
11204
11205
11206
11207
11208
11209
11210
11211
11212
11213
11214
11215                                                   -169-
11216
11217
11218
11219
11220
11221
11222
11223
11224
11225
11226
11227
11228                                            _\b6. _\bA_\bD_\bV_\bA_\bN_\bC_\bE_\bD _\bF_\bE_\bA_\bT_\bU_\bR_\bE_\bS
11229
11230
11231
11232
11233
11234                       This section describes some  features  of  _\bM_\bH  that  were  included
11235                  strictly for advanced _\bM_\bH users.  These capabilities permit _\bM_\bH to exhibit
11236                  more powerful behavior for the seasoned _\bM_\bH users.
11237
11238
11239                  _\bU_\bS_\bE_\bR-_\bD_\bE_\bF_\bI_\bN_\bE_\bD _\bS_\bE_\bQ_\bU_\bE_\bN_\bC_\bE_\bS
11240
11241                       User-defined sequences allow the _\bM_\bH user  a  tremendous  amount  of
11242                  power  in dealing with groups of messages in the same folder by allowing
11243                  the user to bind a group of messages to a meaningful symbolic name.  The
11244                  user  may choose any name for a message sequence, as long as it consists
11245                  of alphanumeric characters and does not conflict with  the  standard  _\bM_\bH
11246                  reserved message names (e.g., "first", etc).  After defining a sequence,
11247                  it can be used wherever an _\bM_\bH command expects a `msg'  or  `msgs'  argu-
11248                  ment.
11249
11250                       A restricted form of message ranges are allowed  with  user-defined
11251                  sequences.  The  form  "name:n",  specifies up to the first `n' messages
11252                  which are part of the user-defined sequence `name'.  A leading plus sign
11253                  is  allowed on `n', but is ignored.  The interpretation of n is overrid-
11254                  den if n is preceded by a minus sign; `-n' always means up to  the  last
11255                  `n' messages which are part of the sequence `name'.
11256
11257                       Although all _\bM_\bH commands expand user-defined sequences as appropri-
11258                  ate, there are two commands that allow the user to define and manipulate
11259                  them: _\bp_\bi_\bc_\bk and _\bm_\ba_\br_\bk.
11260
11261                  _\bP_\bi_\bc_\bk _\ba_\bn_\bd _\bU_\bs_\be_\br-_\bD_\be_\bf_\bi_\bn_\be_\bd _\bS_\be_\bq_\bu_\be_\bn_\bc_\be_\bs
11262
11263                       Most users of _\bM_\bH will use user-defined sequences only with the _\bp_\bi_\bc_\bk
11264                  command.  By giving the `-sequence name' switch to _\bp_\bi_\bc_\bk (which can occur
11265                  more than once on the command line), each sequence named is  defined  as
11266                  those  messages  which _\bp_\bi_\bc_\bk matched according the the selection criteria
11267                  it was given.  Hence,
11268
11269                       pick -from frated -seq fred
11270
11271                  finds all those messages in the current folder which were from "frated",
11272                  creates  a  sequence  called "fred", and then adds them to the sequence.
11273                  The user could then invoke
11274
11275                       scan fred
11276
11277                  to get a _\bs_\bc_\ba_\bn listing of those messages.  Note  that  by  default,  _\bp_\bi_\bc_\bk
11278                  creates  the named sequences before it adds the selected messages to the
11279                  sequence.  Hence, if the named sequence already existed, the sequence is
11280
11281                                                   -170-
11282
11283
11284
11285
11286
11287
11288
11289
11290
11291                                                   -171-
11292
11293
11294                  destroyed  prior  to  being  re-defined (nothing happens to the messages
11295                  that were a part of this sequence, they simply cease to  be  members  of
11296                  that  sequence).   By  using  the `-nozero' switch, this behavior can be
11297                  inhibited, as in
11298
11299                       pick -from frated -seq sgroup
11300                       pick -from fear -seq sgroup -nozero
11301                       pick -from freida -seq sgroup -nozero
11302
11303                  finds all those messages in the current folder which were from "frated",
11304                  "fear", or "freida", and defines the sequence called "sgroup" as exactly
11305                  those messages.  These operations amounted to an "inclusive-or" of three
11306                  selection  criteria, using _\bp_\bi_\bc_\bk, one can also generate the "and" of some
11307                  selection criteria as well:
11308
11309                       pick -from frated -seq fred
11310                       pick -before friday -seq fred fred
11311
11312                  This example defines the sequence called "fred" as  exactly  those  mes-
11313                  sages from "frated" that were dated prior to "friday".[1]
11314
11315                       _\bP_\bi_\bc_\bk is normally used as a back-quoted command, for example,
11316
11317                       scan `pick -from postmaster`
11318
11319                  Now suppose that the user decides that another command should be issued,
11320                  using   exactly   those   messages.    Since,   _\bp_\bi_\bc_\bk   wasn't   given  a
11321                  `-sequence name' argument in this example, the user would end-up  typing
11322                  the entire back-quoted command again.  A simpler way is to add a default
11323                  sequence name to the .mh_profile.  For example,
11324
11325                       pick: -seq select -list
11326
11327                  will tell _\bp_\bi_\bc_\bk to always define the sequence "select" whenever it's run.
11328                  The  `-list'  is necessary since the `-sequence name' switch sets `-nol-
11329                  ist' whenever the former is  encountered.   Hence,  this  profile  entry
11330                  makes  _\bp_\bi_\bc_\bk define the "select" sequence and otherwise behave exactly as
11331
11332
11333                     [1]  Of  course, it is much easier to simply use the built-in boolean
11334                  operation of _\bp_\bi_\bc_\bk to get the desired results:
11335
11336                       pick -from frated -or -from fear -or -from freida -seq sgroup
11337
11338                  and
11339
11340                       pick -from frated -and -before friday -seq fred
11341
11342                  do exactly the same thing as the five commands listed above.  Hence, the
11343                  `-nozero'  option  to  _\bp_\bi_\bc_\bk  is  only  useful to manipulate existing se-
11344                  quences.
11345
11346
11347
11348
11349
11350
11351
11352
11353
11354
11355
11356
11357                                                   -172-
11358
11359
11360                  if there was no profile entry at all.
11361
11362                  _\bM_\ba_\br_\bk _\ba_\bn_\bd _\bU_\bs_\be_\br-_\bD_\be_\bf_\bi_\bn_\be_\bd _\bS_\be_\bq_\bu_\be_\bn_\bc_\be_\bs
11363
11364                       The _\bm_\ba_\br_\bk command lets the user perform  low-level  manipulation  of
11365                  sequences,  and  also  provides  a  well-needed  debug  facility  to the
11366                  implementors/developers/maintainers  of  _\bM_\bH  (the  _\bM_\bH-hacks).   In   the
11367                  future,  a user-friendly "front-end" for _\bm_\ba_\br_\bk will probably be developed
11368                  to give the _\bM_\bH user a way to take better  advantage  of  the  underlying
11369                  facilities.
11370
11371                  _\bP_\bu_\bb_\bl_\bi_\bc _\ba_\bn_\bd _\bP_\br_\bi_\bv_\ba_\bt_\be _\bU_\bs_\be_\br-_\bD_\be_\bf_\bi_\bn_\be_\bd _\bS_\be_\bq_\bu_\be_\bn_\bc_\be_\bs
11372
11373                       There are two kinds of sequences:  _\bp_\bu_\bb_\bl_\bi_\bc  sequences,  and  _\bp_\br_\bi_\bv_\ba_\bt_\be
11374                  sequences.   _\bP_\bu_\bb_\bl_\bi_\bc  sequences of a folder are accessible to any _\bM_\bH user
11375                  that can read that folder and are kept in the .mh_sequences file in  the
11376                  folder.   _\bP_\br_\bi_\bv_\ba_\bt_\be  sequences  are  accessible  only  to the _\bM_\bH user that
11377                  defined those sequences and are kept in the user's _\bM_\bH context file.   By
11378                  default,  _\bp_\bi_\bc_\bk  (and  _\bm_\ba_\br_\bk )  create  _\bp_\bu_\bb_\bl_\bi_\bc sequences if the folder for
11379                  which the sequences are being defined is writable by the _\bM_\bH user.   Oth-
11380                  erwise,  _\bp_\br_\bi_\bv_\ba_\bt_\be sequences are created.  This can be overridden with the
11381                  `-public' and `-nopublic' switches.
11382
11383                  _\bS_\be_\bq_\bu_\be_\bn_\bc_\be _\bN_\be_\bg_\ba_\bt_\bi_\bo_\bn
11384
11385                       In addition to telling an _\bM_\bH command to use  the  messages  in  the
11386                  sequence "seen", as in
11387
11388                       refile seen +old
11389
11390                  it would be useful to be easily able to tell an _\bM_\bH command  to  use  all
11391                  messages  _\be_\bx_\bc_\be_\bp_\bt  those in the sequence.  One way of doing this would be
11392                  to use _\bm_\ba_\br_\bk and define the sequence explicitly, as in
11393
11394                       mark -delete -zero seen -seq notseen
11395
11396                  which, owing to _\bm_\ba_\br_\bk 's cryptic interpretation of `-delete' and `-zero',
11397                  defines  the  sequence  "notseen" to be all messages not in the sequence
11398                  "seen".  Naturally, anytime the sequence "seen"  is  changed,  "notseen"
11399                  will  have  to be updated.  Another way to achieve this is to define the
11400                  entry "Sequence-Negation:" in the .mh_profile.  If the entry was
11401
11402                       Sequence-Negation: not
11403
11404                  then anytime an _\bM_\bH command was given "notseen"  as  a  `msg'  or  `msgs'
11405                  argument,  it would substitute all messages that are not a member of the
11406                  sequence "seen".  That is,
11407
11408                       refile notseen +new
11409
11410                  does just that.  The value of the "Sequence-Negation:" entry in the pro-
11411                  file  can  be  any  string.  Hence, experienced users of _\bM_\bH do not use a
11412
11413
11414
11415
11416
11417
11418
11419
11420
11421
11422
11423                                                   -173-
11424
11425
11426                  word, but rather a special character which their shell does  not  inter-
11427                  pret  (users  of  the  _\bC_\bS_\bh_\be_\bl_\bl  use a single caret or circumflex (usually
11428                  shift-6), while users of the  Bourne  shell  use  an  exclamation-mark).
11429                  This is because there is nothing to prevent a user of _\bM_\bH from defining a
11430                  sequence with this string as its prefix, if the  string  is  nothing  by
11431                  letters and digits.  Obviously, this could lead to confusing behavior if
11432                  the "Sequence-Negation:" entry leads _\bM_\bH to believe  that  two  sequences
11433                  are opposites by virtue of their names differing by the prefix string.
11434
11435                  _\bT_\bh_\be _\bP_\br_\be_\bv_\bi_\bo_\bu_\bs _\bS_\be_\bq_\bu_\be_\bn_\bc_\be
11436
11437                       Many times users find themselves issuing a series  of  commands  on
11438                  the  same  sequences  of messages.  If the user first defined these mes-
11439                  sages as a sequence, then considerable typing may be saved.  If the user
11440                  doesn't  have  this  foresight,  _\bM_\bH  provides  a  handy way of having _\bM_\bH
11441                  remember the `msgs' or `msg' argument last given to an _\bM_\bH  command.   If
11442                  the  entry "Previous-Sequence:" is defined in the .mh_profile, then when
11443                  the command finishes, it will define the sequence(s) named in the  value
11444                  of  this  entry  as  being  exactly  those messages that were specified.
11445                  Hence, a profile entry of
11446
11447                       Previous-Sequence: pseq
11448
11449                  directs any _\bM_\bH command that accepts a `msg' or `msgs' argument to define
11450                  the  sequence  "pseq" as those messages when it finishes.  More than one
11451                  sequence name may be placed in this entry, separated with  spaces.   The
11452                  one  disadvantage of this approach is that the _\bM_\bH progams have to update
11453                  the sequence information for the folder each  time  they  run  (although
11454                  most  programs read this information, usually only _\bp_\bi_\bc_\bk and _\bm_\ba_\br_\bk have to
11455                  write this information out).
11456
11457                  _\bT_\bh_\be _\bU_\bn_\bs_\be_\be_\bn _\bS_\be_\bq_\bu_\be_\bn_\bc_\be
11458
11459                       Finally, some users like to distinguish between messages which have
11460                  been  previously seen by them.  Both _\bi_\bn_\bc and _\bs_\bh_\bo_\bw honorthe profile entry
11461                  "Unseen-Sequence" to support this activity.   Whenever  _\bi_\bn_\bc  places  new
11462                  messages  in  a folder, if the entry "Unseen-Sequence" is defined in the
11463                  .mh_profile, then when the command finishes, _\bi_\bn_\bc will add the  new  mes-
11464                  sages  to  the  sequence(s)  named in the value of this entry.  Hence, a
11465                  profile entry of
11466
11467                       Unseen-Sequence:  unseen
11468
11469                  directs _\bi_\bn_\bc to add new messages to the sequence  "unseen".   Unlike  the
11470                  behavior  of  the  "Previous-Sequence" entry in the profile however, the
11471                  sequence(s) will not be zero'd.
11472
11473                       Similarly, whenever _\bs_\bh_\bo_\bw (or _\bn_\be_\bx_\bt or  _\bp_\br_\be_\bv )  displays  a  message,
11474                  they   remove   those   messages   from   any  sequences  named  by  the
11475                  "Unseen-Sequence" entry in the profile.
11476
11477
11478
11479
11480
11481
11482
11483
11484
11485
11486
11487
11488
11489                                                   -174-
11490
11491
11492                  _\bC_\bO_\bM_\bP_\bO_\bS_\bI_\bT_\bI_\bO_\bN _\bO_\bF _\bM_\bA_\bI_\bL
11493
11494                       There are a number of interesting advanced facilities for the  com-
11495                  position of outgoing mail.
11496
11497
11498                  _\bT_\bh_\be _\bD_\br_\ba_\bf_\bt _\bF_\bo_\bl_\bd_\be_\br
11499
11500                       The  _\bc_\bo_\bm_\bp,  _\bd_\bi_\bs_\bt,  _\bf_\bo_\br_\bw,  and  _\br_\be_\bp_\bl  commands  have  two  switches,
11501                  `-draftfolder +folder'        and        `-draftmessage msg'.         If
11502                  `-draftfolder +folder' is used, these commands are directed to construct
11503                  a  draft  message in the indicated folder.  (The "Draft-Folder:" profile
11504                  entry may be used to declare a default draft folder for use  with  _\bc_\bo_\bm_\bp,
11505                  _\bd_\bi_\bs_\bt, _\bf_\bo_\br_\bw, and _\br_\be_\bp_\bl) If `-draftmessage msg' is not used, it defaults to
11506                  `new' (unless the user invokes _\bc_\bo_\bm_\bp  with  `-use',  in  which  case  the
11507                  default  is  `cur').   Hence, the user may have several message composi-
11508                  tions in progress simultaneously.  Now, all of the _\bM_\bH tools  are  avail-
11509                  able  on  each of the user's message drafts (e.g., _\bs_\bh_\bo_\bw, _\bs_\bc_\ba_\bn, _\bp_\bi_\bc_\bk, and
11510                  so on).  If the folder does not exist, the user is asked if it should be
11511                  created (just like with _\br_\be_\bf_\bi_\bl_\be ).  Also, the last draft message the user
11512                  was composing is known as `cur' in the draft folder.
11513
11514                       Furthermore, the _\bs_\be_\bn_\bd command has these switches as  well.   Hence,
11515                  from  the shell, the user can send off whatever drafts desired using the
11516                  standard _\bM_\bH `msgs' convention with `-draftmessage msgs'.  If  no  `msgs'
11517                  are given, it defaults to `cur'.
11518
11519                       In addition, all five  programs  have  a  `-nodraftfolder'  switch,
11520                  which undoes the last occurrence of `-draftfolder folder' (useful if the
11521                  latter occurs in the user's _\bM_\bH profile).
11522
11523                       If the user does not give the `-draftfolder +folder'  switch,  then
11524                  all  these  commands act ``normally''.  Note that the `-draft' switch to
11525                  _\bs_\be_\bn_\bd and _\bs_\bh_\bo_\bw still refers to the file called `draft' in the  user's  _\bM_\bH
11526                  directory.   In  the interests of economy of expression, when using _\bc_\bo_\bm_\bp
11527                  or _\bs_\be_\bn_\bd, the user needn't prefix the draft `msg' or `msgs' with `-draft-
11528                  message'.   Both  of these commands accept a `file' or `files' argument,
11529                  and they will, if given `-draftfolder +folder' treat these arguments  as
11530                  `msg' or `msgs'.[2] Hence,
11531
11532                       send -draftf +drafts first
11533
11534                  is the same as
11535
11536                       send -draftf +drafts -draftm first
11537
11538
11539
11540
11541                     [2]  This may appear to be inconsistent, at first, but it saves a lot
11542                  of typing.
11543
11544
11545
11546
11547
11548
11549
11550
11551
11552
11553
11554
11555                                                   -175-
11556
11557
11558                       To make all this a bit more clear, here are some  examples.   Let's
11559                  assume that the following entries are in the _\bM_\bH profile:
11560
11561                       Draft-Folder: +drafts
11562                       sendf: -draftfolder +drafts
11563
11564                  Furthermore, let's assume that the program _\bs_\be_\bn_\bd_\bf is a (symbolic) link in
11565                  the user's $HOME/bin/ directory to _\bs_\be_\bn_\bd.  Then, any of the commands
11566
11567                       comp
11568                       dist
11569                       forw
11570                       repl
11571
11572                  constructs the message draft in the `draft' folder using the `new'  mes-
11573                  sage  number.   Furthermore, they each define `cur' in this folder to be
11574                  that message draft.  If the user were to use the _\bq_\bu_\bi_\bt  option  at  `What
11575                  now?'  level, then later on, if no other draft composition was done, the
11576                  draft could be sent with simply
11577
11578                       sendf
11579
11580                  Or, if more editing was required, the draft could be edited with
11581
11582                       comp -use
11583
11584                  Instead, if other drafts had been composed in the meantime, so that this
11585                  message  draft  was no longer known as `cur' in the `draft' folder, then
11586                  the user could _\bs_\bc_\ba_\bn the folder to see which message draft in the  folder
11587                  should be used for editing or sending.  Clever users could even employ a
11588                  back-quoted _\bp_\bi_\bc_\bk to do the work:
11589
11590                       comp -use `pick +drafts -to bug-mh`
11591
11592                  or
11593
11594                       sendf `pick +drafts -to bug-mh`
11595
11596                  Note that in the _\bc_\bo_\bm_\bp example, the output from _\bp_\bi_\bc_\bk must  resolve  to  a
11597                  single  message  draft (it makes no sense to talk about composing two or
11598                  more drafts with one invocation of _\bc_\bo_\bm_\bp ).  In  contrast,  in  the  _\bs_\be_\bn_\bd
11599                  example,  as  many  message  drafts  as  desired  can appear, since _\bs_\be_\bn_\bd
11600                  doesn't mind sending more than one draft at a time.
11601
11602                       Note that the argument `-draftfolder +folder' is  not  included  in
11603                  the  profile  entry  for  _\bs_\be_\bn_\bd,  since  when  _\bc_\bo_\bm_\bp, et. al., invoke _\bs_\be_\bn_\bd
11604                  directly, they supply _\bs_\be_\bn_\bd with the UNIX pathname of the message  draft,
11605                  and  not  a `draftmessage msg' argument.  As far as _\bs_\be_\bn_\bd is concerned, a
11606                  _\bd_\br_\ba_\bf_\bt _\bf_\bo_\bl_\bd_\be_\br is not being used.
11607
11608                       It is important to realize that _\bM_\bH treats the draft folder  like  a
11609                  standard  _\bM_\bH  folder  in nearly all respects.  There are two exceptions:
11610
11611
11612
11613
11614
11615
11616
11617
11618
11619
11620
11621                                                   -176-
11622
11623
11624                  first\b\b\b\b\b_____, under no circumstancs will the `-draftfolder folder' switch cause
11625                  the named folder to become the current folder.[3] Second\b\b\b\b\b\b______, although  con-
11626                  ceptually _\bs_\be_\bn_\bd deletes the `msgs' named in the draft folder, it does not
11627                  call `delete-prog' to perform the deletion.
11628
11629
11630                  _\bW_\bh_\ba_\bt _\bH_\ba_\bp_\bp_\be_\bn_\bs _\bi_\bf _\bt_\bh_\be _\bD_\br_\ba_\bf_\bt _\bE_\bx_\bi_\bs_\bt_\bs
11631
11632                       When the _\bc_\bo_\bm_\bp, _\bd_\bi_\bs_\bt, _\bf_\bo_\br_\bw, and _\br_\be_\bp_\bl commands are  invoked  and  the
11633                  draft  you indicated already exists, these programs will prompt the user
11634                  for a reponse directing the program's action.  The prompt is
11635
11636                       Draft ``/usr/src/uci/mh/mhbox/draft'' exists (xx bytes).
11637                       Disposition?
11638
11639                  The appropriate responses and their meanings are: replace\b\b\b\b\b\b\b_______:  deletes  the
11640                  draft  and starts afresh; list\b\b\b\b____: lists the draft; refile\b\b\b\b\b\b______: files the draft
11641                  into a folder and starts afresh; and, quit\b\b\b\b____: leaves the draft intact  and
11642                  exits.   In addition, if you specified `-draftfolder folder' to the com-
11643                  mand, then one other response will be accepted: new\b\b\b___: finds a new  draft,
11644                  just  as  if `-draftmessage new' had been given.  Finally, the _\bc_\bo_\bm_\bp com-
11645                  mand will accept one more response: use\b\b\b___: re-uses the draft, just  as  if
11646                  `-use' had been given.
11647
11648
11649                  _\bT_\bh_\be _\bP_\bu_\bs_\bh _\bO_\bp_\bt_\bi_\bo_\bn _\ba_\bt _\bW_\bh_\ba_\bt _\bn_\bo_\bw? _\bL_\be_\bv_\be_\bl
11650
11651                       The _\bp_\bu_\bs_\bh option to the "What now?" query in the _\bc_\bo_\bm_\bp,  _\bd_\bi_\bs_\bt,  _\bf_\bo_\br_\bw,
11652                  and  _\br_\be_\bp_\bl  commands,  directs the command to _\bs_\be_\bn_\bd the draft in a special
11653                  detached fashion, with all normal output discarded.  If _\bp_\bu_\bs_\bh is used and
11654                  the  draft  can not be sent, then _\bM_\bH will send the user a message, indi-
11655                  cating the name of the draft file, and an explanation of the failure.
11656
11657                       The user can also invoke _\bs_\be_\bn_\bd  from  the  shell  with  the  `-push'
11658                  switch, which makes _\bs_\be_\bn_\bd act like it had been _\bp_\bu_\bs_\bh 'd by one of the com-
11659                  position commands.
11660
11661                       By using _\bp_\bu_\bs_\bh, the user can free the  shell  to  do  other  things,
11662                  because  it appears to the shell that the _\bM_\bH command has finished.  As a
11663                  result the shell will immediately prompt for  another  command,  despite
11664                  the  fact  that  the  command is really still running.  Note that if the
11665                  user indicates that annotations are to be performed (with `-annotate' to
11666
11667
11668                     [3]  Obviously,  if  the folder appeared in the context of a standard
11669                  `+folder' argument to an _\bM_\bH program, as in
11670
11671                       scan +drafts
11672
11673                  it might become the current folder, depending on the context changes  of
11674                  the _\bM_\bH program in question.
11675
11676
11677
11678
11679
11680
11681
11682
11683
11684
11685
11686
11687                                                   -177-
11688
11689
11690                  _\bd_\bi_\bs_\bt, _\bf_\bo_\br_\bw, or _\br_\be_\bp_\bl), the annotations will be performed after  the  mes-
11691                  sage has been successfully sent.  This action will appear to occur asyn-
11692                  chronously.  Obviously, if one of the messages that is to  be  annotated
11693                  is  removed  before  the  draft has been successfully sent, then when _\bM_\bH
11694                  tries to make the annotations, it won't be able to do so.   In  previous
11695                  versions of _\bM_\bH, this resulted in an error message mysteriously appearing
11696                  on the user's terminal.  In _\bm_\bh._\b5 and later  versions,  in  this  special
11697                  circumstance, no error will be generated.
11698
11699                       If send is _\bp_\bu_\bs_\bh 'd, then the `-forward' switch  is  examined  if  a
11700                  failure notice is generated.  If given, then the draft is forwarded with
11701                  the failure notice sent to the user.  This allows  rapid  _\bb_\bu_\br_\bs_\bt 'ing  of
11702                  the failure notice to retrieve the unsent draft.
11703
11704
11705                  _\bO_\bp_\bt_\bi_\bo_\bn_\bs _\ba_\bt _\bW_\bh_\ba_\bt _\bn_\bo_\bw? _\bL_\be_\bv_\be_\bl
11706
11707                       By default, the message composition programs call a program  called
11708                  _\bw_\bh_\ba_\bt_\bn_\bo_\bw  before  the initial draft composition.  The _\bM_\bH user can specify
11709                  any program for this.  Following is some information about  the  default
11710                  "What  now?" level.  More detailed information can be found in the _\bw_\bh_\ba_\bt_\b-
11711                  _\bn_\bo_\bw (1) manual entry.
11712
11713                       When using the _\bc_\bo_\bm_\bp, _\bd_\bi_\bs_\bt, _\bf_\bo_\br_\bw, and _\br_\be_\bp_\bl commands at  "What  now?"
11714                  level,  the _\be_\bd_\bi_\bt, _\bl_\bi_\bs_\bt, _\bh_\be_\ba_\bd_\be_\br_\bs, _\br_\be_\bf_\bi_\bl_\be, and (for the _\bd_\bi_\bs_\bt and _\br_\be_\bp_\bl com-
11715                  mands) the _\bd_\bi_\bs_\bp_\bl_\ba_\by options will pass on any additional  arguments  given
11716                  them to whatever program they invoke.
11717
11718                       In _\bm_\bh._\b1 (the original RAND _\bM_\bH ) and _\bm_\bh._\b2 (the first UCI version  of
11719                  _\bM_\bH ),  _\bM_\bH  used a complicated heuristic to determine if the draft should
11720                  be deleted or preserved after an unsuccessful edit.   In  _\bm_\bh._\b3,  _\bM_\bH  was
11721                  changed to preserve the draft always, since _\bc_\bo_\bm_\bp, et. al., could usually
11722                  look at a draft, apply another set of heuristics, and decide if  it  was
11723                  important  or  not.   With the notion of a _\bd_\br_\ba_\bf_\bt _\bf_\bo_\bl_\bd_\be_\br, in which one by
11724                  default gets a `new' message draft, the edit deletion/preservation algo-
11725                  rithm  was re-implemented, to keep the draft folder from being cluttered
11726                  with aborted edits.
11727
11728                       Also, note that by default, if the  draft  cannot  be  successfully
11729                  sent,  these  commands  return  to "What now?" level.  But, when _\bp_\bu_\bs_\bh is
11730                  used, this does not happen (obviously).  Hence, if these  commands  were
11731                  expected  to  annotate  any messages, this will have to be done by hand,
11732                  later on, with the _\ba_\bn_\bn_\bo command.
11733
11734                       Finally, if the `-delete' switch is not given to the  _\bq_\bu_\bi_\bt  option,
11735                  then these commands will inform the user of the name of the unsent draft
11736                  file.
11737
11738
11739                  _\bD_\bi_\bg_\be_\bs_\bt_\bs
11740
11741
11742
11743
11744
11745
11746
11747
11748
11749
11750
11751
11752
11753                                                   -178-
11754
11755
11756                       The _\bf_\bo_\br_\bw command has the beginnings  of  a  digestifying  facility,
11757                  with the `-digest list', `-issue number', and `-volume number' switches.
11758
11759                  If _\bf_\bo_\br_\bw is given "list" to the `-digest' switch as the name of the  dis-
11760                  cussion  group,  and  the `-issue number' switch is not given, then _\bf_\bo_\br_\bw
11761                  looks for an entry in the user's _\bM_\bH context  called  "_\bd_\bi_\bg_\be_\bs_\bt-issue-list"
11762                  and  increments its value to use as the issue number.  Similarly, if the
11763                  `-volume number'  switch   is   not   given,   then   _\bf_\bo_\br_\bw   looks   for
11764                  "_\bd_\bi_\bg_\be_\bs_\bt-volume-list"  (but  does  not increment its value) to use as the
11765                  volume number.
11766
11767                  Having calculated the name of  the  digest  and  the  volume  and  issue
11768                  numbers, _\bf_\bo_\br_\bw will now process the components file using the same format
11769                  string mechanism used by _\br_\be_\bp_\bl.  The current `%'-escapes are:
11770
11771                  _\be_\bs_\bc_\ba_\bp_\be  _\bt_\by_\bp_\be     _\bs_\bu_\bb_\bs_\bt_\bi_\bt_\bu_\bt_\bi_\bo_\bn
11772                  digest  string   digest name
11773                  msg     integer  issue number
11774                  cur     integer  volume number
11775
11776                  In addition, to capture the current date, any of the escapes  valid  for
11777                  _\bd_\bp (8) are also valid for _\bf_\bo_\br_\bw.
11778
11779                  The default components file used by _\bf_\bo_\br_\bw when in digest mode is:
11780
11781                       From:     %{digest}-Request
11782                       To:       %{digest} Distribution: dist-%{digest};
11783                       Subject:  %{digest} Digest V%(cur) #%(msg)
11784                       Reply-To: %{digest}
11785                       --------
11786                       %{digest} Digest        %(weekday{date}), %2(mday{date}) %(month{date}) 19%02(year{date})
11787                                       Volume %(cur) : Issue %(msg)
11788
11789                       Today's Topics:
11790
11791                  Hence, when the `-digest' switch is present, the  first  step  taken  by
11792                  _\bf_\bo_\br_\bw  is  to  expand the format strings in the component file.  The next
11793                  step is to compose the draft using  the  standard  digest  encapsulation
11794                  algorithm  (even  putting an "End of list Digest" trailer in the draft).
11795                  Once the draft is composed by _\bf_\bo_\br_\bw, _\bf_\bo_\br_\bw writes out the volume and issue
11796                  profile entries for the digest, and then invokes the editor.
11797
11798                  Naturally,   when   composing   the   draft,   _\bf_\bo_\br_\bw   will   honor   the
11799                  `-filter filterfile'  switch,  which is given to _\bm_\bh_\bl to filter each mes-
11800                  sage being forwarded prior to encapsulation in the draft.  A good filter
11801                  file to use, which is called _\bm_\bh_\bl._\bd_\bi_\bg_\be_\bs_\bt, is:
11802
11803
11804
11805
11806
11807
11808
11809
11810
11811
11812
11813
11814
11815
11816
11817
11818
11819                                                   -179-
11820
11821
11822                       width=80,overflowoffset=10
11823                       leftadjust,compress,compwidth=9
11824                       Date:formatfield="%<(nodate{text})%{text}%|%(tws{text})%>"
11825                       From:
11826                       Subject:
11827                       :
11828                       body:nocomponent,overflowoffset=0,noleftadjust,nocompress
11829
11830
11831
11832                  _\bF_\bO_\bL_\bD_\bE_\bR _\bH_\bA_\bN_\bD_\bL_\bI_\bN_\bG
11833
11834                       There are two  interesting  facilities  for  manipulating  folders:
11835                  relative folder addressing, which allows a user to shorten the typing of
11836                  long folder names; and the folder-stack, which permits a user to keep  a
11837                  stack of current folders.
11838
11839
11840                  _\bR_\be_\bl_\ba_\bt_\bi_\bv_\be _\bF_\bo_\bl_\bd_\be_\br _\bA_\bd_\bd_\br_\be_\bs_\bs_\bi_\bn_\bg
11841
11842                       By default, when `+folder' is given, and the  folder  name  is  not
11843                  absolute  (does not start with /, ./, or ../), then the UNIX pathname of
11844                  the folder is interpreted relative to the user's _\bM_\bH directory.  Although
11845                  this  mechanism  works  fine  for  top-level folders and their immediate
11846                  sub-folders, once the depth of the sub-folder  tree  grows,  it  becomes
11847                  rather unwieldly:
11848
11849                       scan +mh/mh.4/draft/flames
11850
11851                  is a lot of typing.  _\bM_\bH can't do anything  if  the  current  folder  was
11852                  "+inbox", but if the current folder was, say, "+mh/mh.4/draft", _\bM_\bH has a
11853                  short-hand notation to reference a sub-folder  of  the  current  folder.
11854                  Using  the  `@folder'  notation,  the  _\bM_\bH user can direct any _\bM_\bH program
11855                  which expects a `+folder' argument to look for the  folder  relative  to
11856                  the  current  folder  instead of the user's _\bM_\bH directory.  Hence, if the
11857                  current folder _\bw_\ba_\bs "+mh/mh.4/draft", then
11858
11859                       scan @flames
11860
11861                  would do the trick handily.  In addition,  if  the  current  folder  _\bw_\ba_\bs
11862                  "+mh/mh.4/draft",
11863
11864                       scan @../pick
11865
11866                  would scan the folder "+mh/mh.4/pick", since, in the  UNIX  fashion,  it
11867                  references the folder "pick" which is a sub-folder of the folder that is
11868                  the parent of the current folder.  Since most advanced _\bM_\bH users seem  to
11869                  exhibit a large degree of locality in referencing folders when they pro-
11870                  cess mail, this convention should receive a wide range of uses.
11871
11872
11873
11874
11875
11876
11877
11878
11879
11880
11881
11882
11883
11884
11885                                                   -180-
11886
11887
11888                  _\bT_\bh_\be _\bF_\bo_\bl_\bd_\be_\br-_\bS_\bt_\ba_\bc_\bk
11889
11890                       The _\bf_\bo_\bl_\bd_\be_\br-_\bs_\bt_\ba_\bc_\bk mechanism in _\bM_\bH gives the _\bM_\bH user a facility simi-
11891                  lar to the _\bC_\bS_\bh_\be_\bl_\bl 's directory-stack.  Simply put,
11892
11893                       folder -push +foo
11894
11895                  makes "foo" the current folder, saving the folder  that  was  previously
11896                  the current folder on the _\bf_\bo_\bl_\bd_\be_\br-_\bs_\bt_\ba_\bc_\bk.  As expected,
11897
11898                       folder -pop
11899
11900                  takes the top of the _\bf_\bo_\bl_\bd_\be_\br-_\bs_\bt_\ba_\bc_\bk and makes it the current folder.  Each
11901                  of  these switches lists the _\bf_\bo_\bl_\bd_\be_\br-_\bs_\bt_\ba_\bc_\bk when they execute.  It is sim-
11902                  ple to write a _\bp_\bu_\bs_\bh_\bf command as a shell script.  It's one line:
11903
11904                       exec folder -push $@
11905
11906                  Probably a better way is to link  _\bf_\bo_\bl_\bd_\be_\br  to  the  $HOME/bin/  directory
11907                  under the name of _\bp_\bu_\bs_\bh_\bf and then add the entry
11908
11909                       pushf: -push
11910
11911                  to the .mh_profile.
11912
11913                       The manual page for _\bf_\bo_\bl_\bd_\be_\br discusses the analogy between the _\bC_\bS_\bh_\be_\bl_\bl
11914                  directory stack commands and the switches in _\bf_\bo_\bl_\bd_\be_\br which manipulate the
11915                  _\bf_\bo_\bl_\bd_\be_\br-_\bs_\bt_\ba_\bc_\bk.  The _\bf_\bo_\bl_\bd_\be_\br command uses the context entry `Folder-Stack:'
11916                  to keep track of the folders in the user's stack of folders.
11917
11918
11919
11920
11921
11922
11923
11924
11925
11926
11927
11928
11929
11930
11931
11932
11933
11934
11935
11936
11937
11938
11939
11940
11941
11942
11943
11944
11945
11946
11947
11948
11949
11950
11951
11952
11953
11954                                                 Appendix A
11955                                              _\bC_\bO_\bM_\bM_\bA_\bN_\bD _\bS_\bU_\bM_\bM_\bA_\bR_\bY
11956
11957
11958
11959
11960                  ali [-alias aliasfile] [-list] [-nolist] [-normalize]
11961                       [-nonormalize] [-user] [-nouser] aliases ...  [-help]
11962
11963                  anno [+folder] [msgs] [-component field] [-inplace] [-noinplace]
11964                       [-date] [-nodate] [-text body] [-help]
11965
11966                  bbc [bboards ...] [-topics] [-check] [-read] [-quiet] [-verbose]
11967                       [-archive] [-noarchive] [-protocol] [-noprotocol]
11968                       [-mshproc program] [switches for _\bm_\bs_\bh_\bp_\br_\bo_\bc] [-rcfile rcfile]
11969                       [-norcfile] [-file BBoardsfile] [-user BBoardsuser]
11970                       [-host host] [-help]
11971
11972                  burst [+folder] [msgs] [-inplace] [-noinplace] [-quiet] [-noquiet]
11973                       [-verbose] [-noverbose] [-help]
11974
11975                  comp [+folder] [msg] [-draftfolder +folder] [-draftmessage msg]
11976                       [-nodraftfolder] [-editor editor] [-noedit] [-file file]
11977                       [-form formfile] [-use] [-nouse] [-whatnowproc program]
11978                       [-nowhatnowproc] [-help]
11979
11980                  dist [+folder] [msg] [-annotate] [-noannotate]
11981                       [-draftfolder +folder] [-draftmessage msg] [-nodraftfolder]
11982                       [-editor editor] [-noedit] [-form formfile] [-inplace]
11983                       [-noinplace] [-whatnowproc program] [-nowhatnowproc] [-help]
11984
11985                  /usr/bs/mh-6.8/lib/fmtdump [-form formatfile] [-format string]
11986                       [-help]
11987
11988                  folder [+folder] [msg] [-all] [-fast] [-nofast] [-header]
11989                       [-noheader] [-pack] [-nopack] [-recurse] [-norecurse] [-total]
11990                       [-nototal] [-print] [-noprint] [-list] [-nolist] [-push]
11991                       [-pop] [-help]
11992
11993                  folders
11994
11995                  forw [+folder] [msgs] [-annotate] [-noannotate]
11996                       [-draftfolder +folder] [-draftmessage msg] [-nodraftfolder]
11997                       [-editor editor] [-noedit] [-filter filterfile]
11998                       [-form formfile] [-format] [-noformat] [-inplace] [-noinplace]
11999                       [-mime] [-nomime] [-whatnowproc program] [-nowhatnowproc]
12000                       [-help]
12001
12002
12003
12004
12005
12006
12007                                              -181-
12008
12009
12010
12011
12012
12013
12014
12015
12016
12017
12018
12019
12020                  forw [+folder] [msgs] [-digest list] [-issue number]
12021                       [-volume number] [other switches for _\bf_\bo_\br_\bw] [-help]
12022
12023                  inc [+folder] [-audit audit-file] [-noaudit] [-changecur]
12024                       [-nochangecur] [-file name] [-form formatfile]
12025                       [-format string] [-silent] [-nosilent] [-truncate]
12026                       [-notruncate] [-width columns] [-host host] [-user user]
12027                       [-apop] [-noapop] [-rpop] [-norpop] [-pack file] [-nopack]
12028                       [-help]
12029
12030                  mark [+folder] [msgs] [-sequence name ...] [-add] [-delete] [-list]
12031                       [-public] [-nopublic] [-zero] [-nozero] [-help]
12032
12033                  /usr/bs/mh-6.8/lib/mhl [-bell] [-nobell] [-clear] [-noclear]
12034                       [-folder +folder] [-form formfile] [-length lines]
12035                       [-width columns] [-moreproc program] [-nomoreproc] [files ...]
12036                       [-help]
12037
12038                  mhmail [ addrs ... [-body text] [-cc addrs ...] [-from addr]
12039                       [-subject subject]] [-help]
12040
12041                  mhn [+folder] [msgs] [-part number]... [-type content]...
12042                       [-list [-header] [-noheader]
12043                              [-realsize] [-norealsize]] [-nolist]
12044                       [-show [-serialonly] [-noserialonly]]
12045                              [-form formfile]] [-noshow]
12046                       [-store [-auto] [-noauto]] [-nostore]
12047                       [-verbose] [-noverbose] [-rfc934mode] [-norfc934mode]
12048                       [-ebcdic] [-noebcdicsafe]
12049                       [-help]
12050
12051                  mhparam [profile-components] [-components] [-nocomponents] [-all]
12052                       [-help]
12053
12054                  mhpath [+folder] [msgs] [-help]
12055
12056                  msgchk [-date] [-nodate] [-notify all/mail/nomail]
12057                       [-nonotify all/mail/nomail] [-host host] [-user user] [-apop]
12058                       [-noapop] [-rpop] [-norpop] [users ...] [-help]
12059
12060                  msh [-prompt string] [-scan] [-noscan] [-topcur] [-notopcur] [file]
12061                       [-help]
12062
12063                  next [+folder] [-header] [-noheader] [-showproc program]
12064                       [-noshowproc] [switches for _\bs_\bh_\bo_\bw_\bp_\br_\bo_\bc] [-help]
12065
12066                  packf [+folder] [msgs] [-file name] [-help]
12067
12068
12069
12070
12071
12072
12073                                              -182-
12074
12075
12076
12077
12078
12079
12080
12081
12082
12083
12084
12085
12086                  pick [+folder] [msgs] [-and ...] [-or ...] [-not ...]
12087                       [-lbrace ... -rbrace] [--component pattern] [-after date]
12088                       [-before date] [-datefield field] [-sequence name ...]
12089                       [-public] [-nopublic] [-zero] [-nozero] [-list] [-nolist]
12090                       [-help]
12091
12092
12093                  prev [+folder] [-header] [-noheader] [-showproc program]
12094                       [-noshowproc] [switches for _\bs_\bh_\bo_\bw_\bp_\br_\bo_\bc] [-help]
12095
12096                  prompter [-erase chr] [-kill chr] [-prepend] [-noprepend] [-rapid]
12097                       [-norapid] [-doteof] [-nodoteof] file [-help]
12098
12099                  /usr/bs/mh-6.8/lib/rcvstore [+folder] [-create] [-nocreate]
12100                       [-sequence name ...] [-public] [-nopublic] [-zero] [-nozero]
12101                       [-help]
12102
12103                  refile [msgs] [-draft] [-link] [-nolink] [-preserve] [-nopreserve]
12104                       [-src +folder] [-file file] +folder ...  [-help]
12105
12106                  repl [+folder] [msg] [-annotate] [-noannotate] [-cc all/to/cc/me]
12107                       [-nocc all/to/cc/me] [-draftfolder +folder]
12108                       [-draftmessage msg] [-nodraftfolder] [-editor editor]
12109                       [-noedit] [-fcc +folder] [-filter filterfile] [-form formfile]
12110                       [-inplace] [-noinplace] [-query] [-noquery]
12111                       [-whatnowproc program] [-nowhatnowproc] [-width columns]
12112                       [-help]
12113
12114                  rmf [+folder] [-interactive] [-nointeractive] [-help]
12115
12116                  rmm [+folder] [msgs] [-help]
12117
12118                  scan [+folder] [msgs] [-clear] [-noclear] [-form formatfile]
12119                       [-format string] [-header] [-noheader] [-width columns]
12120                       [-reverse] [-noreverse] [-file filename] [-help]
12121
12122                  send [-alias aliasfile] [-draft] [-draftfolder +folder]
12123                       [-draftmessage msg] [-nodraftfolder] [-filter filterfile]
12124                       [-nofilter] [-format] [-noformat] [-forward] [-noforward]
12125                       [-mime] [-nomime] [-msgid] [-nomsgid] [-push] [-nopush]
12126                       [-split seconds] [-verbose] [-noverbose] [-watch] [-nowatch]
12127                       [-width columns] [file ...] [-help]
12128
12129                  show [+folder] [msgs] [-draft] [-header] [-noheader]
12130                       [-showproc program] [-noshowproc] [switches for _\bs_\bh_\bo_\bw_\bp_\br_\bo_\bc]
12131                       [-help]
12132
12133                  sortm [+folder] [msgs] [-datefield field] [-textfield field]
12134                       [-notextfield] [-limit days] [-nolimit] [-verbose]
12135                       [-noverbose] [-help]
12136
12137
12138
12139                                              -183-
12140
12141
12142
12143
12144
12145
12146
12147
12148
12149
12150
12151
12152                  vmh [-prompt string] [-vmhproc program] [-novmhproc]
12153                       [switches for _\bv_\bm_\bh_\bp_\br_\bo_\bc] [-help]
12154
12155                  whatnow [-draftfolder +folder] [-draftmessage msg] [-nodraftfolder]
12156                       [-editor editor] [-noedit] [-prompt string] [file] [-help]
12157
12158                  whom [-alias aliasfile] [-check] [-nocheck] [-draft]
12159                       [-draftfolder +folder] [-draftmessage msg] [-nodraftfolder]
12160                       [file] [-help]
12161
12162                  /usr/bs/mh-6.8/lib/ap [-form formatfile] [-format string]
12163                       [-normalize] [-nonormalize] [-width columns] addrs ...
12164                       [-help]
12165
12166                  /usr/bs/mh-6.8/lib/conflict [-mail name] [-search directory]
12167                       [aliasfiles ...] [-help]
12168
12169                  /usr/bs/mh-6.8/lib/dp [-form formatfile] [-format string]
12170                       [-width columns] dates ...  [-help]
12171
12172                  /usr/bs/mh-6.8/lib/install-mh [-auto] [-compat]
12173
12174                  /usr/bs/mh-6.8/lib/post [-alias aliasfile] [-filter filterfile]
12175                       [-nofilter] [-format] [-noformat] [-mime] [-nomime] [-msgid]
12176                       [-nomsgid] [-verbose] [-noverbose] [-watch] [-nowatch]
12177                       [-width columns] file [-help]
12178
12179                  /usr/bs/mh-6.8/lib/slocal [address info sender] [-addr address]
12180                       [-info data] [-sender sender] [-user username] [-mailbox mbox]
12181                       [-file file] [-maildelivery deliveryfile] [-verbose]
12182                       [-noverbose] [-debug] [-help]
12183
12184
12185
12186
12187
12188
12189
12190
12191
12192
12193
12194
12195
12196
12197
12198
12199
12200
12201
12202
12203
12204
12205                                                   -184-
12206
12207
12208
12209
12210
12211
12212
12213
12214
12215
12216
12217
12218                                                 Appendix B
12219                                              _\bM_\bE_\bS_\bS_\bA_\bG_\bE _\bN_\bA_\bM_\bE _\bB_\bN_\bF
12220
12221
12222
12223
12224
12225                            msgs                  :=  msgspec                |
12226                                                      msgs msgspec
12227
12228                            msgspec               :=  msg                    |
12229                                                      msg-range              |
12230                                                      msg-sequence           |
12231                                                      user-defined-sequence
12232
12233                            msg                   :=  msg-name               |
12234                                                      <number>
12235
12236                            msg-name              :=  "first"                |
12237                                                      "last"                 |
12238                                                      "cur"                  |
12239                                                      "."                    |
12240                                                      "next"                 |
12241                                                      "prev"
12242
12243                            msg-range             :=  msg"-"msg              |
12244                                                      "all"
12245
12246                            msg-sequence          :=  msg":"signed-number
12247
12248                            signed-number         :=  "+"<number>            |
12249                                                      "-"<number>            |
12250                                                      <number>
12251
12252                            user-defined-sequence :=  <alpha>                |
12253                                                      <alpha><alphanumeric>*
12254
12255
12256                  Where <number> is a decimal number greater than zero.
12257
12258                  Msg-range specifies all of the messages in the given range and must  not
12259                  be empty.
12260
12261                  Msg-sequence specifies up to <number> of messages, beginning with  "msg"
12262                  (in the case of first, cur, next, or <number>), or ending with "msg" (in
12263                  the case of prev or last).  +<number> forces "starting  with  msg",  and
12264                  -<number> forces "ending with number".  In all cases, "msg" must exist.
12265
12266                  User-defined sequences are defined and manipulated  with  the  _\bp_\bi_\bc_\bk  and
12267                  _\bm_\ba_\br_\bk commands.
12268
12269
12270
12271                                                   -185-
12272
12273
12274
12275
12276
12277
12278
12279
12280
12281
12282
12283
12284                                                 _\bR_\bE_\bF_\bE_\bR_\bE_\bN_\bC_\bE_\bS
12285
12286
12287
12288                  1.  Crocker, D. H., J. J. Vittal, K. T. Pogran,  and  D.  A.  Henderson,
12289                      Jr.,  "Standard  for  the  Format  of  ARPA  Network Text Messages,"
12290                      _\bR_\bF_\bC_\b7_\b3_\b3, November 1977.
12291
12292                  2.  Thompson, K., and D. M. Ritchie,  "The  UNIX  Time-sharing  System,"
12293                      _\bC_\bo_\bm_\bm_\bu_\bn_\bi_\bc_\ba_\bt_\bi_\bo_\bn_\bs _\bo_\bf _\bt_\bh_\be _\bA_\bC_\bM, Vol. 17, July 1974, pp. 365-375.
12294
12295                  3.  McCauley, E. J., and P. J. Drongowski, "KSOS-The Design of a  Secure
12296                      Operating  System,"  _\bA_\bF_\bI_\bP_\bS _\bC_\bo_\bn_\bf_\be_\br_\be_\bn_\bc_\be _\bP_\br_\bo_\bc_\be_\be_\bd_\bi_\bn_\bg_\bs, National Computer
12297                      Conference, Vol. 48, 1979, pp. 345-353.
12298
12299                  4.  Crocker, David H., _\bF_\br_\ba_\bm_\be_\bw_\bo_\br_\bk _\ba_\bn_\bd _\bF_\bu_\bn_\bc_\bt_\bi_\bo_\bn_\bs _\bo_\bf _\bt_\bh_\be "_\bM_\bS" _\bP_\be_\br_\bs_\bo_\bn_\ba_\bl _\bM_\be_\bs_\b-
12300                      _\bs_\ba_\bg_\be _\bS_\by_\bs_\bt_\be_\bm, The RAND Corporation, R-2134-ARPA, December 1977.
12301
12302                  5.  Thompson, K., and D. M. Ritchie, _\bU_\bN_\bI_\bX _\bP_\br_\bo_\bg_\br_\ba_\bm_\bm_\be_\br'_\bs _\bM_\ba_\bn_\bu_\ba_\bl, 6th  ed.,
12303                      Western  Electric  Company,  May 1975 (available only to UNIX licen-
12304                      sees).
12305
12306                  6. Crocker, D. H., "Standard for the Format of ARPA Internet  Text  Mes-
12307                      sages," _\bR_\bF_\bC_\b8_\b2_\b2, August 1982.
12308
12309
12310
12311
12312
12313
12314
12315
12316
12317
12318
12319
12320
12321
12322
12323
12324
12325
12326
12327
12328
12329
12330
12331
12332
12333
12334
12335
12336
12337                                                   -186-
12338
12339
12340
12341
12342
12343
12344
12345
12346
12347
12348
12349
12350
12351
12352
12353
12354
12355
12356
12357
12358
12359
12360
12361
12362
12363
12364
12365
12366
12367
12368
12369
12370
12371
12372
12373
12374
12375
12376
12377
12378
12379
12380
12381
12382
12383
12384
12385
12386
12387
12388
12389
12390
12391
12392
12393
12394
12395
12396
12397
12398
12399
12400
12401
12402
12403                                                    -i-
12404
12405
12406
12407
12408
12409
12410
12411
12412
12413
12414
12415
12416                                                 _\bR_\bE_\bA_\bD _\bT_\bH_\bI_\bS
12417
12418
12419
12420
12421                       Although the _\bM_\bH system was originally developed by  the  RAND  Cor-
12422                  poration,  and is now in the public domain, the RAND Corporation assumes
12423                  no responsibility for _\bM_\bH or this particular version of _\bM_\bH.
12424
12425                       In addition, the Regents of the University of California issue  the
12426                  following disclaimer in regard to the UCI version of _\bM_\bH:
12427
12428                       "Although each program has been tested by its contributor, no  war-
12429                       ranty,  express  or  implied,  is  made  by  the contributor or the
12430                       University of California, as to the accuracy and functioning of the
12431                       program and related program material, nor shall the fact of distri-
12432                       bution constitute any  such  warranty,  and  no  responsibility  is
12433                       assumed  by the contributor or the University of California in con-
12434                       nection herewith."
12435
12436                       This version of _\bM_\bH is in the public domain, and as such, there  are
12437                  no  real  restrictions on its use.  The _\bM_\bH source code and documentation
12438                  have no licensing restrictions whatsoever.  As a courtesy,  the  authors
12439                  ask only that you provide appropriate credit to the RAND Corporation and
12440                  the University of California for having developed the software.
12441
12442                       _\bM_\bH is a software package that is supported neither by the RAND Cor-
12443                  poration nor the University of California.  However, since we do use the
12444                  software ourselves and plan to continue using (and  improving)  _\bM_\bH,  bug
12445                  reports and their associated fixes should be reported back to us so that
12446                  we may include them in future releases.  The  current  computer  mailbox
12447                  for   _\bM_\bH   is   Bug-MH@ICS.UCI.EDU   (in   the   ARPA   Internet),   and
12448                  ...!ucbvax!ucivax!bug-mh (UUCP).  Presently, there are two Internet dis-
12449                  cussion   groups,   MH-Users@ICS.UCI.EDU   and   MH-Workers@ICS.UCI.EDU.
12450                  MH-Workers is for people discussing code changes to _\bM_\bH.  MH-Users is for
12451                  general  discussion  about  how to use _\bM_\bH.  MH-Users is bi-directionally
12452                  gatewayed into USENET as comp.mail.mh.
12453
12454                  _\bH_\bO_\bW _\bT_\bO _\bG_\bE_\bT _\bM_\bH
12455
12456                       Since you probably already have _\bM_\bH, you may not need to  read  this
12457                  unless  you  suspect you have an old version.  There are two ways to get
12458                  the latest release:
12459
12460                       1.  If you can FTP to the  ARPA  Internet,  use  anonymous  FTP  to
12461                  ics.uci.edu  [128.195.1.1]  and  retrieve  the file pub/mh/mh-6.8.tar.Z.
12462                  This is a tar  image  after  being  run  through  the  compress  program
12463                  (approximately  1.8MB).   There  should  also  be  a README file in that
12464                  directory which tells what the current release of _\bM_\bH is, and how to  get
12465                  updates.
12466
12467
12468
12469                                                    -i-
12470
12471
12472
12473
12474
12475
12476
12477
12478
12479                                                    -ii-
12480
12481
12482                       This tar file is also available on louie.udel.edu [128.175.1.3]  in
12483                  portal/mh-6.8.tar.Z.   You  may  also find MH on various other hosts; to
12484                  make sure you get the latest version and don't waste your time re-fixing
12485                  bugs, it's best to get it from either ics.uci.edu or louie.udel.edu.
12486
12487                       2.  You can send $75 US to the address below.  This covers the cost
12488                  of  a  6250  BPI  9-track magtape, handling, and shipping.  In addition,
12489                  you'll get a laser-printed hard-copy of the entire MH documentation set.
12490                  Be  sure  to  include your USPS address with your check.  Checks must be
12491                  drawn on U.S. funds and should be made payable to:
12492
12493                            Regents of the University of California
12494
12495                  The distribution address is:
12496
12497                            Computing Support Group
12498                            Attn: MH distribution
12499                            Department of Information and Computer Science
12500                            University of California, Irvine
12501                            Irvine, CA  92717
12502
12503                            714/856-7554
12504
12505                       If you just want the hard-copies of the  documentation,  you  still
12506                  have  to  pay  the $75.  The tar image has the documentation source (the
12507                  manual is in roff format, but the rest are in TeX  format).   Postscript
12508                  formatted  versions  of  the TeX papers are available, as are crude tty-
12509                  conversions of those papers.
12510
12511
12512
12513
12514
12515
12516
12517
12518
12519
12520
12521
12522
12523
12524
12525
12526
12527
12528
12529
12530
12531
12532
12533
12534
12535
12536
12537
12538
12539
12540
12541
12542
12543
12544
12545
12546
12547
12548                                                  _\bF_\bO_\bR_\bE_\bW_\bO_\bR_\bD
12549
12550
12551
12552
12553                       This document describes the RAND _\bM_\bH Message Handling  System.   Its
12554                  primary  purpose  is  to  serve as a user's manual.  It has been heavily
12555                  based on a previous version of the manual,  prepared  by  Bruce  Borden,
12556                  Stockton Gaines, and Norman Shapiro.
12557
12558                       _\bM_\bH is a particularly novel system, and thus it is often more  prone
12559                  to  change  than  other  pieces  of  production software.  As such, some
12560                  specific points in this manual may not be correct in the future.  In all
12561                  cases,  the  on-line  sections  of  this  manual,  available through the
12562                  UNIX[1] _\bm_\ba_\bn command, should present the most current information.
12563
12564                       When reading this document as a user's manual, certain sections are
12565                  more  interesting than others.  The Preface and Summary are not particu-
12566                  larly interesting to those interested in learning _\bM_\bH.  The  Introduction
12567                  is slightly more interesting, as it touches upon the organization of the
12568                  remainder of this document.  The most useful sections are the  Overview,
12569                  Tutorial,  and Detailed Description.  The Overview should be read by all
12570                  _\bM_\bH users, regardless of their expertise (beginning, novice, advanced, or
12571                  hacker).   The  Tutorial  should  be read by all beginning and novice _\bM_\bH
12572                  users, as it presents a nice description of the _\bM_\bH system.  The Detailed
12573                  Description  should  be  read by the day-to-day user of _\bM_\bH, as it spells
12574                  out all of the realities of the _\bM_\bH system.  The Advanced  Features  sec-
12575                  tion discusses some powerful _\bM_\bH capabilities for advanced users.  Appen-
12576                  dix A is particularly useful for novices, as it summarizes  the  invoca-
12577                  tion syntax of all the _\bM_\bH commands.
12578
12579                       There are also several other documents which may be useful to  you:
12580                  _\bT_\bh_\be  _\bR_\bA_\bN_\bD  _\bM_\bH _\bM_\be_\bs_\bs_\ba_\bg_\be _\bH_\ba_\bn_\bd_\bl_\bi_\bn_\bg _\bS_\by_\bs_\bt_\be_\bm: _\bT_\bu_\bt_\bo_\br_\bi_\ba_\bl, which is a tutorial for
12581                  _\bM_\bH; _\bT_\bh_\be _\bR_\bA_\bN_\bD _\bM_\bH _\bM_\be_\bs_\bs_\ba_\bg_\be _\bH_\ba_\bn_\bd_\bl_\bi_\bn_\bg _\bS_\by_\bs_\bt_\be_\bm: _\bT_\bh_\be _\bU_\bC_\bI _\bB_\bB_\bo_\ba_\br_\bd_\bs _\bF_\ba_\bc_\bi_\bl_\bi_\bt_\by, which
12582                  describes  the  BBoards handling under _\bM_\bH; _\bM_\bH._\b5: _\bH_\bo_\bw _\bt_\bo _\bp_\br_\bo_\bc_\be_\bs_\bs _\b2_\b0_\b0 _\bm_\be_\bs_\b-
12583                  _\bs_\ba_\bg_\be_\bs _\ba _\bd_\ba_\by _\ba_\bn_\bd _\bs_\bt_\bi_\bl_\bl _\bg_\be_\bt _\bs_\bo_\bm_\be _\br_\be_\ba_\bl _\bw_\bo_\br_\bk _\bd_\bo_\bn_\be, which  was  presented  at
12584                  the  1985  Summer  Usenix Conference and Exhibition in Portland, Oregon;
12585                  _\bM_\bH: _\bA _\bM_\bu_\bl_\bt_\bi_\bf_\ba_\br_\bi_\bo_\bu_\bs _\bU_\bs_\be_\br _\bA_\bg_\be_\bn_\bt, which has been accepted  for  publication
12586                  by  Computer  Networks;  _\bM_\bZ_\bn_\be_\bt: _\bM_\ba_\bi_\bl _\bS_\be_\br_\bv_\bi_\bc_\be _\bf_\bo_\br _\bP_\be_\br_\bs_\bo_\bn_\ba_\bl _\bM_\bi_\bc_\br_\bo-_\bC_\bo_\bm_\bp_\bu_\bt_\be_\br
12587                  _\bS_\by_\bs_\bt_\be_\bm_\bs, which was presented at the  First  International  Symposium  on
12588                  Computer  Message  Systems  in  Nottingham, U.K.; and, _\bD_\be_\bs_\bi_\bg_\bn _\bo_\bf _\bt_\bh_\be _\bT_\bT_\bI
12589                  _\bP_\br_\bo_\bt_\bo_\bt_\by_\bp_\be _\bT_\br_\bu_\bs_\bt_\be_\bd _\bM_\ba_\bi_\bl _\bA_\bg_\be_\bn_\bt, which describes  a  proprietary  "trusted"
12590                  mail  system  built on _\bM_\bH.  There are also documents, mostly specific to
12591                  U.C. Irvine which you may find interesting: _\bM_\bH _\bf_\bo_\br _\bB_\be_\bg_\bi_\bn_\bn_\be_\br_\bs, and _\bM_\bH _\bf_\bo_\br
12592                  _\bM_\bM _\bU_\bs_\be_\br_\bs.  All of these documents exist in the _\bm_\bh._\b6 distribution sent to
12593                  your site.  There's also a document, _\bC_\bh_\ba_\bn_\bg_\be_\bs _\bt_\bo _\bt_\bh_\be _\bR_\bA_\bN_\bD _\bM_\bH _\bM_\be_\bs_\bs_\ba_\bg_\be _\bH_\ba_\bn_\b-
12594                  _\bd_\bl_\bi_\bn_\bg  _\bS_\by_\bs_\bt_\be_\bm:  _\bM_\bH._\b6,  which  describes  user-visible changes made to _\bM_\bH
12595                  since the last major release.
12596
12597
12598                     [1] UNIX is a trademark of AT&T Bell Laboratories.
12599
12600
12601                                                   -iii-
12602
12603
12604
12605
12606
12607
12608
12609
12610
12611                                                    -iv-
12612
12613
12614                       This manual is very large, as it describes a large, powerful system
12615                  in gruesome detail.  The important thing to remember is:
12616
12617
12618                                               _\bD_\bO_\bN'_\bT _\bP_\bA_\bN_\bI_\bC[_\b2]
12619
12620
12621                  As explained in the tutorial, you really need to know only 5 commands to
12622                  handle most of your mail.
12623
12624                       Very advanced users may wish to consult _\bT_\bh_\be _\bR_\bA_\bN_\bD  _\bM_\bH  _\bM_\be_\bs_\bs_\ba_\bg_\be  _\bH_\ba_\bn_\b-
12625                  _\bd_\bl_\bi_\bn_\bg  _\bS_\by_\bs_\bt_\be_\bm:  _\bA_\bd_\bm_\bi_\bn_\bi_\bs_\bt_\br_\ba_\bt_\bo_\br'_\bs _\bG_\bu_\bi_\bd_\be, which is also present in the _\bm_\bh._\b6
12626                  distribution sent to your site.
12627
12628
12629
12630
12631
12632
12633
12634
12635
12636
12637
12638
12639
12640
12641
12642
12643
12644
12645
12646
12647
12648
12649
12650
12651
12652
12653
12654
12655
12656
12657
12658
12659
12660
12661
12662
12663
12664                     [2] Note the large, _\bf_\br_\bi_\be_\bn_\bd_\bl_\by letters.
12665
12666
12667
12668
12669
12670
12671
12672
12673
12674
12675
12676
12677
12678
12679
12680                                              _\bA_\bC_\bK_\bN_\bO_\bW_\bL_\bE_\bD_\bG_\bM_\bE_\bN_\bT_\bS
12681
12682
12683
12684
12685                       The _\bM_\bH system described herein is based on  the  original  RAND  _\bM_\bH
12686                  system.   It  has  been  extensively  developed (perhaps too much so) by
12687                  Marshall T. Rose and John L. Romine at  the  University  of  California,
12688                  Irvine.  Einar A. Stefferud, Jerry N. Sweet, and Terry P. Domae provided
12689                  numerous suggestions to improve the UCI version of  _\bM_\bH.   Of  course,  a
12690                  large  number  of  people have helped _\bM_\bH along.  The list of ``_\bM_\bH immor-
12691                  tals'' is too long to list here.  However, Van Jacobson deserves a  spe-
12692                  cial  acknowledgement for his tireless work in improving the performance
12693                  of _\bM_\bH.  Some programs have been speeded-up by a factor of 10 or 20.  All
12694                  of  users  of  _\bM_\bH,  everywhere,  owe  a special thanks to Van.  For this
12695                  release, numerous _\bM_\bH-_\bW_\bo_\br_\bk_\be_\br_\bs sent in fixes and other changes.  A handful
12696                  of  courageous  _\bM_\bH-_\bW_\bo_\br_\bk_\be_\br_\bs volunteered to beta-test these changes; their
12697                  help is particularly appreciated.
12698
12699                       This manual is based on the original _\bM_\bH manual written at  RAND  by
12700                  Bruce Borden, Stockton Gaines, and Norman Shapiro.
12701
12702
12703
12704
12705
12706
12707
12708
12709
12710
12711
12712
12713
12714
12715
12716
12717
12718
12719
12720
12721
12722
12723
12724
12725
12726
12727
12728
12729
12730
12731
12732
12733                                                    -v-
12734
12735
12736
12737
12738
12739
12740
12741
12742
12743
12744
12745
12746                                                  _\bP_\bR_\bE_\bF_\bA_\bC_\bE
12747
12748
12749
12750
12751                       This report describes a system for dealing with messages  transmit-
12752                  ted  on  a  computer.  Such messages might originate with other users of
12753                  the same computer or might come from an outside source through a network
12754                  to  which the user's computer is connected.  Such computer-based message
12755                  systems are becoming increasingly widely used, both within  and  outside
12756                  the Department of Defense.
12757
12758                       The message handling system _\bM_\bH was developed for two reasons.   One
12759                  was  to  investigate some research ideas concerning how a message system
12760                  might take advantage  of  the  architecture  of  the  UNIX  time-sharing
12761                  operating  system  for Digital Equipment Corporation PDP-11 and VAX com-
12762                  puters, and the special features of UNIX's command-level interface  with
12763                  the  user  (the  "shell").  The other reason was to provide a better and
12764                  more adaptable base than that of conventional designs on which to  build
12765                  a  command and control message system.  The effort has succeeded in both
12766                  regards, although this report mainly describes the message system itself
12767                  and how it fits in with UNIX.
12768
12769                       The present report  should  be  of  interest  to  three  groups  of
12770                  readers.   First, it is a complete reference manual for the users of _\bM_\bH.
12771                  Second, it should be of interest to those who have a  general  knowledge
12772                  of  computer-based message systems, both in civilian and military appli-
12773                  cations.  Finally, it should be of interest to  those  who  build  large
12774                  subsystems  that  interface  with  users,  since  it  illustrates  a new
12775                  approach to such interfaces.
12776
12777                       The original _\bM_\bH system was developed  by  Bruce  Borden,  using  an
12778                  approach  suggested  by  Stockton  Gaines  and Norman Shapiro.  Valuable
12779                  assistance was provided by Phyllis Kantar in the  later  stages  of  the
12780                  system's  implementation.   Several  colleagues contributed to the ideas
12781                  included in this system, particularly Robert Anderson and David Crocker.
12782                  In  addition,  valuable  experience  in  message systems, and a valuable
12783                  source of ideas, was available to us in the form of a  previous  message
12784                  system for UNIX called MS, designed at RAND by David Crocker.
12785
12786                       This report was originally prepared as part  of  the  RAND  project
12787                  entitled "Data Automation Research", sponsored by Project AIR FORCE.
12788
12789
12790
12791
12792
12793
12794
12795
12796
12797
12798
12799                                                    -vi-
12800
12801
12802
12803
12804
12805
12806
12807
12808
12809
12810
12811
12812                                                  _\bS_\bU_\bM_\bM_\bA_\bR_\bY
12813
12814
12815
12816
12817                       Electronic communication of text messages is becoming  commonplace.
12818                  Computer-based  message systems-software packages that provide tools for
12819                  dealing with messages-are used in many contexts.  In particular, message
12820                  systems  are  becoming increasingly important in command and control and
12821                  intelligence applications.
12822
12823                       This report describes a message handling system  called  _\bM_\bH.   This
12824                  system  provides  the  user with tools to compose, send, receive, store,
12825                  retrieve, forward, and reply to messages.  _\bM_\bH has been built on the UNIX
12826                  time-sharing  system,  a  popular operating system developed for the DEC
12827                  PDP-11 and VAX classes of computers.
12828
12829                       A complete description of _\bM_\bH is given for users of the system.  For
12830                  those who do not intend to use the system, this description gives a gen-
12831                  eral idea of what a message system is like.  The  system  involves  some
12832                  new ideas about how large subsystems can be constructed.
12833
12834                       The interesting and unusual features of _\bM_\bH include  the  following:
12835                  The  user command interface to _\bM_\bH is the UNIX "shell" (the standard UNIX
12836                  command interpreter).  Each separable  component  of  message  handling,
12837                  such  as  message composition or message display, is a separate command.
12838                  Each program is driven from and  updates  a  private  user  environment,
12839                  which  is  stored  as  a file between program invocations.  This private
12840                  environment also contains information  to  "custom  tailor"  _\bM_\bH  to  the
12841                  individual's  tastes.   _\bM_\bH  stores each message as a separate file under
12842                  UNIX, and it utilizes the tree-structured UNIX file system  to  organize
12843                  groups  of  files  within separate directories or "folders".  All of the
12844                  UNIX facilities for dealing with files and directories, such  as  renam-
12845                  ing,  copying, deleting, cataloging, off-line printing, etc., are appli-
12846                  cable to messages and directories of messages (folders).   Thus,  impor-
12847                  tant capabilities needed in a message system are available in _\bM_\bH without
12848                  the need (often seen in other message systems) for code that  duplicates
12849                  the facilities of the supporting operating system.  It also allows users
12850                  familiar with the shell to use _\bM_\bH with minimal effort.
12851
12852
12853
12854
12855
12856
12857
12858
12859
12860
12861
12862
12863
12864
12865                                                   -vii-
12866
12867
12868
12869
12870
12871
12872
12873
12874
12875
12876
12877
12878                                                  _\bC_\bO_\bN_\bT_\bE_\bN_\bT_\bS
12879
12880
12881
12882
12883                  READ THIS .........................................................    i
12884
12885                  FOREWORD ..........................................................  iii
12886
12887                  ACKNOWLEDGMENTS ...................................................    v
12888
12889                  PREFACE ...........................................................   vi
12890
12891                  SUMMARY ...........................................................  vii
12892
12893                  Section
12894
12895                     1.  INTRODUCTION ...............................................    1
12896
12897                     2.  OVERVIEW ...................................................    4
12898
12899                     3.  TUTORIAL ...................................................    7
12900
12901                     4.  DETAILED DESCRIPTION .......................................   10
12902                       THE USER PROFILE .............................................   10
12903                       MESSAGE NAMING ...............................................   13
12904                       OTHER MH CONVENTIONS .........................................   14
12905                       MH COMMANDS ..................................................   16
12906                          ALI .......................................................   17
12907                          ANNO ......................................................   19
12908                          BBC .......................................................   21
12909                          BBOARDS ...................................................   24
12910                          BURST .....................................................   26
12911                          COMP ......................................................   28
12912                          DIST ......................................................   30
12913                          FOLDER ....................................................   33
12914                          FORW ......................................................   37
12915                          INC .......................................................   42
12916                          MARK ......................................................   45
12917                          MHL .......................................................   47
12918                          MHMAIL ....................................................   52
12919                          MHN .......................................................   54
12920                          MHOOK .....................................................   70
12921                          MHPARAM ...................................................   72
12922                          MHPATH ....................................................   74
12923                          MSGCHK ....................................................   77
12924                          MSH .......................................................   79
12925                          NEXT ......................................................   83
12926                          PACKF .....................................................   84
12927                          PICK ......................................................   85
12928                          PREV ......................................................   90
12929                          PROMPTER ..................................................   91
12930
12931
12932
12933
12934
12935
12936
12937
12938
12939
12940
12941
12942
12943
12944                          RCVSTORE ..................................................   94
12945                          REFILE ....................................................   96
12946                          REPL ......................................................   98
12947                          RMF .......................................................  102
12948                          RMM .......................................................  104
12949                          SCAN ......................................................  106
12950                          SEND ......................................................  109
12951                          SHOW ......................................................  112
12952                          SLOCAL ....................................................  115
12953                          SORTM .....................................................  120
12954                          VMH .......................................................  122
12955                          WHATNOW ...................................................  124
12956                          WHOM ......................................................  127
12957                       MORE DETAILS .................................................  129
12958                          MH-ALIAS ..................................................  130
12959                          MH-FORMAT .................................................  134
12960                          MH-MAIL ...................................................  143
12961                          MH-PROFILE ................................................  147
12962                          MH-SEQUENCE ...............................................  155
12963                          AP ........................................................  159
12964                          CONFLICT ..................................................  161
12965                          DP ........................................................  163
12966                          FMTDUMP ...................................................  165
12967                          INSTALL-MH ................................................  166
12968                          POST ......................................................  167
12969
12970                     5.  REPORTING PROBLEMS .........................................  169
12971
12972                     6.  ADVANCED FEATURES ..........................................  170
12973                       USER-DEFINED SEQUENCES .......................................  170
12974                          Pick and User-Defined Sequences ...........................  170
12975                          Mark and User-Defined Sequences ...........................  172
12976                          Public and Private User-Defined Sequences .................  172
12977                          Sequence Negation .........................................  172
12978                          The Previous Sequence .....................................  173
12979                          The Unseen Sequence .......................................  173
12980                       COMPOSITION OF MAIL ..........................................  174
12981                          The Draft Folder ..........................................  174
12982                          What Happens if the Draft Exists ..........................  176
12983                          The Push Option at What now? Level ........................  176
12984                          Options at What now? Level ................................  177
12985                          Digests ...................................................  178
12986                       FOLDER HANDLING ..............................................  179
12987                          Relative Folder Addressing ................................  179
12988                          The Folder-Stack ..........................................  180
12989
12990                  Appendix
12991                     A.  Command Summary ............................................  181
12992                     B.  Message Name BNF ...........................................  185
12993
12994                  REFERENCES ........................................................  186
12995
12996
12997
12998
12999
13000
13001
13002
13003
13004
13005
13006
13007
13008
13009
13010
13011
13012
13013
13014
13015
13016
13017
13018
13019
13020
13021
13022                                          THE RAND MH
13023
13024
13025                                       MESSAGE HANDLING
13026
13027
13028                                            SYSTEM:
13029
13030
13031                                         USER'S MANUAL
13032
13033
13034
13035
13036
13037
13038                                          UCI Version
13039
13040
13041
13042
13043
13044                                       Marshall T. Rose
13045
13046                                        John L. Romine
13047
13048
13049
13050
13051                                Based on the original manual by
13052
13053                                  Borden, Gaines, and Shapiro
13054
13055
13056
13057
13058
13059
13060
13061                                       December 14, 1992
13062
13063
13064
13065
13066
13067
13068
13069
13070
13071
13072
13073
13074
13075
13076
13077                                          6.6 #1[UCI]
13078
13079
13080
13081
13082
13083
13084
13085
13086
13087
13088
13089
13090
13091
13092
13093
13094
13095
13096
13097
13098
13099
13100
13101
13102
13103
13104
13105
13106
13107
13108
13109
13110
13111
13112
13113
13114
13115
13116
13117
13118
13119
13120
13121
13122
13123
13124
13125
13126
13127
13128
13129
13130
13131
13132
13133
13134