Added -check/-nocheck switches to sortm(1). Also removed obsolete
[mmh] / docs / historical / MH.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                                             November 30, 1993
22                                               6.8.3 #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/local/lib/mh/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] [-help]
1402
1403             _\bD_\bE_\bS_\bC_\bR_\bI_\bP_\bT_\bI_\bO_\bN
1404
1405                  _\bb_\bb_\bc is a BBoard reading/checking program  that  interfaces  to  the
1406                  BBoard channel.
1407
1408                  The _\bb_\bb_\bc program has three action switches which direct  its  opera-
1409                  tion:
1410
1411                  The `-read' switch invokes the _\bm_\bs_\bh program on  the  named  _\bB_\bB_\bo_\ba_\br_\bd_\bs.
1412                  If  you  also  specify the `-archive' switch, then  _\bb_\bb_\bc will invoke
1413                  the _\bm_\bs_\bh program on the  archives  of  the  named  _\bB_\bB_\bo_\ba_\br_\bd_\bs.   If  no
1414                  _\bB_\bB_\bo_\ba_\br_\bd_\bs   are   given  on  the  command  line,  and  you  specified
1415                  `-archive', _\bb_\bb_\bc will not read your  `bboards'  profile  entry,  but
1416                  will read the archives of the "system" _\bB_\bB_\bo_\ba_\br_\bd instead.
1417
1418                  The `-check' switch types out  status  information  for  the  named
1419                  _\bB_\bB_\bo_\ba_\br_\bd_\bs.   _\bb_\bb_\bc  can  print one of several messages depending on the
1420                  status of both the BBoard and the user's reading  habits.  As  with
1421                  each  of these messages, the number given is the item number of the
1422                  last item placed in the BBoard.  This number (which  is  marked  in
1423                  the  messages  as the "BBoard-Id") is ever increasing.  Hence, when
1424                  _\bb_\bb_\bc says "n items", it really means that the highest  BBoard-Id  is
1425                  "n".   There  may,  or may not actually be "n" items in the BBoard.
1426                  Some common messages are:
1427
1428                       BBoard -- n items unseen
1429                            This message tells how many items the user  has  not  yet
1430                            seen.  When invoked with the `-quiet' switch, this is the
1431                            only informative line that _\bb_\bb_\bc will possibly print out.
1432
1433                       BBoard -- empty
1434                            The BBoard is empty.
1435
1436                       BBoard -- n items (none seen)
1437                            The BBoard has items in it, but the user hasn't seen any.
1438
1439                       BBoard -- n items (all seen)
1440                            The BBoard is non-empty, and the user has seen everything
1441                            in it.
1442
1443                       BBoard -- n items seen out of m
1444                            The BBoard has at most m-n items that the  user  has  not
1445                            seen.
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                  The `-topics' switch directs _\bb_\bb_\bc to print  three  items  about  the
1461                  named _\bB_\bB_\bo_\ba_\br_\bd_\bs: it's official name, the number of items present, and
1462                  the date and time of the last update.  If  no  _\bB_\bB_\bo_\ba_\br_\bd_\bs  are  named,
1463                  then  all  BBoards  are listed.  If the `-verbose' switch is given,
1464                  more information is output.
1465
1466                  The `-quiet' switch specifies that  _\bb_\bb_\bc  should  be  silent  if  no
1467                  _\bB_\bB_\bo_\ba_\br_\bd_\bs  are  found  with  new  information.  The `-verbose' switch
1468                  specifies that _\bb_\bb_\bc is to consider you to be interested  in  _\bB_\bB_\bo_\ba_\br_\bd_\bs
1469                  that you've already seen everything in.
1470
1471                  To override the default _\bm_\bs_\bh_\bp_\br_\bo_\bc and  the  profile  entry,  use  the
1472                  `-mshproc program' switch.  Any arguments not understood by _\bb_\bb_\bc are
1473                  passed to this program.  The `-protocol' switch tells _\bb_\bb_\bc that your
1474                  _\bm_\bs_\bh_\bp_\br_\bo_\bc  knows  about  the  special _\bb_\bb_\bc protocol for reporting back
1475                  information.  _\bm_\bs_\bh (1), the default _\bm_\bs_\bh_\bp_\br_\bo_\bc, knows all about this.
1476
1477                  The `-file BBoardsfile' switch tells  _\bb_\bb_\bc  to  use  a  non-standard
1478                  _\bB_\bB_\bo_\ba_\br_\bd_\bs  file  when  performing  its  calculations.  Similarly, the
1479                  `-user BBoardsuser' switch tells _\bb_\bb_\bc to use  a  non-standard  user-
1480                  name.   Both  of  these  switches  are  useful  for debugging a new
1481                  _\bB_\bB_\bo_\ba_\br_\bd_\bs or _\bP_\bO_\bP file.
1482
1483                  The ._\bb_\bb_\br_\bc file in the user's $HOME directory is used to keep  track
1484                  of what messages have been read.  The `-rcfile rcfile' switch over-
1485                  rides the use of ._\bb_\bb_\br_\bc for this purpose.  If the value given to the
1486                  switch  is  not absolute, (i.e., does not begin with a / ), it will
1487                  be presumed to start from the current working directory.   If  this
1488                  switch  is not given (or the `-norcfile' switch is given), then _\bb_\bb_\bc
1489                  consults the envariable $MHBBRC, and honors it similarly.
1490
1491             _\bF_\bi_\bl_\be_\bs
1492                  $HOME/.mh_profile                   The user profile
1493                  $HOME/.bbrc                         BBoard "current" message information
1494
1495
1496             _\bP_\br_\bo_\bf_\bi_\bl_\be _\bC_\bo_\bm_\bp_\bo_\bn_\be_\bn_\bt_\bs
1497                  Path:                To determine the user's MH directory
1498                  bboards:             To specify interesting BBoards
1499                  mshproc:             Program to read a given BBoard
1500
1501
1502             _\bS_\be_\be _\bA_\bl_\bs_\bo
1503                  bbl(1), bboards(1), msh(1)
1504
1505
1506
1507
1508
1509
1510
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/spool/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/local/lib/mh/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/local/lib/mh/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] [-create] [-nocreate] [-print]
2191                       [-fast] [-nofast] [-header] [-noheader] [-recurse]
2192                       [-norecurse] [-total] [-nototal] [-list] [-nolist] [-push]
2193                       [-pop] [-pack] [-nopack] [-verbose] [-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.   By comparison, when a `+folder'
2210                  argument is given, this corresponds to  a  "cd"  operation  in  the
2211                  _\bs_\bh_\be_\bl_\bl;  when  no  `+folder'  argument  is  given,  this corresponds
2212                  roughly to a "pwd" operation in the _\bs_\bh_\be_\bl_\bl.
2213
2214                  If the specified (or default) folder  doesn't  exist,  the  default
2215                  action  is  to  query  the  user as to whether the folder should be
2216                  created; when standard input is not a tty, the answer to the  query
2217                  is assumed to be "yes".
2218
2219                  Specifying `-create'  will  cause  _\bf_\bo_\bl_\bd_\be_\br  to  create  new  folders
2220                  without any query.  (This is the easy way to create an empty folder
2221                  for use later.) Specifying `-nocreate' will cause  _\bf_\bo_\bl_\bd_\be_\br  to  exit
2222                  without creating a non-existant folder.
2223
2224               _\bM_\bu_\bl_\bt_\bi_\bp_\bl_\be _\bF_\bo_\bl_\bd_\be_\br_\bs
2225
2226                  Specifying `-all' will produce a summary line  for  each  top-level
2227                  folder  in  the  user's  MH  directory, sorted alphabetically.  (If
2228                  _\bf_\bo_\bl_\bd_\be_\br is invoked by a  name  ending  with  "s"  (e.g.,  _\bf_\bo_\bl_\bd_\be_\br_\bs ),
2229                  `-all'  is  assumed).   Specifying `-recurse' with `-all' will also
2230                  produce a line for all sub-folders.  These folders are all preceded
2231                  by  the read-only folders, which occur as "atr-cur-" entries in the
2232                  user's _\bM_\bH context.  For example,
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' and `-total'.
2393
2394                  There is no way to restore the default behavior (to  ask  the  user
2395                  whether  to  create a non-existant folder) after `-create' or `-no-
2396                  create' is given.
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                       [-whatnowproc program] [-nowhatnowproc] [-help]
2459
2460                  forw [+folder] [msgs] [-digest list] [-issue number]
2461                       [-volume number] [other switches for _\bf_\bo_\br_\bw] [-help]
2462
2463             _\bD_\bE_\bS_\bC_\bR_\bI_\bP_\bT_\bI_\bO_\bN
2464
2465                  _\bF_\bo_\br_\bw may be used to prepare a message  containing  other  messages.
2466                  It   constructs  the  new  message  from  the  components  file  or
2467                  `-form formfile'  (see  _\bc_\bo_\bm_\bp ),  with  a  body  composed   of   the
2468                  message(s)  to  be forwarded.  An editor is invoked as in _\bc_\bo_\bm_\bp, and
2469                  after editing is complete, the user is prompted before the  message
2470                  is sent.
2471
2472                  The default message form contains the following elements:
2473
2474                       To:
2475                       cc:
2476                       Subject:
2477                       --------
2478
2479                  If the file named "forwcomps" exists in the user's MH directory, it
2480                  will be used instead of this form.  In either case, the file speci-
2481                  fied by `-form formfile' will be used if given.
2482
2483                  If the draft already exists, _\bf_\bo_\br_\bw will ask you as to  the  disposi-
2484                  tion  of  the  draft.  A reply of quit will abort _\bf_\bo_\br_\bw, leaving the
2485                  draft intact; replace will replace the existing draft with a  blank
2486                  skeleton; and list will display the draft.
2487
2488                  If the `-annotate' switch is given, each  message  being  forwarded
2489                  will be annotated with the lines
2490
2491                       Forwarded: date
2492                       Forwarded: addrs
2493
2494                  where each address list contains as many lines as  required.   This
2495                  annotation  will  be done only if the message is sent directly from
2496                  _\bf_\bo_\br_\bw.   If  the  message  is  not  sent  immediately   from   _\bf_\bo_\br_\bw,
2497                  "comp -use"  may  be  used to re-edit and send the constructed mes-
2498                  sage, but the annotations won't take place.  The '-inplace'  switch
2499                  causes annotation to be done in place in order to preserve links to
2500                  the annotated message.
2501
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                  The `-draftfolder +folder' and `-draftmessage msg' switches  invoke
2560                  the _\bM_\bH draft folder facility.  This is an advanced (and highly use-
2561                  ful) feature.  Consult the Advanced  Features  section  of  the  _\bM_\bH
2562                  manual for more information.
2563
2564                  Upon exiting from the editor, _\bf_\bo_\br_\bw will invoke the _\bw_\bh_\ba_\bt_\bn_\bo_\bw program.
2565                  See _\bw_\bh_\ba_\bt_\bn_\bo_\bw (1) for a discussion of available options.  The invoca-
2566                  tion of this program can be inhibited by using the `-nowhatnowproc'
2567                  switch.   (In truth of fact, it is the _\bw_\bh_\ba_\bt_\bn_\bo_\bw program which starts
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                  the initial edit.  Hence, `-nowhatnowproc' will  prevent  any  edit
2583                  from occurring.)
2584
2585                  The `-digest list', `-issue number', and `-volume number'  switches
2586                  implement  a  digest  facility  for  _\bM_\bH.  Specifying these switches
2587                  enables and/or overloads the following escapes:
2588
2589                  _\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
2590                  _\bc_\bo_\bm_\bp_\bo_\bn_\be_\bn_\bt  _\bd_\bi_\bg_\be_\bs_\bt  string   Argument to `-digest'
2591                  _\bf_\bu_\bn_\bc_\bt_\bi_\bo_\bn   _\bc_\bu_\br     integer  Argument to `-volume'
2592                  _\bf_\bu_\bn_\bc_\bt_\bi_\bo_\bn   _\bm_\bs_\bg     integer  Argument to `-issue'
2593
2594                  Consult the Advanced Features section of the _\bM_\bH User's  Manual  for
2595                  more information on making digests.
2596
2597             _\bF_\bi_\bl_\be_\bs
2598                  /usr/local/lib/mh/forwcomps         The message skeleton
2599                  or <mh-dir>/forwcomps               Rather than the standard skeleton
2600                  /usr/local/lib/mh/digestcomps       The message skeleton if `-digest' is given
2601                  or <mh-dir>/digestcomps             Rather than the standard skeleton
2602                  /usr/local/lib/mh/mhl.forward       The message filter
2603                  or <mh-dir>/mhl.forward             Rather than the standard filter
2604                  $HOME/.mh_profile                   The user profile
2605                  <mh-dir>/draft                      The draft file
2606
2607
2608             _\bP_\br_\bo_\bf_\bi_\bl_\be _\bC_\bo_\bm_\bp_\bo_\bn_\be_\bn_\bt_\bs
2609                  Path:                To determine the user's MH directory
2610                  Current-Folder:      To find the default current folder
2611                  Draft-Folder:        To find the default draft-folder
2612                  Editor:              To override the default editor
2613                  Msg-Protect:         To  set  mode  when  creating  a  new  message
2614                  (draft)
2615                  fileproc:            Program to refile the message
2616                  mhlproc:             Program to filter messages being forwarded
2617                  whatnowproc:         Program to ask the "What now?" questions
2618
2619
2620             _\bS_\be_\be _\bA_\bl_\bs_\bo
2621                  _\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),
2622                  comp(1), dist(1), repl(1), send(1), whatnow(1), mh-format(5)
2623
2624
2625             _\bD_\be_\bf_\ba_\bu_\bl_\bt_\bs
2626                  `+folder' defaults to the current folder
2627                  `msgs' defaults to cur
2628                  `-noannotate'
2629                  `-nodraftfolder'
2630                  `-noformat'
2631                  `-noinplace'
2632
2633
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             _\bC_\bo_\bn_\bt_\be_\bx_\bt
2649                  If a folder is given, it will become the current folder.  The first
2650                  message forwarded will become the current message.
2651
2652
2653             _\bB_\bu_\bg_\bs
2654                  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
2655                  does  not  actually  run the _\bw_\bh_\ba_\bt_\bn_\bo_\bw program.  Hence, if you define
2656                  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
2657                  it.
2658
2659                  When _\bf_\bo_\br_\bw is told to annotate the messages it forwards, it  doesn't
2660                  actually  annotate  them  until the draft is successfully sent.  If
2661                  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
2662                  confuse   _\bf_\bo_\br_\bw   by   re-ordering   the   file   (e.g.,   by  using
2663                  `folder -pack') before the message is successfully sent.  _\bD_\bi_\bs_\bt  and
2664                  _\br_\be_\bp_\bl don't have this problem.
2665
2666                  To avoid prepending the leading dash characters in  forwarded  mes-
2667                  sages,  there  is  a  `-nodashmunging'  option.   See  the  "Hidden
2668                  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.
2669
2670
2671
2672
2673
2674
2675
2676
2677
2678
2679
2680
2681
2682
2683
2684
2685
2686
2687
2688
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             INC(1)                            -41-                            INC(1)
2712
2713
2714             _\bN_\bA_\bM_\bE
2715                  inc - incorporate new mail
2716
2717             _\bS_\bY_\bN_\bO_\bP_\bS_\bI_\bS
2718                  inc [+folder] [-audit audit-file] [-noaudit] [-changecur]
2719                       [-nochangecur] [-form formatfile] [-format string]
2720                       [-file name] [-silent] [-nosilent] [-truncate] [-notruncate]
2721                       [-width columns] [-help]
2722
2723             _\bD_\bE_\bS_\bC_\bR_\bI_\bP_\bT_\bI_\bO_\bN
2724
2725                  _\bI_\bn_\bc incorporates mail from the user's incoming mail drop into an _\bM_\bH
2726                  folder.   If  `+folder'  isn't specified, a folder in the user's _\bM_\bH
2727                  directory will be used, either that specified by the "Inbox:" entry
2728                  in  the  user's profile, or the folder named "inbox".  The new mes-
2729                  sages being incorporated are assigned  numbers  starting  with  the
2730                  next  highest  number in the folder.  If the specified (or default)
2731                  folder doesn't exist, the user will be queried prior to  its  crea-
2732                  tion.   As  the  messages  are processed, a _\bs_\bc_\ba_\bn listing of the new
2733                  mail is produced.
2734
2735                  If the user's profile contains a "Msg-Protect: nnn" entry, it  will
2736                  be  used as the protection on the newly created messages, otherwise
2737                  the _\bM_\bH default of 0644 will be used.  During all operations on mes-
2738                  sages,  this  initially  assigned  protection will be preserved for
2739                  each message, so _\bc_\bh_\bm_\bo_\bd(1) may be used to set  a  protection  on  an
2740                  individual   message,   and   its   protection  will  be  preserved
2741                  thereafter.
2742
2743                  If the  switch  `-audit audit-file'  is  specified  (usually  as  a
2744                  default  switch in the profile), then _\bi_\bn_\bc will append a header line
2745                  and a line per message to the end of the specified audit-file  with
2746                  the format:
2747
2748                       <<inc>> date
2749                            <scan line for first message>
2750                            <scan line for second message>
2751                                      <etc.>
2752
2753                  This is useful for keeping track of volume and source  of  incoming
2754                  mail.   Eventually,  _\br_\be_\bp_\bl,  _\bf_\bo_\br_\bw,  _\bc_\bo_\bm_\bp,  and _\bd_\bi_\bs_\bt may also produce
2755                  audits to this (or another) file, perhaps with "Message-Id:" infor-
2756                  mation  to keep an exact correspondence history.  "Audit-file" will
2757                  be in the user's MH directory unless a full path is specified.
2758
2759                  _\bI_\bn_\bc will incorporate even improperly formatted  messages  into  the
2760                  user's  MH  folder,  inserting  a blank line prior to the offending
2761                  component and printing a comment identifying the bad message.
2762
2763                  In all cases, the user's mail  drop  will  be  zeroed,  unless  the
2764                  `-notruncate' switch is given.
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                  If the profile entry "Unseen-Sequence" is  present  and  non-empty,
2781                  then  _\bi_\bn_\bc  will add each of the newly incorporated messages to each
2782                  sequence named by the  profile  entry.   This  is  similar  to  the
2783                  "Previous-Sequence"  profile  entry  supported  by  all _\bM_\bH commands
2784                  which take `msgs' or `msg' arguments.  Note that _\bi_\bn_\bc will not  zero
2785                  each sequence prior to adding messages.
2786
2787                  The interpretation of the `-form formatfile', `-format string', and
2788                  `-width columns' switches is the same as in _\bs_\bc_\ba_\bn (1).
2789
2790                  By using the `-file name' switch, one can direct _\bi_\bn_\bc to incorporate
2791                  messages from a file other than the user's maildrop.  Note that the
2792                  name file will NOT be zeroed,  unless  the  `-truncate'  switch  is
2793                  given.
2794
2795                  If the envariable $MAILDROP is set, then _\bi_\bn_\bc uses it as  the  loca-
2796                  tion  of  the  user's  maildrop  instead  of  the  default  (the `-
2797                  file name' switch still overrides this, however).  If this  envari-
2798                  able is not set, then _\bi_\bn_\bc will consult the profile entry "MailDrop"
2799                  for this information.  If the value found is not absolute, then  it
2800                  is  interpreted  relative to the user's _\bM_\bH directory.  If the value
2801                  is not found, then _\bi_\bn_\bc will look in the  standard  system  location
2802                  for the user's maildrop.
2803
2804                  The `-silent' switch directs _\bi_\bn_\bc to be quiet and not ask any  ques-
2805                  tions at all.  This is useful for putting _\bi_\bn_\bc in the background and
2806                  going on to other things.
2807
2808             _\bF_\bi_\bl_\be_\bs
2809                  $HOME/.mh_profile                   The user profile
2810                  /usr/local/lib/mh/mtstailor         tailor file
2811                  /usr/spool/mail/$USER               Location of mail drop
2812
2813
2814             _\bP_\br_\bo_\bf_\bi_\bl_\be _\bC_\bo_\bm_\bp_\bo_\bn_\be_\bn_\bt_\bs
2815                  Path:                To determine the user's MH directory
2816                  Alternate-Mailboxes: To determine the user's mailboxes
2817                  Inbox:               To determine the inbox, default "inbox"
2818                  Folder-Protect:      To set mode when creating a new folder
2819                  Msg-Protect:         To set mode when creating a  new  message  and
2820                  audit-file
2821                  Unseen-Sequence:     To name sequences denoting unseen messages
2822
2823
2824             _\bS_\be_\be _\bA_\bl_\bs_\bo
2825                  mhmail(1), scan(1), mh-mail(5), post(8)
2826
2827
2828
2829
2830
2831
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             _\bD_\be_\bf_\ba_\bu_\bl_\bt_\bs
2847                  `+folder' defaulted by "Inbox" above
2848                  `-noaudit'
2849                  `-changecur'
2850                  `-format' defaulted as described above
2851                  `-nosilent'
2852                  `-truncate' if `-file name' not given, `-notruncate' otherwise
2853                  `-width' defaulted to the width of the terminal
2854
2855
2856             _\bC_\bo_\bn_\bt_\be_\bx_\bt
2857                  The folder into which messages are being incorporated  will  become
2858                  the current folder.  The first message incorporated will become the
2859                  current message, unless the  `-nochangecur'  option  is  specified.
2860                  This leaves the context ready for a _\bs_\bh_\bo_\bw of the first new message.
2861
2862
2863             _\bB_\bu_\bg_\bs
2864                  The argument to the `-format' switch must be interpreted as a  sin-
2865                  gle  token by the shell that invokes _\bi_\bn_\bc.  Therefore, one must usu-
2866                  ally place the argument to this switch inside double-quotes.
2867
2868
2869
2870
2871
2872
2873
2874
2875
2876
2877
2878
2879
2880
2881
2882
2883
2884
2885
2886
2887
2888
2889
2890
2891
2892
2893
2894
2895
2896
2897
2898
2899             [mh.6]                           MH.6.8                      UCI version
2900
2901
2902
2903
2904
2905
2906
2907
2908
2909             MARK(1)                           -44-                           MARK(1)
2910
2911
2912             _\bN_\bA_\bM_\bE
2913                  mark - mark messages
2914
2915             _\bS_\bY_\bN_\bO_\bP_\bS_\bI_\bS
2916                  mark [+folder] [msgs] [-sequence name ...] [-add] [-delete] [-list]
2917                       [-public] [-nopublic] [-zero] [-nozero] [-help]
2918
2919             _\bD_\bE_\bS_\bC_\bR_\bI_\bP_\bT_\bI_\bO_\bN
2920
2921                  The _\bm_\ba_\br_\bk command manipulates message sequences by adding or  delet-
2922                  ing  message  numbers from folder-specific message sequences, or by
2923                  listing those sequences and messages.  A message sequence is a key-
2924                  word,  just  like  one  of  the  "reserved"  message names, such as
2925                  "first" or "next".  Unlike the "reserved" message names, which have
2926                  a fixed semantics on a per-folder basis, the semantics of a message
2927                  sequence may be defined, modified, and removed by the  user.   Mes-
2928                  sage  sequences are folder-specific, e.g., the sequence name "seen"
2929                  in the context of folder "+inbox" need not have any relation  what-
2930                  soever  to the sequence of the same name in a folder of a different
2931                  name.
2932
2933                  Three action switches direct the operation of _\bm_\ba_\br_\bk.  These switches
2934                  are  mutually  exclusive:  the last occurrence of any of them over-
2935                  rides any previous occurrence of the other two.
2936
2937                  The `-add' switch tells _\bm_\ba_\br_\bk to add messages  to  sequences  or  to
2938                  create   a   new   sequence.   For  each  sequence  named  via  the
2939                  `-sequence name' argument (which must occur at least once) the mes-
2940                  sages  named  via  `msgs' (which defaults to "cur" if no `msgs' are
2941                  given), are added to the sequence.  The messages to be  added  need
2942                  not  be  absent from the sequence.  If the `-zero' switch is speci-
2943                  fied, the sequence will be emptied prior to  adding  the  messages.
2944                  Hence,  `-add -zero' means that each sequence should be initialized
2945                  to the indicated messages, while  `-add -nozero'  means  that  each
2946                  sequence should be appended to by the indicated messages.
2947
2948                  The `-delete' switch tells _\bm_\ba_\br_\bk to delete messages from  sequences,
2949                  and  is  the  dual of `-add'.  For each of the named sequences, the
2950                  named messages are removed from the sequence.  These messages  need
2951                  not  be  already present in the sequence.  If the `-zero' switch is
2952                  specified, then all messages in the  folder  are  appended  to  the
2953                  sequence  prior  to  removing the messages.  Hence, `-delete -zero'
2954                  means that each sequence should contain all messages  except  those
2955                  indicated,  while  `-delete -nozero'  means that only the indicated
2956                  messages should be removed from each sequence.   As  expected,  the
2957                  command   `mark -sequence seen -delete all'  deletes  the  sequence
2958                  "seen" from the current folder.
2959
2960                  When creating (or modifying) a sequence, the `-public' switch indi-
2961                  cates that the sequence should be made readable for other _\bM_\bH users.
2962                  In contrast, the `-nopublic' switch  indicates  that  the  sequence
2963                  should be private to the user's _\bM_\bH environment.
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                  The `-list' switch tells _\bm_\ba_\br_\bk to list both  the  sequences  defined
2979                  for  the  folder  and the messages associated with those sequences.
2980                  _\bM_\ba_\br_\bk will list the name of each sequence given by  `-sequence name'
2981                  and  the  messages  associated  with that sequence.  If `-sequence'
2982                  isn't used, all sequences will be listed,  with  private  sequences
2983                  being  so indicated.  The `-zero' switch does not affect the opera-
2984                  tion of `-list'.
2985
2986                  The current restrictions on sequences are:
2987
2988                    The name used to denote a message sequence  must  consist  of  an
2989                    alphabetic  character followed by zero or more alphanumeric char-
2990                    acters, and cannot be one of the (reserved) message names  "new",
2991                    "first", "last", "all", "next", or "prev".
2992
2993                    Only a certain number of sequences may be  defined  for  a  given
2994                    folder.   This  number is usually limited to 26 (10 on small sys-
2995                    tems).
2996
2997                    Message ranges with user-defined sequence names are restricted to
2998                    the  form  "name:n"  or "name:-n", and refer to the first or last
2999                    `n' messages of the sequence `name', respectively.  Constructs of
3000                    the form "name1-name2" are forbidden.
3001
3002             _\bF_\bi_\bl_\be_\bs
3003                 $HOME/.mh_profile                   The user profile
3004
3005
3006             _\bP_\br_\bo_\bf_\bi_\bl_\be _\bC_\bo_\bm_\bp_\bo_\bn_\be_\bn_\bt_\bs
3007                  Path:                To determine the user's MH directory
3008                  Current-Folder:      To find the default current folder
3009
3010
3011             _\bS_\be_\be _\bA_\bl_\bs_\bo
3012                 pick (1), mh-sequence (5)
3013
3014
3015             _\bD_\be_\bf_\ba_\bu_\bl_\bt_\bs
3016                  `+folder' defaults to the current folder
3017                  `-add' if `-sequence' is specified, `-list' otherwise
3018                  `msgs' defaults to cur (or all if `-list' is specified)
3019                  `-nopublic' if the folder is read-only, `-public' otherwise
3020                  `-nozero'
3021
3022
3023             _\bC_\bo_\bn_\bt_\be_\bx_\bt
3024                 If a folder is given, it will become the current folder.
3025
3026             _\bH_\be_\bl_\bp_\bf_\bu_\bl _\bH_\bi_\bn_\bt_\bs
3027
3028                  Use "pick sequence -list" to enumerate the messages in  a  sequence
3029                  (such as for use by a shell script).
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             _\bN_\bA_\bM_\bE
3045                  mhl - produce formatted listings of MH messages
3046
3047             _\bS_\bY_\bN_\bO_\bP_\bS_\bI_\bS
3048                  /usr/local/lib/mh/mhl [-bell] [-nobell] [-clear] [-noclear]
3049                       [-folder +folder] [-form formfile] [-length lines]
3050                       [-width columns] [-moreproc program] [-nomoreproc] [files ...]
3051                       [-help]
3052
3053             _\bD_\bE_\bS_\bC_\bR_\bI_\bP_\bT_\bI_\bO_\bN
3054
3055                  _\bM_\bh_\bl is a formatted message listing program.  It can be  used  as  a
3056                  replacement  for  _\bm_\bo_\br_\be (1)  (the default _\bs_\bh_\bo_\bw_\bp_\br_\bo_\bc ).  As with _\bm_\bo_\br_\be,
3057                  each of the messages specified as arguments (or the standard input)
3058                  will  be  output.   If more than one message file is specified, the
3059                  user will be prompted prior to each one, and a  <RETURN>  or  <EOT>
3060                  will  begin  the  output,  with  <RETURN>  clearing  the screen (if
3061                  appropriate), and <EOT> (usually  CTRL-D)  suppressing  the  screen
3062                  clear.  An <INTERRUPT> (usually CTRL-C) will abort the current mes-
3063                  sage output, prompting for the next message (if there is one),  and
3064                  a  <QUIT> (usually CTRL-\) will terminate the program (without core
3065                  dump).
3066
3067                  The `-bell' option tells _\bm_\bh_\bl to ring the terminal's bell at the end
3068                  of  each  page,  while  the  `-clear' option tells _\bm_\bh_\bl to clear the
3069                  scree at the end of each page (or output a formfeed after each mes-
3070                  sage).   Both  of  these  switches (and their inverse counterparts)
3071                  take effect only if the  profile  entry  _\bm_\bo_\br_\be_\bp_\br_\bo_\bc  is  defined  but
3072                  empty,  and _\bm_\bh_\bl is outputting to a terminal.  If the _\bm_\bo_\br_\be_\bp_\br_\bo_\bc entry
3073                  is defined and non-empty, and _\bm_\bh_\bl is outputting to a terminal, then
3074                  _\bm_\bh_\bl  will  cause the _\bm_\bo_\br_\be_\bp_\br_\bo_\bc to be placed between the terminal and
3075                  _\bm_\bh_\bl and the switches are ignored.   Furthermore,  if  the  `-clear'
3076                  switch is used and _\bm_\bh_\bl'_\bs output is directed to a terminal, then _\bm_\bh_\bl
3077                  will consult the $TERM and $TERMCAP envariables  to  determine  the
3078                  user's  terminal type in order to find out how to clear the screen.
3079                  If the `-clear' switch is used and _\bm_\bh_\bl'_\bs output is not directed  to
3080                  a  terminal (e.g., a pipe or a file), then _\bm_\bh_\bl will send a formfeed
3081                  after each message.
3082
3083                  To override the default _\bm_\bo_\br_\be_\bp_\br_\bo_\bc and the  profile  entry,  use  the
3084                  `-moreproc program'  switch.   Note  that  _\bm_\bh_\bl  will  never start a
3085                  _\bm_\bo_\br_\be_\bp_\br_\bo_\bc if invoked on a hardcopy terminal.
3086
3087                  The `-length length' and `-width width'  switches  set  the  screen
3088                  length  and width, respectively.  These default to the values indi-
3089                  cated by $TERMCAP, if appropriate, otherwise they default to 40 and
3090                  80, respectively.
3091
3092                  The default format file used by _\bm_\bh_\bl is called _\bm_\bh_\bl._\bf_\bo_\br_\bm_\ba_\bt (which  is
3093                  first  searched  for in the user's _\bM_\bH directory, and then sought in
3094                  the /_\bu_\bs_\br/_\bl_\bo_\bc_\ba_\bl/_\bl_\bi_\bb/_\bm_\bh directory), this can be changed by using  the
3095                  `-form formatfile' switch.
3096
3097             [mh.6]                           MH.6.8                      UCI version
3098
3099
3100
3101
3102
3103
3104
3105
3106
3107             MHL(1)                            -47-                            MHL(1)
3108
3109
3110                  Finally, the `-folder +folder' switch  sets  the  _\bM_\bH  folder  name,
3111                  which  is  used  for the "messagename:" field described below.  The
3112                  envariable $mhfolder is consulted  for  the  default  value,  which
3113                  _\bs_\bh_\bo_\bw, _\bn_\be_\bx_\bt, and _\bp_\br_\be_\bv initialize appropriately.
3114
3115                  _\bM_\bh_\bl operates in two phases: 1) read and parse the format file,  and
3116                  2)  process  each  message  (file).   During  phase  1, an internal
3117                  description of the format is produced as  a  structured  list.   In
3118                  phase  2,  this list is walked for each message, outputting message
3119                  information under the format constraints from the format file.
3120
3121                  The "mhl.format" form file contains information controlling  screen
3122                  clearing,  screen size, wrap-around control, transparent text, com-
3123                  ponent ordering, and component formatting.  Also, a  list  of  com-
3124                  ponents  to ignore may be specified, and a couple of "special" com-
3125                  ponents are defined to provide added functionality.  Message output
3126                  will be in the order specified by the order in the format file.
3127
3128                  Each line of mhl.format has one of the formats:
3129
3130                       ;comment
3131                       :cleartext
3132                       variable[,variable...]
3133                       component:[variable,...]
3134
3135                  A line beginning with a `;' is a comment, and is ignored.   A  line
3136                  beginning with a `:' is clear text, and is output exactly as is.  A
3137                  line containing only a `:' produces a blank line in the output.   A
3138                  line  beginning with "component:" defines the format for the speci-
3139                  fied component, and finally,  remaining  lines  define  the  global
3140                  environment.
3141
3142                  For example, the line:
3143
3144                       width=80,length=40,clearscreen,overflowtext="***",overflowoffset=5
3145
3146                  defines the screen size to be 80 columns by 40 rows, specifies that
3147                  the screen should be cleared prior to each page, that the  overflow
3148                  indentation  is  5,  and  that overflow text should be flagged with
3149                  "***".
3150
3151                  Following are all of the current variables and their arguments.  If
3152                  they  follow a component, they apply only to that component, other-
3153                  wise, their affect is global.  Since the  whole  format  is  parsed
3154                  before  any output processing, the last global switch setting for a
3155                  variable applies to the whole message if that variable is used in a
3156                  global context (i.e., bell, clearscreen, width, length).
3157
3158                       _\bv_\ba_\br_\bi_\ba_\bb_\bl_\be       _\bt_\by_\bp_\be       _\bs_\be_\bm_\ba_\bn_\bt_\bi_\bc_\bs
3159                       width          integer    screen width or component width
3160                       length         integer    screen length or component length
3161                       offset         integer    positions to indent "component: "
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                       overflowtext   string     text to use at the beginning of an
3177                                                 overflow line
3178                       overflowoffset integer    positions to indent overflow lines
3179                       compwidth      integer    positions to indent component text
3180                                                 after the first line is output
3181                       uppercase      flag       output text of this component in all
3182                                                 upper case
3183                       nouppercase    flag       don't uppercase
3184                       clearscreen    flag/G     clear the screen prior to each page
3185                       noclearscreen  flag/G     don't clearscreen
3186                       bell           flag/G     ring the bell at the end of each page
3187                       nobell         flag/G     don't bell
3188                       component      string/L   name to use instead of "component" for
3189                                                 this component
3190                       nocomponent    flag       don't output "component: " for this
3191                                                 component
3192                       center         flag       center component on line (works for
3193                                                 one-line components only)
3194                       nocenter       flag       don't center
3195                       leftadjust     flag       strip off leading whitespace on each
3196                                                 line of text
3197                       noleftadjust   flag       don't leftadjust
3198                       compress       flag       change newlines in text to spaces
3199                       nocompress     flag       don't compress
3200                       split          flag       don't combine multiple fields into a single field
3201                       nosplit        flag       combine multiple fields into a single field
3202                       newline        flag       print newline at end of components (default)
3203                       nonewline      flag       don't print newline at end of components
3204                       formatfield    string     format string for this component (see below)
3205                       addrfield      flag       field contains addresses
3206                       datefield      flag       field contains dates
3207
3208                  To specify the value of integer-valued and string-valued variables,
3209                  follow   their   name   with   an   equals-sign   and   the  value.
3210                  Integer-valued  variables   are   given   decimal   values,   while
3211                  string-valued  variables  are  given  arbitrary  text  bracketed by
3212                  double-quotes.  If a value is suffixed by "/G" or  "/L",  then  its
3213                  value  is  useful  in  a global-only or local-only context (respec-
3214                  tively).
3215
3216                  A line of the form:
3217
3218                      ignores=component,...
3219
3220                  specifies a list of components which are never output.
3221
3222                  The component  "MessageName"  (case-insensitive)  will  output  the
3223                  actual  message name (file name) preceded by the folder name if one
3224                  is specified or found in the environment.  The format is  identical
3225                  to that produced by the `-header' option to _\bs_\bh_\bo_\bw.
3226
3227                  The component "Extras" will output all of  the  components  of  the
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                  message  which were not matched by explicit components, or included
3243                  in the ignore list.  If this component is not specified, an  ignore
3244                  list  is  not  needed  since  all  non-specified components will be
3245                  ignored.
3246
3247                  If "nocomponent" is NOT specified, then the component name will  be
3248                  output as it appears in the format file.
3249
3250                  The default format is:
3251
3252                       : -- using template mhl.format --
3253                       overflowtext="***",overflowoffset=5
3254                       leftadjust,compwidth=9
3255                       ignores=msgid,message-id,received
3256                       Date:formatfield="%<(nodate{text})%{text}%|%(pretty{text})%>"
3257                       To:
3258                       cc:
3259                       :
3260                       From:
3261                       Subject:
3262                       :
3263                       extras:nocomponent
3264                       :
3265                       body:nocomponent,overflowtext=,overflowoffset=0,noleftadjust
3266
3267                  The  variable  "formatfield"  specifies  a   format   string   (see
3268                  _\bm_\bh-_\bf_\bo_\br_\bm_\ba_\bt (5)).   The  flag  variables  "addrfield" and "datefield"
3269                  (which are mutually exclusive), tell _\bm_\bh_\bl to interpret  the  escapes
3270                  in the format string as either addresses or dates, respectively.
3271
3272                  By default, _\bm_\bh_\bl does not apply any formatting string to fields con-
3273                  taining  address  or  dates  (see  _\bm_\bh-_\bm_\ba_\bi_\bl (5)  for a list of these
3274                  fields).  Note that this results in faster operation since _\bm_\bh_\bl must
3275                  parse both addresses and dates in order to apply a format string to
3276                  them.  If desired, _\bm_\bh_\bl can be given a  default  format  string  for
3277                  either  address  or  date  fields (but not both).  To do this, on a
3278                  global line specify: either the flag addrfield or datefield,  along
3279                  with the apropriate formatfield variable string.
3280
3281             _\bF_\bi_\bl_\be_\bs
3282                  /usr/local/lib/mh/mhl.format        The message template
3283                  or <mh-dir>/mhl.format              Rather than the standard template
3284                  $HOME/.mh_profile                   The user profile
3285
3286
3287             _\bP_\br_\bo_\bf_\bi_\bl_\be _\bC_\bo_\bm_\bp_\bo_\bn_\be_\bn_\bt_\bs
3288                  moreproc:            Program to use as interactive front-end
3289
3290
3291             _\bS_\be_\be _\bA_\bl_\bs_\bo
3292                  show(1), ap(8), dp(8)
3293
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             _\bD_\be_\bf_\ba_\bu_\bl_\bt_\bs
3309                  `-bell'
3310                  `-noclear'
3311                  `-length 40'
3312                  `-width 80'
3313
3314
3315             _\bC_\bo_\bn_\bt_\be_\bx_\bt
3316                  None
3317
3318
3319             _\bB_\bu_\bg_\bs
3320                  There should be some way to pass `bell' and `clear' information  to
3321                  the front-end.
3322
3323                  On hosts where _\bM_\bH was configured  with  the  BERK  option,  address
3324                  parsing is not enabled.
3325
3326                  The "nonewline" option interacts badly with "compress" and "split".
3327
3328
3329
3330
3331
3332
3333
3334
3335
3336
3337
3338
3339
3340
3341
3342
3343
3344
3345
3346
3347
3348
3349
3350
3351
3352
3353
3354
3355
3356
3357
3358
3359
3360
3361             [mh.6]                           MH.6.8                      UCI version
3362
3363
3364
3365
3366
3367
3368
3369
3370
3371             MHMAIL(1)                         -51-                         MHMAIL(1)
3372
3373
3374             _\bN_\bA_\bM_\bE
3375                  mhmail - send or read mail
3376
3377             _\bS_\bY_\bN_\bO_\bP_\bS_\bI_\bS
3378                  mhmail [ addrs ... [-body text] [-cc addrs ...] [-from addr]
3379                       [-subject subject]] [-help]
3380
3381             _\bD_\bE_\bS_\bC_\bR_\bI_\bP_\bT_\bI_\bO_\bN
3382
3383                  _\bM_\bH_\bm_\ba_\bi_\bl is intended as a replacement for the standard Bell mail pro-
3384                  gram  (_\bb_\be_\bl_\bl_\bm_\ba_\bi_\bl (1)),  compatible  with  _\bM_\bH.   When invoked without
3385                  arguments, it simply invokes _\bi_\bn_\bc (1) to  incorporate  new  messages
3386                  from  the  user's maildrop.  When one or more users is specified, a
3387                  message is read from the standard input and spooled to a  temporary
3388                  file.   _\bM_\bH_\bm_\ba_\bi_\bl then invokes _\bp_\bo_\bs_\bt (8) with the name of the temporary
3389                  file as its argument to deliver the message to the specified user.
3390
3391                  The `-subject subject' switch can be used to specify the "Subject:"
3392                  field  of  the  message.   The  `-body text'  switch can be used to
3393                  specify the text of the message; if it is specified, then the stan-
3394                  dard input is not read.  Normally, addresses appearing as arguments
3395                  are put in the "To:" field.  If  the  `-cc'  switch  is  used,  all
3396                  addresses following it are placed in the "cc:" field.
3397
3398                  By using `-from addr', you can specify the "From:"  header  of  the
3399                  draft.    Naturally,   _\bp_\bo_\bs_\bt   will  fill-in  the  "Sender:"  header
3400                  correctly.
3401
3402                  This program is intended for the use of programs  such  as  _\ba_\bt (1),
3403                  which  expect  to  send  mail automatically to various users.  Nor-
3404                  mally, real people (as opposed to the "unreal" ones) will prefer to
3405                  use _\bc_\bo_\bm_\bp (1) and _\bs_\be_\bn_\bd (1) to send messages.
3406
3407             _\bF_\bi_\bl_\be_\bs
3408                  /usr/local/inc                      Program to incorporate a maildrop into a folder
3409                  /usr/local/lib/mh/post              Program to deliver a message
3410                  /tmp/mhmail*                        Temporary copy of message
3411
3412
3413             _\bP_\br_\bo_\bf_\bi_\bl_\be _\bC_\bo_\bm_\bp_\bo_\bn_\be_\bn_\bt_\bs
3414                  None
3415
3416
3417             _\bS_\be_\be _\bA_\bl_\bs_\bo
3418                  inc(1), post(8)
3419
3420
3421             _\bD_\be_\bf_\ba_\bu_\bl_\bt_\bs
3422                  None
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             _\bC_\bo_\bn_\bt_\be_\bx_\bt
3441                  If _\bi_\bn_\bc is invoked, then _\bi_\bn_\bc's context changes occur.
3442
3443
3444
3445
3446
3447
3448
3449
3450
3451
3452
3453
3454
3455
3456
3457
3458
3459
3460
3461
3462
3463
3464
3465
3466
3467
3468
3469
3470
3471
3472
3473
3474
3475
3476
3477
3478
3479
3480
3481
3482
3483
3484
3485
3486
3487
3488
3489
3490
3491
3492
3493             [mh.6]                           MH.6.8                      UCI version
3494
3495
3496
3497
3498
3499
3500
3501
3502
3503             MHOOK(1)                          -53-                          MHOOK(1)
3504
3505
3506             _\bN_\bA_\bM_\bE
3507                  mhook, rcvdist, rcvpack, rcvtty  - MH receive-mail hooks
3508
3509             _\bS_\bY_\bN_\bO_\bP_\bS_\bI_\bS
3510                  /usr/local/lib/mh/rcvdist [-form formfile] [switches for _\bp_\bo_\bs_\bt_\bp_\br_\bo_\bc]
3511                       address ...  [-help]
3512
3513                  /usr/local/lib/mh/rcvpack file [-help]
3514
3515                  /usr/local/lib/mh/rcvtty [command] [-form formatfile]
3516                       [-format string] [-bell] [-nobell] [-newline] [-nonewline]
3517                       [-biff] [-help]
3518
3519             _\bD_\bE_\bS_\bC_\bR_\bI_\bP_\bT_\bI_\bO_\bN
3520
3521                  A receive-mail hook is a program that is run whenever you receive a
3522                  mail message.  You do NOT invoke the hook yourself, rather the hook
3523                  is invoked on your behalf by your system's Message Transport Agent.
3524                  See _\bs_\bl_\bo_\bc_\ba_\bl (1) for details on how to activate receive-mail hooks on
3525                  your system.
3526
3527                  Four programs are  currently  available  as  part  of  _\bM_\bH,  _\br_\bc_\bv_\bd_\bi_\bs_\bt
3528                  (redistribute  incoming messages to additional recipients), _\br_\bc_\bv_\bp_\ba_\bc_\bk
3529                  (save incoming messages in a _\bp_\ba_\bc_\bk_\bf'd file), and _\br_\bc_\bv_\bt_\bt_\by (notify user
3530                  of   incoming  messages).   The  fourth  program,  _\br_\bc_\bv_\bs_\bt_\bo_\br_\be (1)  is
3531                  described separately.  They all reside  in  the  /_\bu_\bs_\br/_\bl_\bo_\bc_\ba_\bl/_\bl_\bi_\bb/_\bm_\bh/
3532                  directory.
3533
3534                  The _\br_\bc_\bv_\bd_\bi_\bs_\bt program will resend a copy of the message to all of the
3535                  addresses  listed  on  its command line.  It uses the format string
3536                  facility described in _\bm_\bh-_\bf_\bo_\br_\bm_\ba_\bt (5).
3537
3538                  The _\br_\bc_\bv_\bp_\ba_\bc_\bk program will append a copy of the message to  the  file
3539                  listed  on  its  command  line.  Its use is obsoleted by the "file"
3540                  action of _\bs_\bl_\bo_\bc_\ba_\bl.
3541
3542                  The _\br_\bc_\bv_\bt_\bt_\by program executes the named file with the message as  its
3543                  standard input, and writes the resulting output on your terminal.
3544
3545                  If no file is specified,  or  is  bogus,  etc.,  then  _\br_\bc_\bv_\bt_\bt_\by  will
3546                  instead    write    a    one-line   scan   listing.    Either   the
3547                  `-form formatfile' or `-format string' option may be used to  over-
3548                  ride  the  default output format (see _\bm_\bh-_\bf_\bo_\br_\bm_\ba_\bt (5)).  A newline is
3549                  output before the message output, and the  terminal  bell  is  rung
3550                  after  the  output.   The  `-nonewline'  and `-nobell' options will
3551                  inhibit these functions.
3552
3553                  In addition to the  standard  _\bm_\bh-_\bf_\bo_\br_\bm_\ba_\bt (5)  escapes,  _\br_\bc_\bv_\bt_\bt_\by  also
3554                  recognizes the following additional _\bc_\bo_\bm_\bp_\bo_\bn_\be_\bn_\bt escapes:
3555
3556
3557
3558
3559             [mh.6]                           MH.6.8                      UCI version
3560
3561
3562
3563
3564
3565
3566
3567
3568
3569             MHOOK(1)                          -54-                          MHOOK(1)
3570
3571
3572                  _\bE_\bs_\bc_\ba_\bp_\be    _\bR_\be_\bt_\bu_\br_\bn_\bs  _\bD_\be_\bs_\bc_\br_\bi_\bp_\bt_\bi_\bo_\bn
3573                  body      string   the (compressed) first part of the body
3574                  dtimenow  date     the current date
3575                  folder    string   the name of the current folder
3576
3577                  Normally, _\br_\bc_\bv_\bt_\bt_\by obeys write permission  as  granted  by  _\bm_\be_\bs_\bg (1).
3578                  With  the  `-biff' option, _\br_\bc_\bv_\bt_\bt_\by will obey the notification status
3579                  set by _\bb_\bi_\bf_\bf (1) instead.  If the terminal access daemon  (TTYD)  is
3580                  available  on  your system, then _\br_\bc_\bv_\bt_\bt_\by will give its output to the
3581                  daemon for output instead of writing on the user's terminal.
3582
3583             _\bF_\bi_\bl_\be_\bs
3584                  /usr/local/lib/mh/mtstailor         tailor file
3585                  $HOME/.maildelivery                 The file controlling local delivery
3586                  /usr/local/lib/mh/maildelivery      Rather than the standard file
3587
3588
3589             _\bS_\be_\be _\bA_\bl_\bs_\bo
3590                  rcvstore (1), mh-format(5), slocal(1)
3591
3592
3593             _\bB_\bu_\bg_\bs
3594                  Only two return codes are meaningful, others should be.
3595
3596
3597
3598
3599
3600
3601
3602
3603
3604
3605
3606
3607
3608
3609
3610
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             MHPARAM(1)                        -55-                        MHPARAM(1)
3636
3637
3638             _\bN_\bA_\bM_\bE
3639                  mhparam - print MH profile components
3640
3641             _\bS_\bY_\bN_\bO_\bP_\bS_\bI_\bS
3642                  mhparam [components] [-all] [-component] [-nocomponent] [-help]
3643
3644             _\bD_\bE_\bS_\bC_\bR_\bI_\bP_\bT_\bI_\bO_\bN
3645
3646                  _\bM_\bh_\bp_\ba_\br_\ba_\bm writes the value of the specified profile component to  the
3647                  standard output separated by newlines.  If the profile component is
3648                  not present, the default value (or nothing if there is no  default)
3649                  is printed.
3650
3651                  If more than one component is specified in the  `components'  list,
3652                  the  component  value is preceded by the component name.  If `-com-
3653                  ponent' is specified, the component name  is  displayed  even  when
3654                  only  one  component is specified.  If `-nocomponent' is specified,
3655                  the component name is not displayed even when more  than  one  com-
3656                  ponent is specified.
3657
3658                  If `-all' is specified,  all  components  if  the  MH  profile  are
3659                  displayed and other arguments are ignored.
3660
3661                  Examples:
3662
3663                       % mhparam path
3664                       Mail
3665
3666                       % mhparam mhlproc
3667                       /usr/local/lib/mh/mhl
3668
3669                       % mhparam -component path
3670                       Path:       Mail
3671
3672                       % mhparam AliasFile rmmproc
3673                       AliasFile:  aliases
3674                       rmmproc:    rmmproc
3675
3676                       % mhparam -nocomponent AliasFile rmmproc
3677                       aliases
3678                       rmmproc
3679
3680                  _\bM_\bh_\bp_\ba_\br_\ba_\bm is also useful in back-quoted operations:
3681
3682                       % fgrep cornell.edu `mhpath +`/`mhparam aliasfile`
3683
3684
3685             _\bF_\bi_\bl_\be_\bs
3686                  $HOME/.mh_profile                   The user profile
3687
3688
3689
3690
3691             [mh.6]                           MH.6.8                      UCI version
3692
3693
3694
3695
3696
3697
3698
3699
3700
3701             MHPARAM(1)                        -56-                        MHPARAM(1)
3702
3703
3704             _\bS_\be_\be _\bA_\bl_\bs_\bo
3705                  mh-profile(5)
3706
3707
3708             _\bD_\be_\bf_\ba_\bu_\bl_\bt_\bs
3709                  `-nocomponent' if only one component is specified
3710                  `-component' if more than one component is specified
3711                  `components' defaults to none
3712
3713
3714             _\bC_\bo_\bn_\bt_\be_\bx_\bt
3715                  None
3716
3717
3718
3719
3720
3721
3722
3723
3724
3725
3726
3727
3728
3729
3730
3731
3732
3733
3734
3735
3736
3737
3738
3739
3740
3741
3742
3743
3744
3745
3746
3747
3748
3749
3750
3751
3752
3753
3754
3755
3756
3757             [mh.6]                           MH.6.8                      UCI version
3758
3759
3760
3761
3762
3763
3764
3765
3766
3767             MHPATH(1)                         -57-                         MHPATH(1)
3768
3769
3770             _\bN_\bA_\bM_\bE
3771                  mhpath - print full pathnames of MH messages and folders
3772
3773             _\bS_\bY_\bN_\bO_\bP_\bS_\bI_\bS
3774                  mhpath [+folder] [msgs] [-help]
3775
3776             _\bD_\bE_\bS_\bC_\bR_\bI_\bP_\bT_\bI_\bO_\bN
3777
3778                  _\bM_\bh_\bp_\ba_\bt_\bh expands and sorts the message list  `msgs'  and  writes  the
3779                  full  pathnames of the messages to the standard output separated by
3780                  newlines.  If no `msgs' are specified, _\bm_\bh_\bp_\ba_\bt_\bh  outputs  the  folder
3781                  pathname  instead.   If  the  only argument is `+', your MH _\bP_\ba_\bt_\bh is
3782                  output; this can be useful is shell scripts.
3783
3784                  Contrasted with other MH commands, a message argument to _\bm_\bh_\bp_\ba_\bt_\bh may
3785                  often be intended for _\bw_\br_\bi_\bt_\bi_\bn_\bg.  Because of this:
3786
3787                  1) the name "new" has been added to _\bm_\bh_\bp_\ba_\bt_\bh's list of reserved  mes-
3788                  sage  names (the others are "first", "last", "prev", "next", "cur",
3789                  and "all").  The new message is equivalent to the message after the
3790                  last  message  in a folder (and equivalent to 1 in a folder without
3791                  messages).  The "new" message may not be used as part of a  message
3792                  range.
3793
3794                  2) Within a message list, the following designations may  refer  to
3795                  messages that do not exist: a single numeric message name, the sin-
3796                  gle message name "cur", and (obviously)  the  single  message  name
3797                  "new".   All  other message designations must refer to at least one
3798                  existing message.
3799
3800                  3) An empty folder is not in itself an error.
3801
3802                  Message numbers greater than the  highest  existing  message  in  a
3803                  folder  as  part  of a range designation are replaced with the next
3804                  free message number.
3805
3806                  Examples: The current folder foo contains messages 3 5 6.   Cur  is
3807                  4.
3808
3809                       % mhpath
3810                       /r/phyl/Mail/foo
3811
3812                       % mhpath all
3813                       /r/phyl/Mail/foo/3
3814                       /r/phyl/Mail/foo/5
3815                       /r/phyl/Mail/foo/6
3816
3817                       % mhpath 2001
3818                       /r/phyl/Mail/foo/7
3819
3820                       % mhpath 1-2001
3821                       /r/phyl/Mail/foo/3
3822
3823             [mh.6]                           MH.6.8                      UCI version
3824
3825
3826
3827
3828
3829
3830
3831
3832
3833             MHPATH(1)                         -58-                         MHPATH(1)
3834
3835
3836                       /r/phyl/Mail/foo/5
3837                       /r/phyl/Mail/foo/6
3838
3839                       % mhpath new
3840                       /r/phyl/Mail/foo/7
3841
3842                       % mhpath last new
3843                       /r/phyl/Mail/foo/6
3844                       /r/phyl/Mail/foo/7
3845
3846                       % mhpath last-new
3847                       bad message list "last-new".
3848
3849                       % mhpath cur
3850                       /r/phyl/Mail/foo/4
3851
3852                       % mhpath 1-2
3853                       no messages in range "1-2".
3854
3855                       % mhpath first:2
3856                       /r/phyl/Mail/foo/3
3857                       /r/phyl/Mail/foo/5
3858
3859                       % mhpath 1 2
3860                       /r/phyl/Mail/foo/1
3861                       /r/phyl/Mail/foo/2
3862
3863                  _\bM_\bH_\bp_\ba_\bt_\bh is also useful in back-quoted operations:
3864
3865                       % cd `mhpath +inbox`
3866
3867                       % echo `mhpath +`
3868                       /r/phyl/Mail
3869
3870             _\bF_\bi_\bl_\be_\bs
3871                  $HOME/.mh_profile                   The user profile
3872
3873
3874             _\bP_\br_\bo_\bf_\bi_\bl_\be _\bC_\bo_\bm_\bp_\bo_\bn_\be_\bn_\bt_\bs
3875                  Path:                To determine the user's MH directory
3876                  Current-Folder:      To find the default current folder
3877
3878
3879             _\bS_\be_\be _\bA_\bl_\bs_\bo
3880                  folder(1)
3881
3882
3883             _\bD_\be_\bf_\ba_\bu_\bl_\bt_\bs
3884                  `+folder' defaults to the current folder
3885                  `msgs' defaults to none
3886
3887
3888
3889             [mh.6]                           MH.6.8                      UCI version
3890
3891
3892
3893
3894
3895
3896
3897
3898
3899             MHPATH(1)                         -59-                         MHPATH(1)
3900
3901
3902             _\bC_\bo_\bn_\bt_\be_\bx_\bt
3903                  None
3904
3905
3906             _\bB_\bu_\bg_\bs
3907                  Like all MH commands, _\bm_\bh_\bp_\ba_\bt_\bh expands and sorts  [msgs].   So  don't
3908                  expect
3909
3910                       mv `mhpath 501 500`
3911
3912                  to move 501 to 500.  Quite the reverse.  But
3913
3914                       mv `mhpath 501` `mhpath 500`
3915
3916                  will do the trick.
3917
3918                  Out of range message 0 is treated far more severely than large  out
3919                  of range message numbers.
3920
3921
3922
3923
3924
3925
3926
3927
3928
3929
3930
3931
3932
3933
3934
3935
3936
3937
3938
3939
3940
3941
3942
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             MSGCHK(1)                         -60-                         MSGCHK(1)
3966
3967
3968             _\bN_\bA_\bM_\bE
3969                  msgchk - check for messages
3970
3971             _\bS_\bY_\bN_\bO_\bP_\bS_\bI_\bS
3972                  msgchk [-date] [-nodate] [-notify all/mail/nomail]
3973                       [-nonotify all/mail/nomail] [users ...] [-help]
3974
3975             _\bD_\bE_\bS_\bC_\bR_\bI_\bP_\bT_\bI_\bO_\bN
3976
3977                  The _\bm_\bs_\bg_\bc_\bh_\bk program checks all known mail drops for mail waiting for
3978                  you.  For those drops which have mail for you, _\bm_\bs_\bg_\bc_\bh_\bk will indicate
3979                  if it believes that you have seen the mail in question before.
3980
3981                  The `-notify type' switch indicates under what circumstances _\bm_\bs_\bg_\bc_\bh_\bk
3982                  should  produce a message.  The default is `-notify all' which says
3983                  that _\bm_\bs_\bg_\bc_\bh_\bk should always report the status of the users  maildrop.
3984                  Other  values  for  `type'  include  `mail'  which says that _\bm_\bs_\bg_\bc_\bh_\bk
3985                  should report the status of waiting mail; and, `nomail' which  says
3986                  that  _\bm_\bs_\bg_\bc_\bh_\bk  should  report  the  status  of empty maildrops.  The
3987                  `-nonotify type' switch has the inverted sense, so  `-nonotify all'
3988                  directs  _\bm_\bs_\bg_\bc_\bh_\bk  to  never report the status of maildrops.  This is
3989                  useful if the  user  wishes  to  check  _\bm_\bs_\bg_\bc_\bh_\bk's  exit  status.   A
3990                  non-zero  exit  status  indicates  that mail was not waiting for at
3991                  least one of the indicated users.
3992
3993                  If _\bm_\bs_\bg_\bc_\bh_\bk produces output, then the `-date' switch  directs  _\bm_\bs_\bg_\bc_\bh_\bk
3994                  to  print  out  the  last date mail was read, if this can be deter-
3995                  mined.
3996
3997             _\bF_\bi_\bl_\be_\bs
3998                  $HOME/.mh_profile                   The user profile
3999                  /usr/local/lib/mh/mtstailor         tailor file
4000                  /usr/spool/mail/$USER               Location of mail drop
4001
4002
4003             _\bP_\br_\bo_\bf_\bi_\bl_\be _\bC_\bo_\bm_\bp_\bo_\bn_\be_\bn_\bt_\bs
4004                  None
4005
4006
4007             _\bS_\be_\be _\bA_\bl_\bs_\bo
4008                  inc(1)
4009
4010
4011             _\bD_\be_\bf_\ba_\bu_\bl_\bt_\bs
4012                  `user' defaults to the current user
4013                  `-date'
4014                  `-notify all'
4015
4016
4017             _\bC_\bo_\bn_\bt_\be_\bx_\bt
4018                  None
4019
4020
4021             [mh.6]                           MH.6.8                      UCI version
4022
4023
4024
4025
4026
4027
4028
4029
4030
4031             MSGCHK(1)                         -61-                         MSGCHK(1)
4032
4033
4034             _\bN_\bA_\bM_\bE
4035                  msh - MH shell (and BBoard reader)
4036
4037             _\bS_\bY_\bN_\bO_\bP_\bS_\bI_\bS
4038                  msh [-prompt string] [-scan] [-noscan] [-topcur] [-notopcur] [file]
4039                       [-help]
4040
4041             _\bD_\bE_\bS_\bC_\bR_\bI_\bP_\bT_\bI_\bO_\bN
4042
4043                  _\bm_\bs_\bh is an interactive program that implements a subset of the  nor-
4044                  mal _\bM_\bH commands operating on a single file in _\bp_\ba_\bc_\bk_\bf'd format.  That
4045                  is, _\bm_\bs_\bh is used to read a file that contains a number of  messages,
4046                  as  opposed  to the standard _\bM_\bH style of reading a number of files,
4047                  each file being a separate message in a folder.  _\bm_\bs_\bh's chief advan-
4048                  tage is that the normal _\bM_\bH style does not allow a file to have more
4049                  than one message in it.  Hence, _\bm_\bs_\bh is ideal for  reading  _\bB_\bB_\bo_\ba_\br_\bd_\bs,
4050                  as  these  files are delivered by the transport system in this for-
4051                  mat.  In addition, _\bm_\bs_\bh can be used on other files, such as  message
4052                  archives  which  have been _\bp_\ba_\bc_\bked (see _\bp_\ba_\bc_\bk_\bf (1)).  Finally, _\bm_\bs_\bh is
4053                  an excellent _\bM_\bH tutor.  As the only commands available to the  user
4054                  are  _\bM_\bH  commands,  this  allows _\bM_\bH beginners to concentrate on how
4055                  commands to _\bM_\bH are formed and (more or less) what they mean.
4056
4057                  When invoked, _\bm_\bs_\bh reads the named file, and enters a command  loop.
4058                  The  user  may type most of the normal _\bM_\bH commands.  The syntax and
4059                  semantics of these commands typed to _\bm_\bs_\bh are identical to their  _\bM_\bH
4060                  counterparts.   In  cases  where  the nature of _\bm_\bs_\bh would be incon-
4061                  sistent (e.g., specifying a `+folder' with some commands), _\bm_\bs_\bh will
4062                  duly inform the user.  The commands that _\bm_\bs_\bh currently supports (in
4063                  some slightly modified or restricted forms) are:
4064
4065                       ali
4066                       burst
4067                       comp
4068                       dist
4069                       folder
4070                       forw
4071                       inc
4072                       mark
4073                       mhmail
4074                       msgchk
4075                       next
4076                       packf
4077                       pick
4078                       prev
4079                       refile
4080                       repl
4081                       rmm
4082                       scan
4083                       send
4084                       show
4085                       sortm
4086
4087             [mh.6]                           MH.6.8                      UCI version
4088
4089
4090
4091
4092
4093
4094
4095
4096
4097             MSH(1)                            -62-                            MSH(1)
4098
4099
4100                       whatnow
4101                       whom
4102
4103                  In addition, _\bm_\bs_\bh has a "help" command which gives a brief overview.
4104                  To  terminate  _\bm_\bs_\bh, type CTRL-D, or use the "quit" command.  If _\bm_\bs_\bh
4105                  is being invoked from _\bb_\bb_\bc, then typing CTRL-D will also tell _\bb_\bb_\bc to
4106                  exit as well, while using the "quit" command will return control to
4107                  _\bb_\bb_\bc, and _\bb_\bb_\bc will continue examining the list of BBoards that it is
4108                  scanning.
4109
4110                  If the file is writable and has been modified,  then  using  "quit"
4111                  will query the user if the file should be updated.
4112
4113                  The `-prompt string' switch sets the prompting string for _\bm_\bs_\bh.
4114
4115                  You may wish to use an alternate _\bM_\bH profile for the  commands  that
4116                  _\bm_\bs_\bh  executes; see _\bm_\bh-_\bp_\br_\bo_\bf_\bi_\bl_\be (5) for details about the $MH envari-
4117                  able.
4118
4119                  When invoked from _\bb_\bb_\bc, two special features are enabled: First, the
4120                  `-scan' switch directs _\bm_\bs_\bh to do a `scan unseen' on start-up if new
4121                  items are present in the BBoard.  This feature is  best  used  from
4122                  _\bb_\bb_\bc,  which  correctly sets the stage.  Second, the _\bm_\ba_\br_\bk command in
4123                  _\bm_\bs_\bh acts specially when you are reading a BBoard,  since  _\bm_\bs_\bh  will
4124                  consult the sequence "unseen" in determining what messages you have
4125                  actually read.  When _\bm_\bs_\bh exits, it reports this information to _\bb_\bb_\bc.
4126                  In  addition,  if  you give the _\bm_\ba_\br_\bk command with no arguments, _\bm_\bs_\bh
4127                  will interpret  it  as  `mark -sequence unseen -delete -nozero all'
4128                  Hence,  to discard all of the messages in the current BBoard you're
4129                  reading, just use the _\bm_\ba_\br_\bk command with no arguments.
4130
4131                  Normally, the "exit" command is identical to the "quit" command  in
4132                  _\bm_\bs_\bh.   When  run  under _\bb_\bb_\bc however, "exit" directs _\bm_\bs_\bh to mark all
4133                  messages as seen and then "quit".  For speedy type-in, this command
4134                  is often abbreviated as just "e".
4135
4136                  When invoked from _\bv_\bm_\bh, another  special  feature  is  enabled:  The
4137                  `topcur' switch directs _\bm_\bs_\bh to have the current message "track" the
4138                  top line of the _\bv_\bm_\bh scan window.  Normally,  _\bm_\bs_\bh  has  the  current
4139                  message  "track" the center of the window (under `-notopcur', which
4140                  is the default).
4141
4142                  _\bm_\bs_\bh supports an output redirection facility.  Commands may be  fol-
4143                  lowed by one of
4144
4145                       > _\bf_\bi_\bl_\be     write output to _\bf_\bi_\bl_\be
4146                       >> _\bf_\bi_\bl_\be    append output to _\bf_\bi_\bl_\be
4147                       | _\bc_\bo_\bm_\bm_\ba_\bn_\bd  pipe output to UNIX _\bc_\bo_\bm_\bm_\ba_\bn_\bd
4148
4149                  If _\bf_\bi_\bl_\be starts with a `~' (tilde), then a _\bc_\bs_\bh-like expansion  takes
4150                  place.  Note that _\bc_\bo_\bm_\bm_\ba_\bn_\bd is interpreted by _\bs_\bh (1).  Also note that
4151                  _\bm_\bs_\bh does NOT support history substitutions, variable substitutions,
4152
4153             [mh.6]                           MH.6.8                      UCI version
4154
4155
4156
4157
4158
4159
4160
4161
4162
4163             MSH(1)                            -63-                            MSH(1)
4164
4165
4166                  or alias substitutions.
4167
4168                  When parsing commands to the left of any  redirection  symbol,  _\bm_\bs_\bh
4169                  will honor `\' (back-slash) as the quote next-character symbol, and
4170                  `"' (double-quote)  as  quote-word  delimiters.   All  other  input
4171                  tokens are separated by whitespace (spaces and tabs).
4172
4173             _\bF_\bi_\bl_\be_\bs
4174                  $HOME/.mh_profile                   The user profile
4175                  /usr/local/lib/mh/mtstailor         tailor file
4176
4177
4178             _\bP_\br_\bo_\bf_\bi_\bl_\be _\bC_\bo_\bm_\bp_\bo_\bn_\be_\bn_\bt_\bs
4179                  Path:                To determine the user's MH directory
4180                  Msg-Protect:         To set mode when creating a new `file'
4181                  fileproc:            Program to file messages
4182                  showproc:            Program to show messages
4183
4184
4185             _\bS_\be_\be _\bA_\bl_\bs_\bo
4186                  bbc(1)
4187
4188
4189             _\bD_\be_\bf_\ba_\bu_\bl_\bt_\bs
4190                  `file' defaults to "./msgbox"
4191                  `-prompt (msh) '
4192                  `-noscan'
4193                  `-notopcur'
4194
4195
4196             _\bC_\bo_\bn_\bt_\be_\bx_\bt
4197                  None
4198
4199
4200
4201
4202
4203
4204
4205
4206
4207
4208
4209
4210
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             MSH(1)                            -64-                            MSH(1)
4230
4231
4232             _\bB_\bu_\bg_\bs
4233                  The argument to the `-prompt' switch must be interpreted as a  sin-
4234                  gle  token by the shell that invokes _\bm_\bs_\bh.  Therefore, one must usu-
4235                  ally place the argument to this switch inside double-quotes.
4236
4237                  There is a strict limit of messages  per  file  in  _\bp_\ba_\bc_\bk_\bf'd  format
4238                  which _\bm_\bs_\bh can handle.  Usually, this limit is 1000 messages.
4239
4240                  Please remember that _\bm_\bs_\bh is not the _\bC_\bS_\bh_\be_\bl_\bl, and that a lot  of  the
4241                  nice facilities provided by the latter are not present in the form-
4242                  er.
4243
4244                  In particular, _\bm_\bs_\bh does not understand back-quoting,  so  the  only
4245                  effective  way  to  use  _\bp_\bi_\bc_\bk  inside  _\bm_\bs_\bh  is  to  always  use the
4246                  `-seq select' switch.  Clever users of _\bM_\bH will put the line
4247
4248                       pick: -seq select -list
4249
4250                  in their .mh_profile file so that _\bp_\bi_\bc_\bk works equally well from both
4251                  the shell and _\bm_\bs_\bh.
4252
4253                  _\bs_\bo_\br_\bt_\bm always uses "-noverbose" and if "-textfield field"  is  used,
4254                  "-limit 0".
4255
4256                  The _\bm_\bs_\bh program inherits most (if not all) of the bugs from the  _\bM_\bH
4257                  commands it implements.
4258
4259
4260
4261
4262
4263
4264
4265
4266
4267
4268
4269
4270
4271
4272
4273
4274
4275
4276
4277
4278
4279
4280
4281
4282
4283
4284
4285             [mh.6]                           MH.6.8                      UCI version
4286
4287
4288
4289
4290
4291
4292
4293
4294
4295             NEXT(1)                           -65-                           NEXT(1)
4296
4297
4298             _\bN_\bA_\bM_\bE
4299                  next - show the next message
4300
4301             _\bS_\bY_\bN_\bO_\bP_\bS_\bI_\bS
4302                  next [+folder] [-header] [-noheader] [-showproc program]
4303                       [-noshowproc] [switches for _\bs_\bh_\bo_\bw_\bp_\br_\bo_\bc] [-help]
4304
4305             _\bD_\bE_\bS_\bC_\bR_\bI_\bP_\bT_\bI_\bO_\bN
4306
4307                  _\bN_\be_\bx_\bt performs a _\bs_\bh_\bo_\bw on the  next  message  in  the  specified  (or
4308                  current)  folder.  Like _\bs_\bh_\bo_\bw, it passes any switches on to the pro-
4309                  gram _\bs_\bh_\bo_\bw_\bp_\br_\bo_\bc, which is called to list the message.   This  command
4310                  is  almost  exactly  equivalent to "show next".  Consult the manual
4311                  entry for _\bs_\bh_\bo_\bw (1) for all the details.
4312
4313             _\bF_\bi_\bl_\be_\bs
4314                  $HOME/.mh_profile                   The user profile
4315
4316
4317             _\bP_\br_\bo_\bf_\bi_\bl_\be _\bC_\bo_\bm_\bp_\bo_\bn_\be_\bn_\bt_\bs
4318                  Path:                To determine the user's MH directory
4319                  Current-Folder:      To find the default current folder
4320                  showproc:            Program to show the message
4321
4322
4323             _\bS_\be_\be _\bA_\bl_\bs_\bo
4324                  show(1), prev(1)
4325
4326
4327             _\bD_\be_\bf_\ba_\bu_\bl_\bt_\bs
4328                  `+folder' defaults to the current folder
4329                  `-header'
4330
4331
4332             _\bC_\bo_\bn_\bt_\be_\bx_\bt
4333                  If a folder is specified, it will become the current  folder.   The
4334                  message that is shown (i.e., the next message in sequence) will be-
4335                  come the current message.
4336
4337
4338             _\bB_\bu_\bg_\bs
4339                  _\bn_\be_\bx_\bt is really a link to the _\bs_\bh_\bo_\bw program.  As  a  result,  if  you
4340                  make  a  link  to  _\bn_\be_\bx_\bt and that link is not called _\bn_\be_\bx_\bt, your link
4341                  will  act  like  _\bs_\bh_\bo_\bw  instead.   To   circumvent   this,   add   a
4342                  profile-entry  for the link to your _\bM_\bH profile and add the argument
4343                  _\bn_\be_\bx_\bt to the entry.
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             PACKF(1)                          -66-                          PACKF(1)
4362
4363
4364             _\bN_\bA_\bM_\bE
4365                  packf - compress an MH folder into a single file
4366
4367             _\bS_\bY_\bN_\bO_\bP_\bS_\bI_\bS
4368                  packf [+folder] [msgs] [-file name] [-help]
4369
4370             _\bD_\bE_\bS_\bC_\bR_\bI_\bP_\bT_\bI_\bO_\bN
4371
4372                  _\bP_\ba_\bc_\bk_\bf takes messages from a folder and  copies  them  to  a  single
4373                  file.  Each message in the file is separated by four CTRL-A's and a
4374                  newline.  Messages packed can be unpacked using _\bi_\bn_\bc.
4375
4376                  If the _\bn_\ba_\bm_\be given to the `-file name' switch exists, then the  mes-
4377                  sages  specified will be appended to the end of the file, otherwise
4378                  the file will be created and the messages appended.
4379
4380             _\bF_\bi_\bl_\be_\bs
4381                  $HOME/.mh_profile                   The user profile
4382                  .msgbox.map                         A binary index of the file
4383
4384
4385             _\bP_\br_\bo_\bf_\bi_\bl_\be _\bC_\bo_\bm_\bp_\bo_\bn_\be_\bn_\bt_\bs
4386                  Path:                To determine the user's MH directory
4387                  Current-Folder:      To find the default current folder
4388                  Msg-Protect:         To set mode when creating a new `file'
4389
4390
4391             _\bS_\be_\be _\bA_\bl_\bs_\bo
4392                  inc(1)
4393
4394
4395             _\bD_\be_\bf_\ba_\bu_\bl_\bt_\bs
4396                  `+folder' defaults to the current folder
4397                  `msgs' defaults to all
4398                  `-file ./msgbox'
4399
4400
4401             _\bC_\bo_\bn_\bt_\be_\bx_\bt
4402                  If a folder is given, it will become the current folder.  The first
4403                  message packed will become the current message.
4404
4405
4406             _\bB_\bu_\bg_\bs
4407                  _\bP_\ba_\bc_\bk_\bf doesn't handle the old  UUCP-style  "mbox"  format  (used  by
4408                  _\bS_\be_\bn_\bd_\bM_\ba_\bi_\bl).   To  pack  messages  into  this  format, use the script
4409                  /_\bu_\bs_\br/_\bl_\bo_\bc_\ba_\bl/_\bl_\bi_\bb/_\bm_\bh/_\bp_\ba_\bc_\bk_\bm_\bb_\bo_\bx.  Note that _\bp_\ba_\bc_\bk_\bm_\bb_\bo_\bx does not  take  the
4410                  `-file' option of _\bp_\ba_\bc_\bk_\bf, and instead writes its output on _\bs_\bt_\bd_\bo_\bu_\bt.
4411
4412
4413
4414
4415
4416
4417             [mh.6]                           MH.6.8                      UCI version
4418
4419
4420
4421
4422
4423
4424
4425
4426
4427             PICK(1)                           -67-                           PICK(1)
4428
4429
4430             _\bN_\bA_\bM_\bE
4431                  pick - select messages by content
4432
4433             _\bS_\bY_\bN_\bO_\bP_\bS_\bI_\bS
4434                  pick [+folder] [msgs] [-and ...] [-or ...] [-not ...]
4435                       [-lbrace ... -rbrace] [--component pattern] [-cc pattern]
4436                       [-date pattern] [-from pattern] [-search pattern]
4437                       [-subject pattern] [-to pattern] [-after date] [-before date]
4438                       [-datefield field] [-sequence name ...] [-public] [-nopublic]
4439                       [-zero] [-nozero] [-list] [-nolist] [-help]
4440
4441                  typically:
4442                       scan `pick -from jones`
4443                       pick -to holloway -sequence select
4444                       show `pick -before friday`
4445
4446             _\bD_\bE_\bS_\bC_\bR_\bI_\bP_\bT_\bI_\bO_\bN
4447
4448                  _\bP_\bi_\bc_\bk searches messages within a folder for the specified  contents,
4449                  and then identifies those messages.  Two types of search primitives
4450                  are available: pattern matching and date constraint operations.
4451
4452                  A modified _\bg_\br_\be_\bp(1) is used to perform the  matching,  so  the  full
4453                  regular  expression  (see _\be_\bd(1)) facility is available within `pat-
4454                  tern'.  With `-search', `pattern' is used directly,  and  with  the
4455                  others, the grep pattern constructed is:
4456
4457                       "component[ \t]*:.*pattern"
4458
4459                  This means that the pattern specified for a `-search' will be found
4460                  everywhere in the message, including the header and the body, while
4461                  the other pattern matching  requests  are  limited  to  the  single
4462                  specified component.  The expression
4463
4464                       `--component pattern'
4465
4466                  is a shorthand for specifying
4467
4468                       `-search "component[ \t]*:.*pattern" '
4469
4470                  It is used to pick a component which is not one  of  "To:",  "cc:",
4471                  "Date:",     "From:",     or    "Subject:".     An    example    is
4472                  `pick --reply-to pooh'.
4473
4474                  Pattern matching is performed on  a  per-line  basis.   Within  the
4475                  header  of the message, each component is treated as one long line,
4476                  but in the body, each line is separate.  Lower-case letters in  the
4477                  search  pattern  will  match either lower or upper case in the mes-
4478                  sage, while upper case will match only upper case.
4479
4480                  Note that since the `-date' switch is a pattern matching  operation
4481                  (as  described  above), to find messages sent on a certain date the
4482
4483             [mh.6]                           MH.6.8                      UCI version
4484
4485
4486
4487
4488
4489
4490
4491
4492
4493             PICK(1)                           -68-                           PICK(1)
4494
4495
4496                  pattern string must match the text of the "Date:" field of the mes-
4497                  sage.
4498
4499                  Independent of  any  pattern  matching  operations  requested,  the
4500                  switches `-after date' or `-before date' may also be used to intro-
4501                  duce date/time contraints on all of the messages.  By default,  the
4502                  "Date:"  field  is  consulted,  but  if another date yielding field
4503                  (such as "BB-Posted:" or  "Delivery-Date:")  should  be  used,  the
4504                  `-datefield field' switch may be used.
4505
4506                  With `-before' and `-after', _\bp_\bi_\bc_\bk  will  actually  parse  the  date
4507                  fields in each of the messages specified in `msgs' and compare them
4508                  to the date/time specified.  If `-after' is given, then only  those
4509                  messages  whose  "Date:"  field  value is chronologically after the
4510                  date specified will be considered.  The `-before' switch  specifies
4511                  the complimentary action.
4512
4513                  Both the `-after' and `-before' switches take legal 822-style  date
4514                  specifications  as  arguments.   _\bP_\bi_\bc_\bk  will default certain missing
4515                  fields so that the entire date need not be specified.  These fields
4516                  are  (in  order  of defaulting): timezone, time and timezone, date,
4517                  date and timezone.  All defaults are taken from the  current  date,
4518                  time, and timezone.
4519
4520                  In addition to 822-style dates, _\bp_\bi_\bc_\bk will also recognize any of the
4521                  days  of  the week ("sunday", "monday", and so on), and the special
4522                  dates "today", "yesterday" (24 hours ago), and "tomorrow" (24 hours
4523                  from  now).   All  days of the week are judged to refer to a day in
4524                  the past (e.g.,  telling  _\bp_\bi_\bc_\bk  "saturday"  on  a  "tuesday"  means
4525                  "last saturday" not "this saturday").
4526
4527                  Finally, in addition to these  special  specifications,  _\bp_\bi_\bc_\bk  will
4528                  also  honor a specification of the form "-dd", which means "dd days
4529                  ago".
4530
4531                  _\bP_\bi_\bc_\bk supports complex boolean operations on  the  searching  primi-
4532                  tives  with  the  `-and',  `-or', `-not', and `-lbrace ... -rbrace'
4533                  switches.  For example,
4534
4535                       pick -after yesterday -and
4536                            -lbrace -from freida -or -from fear -rbrace
4537
4538                  identifies messages recently sent by "frieda" or "fear".
4539
4540                  The matching primitives take precedence  over  the  `-not'  switch,
4541                  which in turn takes precedence over `-and' which in turn takes pre-
4542                  cedence over  `-or'.   To  override  the  default  precedence,  the
4543                  `-lbrace'  and `-rbrace' switches are provided, which act just like
4544                  opening and closing parentheses in logical expressions.
4545
4546                  If no search criteria are given, all the messages specified on  the
4547                  command line are selected (this defaults to "all").
4548
4549             [mh.6]                           MH.6.8                      UCI version
4550
4551
4552
4553
4554
4555
4556
4557
4558
4559             PICK(1)                           -69-                           PICK(1)
4560
4561
4562                  Once the search has been performed, if the `-list' switch is given,
4563                  the  message  numbers  of  the selected messages are written to the
4564                  standard output separated by newlines.  This  is  _\be_\bx_\bt_\br_\be_\bm_\be_\bl_\by  useful
4565                  for quickly generating arguments for other _\bM_\bH programs by using the
4566                  "backquoting" syntax of the shell.  For example, the command
4567
4568                       scan `pick +todo -after "31 Mar 83 0123 PST"`
4569
4570                  says to _\bs_\bc_\ba_\bn those messages in the indicated folder which meet  the
4571                  appropriate criterion.  Note that since _\bp_\bi_\bc_\bk 's context changes are
4572                  written out prior to _\bs_\bc_\ba_\bn 's invocation,  you  need  not  give  the
4573                  folder argument to _\bs_\bc_\ba_\bn as well.
4574
4575                  Regardless of the operation of the `-list' switch,  the  `-sequence
4576                  name' switch may be given once for each sequence the user wishes to
4577                  define.  For each sequence named, that sequence will be defined  to
4578                  mean exactly those messages selected by _\bp_\bi_\bc_\bk.  For example,
4579
4580                       pick -from frated -seq fred
4581
4582                  defines a new message sequence for the current folder called "fred"
4583                  which contains exactly those messages that were selected.
4584
4585                  Note that whenever _\bp_\bi_\bc_\bk processes  a  `-sequence name'  switch,  it
4586                  sets `-nolist'.
4587
4588                  By default, _\bp_\bi_\bc_\bk will zero the sequence  before  adding  it.   This
4589                  action  can be disabled with the `-nozero' switch, which means that
4590                  the messages selected by _\bp_\bi_\bc_\bk will be added to the sequence, if  it
4591                  already  exists,  and  any messages already a part of that sequence
4592                  will remain so.
4593
4594                  The `-public' and `-nopublic' switches are used by _\bp_\bi_\bc_\bk in the same
4595                  way _\bm_\ba_\br_\bk uses them.
4596
4597             _\bF_\bi_\bl_\be_\bs
4598                  $HOME/.mh_profile                   The user profile
4599
4600
4601             _\bP_\br_\bo_\bf_\bi_\bl_\be _\bC_\bo_\bm_\bp_\bo_\bn_\be_\bn_\bt_\bs
4602                  Path:                To determine the user's MH directory
4603                  Current-Folder:      To find the default current folder
4604
4605
4606             _\bS_\be_\be _\bA_\bl_\bs_\bo
4607                  mark(1)
4608
4609
4610
4611
4612
4613
4614
4615             [mh.6]                           MH.6.8                      UCI version
4616
4617
4618
4619
4620
4621
4622
4623
4624
4625             PICK(1)                           -70-                           PICK(1)
4626
4627
4628             _\bD_\be_\bf_\ba_\bu_\bl_\bt_\bs
4629                  `+folder' defaults to the current folder
4630                  `msgs' defaults to all
4631                  `-datefield date'
4632                  `-nopublic' if the folder is read-only, `-public' otherwise
4633                  `-zero'
4634                  `-list' is the default if no `-sequence', `-nolist' otherwise
4635
4636
4637             _\bC_\bo_\bn_\bt_\be_\bx_\bt
4638                  If a folder is given, it will become the current folder.
4639
4640
4641             _\bH_\bi_\bs_\bt_\bo_\br_\by
4642                  In previous versions of _\bM_\bH, the _\bp_\bi_\bc_\bk command would _\bs_\bh_\bo_\bw,  _\bs_\bc_\ba_\bn,  or
4643                  _\br_\be_\bf_\bi_\bl_\be  the  selected  messages.   This was rather "inverted logic"
4644                  from the UNIX point of view, so _\bp_\bi_\bc_\bk  was  changed  to  define  se-
4645                  quences  and  output  those  sequences.  Hence, _\bp_\bi_\bc_\bk can be used to
4646                  generate the arguments for all other _\bM_\bH commands, instead of giving
4647                  _\bp_\bi_\bc_\bk endless switches for invoking those commands itself.
4648
4649                  Also, previous versions of _\bp_\bi_\bc_\bk balked  if  you  didn't  specify  a
4650                  search  string or a date/time constraint.  The current version does
4651                  not, and merely matches the messages you specify.   This  lets  you
4652                  type something like:
4653
4654                       show `pick last:20 -seq fear`
4655
4656                  instead of typing
4657
4658                       mark -add -nozero -seq fear last:20
4659                       show fear
4660
4661                  Finally, timezones used to be ignored when  comparing  dates:  they
4662                  aren't any more.
4663
4664             _\bH_\be_\bl_\bp_\bf_\bu_\bl _\bH_\bi_\bn_\bt_\bs
4665
4666                  Use "pick sequence -list" to enumerate the messages in  a  sequence
4667                  (such as for use by a shell script).
4668
4669
4670
4671
4672
4673
4674
4675
4676
4677
4678
4679
4680
4681             [mh.6]                           MH.6.8                      UCI version
4682
4683
4684
4685
4686
4687
4688
4689
4690
4691             PICK(1)                           -71-                           PICK(1)
4692
4693
4694             _\bB_\bu_\bg_\bs
4695                  The argument to the `-after' and `-before' switches must be  inter-
4696                  preted  as  a  single token by the shell that invokes _\bp_\bi_\bc_\bk.  There-
4697                  fore, one must usually place the argument  to  this  switch  inside
4698                  double-quotes.  Furthermore, any occurance of `-datefield' must oc-
4699                  cur prior to the `-after' or `-before' switch it applies to.
4700
4701                  If _\bp_\bi_\bc_\bk is used in a back-quoted operation, such as
4702
4703                       scan `pick -from jones`
4704
4705                  and _\bp_\bi_\bc_\bk selects no messages (e.g., no messages are from  "jones"),
4706                  then  the  shell  will  still run the outer command (e.g., "scan").
4707                  Since no messages were matched, _\bp_\bi_\bc_\bk produced no  output,  and  the
4708                  argument given to the outer command as a result of backquoting _\bp_\bi_\bc_\bk
4709                  is empty.  In the case of _\bM_\bH programs, the outer command  now  acts
4710                  as  if  the  default `msg' or `msgs' should be used (e.g., "all" in
4711                  the case of  _\bs_\bc_\ba_\bn ).   To  prevent  this  unexpected  behavior,  if
4712                  `-list'  was  given,  and if its standard output is not a tty, then
4713                  _\bp_\bi_\bc_\bk outputs the illegal message number "0" when  it  fails.   This
4714                  lets the outer command fail gracefully as well.
4715
4716                  The pattern syntax "[l-r]" is not  supported;  each  letter  to  be
4717                  matched must be included within the square brackets.
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             PREV(1)                           -72-                           PREV(1)
4758
4759
4760             _\bN_\bA_\bM_\bE
4761                  prev - show the previous message
4762
4763             _\bS_\bY_\bN_\bO_\bP_\bS_\bI_\bS
4764                  prev [+folder] [-header] [-noheader] [-showproc program]
4765                       [-noshowproc] [-switches for _\bs_\bh_\bo_\bw_\bp_\br_\bo_\bc] [-help]
4766
4767             _\bD_\bE_\bS_\bC_\bR_\bI_\bP_\bT_\bI_\bO_\bN
4768
4769                  _\bP_\br_\be_\bv performs a _\bs_\bh_\bo_\bw on the previous message in the  specified  (or
4770                  current)  folder.  Like _\bs_\bh_\bo_\bw, it passes any switches on to the pro-
4771                  gram named by _\bs_\bh_\bo_\bw_\bp_\br_\bo_\bc, which is called to list the message.   This
4772                  command  is  almost exactly equivalent to "show prev".  Consult the
4773                  manual entry for _\bs_\bh_\bo_\bw (1) for all the details.
4774
4775             _\bF_\bi_\bl_\be_\bs
4776                  $HOME/.mh_profile                   The user profile
4777
4778
4779             _\bP_\br_\bo_\bf_\bi_\bl_\be _\bC_\bo_\bm_\bp_\bo_\bn_\be_\bn_\bt_\bs
4780                  Path:                To determine the user's MH directory
4781                  Current-Folder:      To find the default current folder
4782                  showproc:            Program to show the message
4783
4784
4785             _\bS_\be_\be _\bA_\bl_\bs_\bo
4786                  show(1), next(1)
4787
4788
4789             _\bD_\be_\bf_\ba_\bu_\bl_\bt_\bs
4790                  `+folder' defaults to the current folder
4791                  `-header'
4792
4793
4794             _\bC_\bo_\bn_\bt_\be_\bx_\bt
4795                  If a folder is specified, it will become the current  folder.   The
4796                  message that is shown (i.e., the previous message in sequence) will
4797                  become the current message.
4798
4799
4800             _\bB_\bu_\bg_\bs
4801                  _\bp_\br_\be_\bv is really a link to the _\bs_\bh_\bo_\bw program.  As  a  result,  if  you
4802                  make  a  link  to  _\bp_\br_\be_\bv and that link is not called _\bp_\br_\be_\bv, your link
4803                  will  act  like  _\bs_\bh_\bo_\bw  instead.   To   circumvent   this,   add   a
4804                  profile-entry  for the link to your _\bM_\bH profile and add the argument
4805                  _\bp_\br_\be_\bv to the entry.
4806
4807
4808
4809
4810
4811
4812
4813             [mh.6]                           MH.6.8                      UCI version
4814
4815
4816
4817
4818
4819
4820
4821
4822
4823             PROMPTER(1)                       -73-                       PROMPTER(1)
4824
4825
4826             _\bN_\bA_\bM_\bE
4827                  prompter - prompting editor front-end for MH
4828
4829             _\bS_\bY_\bN_\bO_\bP_\bS_\bI_\bS
4830                  prompter [-erase chr] [-kill chr] [-prepend] [-noprepend] [-rapid]
4831                       [-norapid] [-doteof] [-nodoteof] file [-help]
4832
4833             _\bD_\bE_\bS_\bC_\bR_\bI_\bP_\bT_\bI_\bO_\bN
4834
4835                  This program is normally not invoked directly by  users  but  takes
4836                  the  place  of  an  editor  and  acts  as  an editor front-end.  It
4837                  operates on an 822-style message draft skeleton specified by  file,
4838                  normally provided by _\bc_\bo_\bm_\bp, _\bd_\bi_\bs_\bt, _\bf_\bo_\br_\bw, or _\br_\be_\bp_\bl.
4839
4840                  _\bP_\br_\bo_\bm_\bp_\bt_\be_\br is an editor which allows rapid composition  of  messages.
4841                  It  is particularly useful to network and low-speed (less than 2400
4842                  baud) users of _\bM_\bH.  It is an _\bM_\bH program in that it can have its own
4843                  profile  entry with switches, but it is not invoked directly by the
4844                  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
4845                  an  editor,  either when invoked with `-editor prompter', or by the
4846                  profile  entry  "Editor: prompter",  or  when  given  the   command
4847                  `edit prompter' at "What now?" level.
4848
4849                  For each empty component _\bp_\br_\bo_\bm_\bp_\bt_\be_\br finds in the draft, the  user  is
4850                  prompted  for a response; A <RETURN> will cause the whole component
4851                  to be left out.  Otherwise, a `\' preceding a  <RETURN>  will  con-
4852                  tinue  the  response  on the next line, allowing for multiline com-
4853                  ponents.  Continuation lines must begin with a space or tab.
4854
4855                  Each non-empty component is copied to the draft  and  displayed  on
4856                  the terminal.
4857
4858                  The start of the message body is denoted by a blank line or a  line
4859                  of dashes.  If the body is non-empty, the prompt, which isn't writ-
4860                  ten to the file, is
4861
4862                      "--------Enter additional text",
4863
4864                  or (if `-prepend' was given)
4865
4866                      "--------Enter initial text".
4867
4868                  Message-body typing is  terminated  with  an  end-of-file  (usually
4869                  CTRL-D).   With  the  `-doteof'  switch,  a period on a line all by
4870                  itself also  signifies  end-of-file.   At  this  point  control  is
4871                  returned  to  the  calling  program,  where the user is asked "What
4872                  now?".  See _\bw_\bh_\ba_\bt_\bn_\bo_\bw for the valid options to this query.
4873
4874                  By using the `-prepend' switch, the user can  add  type-in  to  the
4875                  beginning of the message body and have the rest of the body follow.
4876                  This is useful for the _\bf_\bo_\br_\bw command.
4877
4878
4879             [mh.6]                           MH.6.8                      UCI version
4880
4881
4882
4883
4884
4885
4886
4887
4888
4889             PROMPTER(1)                       -74-                       PROMPTER(1)
4890
4891
4892                  By using the `-rapid' switch, if the draft already contains text in
4893                  the message-body, it is not displayed on the user's terminal.  This
4894                  is useful for low-speed terminals.
4895
4896                  The line editing characters for kill and erase may be specified  by
4897                  the  user via the arguments `-kill chr' and `-erase chr', where chr
4898                  may be a character; or `\nnn', where "nnn" is the octal  value  for
4899                  the character.
4900
4901                  An interrupt (usually CTRL-C) during component  typing  will  abort
4902                  _\bp_\br_\bo_\bm_\bp_\bt_\be_\br  and  the _\bM_\bH command that invoked it.  An interrupt during
4903                  message-body typing is equivalent to CTRL-D,  for  historical  rea-
4904                  sons.  This means that _\bp_\br_\bo_\bm_\bp_\bt_\be_\br should finish up and exit.
4905
4906                  The first non-flag argument to _\bp_\br_\bo_\bm_\bp_\bt_\be_\br is taken as the name of the
4907                  draft file, and subsequent non-flag arguments are ignored.
4908
4909             _\bF_\bi_\bl_\be_\bs
4910                  $HOME/.mh_profile                   The user profile
4911                  /tmp/prompter*                      Temporary copy of message
4912
4913
4914             _\bP_\br_\bo_\bf_\bi_\bl_\be _\bC_\bo_\bm_\bp_\bo_\bn_\be_\bn_\bt_\bs
4915                  prompter-next:       To name the editor to be  used  on  exit  from
4916                  _\bp_\br_\bo_\bm_\bp_\bt_\be_\br
4917                  Msg-Protect:         To set mode when creating a new draft
4918
4919
4920             _\bS_\be_\be _\bA_\bl_\bs_\bo
4921                  comp(1), dist(1), forw(1), repl(1), whatnow(1)
4922
4923
4924             _\bD_\be_\bf_\ba_\bu_\bl_\bt_\bs
4925                  `-prepend'
4926                  `-norapid'
4927                  `-nodoteof'
4928
4929
4930             _\bC_\bo_\bn_\bt_\be_\bx_\bt
4931                  None
4932
4933             _\bH_\be_\bl_\bp_\bf_\bu_\bl _\bH_\bi_\bn_\bt_\bs
4934
4935                  The  `-rapid'  option  is  particularly  useful  with   _\bf_\bo_\br_\bw,   and
4936                  `-noprepend' is useful with _\bc_\bo_\bm_\bp -_\bu_\bs_\be.
4937
4938                  The user may wish to link _\bp_\br_\bo_\bm_\bp_\bt_\be_\br under several names (e.g.,  "ra-
4939                  pid")  and  give  appropriate switches in the profile entries under
4940                  these names (e.g., "rapid:  -rapid").   This  facilitates  invoking
4941                  prompter  differently for different _\bM_\bH commands (e.g., "forw: -edi-
4942                  tor rapid").
4943
4944
4945             [mh.6]                           MH.6.8                      UCI version
4946
4947
4948
4949
4950
4951
4952
4953
4954
4955             PROMPTER(1)                       -75-                       PROMPTER(1)
4956
4957
4958             _\bB_\bu_\bg_\bs
4959                  _\bP_\br_\bo_\bm_\bp_\bt_\be_\br uses _\bs_\bt_\bd_\bi_\bo (3), so it will lose if  you  edit  files  with
4960                  nulls in them.
4961
4962
4963
4964
4965
4966
4967
4968
4969
4970
4971
4972
4973
4974
4975
4976
4977
4978
4979
4980
4981
4982
4983
4984
4985
4986
4987
4988
4989
4990
4991
4992
4993
4994
4995
4996
4997
4998
4999
5000
5001
5002
5003
5004
5005
5006
5007
5008
5009
5010
5011             [mh.6]                           MH.6.8                      UCI version
5012
5013
5014
5015
5016
5017
5018
5019
5020
5021             RCVSTORE(1)                       -76-                       RCVSTORE(1)
5022
5023
5024             _\bN_\bA_\bM_\bE
5025                  rcvstore - incorporate new mail asynchronously
5026
5027             _\bS_\bY_\bN_\bO_\bP_\bS_\bI_\bS
5028                  /usr/local/lib/mh/rcvstore [+folder] [-create] [-nocreate]
5029                       [-sequence name ...] [-public] [-nopublic] [-zero] [-nozero]
5030                       [-help]
5031
5032             _\bD_\bE_\bS_\bC_\bR_\bI_\bP_\bT_\bI_\bO_\bN
5033
5034                  _\bR_\bc_\bv_\bs_\bt_\bo_\br_\be incorporates a message from the standard input into an  _\bM_\bH
5035                  folder.   If  `+folder'  isn't specified, a folder in the user's _\bM_\bH
5036                  directory will be used, either that specified by the "Inbox:" entry
5037                  in  the  user's profile, or the folder named "inbox".  The new mes-
5038                  sage being incorporated is assigned the next highest number in  the
5039                  folder.   If  the specified (or default) folder doesn't exist, then
5040                  it will be created if the `-create' option is specified,  otherwise
5041                  _\br_\bc_\bv_\bs_\bt_\bo_\br_\be will exit.
5042
5043                  If the user's profile contains a "Msg-Protect: nnn" entry, it  will
5044                  be  used as the protection on the newly created messages, otherwise
5045                  the _\bM_\bH default of 0644 will be used.  During all operations on mes-
5046                  sages,  this  initially  assigned  protection will be preserved for
5047                  each message, so _\bc_\bh_\bm_\bo_\bd(1) may be used to set  a  protection  on  an
5048                  individual   message,   and   its   protection  will  be  preserved
5049                  thereafter.
5050
5051                  _\bR_\bc_\bv_\bs_\bt_\bo_\br_\be will incorporate anything except zero length messages into
5052                  the user's MH folder.
5053
5054                  If the profile entry "Unseen-Sequence" is  present  and  non-empty,
5055                  then  _\br_\bc_\bv_\bs_\bt_\bo_\br_\be  will  add  the  newly  incorporated message to each
5056                  sequence named by the  profile  entry.   This  is  similar  to  the
5057                  "Previous-Sequence"  profile  entry  supported  by  all _\bM_\bH commands
5058                  which take `msgs' or `msg' arguments.  Note that _\br_\bc_\bv_\bs_\bt_\bo_\br_\be will  not
5059                  zero each sequence prior to adding messages.
5060
5061                  Furthermore, the incoming messages may  be  added  to  user-defined
5062                  sequences  as  they  arrive  by  appropriate use of the `-sequence'
5063                  option.  As with _\bp_\bi_\bc_\bk, use of the `-zero'  and  `-nozero'  switches
5064                  can  also  be used to zero old sequences or not.  Similarly, use of
5065                  the `-public' and `-nopublic switches may be used  to  force  addi-
5066                  tions to public and private sequences.
5067
5068             _\bF_\bi_\bl_\be_\bs
5069                  $HOME/.mh_profile                   The user profile
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             RCVSTORE(1)                       -77-                       RCVSTORE(1)
5088
5089
5090             _\bP_\br_\bo_\bf_\bi_\bl_\be _\bC_\bo_\bm_\bp_\bo_\bn_\be_\bn_\bt_\bs
5091                  Path:                To determine the user's MH directory
5092                  Folder-Protect:      To set mode when creating a new folder
5093                  Inbox:               To find the default inbox
5094                  Msg-Protect:         To set mode when creating a new message
5095                  Unseen-Sequence:     To name sequences denoting unseen messages
5096
5097
5098             _\bS_\be_\be _\bA_\bl_\bs_\bo
5099                  inc(1), pick(1), mh-mail(5)
5100
5101
5102             _\bD_\be_\bf_\ba_\bu_\bl_\bt_\bs
5103                  `+folder' defaults to "inbox"
5104                  `-create'
5105                  `-nopublic' if the folder is read-only, `-public' otherwise
5106                  `-nozero'
5107
5108
5109             _\bC_\bo_\bn_\bt_\be_\bx_\bt
5110                  No context changes will be attempted, with  the  exception  of  se-
5111                  quence manipulation.
5112
5113
5114             _\bB_\bu_\bg_\bs
5115                  If you use the "Unseen-Sequence" profile entry, _\br_\bc_\bv_\bs_\bt_\bo_\br_\be could  try
5116                  to update the context while another _\bM_\bH process is also trying to do
5117                  so.  This can cause the context  to  become  corrupted.   To  avoid
5118                  this,  do not use _\br_\bc_\bv_\bs_\bt_\bo_\br_\be if you use the "Unseen-Sequence" profile
5119                  entry.
5120
5121
5122
5123
5124
5125
5126
5127
5128
5129
5130
5131
5132
5133
5134
5135
5136
5137
5138
5139
5140
5141
5142
5143             [mh.6]                           MH.6.8                      UCI version
5144
5145
5146
5147
5148
5149
5150
5151
5152
5153             REFILE(1)                         -78-                         REFILE(1)
5154
5155
5156             _\bN_\bA_\bM_\bE
5157                  refile - file message in other folders
5158
5159             _\bS_\bY_\bN_\bO_\bP_\bS_\bI_\bS
5160                  refile [msgs] [-draft] [-link] [-nolink] [-preserve] [-nopreserve]
5161                       [-src +folder] [-file file] [-rmmproc program] [-normmproc]
5162                       +folder ...  [-help]
5163
5164             _\bD_\bE_\bS_\bC_\bR_\bI_\bP_\bT_\bI_\bO_\bN
5165
5166                  _\bR_\be_\bf_\bi_\bl_\be moves (_\bm_\bv (1)) or links  (_\bl_\bn (1))  messages  from  a  source
5167                  folder  into  one  or  more destination folders.  If you think of a
5168                  message as a sheet of paper, this operation is  not  unlike  filing
5169                  the  sheet  of  paper  (or copies) in file cabinet folders.  When a
5170                  message is filed, it is linked into the  destination  folder(s)  if
5171                  possible,  and  is  copied  otherwise.   As long as the destination
5172                  folders are all on the same file  system,  multiple  filing  causes
5173                  little  storage  overhead.   This  facility  provides a good way to
5174                  cross-file or multiply-index messages.  For example, if  a  message
5175                  is received from Jones about the ARPA Map Project, the command
5176
5177                       refile cur +jones +Map
5178
5179                  would allow the message to be found in either of  the  two  folders
5180                  `jones' or `Map'.
5181
5182                  The option `-file file' directs _\br_\be_\bf_\bi_\bl_\be to use the specified file as
5183                  the  source  message  to  be  filed,  rather  than a message from a
5184                  folder.  Note that the file should be a validly formatted  message,
5185                  just like any other _\bM_\bH message.  It should NOT be in mail drop for-
5186                  mat (to convert a file in mail drop format to a folder of  _\bM_\bH  mes-
5187                  sages, see _\bi_\bn_\bc (1)).
5188
5189                  If a destination folder doesn't exist, _\br_\be_\bf_\bi_\bl_\be will ask if you  want
5190                  to  create  it.  A negative response will abort the file operation.
5191                  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
5192                  ask any questions and will proceed as if the user answered "yes" to
5193                  all questions.
5194
5195                  The option `-link' preserves the source folder copy of the  message
5196                  (i.e.,  it  does  a  _\bl_\bn(1) rather than a _\bm_\bv(1)), whereas, `-nolink'
5197                  deletes the filed messages from the source folder.  Normally,  when
5198                  a  message  is filed, it is assigned the next highest number avail-
5199                  able in each of the destination folders.  Use  of  the  `-preserve'
5200                  switch  will override this message renaming, but name conflicts may
5201                  occur, so use this switch cautiously.
5202
5203                  If `-link' is not specified (or `-nolink' is specified), the  filed
5204                  messages  will  be removed from the source folder, by renaming them
5205                  with a site-dependent prefix (usually a comma).
5206
5207
5208
5209             [mh.6]                           MH.6.8                      UCI version
5210
5211
5212
5213
5214
5215
5216
5217
5218
5219             REFILE(1)                         -79-                         REFILE(1)
5220
5221
5222                  If the user has a profile component such as
5223
5224                          rmmproc:        /bin/rm
5225
5226                  then _\br_\be_\bf_\bi_\bl_\be will instead call the named program to delete the  mes-
5227                  sage files.  The user may specify `-rmmproc program' on the command
5228                  line to override  this  profile  specification.   The  `-normmproc'
5229                  option  forces  the message files to be deleted by renaming them as
5230                  described above.
5231
5232                  The `-draft' switch tells _\br_\be_\bf_\bi_\bl_\be to file the <mh-dir>/draft.
5233
5234             _\bF_\bi_\bl_\be_\bs
5235                  $HOME/.mh_profile                   The user profile
5236
5237
5238             _\bP_\br_\bo_\bf_\bi_\bl_\be _\bC_\bo_\bm_\bp_\bo_\bn_\be_\bn_\bt_\bs
5239                  Path:                To determine the user's MH directory
5240                  Current-Folder:      To find the default current folder
5241                  Folder-Protect:      To set mode when creating a new folder
5242                  rmmproc:             Program to delete the message
5243
5244
5245             _\bS_\be_\be _\bA_\bl_\bs_\bo
5246                  folder(1)
5247
5248
5249             _\bD_\be_\bf_\ba_\bu_\bl_\bt_\bs
5250                  `-src +folder' defaults to the current folder
5251                  `msgs' defaults to cur
5252                  `-nolink'
5253                  `-nopreserve'
5254
5255
5256             _\bC_\bo_\bn_\bt_\be_\bx_\bt
5257                  If `-src +folder' is given, it will become the current folder.   If
5258                  neither  `-link' nor `all' is specified, the current message in the
5259                  source folder will be set to the last message specified; otherwise,
5260                  the current message won't be changed.
5261
5262                  If the Previous-Sequence profile entry is set, in addition  to  de-
5263                  fining the named sequences from the source folder, _\br_\be_\bf_\bi_\bl_\be will also
5264                  define  those  sequences  for   the   destination   folders.    See
5265                  _\bm_\bh-_\bs_\be_\bq_\bu_\be_\bn_\bc_\be (5) for information concerning the previous sequence.
5266
5267
5268             _\bB_\bu_\bg_\bs
5269                  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
5270                  must  NOT  call _\br_\be_\bf_\bi_\bl_\be without specifying `-normmproc', or you will
5271                  create an infinte loop.
5272
5273
5274
5275             [mh.6]                           MH.6.8                      UCI version
5276
5277
5278
5279
5280
5281
5282
5283
5284
5285             REPL(1)                           -80-                           REPL(1)
5286
5287
5288             _\bN_\bA_\bM_\bE
5289                  repl - reply to a message
5290
5291             _\bS_\bY_\bN_\bO_\bP_\bS_\bI_\bS
5292                  repl [+folder] [msg] [-annotate] [-noannotate] [-cc all/to/cc/me]
5293                       [-nocc all/to/cc/me] [-draftfolder +folder]
5294                       [-draftmessage msg] [-nodraftfolder] [-editor editor]
5295                       [-noedit] [-fcc +folder] [-filter filterfile] [-form formfile]
5296                       [-inplace] [-noinplace] [-query] [-noquery] [-width columns]
5297                       [-whatnowproc program] [-nowhatnowproc] [-help]
5298
5299             _\bD_\bE_\bS_\bC_\bR_\bI_\bP_\bT_\bI_\bO_\bN
5300
5301                  _\bR_\be_\bp_\bl aids a user in producing a reply to an existing message.  _\bR_\be_\bp_\bl
5302                  uses  a  reply  template to guide its actions when constructing the
5303                  message draft of the reply.  In its simplest form  (with  no  argu-
5304                  ments),  it  will  set  up  a message-form skeleton in reply to the
5305                  current message in the  current  folder,  and  invoke  the  whatnow
5306                  shell.   The  default  reply template will direct _\br_\be_\bp_\bl to construct
5307                  the composed message as follows:
5308
5309                       To: <Reply-To> or <From>
5310                       cc: <cc>, <To>, and yourself
5311                       Subject: Re: <Subject>
5312                       In-reply-to: Your message of <Date>.
5313                                    <Message-Id>
5314
5315                  where field names enclosed in angle  brackets  (< >)  indicate  the
5316                  contents  of the named field from the message to which the reply is
5317                  being made.  A  reply  template  is  simply  a  format  file.   See
5318                  _\bm_\bh-_\bf_\bo_\br_\bm_\ba_\bt (5) for the details.
5319
5320                  The `-cc type' switch takes an argument which  specifies  who  gets
5321                  placed  on  the "cc:" list of the reply.  The `-query' switch modi-
5322                  fies the action of `-cc type' switch by interactively asking you if
5323                  each  address  that normally would be placed in the "To:" and "cc:"
5324                  list  should  actually  be  sent  a  copy.   (This  is  useful  for
5325                  special-purpose  replies.)  Note that the position of the `-cc' and
5326                  `-nocc' switches, like all other switches which take a positive and
5327                  negative form, is important.
5328
5329                  Lines beginning with the fields "To:", "cc:", and  "Bcc:"  will  be
5330                  standardized  and  have  duplicate addresses removed.  In addition,
5331                  the `-width columns' switch will guide _\br_\be_\bp_\bl's formatting  of  these
5332                  fields.
5333
5334                  If the file named "replcomps" exists in the user's MH directory, it
5335                  will be used instead of the default form.  In either case, the file
5336                  specified by `-form formfile' will be used if given.
5337
5338                  If the draft already exists, _\br_\be_\bp_\bl will ask you as to  the  disposi-
5339                  tion  of  the  draft.  A reply of quit will abort _\br_\be_\bp_\bl, leaving the
5340
5341             [mh.6]                           MH.6.8                      UCI version
5342
5343
5344
5345
5346
5347
5348
5349
5350
5351             REPL(1)                           -81-                           REPL(1)
5352
5353
5354                  draft intact; replace will replace the existing draft with a  blank
5355                  skeleton; and list will display the draft.
5356
5357                  See _\bc_\bo_\bm_\bp (1) for a  description  of  the  `-editor'  and  `-noedit'
5358                  switches.  Note that while in the editor, the message being replied
5359                  to is available through a link  named  "@"  (assuming  the  default
5360                  _\bw_\bh_\ba_\bt_\bn_\bo_\bw_\bp_\br_\bo_\bc ).   In addition, the actual pathname of the message is
5361                  stored in the envariable $editalt, and the pathname of  the  folder
5362                  containing the message is stored in the envariable $mhfolder.
5363
5364                  Although _\br_\be_\bp_\bl uses the `-form formfile' switch to direct it how  to
5365                  construct  the  beginning  of  the  draft, the `-filter filterfile'
5366                  switch directs _\br_\be_\bp_\bl as to how the message being  replied-to  should
5367                  be  formatted in the body of the draft.  If `-filter' is not speci-
5368                  fied, then the message being replied-to is not included in the body
5369                  of  the draft.  If `-filter filterfile' is specified, then the mes-
5370                  sage being replied-to is filtered  (re-formatted)  prior  to  being
5371                  output  to  the body of the draft.  The filter file for _\br_\be_\bp_\bl should
5372                  be a standard form file for _\bm_\bh_\bl, as _\br_\be_\bp_\bl will invoke _\bm_\bh_\bl to  format
5373                  the  message  being replied-to.  There is no default message filter
5374                  (`-filter' must be followed by a file name).  A filter file that is
5375                  commonly used is:
5376
5377                       :
5378                       body:nocomponent,compwidth=9,offset=9
5379
5380                  which says to output a blank line and then the body of the  message
5381                  being replied-to, indented by one tab-stop.  Another format popular
5382                  on USENET is:
5383
5384
5385                       message-id:nocomponent,nonewline,\
5386                       formatfield="In message %{text}, "
5387                       from:nocomponent,formatfield="%(friendly{text}) writes:"
5388                       body:component=">",overflowtext=">",overflowoffset=0
5389
5390                  Which  cites  the  Message-ID  and  author  of  the  message  being
5391                  replied-to,  and  then  outputs each line of the body prefaced with
5392                  the ">" character.
5393
5394                  If the `-annotate' switch is given, the  message  being  replied-to
5395                  will be annotated with the lines
5396
5397                       Replied: date
5398                       Replied: addrs
5399
5400                  where the address list contains one line for each  addressee.   The
5401                  annotation  will  be done only if the message is sent directly from
5402                  _\br_\be_\bp_\bl.   If  the  message  is  not  sent  immediately   from   _\br_\be_\bp_\bl,
5403                  "comp -use"  may  be  used to re-edit and send the constructed mes-
5404                  sage, but the annotations won't take place.  The `-inplace'  switch
5405                  causes annotation to be done in place in order to preserve links to
5406
5407             [mh.6]                           MH.6.8                      UCI version
5408
5409
5410
5411
5412
5413
5414
5415
5416
5417             REPL(1)                           -82-                           REPL(1)
5418
5419
5420                  the annotated message.
5421
5422                  The `-fcc +folder' switch can be used to  automatically  specify  a
5423                  folder  to  receive Fcc:s.  More than one folder, each preceeded by
5424                  `-fcc' can be named.
5425
5426                  In addition to the standard _\bm_\bh-_\bf_\bo_\br_\bm_\ba_\bt (5) escapes, _\br_\be_\bp_\bl also recog-
5427                  nizes the following additional _\bc_\bo_\bm_\bp_\bo_\bn_\be_\bn_\bt escape:
5428
5429                  _\bE_\bs_\bc_\ba_\bp_\be  _\bR_\be_\bt_\bu_\br_\bn_\bs  _\bD_\be_\bs_\bc_\br_\bi_\bp_\bt_\bi_\bo_\bn
5430                  _\bf_\bc_\bc     string   Any folders specified with `-fcc folder'
5431
5432                  To avoid reiteration, _\br_\be_\bp_\bl strips any leading `Re: '  strings  from
5433                  the _\bs_\bu_\bb_\bj_\be_\bc_\bt component.
5434
5435                  The `-draftfolder +folder' and `-draftmessage msg' switches  invoke
5436                  the _\bM_\bH draft folder facility.  This is an advanced (and highly use-
5437                  ful) feature.  Consult the Advanced  Features  section  of  the  _\bM_\bH
5438                  manual for more information.
5439
5440                  Upon exiting from the editor, _\br_\be_\bp_\bl will invoke the _\bw_\bh_\ba_\bt_\bn_\bo_\bw program.
5441                  See _\bw_\bh_\ba_\bt_\bn_\bo_\bw (1) for a discussion of available options.  The invoca-
5442                  tion of this program can be inhibited by using the `-nowhatnowproc'
5443                  switch.   (In truth of fact, it is the _\bw_\bh_\ba_\bt_\bn_\bo_\bw program which starts
5444                  the initial edit.  Hence, `-nowhatnowproc' will  prevent  any  edit
5445                  from occurring.)
5446
5447             _\bF_\bi_\bl_\be_\bs
5448                  /usr/local/lib/mh/replcomps         The reply template
5449                  or <mh-dir>/replcomps               Rather than the standard template
5450                  $HOME/.mh_profile                   The user profile
5451                  <mh-dir>/draft                      The draft file
5452
5453
5454             _\bP_\br_\bo_\bf_\bi_\bl_\be _\bC_\bo_\bm_\bp_\bo_\bn_\be_\bn_\bt_\bs
5455                  Path:                To determine the user's MH directory
5456                  Alternate-Mailboxes: To determine the user's mailboxes
5457                  Current-Folder:      To find the default current folder
5458                  Draft-Folder:        To find the default draft-folder
5459                  Editor:              To override the default editor
5460                  Msg-Protect:         To  set  mode  when  creating  a  new  message
5461                  (draft)
5462                  fileproc:            Program to refile the message
5463                  mhlproc:             Program to filter message being replied-to
5464                  whatnowproc:         Program to ask the "What now?" questions
5465
5466
5467             _\bS_\be_\be _\bA_\bl_\bs_\bo
5468                  comp(1), dist(1), forw(1), send(1), whatnow(1), mh-format(5)
5469
5470
5471
5472
5473             [mh.6]                           MH.6.8                      UCI version
5474
5475
5476
5477
5478
5479
5480
5481
5482
5483             REPL(1)                           -83-                           REPL(1)
5484
5485
5486             _\bD_\be_\bf_\ba_\bu_\bl_\bt_\bs
5487                  `+folder' defaults to the current folder
5488                  `msg' defaults to cur
5489                  `-nocc all' at ATHENA sites, `-cc all' otherwise
5490                  `-noannotate'
5491                  `-nodraftfolder'
5492                  `-noinplace'
5493                  `-noquery'
5494                  `-width 72'
5495
5496
5497             _\bC_\bo_\bn_\bt_\be_\bx_\bt
5498                  If a folder is given, it will become the current folder.  The  mes-
5499                  sage replied-to will become the current message.
5500
5501
5502             _\bH_\bi_\bs_\bt_\bo_\br_\by
5503                  Prior to using the format string  mechanism,  `-noformat'  used  to
5504                  cause  address  headers to be output as-is.  Now all address fields
5505                  are formatted using Internet standard guidelines.
5506
5507
5508             _\bB_\bu_\bg_\bs
5509                  If any addresses occur in the reply template, addresses in the tem-
5510                  plate that do not contain hosts are defaulted incorrectly.  Instead
5511                  of using the localhost for the  default,  _\br_\be_\bp_\bl  uses  the  sender's
5512                  host.   Moral of the story: if you're going to include addresses in
5513                  a reply template, include the host portion of the address.
5514
5515                  The `-width columns' switch is only  used  to  do  address-folding;
5516                  other headers are not line-wrapped.
5517
5518                  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
5519                  does  not  actually  run the _\bw_\bh_\ba_\bt_\bn_\bo_\bw program.  Hence, if you define
5520                  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
5521                  it.
5522
5523                  If your current working directory is not writable, the  link  named
5524                  "@" is not available.
5525
5526
5527
5528
5529
5530
5531
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             RMF(1)                            -84-                            RMF(1)
5550
5551
5552             _\bN_\bA_\bM_\bE
5553                  rmf - remove an MH folder
5554
5555             _\bS_\bY_\bN_\bO_\bP_\bS_\bI_\bS
5556                  rmf [+folder] [-interactive] [-nointeractive] [-help]
5557
5558             _\bD_\bE_\bS_\bC_\bR_\bI_\bP_\bT_\bI_\bO_\bN
5559
5560                  _\bR_\bm_\bf removes all of the messages (files) within  the  specified  (or
5561                  default)  folder,  and  then removes the folder (directory) itself.
5562                  If there are any files within the folder which are not  a  part  of
5563                  _\bM_\bH,  they  will  _\bn_\bo_\bt be removed, and an error will be produced.  If
5564                  the folder is given explicitly or the  `-nointeractive'  option  is
5565                  given,  then the folder will be removed without confirmation.  Oth-
5566                  erwise, the user will be asked for confirmation.  If _\br_\bm_\bf can't find
5567                  the  current  folder,  for  some  reason,  the folder to be removed
5568                  defaults to `+inbox' (unless overridden  by  user's  profile  entry
5569                  "Inbox") with confirmation.
5570
5571                  _\bR_\bm_\bf irreversibly deletes messages that don't have other  links,  so
5572                  use it with caution.
5573
5574                  If the folder being removed is a subfolder, the parent folder  will
5575                  become  the new current folder, and _\br_\bm_\bf will produce a message tel-
5576                  ling the user this has happened.  This provides an  easy  mechanism
5577                  for selecting a set of messages, operating on the list, then remov-
5578                  ing the list and returning to the current  folder  from  which  the
5579                  list was extracted.
5580
5581                  _\bR_\bm_\bf of a read-only folder will delete the private sequence and  cur
5582                  information  (i.e.,  "atr-_\bs_\be_\bq-_\bf_\bo_\bl_\bd_\be_\br"  entries)  from  the  profile
5583                  without affecting the folder itself.
5584
5585             _\bF_\bi_\bl_\be_\bs
5586                  $HOME/.mh_profile                   The user profile
5587
5588
5589             _\bP_\br_\bo_\bf_\bi_\bl_\be _\bC_\bo_\bm_\bp_\bo_\bn_\be_\bn_\bt_\bs
5590                  Path:                To determine the user's MH directory
5591                  Current-Folder:      To find the default current folder
5592                  Inbox:               To find the default inbox
5593
5594
5595             _\bS_\be_\be _\bA_\bl_\bs_\bo
5596                  rmm(1)
5597
5598
5599             _\bD_\be_\bf_\ba_\bu_\bl_\bt_\bs
5600                  `+folder' defaults to the current folder, usually with confirmation
5601                  `-interactive' if +folder' not given, `-nointeractive' otherwise
5602
5603
5604
5605             [mh.6]                           MH.6.8                      UCI version
5606
5607
5608
5609
5610
5611
5612
5613
5614
5615             RMF(1)                            -85-                            RMF(1)
5616
5617
5618             _\bC_\bo_\bn_\bt_\be_\bx_\bt
5619                  _\bR_\bm_\bf will set the current folder to the parent folder if a subfolder
5620                  is  removed; or if the current folder is removed, it will make "in-
5621                  box" current.  Otherwise, it doesn't change the current  folder  or
5622                  message.
5623
5624
5625             _\bB_\bu_\bg_\bs
5626                  Although intuitively one would suspect that _\br_\bm_\bf works  recursively,
5627                  it  does  not.   Hence if you have a sub-folder within a folder, in
5628                  order to _\br_\bm_\bf the parent, you must first _\br_\bm_\bf each of the children.
5629
5630
5631
5632
5633
5634
5635
5636
5637
5638
5639
5640
5641
5642
5643
5644
5645
5646
5647
5648
5649
5650
5651
5652
5653
5654
5655
5656
5657
5658
5659
5660
5661
5662
5663
5664
5665
5666
5667
5668
5669
5670
5671             [mh.6]                           MH.6.8                      UCI version
5672
5673
5674
5675
5676
5677
5678
5679
5680
5681             RMM(1)                            -86-                            RMM(1)
5682
5683
5684             _\bN_\bA_\bM_\bE
5685                  rmm - remove messages
5686
5687             _\bS_\bY_\bN_\bO_\bP_\bS_\bI_\bS
5688                  rmm [+folder] [msgs] [-help]
5689
5690             _\bD_\bE_\bS_\bC_\bR_\bI_\bP_\bT_\bI_\bO_\bN
5691
5692                  _\bR_\bm_\bm removes the specified messages by renaming  the  message  files
5693                  with preceding commas.  Many sites consider files that start with a
5694                  comma to be a temporary backup, and arrange for _\bc_\br_\bo_\bn (8) to  remove
5695                  such files once a day.
5696
5697                  If the user has a profile component such as
5698
5699                          rmmproc:        /bin/rm
5700
5701                  then instead of simply renaming the message file, _\br_\bm_\bm will call the
5702                  named program to delete the file.  Note that at most installations,
5703                  _\bc_\br_\bo_\bn (8) is told to remove files that begin with  a  comma  once  a
5704                  night.
5705
5706                  Some users of csh prefer the following:
5707
5708                          alias rmm 'refile +d'
5709
5710                  where folder +d is a folder for deleted messages, and
5711
5712                          alias mexp 'rm `mhpath +d all`'
5713
5714                  is used to "expunge" deleted messages.
5715
5716                  The current message is not changed by _\br_\bm_\bm, so a _\bn_\be_\bx_\bt  will  advance
5717                  to the next message in the folder as expected.
5718
5719             _\bF_\bi_\bl_\be_\bs
5720                  $HOME/.mh_profile                   The user profile
5721
5722
5723             _\bP_\br_\bo_\bf_\bi_\bl_\be _\bC_\bo_\bm_\bp_\bo_\bn_\be_\bn_\bt_\bs
5724                  Path:                To determine the user's MH directory
5725                  Current-Folder:      To find the default current folder
5726                  rmmproc:             Program to delete the message
5727
5728
5729             _\bS_\be_\be _\bA_\bl_\bs_\bo
5730                  rmf(1)
5731
5732
5733             _\bD_\be_\bf_\ba_\bu_\bl_\bt_\bs
5734                  `+folder' defaults to the current folder
5735                  `msgs' defaults to cur
5736
5737             [mh.6]                           MH.6.8                      UCI version
5738
5739
5740
5741
5742
5743
5744
5745
5746
5747             RMM(1)                            -87-                            RMM(1)
5748
5749
5750             _\bC_\bo_\bn_\bt_\be_\bx_\bt
5751                  If a folder is given, it will become the current folder.
5752
5753
5754             _\bB_\bu_\bg_\bs
5755                  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
5756                  must  NOT  call _\br_\be_\bf_\bi_\bl_\be without specifying `-normmproc', or you will
5757                  create an infinte loop.
5758
5759
5760
5761
5762
5763
5764
5765
5766
5767
5768
5769
5770
5771
5772
5773
5774
5775
5776
5777
5778
5779
5780
5781
5782
5783
5784
5785
5786
5787
5788
5789
5790
5791
5792
5793
5794
5795
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             SCAN(1)                           -88-                           SCAN(1)
5814
5815
5816             _\bN_\bA_\bM_\bE
5817                  scan - produce a one line per message scan listing
5818
5819             _\bS_\bY_\bN_\bO_\bP_\bS_\bI_\bS
5820                  scan [+folder] [msgs] [-clear] [-noclear] [-form formatfile]
5821                       [-format string] [-header] [-noheader] [-width columns]
5822                       [-reverse] [-noreverse] [-file filename] [-help]
5823
5824             _\bD_\bE_\bS_\bC_\bR_\bI_\bP_\bT_\bI_\bO_\bN
5825
5826                  _\bS_\bc_\ba_\bn produces a one-line-per-message listing of the specified  mes-
5827                  sages.   Each  _\bs_\bc_\ba_\bn  line  contains  the message number (name), the
5828                  date, the "From:" field, the "Subject" field, and, if room  allows,
5829                  some of the body of the message.  For example:
5830
5831                       15+  7/ 5  Dcrocker  nned  <<Last week I asked some of
5832                       16 - 7/ 5  dcrocker  message id format  <<I recommend
5833                       18   7/ 6  Obrien    Re: Exit status from mkdir
5834                       19   7/ 7  Obrien    "scan" listing format in MH
5835
5836                  The `+' on message 15 indicates that it  is  the  current  message.
5837                  The  `-'  on  message  16 indicates that it has been replied to, as
5838                  indicated by a "Replied:"  component  produced  by  an  `-annotate'
5839                  switch to the _\br_\be_\bp_\bl command.
5840
5841                  If there is sufficient room left on the _\bs_\bc_\ba_\bn line  after  the  sub-
5842                  ject,  the line will be filled with text from the body, preceded by
5843                  <<, and terminated by >> if the body is sufficiently  short.   _\bS_\bc_\ba_\bn
5844                  actually  reads  each  of the specified messages and parses them to
5845                  extract the desired fields.  During parsing, appropriate error mes-
5846                  sages  will  be  produced  if there are format errors in any of the
5847                  messages.
5848
5849                  The `-header' switch produces a header line prior to the _\bs_\bc_\ba_\bn list-
5850                  ing.   Currently,  the  name of the folder and the current date and
5851                  time are output (see the HISTORY section for more information).
5852
5853                  If the `-clear' switch is used and _\bs_\bc_\ba_\bn'_\bs output is directed  to  a
5854                  terminal, then _\bs_\bc_\ba_\bn will consult the $TERM and $TERMCAP envariables
5855                  to determine your terminal type in order to find out how  to  clear
5856                  the  screen  prior  to exiting.  If the `-clear' switch is used and
5857                  _\bs_\bc_\ba_\bn'_\bs output is not directed to a terminal  (e.g.,  a  pipe  or  a
5858                  file), then _\bs_\bc_\ba_\bn will send a formfeed prior to exiting.
5859
5860                  For example, the command:
5861
5862                       (scan -clear -header; show all -show pr -f) | lpr
5863
5864                  produces a scan listing  of  the  current  folder,  followed  by  a
5865                  formfeed,  followed  by  a formatted listing of all messages in the
5866                  folder, one per page.  Omitting `-show pr -f' will cause  the  mes-
5867                  sages  to  be  concatenated, separated by a one-line header and two
5868
5869             [mh.6]                           MH.6.8                      UCI version
5870
5871
5872
5873
5874
5875
5876
5877
5878
5879             SCAN(1)                           -89-                           SCAN(1)
5880
5881
5882                  blank lines.
5883
5884                  If _\bs_\bc_\ba_\bn encounters a message without a "Date:" field,  rather  than
5885                  leaving  that  portion  of  the  scan  listing  blank,  the date is
5886                  filled-in with the last write date of the message,  and  post-fixed
5887                  with  a  `*'.   This  is  particularly  handy  for scanning a _\bd_\br_\ba_\bf_\bt
5888                  _\bf_\bo_\bl_\bd_\be_\br, as message drafts usually aren't allowed to have  dates  in
5889                  them.
5890
5891                  To override the output format used by _\bs_\bc_\ba_\bn, the `-format string' or
5892                  `-form file'  switches are used.  This permits individual fields of
5893                  the scan listing to be extracted with ease.  The string is simply a
5894                  format   string  and  the  file  is  simply  a  format  file.   See
5895                  _\bm_\bh-_\bf_\bo_\br_\bm_\ba_\bt (5) for the details.
5896
5897                  In addition to the standard _\bm_\bh-_\bf_\bo_\br_\bm_\ba_\bt (5) escapes, _\bs_\bc_\ba_\bn also recog-
5898                  nizes the following additional _\bc_\bo_\bm_\bp_\bo_\bn_\be_\bn_\bt escapes:
5899
5900                  _\bE_\bs_\bc_\ba_\bp_\be    _\bR_\be_\bt_\bu_\br_\bn_\bs  _\bD_\be_\bs_\bc_\br_\bi_\bp_\bt_\bi_\bo_\bn
5901                  body      string   the (compressed) first part of the body
5902                  dtimenow  date     the current date
5903                  folder    string   the name of the current folder
5904
5905                  Also, if no date header was present in the  message,  the  _\bf_\bu_\bn_\bc_\bt_\bi_\bo_\bn
5906                  escapes  which operate on {_\bd_\ba_\bt_\be} will return values for the date of
5907                  last modification of the message file itself.
5908
5909                  _\bs_\bc_\ba_\bn will update the _\bM_\bH context prior to starting the  listing,  so
5910                  interrupting  a  long  _\bs_\bc_\ba_\bn  listing preserves the new context.  _\bM_\bH
5911                  purists hate this idea.
5912
5913             _\bF_\bi_\bl_\be_\bs
5914                  $HOME/.mh_profile                   The user profile
5915
5916
5917             _\bP_\br_\bo_\bf_\bi_\bl_\be _\bC_\bo_\bm_\bp_\bo_\bn_\be_\bn_\bt_\bs
5918                  Path:                To determine the user's MH directory
5919                  Alternate-Mailboxes: To determine the user's mailboxes
5920                  Current-Folder:      To find the default current folder
5921
5922
5923             _\bS_\be_\be _\bA_\bl_\bs_\bo
5924                  inc(1), pick(1), show(1), mh-format(5)
5925
5926
5927             _\bD_\be_\bf_\ba_\bu_\bl_\bt_\bs
5928                  `+folder' defaults to the folder current
5929                  `msgs' defaults to all
5930                  `-format' defaulted as described above
5931                  `-noheader'
5932                  `-width' defaulted to the width of the terminal
5933
5934
5935             [mh.6]                           MH.6.8                      UCI version
5936
5937
5938
5939
5940
5941
5942
5943
5944
5945             SCAN(1)                           -90-                           SCAN(1)
5946
5947
5948             _\bC_\bo_\bn_\bt_\be_\bx_\bt
5949                  If a folder is given, it will become the current folder.
5950
5951
5952             _\bH_\bi_\bs_\bt_\bo_\br_\by
5953                  Prior to using the format string mechanism, `-header' used to  gen-
5954                  erate a heading saying what each column in the listing was.  Format
5955                  strings prevent this from happening.
5956
5957
5958             _\bB_\bu_\bg_\bs
5959                  The argument to the `-format' switch must be interpreted as a  sin-
5960                  gle token by the shell that invokes _\bs_\bc_\ba_\bn.  Therefore, one must usu-
5961                  ally place the argument to this switch inside double-quotes.
5962                  The value of each _\bc_\bo_\bm_\bp_\bo_\bn_\be_\bn_\bt escape is set by _\bs_\bc_\ba_\bn to  the  contents
5963                  of  the first message header _\bs_\bc_\ba_\bn encounters with the corresponding
5964                  component name; any following headers with the same component  name
5965                  are ignored.
5966
5967                  The switch `-reverse', makes _\bs_\bc_\ba_\bn list the messages in reverse ord-
5968                  er; this should be considered a bug.
5969
5970                  The `-file filename' switch allows the user to obtain a _\bs_\bc_\ba_\bn  list-
5971                  ing of a maildrop file as produced by _\bp_\ba_\bc_\bk_\bf.  This listing includes
5972                  every message in the file.  The user should use _\bm_\bs_\bh for more selec-
5973                  tive  processing  of the file.  `-reverse' is ignored with this op-
5974                  tion.
5975
5976
5977
5978
5979
5980
5981
5982
5983
5984
5985
5986
5987
5988
5989
5990
5991
5992
5993
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             SEND(1)                           -91-                           SEND(1)
6012
6013
6014             _\bN_\bA_\bM_\bE
6015                  send - send a message
6016
6017             _\bS_\bY_\bN_\bO_\bP_\bS_\bI_\bS
6018                  send [-alias aliasfile] [-draft] [-draftfolder +folder]
6019                       [-draftmessage msg] [-nodraftfolder] [-filter filterfile]
6020                       [-nofilter] [-format] [-noformat] [-forward] [-noforward]
6021                       [-msgid] [-nomsgid] [-push] [-nopush] [-verbose] [-noverbose]
6022                       [-watch] [-nowatch] [-width columns] [file ...] [-help]
6023
6024             _\bD_\bE_\bS_\bC_\bR_\bI_\bP_\bT_\bI_\bO_\bN
6025
6026                  _\bS_\be_\bn_\bd will cause each of the specified files to  be  delivered  (via
6027                  _\bp_\bo_\bs_\bt (8))  to each of the destinations in the "To:", "cc:", "Bcc:",
6028                  and "Fcc:" fields of the message.  If  _\bs_\be_\bn_\bd  is  re-distributing  a
6029                  message,  as invoked from _\bd_\bi_\bs_\bt, then the corresponding "Resent-xxx"
6030                  fields are examined instead.
6031
6032                  If `-push' is specified, _\bs_\be_\bn_\bd will detach itself  from  the  user's
6033                  terminal and perform its actions in the background.  If _\bp_\bu_\bs_\bh 'd and
6034                  the draft can't be sent, then the `-forward' switch says that draft
6035                  should be forwarded with the failure notice sent to the user.  This
6036                  differs from putting _\bs_\be_\bn_\bd in the background because the  output  is
6037                  trapped and analyzed by _\bM_\bH.
6038
6039                  If `-verbose' is specified, _\bs_\be_\bn_\bd  will  indicate  the  interactions
6040                  occurring  with the transport system, prior to actual delivery.  If
6041                  `-watch' is specified _\bs_\be_\bn_\bd will monitor the delivery of  local  and
6042                  network  mail.   Hence, by specifying both switches, a large detail
6043                  of information can be gathered about each  step  of  the  message's
6044                  entry into the transport system.
6045
6046                  The `-draftfolder +folder' and `-draftmessage msg' switches  invoke
6047                  the _\bM_\bH draft folder facility.  This is an advanced (and highly use-
6048                  ful) feature.  Consult the Advanced  Features  section  of  the  _\bM_\bH
6049                  manual for more information.
6050
6051                  _\bS_\be_\bn_\bd with no _\bf_\bi_\bl_\be argument will query  whether  the  draft  is  the
6052                  intended  file, whereas `-draft' will suppress this question.  Once
6053                  the transport system has successfully accepted custody of the  mes-
6054                  sage,  the  file will be renamed with a leading comma, which allows
6055                  it to be retrieved until the next draft message is sent.  If  there
6056                  are errors in the formatting of the message, _\bs_\be_\bn_\bd will abort with a
6057                  (hopefully) helpful error message.
6058
6059                  If a "Bcc:" field is encountered, its addresses will  be  used  for
6060                  delivery,  and  the  "Bcc:"  field will be removed from the message
6061                  sent to sighted recipients.  The blind recipients will  receive  an
6062                  entirely  new  message  with a minimal set of headers.  Included in
6063                  the body of the message will be a copy of the message sent  to  the
6064                  sighted  recipients.   If  `-filter filterfile'  is specified, then
6065                  this copy is filtered (re-formatted) prior to  being  sent  to  the
6066
6067             [mh.6]                           MH.6.8                      UCI version
6068
6069
6070
6071
6072
6073
6074
6075
6076
6077             SEND(1)                           -92-                           SEND(1)
6078
6079
6080                  blind recipients.
6081
6082                  Prior to sending the message, the  fields  "From: user@local",  and
6083                  "Date: now" will be appended to the headers in the message.  If the
6084                  envariable $SIGNATURE is set, then its value is used as  your  per-
6085                  sonal  name  when constructing the "From:" line of the message.  If
6086                  this envariable is not set, then  _\bs_\be_\bn_\bd  will  consult  the  profile
6087                  entry "Signature" for this information.  On hosts where _\bM_\bH was con-
6088                  figured with the UCI option, if $SIGNATURE is not set and the "Sig-
6089                  nature"   profile   entry   is   not   present,   then   the   file
6090                  $HOME/.signature is consulted.  If `-msgid' is  specified,  then  a
6091                  "Message-ID:" field will also be added to the message.
6092
6093                  If _\bs_\be_\bn_\bd is re-distributing a message (when invoked by _\bd_\bi_\bs_\bt ),  then
6094                  "Resent-"  will  be  prepended  to  each  of these fields: "From:",
6095                  "Date:", and "Message-ID:".  If  the  message  already  contains  a
6096                  "From:"  field,  then a "Sender: user@local" field will be added as
6097                  well.  (An already existing "Sender:" field is an error!)
6098
6099                  By using the `-format' switch, each of the entries in the "To:" and
6100                  "cc:" fields will be replaced with "standard" format entries.  This
6101                  standard format is designed to be usable  by  all  of  the  message
6102                  handlers  on  the various systems around the Internet.  If `-nofor-
6103                  mat' is given, then headers are output exactly as  they  appear  in
6104                  the message draft.
6105
6106                  If an "Fcc: folder" is encountered, the message will be  copied  to
6107                  the  specified folder for the sender in the format in which it will
6108                  appear to any non-Bcc receivers of the message.  That is,  it  will
6109                  have the appended fields and field reformatting.  The "Fcc:" fields
6110                  will be removed from all outgoing copies of the message.
6111
6112                  By using the `-width columns' switch, the user can direct  _\bs_\be_\bn_\bd  as
6113                  to how long it should make header lines containing addresses.
6114
6115                  The files specified by the profile entry "Aliasfile:" and any addi-
6116                  tional  alias  files given by the `-alias aliasfile' switch will be
6117                  read (more than one file,  each   preceeded  by  `-alias',  can  be
6118                  named).  See _\bm_\bh-_\ba_\bl_\bi_\ba_\bs (5) for more information.
6119
6120             _\bF_\bi_\bl_\be_\bs
6121                  $HOME/.mh_profile                   The user profile
6122
6123
6124             _\bP_\br_\bo_\bf_\bi_\bl_\be _\bC_\bo_\bm_\bp_\bo_\bn_\be_\bn_\bt_\bs
6125                  Path:                To determine the user's MH directory
6126                  Draft-Folder:        To find the default draft-folder
6127                  Aliasfile:           For a default alias file
6128                  Signature:           To determine the user's mail signature
6129                  mailproc:            Program to post failure notices
6130                  postproc:            Program to post the message
6131
6132
6133             [mh.6]                           MH.6.8                      UCI version
6134
6135
6136
6137
6138
6139
6140
6141
6142
6143             SEND(1)                           -93-                           SEND(1)
6144
6145
6146             _\bS_\be_\be _\bA_\bl_\bs_\bo
6147                  comp(1), dist(1), forw(1), repl(1), mh-alias(5), post(8)
6148
6149
6150             _\bD_\be_\bf_\ba_\bu_\bl_\bt_\bs
6151                  `file' defaults to <mh-dir>/draft
6152                  `-alias /usr/local/lib/mh/MailAliases'
6153                  `-nodraftfolder'
6154                  `-nofilter'
6155                  `-format'
6156                  `-forward'
6157                  `-nomsgid'
6158                  `-nopush'
6159                  `-noverbose'
6160                  `-nowatch'
6161                  `-width 72'
6162
6163
6164             _\bC_\bo_\bn_\bt_\be_\bx_\bt
6165                  None
6166
6167
6168             _\bB_\bu_\bg_\bs
6169                  Under some configurations, it is not possible to mointor  the  mail
6170                  delivery transaction; `-watch' is a no-op on those systems.
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             SHOW(1)                           -94-                           SHOW(1)
6210
6211
6212             _\bN_\bA_\bM_\bE
6213                  show - show (list) messages
6214
6215             _\bS_\bY_\bN_\bO_\bP_\bS_\bI_\bS
6216                  show [+folder] [msgs] [-draft] [-header] [-noheader]
6217                       [-showproc program] [-noshowproc] [switches for _\bs_\bh_\bo_\bw_\bp_\br_\bo_\bc]
6218                       [-help]
6219
6220             _\bD_\bE_\bS_\bC_\bR_\bI_\bP_\bT_\bI_\bO_\bN
6221
6222                  _\bS_\bh_\bo_\bw lists each of the specified messages to  the  standard  output
6223                  (typically,  the  terminal).   Typically,  the  messages are listed
6224                  exactly as they are, with no reformatting.  A program named by  the
6225                  _\bs_\bh_\bo_\bw_\bp_\br_\bo_\bc  profile  component  is invoked to do the listing, and any
6226                  switches not recognized by _\bs_\bh_\bo_\bw are passed along to  that  program.
6227                  The  default program is known as _\bm_\bo_\br_\be (1).  To override the default
6228                  and the _\bs_\bh_\bo_\bw_\bp_\br_\bo_\bc profile  component,  use  the  `-showproc program'
6229                  switch.   For  example, `-show pr' will cause the _\bp_\br (1) program to
6230                  list the messages.  The _\bM_\bH command _\bm_\bh_\bl can be used as a _\bs_\bh_\bo_\bw_\bp_\br_\bo_\bc to
6231                  show  messages in a more uniform format.  Normally, this program is
6232                  specified as the _\bs_\bh_\bo_\bw_\bp_\br_\bo_\bc is the user's .mh_profile.   See  _\bm_\bh_\bl (1)
6233                  for  the  details.   If  the  `-noshowproc'  option  is  specified,
6234                  `/bin/cat' is used instead of _\bs_\bh_\bo_\bw_\bp_\br_\bo_\bc.
6235
6236                  The `-header' switch tells _\bs_\bh_\bo_\bw to display a  one-line  description
6237                  of  the  message being shown.  This description includes the folder
6238                  and the message number.
6239
6240                  If no `msgs' are specified, the current message is used.   If  more
6241                  than  one  message  is  specified,  _\bm_\bo_\br_\be will prompt for a <RETURN>
6242                  prior to listing each message.  _\bm_\bo_\br_\be will list each message, a page
6243                  at  a  time.   When  the end of page is reached, _\bm_\bo_\br_\be will ring the
6244                  bell and wait for a <SPACE> or <RETURN>.  If a <RETURN> is entered,
6245                  _\bm_\bo_\br_\be  will print the next line, whereas <SPACE> will print the next
6246                  screenful.  To exit _\bm_\bo_\br_\be, type "q".
6247
6248                  If the standard output is not a terminal, no queries are made,  and
6249                  each file is listed with a one-line header and two lines of separa-
6250                  tion.
6251
6252                  "show -draft" will list the file <mh-dir>/draft if it exists.
6253
6254                  If the profile entry "Unseen-Sequence" is  present  and  non-empty,
6255                  then _\bs_\bh_\bo_\bw will remove each of the messages shown from each sequence
6256                  named  by  the   profile   entry.    This   is   similar   to   the
6257                  "Previous-Sequence"  profile  entry  supported  by  all _\bM_\bH commands
6258                  which take `msgs' or `msg' arguments.
6259
6260             _\bF_\bi_\bl_\be_\bs
6261                  $HOME/.mh_profile                   The user profile
6262
6263
6264
6265             [mh.6]                           MH.6.8                      UCI version
6266
6267
6268
6269
6270
6271
6272
6273
6274
6275             SHOW(1)                           -95-                           SHOW(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                  Current-Folder:      To find the default current folder
6281                  Unseen-Sequence:     To name sequences denoting unseen messages
6282                  showproc:            Program to show messages
6283
6284
6285             _\bS_\be_\be _\bA_\bl_\bs_\bo
6286                  mhl(1), more(1), next(1), pick(1), prev(1), scan(1)
6287
6288
6289             _\bD_\be_\bf_\ba_\bu_\bl_\bt_\bs
6290                  `+folder' defaults to the current folder
6291                  `msgs' defaults to cur
6292                  `-header'
6293
6294
6295             _\bC_\bo_\bn_\bt_\be_\bx_\bt
6296                  If a folder is given, it will become the current folder.  The  last
6297                  message shown will become the current message.
6298
6299
6300
6301
6302
6303
6304
6305
6306
6307
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             SHOW(1)                           -96-                           SHOW(1)
6342
6343
6344             _\bB_\bu_\bg_\bs
6345                  The `-header' switch doesn't work when `msgs' expands to more  than
6346                  one  message.   If the _\bs_\bh_\bo_\bw_\bp_\br_\bo_\bc is _\bm_\bh_\bl, then is problem can be cir-
6347                  cumvented by referencing the "messagename" field in the _\bm_\bh_\bl  format
6348                  file.
6349
6350                  _\bS_\bh_\bo_\bw updates the user's context before showing the message.   Hence
6351                  _\bs_\bh_\bo_\bw  will  mark messages as seen prior to the user actually seeing
6352                  them.  This is generally not a problem, unless the user  relies  on
6353                  the  "unseen"  messages  mechanism, and interrupts _\bs_\bh_\bo_\bw while it is
6354                  showing "unseen" messages.
6355
6356                  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-
6357                  tually  run  the  _\bm_\bh_\bl  program.   Hence,  if  you  define  your own
6358                  _\bs_\bh_\bo_\bw_\bp_\br_\bo_\bc, don't call it _\bm_\bh_\bl since _\bs_\bh_\bo_\bw won't run it.
6359
6360                  If _\bm_\bo_\br_\be (1) is your showproc (the default), then avoid running _\bs_\bh_\bo_\bw
6361                  in  the  background  with only its standard output piped to another
6362                  process, as in
6363
6364                       show | imprint &
6365
6366                  Due to a bug in _\bm_\bo_\br_\be, show will go into a "tty  input"  state.   To
6367                  avoid  this  problem,  re-direct  _\bs_\bh_\bo_\bw's diagnostic output as well.
6368                  For users of _\bc_\bs_\bh:
6369
6370                       show |& imprint &
6371
6372                  For users of _\bs_\bh:
6373
6374                       show 2>&1 | imprint &
6375
6376
6377
6378
6379
6380
6381
6382
6383
6384
6385
6386
6387
6388
6389
6390
6391
6392
6393
6394
6395
6396
6397             [mh.6]                           MH.6.8                      UCI version
6398
6399
6400
6401
6402
6403
6404
6405
6406
6407             SLOCAL(1)                         -97-                         SLOCAL(1)
6408
6409
6410             _\bN_\bA_\bM_\bE
6411                  slocal - special local mail delivery
6412
6413             _\bS_\bY_\bN_\bO_\bP_\bS_\bI_\bS
6414                  /usr/local/lib/mh/slocal [address info sender]
6415                       [-addr address] [-info data] [-sender sender]
6416                       [-user username] [-mailbox mbox] [-file file]
6417                       [-maildelivery deliveryfile] [-verbose] [-noverbose] [-debug]
6418                       [-help]
6419
6420             _\bD_\bE_\bS_\bC_\bR_\bI_\bP_\bT_\bI_\bO_\bN
6421
6422                  _\bS_\bl_\bo_\bc_\ba_\bl is a program designed to allow you to have your inbound mail
6423                  processed according to a complex set of selection criteria.  You do
6424                  not normally invoke _\bs_\bl_\bo_\bc_\ba_\bl yourself, rather _\bs_\bl_\bo_\bc_\ba_\bl  is  invoked  on
6425                  your behalf by your system's Message Transfer Agent.
6426
6427                  The message selection criteria used by _\bs_\bl_\bo_\bc_\ba_\bl is specified  in  the
6428                  file  ._\bm_\ba_\bi_\bl_\bd_\be_\bl_\bi_\bv_\be_\br_\by  in  the  user's home directory.  The format of
6429                  this file is given below.
6430
6431                  The message delivery address and message sender are determined from
6432                  the  Message  Transfer  Agent  envelope  information,  if possible.
6433                  Under _\bS_\be_\bn_\bd_\bM_\ba_\bi_\bl, the sender will  obtained  from  the  UUCP  "From "
6434                  line,  if present.  The user may override these values with command
6435                  line arguments, or arguments to the `-addr' and `-sender' switches.
6436
6437                  The message is normally read from the standard input.  The  `-file'
6438                  switch  sets  the name of the file from which the message should be
6439                  read, instead of reading stdin.  The `-user'  switch  tells  _\bs_\bl_\bo_\bc_\ba_\bl
6440                  the  name  of the user for whom it is delivering mail.  The `-mail-
6441                  box' switch tells _\bs_\bl_\bo_\bc_\ba_\bl the name of the user's maildrop file.
6442
6443                  The `-info' switch may be used to pass  an  arbitrary  argument  to
6444                  sub-processes  which  _\bs_\bl_\bo_\bc_\ba_\bl may invoke on your behalf.  The `-ver-
6445                  bose' switch causes _\bs_\bl_\bo_\bc_\ba_\bl to give information on stdout about  its
6446                  progress.  The `-debug' switch produces more verbose debugging out-
6447                  put on stderr.
6448
6449
6450               _\bM_\be_\bs_\bs_\ba_\bg_\be _\bT_\br_\ba_\bn_\bs_\bf_\be_\br _\bA_\bg_\be_\bn_\bt_\bs
6451
6452                  If your MTA is _\bS_\be_\bn_\bd_\bM_\ba_\bi_\bl, you should include the line
6453
6454                           "| /usr/local/lib/mh/slocal -user username"
6455
6456                  in your .forward file in your  home  directory.   This  will  cause
6457                  _\bS_\be_\bn_\bd_\bM_\ba_\bi_\bl to invoke _\bs_\bl_\bo_\bc_\ba_\bl on your behalf.
6458
6459                  If  your  MTA   is   _\bM_\bM_\bD_\bF-_\bI,   you   should   (symbolically)   link
6460                  /usr/local/lib/mh/slocal  to  the  file  bin/rcvmail  in  your home
6461                  directory.  This will cause _\bM_\bM_\bD_\bF-_\bI to invoke _\bs_\bl_\bo_\bc_\ba_\bl on your  behalf
6462
6463             [mh.6]                           MH.6.8                      UCI version
6464
6465
6466
6467
6468
6469
6470
6471
6472
6473             SLOCAL(1)                         -98-                         SLOCAL(1)
6474
6475
6476                  with the correct "_\ba_\bd_\bd_\br_\be_\bs_\bs _\bi_\bn_\bf_\bo _\bs_\be_\bn_\bd_\be_\br" arguments.
6477
6478                  If your MTA is  _\bM_\bM_\bD_\bF-_\bI_\bI,  then  you  should  not  use  _\bs_\bl_\bo_\bc_\ba_\bl.   An
6479                  equivalent  functionality is already provided by _\bM_\bM_\bD_\bF-_\bI_\bI; see mail-
6480                  delivery(5) for details.
6481
6482
6483               _\bT_\bh_\be _\bM_\ba_\bi_\bl_\bd_\be_\bl_\bi_\bv_\be_\br_\by _\bF_\bi_\bl_\be
6484
6485
6486                  The ._\bm_\ba_\bi_\bl_\bd_\be_\bl_\bi_\bv_\be_\br_\by file controls how local  delivery  is  performed.
6487                  Each  line  of  this  file  consists  of  five fields, separated by
6488                  white-space or comma.  Since double-quotes are honored, these char-
6489                  acters may be included in a single argument by enclosing the entire
6490                  argument in double-quotes.   A  double-quote  can  be  included  by
6491                  preceding  it  with  a  backslash.   Lines  beginning  with `#' are
6492                  ignored.  The format of each line in the ._\bm_\ba_\bi_\bl_\bd_\be_\bl_\bi_\bv_\be_\br_\by file is:
6493
6494
6495                          header  pattern action  result  string
6496
6497                  header:
6498                       The name of a header field that is to be searched for  a  pat-
6499                       tern.   This  is  any field in the headers of the message that
6500                       might be present.   The  following  special  fields  are  also
6501                       defined:
6502
6503                       _\bs_\bo_\bu_\br_\bc_\be    the out-of-band sender information
6504                       _\ba_\bd_\bd_\br      the address that was used to cause delivery  to  the
6505                                 recipient
6506                       _\bd_\be_\bf_\ba_\bu_\bl_\bt   this  matches  _\bo_\bn_\bl_\by  if  the  message  hasn't   been
6507                                 delivered yet
6508                       *         this always matches
6509
6510                  pattern:
6511                       The sequence of characters to match in  the  specified  header
6512                       field.  Matching is case-insensitive, but does not use regular
6513                       expressions.
6514
6515                  action:
6516                       The action to take to deliver the message:
6517
6518                       _\bd_\be_\bs_\bt_\br_\bo_\by   This action always succeeds.
6519
6520                       _\bf_\bi_\bl_\be or > Append the message to the file named by string.  The
6521                                 message is appended to the file in the maildrop for-
6522                                 mat which is used by your message transport  system.
6523                                 If  the  message  can  be appended to the file, then
6524                                 this action succeeds.  When writing to the  file,  a
6525                                 "Delivery-Date: date"  header  is  added which indi-
6526                                 cates the date and time that message was appended to
6527                                 the file.
6528
6529             [mh.6]                           MH.6.8                      UCI version
6530
6531
6532
6533
6534
6535
6536
6537
6538
6539             SLOCAL(1)                         -99-                         SLOCAL(1)
6540
6541
6542                       _\bm_\bb_\bo_\bx      Identical to _\bf_\bi_\bl_\be, but always  appends  the  message
6543                                 using  the  format  used  by _\bp_\ba_\bc_\bk_\bf (the MMDF mailbox
6544                                 format).
6545
6546                       _\bp_\bi_\bp_\be or | Pipe the message as the standard input to  the  com-
6547                                 mand  named  by string, using the Bourne shell _\bs_\bh(1)
6548                                 to interpret the string.  Prior to giving the string
6549                                 to  the  shell,  it  is  expanded with the following
6550                                 built-in variables:
6551
6552                                 $(sender) the out-of-band sender information
6553                                 $(address)  the  address  that  was  used  to  cause
6554                                           delivery to the recipient
6555                                 $(size)   the size of the message in bytes
6556                                 $(reply-to) either the "Reply-To:" or "From:"  field
6557                                           of the message
6558                                 $(info)   the out-of-band information specified
6559                       _\bq_\bp_\bi_\bp_\be or
6560                       <_\bc_\ba_\br_\be_\bt>   Similar to _\bp_\bi_\bp_\be, but executes the command  directly,
6561                                 after  built-in  variable  expansion, without assis-
6562                                 tance from the shell.  This action can  be  used  to
6563                                 avoid  quoting  special  characters which your shell
6564                                 might interpret.
6565
6566                  result:
6567                       Indicates how the action should be performed:
6568
6569                       _\bA         Perform the action.  If the  action  succeeds,  then
6570                                 the message is considered delivered.
6571
6572                       _\bR         Perform the action.  Regardless of  the  outcome  of
6573                                 the action, the message is not considered delivered.
6574
6575                       ?         Perform the action only if the message has not  been
6576                                 delivered.  If the action succeeds, then the message
6577                                 is considered delivered.
6578
6579                       _\bN         Perform the action only if the message has not  been
6580                                 delivered  and  the  previous  action succeeded.  If
6581                                 this action succeeds, then the message is considered
6582                                 delivered.
6583
6584                  To summarize, here's an example:
6585
6586                  #_\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
6587                  # lines starting with a '#' are ignored, as are blank lines
6588                  #
6589                  # file mail with mmdf2 in the "To:" line into file mmdf2.log
6590                  _\bT_\bo       _\bm_\bm_\bd_\bf_\b2      _\bf_\bi_\bl_\be     _\bA       _\bm_\bm_\bd_\bf_\b2._\bl_\bo_\bg
6591                  # Messages from mmdf pipe to the program err-message-archive
6592                  _\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
6593                  # Anything with the "Sender:" address "mh-workers"
6594
6595             [mh.6]                           MH.6.8                      UCI version
6596
6597
6598
6599
6600
6601
6602
6603
6604
6605             SLOCAL(1)                        -100-                         SLOCAL(1)
6606
6607
6608                  # file in mh.log if not filed already
6609                  _\bS_\be_\bn_\bd_\be_\br   _\bm_\bh-_\bw_\bo_\br_\bk_\be_\br_\bs _\bf_\bi_\bl_\be     ?       _\bm_\bh._\bl_\bo_\bg
6610                  # "To:" unix - put in file unix-news
6611                  _\bT_\bo       _\bU_\bn_\bi_\bx        >       _\bA       _\bu_\bn_\bi_\bx-_\bn_\be_\bw_\bs
6612                  # if the address is jpo=ack - send an acknowledgement copy back
6613                  _\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)"
6614                  # anything from steve - destroy!
6615                  _\bF_\br_\bo_\bm     _\bs_\bt_\be_\bv_\be    _\bd_\be_\bs_\bt_\br_\bo_\by    _\bA       -
6616                  # anything not matched yet - put into mailbox
6617                  _\bd_\be_\bf_\ba_\bu_\bl_\bt  -           >       ?       _\bm_\ba_\bi_\bl_\bb_\bo_\bx
6618                  # always run rcvtty
6619                  *        -           |       _\bR       /_\bm_\bh/_\bl_\bi_\bb/_\br_\bc_\bv_\bt_\bt_\by
6620
6621                  The file is always read completely, so that several matches can  be
6622                  made and several actions can be taken.  The ._\bm_\ba_\bi_\bl_\bd_\be_\bl_\bi_\bv_\be_\br_\by file must
6623                  be owned either by the user or by root, and must be  writable  only
6624                  by  the  owner.  If the ._\bm_\ba_\bi_\bl_\bd_\be_\bl_\bi_\bv_\be_\br_\by file cannot be found, or does
6625                  not perform an action which delivers the  message,  then  the  file
6626                  /usr/local/lib/mh/maildelivery is read according to the same rules.
6627                  This file must be owned by the root and must be  writable  only  by
6628                  the  root.   If  this  file  cannot be found or does not perform an
6629                  action which delivers the message, then standard  delivery  to  the
6630                  user's maildrop is performed.
6631
6632
6633               _\bS_\bu_\bb-_\bp_\br_\bo_\bc_\be_\bs_\bs _\be_\bn_\bv_\bi_\br_\bo_\bn_\bm_\be_\bn_\bt
6634
6635                  When a process is invoked, its environment is:  the  user/group-ids
6636                  are   set   to  recipient's  ids;  the  working  directory  is  the
6637                  recipient's home directory; the umask is 0077; the process  has  no
6638                  /dev/tty;  the  standard  input is set to the message; the standard
6639                  output and diagnostic output are set to /dev/null; all other  file-
6640                  descriptors  are  closed;  the envariables $USER, $HOME, $SHELL are
6641                  set appropriately, and no other envariables exist.
6642
6643                  The process is given a certain amount of time to execute.   If  the
6644                  process  does  not exit within this limit, the process will be ter-
6645                  minated with extreme prejudice.  The amount of time  is  calculated
6646                  as  ((size  x 60) + 300) seconds, where size is the number of bytes
6647                  in the message.
6648
6649                  The exit status of the process is consulted in determining the suc-
6650                  cess  of  the action.  An exit status of zero means that the action
6651                  succeeded.  Any other exit status (or abnormal  termination)  means
6652                  that the action failed.
6653
6654                  In order to avoid any time limitations, you might implement a  pro-
6655                  cess  that began by _\bf_\bo_\br_\bk_\bi_\bn_\bg.  The parent would return the appropri-
6656                  ate value immediately, and the child could continue on, doing what-
6657                  ever it wanted for as long as it wanted.  This approach is somewhat
6658                  risky if the parent is going to return an exit status of zero.   If
6659                  the  parent  is  going  to return a non-zero exit status, then this
6660
6661             [mh.6]                           MH.6.8                      UCI version
6662
6663
6664
6665
6666
6667
6668
6669
6670
6671             SLOCAL(1)                        -101-                         SLOCAL(1)
6672
6673
6674                  approach can lead to quicker delivery into your maildrop.
6675
6676             _\bF_\bi_\bl_\be_\bs
6677                  /usr/local/lib/mh/mtstailor         MH tailor file
6678                  $HOME/.maildelivery                 The file controlling local delivery
6679                  /usr/local/lib/mh/maildelivery      Rather than the standard file
6680                  /usr/spool/mail/$USER               The default maildrop
6681
6682
6683             _\bS_\be_\be _\bA_\bl_\bs_\bo
6684                  rcvstore(1), mhook(1), mh-format(5)
6685
6686
6687             _\bD_\be_\bf_\ba_\bu_\bl_\bt_\bs
6688                  `-noverbose'
6689                  `-maildelivery .maildelivery'
6690                  `-mailbox /usr/spool/mail/$USER'
6691                  `-file' defaults to stdin
6692                  `-user' defaults to the current user
6693
6694
6695             _\bC_\bo_\bn_\bt_\be_\bx_\bt
6696                  None
6697
6698
6699             _\bH_\bi_\bs_\bt_\bo_\br_\by
6700                  _\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
6701                  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
6702                  is limited, as is the functionality of _\bs_\bl_\bo_\bc_\ba_\bl.
6703
6704                  In addition to an exit status of zero, the _\bM_\bM_\bD_\bF values _\bR_\bP__\bM_\bO_\bK  (32)
6705                  and  _\bR_\bP__\bO_\bK (9) mean that the message has been fully delivered.  Any
6706                  other non-zero exit status, including abnormal termination, is  in-
6707                  terpreted  as the _\bM_\bM_\bD_\bF value _\bR_\bP__\bM_\bE_\bC_\bH (200), which means "use an al-
6708                  ternate route" (deliver the message to the maildrop).
6709
6710
6711             _\bB_\bu_\bg_\bs
6712                  Only two return codes are meaningful, others should be.
6713
6714                  _\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
6715                  functionality provided by MMDF-II.
6716
6717                  Versions of _\bM_\bM_\bD_\bF with the _\bm_\ba_\bi_\bl_\bd_\be_\bl_\bi_\bv_\be_\br_\by  mechanism  aren't  entirely
6718                  backwards-compatible with earlier versions of _\bM_\bM_\bD_\bF.  If you have an
6719                  _\bM_\bM_\bD_\bF-_\bI old-style hook, the best you can do is to  have  a  one-line
6720                  ._\bm_\ba_\bi_\bl_\bd_\be_\bl_\bi_\bv_\be_\br_\by file:
6721
6722                       default - pipe A "bin/rcvmail $(address) $(info) $(sender)"
6723
6724
6725
6726
6727             [mh.6]                           MH.6.8                      UCI version
6728
6729
6730
6731
6732
6733
6734
6735
6736
6737             SORTM(1)                         -102-                          SORTM(1)
6738
6739
6740             _\bN_\bA_\bM_\bE
6741                  sortm - sort messages
6742
6743             _\bS_\bY_\bN_\bO_\bP_\bS_\bI_\bS
6744                  sortm [+folder] [msgs] [-datefield field] [-textfield field]
6745                       [-notextfield] [-limit days] [-nolimit] [-verbose]
6746                       [-noverbose] [-help]
6747
6748             _\bD_\bE_\bS_\bC_\bR_\bI_\bP_\bT_\bI_\bO_\bN
6749
6750                  _\bS_\bo_\br_\bt_\bm sorts the specified messages in the named folder according to
6751                  the chronological order of the "Date:" field of each message.
6752
6753                  The `-verbose' switch directs _\bs_\bo_\br_\bt_\bm to tell the  user  the  general
6754                  actions that it is taking to place the folder in sorted order.
6755
6756                  The `-datefield field' switch tells _\bs_\bo_\br_\bt_\bm the name of the field  to
6757                  use  when  making  the  date comparison.  If the user has a special
6758                  field in each message, such as  "BB-Posted:"  or  "Delivery-Date:",
6759                  then  the  `-datefield'  switch  can  be used to direct _\bs_\bo_\br_\bt_\bm which
6760                  field to examine.
6761
6762                  The `-textfield field' switch causes _\bs_\bo_\br_\bt_\bm to sort messages by  the
6763                  specified  text  field.   If  this  field is "subject", any leading
6764                  "re:" is stripped off.  In any case, all characters except  letters
6765                  and  numbers  are  stripped  and  the  resulting strings are sorted
6766                  datefield-major, textfield-minor, using  a  case  insensitive  com-
6767                  parison.
6768
6769                  With `-textfield field', if `-limit days'  is  specified,  messages
6770                  with  similar textfields that are dated within `days' of each other
6771                  appear together.  Specifying `-nolimit' makes the  limit  infinity.
6772                  With   `-limit  0',  the  sort  is  instead  made  textfield-major,
6773                  date-minor.
6774
6775                  For example, to order a folder by date-major, subject-minor, use:
6776
6777                       sortm -textfield subject +folder
6778
6779
6780             _\bF_\bi_\bl_\be_\bs
6781                  $HOME/.mh_profile                   The user profile
6782
6783
6784             _\bP_\br_\bo_\bf_\bi_\bl_\be _\bC_\bo_\bm_\bp_\bo_\bn_\be_\bn_\bt_\bs
6785                  Path:                To determine the user's MH directory
6786                  Current-Folder:      To find the default current folder
6787
6788
6789             _\bS_\be_\be _\bA_\bl_\bs_\bo
6790                  folder (1)
6791
6792
6793             [mh.6]                           MH.6.8                      UCI version
6794
6795
6796
6797
6798
6799
6800
6801
6802
6803             SORTM(1)                         -103-                          SORTM(1)
6804
6805
6806             _\bD_\be_\bf_\ba_\bu_\bl_\bt_\bs
6807                  `+folder' defaults to the current folder
6808                  `msgs' defaults to all
6809                  `-datefield date'
6810                  `-notextfield'
6811                  `-noverbose'
6812                  `-nolimit'
6813
6814
6815             _\bC_\bo_\bn_\bt_\be_\bx_\bt
6816                  If a folder is given, it will become the current  folder.   If  the
6817                  current  message  is  moved,  _\bs_\bo_\br_\bt_\bm  will  preserve  its  status as
6818                  current.
6819
6820
6821             _\bH_\bi_\bs_\bt_\bo_\br_\by
6822                  Timezones used to be ignored when comparing dates: they aren't  any
6823                  more.
6824
6825                  Messages which were in the folder, but  not  specified  by  `msgs',
6826                  used  to  be  moved to the end of the folder; now such messages are
6827                  left untouched.
6828
6829                  _\bS_\bo_\br_\bt_\bm sometimes did not preserve the message numbering in a  folder
6830                  (e.g.,  messages 1, 3, and 5, might have been renumbered to 1, 2, 3
6831                  after sorting).  This was a bug, and has been fixed.   To  compress
6832                  the message numbering in a folder, use "_\bf_\bo_\bl_\bd_\be_\br -_\bp_\ba_\bc_\bk" as always.
6833
6834
6835             _\bB_\bu_\bg_\bs
6836                  If _\bs_\bo_\br_\bt_\bm encounters a message without a date-field, or if the  mes-
6837                  sage  has a date-field that _\bs_\bo_\br_\bt_\bm cannot parse, then _\bs_\bo_\br_\bt_\bm attempts
6838                  to keep the message in the same relative position.  This  does  not
6839                  always  work.  For instance, if the first message encountered lacks
6840                  a date which can be parsed, then it will usually be placed  at  the
6841                  end of the messages being sorted.
6842
6843                  When _\bs_\bo_\br_\bt_\bm complains about a message which it can't temporally ord-
6844                  er,  it  complains  about  the message number _\bp_\br_\bi_\bo_\br to sorting.  It
6845                  should indicate what the message number will be _\ba_\bf_\bt_\be_\br sorting.
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             VMH(1)                           -104-                            VMH(1)
6870
6871
6872             _\bN_\bA_\bM_\bE
6873                  vmh - visual front-end to MH
6874
6875             _\bS_\bY_\bN_\bO_\bP_\bS_\bI_\bS
6876                  vmh [-prompt string] [-vmhproc program] [-novmhproc]
6877                       [switches for _\bv_\bm_\bh_\bp_\br_\bo_\bc] [-help]
6878
6879             _\bD_\bE_\bS_\bC_\bR_\bI_\bP_\bT_\bI_\bO_\bN
6880
6881                  _\bv_\bm_\bh is a program which implements the server side of the _\bM_\bH  window
6882                  management  protocol  and  uses  _\bc_\bu_\br_\bs_\be_\bs (3)  routines to maintain a
6883                  split-screen interface to any program which implements  the  client
6884                  side  of the protocol.  This latter program, called the _\bv_\bm_\bh_\bp_\br_\bo_\bc, is
6885                  specified using the `-vmhproc program' switch.
6886
6887                  The upshot of all this is that one can run _\bm_\bs_\bh on a display  termi-
6888                  nal and get a nice visual interface.  To do this, for example, just
6889                  add the line
6890
6891                       mshproc: vmh
6892
6893                  to your .mh_profile.  (This takes advantage of the fact that _\bm_\bs_\bh is
6894                  the default _\bv_\bm_\bh_\bp_\br_\bo_\bc for _\bv_\bm_\bh.)
6895
6896                  In order to facilitate things, if the `-novmhproc' switch is given,
6897                  and  _\bv_\bm_\bh  can't  run  on  the  user's  terminal, the _\bv_\bm_\bh_\bp_\br_\bo_\bc is run
6898                  directly without the window management protocol.
6899
6900                  After initializing the protocol, _\bv_\bm_\bh prompts the user for a command
6901                  to  be  given to the client.  Usually, this results in output being
6902                  sent to one or more windows.  If a output to a window  would  cause
6903                  it  to  scroll, _\bv_\bm_\bh prompts the user for instructions, roughly per-
6904                  mitting the capabilities of _\bl_\be_\bs_\bs or  _\bm_\bo_\br_\be  (e.g.,  the  ability  to
6905                  scroll backwards and forwards):
6906
6907                       SPACE      advance to the next windowful
6908                       RETURN  *  advance to the next line
6909                       y       *  retreat to the previous line
6910                       d       *  advance to the next ten lines
6911                       u       *  retreat to the previous ten lines
6912                       g       *  go to an arbitrary line
6913                                  (preceed g with the line number)
6914                       G       *  go to the end of the window
6915                                  (if a line number is given, this acts like `g')
6916                       CTRL-L     refresh the entire screen
6917                       h          print a help message
6918                       q          abort the window
6919
6920                  (A `*' indicates that a numeric prefix is meaningful for this  com-
6921                  mand.)
6922
6923                  Note that if a command resulted in more than one window's worth  of
6924
6925             [mh.6]                           MH.6.8                      UCI version
6926
6927
6928
6929
6930
6931
6932
6933
6934
6935             VMH(1)                           -105-                            VMH(1)
6936
6937
6938                  information  being  displayed,  and  you allow the command which is
6939                  generating information for the window to gracefully  finish  (i.e.,
6940                  you  don't  use  the `q' command to abort information being sent to
6941                  the window), then _\bv_\bm_\bh will give you one last change to  peruse  the
6942                  window.   This  is  useful for scrolling back and forth.  Just type
6943                  `q' when you're done.
6944
6945                  To abnormally terminate _\bv_\bm_\bh (without core dump), use  <QUIT>  (usu-
6946                  ally  CTRL-\).   For instance, this does the "right" thing with _\bb_\bb_\bc
6947                  and _\bm_\bs_\bh.
6948
6949             _\bF_\bi_\bl_\be_\bs
6950                  $HOME/.mh_profile                   The user profile
6951
6952
6953             _\bP_\br_\bo_\bf_\bi_\bl_\be _\bC_\bo_\bm_\bp_\bo_\bn_\be_\bn_\bt_\bs
6954                  Path:                To determine the user's MH directory
6955
6956
6957             _\bS_\be_\be _\bA_\bl_\bs_\bo
6958                  msh(1)
6959
6960
6961             _\bD_\be_\bf_\ba_\bu_\bl_\bt_\bs
6962                  `-prompt (vmh) '
6963                  `-vmhproc msh'
6964
6965
6966             _\bC_\bo_\bn_\bt_\be_\bx_\bt
6967                  None
6968
6969
6970             _\bB_\bu_\bg_\bs
6971                  The argument to the `-prompt' switch must be interpreted as a  sin-
6972                  gle  token by the shell that invokes _\bv_\bm_\bh.  Therefore, one must usu-
6973                  ally place the argument to this switch inside double-quotes.
6974
6975                  At present, there is no way to pass signals (e.g., interrupt, quit)
6976                  to the client.  However, generating QUIT when _\bv_\bm_\bh is reading a com-
6977                  mand from the terminal is sufficient to tell the client to go  away
6978                  quickly.
6979
6980                  Acts strangely (loses peer or botches  window  management  protocol
6981                  with peer) on random occasions.
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             WHATNOW(1)                       -106-                        WHATNOW(1)
7002
7003
7004             _\bN_\bA_\bM_\bE
7005                  whatnow - prompting front-end for send
7006
7007             _\bS_\bY_\bN_\bO_\bP_\bS_\bI_\bS
7008                  whatnow [-draftfolder +folder] [-draftmessage msg] [-nodraftfolder]
7009                       [-editor editor] [-noedit] [-prompt string] [file] [-help]
7010
7011             _\bD_\bE_\bS_\bC_\bR_\bI_\bP_\bT_\bI_\bO_\bN
7012
7013                  _\bW_\bh_\ba_\bt_\bn_\bo_\bw is the default program that  queries  the  user  about  the
7014                  disposition  of a composed draft.  It is normally invoked by one of
7015                  _\bc_\bo_\bm_\bp, _\bd_\bi_\bs_\bt, _\bf_\bo_\br_\bw, or _\br_\be_\bp_\bl after the initial edit.
7016
7017                  When started, the editor is started on the draft (unless  `-noedit'
7018                  is  given,  in  which  case the initial edit is suppressed).  Then,
7019                  _\bw_\bh_\ba_\bt_\bn_\bo_\bw repetitively prompts the user with "What now?" and awaits a
7020                  response.  The valid responses are:
7021
7022                  display         to list the message being distributed/replied-to on
7023                                  the terminal
7024                  edit            to re-edit using the same editor that was used on the
7025                                  preceding round unless a profile entry
7026                                  "<lasteditor>-next: <editor>" names an alternate editor
7027                  edit <editor>   to invoke <editor> for further editing
7028                  list            to list the draft on the terminal
7029                  push            to send the message in the background
7030                  quit            to terminate the session and preserve the draft
7031                  quit -delete    to terminate, then delete the draft
7032                  refile +folder  to refile the draft into the given folder
7033                  send            to send the message
7034                  send -watch     to cause the delivery process to be monitored
7035                  whom            to list the addresses that the message will go to
7036                  whom -check     to list the addresses and verify that they are
7037                                  acceptable to the transport service
7038
7039                  For the edit response, any valid switch to  the  editor  is  valid.
7040                  Similarly,  for  the  send  and whom responses, any valid switch to
7041                  _\bs_\be_\bn_\bd (1) and _\bw_\bh_\bo_\bm (1) commands, respectively, are valid.   For  the
7042                  push  response,  any  valid  switch  to  _\bs_\be_\bn_\bd (1) is valid (as this
7043                  merely invokes _\bs_\be_\bn_\bd with  the  `-push'  option).   For  the  _\br_\be_\bf_\bi_\bl_\be
7044                  response,  any  valid  switch  to  the  _\bf_\bi_\bl_\be_\bp_\br_\bo_\bc is valid.  For the
7045                  display and list responses, any valid  argument  to  the  _\bl_\bp_\br_\bo_\bc  is
7046                  valid.   If any non-switch arguments are present, then the pathname
7047                  of the draft will be excluded from the argument list given  to  the
7048                  _\bl_\bp_\br_\bo_\bc (this is useful for listing another _\bM_\bH message).
7049
7050                  See _\bm_\bh-_\bp_\br_\bo_\bf_\bi_\bl_\be (5) for further information about  how  editors  are
7051                  used  by MH.  It also discusses how complex envariables can be used
7052                  to direct _\bw_\bh_\ba_\bt_\bn_\bo_\bw's actions.
7053
7054                  The `-prompt string' switch sets the prompting string for _\bw_\bh_\ba_\bt_\bn_\bo_\bw.
7055
7056
7057             [mh.6]                           MH.6.8                      UCI version
7058
7059
7060
7061
7062
7063
7064
7065
7066
7067             WHATNOW(1)                       -107-                        WHATNOW(1)
7068
7069
7070                  The `-draftfolder +folder' and `-draftmessage msg' switches  invoke
7071                  the _\bM_\bH draft folder facility.  This is an advanced (and highly use-
7072                  ful) feature.  Consult the Advanced  Features  section  of  the  _\bM_\bH
7073                  manual for more information.
7074
7075             _\bF_\bi_\bl_\be_\bs
7076                  $HOME/.mh_profile                   The user profile
7077                  <mh-dir>/draft                      The draft file
7078
7079
7080             _\bP_\br_\bo_\bf_\bi_\bl_\be _\bC_\bo_\bm_\bp_\bo_\bn_\be_\bn_\bt_\bs
7081                  Path:                To determine the user's MH directory
7082                  Draft-Folder:        To find the default draft-folder
7083                  Editor:              To override the default editor
7084                  <lasteditor>-next:   To name an editor to be used after  exit  from
7085                  <lasteditor>
7086                  fileproc:            Program to refile the message
7087                  lproc:               Program to list the contents of a message
7088                  sendproc:            Program to use to send the message
7089                  whomproc:            Program to determine who a message would go to
7090
7091
7092             _\bS_\be_\be _\bA_\bl_\bs_\bo
7093                  send(1), whom(1)
7094
7095
7096             _\bD_\be_\bf_\ba_\bu_\bl_\bt_\bs
7097                  `-prompt "What Now? "'
7098
7099
7100             _\bC_\bo_\bn_\bt_\be_\bx_\bt
7101                  None
7102
7103
7104             _\bB_\bu_\bg_\bs
7105                  The argument to the `-prompt' switch must be interpreted as a  sin-
7106                  gle  token  by the shell that invokes _\bw_\bh_\ba_\bt_\bn_\bo_\bw.  Therefore, one must
7107                  usually place the argument to this switch inside double-quotes.
7108
7109                  If the initial edit fails, _\bw_\bh_\ba_\bt_\bn_\bo_\bw deletes your draft (by  renaming
7110                  it  with  a  leading  comma); failure of a later edit preverves the
7111                  draft.
7112
7113                  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
7114                  built-in  _\bw_\bh_\ba_\bt_\bn_\bo_\bw,  and  do  not  actually run the _\bw_\bh_\ba_\bt_\bn_\bo_\bw program.
7115                  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
7116                  since it won't be run.
7117
7118                  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
7119                  actually  run  the  _\bs_\be_\bn_\bd  program.   Hence,  if you define your own
7120                  _\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.
7121
7122
7123             [mh.6]                           MH.6.8                      UCI version
7124
7125
7126
7127
7128
7129
7130
7131
7132
7133             WHATNOW(1)                       -108-                        WHATNOW(1)
7134
7135
7136             _\bN_\bA_\bM_\bE
7137                  whom - report to whom a message would go
7138
7139             _\bS_\bY_\bN_\bO_\bP_\bS_\bI_\bS
7140                  whom [-alias aliasfile] [-check] [-nocheck] [-draft]
7141                       [-draftfolder +folder] [-draftmessage msg] [-nodraftfolder]
7142                       [file] [-help]
7143
7144             _\bD_\bE_\bS_\bC_\bR_\bI_\bP_\bT_\bI_\bO_\bN
7145
7146                  _\bW_\bh_\bo_\bm is used to expand the headers of  a  message  into  a  set  of
7147                  addresses  and  optionally verify that those addresses are deliver-
7148                  able at that time (if `-check' is given).
7149
7150                  The `-draftfolder +folder' and `-draftmessage msg' switches  invoke
7151                  the _\bM_\bH draft folder facility.  This is an advanced (and highly use-
7152                  ful) feature.  Consult the Advanced  Features  section  of  the  _\bM_\bH
7153                  manual for more information.
7154
7155                  The files specified by the profile entry "Aliasfile:" and any addi-
7156                  tional  alias  files given by the `-alias aliasfile' switch will be
7157                  read (more than one file,  each   preceeded  by  `-alias',  can  be
7158                  named).  See _\bm_\bh-_\ba_\bl_\bi_\ba_\bs (5) for more information.
7159
7160             _\bF_\bi_\bl_\be_\bs
7161                  $HOME/.mh_profile                   The user profile
7162
7163
7164             _\bP_\br_\bo_\bf_\bi_\bl_\be _\bC_\bo_\bm_\bp_\bo_\bn_\be_\bn_\bt_\bs
7165                  Path:                To determine the user's MH directory
7166                  Draft-Folder:        To find the default draft-folder
7167                  Aliasfile:           For a default alias file
7168                  postproc:            Program to post the message
7169
7170
7171             _\bS_\be_\be _\bA_\bl_\bs_\bo
7172                  mh-alias(5), post(8)
7173
7174
7175             _\bD_\be_\bf_\ba_\bu_\bl_\bt_\bs
7176                  `file' defaults to <mh-dir>/draft
7177                  `-nocheck'
7178                  `-alias /usr/local/lib/mh/MailAliases'
7179
7180
7181             _\bC_\bo_\bn_\bt_\be_\bx_\bt
7182                  None
7183
7184
7185
7186
7187
7188
7189             [mh.6]                           MH.6.8                      UCI version
7190
7191
7192
7193
7194
7195
7196
7197
7198
7199             WHOM(1)                          -109-                           WHOM(1)
7200
7201
7202             _\bB_\bu_\bg_\bs
7203                  With the `-check' option, _\bw_\bh_\bo_\bm makes no  guarantees  that  the  ad-
7204                  dresses  listed  as being ok are really deliverable, rather, an ad-
7205                  dress being listed as ok means that at the time that _\bw_\bh_\bo_\bm  was  run
7206                  the address was thought to be deliverable by the transport service.
7207                  For local addresses, this is absolute; for  network  addresses,  it
7208                  means  that the host is known; for uucp addresses, it (often) means
7209                  that the _\bU_\bU_\bC_\bP network is available for use.
7210
7211
7212
7213
7214
7215
7216
7217
7218
7219
7220
7221
7222
7223
7224
7225
7226
7227
7228
7229
7230
7231
7232
7233
7234
7235
7236
7237
7238
7239
7240
7241
7242
7243
7244
7245
7246
7247
7248
7249
7250
7251
7252
7253
7254
7255                  [mh.6]                           MH.6.8                      UCI version
7256
7257
7258
7259
7260
7261
7262
7263
7264
7265                                                   -110-
7266
7267
7268                  _\bM_\bO_\bR_\bE _\bD_\bE_\bT_\bA_\bI_\bL_\bS
7269
7270                       This section describes some of the more intense points  of  the  _\bM_\bH
7271                  system,  by  expanding  on  topics  previously  discussed.   The  format
7272                  presented conforms to the standard form  for  the  description  of  UNIX
7273             documentation.
7274
7275
7276
7277
7278
7279
7280
7281
7282
7283
7284
7285
7286
7287
7288
7289
7290
7291
7292
7293
7294
7295
7296
7297
7298
7299
7300
7301
7302
7303
7304
7305
7306
7307
7308
7309
7310
7311
7312
7313
7314
7315
7316
7317
7318
7319
7320
7321
7322
7323
7324
7325
7326
7327
7328
7329
7330
7331             MH-ALIAS(5)                      -111-                       MH-ALIAS(5)
7332
7333
7334             _\bN_\bA_\bM_\bE
7335                  mh-alias - alias file for MH message system
7336
7337             _\bS_\bY_\bN_\bO_\bP_\bS_\bI_\bS
7338                  any _\bM_\bH command
7339
7340             _\bD_\bE_\bS_\bC_\bR_\bI_\bP_\bT_\bI_\bO_\bN
7341
7342                  This describes both _\bM_\bH personal alias files and the (primary) alias
7343                  file for mail delivery, the file
7344
7345                          /usr/local/lib/mh/MailAliases
7346
7347                  It does not describe aliases files used by  the  message  transport
7348                  system.  Each line of the alias file has the format:
7349
7350                          alias : address-group
7351                  or
7352                          alias ; address-group
7353                  or
7354                          < alias-file
7355                  or
7356                          ; comment
7357
7358                  where:
7359
7360                          address-group  :=  address-list
7361                                         |   "<" file
7362                                         |   "=" UNIX-group
7363                                         |   "+" UNIX-group
7364                                         |   "*"
7365
7366                          address-list   :=  address
7367                                         |   address-list, address
7368
7369                  Continuation lines in alias files end with `\' followed by the new-
7370                  line character.
7371
7372                  Alias-file and file are UNIX file names.   UNIX-group  is  a  group
7373                  name  (or  number)  from  /_\be_\bt_\bc/_\bg_\br_\bo_\bu_\bp.   An  address  is  a "simple"
7374                  Internet-style address.  Througout  this  file,  case  is  ignored,
7375                  except for alias-file names.
7376
7377                  If the line starts with a `<', then the file named after the `<' is
7378                  read  for more alias definitions.  The reading is done recursively,
7379                  so a `<' may occur in the beginning  of  an  alias  file  with  the
7380                  expected results.
7381
7382                  If the address-group starts with a `<', then the file  named  after
7383                  the  `<' is read and its contents are added to the address-list for
7384                  the alias.
7385
7386
7387             [mh.6]                           MH.6.8                      UCI version
7388
7389
7390
7391
7392
7393
7394
7395
7396
7397             MH-ALIAS(5)                      -112-                       MH-ALIAS(5)
7398
7399
7400                  If the address-group starts with an `=', then the  file  /_\be_\bt_\bc/_\bg_\br_\bo_\bu_\bp
7401                  is  consulted  for  the UNIX-group named after the `='.  Each login
7402                  name  occurring  as  a  member  of  the  group  is  added  to   the
7403                  address-list for the alias.
7404
7405                  In contrast, if the address-group starts with a `+', then the  file
7406                  /_\be_\bt_\bc/_\bg_\br_\bo_\bu_\bp is consulted to determine the group-id of the UNIX-group
7407                  named after the `+'.  Each login name occurring in the  /_\be_\bt_\bc/_\bp_\ba_\bs_\bs_\bw_\bd
7408                  file  whose  group-id  is  indicated  by this group is added to the
7409                  address-list for the alias.
7410
7411                  If the address-group is simply `*', then the  file  /_\be_\bt_\bc/_\bp_\ba_\bs_\bs_\bw_\bd  is
7412                  consulted and all login names with a userid greater than some magic
7413                  number (usually 200) are added to the address-list for the alias.
7414
7415                  In match, a trailing * on an alias will match just  about  anything
7416                  appropriate.  (See example below.)
7417
7418                  An approximation of the way aliases are resolved at posting time is
7419                  (it's not really done this way):
7420
7421                       1) Build a list of  all  addresses  from  the  message  to  be
7422                       delivered, eliminating duplicate addresses.
7423
7424                       2) If this draft originated on the local host, then for  those
7425                       addresses  in the message that have no host specified, perform
7426                       alias resolution.
7427
7428                       3) For each line in the alias file,  compare  "alias"  against
7429                       all of the existing addresses.  If a match, remove the matched
7430                       "alias" from the address list, and add each new address in the
7431                       address-group  to the address list if it is not already on the
7432                       list.  The alias itself is  not  usually  output,  rather  the
7433                       address-group  that  the  alias maps to is output instead.  If
7434                       "alias" is terminated with a `;' instead of a `:',  then  both
7435                       the  "alias" and the address are output in the correct format.
7436                       (This makes replies possible since  _\bM_\bH  aliases  and  personal
7437                       aliases are unknown to the mail transport system.)
7438
7439                  Since the alias file is read line by line, forward references work,
7440                  but  backward  references  are  not  recognized,  thus, there is no
7441                  recursion.
7442
7443
7444
7445
7446
7447
7448
7449
7450
7451
7452
7453             [mh.6]                           MH.6.8                      UCI version
7454
7455
7456
7457
7458
7459
7460
7461
7462
7463             MH-ALIAS(5)                      -113-                       MH-ALIAS(5)
7464
7465
7466                  Example:
7467                       </usr/local/lib/mh/BBoardAliases
7468                       sgroup: fred, fear, freida
7469                       b-people: Blind List: bill, betty;
7470                       fred: frated@UCI
7471                       UNIX-committee: <unix.aliases
7472                       staff: =staff
7473                       wheels: +wheel
7474                       everyone: *
7475                       news.*: news
7476
7477                  The first line says that more aliases should  immediately  be  read
7478                  from  the  file  /_\bu_\bs_\br/_\bl_\bo_\bc_\ba_\bl/_\bl_\bi_\bb/_\bm_\bh/_\bB_\bB_\bo_\ba_\br_\bd_\bA_\bl_\bi_\ba_\bs_\be_\bs.   Following this,
7479                  "fred" is defined as an alias for  "frated@UCI",  and  "sgroup"  is
7480                  defined  as  an alias for the three names "frated@UCI", "fear", and
7481                  "freida".
7482
7483                  The alias "b-people" is a blind list which includes  the  addresses
7484                  "bill"   and  "betty";  the  message  will  be  delieved  to  those
7485                  addresses, but the message header will  show only "Blind  List:  ;"
7486                  (not the addresses).
7487
7488                  Next, the definition of "UNIX-committee" is given  by  reading  the
7489                  file  _\bu_\bn_\bi_\bx._\ba_\bl_\bi_\ba_\bs_\be_\bs in the users _\bM_\bH directory, "staff" is defined as
7490                  all users who are listed as members of the  group  "staff"  in  the
7491                  /_\be_\bt_\bc/_\bg_\br_\bo_\bu_\bp  file,  and  "wheels"  is  defined  as  all  users whose
7492                  group-id in /_\be_\bt_\bc/_\bp_\ba_\bs_\bs_\bw_\bd is equivalent to the "wheel" group.
7493
7494                  Finally, "everyone" is defined as  all  users  with  a  user-id  in
7495                  /_\be_\bt_\bc/_\bp_\ba_\bs_\bs_\bw_\bd   greater  than  200,  and  all  aliases  of  the  form
7496                  "news.<anything>" are defined to be "news".
7497
7498                  The key thing to understand about aliasing in _\bM_\bH is that aliases in
7499                  _\bM_\bH  alias  files  are expanded into the headers of messages posted.
7500                  This aliasing occurs first, at posting time, without the  knowledge
7501                  of  the  message  transport  system.  In contrast, once the message
7502                  transport system is given  a  message  to  deliver  to  a  list  of
7503                  addresses, for each address that appears to be local, a system-wide
7504                  alias file is consulted.  These aliases are NOT expanded  into  the
7505                  headers of messages delivered.
7506
7507             _\bH_\be_\bl_\bp_\bf_\bu_\bl _\bH_\bi_\bn_\bt_\bs
7508
7509                  To use aliasing in _\bM_\bH quickly, do the following:
7510
7511                       First, in your ._\bm_\bh__\bp_\br_\bo_\bf_\bi_\bl_\be, choose a name for your alias file,
7512                       say "aliases", and add the line:
7513
7514                            Aliasfile: aliases
7515
7516                       Second, create the file "aliases" in your _\bM_\bH directory.
7517
7518
7519             [mh.6]                           MH.6.8                      UCI version
7520
7521
7522
7523
7524
7525
7526
7527
7528
7529             MH-ALIAS(5)                      -114-                       MH-ALIAS(5)
7530
7531
7532                       Third,  start  adding  aliases  to  your  "aliases"  file   as
7533                       appropriate.
7534
7535             _\bF_\bi_\bl_\be_\bs
7536                  /usr/local/lib/mh/MailAliases       Primary alias file
7537
7538
7539             _\bP_\br_\bo_\bf_\bi_\bl_\be _\bC_\bo_\bm_\bp_\bo_\bn_\be_\bn_\bt_\bs
7540                  Aliasfile:           For a default alias file
7541
7542
7543             _\bS_\be_\be _\bA_\bl_\bs_\bo
7544                  ali(1), send(1), whom(1), group(5), passwd(5), conflict(8), post(8)
7545
7546
7547             _\bD_\be_\bf_\ba_\bu_\bl_\bt_\bs
7548                  None
7549
7550
7551             _\bC_\bo_\bn_\bt_\be_\bx_\bt
7552                  None
7553
7554
7555             _\bH_\bi_\bs_\bt_\bo_\br_\by
7556                  In previous releases of _\bM_\bH, only  a  single,  system-wide  mh-alias
7557                  file  was  supported.  This led to a number of problems, since only
7558                  mail-system administrators were capable  of  (un)defining  aliases.
7559                  Hence,  the semantics of mh-alias were extended to support personal
7560                  alias files.  Users of _\bM_\bH no longer need to bother mail-system  ad-
7561                  ministrators for keeping information in the system-wide alias file,
7562                  as each _\bM_\bH user can create/modify/remove aliases at will  from  any
7563                  number of personal files.
7564
7565
7566             _\bB_\bu_\bg_\bs
7567                  Although  the  forward-referencing  semantics  of  _\bm_\bh-_\ba_\bl_\bi_\ba_\bs   files
7568                  prevent  recursion,  the  "< alias-file"  command  may defeat this.
7569                  Since the number of file descriptors is finite (and very  limited),
7570                  such  infinite recursion will terminate with a meaningless diagnos-
7571                  tic when all the fds are used up.
7572
7573                  Forward references do not work correctly inside blind lists.
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             MH-FORMAT(5)                     -115-                      MH-FORMAT(5)
7596
7597
7598             _\bN_\bA_\bM_\bE
7599                  mh-format - format file for MH message system
7600
7601             _\bS_\bY_\bN_\bO_\bP_\bS_\bI_\bS
7602                  some _\bM_\bH commands
7603
7604             _\bD_\bE_\bS_\bC_\bR_\bI_\bP_\bT_\bI_\bO_\bN
7605
7606                  Several _\bM_\bH commands utilize either a _\bf_\bo_\br_\bm_\ba_\bt string or a _\bf_\bo_\br_\bm_\ba_\bt file
7607                  during their execution.  For example, _\bs_\bc_\ba_\bn (1) uses a format string
7608                  which directs it how to generate the scan listing for each message;
7609                  _\br_\be_\bp_\bl (1)  uses  a  format file which directs it how to generate the
7610                  reply to a message, and so on.
7611
7612                  Format strings are designed to be efficiently parsed  by  _\bM_\bH  which
7613                  means  they  are  not  necessarily  simple to write and understand.
7614                  This means that novice, casual, or even advanced users of _\bM_\bH should
7615                  not  have  to deal with them.  Some canned scan listing formats are
7616                  in  /usr/local/lib/mh/scan.time,  /usr/local/lib/mh/scan.size,  and
7617                  /usr/local/lib/mh/scan.timely.  Look in /usr/local/lib/mh for other
7618                  _\bs_\bc_\ba_\bn and _\br_\be_\bp_\bl format files which may  have  been  written  at  your
7619                  site.
7620
7621                  It suffices to have your local _\bM_\bH expert actually write new  format
7622                  commands or modify existing ones.  This manual section explains how
7623                  to do that.   Note:  familiarity  with  the  C  _\bp_\br_\bi_\bn_\bt_\bf  routine  is
7624                  assumed.
7625
7626                  A format string consists  of  ordinary  text,  and  special  multi-
7627                  character _\be_\bs_\bc_\ba_\bp_\be sequences which begin with `%'.  When specifying a
7628                  format string, the usual C backslash characters are honored:  `\b',
7629                  `\f', `\n', `\r', and `\t'.  Continuation lines in format files end
7630                  with `\' followed by the newline character.  There are three  types
7631                  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
7632                  flow _\bc_\bo_\bn_\bt_\br_\bo_\bl.
7633
7634                  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
7635                  each  header  found  in  the  message being processed.  For example
7636                  `%{date}' refers to the "Date:" field of the  appropriate  message.
7637                  All  component  escapes  have  a string value.  Normally, component
7638                  values are compressed by converting any control characters (tab and
7639                  newline  included)  to spaces, then eliding any leading or multiple
7640                  spaces.  However, commands may give  different  interpretations  to
7641                  some  component  escapes; be sure to refer to each command's manual
7642                  entry for complete details.
7643
7644                  A _\bf_\bu_\bn_\bc_\bt_\bi_\bo_\bn escape is specified as `%(_\bf_\bu_\bn_\bc_\bt_\bi_\bo_\bn)'.  All functions are
7645                  built-in, and most have a string or numeric value.
7646
7647
7648
7649
7650
7651             [mh.6]                           MH.6.8                      UCI version
7652
7653
7654
7655
7656
7657
7658
7659
7660
7661             MH-FORMAT(5)                     -116-                      MH-FORMAT(5)
7662
7663
7664               _\bC_\bo_\bn_\bt_\br_\bo_\bl-_\bf_\bl_\bo_\bw _\be_\bs_\bc_\ba_\bp_\be_\bs
7665
7666                  A _\bc_\bo_\bn_\bt_\br_\bo_\bl escape is one of: `%<', `%?', `%|', or  `%>'.  These  are
7667                  combined into the conditional execution construct:
7668
7669                          %<condition
7670                                  _\bf_\bo_\br_\bm_\ba_\bt _\bt_\be_\bx_\bt _\b1
7671                          %?condition2
7672                                  _\bf_\bo_\br_\bm_\ba_\bt _\bt_\be_\bx_\bt _\b2
7673                          %?condition3
7674                                  _\bf_\bo_\br_\bm_\ba_\bt _\bt_\be_\bx_\bt _\b3
7675                          ...
7676                          %|
7677                                  _\bf_\bo_\br_\bm_\ba_\bt _\bt_\be_\bx_\bt _\bN
7678                          %>
7679
7680                  Extra white space is shown here only for clarity.  These constructs
7681                  may   be   nested   without   ambiguity.    They   form  a  general
7682                  if-elseif-else-endif block where only one of the _\bf_\bo_\br_\bm_\ba_\bt  _\bt_\be_\bx_\bt  seg-
7683                  ments is interpreted.
7684
7685                  The `%<'  and  `%?'  control  escapes  causes  a  condition  to  be
7686                  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.
7687                  The four constructs have the following syntax:
7688
7689                          %<{component}
7690                          %<(function)
7691                          %?{component}
7692                          %?(function)
7693
7694                  These control escapes test whether the function or component  value
7695                  is   non-zero  (for  integer-valued  escapes),  or  non-empty  (for
7696                  string-valued escapes).
7697
7698                  If this test evaulates true, then the format text up  to  the  next
7699                  corresponding control escape (one of `%|', `%?', or `%>') is inter-
7700                  preted normally.   Next,  all  format  text  (if  any)  up  to  the
7701                  corresponding  `%>'  control  escape  is skipped.  The `%>' control
7702                  escape is not interpreted; normal interpretation resumes after  the
7703                  `%>' escape.
7704
7705                  If the test evaluates false, however, then the format  text  up  to
7706                  the next corresponding control escape (again, one of `%|', `%?', or
7707                  `%>') is skipped, instead of being  interpreted.   If  the  control
7708                  escape  encountered  was  `%?',  then the condition associated with
7709                  that control escape is evaluated, and interpretation proceeds after
7710                  that  test  as described in the previous paragraph.  If the control
7711                  escape encountered was  `%|',  then  the  format  text  up  to  the
7712                  corresponding  `%>'  escape is interpreted normally.  As above, the
7713                  `%>' escape is not interpreted and  normal  interpretation  resumes
7714                  after the `%>' escape.
7715
7716
7717             [mh.6]                           MH.6.8                      UCI version
7718
7719
7720
7721
7722
7723
7724
7725
7726
7727             MH-FORMAT(5)                     -117-                      MH-FORMAT(5)
7728
7729
7730                  The `%?' control escape and its following format text is  optional,
7731                  and  may  be  included zero or more times.  The `%|' control escape
7732                  and its following format text is also optional, and may be included
7733                  zero or one times.
7734
7735
7736               _\bF_\bu_\bn_\bc_\bt_\bi_\bo_\bn _\be_\bs_\bc_\ba_\bp_\be_\bs
7737
7738                  Most functions expect an argument of a particular type:
7739
7740                  _\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
7741                  literal  A literal number,      %(_\bf_\bu_\bn_\bc 1234)
7742                           or string              %(_\bf_\bu_\bn_\bc text string)
7743                  comp     Any header component   %(_\bf_\bu_\bn_\bc{_\bi_\bn-_\br_\be_\bp_\bl_\by-_\bt_\bo})
7744                  date     A date component       %(_\bf_\bu_\bn_\bc{_\bd_\ba_\bt_\be})
7745                  addr     An address component   %(_\bf_\bu_\bn_\bc{_\bf_\br_\bo_\bm})
7746                  expr     An optional component, %(_\bf_\bu_\bn_\bc(_\bf_\bu_\bn_\bc_\b2))
7747                           function or control,   %(_\bf_\bu_\bn_\bc %<{_\br_\be_\bp_\bl_\by-_\bt_\bo}%|%{_\bf_\br_\bo_\bm}%>)
7748                           perhaps nested         %(_\bf_\bu_\bn_\bc(_\bf_\bu_\bn_\bc_\b2{_\bc_\bo_\bm_\bp}))
7749
7750                  The types _\bd_\ba_\bt_\be and _\ba_\bd_\bd_\br have the same syntax as _\bc_\bo_\bm_\bp,  but  require
7751                  that  the  header  component  be  a date string, or address string,
7752                  respectively.
7753
7754                  All arguments except those of type _\be_\bx_\bp_\br are required.  For the _\be_\bx_\bp_\br
7755                  argument  type,  the  leading `%' must be omitted for component and
7756                  function escape arguments, and must  be  present  (with  a  leading
7757                  space) for control escape arguments.
7758
7759                  The evaluation of format strings is based on a simple machine  with
7760                  an  integer  register  _\bn_\bu_\bm, and a text string register _\bs_\bt_\br.  When a
7761                  function escape is processed, if it accepts an optional _\be_\bx_\bp_\br  argu-
7762                  ment which is not present, it reads the current value of either _\bn_\bu_\bm
7763                  or _\bs_\bt_\br as appropriate.
7764
7765
7766               _\bR_\be_\bt_\bu_\br_\bn _\bv_\ba_\bl_\bu_\be_\bs
7767
7768                  Component escapes write the value of their message header  in  _\bs_\bt_\br.
7769                  Function  escapes  write  their  return  value in _\bn_\bu_\bm for functions
7770                  returning _\bi_\bn_\bt_\be_\bg_\be_\br or _\bb_\bo_\bo_\bl_\be_\ba_\bn  values,  and  in  _\bs_\bt_\br  for  functions
7771                  returning string values.  (The _\bb_\bo_\bo_\bl_\be_\ba_\bn type is a subset of integers
7772                  with usual values 0=false and 1=true.)  Control  escapes  return  a
7773                  _\bb_\bo_\bo_\bl_\be_\ba_\bn value, and set _\bn_\bu_\bm.
7774
7775                  All component escapes, and those function escapes which  return  an
7776                  _\bi_\bn_\bt_\be_\bg_\be_\br  or  _\bs_\bt_\br_\bi_\bn_\bg  value, pass this value back to their caller in
7777                  addition to setting _\bs_\bt_\br or _\bn_\bu_\bm.  These escapes will print out  this
7778                  value  unless  called  as  part  of  an  argument to another escape
7779                  sequence.  Escapes which return a _\bb_\bo_\bo_\bl_\be_\ba_\bn value do pass this  value
7780                  back to their caller in _\bn_\bu_\bm, but will never print out the value.
7781
7782
7783             [mh.6]                           MH.6.8                      UCI version
7784
7785
7786
7787
7788
7789
7790
7791
7792
7793             MH-FORMAT(5)                     -118-                      MH-FORMAT(5)
7794
7795
7796                  _\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
7797                  msg                 integer  message number
7798                  cur                 integer  message is current
7799                  size                integer  size of message
7800                  strlen              integer  length of _\bs_\bt_\br
7801                  width               integer  output buffer size in bytes
7802                  charleft            integer  bytes left in output buffer
7803                  timenow             integer  seconds since the UNIX epoch
7804                  me                  string   the user's mailbox
7805                  eq         literal  boolean  _\bn_\bu_\bm == _\ba_\br_\bg
7806                  ne         literal  boolean  _\bn_\bu_\bm != _\ba_\br_\bg
7807                  gt         literal  boolean  _\bn_\bu_\bm > _\ba_\br_\bg
7808                  match      literal  boolean  _\bs_\bt_\br contains _\ba_\br_\bg
7809                  amatch     literal  boolean  _\bs_\bt_\br starts with _\ba_\br_\bg
7810                  plus       literal  integer  _\ba_\br_\bg plus _\bn_\bu_\bm
7811                  minus      literal  integer  _\ba_\br_\bg minus _\bn_\bu_\bm
7812                  divide     literal  integer  _\bn_\bu_\bm divided by _\ba_\br_\bg
7813                  modulo     literal  integer  _\bn_\bu_\bm modulo _\ba_\br_\bg
7814                  num        literal  integer  Set _\bn_\bu_\bm to _\ba_\br_\bg
7815                  lit        literal  string   Set _\bs_\bt_\br to _\ba_\br_\bg
7816                  getenv     literal  string   Set _\bs_\bt_\br to environment value of _\ba_\br_\bg
7817                  profile    literal  string   Set _\bs_\bt_\br to profile component _\ba_\br_\bg value
7818                  nonzero    expr     boolean  _\bn_\bu_\bm is non-zero
7819                  zero       expr     boolean  _\bn_\bu_\bm is zero
7820                  null       expr     boolean  _\bs_\bt_\br is empty
7821                  nonnull    expr     boolean  _\bs_\bt_\br is non-empty
7822                  void       expr              Set _\bs_\bt_\br or _\bn_\bu_\bm
7823                  comp       comp     string   Set _\bs_\bt_\br to component text
7824                  compval    comp     integer  _\bn_\bu_\bm set to "atoi(_\bc_\bo_\bm_\bp)"
7825                  trim       expr              trim trailing white-space from _\bs_\bt_\br
7826                  putstr     expr              print _\bs_\bt_\br
7827                  putstrf    expr              print _\bs_\bt_\br in a fixed width
7828                  putnum     expr              print _\bn_\bu_\bm
7829                  putnumf    expr              print _\bn_\bu_\bm in a fixed width
7830
7831                  These functions require a date component as an argument:
7832
7833                  _\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
7834                  sec        date     integer  seconds of the minute
7835                  min        date     integer  minutes of the hour
7836                  hour       date     integer  hours of the day (0-23)
7837                  wday       date     integer  day of the week (Sun=0)
7838                  day        date     string   day of the week (abbrev.)
7839                  weekday    date     string   day of the week
7840                  sday       date     integer  day of the week known?
7841                                               (0=implicit,-1=unknown)
7842                  mday       date     integer  day of the month
7843                  yday       date     integer  day of the year
7844                  mon        date     integer  month of the year
7845                  month      date     string   month of the year (abbrev.)
7846                  lmonth     date     string   month of the year
7847                  year       date     integer  year (may be > 100)
7848
7849             [mh.6]                           MH.6.8                      UCI version
7850
7851
7852
7853
7854
7855
7856
7857
7858
7859             MH-FORMAT(5)                     -119-                      MH-FORMAT(5)
7860
7861
7862                  zone       date     integer  timezone in hours
7863                  tzone      date     string   timezone string
7864                  szone      date     integer  timezone explicit?
7865                                               (0=implicit,-1=unknown)
7866                  date2local date              coerce date to local timezone
7867                  date2gmt   date              coerce date to GMT
7868                  dst        date     integer  daylight savings in effect?
7869                  clock      date     integer  seconds since the UNIX epoch
7870                  rclock     date     integer  seconds prior to current time
7871                  tws        date     string   official 822 rendering
7872                  pretty     date     string   user-friendly rendering
7873                  nodate     date     integer  _\bs_\bt_\br not a date string
7874
7875                  These functions require an address component as  an  argument.  The
7876                  return  value of functions noted with `*' pertain only to the first
7877                  address present in the header component.
7878
7879                  _\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
7880                  proper     addr     string   official 822 rendering
7881                  friendly   addr     string   user-friendly rendering
7882                  addr       addr     string   mbox@host or host!mbox rendering*
7883                  pers       addr     string   the personal name*
7884                  note       addr     string   commentary text*
7885                  mbox       addr     string   the local mailbox*
7886                  mymbox     addr     integer  the user's addresses? (0=no,1=yes)
7887                  host       addr     string   the host domain*
7888                  nohost     addr     integer  no host was present*
7889                  type       addr     integer  host type* (0=local,1=network,
7890                                               -1=uucp,2=unknown)
7891                  path       addr     string   any leading host route*
7892                  ingrp      addr     integer  address was inside a group*
7893                  gname      addr     string   name of group*
7894                  formataddr expr              append _\ba_\br_\bg to _\bs_\bt_\br as a
7895                                               (comma separated) address list
7896                  putaddr    literal           print _\bs_\bt_\br address list with
7897                                               _\ba_\br_\bg as optional label;
7898                                               get line width from _\bn_\bu_\bm
7899
7900                  When escapes are nested, evaluation  is  done  from  inner-most  to
7901                  outer-most.   The  outer-most escape must begin with `%'; the inner
7902                  escapes must not.  For example,
7903
7904                       %<(mymbox{from}) To: %{to}%>
7905
7906                  writes the value of the header component "From:" to _\bs_\bt_\br; then (_\bm_\by_\bm_\b-
7907                  _\bb_\bo_\bx)  reads  _\bs_\bt_\br  and  writes  its  result to _\bn_\bu_\bm; then the control
7908                  escape evaluates _\bn_\bu_\bm.  If _\bn_\bu_\bm is non-zero, the  string  "To:  "  is
7909                  printed followed by the value of the header component "To:".
7910
7911                  A minor explanation of (_\bm_\by_\bm_\bb_\bo_\bx{_\bc_\bo_\bm_\bp}) is in order.  In general,  it
7912                  checks each of the addresses in the header component "_\bc_\bo_\bm_\bp" against
7913                  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
7914
7915             [mh.6]                           MH.6.8                      UCI version
7916
7917
7918
7919
7920
7921
7922
7923
7924
7925             MH-FORMAT(5)                     -120-                      MH-FORMAT(5)
7926
7927
7928                  true  if  any address matches, however, it also returns true if the
7929                  "_\bc_\bo_\bm_\bp" header is not present in the message.  If needed, the (_\bn_\bu_\bl_\bl)
7930                  function can be used to explicitly test for this condition.
7931
7932                  When a function or component escape is interpreted and  the  result
7933                  will  be immediately printed, an optional field width can be speci-
7934                  fied to print the field in exactly a given  number  of  characters.
7935                  For  example,  a  numeric escape like %4(_\bs_\bi_\bz_\be) will print at most 4
7936                  digits of the message size; overflow will be indicated by a `?'  in
7937                  the first position (like `?234').  A string escape like %4(_\bm_\be) will
7938                  print the first 4 characters and truncate at the end. Short  fields
7939                  are  padded  at  the  right  with  the  fill character (normally, a
7940                  blank).  If the field width argument begins with  a  leading  zero,
7941                  then the fill character is set to a zero.
7942
7943                  As above, the functions (_\bp_\bu_\bt_\bn_\bu_\bm_\bf) and (_\bp_\bu_\bt_\bs_\bt_\br_\bf) print their  result
7944                  in  exactly  the  number  of  characters specified by their leading
7945                  field width argument. For example,  %06(_\bp_\bu_\bt_\bn_\bu_\bm_\bf(_\bs_\bi_\bz_\be))  will  print
7946                  the message size in a field six characters wide filled with leading
7947                  zeros; %14(_\bp_\bu_\bt_\bs_\bt_\br_\bf{_\bf_\br_\bo_\bm}) will print the "From:"  header  component
7948                  in  fourteen  characters with trailing spaces added as needed.  For
7949                  _\bp_\bu_\bt_\bs_\bt_\br_\bf, using a negative value for the field width  causes  right-
7950                  justification  of  the string within the field, with padding on the
7951                  left up to the field width.  The functions  (_\bp_\bu_\bt_\bn_\bu_\bm)  and  (_\bp_\bu_\bt_\bs_\bt_\br)
7952                  print  their  result  in the minimum number of characters required,
7953                  and ignore any leading field width argument.
7954
7955                  The available output width is kept in  an  internal  register;  any
7956                  output past this width will be truncated.
7957
7958                  Comments may be inserted in most places where a  function  argument
7959                  is  not expected.  A comment begins with `%;' and ends with a (non-
7960                  escaped) newline.
7961
7962                  With all this in mind, here's the default format string  for  _\bs_\bc_\ba_\bn.
7963                  It's  been  divided into several pieces for readability.  The first
7964                  part is:
7965
7966                       %4(msg)%<(cur)+%| %>%<{replied}-%?{encrypted}E%| %>
7967
7968                  which says that the  message  number  should  be  printed  in  four
7969                  digits,  if  the  message  is the current message then a `+' else a
7970                  space should be printed, and if a "Replied:" field is present  then
7971                  a  `-'  else if an "Encrypted:" field is present then an `E' other-
7972                  wise a space should be printed.  Next:
7973
7974                       %02(mon{date})/%02(mday{date})
7975
7976                  the month  and  date  are  printed  in  two  digits  (zero  filled)
7977                  separated by a slash.  Next,
7978
7979                       %<{date} %|*>
7980
7981             [mh.6]                           MH.6.8                      UCI version
7982
7983
7984
7985
7986
7987
7988
7989
7990
7991             MH-FORMAT(5)                     -121-                      MH-FORMAT(5)
7992
7993
7994                  If a "Date:" field was present, then a space is printed,  otherwise
7995                  a `*'.  Next,
7996
7997                       %<(mymbox{from})%<{to}To:%14(friendly{to})%>%>
7998
7999                  if the message is from me, and there is a "To:" header, print `To:'
8000                  followed by a "user-friendly" rendering of the first address in the
8001                  "To:" field.  Continuing,
8002
8003                       %<(zero)%17(friendly{from})%>
8004
8005                  if either of the above two tests failed, then the  "From:"  address
8006                  is printed in a "user-friendly" format.  And finally,
8007
8008                       %{subject}%<{body}<<%{body}%>
8009
8010                  the subject and initial body (if any) are printed.
8011
8012                  For a more complicated example, next consider the default _\br_\be_\bp_\bl_\bc_\bo_\bm_\bp_\bs
8013                  format file.
8014
8015                       %(lit)%(formataddr %<{reply-to}
8016
8017                  This clears _\bs_\bt_\br and formats the "Reply-To:" header if present.   If
8018                  not present, the else-if clause is executed.
8019
8020                       %?{from}%?{sender}%?{return-path}%>)\
8021
8022                  This formats the "From:",  "Sender:"  and  "Return-Path:"  headers,
8023                  stopping as soon as one of them is present.  Next:
8024
8025                       %<(nonnull)%(void(width))%(putaddr To: )\n%>\
8026
8027                  If the _\bf_\bo_\br_\bm_\ba_\bt_\ba_\bd_\bd_\br result is non-null, it is printed as  an  address
8028                  (with  line folding if needed) in a field _\bw_\bi_\bd_\bt_\bh wide with a leading
8029                  label of "To: ".
8030
8031                       %(lit)%(formataddr{to})%(formataddr{cc})%(formataddr(me))\
8032
8033                  _\bs_\bt_\br is cleared, and the "To:" and "Cc:"  headers,  along  with  the
8034                  user's  address  (depending  on  what  was specified with the "-cc"
8035                  switch to _\br_\be_\bp_\bl) are formatted.
8036
8037                       %<(nonnull)%(void(width))%(putaddr cc: )\n%>\
8038
8039                  If the result is non-null, it is printed as above  with  a  leading
8040                  label of "cc: ".
8041
8042                       %<{fcc}Fcc: %{fcc}\n%>\
8043
8044                  If a "-fcc folder" switch was given to _\br_\be_\bp_\bl (see _\br_\be_\bp_\bl (1) for  more
8045                  details about %{_\bf_\bc_\bc}), an "Fcc:" header is output.
8046
8047             [mh.6]                           MH.6.8                      UCI version
8048
8049
8050
8051
8052
8053
8054
8055
8056
8057             MH-FORMAT(5)                     -122-                      MH-FORMAT(5)
8058
8059
8060                       %<{subject}Subject: Re: %{subject}\n%>\
8061
8062                  If a subject component was present, a  suitable  reply  subject  is
8063                  output.
8064
8065                       %<{date}In-reply-to: Your message of "\
8066                       %<(nodate{date})%{date}%|%(pretty{date})%>."%<{message-id}
8067                                    %{message-id}%>\n%>\
8068                       --------
8069
8070                  If a date component was present, an "In-Reply-To:" header is output
8071                  with the preface "Your message of ".  If the date was parseable, it
8072                  is output in a user-friendly format, otherwise it is output  as-is.
8073                  The message-id is included if present.  As with all plain-text, the
8074                  row of dashes are output as-is.
8075
8076                  This last part is a good example for  a  little  more  elaboration.
8077                  Here's that part again in pseudo-code:
8078
8079                       if (comp_exists(date))  then
8080                            print ("In-reply-to: Your message of \"")
8081                            if (not_date_string(date.value) then
8082                                 print (date.value)
8083                            else
8084                                 print (pretty(date.value))
8085                            endif
8086                            print ("\"")
8087                            if (comp_exists(message-id)) then
8088                                 print ("\n\t")
8089                                 print (message-id.value)
8090                            endif
8091                            print ("\n")
8092                       endif
8093
8094                  Although this seems complicated, in point of fact, this  method  is
8095                  flexible  enough to extract individual fields and print them in any
8096                  format the user desires.
8097
8098             _\bF_\bi_\bl_\be_\bs
8099                  None
8100
8101
8102             _\bP_\br_\bo_\bf_\bi_\bl_\be _\bC_\bo_\bm_\bp_\bo_\bn_\be_\bn_\bt_\bs
8103                  None
8104
8105
8106             _\bS_\be_\be _\bA_\bl_\bs_\bo
8107                  scan(1), repl(1), ap(8), dp(8)
8108
8109
8110             _\bD_\be_\bf_\ba_\bu_\bl_\bt_\bs
8111                  None
8112
8113             [mh.6]                           MH.6.8                      UCI version
8114
8115
8116
8117
8118
8119
8120
8121
8122
8123             MH-FORMAT(5)                     -123-                      MH-FORMAT(5)
8124
8125
8126             _\bC_\bo_\bn_\bt_\be_\bx_\bt
8127                  None
8128
8129
8130             _\bH_\bi_\bs_\bt_\bo_\br_\by
8131                  This software was contributed for MH 6.3.  Prior  to  this,  output
8132                  format  specifications  were much easier to write, but considerably
8133                  less flexible.
8134
8135
8136             _\bB_\bu_\bg_\bs
8137                  On hosts where _\bM_\bH was configured  with  the  BERK  option,  address
8138                  parsing is not enabled.
8139
8140
8141
8142
8143
8144
8145
8146
8147
8148
8149
8150
8151
8152
8153
8154
8155
8156
8157
8158
8159
8160
8161
8162
8163
8164
8165
8166
8167
8168
8169
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             MH-MAIL(5)                       -124-                        MH-MAIL(5)
8190
8191
8192             _\bN_\bA_\bM_\bE
8193                  mh-mail - message format for MH message system
8194
8195             _\bS_\bY_\bN_\bO_\bP_\bS_\bI_\bS
8196                  any _\bM_\bH command
8197
8198             _\bD_\bE_\bS_\bC_\bR_\bI_\bP_\bT_\bI_\bO_\bN
8199
8200                  _\bM_\bH processes messages in a particular format.  It should  be  noted
8201                  that  although  neither  Bell  nor Berkeley mailers produce message
8202                  files in the format that _\bM_\bH prefers, _\bM_\bH can read message  files  in
8203                  that antiquated format.
8204
8205                  Each user possesses a mail drop box which  initially  receives  all
8206                  messages  processed  by _\bp_\bo_\bs_\bt (8).  _\bI_\bn_\bc (1) will read from that drop
8207                  box and incorporate the new messages found there  into  the  user's
8208                  own  mail folders (typically `+inbox').  The mail drop box consists
8209                  of one or more messages.
8210
8211                  Messages are expected to consist of lines of  text.   Graphics  and
8212                  binary data are not handled.  No data compression is accepted.  All
8213                  text is clear ASCII 7-bit data.
8214
8215                  The general "memo" framework of RFC-822 is used.   A  message  con-
8216                  sists of a block of information in a rigid format, followed by gen-
8217                  eral text with no specified format.  The  rigidly  formatted  first
8218                  part of a message is called the header, and the free-format portion
8219                  is called the body.  The header must always exist, but the body  is
8220                  optional.   These  parts  are separated by an empty line, i.e., two
8221                  consecutive newline characters.  Within _\bM_\bH, the header and body may
8222                  be separated by a line consisting of dashes:
8223
8224                       To:
8225                       cc:
8226                       Subject:
8227                       --------
8228
8229                  The header is composed of one or more header  items.   Each  header
8230                  item  can  be  viewed as a single logical line of ASCII characters.
8231                  If the text of a header item extends across several real lines, the
8232                  continuation lines are indicated by leading spaces or tabs.
8233
8234                  Each header item is called a component and is composed of a keyword
8235                  or  name,  along  with  associated text.  The keyword begins at the
8236                  left margin, may NOT contain spaces or  tabs,  may  not  exceed  63
8237                  characters  (as specified by RFC-822), and is terminated by a colon
8238                  (`:').  Certain components (as identified by their  keywords)  must
8239                  follow rigidly defined formats in their text portions.
8240
8241                  The  text  for  most  formatted  components  (e.g.,   "Date:"   and
8242                  "Message-Id:") is produced automatically.  The only ones entered by
8243                  the user are address fields such as "To:",  "cc:",  etc.   Internet
8244
8245             [mh.6]                           MH.6.8                      UCI version
8246
8247
8248
8249
8250
8251
8252
8253
8254
8255             MH-MAIL(5)                       -125-                        MH-MAIL(5)
8256
8257
8258                  addresses  are  assigned mailbox names and host computer specifica-
8259                  tions.  The rough format is "local@domain", such  as  "MH@UCI",  or
8260                  "MH@UCI-ICSA.ARPA".  Multiple addresses are separated by commas.  A
8261                  missing host/domain is assumed to be the local host/domain.
8262
8263                  As mentioned above, a blank line (or a line of dashes) signals that
8264                  all  following text up to the end of the file is the body.  No for-
8265                  matting is expected or enforced within the body.
8266
8267                  Following is a list of header components that are considered  mean-
8268                  ingful to various MH programs.
8269                  Date:
8270                       Added by _\bp_\bo_\bs_\bt (8), contains date and  time  of  the  message's
8271                       entry into the transport system.
8272
8273                  From:
8274                       Added by _\bp_\bo_\bs_\bt (8), contains  the  address  of  the  author  or
8275                       authors  (may  be  more  than  one  if  a  "Sender:"  field is
8276                       present).  Replies are typically directed to addresses in  the
8277                       "Reply-To:"  or  "From:"  field  (the former has precedence if
8278                       present).
8279
8280                  Sender:
8281                       Added by _\bp_\bo_\bs_\bt (8) in the event that the message already has  a
8282                       "From:"  line.   This  line contains the address of the actual
8283                       sender.  Replies are never sent to addresses in the  "Sender:"
8284                       field.
8285
8286                  To:
8287                       Contains addresses of primary recipients.
8288
8289                  cc:
8290                       Contains addresses of secondary recipients.
8291
8292                  Bcc:
8293                       Still more recipients.  However, the "Bcc:" line is not copied
8294                       onto  the  message  as  delivered, so these recipients are not
8295                       listed.  _\bM_\bH uses an encapsulation method for blind copies, see
8296                       _\bs_\be_\bn_\bd (1).
8297
8298                  Fcc:
8299                       Causes _\bp_\bo_\bs_\bt (8) to copy the message into the specified  folder
8300                       for  the  sender, if the message was successfully given to the
8301                       transport system.
8302
8303                  Message-ID:
8304                       A unique message identifier added by _\bp_\bo_\bs_\bt (8) if the  `-msgid'
8305                       flag is set.
8306
8307                  Subject:
8308                       Sender's commentary.  It is displayed by _\bs_\bc_\ba_\bn (1).
8309
8310
8311             [mh.6]                           MH.6.8                      UCI version
8312
8313
8314
8315
8316
8317
8318
8319
8320
8321             MH-MAIL(5)                       -126-                        MH-MAIL(5)
8322
8323
8324                  In-Reply-To:
8325                       A commentary line added by _\br_\be_\bp_\bl (1) when replying  to  a  mes-
8326                       sage.
8327
8328                  Resent-Date:
8329                       Added when redistributing a message by _\bp_\bo_\bs_\bt (8).
8330
8331                  Resent-From:
8332                       Added when redistributing a message by _\bp_\bo_\bs_\bt (8).
8333
8334                  Resent-To:
8335                       New recipients for a message resent by _\bd_\bi_\bs_\bt (1).
8336
8337                  Resent-cc:
8338                       Still more recipients.  See "cc:" and "Resent-To:".
8339
8340                  Resent-Bcc:
8341                       Even more recipients.  See "Bcc:" and "Resent-To:".
8342
8343                  Resent-Fcc:
8344                       Copy  resent  message  into  a   folder.    See   "Fcc:"   and
8345                       "Resent-To:".
8346
8347                  Resent-Message-Id:
8348                       A unique identifier glued on by _\bp_\bo_\bs_\bt (8) if the `-msgid'  flag
8349                       is set.  See "Message-Id:" and "Resent-To:".
8350
8351                  Resent:
8352                       Annotation for _\bd_\bi_\bs_\bt (1) under the `-annotate' option.
8353
8354                  Forwarded:
8355                       Annotation for _\bf_\bo_\br_\bw (1) under the `-annotate' option.
8356
8357                  Replied:
8358                       Annotation for _\br_\be_\bp_\bl (1) under the `-annotate' option.
8359
8360
8361             _\bF_\bi_\bl_\be_\bs
8362                  /usr/spool/mail/$USER               Location of mail drop
8363
8364
8365             _\bP_\br_\bo_\bf_\bi_\bl_\be _\bC_\bo_\bm_\bp_\bo_\bn_\be_\bn_\bt_\bs
8366                  None
8367
8368
8369             _\bS_\be_\be _\bA_\bl_\bs_\bo
8370                  _\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
8371                  RFC-822)
8372
8373
8374             _\bD_\be_\bf_\ba_\bu_\bl_\bt_\bs
8375                  None
8376
8377             [mh.6]                           MH.6.8                      UCI version
8378
8379
8380
8381
8382
8383
8384
8385
8386
8387             MH-MAIL(5)                       -127-                        MH-MAIL(5)
8388
8389
8390             _\bC_\bo_\bn_\bt_\be_\bx_\bt
8391                  None
8392
8393
8394
8395
8396
8397
8398
8399
8400
8401
8402
8403
8404
8405
8406
8407
8408
8409
8410
8411
8412
8413
8414
8415
8416
8417
8418
8419
8420
8421
8422
8423
8424
8425
8426
8427
8428
8429
8430
8431
8432
8433
8434
8435
8436
8437
8438
8439
8440
8441
8442
8443             [mh.6]                           MH.6.8                      UCI version
8444
8445
8446
8447
8448
8449
8450
8451
8452
8453             MH-PROFILE(5)                    -128-                     MH-PROFILE(5)
8454
8455
8456             _\bN_\bA_\bM_\bE
8457                  mh-profile - user profile customization for MH message handler
8458
8459             _\bS_\bY_\bN_\bO_\bP_\bS_\bI_\bS
8460                  ._\bm_\bh__\bp_\br_\bo_\bf_\bi_\bl_\be
8461
8462             _\bD_\bE_\bS_\bC_\bR_\bI_\bP_\bT_\bI_\bO_\bN
8463
8464                  Each user of _\bM_\bH is expected to have a file named ._\bm_\bh__\bp_\br_\bo_\bf_\bi_\bl_\be in his
8465                  or her home directory.  This file contains a set of user parameters
8466                  used by some or all of the _\bM_\bH family of programs.  Each line of the
8467                  file is of the format
8468
8469                      _\bp_\br_\bo_\bf_\bi_\bl_\be-_\bc_\bo_\bm_\bp_\bo_\bn_\be_\bn_\bt: _\bv_\ba_\bl_\bu_\be
8470
8471                  The  possible  profile  components  are  exemplified  below.   Only
8472                  `Path:'  is  mandatory.  The others are optional; some have default
8473                  values if they are not present.  In the notation used below,  (pro-
8474                  file,  default)  indicates  whether  the information is kept in the
8475                  user's _\bM_\bH profile or _\bM_\bH context, and  indicates  what  the  default
8476                  value is.
8477
8478                  Path: Mail
8479                            Locates _\bM_\bH transactions in directory  "Mail".   (profile,
8480                            no default)
8481
8482                  context: context
8483                            Declares the location of the _\bM_\bH  context  file,  see  the
8484                            HISTORY     section     below.      (profile,    default:
8485                            <mh-dir>/context)
8486
8487                  Current-Folder: inbox
8488                            Keeps  track  of  the  current  open  folder.   (context,
8489                            default: folder specified by "Inbox")
8490
8491                  Inbox:  inbox
8492                            Defines the  name  of  your  inbox.   (profile,  default:
8493                            inbox)
8494
8495                  Previous-Sequence: pseq
8496                            Names the sequences which should be defined as the `msgs'
8497                            or  `msg' argument given to the program.  If not present,
8498                            or empty, no sequences are defined.  Otherwise, for  each
8499                            name  given,  the  sequence is first zero'd and then each
8500                            message is added to the sequence.  (profile, no default)
8501
8502                  Sequence-Negation: not
8503                            Defines the string which, when  prefixed  to  a  sequence
8504                            name,  negates that sequence.  Hence, "notseen" means all
8505                            those messages that are not  a  member  of  the  sequence
8506                            "seen".  (profile, no default)
8507
8508
8509             [mh.6]                           MH.6.8                      UCI version
8510
8511
8512
8513
8514
8515
8516
8517
8518
8519             MH-PROFILE(5)                    -129-                     MH-PROFILE(5)
8520
8521
8522                  Unseen-Sequence: unseen
8523                            Names the sequences which should be defined as those mes-
8524                            sages recently incorporated by _\bi_\bn_\bc.  _\bS_\bh_\bo_\bw knows to remove
8525                            messages from this sequence once it thinks they have been
8526                            seen.   If  not  present,  or  empty,  no  sequences  are
8527                            defined.   Otherwise,  each  message  is  added  to  each
8528                            sequence name given.  (profile, no default)
8529
8530                  mh-sequences: .mh_sequences
8531                            The name of the file in each folder which defines  public
8532                            sequences.  To disable the use of public sequences, leave
8533                            the  value  portion  of  this  entry  blank.    (profile,
8534                            default: .mh_sequences)
8535
8536                  atr-_\bs_\be_\bq-_\bf_\bo_\bl_\bd_\be_\br: 172 178-181 212
8537                            Keeps track of the private sequence  called  _\bs_\be_\bq  in  the
8538                            specified folder.  (context, no default)
8539
8540                  Editor: /usr/ucb/ex
8541                            Defines  editor  to  be  used  by   _\bc_\bo_\bm_\bp (1),   _\bd_\bi_\bs_\bt (1),
8542                            _\bf_\bo_\br_\bw (1), and _\br_\be_\bp_\bl (1).  (profile, default: prompter)
8543
8544                  Msg-Protect: 644
8545                            Defines octal protection bits  for  message  files.   See
8546                            _\bc_\bh_\bm_\bo_\bd (1)  for an explanation of the octal number.  (pro-
8547                            file, default: 0644)
8548
8549                  Folder-Protect: 711
8550                            Defines protection bits for  folder  directories.   (pro-
8551                            file, default: 0711)
8552
8553                  _\bp_\br_\bo_\bg_\br_\ba_\bm: default switches
8554                            Sets default switches to be used whenever the mh  program
8555                            _\bp_\br_\bo_\bg_\br_\ba_\bm  is invoked.  For example, one could override the
8556                            _\bE_\bd_\bi_\bt_\bo_\br: profile component when replying  to  messages  by
8557                            adding a component such as:
8558                                    repl: -editor /bin/ed
8559                            (profile, no defaults)
8560
8561                  _\bl_\ba_\bs_\bt_\be_\bd_\bi_\bt_\bo_\br-next: nexteditor
8562                            Names "nexteditor" to be the default editor  after  using
8563                            "lasteditor".   This takes effect at "What now?" level in
8564                            _\bc_\bo_\bm_\bp, _\bd_\bi_\bs_\bt, _\bf_\bo_\br_\bw, and _\br_\be_\bp_\bl.  After editing the draft with
8565                            "lasteditor",  the  default editor is set to be "nextedi-
8566                            tor".  If the user types "edit" without any arguments  to
8567                            "What  now?",  then  "nexteditor"  is used.  (profile, no
8568                            default)
8569
8570                  bboards: system
8571                            Tells _\bb_\bb_\bc which BBoards you are interested in.  (profile,
8572                            default: system)
8573
8574
8575             [mh.6]                           MH.6.8                      UCI version
8576
8577
8578
8579
8580
8581
8582
8583
8584
8585             MH-PROFILE(5)                    -130-                     MH-PROFILE(5)
8586
8587
8588                  Folder-Stack: _\bf_\bo_\bl_\bd_\be_\br_\bs
8589                            The contents of the folder-stack for the _\bf_\bo_\bl_\bd_\be_\br  command.
8590                            (context, no default)
8591
8592                  mhe:
8593                            If present, tells _\bi_\bn_\bc to  compose  an  _\bM_\bH_\bE  auditfile  in
8594                            addition  to  its other tasks.  _\bM_\bH_\bE is Brian Reid's _\bE_\bm_\ba_\bc_\bs
8595                            front-end for _\bM_\bH.  An early version is supplied with  the
8596                            _\bm_\bh._\b6 distribution.  (profile, no default)
8597
8598                  Alternate-Mailboxes: mh@uci-750a, bug-mh*
8599                            Tells _\br_\be_\bp_\bl and _\bs_\bc_\ba_\bn which addresses are really yours.  In
8600                            this  way,  _\br_\be_\bp_\bl knows which addresses should be included
8601                            in the reply, and _\bs_\bc_\ba_\bn knows if the message  really  ori-
8602                            ginated  from  you.   Addresses  must  be  separated by a
8603                            comma, and the hostnames listed should be the  "official"
8604                            hostnames  for the mailboxes you indicate, as local nick-
8605                            names for hosts are not replaced with their official site
8606                            names.   For  each  address, if a host is not given, then
8607                            that address on any host is considered  to  be  you.   In
8608                            addition,  an asterisk (`*') may appear at either or both
8609                            ends of the mailbox and host to indicate wild-card match-
8610                            ing.  (profile, default: your user-id)
8611
8612                  Aliasfile: aliases other-alias
8613                            Indicates aliases files for _\ba_\bl_\bi, _\bw_\bh_\bo_\bm,  and  _\bs_\be_\bn_\bd.   This
8614                            may  be  used instead of the `-alias file' switch.  (pro-
8615                            file, no default)
8616
8617                  Draft-Folder: drafts
8618                            Indicates a default draft folder for  _\bc_\bo_\bm_\bp,  _\bd_\bi_\bs_\bt,  _\bf_\bo_\br_\bw,
8619                            and _\br_\be_\bp_\bl.  (profile, no default)
8620
8621                  digest-issue-_\bl_\bi_\bs_\bt: 1
8622                            Tells _\bf_\bo_\br_\bw the last issue of the last volume sent for the
8623                            digest _\bl_\bi_\bs_\bt.  (context, no default)
8624
8625                  digest-volume-_\bl_\bi_\bs_\bt: 1
8626                            Tells _\bf_\bo_\br_\bw the last volume  sent  for  the  digest  _\bl_\bi_\bs_\bt.
8627                            (context, no default)
8628
8629                  MailDrop: .mail
8630                            Tells _\bi_\bn_\bc your maildrop, if different from  the  default.
8631                            This is superceded by the MAILDROP envariable.  (profile,
8632                            default: /usr/spool/mail/$USER)
8633
8634                  Signature: RAND MH System (agent: Marshall Rose)
8635                            Tells _\bs_\be_\bn_\bd your mail signature.  This  is  superceded  by
8636                            the  SIGNATURE  envariable.   If SIGNATURE is not set and
8637                            this profile entry is not present, the  "gcos"  field  of
8638                            the  /_\be_\bt_\bc/_\bp_\ba_\bs_\bs_\bw_\bd  file  will be used; otherwise, on hosts
8639                            where _\bM_\bH was configured with the  UCI  option,  the  file
8640
8641             [mh.6]                           MH.6.8                      UCI version
8642
8643
8644
8645
8646
8647
8648
8649
8650
8651             MH-PROFILE(5)                    -131-                     MH-PROFILE(5)
8652
8653
8654                            $HOME/.signature  is  consulted.   Your signature will be
8655                            added to the address _\bs_\be_\bn_\bd puts in the "From:" header;  do
8656                            not  include an address in the signature text.  (profile,
8657                            no default)
8658
8659                  The following profile elements are  used  whenever  an  _\bM_\bH  program
8660                  invokes  some  other program such as _\bm_\bo_\br_\be (1).  The ._\bm_\bh__\bp_\br_\bo_\bf_\bi_\bl_\be can
8661                  be used to select alternate  programs  if  the  user  wishes.   The
8662                  default values are given in the examples.
8663
8664                       fileproc:     /usr/local/refile
8665                       incproc:      /usr/local/inc
8666                       installproc:  /usr/local/lib/mh/install-mh
8667                       lproc:        /usr/ucb/more
8668                       mailproc:     /usr/local/mhmail
8669                       mhlproc:      /usr/local/lib/mh/mhl
8670                       moreproc:     /usr/ucb/more
8671                       mshproc:      /usr/local/msh
8672                       packproc:     /usr/local/packf
8673                       postproc:     /usr/local/lib/mh/post
8674                       rmmproc:      none
8675                       rmfproc:      /usr/local/rmf
8676                       sendproc:     /usr/local/send
8677                       showproc:     /usr/ucb/more
8678                       whatnowproc:  /usr/local/whatnow
8679                       whomproc:     /usr/local/whom
8680
8681                  If you define the envariable MH, you can specify  a  profile  other
8682                  than ._\bm_\bh__\bp_\br_\bo_\bf_\bi_\bl_\be to be read by the _\bM_\bH programs that you invoke.  If
8683                  the value of MH is not absolute, (i.e., does not begin with a  / ),
8684                  it  will  be  presumed to start from the current working directory.
8685                  This is one of the very few exceptions  in  _\bM_\bH  where  non-absolute
8686                  pathnames are not considered relative to the user's _\bM_\bH directory.
8687
8688                  Similarly, if you define the envariable MHCONTEXT, you can  specify
8689                  a  context  other than the normal context file (as specified in the
8690                  _\bM_\bH profile).  As always, unless the value of MHCONTEXT is absolute,
8691                  it will be presumed to start from your _\bM_\bH directory.
8692
8693                  _\bM_\bH programs also support other envariables:
8694
8695                  MAILDROP : tells _\bi_\bn_\bc the default maildrop
8696                       This supercedes the "MailDrop:" profile entry.
8697
8698                  SIGNATURE : tells _\bs_\be_\bn_\bd and _\bp_\bo_\bs_\bt your mail signature
8699                       This supercedes the "Signature:" profile entry.
8700
8701                  HOME : tells all _\bM_\bH programs your home directory
8702
8703                  SHELL : tells _\bb_\bb_\bl the default shell to run
8704
8705                  TERM : tells _\bM_\bH your terminal type
8706
8707             [mh.6]                           MH.6.8                      UCI version
8708
8709
8710
8711
8712
8713
8714
8715
8716
8717             MH-PROFILE(5)                    -132-                     MH-PROFILE(5)
8718
8719
8720                       The TERMCAP envariable  is  also  consulted.   In  particular,
8721                       these  tell  _\bs_\bc_\ba_\bn  and _\bm_\bh_\bl how to clear your terminal, and how
8722                       many columns wide your terminal is.  They also  tell  _\bm_\bh_\bl  how
8723                       many lines long your terminal screen is.
8724
8725                  editalt : the alternate message
8726                       This is set by _\bd_\bi_\bs_\bt and _\br_\be_\bp_\bl during edit sessions so  you  can
8727                       peruse  the message being distributed or replied to.  The mes-
8728                       sage is also available  through  a  link  called  "@"  in  the
8729                       current  directory  if  your current working directory and the
8730                       folder the message lives in are on the same UNIX filesystem.
8731
8732                  mhdraft : the path to the working draft
8733                       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-
8734                       _\bn_\bo_\bw_\bp_\br_\bo_\bc  which  file  to  ask "What now?" questions about.  In
8735                       addition, _\bd_\bi_\bs_\bt, _\bf_\bo_\br_\bw, and _\br_\be_\bp_\bl set  mhfolder  if  appropriate.
8736                       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
8737                       about an alternate message associated with the draft (the mes-
8738                       sage being distributed or replied to), and _\bd_\bi_\bs_\bt sets mhdist to
8739                       tell the _\bw_\bh_\ba_\bt_\bn_\bo_\bw_\bp_\br_\bo_\bc that message  re-distribution  is  occur-
8740                       ring.   Also,  mheditor  is  set  to  tell the _\bw_\bh_\ba_\bt_\bn_\bo_\bw_\bp_\br_\bo_\bc the
8741                       user's choice of  editor  (unless  overridden  by  `-noedit').
8742                       Similarly,  mhuse  may be set by _\bc_\bo_\bm_\bp.  Finally, mhmessages is
8743                       set by _\bd_\bi_\bs_\bt, _\bf_\bo_\br_\bw, and _\br_\be_\bp_\bl if annotations are to occur (along
8744                       with  mhannotate, and mhinplace).  It's amazing all the infor-
8745                       mation that has to get passed  via  envariables  to  make  the
8746                       "What now?" interface look squeaky clean to the _\bM_\bH user, isn't
8747                       it?  The reason for all this is that the _\bM_\bH  user  can  select
8748                       _\ba_\bn_\by  program as the _\bw_\bh_\ba_\bt_\bn_\bo_\bw_\bp_\br_\bo_\bc, including one of the standard
8749                       shells.  As a result, it's not possible  to  pass  information
8750                       via an argument list.
8751                       If the WHATNOW option was set during  _\bM_\bH  configuration  (type
8752                       `-help'  to an _\bM_\bH command to find out), and if this envariable
8753                       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
8754                       given  any  `msgs'  arguments, then they will default to using
8755                       the file indicated by mhdraft.  This is useful for getting the
8756                       default behavior supplied by the default _\bw_\bh_\ba_\bt_\bn_\bo_\bw_\bp_\br_\bo_\bc.
8757
8758                  mhfolder : the folder containing the alternate message
8759                       This is set by _\bd_\bi_\bs_\bt and _\br_\be_\bp_\bl during edit sessions so  you  can
8760                       peruse  other  messages  in the current folder besides the one
8761                       being distributed or replied to.  The mhfolder  envariable  is
8762                       also set by _\bs_\bh_\bo_\bw, _\bp_\br_\be_\bv, and _\bn_\be_\bx_\bt for use by _\bm_\bh_\bl.
8763
8764                  MHBBRC :
8765                       If you define the envariable MHBBRC, you can specify a BBoards
8766                       information  file  other than ._\bb_\bb_\br_\bc to be read by _\bb_\bb_\bc.  If the
8767                       value of MHBBRC is not absolute, (i.e., does not begin with  a
8768                       / ),  it  will  be  presumed to start from the current working
8769                       directory.
8770
8771                  MHFD :
8772
8773             [mh.6]                           MH.6.8                      UCI version
8774
8775
8776
8777
8778
8779
8780
8781
8782
8783             MH-PROFILE(5)                    -133-                     MH-PROFILE(5)
8784
8785
8786                       If the OVERHEAD option was set during _\bM_\bH  configuration  (type
8787                       `-help' to an _\bM_\bH command to find out), then if this envariable
8788                       is set, _\bM_\bH considers it to be the number of a file  descriptor
8789                       which  is  opened, read-only to the _\bM_\bH profile.  Similarly, if
8790                       the envariable MHCONTEXTFD is set, this is  the  number  of  a
8791                       file  descriptor  which is opened read-only to the _\bM_\bH context.
8792                       This feature of _\bM_\bH is experimental, and  is  used  to  examine
8793                       possible  speed  improvements for _\bM_\bH startup.  Note that these
8794                       envariables must be set and non-empty to enable this  feature.
8795                       However,  if OVERHEAD is enabled during _\bM_\bH configuration, then
8796                       when _\bM_\bH programs call other _\bM_\bH programs, this scheme is  used.
8797                       These file descriptors are not closed throughout the execution
8798                       of the _\bM_\bH program, so children may  take  advantage  of  this.
8799                       This approach is thought to be completely safe and does result
8800                       in some performance enhancements.
8801
8802
8803             _\bF_\bi_\bl_\be_\bs
8804                  $HOME/.mh_profile                   The user profile
8805                  or $MH                              Rather than the standard profile
8806                  <mh-dir>/context                    The user context
8807                  or $CONTEXT                         Rather than the standard context
8808                  <folder>/.mh_sequences              Public sequences for <folder>
8809
8810
8811             _\bP_\br_\bo_\bf_\bi_\bl_\be _\bC_\bo_\bm_\bp_\bo_\bn_\be_\bn_\bt_\bs
8812                  All
8813
8814
8815             _\bS_\be_\be _\bA_\bl_\bs_\bo
8816                  mh(1), environ(5), mh-sequence(5)
8817
8818
8819             _\bD_\be_\bf_\ba_\bu_\bl_\bt_\bs
8820                  None
8821
8822
8823             _\bC_\bo_\bn_\bt_\be_\bx_\bt
8824                  All
8825
8826
8827
8828
8829
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-PROFILE(5)                    -134-                     MH-PROFILE(5)
8850
8851
8852             _\bH_\bi_\bs_\bt_\bo_\br_\by
8853                  In previous versions of _\bM_\bH, the current-message value of a writable
8854                  folder  was  kept  in a file called "cur" in the folder itself.  In
8855                  _\bm_\bh._\b3, the ._\bm_\bh__\bp_\br_\bo_\bf_\bi_\bl_\be contained the current-message values for  all
8856                  folders, regardless of their writability.
8857
8858                  In all versions of _\bM_\bH since _\bm_\bh._\b4,  the  ._\bm_\bh__\bp_\br_\bo_\bf_\bi_\bl_\be  contains  only
8859                  static  information, which _\bM_\bH programs will NOT update.  Changes in
8860                  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-
8861                  _\br_\by.  This includes, but is not limited to: the "Current-Folder" en-
8862                  try and all private sequence information.  Public sequence informa-
8863                  tion is kept in a file called ._\bm_\bh__\bs_\be_\bq_\bu_\be_\bn_\bc_\be_\bs in each folder.
8864
8865                  To convert from the format used in releases of _\bM_\bH prior to the for-
8866                  mat used in the _\bm_\bh._\b4 release, _\bi_\bn_\bs_\bt_\ba_\bl_\bl-_\bm_\bh should be invoked with the
8867                  `-compat' switch.  This generally happens automatically on _\bM_\bH  sys-
8868                  tems generated with the "COMPAT" option during _\bM_\bH configuration.
8869
8870                  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
8871                  specifying  a "context" entry (this must be in lower-case).  If the
8872                  entry is not absolute (does not start with a / ), then it is inter-
8873                  preted  relative  to the user's _\bM_\bH directory.  As a result, you can
8874                  actually have more than one set of private sequences by using  dif-
8875                  ferent context files.
8876
8877
8878
8879
8880
8881
8882
8883
8884
8885
8886
8887
8888
8889
8890
8891
8892
8893
8894
8895
8896
8897
8898
8899
8900
8901
8902
8903
8904
8905             [mh.6]                           MH.6.8                      UCI version
8906
8907
8908
8909
8910
8911
8912
8913
8914
8915             MH-PROFILE(5)                    -135-                     MH-PROFILE(5)
8916
8917
8918             _\bB_\bu_\bg_\bs
8919                  The shell quoting conventions are not available in the .mh_profile.
8920                  Each token is separated by whitespace.
8921
8922                  There is some question as to  what  kind  of  arguments  should  be
8923                  placed  in  the  profile  as  options.  In order to provide a clear
8924                  answer, recall command line semantics of all _\bM_\bH programs: conflict-
8925                  ing  switches  (e.g., `-header and `-noheader') may occur more than
8926                  one time on the command line, with the last switch  taking  effect.
8927                  Other  arguments, such as message sequences, filenames and folders,
8928                  are always remembered on the invocation line and are not superseded
8929                  by  following  arguments  of  the  same type.  Hence, it is safe to
8930                  place only switches (and their arguments) in the profile.
8931
8932                  If one finds that an _\bM_\bH program is being invoked  again  and  again
8933                  with  the same arguments, and those arguments aren't switches, then
8934                  there are a few possible solutions to this problem.  The  first  is
8935                  to  create a (soft) link in your $_\bH_\bO_\bM_\bE/_\bb_\bi_\bn directory to the _\bM_\bH pro-
8936                  gram of your choice.  By giving this link a different name, you can
8937                  create  a new entry in your profile and use an alternate set of de-
8938                  faults for the _\bM_\bH command.  Similarly, you  could  create  a  small
8939                  shell script which called the _\bM_\bH program of your choice with an al-
8940                  ternate set of invocation line switches (using links and an  alter-
8941                  nate profile entry is preferable to this solution).
8942
8943                  Finally, the _\bc_\bs_\bh user could create an alias for the command of  the
8944                  form:
8945
8946                       alias cmd 'cmd arg1 arg2 ...'
8947
8948                  In this way, the user can avoid lengthy type-in to the  shell,  and
8949                  still  give  _\bM_\bH commands safely.  (Recall that some _\bM_\bH commands in-
8950                  voke others, and that in all cases, the profile  is  read,  meaning
8951                  that aliases are disregarded beyond an initial command invocation)
8952
8953
8954
8955
8956
8957
8958
8959
8960
8961
8962
8963
8964
8965
8966
8967
8968
8969
8970
8971             [mh.6]                           MH.6.8                      UCI version
8972
8973
8974
8975
8976
8977
8978
8979
8980
8981             MH-SEQUENCE(5)                   -136-                    MH-SEQUENCE(5)
8982
8983
8984             _\bN_\bA_\bM_\bE
8985                  mh-sequence - sequence specification for MH message system
8986
8987             _\bS_\bY_\bN_\bO_\bP_\bS_\bI_\bS
8988                  most _\bM_\bH commands
8989
8990             _\bD_\bE_\bS_\bC_\bR_\bI_\bP_\bT_\bI_\bO_\bN
8991
8992                  Most _\bM_\bH commands accept a  `msg'  or  `msgs'  specification,  where
8993                  `msg'  indicates  one message and `msgs' indicates one or more mes-
8994                  sages.  To designate a message,  you  may  use  either  its  number
8995                  (e.g., 1, 10, 234) or one of these "reserved" message names:
8996
8997                       _\bN_\ba_\bm_\be      _\bD_\be_\bs_\bc_\br_\bi_\bp_\bt_\bi_\bo_\bn
8998                       first     the first message in the folder
8999                       last      the last message in the folder
9000                       cur       the most recently accessed message
9001                       prev      the message numerically preceding "cur"
9002                       next      the message numerically following "cur"
9003
9004                  In commands that take a `msg' argument, the default is "cur".  As a
9005                  shorthand, "." is equivalent to "cur".
9006
9007                  For example: In a folder containing five messages numbered  5,  10,
9008                  94,  177  and 325, "first" is 5 and "last" is 325.  If "cur" is 94,
9009                  then "prev" is 10 and "next" is 177.
9010
9011                  The word `msgs' indicates that one or more messages may  be  speci-
9012                  fied.   Such a specification consists of one message designation or
9013                  of several message designations separated  by  spaces.   A  message
9014                  designation  consists either of a message name as defined above, or
9015                  a message range.
9016
9017                  A message range is specified as "name1-name2"  or  "name:n",  where
9018                  `name',  `name1'  and  `name2'  are  message  names,  and `n' is an
9019                  integer.
9020
9021                  The specification "name1-name2" designates  all  currently-existing
9022                  messages from `name1' to `name2' inclusive.  The message name "all"
9023                  is a shorthand for the message range "first-last".
9024
9025                  The specification "name:n" designates up to  `n'  messages.   These
9026                  messages  start with `name' if `name' is a message number or one of
9027                  the reserved names "first" "cur", or "next", The messages end  with
9028                  `name'  if  `name'  is "prev" or "last".  The interpretation of `n'
9029                  may be overridden by preceding `n' with a plus or minus sign;  `+n'
9030                  always  means  up  to  `n'  messages starting with `name', and `-n'
9031                  always means up to `n' messages ending with `name'.
9032
9033                  In commands which accept a `msgs' argument, the default  is  either
9034                  "cur"  or  "all", depending on which makes more sense for each com-
9035                  mand  (see  the  individual  man  pages  for  details).    Repeated
9036
9037             [mh.6]                           MH.6.8                      UCI version
9038
9039
9040
9041
9042
9043
9044
9045
9046
9047             MH-SEQUENCE(5)                   -137-                    MH-SEQUENCE(5)
9048
9049
9050                  specifications of the same message have the same effect as a single
9051                  specification of the message.
9052
9053
9054               _\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
9055
9056                  In addition to the "reserved"  (pre-defined)  message  names  given
9057                  above,  _\bM_\bH  supports  user-defined  sequence  names.   User-defined
9058                  sequences allow the _\bM_\bH user a tremendous amount of power in dealing
9059                  with  groups of messages in the same folder by allowing the user to
9060                  bind a group of messages to a meaningful symbolic name.
9061
9062                  The name used to denote a  message  sequence  must  consist  of  an
9063                  alphabetic  character followed by zero or more alphanumeric charac-
9064                  ters, and can not be one of the  "reserved"  message  names  above.
9065                  After  defining  a  sequence, it can be used wherever an _\bM_\bH command
9066                  expects a `msg' or `msgs' argument.
9067
9068                  Some  forms  of  message  ranges  are  allowed  with   user-defined
9069                  sequences.   The  specification "name:n" may be used, and it desig-
9070                  nates up to the first `n' messages (or last `n' messages for  `-n')
9071                  which are elements of the user-defined sequence `name'.
9072
9073                  The specifications "name:next" and "name:prev" may  also  be  used,
9074                  and  they  designate  the next or previous message (relative to the
9075                  current message) which is an element of the  user-defined  sequence
9076                  `name'.   The  specificaitions  "name:first"  and  "name:last"  are
9077                  equivalent to "name:1" and "name:-1", respectively.  The specifica-
9078                  tion  "name:cur" is not allowed (use just "cur" instead).  The syn-
9079                  tax of these message range specifcations is subject  to  change  in
9080                  the future.
9081
9082                  User-defined sequence names are specific to each folder.  They  are
9083                  defined using the _\bp_\bi_\bc_\bk and _\bm_\ba_\br_\bk commands.
9084
9085
9086               _\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
9087
9088                  There are two varieties of sequences: _\bp_\bu_\bb_\bl_\bi_\bc sequences and  _\bp_\br_\bi_\bv_\ba_\bt_\be
9089                  sequences.   _\bP_\bu_\bb_\bl_\bi_\bc  sequences of a folder are accessible to any _\bM_\bH
9090                  user that can read that folder and are kept  in  the  .mh_sequences
9091                  file  in  the folder.  _\bP_\br_\bi_\bv_\ba_\bt_\be sequences are accessible only to the
9092                  _\bM_\bH user that defined those sequences and are kept in the user's  _\bM_\bH
9093                  context file.  By default, _\bp_\bi_\bc_\bk and _\bm_\ba_\br_\bk create _\bp_\bu_\bb_\bl_\bi_\bc sequences if
9094                  the folder for which the sequences are being defined is writable by
9095                  the  _\bM_\bH  user.  Otherwise, _\bp_\br_\bi_\bv_\ba_\bt_\be sequences are created.  This can
9096                  be overridden with the `-public' and `-private' switches to _\bm_\ba_\br_\bk.
9097
9098
9099               _\bS_\be_\bq_\bu_\be_\bn_\bc_\be _\bN_\be_\bg_\ba_\bt_\bi_\bo_\bn
9100
9101                  _\bM_\bH provides the ability to select all messages not  elements  of  a
9102
9103             [mh.6]                           MH.6.8                      UCI version
9104
9105
9106
9107
9108
9109
9110
9111
9112
9113             MH-SEQUENCE(5)                   -138-                    MH-SEQUENCE(5)
9114
9115
9116                  user-defined  sequence.   To  do  this,  the user should define the
9117                  entry "Sequence-Negation" in the _\bM_\bH profile file; its value may  be
9118                  any  string.  This string is then used to preface an existing user-
9119                  defined sequence name.  This specification  then  refers  to  those
9120                  messages not elements of the specified sequence name.  For example,
9121                  if the profile entry is:
9122
9123                       Sequence-Negation: not
9124
9125                  then anytime an _\bM_\bH command is given "notfoo" as a `msg'  or  `msgs'
9126                  argument, it would substitute all messages that are not elements of
9127                  the sequence "foo".
9128
9129                  Obviously, the user should beware of defining sequences with  names
9130                  that begin with the value of the "Sequence-Negation" profile entry.
9131
9132
9133               _\bT_\bh_\be _\bP_\br_\be_\bv_\bi_\bo_\bu_\bs _\bS_\be_\bq_\bu_\be_\bn_\bc_\be
9134
9135                  _\bM_\bH provides the ability to remember the `msgs'  or  `msg'  argument
9136                  last  given to an _\bM_\bH command.  The entry "Previous-Sequence" should
9137                  be defined in the _\bM_\bH profile; its value should be a  sequence  name
9138                  or  multiple  sequence names separated by spaces.  If this entry is
9139                  defined, when when an _\bM_\bH  command  finishes,  it  will  define  the
9140                  sequence(s)  named  in the value of this entry to be those messages
9141                  that were specified to the command.  Hence, a profile entry of
9142
9143                       Previous-Sequence: pseq
9144
9145                  directs any _\bM_\bH command that accepts a `msg' or `msgs'  argument  to
9146                  define the sequence "pseq" as those messages when it finishes.
9147
9148                  Note:  there  can  be  a   performance   penalty   in   using   the
9149                  "Previous-Sequence"  facility.  If it is used, all _\bM_\bH programs have
9150                  to write the sequence information to the .mh_sequences file for the
9151                  folder  each  time  they  run.   If the "Previous-Sequence" profile
9152                  entry is not included,  only  _\bp_\bi_\bc_\bk  and  _\bm_\ba_\br_\bk  will  write  to  the
9153                  .mh_sequences file.
9154
9155
9156               _\bT_\bh_\be _\bU_\bn_\bs_\be_\be_\bn _\bS_\be_\bq_\bu_\be_\bn_\bc_\be
9157
9158                  Finally, some users like to indicate messages which have  not  been
9159                  previously seen by them.  Both _\bi_\bn_\bc and _\bs_\bh_\bo_\bw honor the profile entry
9160                  "Unseen-Sequence" to support this  activity.   This  entry  in  the
9161                  .mh_profile  should  be  defined  as  one  or  more  sequence names
9162                  separated by spaces.  If there is a value for "Unseen-Sequence"  in
9163                  the profile, then whenever _\bi_\bn_\bc places new messages in a folder, the
9164                  new messages will also be added to the  sequence(s)  named  in  the
9165                  value of this entry.  Hence, a profile entry of
9166
9167                       Unseen-Sequence: unseen
9168
9169             [mh.6]                           MH.6.8                      UCI version
9170
9171
9172
9173
9174
9175
9176
9177
9178
9179             MH-SEQUENCE(5)                   -139-                    MH-SEQUENCE(5)
9180
9181
9182                  directs _\bi_\bn_\bc to add new messages to the sequence  "unseen".   Unlike
9183                  the  behavior of the "Previous-Sequence" entry in the profile, how-
9184                  ever, the sequence(s) will not be zeroed by _\bi_\bn_\bc.
9185
9186                  Similarly, whenever _\bs_\bh_\bo_\bw (or _\bn_\be_\bx_\bt or _\bp_\br_\be_\bv) displays a message, that
9187                  message   will   be   removed  from  any  sequences  named  by  the
9188                  "Unseen-Sequence" entry in the profile.
9189
9190
9191             _\bF_\bi_\bl_\be_\bs
9192                  $HOME/.mh_profile                   The user profile
9193                  <mh-dir>/context                    The user context
9194                  <folder>/.mh_sequences              Public sequences for <folder>
9195
9196
9197             _\bP_\br_\bo_\bf_\bi_\bl_\be _\bC_\bo_\bm_\bp_\bo_\bn_\be_\bn_\bt_\bs
9198                  Sequence-Negation:   To designate messages not in a sequence
9199                  Previous-Sequence:   The last message specification given
9200                  Unseen-Sequence:     Those messages not yet seen by the user
9201
9202
9203             _\bS_\be_\be _\bA_\bl_\bs_\bo
9204                  mh(1), mark(1), pick(1), mh-profile(5)
9205
9206
9207             _\bD_\be_\bf_\ba_\bu_\bl_\bt_\bs
9208                  None
9209
9210
9211             _\bC_\bo_\bn_\bt_\be_\bx_\bt
9212                  All
9213
9214
9215             _\bB_\bu_\bg_\bs
9216                  User-defined sequences are stored in the .mh_sequences  file  as  a
9217                  series  of  message specifications separated by spaces.  If a user-
9218                  defined sequence contains too many  individual  message  specifica-
9219                  tions,  that line in the file may become too long for _\bM_\bH to handle.
9220                  This will generate the error message ".mh_sequences is poorly  for-
9221                  matted".   You'll  have  to edit the file by hand to remove the of-
9222                  fending line.
9223
9224                  This can happen to users who define the  "Previous-Sequence"  entry
9225                  in  the  _\bM_\bH profile and have a folder containing many messages with
9226                  gaps in the numbering.  A workaround for large folders is to minim-
9227                  ize numbering gaps by using "folder -pack" often.
9228
9229
9230
9231
9232
9233
9234
9235             [mh.6]                           MH.6.8                      UCI version
9236
9237
9238
9239
9240
9241
9242
9243
9244
9245             AP(8)                            -140-                             AP(8)
9246
9247
9248             _\bN_\bA_\bM_\bE
9249                  ap - parse addresses 822-style
9250
9251             _\bS_\bY_\bN_\bO_\bP_\bS_\bI_\bS
9252                  /usr/local/lib/mh/ap [-form formatfile] [-format string]
9253                       [-normalize] [-nonormalize] [-width columns] addrs ...
9254                       [-help]
9255
9256             _\bD_\bE_\bS_\bC_\bR_\bI_\bP_\bT_\bI_\bO_\bN
9257
9258                  _\bA_\bp is a program that parses addresses according to the ARPA  Inter-
9259                  net  standard.   It also understands many non-standard formats.  It
9260                  is useful for seeing how _\bM_\bH will interpret an address.
9261
9262                  The _\ba_\bp program treats each argument as one or more  addresses,  and
9263                  prints  those  addresses out in the official 822-format.  Hence, it
9264                  is usually best to enclose each argument in double-quotes  for  the
9265                  shell.
9266
9267                  To override the output format used by _\ba_\bp, the  `-format string'  or
9268                  `-format file'  switches  are used.  This permits individual fields
9269                  of the address to be extracted with ease.  The string is  simply  a
9270                  format   stringand   thefile   is   simply   a  format  file.   See
9271                  _\bm_\bh-_\bf_\bo_\br_\bm_\ba_\bt (5) for the details.
9272
9273                  In addition to the standard escapes, _\ba_\bp also recognizes the follow-
9274                  ing additional escape:
9275
9276                  _\bE_\bs_\bc_\ba_\bp_\be  _\bR_\be_\bt_\bu_\br_\bn_\bs  _\bD_\be_\bs_\bc_\br_\bi_\bp_\bt_\bi_\bo_\bn
9277                  error   string   A diagnostic if the parse failed
9278
9279                  If the `-normalize' switch is given, _\ba_\bp will try to track down  the
9280                  official hostname of the address.
9281
9282                  Here is the default format string used by _\ba_\bp:
9283
9284                       %<{error}%{error}: %{text}%|%(putstr(proper{text}))%>
9285
9286                  which says that if an error was detected, print the error,  a  `:',
9287                  and  the address in error.  Otherwise, output the 822-proper format
9288                  of the address.
9289
9290             _\bF_\bi_\bl_\be_\bs
9291                  $HOME/.mh_profile                   The user profile
9292                  /usr/local/lib/mh/mtstailor         tailor file
9293
9294
9295             _\bP_\br_\bo_\bf_\bi_\bl_\be _\bC_\bo_\bm_\bp_\bo_\bn_\be_\bn_\bt_\bs
9296                  None
9297
9298
9299
9300
9301             [mh.6]                           MH.6.8                      UCI version
9302
9303
9304
9305
9306
9307
9308
9309
9310
9311             AP(8)                            -141-                             AP(8)
9312
9313
9314             _\bS_\be_\be _\bA_\bl_\bs_\bo
9315                  dp(8),
9316                  _\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
9317                  RFC-822)
9318
9319
9320             _\bD_\be_\bf_\ba_\bu_\bl_\bt_\bs
9321                  `-format' defaults as described above
9322                  `-normalize'
9323                  `-width' defaults to the width of the terminal
9324
9325
9326             _\bC_\bo_\bn_\bt_\be_\bx_\bt
9327                  None
9328
9329
9330             _\bB_\bu_\bg_\bs
9331                  The argument to the `-format' switch must be interpreted as a  sin-
9332                  gle token by the shell that invokes _\ba_\bp.  Therefore, one must usual-
9333                  ly place the argument to this switch inside double-quotes.
9334
9335                  On hosts where _\bM_\bH was configured  with  the  BERK  option,  address
9336                  parsing is not enabled.
9337
9338
9339
9340
9341
9342
9343
9344
9345
9346
9347
9348
9349
9350
9351
9352
9353
9354
9355
9356
9357
9358
9359
9360
9361
9362
9363
9364
9365
9366
9367             [mh.6]                           MH.6.8                      UCI version
9368
9369
9370
9371
9372
9373
9374
9375
9376
9377             CONFLICT(8)                      -142-                       CONFLICT(8)
9378
9379
9380             _\bN_\bA_\bM_\bE
9381                  conflict - search for alias/password conflicts
9382
9383             _\bS_\bY_\bN_\bO_\bP_\bS_\bI_\bS
9384                  /usr/local/lib/mh/conflict [-mail name] [-search directory]
9385                       [aliasfiles...] [-help]
9386
9387             _\bD_\bE_\bS_\bC_\bR_\bI_\bP_\bT_\bI_\bO_\bN
9388
9389                  _\bC_\bo_\bn_\bf_\bl_\bi_\bc_\bt is a program that checks to see if the  interface  between
9390                  _\bM_\bH and transport system is in good shape
9391
9392                  _\bC_\bo_\bn_\bf_\bl_\bi_\bc_\bt also checks for maildrops in /usr/spool/mail which do  not
9393                  belong  to  a  valid user.  It assumes that no user name will start
9394                  with `.', and thus ignores files  in  /usr/spool/mail  which  begin
9395                  with  `.'.   It also checks for entries in the _\bg_\br_\bo_\bu_\bp (5) file which
9396                  do not belong to a valid user, and for users  who  do  not  have  a
9397                  valid  group  number.   In  addition duplicate users and groups are
9398                  noted.
9399
9400                  If the `-mail name' switch is used, then the results will  be  sent
9401                  to  the  specified  _\bn_\ba_\bm_\be.   Otherwise,  the results are sent to the
9402                  standard output.
9403
9404                  The `-search directory' switch can be used  to  search  directories
9405                  other  than /usr/spool/mail and to report anomalies in those direc-
9406                  tories.  The `-search directory' switch can appear  more  than  one
9407                  time in an invocation to _\bc_\bo_\bn_\bf_\bl_\bi_\bc_\bt.
9408
9409                  _\bC_\bo_\bn_\bf_\bl_\bi_\bc_\bt should be run under  _\bc_\br_\bo_\bn (8), or whenever system account-
9410                  ing takes place.
9411
9412             _\bF_\bi_\bl_\be_\bs
9413                  /usr/local/lib/mh/mtstailor         tailor file
9414                  /etc/passwd                         List of users
9415                  /etc/group                          List of groups
9416                  /usr/local/mhmail                   Program to send mail
9417                  /usr/spool/mail/                    Directory of mail drop
9418
9419
9420             _\bP_\br_\bo_\bf_\bi_\bl_\be _\bC_\bo_\bm_\bp_\bo_\bn_\be_\bn_\bt_\bs
9421                  None
9422
9423
9424             _\bS_\be_\be _\bA_\bl_\bs_\bo
9425                  mh-alias(5)
9426
9427
9428             _\bD_\be_\bf_\ba_\bu_\bl_\bt_\bs
9429                  `aliasfiles' defaults to /usr/local/lib/mh/MailAliases
9430
9431
9432
9433             [mh.6]                           MH.6.8                      UCI version
9434
9435
9436
9437
9438
9439
9440
9441
9442
9443             CONFLICT(8)                      -143-                       CONFLICT(8)
9444
9445
9446             _\bC_\bo_\bn_\bt_\be_\bx_\bt
9447                  None
9448
9449
9450
9451
9452
9453
9454
9455
9456
9457
9458
9459
9460
9461
9462
9463
9464
9465
9466
9467
9468
9469
9470
9471
9472
9473
9474
9475
9476
9477
9478
9479
9480
9481
9482
9483
9484
9485
9486
9487
9488
9489
9490
9491
9492
9493
9494
9495
9496
9497
9498
9499             [mh.6]                           MH.6.8                      UCI version
9500
9501
9502
9503
9504
9505
9506
9507
9508
9509             DP(8)                            -144-                             DP(8)
9510
9511
9512             _\bN_\bA_\bM_\bE
9513                  dp - parse dates 822-style
9514
9515             _\bS_\bY_\bN_\bO_\bP_\bS_\bI_\bS
9516                  /usr/local/lib/mh/dp [-form formatfile] [-format string]
9517                       [-width columns] dates ...  [-help]
9518
9519             _\bD_\bE_\bS_\bC_\bR_\bI_\bP_\bT_\bI_\bO_\bN
9520
9521                  _\bD_\bp is a program that parses dates according to  the  ARPA  Internet
9522                  standard.   It  also understands many non-standard formats, such as
9523                  those  produced  by  TOPS-20  sites  and  some  UNIX  sites   using
9524                  _\bc_\bt_\bi_\bm_\be (3).  It is useful for seeing how _\bM_\bH will interpret a date.
9525
9526                  The _\bd_\bp program treats each argument as a single  date,  and  prints
9527                  the date out in the official 822-format.  Hence, it is usually best
9528                  to enclose each argument in double-quotes for the shell.
9529
9530                  To override the output format used by _\bd_\bp, the  `-format string'  or
9531                  `-format file'  switches  are used.  This permits individual fields
9532                  of the address to be extracted with ease.  The string is  simply  a
9533                  format   stringand   thefile   is   simply   a  format  file.   See
9534                  _\bm_\bh-_\bf_\bo_\br_\bm_\ba_\bt (5) for the details.
9535
9536                  Here is the default format string used by _\bd_\bp:
9537
9538                       %<(nodate{text})error: %{text}%|%(putstr(pretty{text}))%>
9539
9540                  which says that if an error was detected, print the error,  a  `:',
9541                  and  the date in error.  Otherwise, output the 822-proper format of
9542                  the date.
9543
9544             _\bF_\bi_\bl_\be_\bs
9545                  $HOME/.mh_profile                   The user profile
9546
9547
9548             _\bP_\br_\bo_\bf_\bi_\bl_\be _\bC_\bo_\bm_\bp_\bo_\bn_\be_\bn_\bt_\bs
9549                  None
9550
9551
9552             _\bS_\be_\be _\bA_\bl_\bs_\bo
9553                  ap(8)
9554                  _\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
9555                  RFC-822)
9556
9557
9558             _\bD_\be_\bf_\ba_\bu_\bl_\bt_\bs
9559                  `-format' default as described above
9560                  `-width' default to the width of the terminal
9561
9562
9563
9564
9565             [mh.6]                           MH.6.8                      UCI version
9566
9567
9568
9569
9570
9571
9572
9573
9574
9575             DP(8)                            -145-                             DP(8)
9576
9577
9578             _\bC_\bo_\bn_\bt_\be_\bx_\bt
9579                  None
9580
9581
9582             _\bB_\bu_\bg_\bs
9583                  The argument to the `-format' switch must be interpreted as a  sin-
9584                  gle token by the shell that invokes _\bd_\bp.  Therefore, one must usual-
9585                  ly place the argument to this switch inside double-quotes.
9586
9587
9588
9589
9590
9591
9592
9593
9594
9595
9596
9597
9598
9599
9600
9601
9602
9603
9604
9605
9606
9607
9608
9609
9610
9611
9612
9613
9614
9615
9616
9617
9618
9619
9620
9621
9622
9623
9624
9625
9626
9627
9628
9629
9630
9631             [mh.6]                           MH.6.8                      UCI version
9632
9633
9634
9635
9636
9637
9638
9639
9640
9641             FMTDUMP(8)                       -146-                        FMTDUMP(8)
9642
9643
9644             _\bN_\bA_\bM_\bE
9645                  fmtdump - decode MH format files
9646
9647             _\bS_\bY_\bN_\bO_\bP_\bS_\bI_\bS
9648                  /usr/local/lib/mh/fmtdump [-form formatfile] [-format string]
9649                       [-help]
9650
9651             _\bD_\bE_\bS_\bC_\bR_\bI_\bP_\bT_\bI_\bO_\bN
9652
9653                  _\bF_\bm_\bt_\bd_\bu_\bm_\bp is a program that parses an _\bM_\bH format file and  produces  a
9654                  pseudo-language listing of the how _\bM_\bH interprets the file.
9655
9656                  The `-format string' and `-form formatfile' switches may be used to
9657                  specify a format string or format file to read.  The string is sim-
9658                  ply a format string and the file is simply a format file.  See  _\bm_\bh-
9659                  _\bf_\bo_\br_\bm_\ba_\bt(5) for the details.
9660
9661             _\bF_\bi_\bl_\be_\bs
9662                  $HOME/.mh_profile                   The user profile
9663                  /usr/local/lib/mh/scan.default      The default format file
9664
9665
9666             _\bP_\br_\bo_\bf_\bi_\bl_\be _\bC_\bo_\bm_\bp_\bo_\bn_\be_\bn_\bt_\bs
9667                  Path:                To determine the user's MH directory
9668
9669
9670             _\bS_\be_\be _\bA_\bl_\bs_\bo
9671                  mh-format(5), mh-sequences(8)
9672
9673
9674             _\bC_\bo_\bn_\bt_\be_\bx_\bt
9675                  None
9676
9677
9678             _\bB_\bu_\bg_\bs
9679                  The output may not be useful  unless  you  are  familiar  with  the
9680                  internals of the mh-format subroutines.
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             INSTALL-MH(8)                    -147-                     INSTALL-MH(8)
9708
9709
9710             _\bN_\bA_\bM_\bE
9711                  install-mh - initialize the MH environment
9712
9713             _\bS_\bY_\bN_\bO_\bP_\bS_\bI_\bS
9714                  /usr/local/lib/mh/install-mh [-auto] [-compat]
9715
9716             _\bD_\bE_\bS_\bC_\bR_\bI_\bP_\bT_\bI_\bO_\bN
9717
9718                  When a user runs any _\bM_\bH program for the  first  time,  the  program
9719                  will  invoke _\bi_\bn_\bs_\bt_\ba_\bl_\bl-_\bm_\bh (with the `-auto' switch) to query the user
9720                  for the initial _\bM_\bH environment.  The user does NOT invoke this pro-
9721                  gram  directly.   The  user  is asked for the name of the directory
9722                  that will be designated as the user's _\bM_\bH directory.  If this direc-
9723                  tory  does  not  exist,  the user is asked if it should be created.
9724                  Normally, this directory should be under the user's home directory,
9725                  and  has  the  default name of Mail/.  After _\bi_\bn_\bs_\bt_\ba_\bl_\bl-_\bm_\bh has written
9726                  the initial .mh_profile for the user, control returns to the origi-
9727                  nal _\bM_\bH program.
9728
9729                  As with all  _\bM_\bH  commands,  _\bi_\bn_\bs_\bt_\ba_\bl_\bl-_\bm_\bh  first  consults  the  $HOME
9730                  envariable to determine the user's home directory.  If $HOME is not
9731                  set, then the /_\be_\bt_\bc/_\bp_\ba_\bs_\bs_\bw_\bd file is consulted.
9732
9733                  When converting from _\bm_\bh._\b3  to  _\bm_\bh._\b4,  _\bi_\bn_\bs_\bt_\ba_\bl_\bl-_\bm_\bh  is  automatically
9734                  invoked with the `-compat' switch.
9735
9736             _\bF_\bi_\bl_\be_\bs
9737                  $HOME/.mh_profile                   The user profile
9738
9739
9740             _\bP_\br_\bo_\bf_\bi_\bl_\be _\bC_\bo_\bm_\bp_\bo_\bn_\be_\bn_\bt_\bs
9741                  Path:                To set the user's MH directory
9742
9743
9744             _\bC_\bo_\bn_\bt_\be_\bx_\bt
9745                  With `-auto', the current folder is changed to "inbox".
9746
9747
9748
9749
9750
9751
9752
9753
9754
9755
9756
9757
9758
9759
9760
9761
9762
9763             [mh.6]                           MH.6.8                      UCI version
9764
9765
9766
9767
9768
9769
9770
9771
9772
9773             POST(8)                          -148-                           POST(8)
9774
9775
9776             _\bN_\bA_\bM_\bE
9777                  post - deliver a message
9778
9779             _\bS_\bY_\bN_\bO_\bP_\bS_\bI_\bS
9780                  /usr/local/lib/mh/post [-alias aliasfile] [-filter filterfile]
9781                       [-nofilter] [-format] [-noformat] [-msgid] [-nomsgid]
9782                       [-verbose] [-noverbose] [-watch] [-nowatch] [-width columns]
9783                       file [-help]
9784
9785             _\bD_\bE_\bS_\bC_\bR_\bI_\bP_\bT_\bI_\bO_\bN
9786
9787                  _\bP_\bo_\bs_\bt is the program called by _\bs_\be_\bn_\bd (1) to deliver  the  message  in
9788                  _\bf_\bi_\bl_\be  to  local  and  remote  users.  In fact, all of the functions
9789                  attributed to _\bs_\be_\bn_\bd on its manual page are performed by  _\bp_\bo_\bs_\bt,  with
9790                  _\bs_\be_\bn_\bd  acting as a relatively simple preprocessor.  Thus, it is _\bp_\bo_\bs_\bt
9791                  which parses the various header fields,  appends  From:  and  Date:
9792                  lines, and interacts with the _\bS_\be_\bn_\bd_\bM_\ba_\bi_\bl transport system.  _\bP_\bo_\bs_\bt will
9793                  not normally be called directly by the user.
9794
9795                  _\bP_\bo_\bs_\bt searches the "To:", "cc:", "Bcc:", "Fcc:",  and  "Resent-xxx:"
9796                  header  lines  of  the specified message for destination addresses,
9797                  checks these addresses for validity, and formats them so as to con-
9798                  form  to  ARPAnet  Internet  Message  Format  protocol,  unless the
9799                  `-noformat' flag is set.  This will normally cause "@_\bl_\bo_\bc_\ba_\bl-_\bs_\bi_\bt_\be" to
9800                  be appended to each local destination address, as well as any local
9801                  return addresses. The `-width columns' switch can be used to  indi-
9802                  cate  the  preferred  length  of the header components that contain
9803                  addresses.
9804
9805                  If a "Bcc:" field is encountered, its addresses will  be  used  for
9806                  delivery,  and  the  "Bcc:"  field will be removed from the message
9807                  sent to sighted recipients.  The blind recipients will  receive  an
9808                  entirely  new  message  with a minimal set of headers.  Included in
9809                  the body of the message will be a copy of the message sent  to  the
9810                  sighted  recipients.   If  `-filter filterfile'  is specified, then
9811                  this copy is filtered (re-formatted) prior to  being  sent  to  the
9812                  blind recipients.
9813
9814                  The `-alias aliasfile' switch can be used to specify  a  file  that
9815                  post  should  take  aliases from.  More than one file can be speci-
9816                  fied, each being preceded with `-alias'.  In any event, the primary
9817                  alias file is read first.
9818
9819                  The   `-msgid'   switch   indicates   that   a   "Message-ID:"   or
9820                  "Resent-Message-ID:" field should be added to the header.
9821
9822                  The `-verbose' switch indicates that the user should be informed of
9823                  each step of the posting/filing process.
9824
9825                  The `-watch' switch indicates that the user would like to watch the
9826                  transport  system's handling of the message (e.g., local and "fast"
9827                  delivery).
9828
9829             [mh.6]                           MH.6.8                      UCI version
9830
9831
9832
9833
9834
9835
9836
9837
9838
9839             POST(8)                          -149-                           POST(8)
9840
9841
9842                  _\bP_\bo_\bs_\bt consults the envariable $SIGNATURE to determine  the  sender's
9843                  personal name in constructing the "From:" line of the message.
9844
9845             _\bF_\bi_\bl_\be_\bs
9846                  /usr/local/lib/mh/mtstailor         tailor file
9847                  /usr/local/refile                   Program to process Fcc:s
9848                  /usr/local/lib/mh/mhl               Program to process Bcc:s
9849                  /usr/local/lib/mh/MailAliases       Primary alias file
9850
9851
9852             _\bP_\br_\bo_\bf_\bi_\bl_\be _\bC_\bo_\bm_\bp_\bo_\bn_\be_\bn_\bt_\bs
9853                  _\bp_\bo_\bs_\bt does NOT consult the user's .mh_profile
9854
9855
9856             _\bS_\be_\be _\bA_\bl_\bs_\bo
9857                  _\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
9858                  RFC-822),
9859                  mhmail(1), send(1), mh-mail(5), mh-alias(5)
9860
9861
9862             _\bD_\be_\bf_\ba_\bu_\bl_\bt_\bs
9863                  `-alias /usr/local/lib/mh/MailAliases'
9864                  `-format'
9865                  `-nomsgid'
9866                  `-noverbose'
9867                  `-nowatch'
9868                  `-width 72'
9869                  `-nofilter'
9870
9871
9872             _\bC_\bo_\bn_\bt_\be_\bx_\bt
9873                  None
9874
9875
9876             _\bB_\bu_\bg_\bs
9877                  "Reply-To:" fields are allowed to have groups in them according  to
9878                  the 822 specification, but _\bp_\bo_\bs_\bt won't let you use them.
9879
9880
9881
9882
9883
9884
9885
9886
9887
9888
9889
9890
9891
9892
9893
9894
9895                  [mh.6]                           MH.6.8                      UCI version
9896
9897
9898
9899
9900
9901
9902
9903
9904
9905
9906
9907
9908                                           _\b5. _\bR_\bE_\bP_\bO_\bR_\bT_\bI_\bN_\bG _\bP_\bR_\bO_\bB_\bL_\bE_\bM_\bS
9909
9910
9911
9912
9913
9914                       If problems are encountered with an _\bM_\bH program, the problems should
9915                  be  reported  to the local maintainers of _\bM_\bH.  When doing this, the name
9916                  of the program should be reported, along with  the  version  information
9917                  for  the  program.   To  find out what version of an _\bM_\bH program is being
9918                  run, invoke the program with the `-help' switch.  In addition to listing
9919                  the  syntax of the command, the program will list information pertaining
9920                  to its version.  This information includes the version of _\bM_\bH,  the  host
9921                  it was generated on, and the date the program was loaded.  A second line
9922                  of information, found on versions of _\bM_\bH after #5.380 include  _\bM_\bH  confi-
9923                  guration options.  For example,
9924
9925                       version: MH 6.1 #1[UCI] (nrtc-gremlin) of Wed Nov  6  01:13:53  PST
9926                       1985
9927                       options: [BSD42] [MHE] [NETWORK] [SENDMTS] [MMDFII] [SMTP] [POP]
9928
9929                  The `6.1 #1[UCI]' indicates that the program is from the UCI  _\bm_\bh._\b6  ver-
9930                  sion  of  _\bM_\bH.   The  program was generated on the host `nrtc-gremlin' on
9931                  `Wed Nov  6 01:13:53 PST 1985'.  It's usually a good idea  to  send  the
9932                  output of the `-help' switch along with your report.
9933
9934                  If there is no local _\bM_\bH maintainer, try the  address  Bug-MH.   If  that
9935                  fails, use the Internet mailbox Bug-MH@ICS.UCI.EDU.
9936
9937
9938
9939
9940
9941
9942
9943
9944
9945
9946
9947
9948
9949
9950
9951
9952
9953
9954
9955
9956
9957
9958
9959
9960
9961                                                   -150-
9962
9963
9964
9965
9966
9967
9968
9969
9970
9971
9972
9973
9974                                            _\b6. _\bA_\bD_\bV_\bA_\bN_\bC_\bE_\bD _\bF_\bE_\bA_\bT_\bU_\bR_\bE_\bS
9975
9976
9977
9978
9979
9980                       This section describes some  features  of  _\bM_\bH  that  were  included
9981                  strictly for advanced _\bM_\bH users.  These capabilities permit _\bM_\bH to exhibit
9982                  more powerful behavior for the seasoned _\bM_\bH users.
9983
9984
9985                  _\bU_\bS_\bE_\bR-_\bD_\bE_\bF_\bI_\bN_\bE_\bD _\bS_\bE_\bQ_\bU_\bE_\bN_\bC_\bE_\bS
9986
9987                       User-defined sequences allow the _\bM_\bH user  a  tremendous  amount  of
9988                  power  in dealing with groups of messages in the same folder by allowing
9989                  the user to bind a group of messages to a meaningful symbolic name.  The
9990                  user  may choose any name for a message sequence, as long as it consists
9991                  of alphanumeric characters and does not conflict with  the  standard  _\bM_\bH
9992                  reserved message names (e.g., "first", etc).  After defining a sequence,
9993                  it can be used wherever an _\bM_\bH command expects a `msg'  or  `msgs'  argu-
9994                  ment.
9995
9996                       A restricted form of message ranges are allowed  with  user-defined
9997                  sequences.  The  form  "name:n",  specifies up to the first `n' messages
9998                  which are part of the user-defined sequence `name'.  A leading plus sign
9999                  is  allowed on `n', but is ignored.  The interpretation of n is overrid-
10000                  den if n is preceded by a minus sign; `-n' always means up to  the  last
10001                  `n' messages which are part of the sequence `name'.
10002
10003                       Although all _\bM_\bH commands expand user-defined sequences as appropri-
10004                  ate, there are two commands that allow the user to define and manipulate
10005                  them: _\bp_\bi_\bc_\bk and _\bm_\ba_\br_\bk.
10006
10007                  _\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
10008
10009                       Most users of _\bM_\bH will use user-defined sequences only with the _\bp_\bi_\bc_\bk
10010                  command.  By giving the `-sequence name' switch to _\bp_\bi_\bc_\bk (which can occur
10011                  more than once on the command line), each sequence named is  defined  as
10012                  those  messages  which _\bp_\bi_\bc_\bk matched according the the selection criteria
10013                  it was given.  Hence,
10014
10015                       pick -from frated -seq fred
10016
10017                  finds all those messages in the current folder which were from "frated",
10018                  creates  a  sequence  called "fred", and then adds them to the sequence.
10019                  The user could then invoke
10020
10021                       scan fred
10022
10023                  to get a _\bs_\bc_\ba_\bn listing of those messages.  Note  that  by  default,  _\bp_\bi_\bc_\bk
10024                  creates  the named sequences before it adds the selected messages to the
10025                  sequence.  Hence, if the named sequence already existed, the sequence is
10026
10027                                                   -151-
10028
10029
10030
10031
10032
10033
10034
10035
10036
10037                                                   -152-
10038
10039
10040                  destroyed  prior  to  being  re-defined (nothing happens to the messages
10041                  that were a part of this sequence, they simply cease to  be  members  of
10042                  that  sequence).   By  using  the `-nozero' switch, this behavior can be
10043                  inhibited, as in
10044
10045                       pick -from frated -seq sgroup
10046                       pick -from fear -seq sgroup -nozero
10047                       pick -from freida -seq sgroup -nozero
10048
10049                  finds all those messages in the current folder which were from "frated",
10050                  "fear", or "freida", and defines the sequence called "sgroup" as exactly
10051                  those messages.  These operations amounted to an "inclusive-or" of three
10052                  selection  criteria, using _\bp_\bi_\bc_\bk, one can also generate the "and" of some
10053                  selection criteria as well:
10054
10055                       pick -from frated -seq fred
10056                       pick -before friday -seq fred fred
10057
10058                  This example defines the sequence called "fred" as  exactly  those  mes-
10059                  sages from "frated" that were dated prior to "friday".[1]
10060
10061                       _\bP_\bi_\bc_\bk is normally used as a back-quoted command, for example,
10062
10063                       scan `pick -from postmaster`
10064
10065                  Now suppose that the user decides that another command should be issued,
10066                  using   exactly   those   messages.    Since,   _\bp_\bi_\bc_\bk   wasn't   given  a
10067                  `-sequence name' argument in this example, the user would end-up  typing
10068                  the entire back-quoted command again.  A simpler way is to add a default
10069                  sequence name to the .mh_profile.  For example,
10070
10071                       pick: -seq select -list
10072
10073                  will tell _\bp_\bi_\bc_\bk to always define the sequence "select" whenever it's run.
10074                  The  `-list'  is necessary since the `-sequence name' switch sets `-nol-
10075                  ist' whenever the former is  encountered.   Hence,  this  profile  entry
10076                  makes  _\bp_\bi_\bc_\bk define the "select" sequence and otherwise behave exactly as
10077
10078
10079                     [1]  Of  course, it is much easier to simply use the built-in boolean
10080                  operation of _\bp_\bi_\bc_\bk to get the desired results:
10081
10082                       pick -from frated -or -from fear -or -from freida -seq sgroup
10083
10084                  and
10085
10086                       pick -from frated -and -before friday -seq fred
10087
10088                  do exactly the same thing as the five commands listed above.  Hence, the
10089                  `-nozero'  option  to  _\bp_\bi_\bc_\bk  is  only  useful to manipulate existing se-
10090                  quences.
10091
10092
10093
10094
10095
10096
10097
10098
10099
10100
10101
10102
10103                                                   -153-
10104
10105
10106                  if there was no profile entry at all.
10107
10108                  _\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
10109
10110                       The _\bm_\ba_\br_\bk command lets the user perform  low-level  manipulation  of
10111                  sequences,  and  also  provides  a  well-needed  debug  facility  to the
10112                  implementors/developers/maintainers  of  _\bM_\bH  (the  _\bM_\bH-hacks).   In   the
10113                  future,  a user-friendly "front-end" for _\bm_\ba_\br_\bk will probably be developed
10114                  to give the _\bM_\bH user a way to take better  advantage  of  the  underlying
10115                  facilities.
10116
10117                  _\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
10118
10119                       There are two kinds of sequences:  _\bp_\bu_\bb_\bl_\bi_\bc  sequences,  and  _\bp_\br_\bi_\bv_\ba_\bt_\be
10120                  sequences.   _\bP_\bu_\bb_\bl_\bi_\bc  sequences of a folder are accessible to any _\bM_\bH user
10121                  that can read that folder and are kept in the .mh_sequences file in  the
10122                  folder.   _\bP_\br_\bi_\bv_\ba_\bt_\be  sequences  are  accessible  only  to the _\bM_\bH user that
10123                  defined those sequences and are kept in the user's _\bM_\bH context file.   By
10124                  default,  _\bp_\bi_\bc_\bk  (and  _\bm_\ba_\br_\bk )  create  _\bp_\bu_\bb_\bl_\bi_\bc sequences if the folder for
10125                  which the sequences are being defined is writable by the _\bM_\bH user.   Oth-
10126                  erwise,  _\bp_\br_\bi_\bv_\ba_\bt_\be sequences are created.  This can be overridden with the
10127                  `-public' and `-nopublic' switches.
10128
10129                  _\bS_\be_\bq_\bu_\be_\bn_\bc_\be _\bN_\be_\bg_\ba_\bt_\bi_\bo_\bn
10130
10131                       In addition to telling an _\bM_\bH command to use  the  messages  in  the
10132                  sequence "seen", as in
10133
10134                       refile seen +old
10135
10136                  it would be useful to be easily able to tell an _\bM_\bH command  to  use  all
10137                  messages  _\be_\bx_\bc_\be_\bp_\bt  those in the sequence.  One way of doing this would be
10138                  to use _\bm_\ba_\br_\bk and define the sequence explicitly, as in
10139
10140                       mark -delete -zero seen -seq notseen
10141
10142                  which, owing to _\bm_\ba_\br_\bk 's cryptic interpretation of `-delete' and `-zero',
10143                  defines  the  sequence  "notseen" to be all messages not in the sequence
10144                  "seen".  Naturally, anytime the sequence "seen"  is  changed,  "notseen"
10145                  will  have  to be updated.  Another way to achieve this is to define the
10146                  entry "Sequence-Negation:" in the .mh_profile.  If the entry was
10147
10148                       Sequence-Negation: not
10149
10150                  then anytime an _\bM_\bH command was given "notseen"  as  a  `msg'  or  `msgs'
10151                  argument,  it would substitute all messages that are not a member of the
10152                  sequence "seen".  That is,
10153
10154                       refile notseen +new
10155
10156                  does just that.  The value of the "Sequence-Negation:" entry in the pro-
10157                  file  can  be  any  string.  Hence, experienced users of _\bM_\bH do not use a
10158
10159
10160
10161
10162
10163
10164
10165
10166
10167
10168
10169                                                   -154-
10170
10171
10172                  word, but rather a special character which their shell does  not  inter-
10173                  pret  (users  of  the  _\bC_\bS_\bh_\be_\bl_\bl  use a single caret or circumflex (usually
10174                  shift-6), while users of the  Bourne  shell  use  an  exclamation-mark).
10175                  This is because there is nothing to prevent a user of _\bM_\bH from defining a
10176                  sequence with this string as its prefix, if the  string  is  nothing  by
10177                  letters and digits.  Obviously, this could lead to confusing behavior if
10178                  the "Sequence-Negation:" entry leads _\bM_\bH to believe  that  two  sequences
10179                  are opposites by virtue of their names differing by the prefix string.
10180
10181                  _\bT_\bh_\be _\bP_\br_\be_\bv_\bi_\bo_\bu_\bs _\bS_\be_\bq_\bu_\be_\bn_\bc_\be
10182
10183                       Many times users find themselves issuing a series  of  commands  on
10184                  the  same  sequences  of messages.  If the user first defined these mes-
10185                  sages as a sequence, then considerable typing may be saved.  If the user
10186                  doesn't  have  this  foresight,  _\bM_\bH  provides  a  handy way of having _\bM_\bH
10187                  remember the `msgs' or `msg' argument last given to an _\bM_\bH  command.   If
10188                  the  entry "Previous-Sequence:" is defined in the .mh_profile, then when
10189                  the command finishes, it will define the sequence(s) named in the  value
10190                  of  this  entry  as  being  exactly  those messages that were specified.
10191                  Hence, a profile entry of
10192
10193                       Previous-Sequence: pseq
10194
10195                  directs any _\bM_\bH command that accepts a `msg' or `msgs' argument to define
10196                  the  sequence  "pseq" as those messages when it finishes.  More than one
10197                  sequence name may be placed in this entry, separated with  spaces.   The
10198                  one  disadvantage of this approach is that the _\bM_\bH progams have to update
10199                  the sequence information for the folder each  time  they  run  (although
10200                  most  programs read this information, usually only _\bp_\bi_\bc_\bk and _\bm_\ba_\br_\bk have to
10201                  write this information out).
10202
10203                  _\bT_\bh_\be _\bU_\bn_\bs_\be_\be_\bn _\bS_\be_\bq_\bu_\be_\bn_\bc_\be
10204
10205                       Finally, some users like to distinguish between messages which have
10206                  been  previously seen by them.  Both _\bi_\bn_\bc and _\bs_\bh_\bo_\bw honorthe profile entry
10207                  "Unseen-Sequence" to support this activity.   Whenever  _\bi_\bn_\bc  places  new
10208                  messages  in  a folder, if the entry "Unseen-Sequence" is defined in the
10209                  .mh_profile, then when the command finishes, _\bi_\bn_\bc will add the  new  mes-
10210                  sages  to  the  sequence(s)  named in the value of this entry.  Hence, a
10211                  profile entry of
10212
10213                       Unseen-Sequence:  unseen
10214
10215                  directs _\bi_\bn_\bc to add new messages to the sequence  "unseen".   Unlike  the
10216                  behavior  of  the  "Previous-Sequence" entry in the profile however, the
10217                  sequence(s) will not be zero'd.
10218
10219                       Similarly, whenever _\bs_\bh_\bo_\bw (or _\bn_\be_\bx_\bt or  _\bp_\br_\be_\bv )  displays  a  message,
10220                  they   remove   those   messages   from   any  sequences  named  by  the
10221                  "Unseen-Sequence" entry in the profile.
10222
10223
10224
10225
10226
10227
10228
10229
10230
10231
10232
10233
10234
10235                                                   -155-
10236
10237
10238                  _\bC_\bO_\bM_\bP_\bO_\bS_\bI_\bT_\bI_\bO_\bN _\bO_\bF _\bM_\bA_\bI_\bL
10239
10240                       There are a number of interesting advanced facilities for the  com-
10241                  position of outgoing mail.
10242
10243
10244                  _\bT_\bh_\be _\bD_\br_\ba_\bf_\bt _\bF_\bo_\bl_\bd_\be_\br
10245
10246                       The  _\bc_\bo_\bm_\bp,  _\bd_\bi_\bs_\bt,  _\bf_\bo_\br_\bw,  and  _\br_\be_\bp_\bl  commands  have  two  switches,
10247                  `-draftfolder +folder'        and        `-draftmessage msg'.         If
10248                  `-draftfolder +folder' is used, these commands are directed to construct
10249                  a  draft  message in the indicated folder.  (The "Draft-Folder:" profile
10250                  entry may be used to declare a default draft folder for use  with  _\bc_\bo_\bm_\bp,
10251                  _\bd_\bi_\bs_\bt, _\bf_\bo_\br_\bw, and _\br_\be_\bp_\bl) If `-draftmessage msg' is not used, it defaults to
10252                  `new' (unless the user invokes _\bc_\bo_\bm_\bp  with  `-use',  in  which  case  the
10253                  default  is  `cur').   Hence, the user may have several message composi-
10254                  tions in progress simultaneously.  Now, all of the _\bM_\bH tools  are  avail-
10255                  able  on  each of the user's message drafts (e.g., _\bs_\bh_\bo_\bw, _\bs_\bc_\ba_\bn, _\bp_\bi_\bc_\bk, and
10256                  so on).  If the folder does not exist, the user is asked if it should be
10257                  created (just like with _\br_\be_\bf_\bi_\bl_\be ).  Also, the last draft message the user
10258                  was composing is known as `cur' in the draft folder.
10259
10260                       Furthermore, the _\bs_\be_\bn_\bd command has these switches as  well.   Hence,
10261                  from  the shell, the user can send off whatever drafts desired using the
10262                  standard _\bM_\bH `msgs' convention with `-draftmessage msgs'.  If  no  `msgs'
10263                  are given, it defaults to `cur'.
10264
10265                       In addition, all five  programs  have  a  `-nodraftfolder'  switch,
10266                  which undoes the last occurrence of `-draftfolder folder' (useful if the
10267                  latter occurs in the user's _\bM_\bH profile).
10268
10269                       If the user does not give the `-draftfolder +folder'  switch,  then
10270                  all  these  commands act ``normally''.  Note that the `-draft' switch to
10271                  _\bs_\be_\bn_\bd and _\bs_\bh_\bo_\bw still refers to the file called `draft' in the  user's  _\bM_\bH
10272                  directory.   In  the interests of economy of expression, when using _\bc_\bo_\bm_\bp
10273                  or _\bs_\be_\bn_\bd, the user needn't prefix the draft `msg' or `msgs' with `-draft-
10274                  message'.   Both  of these commands accept a `file' or `files' argument,
10275                  and they will, if given `-draftfolder +folder' treat these arguments  as
10276                  `msg' or `msgs'.[2] Hence,
10277
10278                       send -draftf +drafts first
10279
10280                  is the same as
10281
10282                       send -draftf +drafts -draftm first
10283
10284
10285
10286
10287                     [2]  This may appear to be inconsistent, at first, but it saves a lot
10288                  of typing.
10289
10290
10291
10292
10293
10294
10295
10296
10297
10298
10299
10300
10301                                                   -156-
10302
10303
10304                       To make all this a bit more clear, here are some  examples.   Let's
10305                  assume that the following entries are in the _\bM_\bH profile:
10306
10307                       Draft-Folder: +drafts
10308                       sendf: -draftfolder +drafts
10309
10310                  Furthermore, let's assume that the program _\bs_\be_\bn_\bd_\bf is a (symbolic) link in
10311                  the user's $HOME/bin/ directory to _\bs_\be_\bn_\bd.  Then, any of the commands
10312
10313                       comp
10314                       dist
10315                       forw
10316                       repl
10317
10318                  constructs the message draft in the `draft' folder using the `new'  mes-
10319                  sage  number.   Furthermore, they each define `cur' in this folder to be
10320                  that message draft.  If the user were to use the _\bq_\bu_\bi_\bt  option  at  `What
10321                  now?'  level, then later on, if no other draft composition was done, the
10322                  draft could be sent with simply
10323
10324                       sendf
10325
10326                  Or, if more editing was required, the draft could be edited with
10327
10328                       comp -use
10329
10330                  Instead, if other drafts had been composed in the meantime, so that this
10331                  message  draft  was no longer known as `cur' in the `draft' folder, then
10332                  the user could _\bs_\bc_\ba_\bn the folder to see which message draft in the  folder
10333                  should be used for editing or sending.  Clever users could even employ a
10334                  back-quoted _\bp_\bi_\bc_\bk to do the work:
10335
10336                       comp -use `pick +drafts -to bug-mh`
10337
10338                  or
10339
10340                       sendf `pick +drafts -to bug-mh`
10341
10342                  Note that in the _\bc_\bo_\bm_\bp example, the output from _\bp_\bi_\bc_\bk must  resolve  to  a
10343                  single  message  draft (it makes no sense to talk about composing two or
10344                  more drafts with one invocation of _\bc_\bo_\bm_\bp ).  In  contrast,  in  the  _\bs_\be_\bn_\bd
10345                  example,  as  many  message  drafts  as  desired  can appear, since _\bs_\be_\bn_\bd
10346                  doesn't mind sending more than one draft at a time.
10347
10348                       Note that the argument `-draftfolder +folder' is  not  included  in
10349                  the  profile  entry  for  _\bs_\be_\bn_\bd,  since  when  _\bc_\bo_\bm_\bp, et. al., invoke _\bs_\be_\bn_\bd
10350                  directly, they supply _\bs_\be_\bn_\bd with the UNIX pathname of the message  draft,
10351                  and  not  a `draftmessage msg' argument.  As far as _\bs_\be_\bn_\bd is concerned, a
10352                  _\bd_\br_\ba_\bf_\bt _\bf_\bo_\bl_\bd_\be_\br is not being used.
10353
10354                       It is important to realize that _\bM_\bH treats the draft folder  like  a
10355                  standard  _\bM_\bH  folder  in nearly all respects.  There are two exceptions:
10356
10357
10358
10359
10360
10361
10362
10363
10364
10365
10366
10367                                                   -157-
10368
10369
10370                  first\b\b\b\b\b_____, under no circumstancs will the `-draftfolder folder' switch cause
10371                  the named folder to become the current folder.[3] Second\b\b\b\b\b\b______, although  con-
10372                  ceptually _\bs_\be_\bn_\bd deletes the `msgs' named in the draft folder, it does not
10373                  call `delete-prog' to perform the deletion.
10374
10375
10376                  _\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
10377
10378                       When the _\bc_\bo_\bm_\bp, _\bd_\bi_\bs_\bt, _\bf_\bo_\br_\bw, and _\br_\be_\bp_\bl commands are  invoked  and  the
10379                  draft  you indicated already exists, these programs will prompt the user
10380                  for a reponse directing the program's action.  The prompt is
10381
10382                       Draft ``/usr/src/uci/mh/mhbox/draft'' exists (xx bytes).
10383                       Disposition?
10384
10385                  The appropriate responses and their meanings are: replace\b\b\b\b\b\b\b_______:  deletes  the
10386                  draft  and starts afresh; list\b\b\b\b____: lists the draft; refile\b\b\b\b\b\b______: files the draft
10387                  into a folder and starts afresh; and, quit\b\b\b\b____: leaves the draft intact  and
10388                  exits.   In addition, if you specified `-draftfolder folder' to the com-
10389                  mand, then one other response will be accepted: new\b\b\b___: finds a new  draft,
10390                  just  as  if `-draftmessage new' had been given.  Finally, the _\bc_\bo_\bm_\bp com-
10391                  mand will accept one more response: use\b\b\b___: re-uses the draft, just  as  if
10392                  `-use' had been given.
10393
10394
10395                  _\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
10396
10397                       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,
10398                  and  _\br_\be_\bp_\bl  commands,  directs the command to _\bs_\be_\bn_\bd the draft in a special
10399                  detached fashion, with all normal output discarded.  If _\bp_\bu_\bs_\bh is used and
10400                  the  draft  can not be sent, then _\bM_\bH will send the user a message, indi-
10401                  cating the name of the draft file, and an explanation of the failure.
10402
10403                       The user can also invoke _\bs_\be_\bn_\bd  from  the  shell  with  the  `-push'
10404                  switch, which makes _\bs_\be_\bn_\bd act like it had been _\bp_\bu_\bs_\bh 'd by one of the com-
10405                  position commands.
10406
10407                       By using _\bp_\bu_\bs_\bh, the user can free the  shell  to  do  other  things,
10408                  because  it appears to the shell that the _\bM_\bH command has finished.  As a
10409                  result the shell will immediately prompt for  another  command,  despite
10410                  the  fact  that  the  command is really still running.  Note that if the
10411                  user indicates that annotations are to be performed (with `-annotate' to
10412
10413
10414                     [3]  Obviously,  if  the folder appeared in the context of a standard
10415                  `+folder' argument to an _\bM_\bH program, as in
10416
10417                       scan +drafts
10418
10419                  it might become the current folder, depending on the context changes  of
10420                  the _\bM_\bH program in question.
10421
10422
10423
10424
10425
10426
10427
10428
10429
10430
10431
10432
10433                                                   -158-
10434
10435
10436                  _\bd_\bi_\bs_\bt, _\bf_\bo_\br_\bw, or _\br_\be_\bp_\bl), the annotations will be performed after  the  mes-
10437                  sage has been successfully sent.  This action will appear to occur asyn-
10438                  chronously.  Obviously, if one of the messages that is to  be  annotated
10439                  is  removed  before  the  draft has been successfully sent, then when _\bM_\bH
10440                  tries to make the annotations, it won't be able to do so.   In  previous
10441                  versions of _\bM_\bH, this resulted in an error message mysteriously appearing
10442                  on the user's terminal.  In _\bm_\bh._\b5 and later  versions,  in  this  special
10443                  circumstance, no error will be generated.
10444
10445                       If send is _\bp_\bu_\bs_\bh 'd, then the `-forward' switch  is  examined  if  a
10446                  failure notice is generated.  If given, then the draft is forwarded with
10447                  the failure notice sent to the user.  This allows  rapid  _\bb_\bu_\br_\bs_\bt 'ing  of
10448                  the failure notice to retrieve the unsent draft.
10449
10450
10451                  _\bO_\bp_\bt_\bi_\bo_\bn_\bs _\ba_\bt _\bW_\bh_\ba_\bt _\bn_\bo_\bw? _\bL_\be_\bv_\be_\bl
10452
10453                       By default, the message composition programs call a program  called
10454                  _\bw_\bh_\ba_\bt_\bn_\bo_\bw  before  the initial draft composition.  The _\bM_\bH user can specify
10455                  any program for this.  Following is some information about  the  default
10456                  "What  now?" level.  More detailed information can be found in the _\bw_\bh_\ba_\bt_\b-
10457                  _\bn_\bo_\bw (1) manual entry.
10458
10459                       When using the _\bc_\bo_\bm_\bp, _\bd_\bi_\bs_\bt, _\bf_\bo_\br_\bw, and _\br_\be_\bp_\bl commands at  "What  now?"
10460                  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-
10461                  mands) the _\bd_\bi_\bs_\bp_\bl_\ba_\by options will pass on any additional  arguments  given
10462                  them to whatever program they invoke.
10463
10464                       In _\bm_\bh._\b1 (the original RAND _\bM_\bH ) and _\bm_\bh._\b2 (the first UCI version  of
10465                  _\bM_\bH ),  _\bM_\bH  used a complicated heuristic to determine if the draft should
10466                  be deleted or preserved after an unsuccessful edit.   In  _\bm_\bh._\b3,  _\bM_\bH  was
10467                  changed to preserve the draft always, since _\bc_\bo_\bm_\bp, et. al., could usually
10468                  look at a draft, apply another set of heuristics, and decide if  it  was
10469                  important  or  not.   With the notion of a _\bd_\br_\ba_\bf_\bt _\bf_\bo_\bl_\bd_\be_\br, in which one by
10470                  default gets a `new' message draft, the edit deletion/preservation algo-
10471                  rithm  was re-implemented, to keep the draft folder from being cluttered
10472                  with aborted edits.
10473
10474                       Also, note that by default, if the  draft  cannot  be  successfully
10475                  sent,  these  commands  return  to "What now?" level.  But, when _\bp_\bu_\bs_\bh is
10476                  used, this does not happen (obviously).  Hence, if these  commands  were
10477                  expected  to  annotate  any messages, this will have to be done by hand,
10478                  later on, with the _\ba_\bn_\bn_\bo command.
10479
10480                       Finally, if the `-delete' switch is not given to the  _\bq_\bu_\bi_\bt  option,
10481                  then these commands will inform the user of the name of the unsent draft
10482                  file.
10483
10484
10485                  _\bD_\bi_\bg_\be_\bs_\bt_\bs
10486
10487
10488
10489
10490
10491
10492
10493
10494
10495
10496
10497
10498
10499                                                   -159-
10500
10501
10502                       The _\bf_\bo_\br_\bw command has the beginnings  of  a  digestifying  facility,
10503                  with the `-digest list', `-issue number', and `-volume number' switches.
10504
10505                  If _\bf_\bo_\br_\bw is given "list" to the `-digest' switch as the name of the  dis-
10506                  cussion  group,  and  the `-issue number' switch is not given, then _\bf_\bo_\br_\bw
10507                  looks for an entry in the user's _\bM_\bH context  called  "_\bd_\bi_\bg_\be_\bs_\bt-issue-list"
10508                  and  increments its value to use as the issue number.  Similarly, if the
10509                  `-volume number'  switch   is   not   given,   then   _\bf_\bo_\br_\bw   looks   for
10510                  "_\bd_\bi_\bg_\be_\bs_\bt-volume-list"  (but  does  not increment its value) to use as the
10511                  volume number.
10512
10513                  Having calculated the name of  the  digest  and  the  volume  and  issue
10514                  numbers, _\bf_\bo_\br_\bw will now process the components file using the same format
10515                  string mechanism used by _\br_\be_\bp_\bl.  The current `%'-escapes are:
10516
10517                  _\be_\bs_\bc_\ba_\bp_\be  _\bt_\by_\bp_\be     _\bs_\bu_\bb_\bs_\bt_\bi_\bt_\bu_\bt_\bi_\bo_\bn
10518                  digest  string   digest name
10519                  msg     integer  issue number
10520                  cur     integer  volume number
10521
10522                  In addition, to capture the current date, any of the escapes  valid  for
10523                  _\bd_\bp (8) are also valid for _\bf_\bo_\br_\bw.
10524
10525                  The default components file used by _\bf_\bo_\br_\bw when in digest mode is:
10526
10527                       From:     %{digest}-Request
10528                       To:       %{digest} Distribution: dist-%{digest};
10529                       Subject:  %{digest} Digest V%(cur) #%(msg)
10530                       Reply-To: %{digest}
10531                       --------
10532                       %{digest} Digest        %(weekday{date}), %2(mday{date}) %(month{date}) 19%02(year{date})
10533                                       Volume %(cur) : Issue %(msg)
10534
10535                       Today's Topics:
10536
10537                  Hence, when the `-digest' switch is present, the  first  step  taken  by
10538                  _\bf_\bo_\br_\bw  is  to  expand the format strings in the component file.  The next
10539                  step is to compose the draft using  the  standard  digest  encapsulation
10540                  algorithm  (even  putting an "End of list Digest" trailer in the draft).
10541                  Once the draft is composed by _\bf_\bo_\br_\bw, _\bf_\bo_\br_\bw writes out the volume and issue
10542                  profile entries for the digest, and then invokes the editor.
10543
10544                  Naturally,   when   composing   the   draft,   _\bf_\bo_\br_\bw   will   honor   the
10545                  `-filter filterfile'  switch,  which is given to _\bm_\bh_\bl to filter each mes-
10546                  sage being forwarded prior to encapsulation in the draft.  A good filter
10547                  file to use, which is called _\bm_\bh_\bl._\bd_\bi_\bg_\be_\bs_\bt, is:
10548
10549
10550
10551
10552
10553
10554
10555
10556
10557
10558
10559
10560
10561
10562
10563
10564
10565                                                   -160-
10566
10567
10568                       width=80,overflowoffset=10
10569                       leftadjust,compress,compwidth=9
10570                       Date:formatfield="%<(nodate{text})%{text}%|%(tws{text})%>"
10571                       From:
10572                       Subject:
10573                       :
10574                       body:nocomponent,overflowoffset=0,noleftadjust,nocompress
10575
10576
10577
10578                  _\bF_\bO_\bL_\bD_\bE_\bR _\bH_\bA_\bN_\bD_\bL_\bI_\bN_\bG
10579
10580                       There are two  interesting  facilities  for  manipulating  folders:
10581                  relative folder addressing, which allows a user to shorten the typing of
10582                  long folder names; and the folder-stack, which permits a user to keep  a
10583                  stack of current folders.
10584
10585
10586                  _\bR_\be_\bl_\ba_\bt_\bi_\bv_\be _\bF_\bo_\bl_\bd_\be_\br _\bA_\bd_\bd_\br_\be_\bs_\bs_\bi_\bn_\bg
10587
10588                       By default, when `+folder' is given, and the  folder  name  is  not
10589                  absolute  (does not start with /, ./, or ../), then the UNIX pathname of
10590                  the folder is interpreted relative to the user's _\bM_\bH directory.  Although
10591                  this  mechanism  works  fine  for  top-level folders and their immediate
10592                  sub-folders, once the depth of the sub-folder  tree  grows,  it  becomes
10593                  rather unwieldly:
10594
10595                       scan +mh/mh.4/draft/flames
10596
10597                  is a lot of typing.  _\bM_\bH can't do anything  if  the  current  folder  was
10598                  "+inbox", but if the current folder was, say, "+mh/mh.4/draft", _\bM_\bH has a
10599                  short-hand notation to reference a sub-folder  of  the  current  folder.
10600                  Using  the  `@folder'  notation,  the  _\bM_\bH user can direct any _\bM_\bH program
10601                  which expects a `+folder' argument to look for the  folder  relative  to
10602                  the  current  folder  instead of the user's _\bM_\bH directory.  Hence, if the
10603                  current folder _\bw_\ba_\bs "+mh/mh.4/draft", then
10604
10605                       scan @flames
10606
10607                  would do the trick handily.  In addition,  if  the  current  folder  _\bw_\ba_\bs
10608                  "+mh/mh.4/draft",
10609
10610                       scan @../pick
10611
10612                  would scan the folder "+mh/mh.4/pick", since, in the  UNIX  fashion,  it
10613                  references the folder "pick" which is a sub-folder of the folder that is
10614                  the parent of the current folder.  Since most advanced _\bM_\bH users seem  to
10615                  exhibit a large degree of locality in referencing folders when they pro-
10616                  cess mail, this convention should receive a wide range of uses.
10617
10618
10619
10620
10621
10622
10623
10624
10625
10626
10627
10628
10629
10630
10631                                                   -161-
10632
10633
10634                  _\bT_\bh_\be _\bF_\bo_\bl_\bd_\be_\br-_\bS_\bt_\ba_\bc_\bk
10635
10636                       The _\bf_\bo_\bl_\bd_\be_\br-_\bs_\bt_\ba_\bc_\bk mechanism in _\bM_\bH gives the _\bM_\bH user a facility simi-
10637                  lar to the _\bC_\bS_\bh_\be_\bl_\bl 's directory-stack.  Simply put,
10638
10639                       folder -push +foo
10640
10641                  makes "foo" the current folder, saving the folder  that  was  previously
10642                  the current folder on the _\bf_\bo_\bl_\bd_\be_\br-_\bs_\bt_\ba_\bc_\bk.  As expected,
10643
10644                       folder -pop
10645
10646                  takes the top of the _\bf_\bo_\bl_\bd_\be_\br-_\bs_\bt_\ba_\bc_\bk and makes it the current folder.  Each
10647                  of  these switches lists the _\bf_\bo_\bl_\bd_\be_\br-_\bs_\bt_\ba_\bc_\bk when they execute.  It is sim-
10648                  ple to write a _\bp_\bu_\bs_\bh_\bf command as a shell script.  It's one line:
10649
10650                       exec folder -push $@
10651
10652                  Probably a better way is to link  _\bf_\bo_\bl_\bd_\be_\br  to  the  $HOME/bin/  directory
10653                  under the name of _\bp_\bu_\bs_\bh_\bf and then add the entry
10654
10655                       pushf: -push
10656
10657                  to the .mh_profile.
10658
10659                       The manual page for _\bf_\bo_\bl_\bd_\be_\br discusses the analogy between the _\bC_\bS_\bh_\be_\bl_\bl
10660                  directory stack commands and the switches in _\bf_\bo_\bl_\bd_\be_\br which manipulate the
10661                  _\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:'
10662                  to keep track of the folders in the user's stack of folders.
10663
10664
10665
10666
10667
10668
10669
10670
10671
10672
10673
10674
10675
10676
10677
10678
10679
10680
10681
10682
10683
10684
10685
10686
10687
10688
10689
10690
10691
10692
10693
10694
10695
10696
10697
10698
10699
10700                                                 Appendix A
10701                                              _\bC_\bO_\bM_\bM_\bA_\bN_\bD _\bS_\bU_\bM_\bM_\bA_\bR_\bY
10702
10703
10704
10705
10706                  ali [-alias aliasfile] [-list] [-nolist] [-normalize]
10707                       [-nonormalize] [-user] [-nouser] aliases ...  [-help]
10708
10709                  anno [+folder] [msgs] [-component field] [-inplace] [-noinplace]
10710                       [-date] [-nodate] [-text body] [-help]
10711
10712                  bbc [bboards ...] [-topics] [-check] [-read] [-quiet] [-verbose]
10713                       [-archive] [-noarchive] [-protocol] [-noprotocol]
10714                       [-mshproc program] [switches for _\bm_\bs_\bh_\bp_\br_\bo_\bc] [-rcfile rcfile]
10715                       [-norcfile] [-file BBoardsfile] [-user BBoardsuser] [-help]
10716
10717                  burst [+folder] [msgs] [-inplace] [-noinplace] [-quiet] [-noquiet]
10718                       [-verbose] [-noverbose] [-help]
10719
10720                  comp [+folder] [msg] [-draftfolder +folder] [-draftmessage msg]
10721                       [-nodraftfolder] [-editor editor] [-noedit] [-file file]
10722                       [-form formfile] [-use] [-nouse] [-whatnowproc program]
10723                       [-nowhatnowproc] [-help]
10724
10725                  dist [+folder] [msg] [-annotate] [-noannotate]
10726                       [-draftfolder +folder] [-draftmessage msg] [-nodraftfolder]
10727                       [-editor editor] [-noedit] [-form formfile] [-inplace]
10728                       [-noinplace] [-whatnowproc program] [-nowhatnowproc] [-help]
10729
10730                  /usr/local/lib/mh/fmtdump [-form formatfile] [-format string]
10731                       [-help]
10732
10733                  folder [+folder] [msg] [-all] [-fast] [-nofast] [-header]
10734                       [-noheader] [-pack] [-nopack] [-recurse] [-norecurse] [-total]
10735                       [-nototal] [-print] [-noprint] [-list] [-nolist] [-push]
10736                       [-pop] [-help]
10737
10738                  folders
10739
10740                  forw [+folder] [msgs] [-annotate] [-noannotate]
10741                       [-draftfolder +folder] [-draftmessage msg] [-nodraftfolder]
10742                       [-editor editor] [-noedit] [-filter filterfile]
10743                       [-form formfile] [-format] [-noformat] [-inplace] [-noinplace]
10744                       [-whatnowproc program] [-nowhatnowproc] [-help]
10745
10746                  forw [+folder] [msgs] [-digest list] [-issue number]
10747                       [-volume number] [other switches for _\bf_\bo_\br_\bw] [-help]
10748
10749
10750
10751
10752
10753                                              -162-
10754
10755
10756
10757
10758
10759
10760
10761
10762
10763
10764
10765
10766                  inc [+folder] [-audit audit-file] [-noaudit] [-changecur]
10767                       [-nochangecur] [-file name] [-form formatfile]
10768                       [-format string] [-silent] [-nosilent] [-truncate]
10769                       [-notruncate] [-width columns] [-help]
10770
10771                  mark [+folder] [msgs] [-sequence name ...] [-add] [-delete] [-list]
10772                       [-public] [-nopublic] [-zero] [-nozero] [-help]
10773
10774                  /usr/local/lib/mh/mhl [-bell] [-nobell] [-clear] [-noclear]
10775                       [-folder +folder] [-form formfile] [-length lines]
10776                       [-width columns] [-moreproc program] [-nomoreproc] [files ...]
10777                       [-help]
10778
10779                  mhmail [ addrs ... [-body text] [-cc addrs ...] [-from addr]
10780                       [-subject subject]] [-help]
10781
10782                  mhparam [profile-components] [-components] [-nocomponents] [-all]
10783                       [-help]
10784
10785                  mhpath [+folder] [msgs] [-help]
10786
10787                  msgchk [-date] [-nodate] [-notify all/mail/nomail]
10788                       [-nonotify all/mail/nomail] [users ...] [-help]
10789
10790                  msh [-prompt string] [-scan] [-noscan] [-topcur] [-notopcur] [file]
10791                       [-help]
10792
10793                  next [+folder] [-header] [-noheader] [-showproc program]
10794                       [-noshowproc] [switches for _\bs_\bh_\bo_\bw_\bp_\br_\bo_\bc] [-help]
10795
10796                  packf [+folder] [msgs] [-file name] [-help]
10797
10798                  pick [+folder] [msgs] [-and ...] [-or ...] [-not ...]
10799                       [-lbrace ... -rbrace] [--component pattern] [-after date]
10800                       [-before date] [-datefield field] [-sequence name ...]
10801                       [-public] [-nopublic] [-zero] [-nozero] [-list] [-nolist]
10802                       [-help]
10803
10804
10805                  prev [+folder] [-header] [-noheader] [-showproc program]
10806                       [-noshowproc] [switches for _\bs_\bh_\bo_\bw_\bp_\br_\bo_\bc] [-help]
10807
10808                  prompter [-erase chr] [-kill chr] [-prepend] [-noprepend] [-rapid]
10809                       [-norapid] [-doteof] [-nodoteof] file [-help]
10810
10811                  /usr/local/lib/mh/rcvstore [+folder] [-create] [-nocreate]
10812                       [-sequence name ...] [-public] [-nopublic] [-zero] [-nozero]
10813                       [-help]
10814
10815
10816
10817
10818
10819                                              -163-
10820
10821
10822
10823
10824
10825
10826
10827
10828
10829
10830
10831
10832                  refile [msgs] [-draft] [-link] [-nolink] [-preserve] [-nopreserve]
10833                       [-src +folder] [-file file] +folder ...  [-help]
10834
10835                  repl [+folder] [msg] [-annotate] [-noannotate] [-cc all/to/cc/me]
10836                       [-nocc all/to/cc/me] [-draftfolder +folder]
10837                       [-draftmessage msg] [-nodraftfolder] [-editor editor]
10838                       [-noedit] [-fcc +folder] [-filter filterfile] [-form formfile]
10839                       [-inplace] [-noinplace] [-query] [-noquery]
10840                       [-whatnowproc program] [-nowhatnowproc] [-width columns]
10841                       [-help]
10842
10843                  rmf [+folder] [-interactive] [-nointeractive] [-help]
10844
10845                  rmm [+folder] [msgs] [-help]
10846
10847                  scan [+folder] [msgs] [-clear] [-noclear] [-form formatfile]
10848                       [-format string] [-header] [-noheader] [-width columns]
10849                       [-reverse] [-noreverse] [-file filename] [-help]
10850
10851                  send [-alias aliasfile] [-draft] [-draftfolder +folder]
10852                       [-draftmessage msg] [-nodraftfolder] [-filter filterfile]
10853                       [-nofilter] [-format] [-noformat] [-forward] [-noforward]
10854                       [-msgid] [-nomsgid] [-push] [-nopush] [-verbose] [-noverbose]
10855                       [-watch] [-nowatch] [-width columns] [file ...] [-help]
10856
10857                  show [+folder] [msgs] [-draft] [-header] [-noheader]
10858                       [-showproc program] [-noshowproc] [switches for _\bs_\bh_\bo_\bw_\bp_\br_\bo_\bc]
10859                       [-help]
10860
10861                  sortm [+folder] [msgs] [-datefield field] [-textfield field]
10862                       [-notextfield] [-limit days] [-nolimit] [-verbose]
10863                       [-noverbose] [-help]
10864
10865                  vmh [-prompt string] [-vmhproc program] [-novmhproc]
10866                       [switches for _\bv_\bm_\bh_\bp_\br_\bo_\bc] [-help]
10867
10868                  whatnow [-draftfolder +folder] [-draftmessage msg] [-nodraftfolder]
10869                       [-editor editor] [-noedit] [-prompt string] [file] [-help]
10870
10871                  whom [-alias aliasfile] [-check] [-nocheck] [-draft]
10872                       [-draftfolder +folder] [-draftmessage msg] [-nodraftfolder]
10873                       [file] [-help]
10874
10875                  /usr/local/lib/mh/ap [-form formatfile] [-format string]
10876                       [-normalize] [-nonormalize] [-width columns] addrs ...
10877                       [-help]
10878
10879                  /usr/local/lib/mh/conflict [-mail name] [-search directory]
10880                       [aliasfiles ...] [-help]
10881
10882
10883
10884
10885                                              -164-
10886
10887
10888
10889
10890
10891
10892
10893
10894
10895
10896
10897
10898                  /usr/local/lib/mh/dp [-form formatfile] [-format string]
10899                       [-width columns] dates ...  [-help]
10900
10901                  /usr/local/lib/mh/install-mh [-auto] [-compat]
10902
10903                  /usr/local/lib/mh/post [-alias aliasfile] [-filter filterfile]
10904                       [-nofilter] [-format] [-noformat] [-msgid] [-nomsgid]
10905                       [-verbose] [-noverbose] [-watch] [-nowatch] [-width columns]
10906                       file [-help]
10907
10908                  /usr/local/lib/mh/slocal [address info sender] [-addr address]
10909                       [-info data] [-sender sender] [-user username] [-mailbox mbox]
10910                       [-file file] [-maildelivery deliveryfile] [-verbose]
10911                       [-noverbose] [-debug] [-help]
10912
10913
10914
10915
10916
10917
10918
10919
10920
10921
10922
10923
10924
10925
10926
10927
10928
10929
10930
10931
10932
10933
10934
10935
10936
10937
10938
10939
10940
10941
10942
10943
10944
10945
10946
10947
10948
10949
10950
10951                                                   -165-
10952
10953
10954
10955
10956
10957
10958
10959
10960
10961
10962
10963
10964                                                 Appendix B
10965                                              _\bM_\bE_\bS_\bS_\bA_\bG_\bE _\bN_\bA_\bM_\bE _\bB_\bN_\bF
10966
10967
10968
10969
10970
10971                            msgs                  :=  msgspec                |
10972                                                      msgs msgspec
10973
10974                            msgspec               :=  msg                    |
10975                                                      msg-range              |
10976                                                      msg-sequence           |
10977                                                      user-defined-sequence
10978
10979                            msg                   :=  msg-name               |
10980                                                      <number>
10981
10982                            msg-name              :=  "first"                |
10983                                                      "last"                 |
10984                                                      "cur"                  |
10985                                                      "."                    |
10986                                                      "next"                 |
10987                                                      "prev"
10988
10989                            msg-range             :=  msg"-"msg              |
10990                                                      "all"
10991
10992                            msg-sequence          :=  msg":"signed-number
10993
10994                            signed-number         :=  "+"<number>            |
10995                                                      "-"<number>            |
10996                                                      <number>
10997
10998                            user-defined-sequence :=  <alpha>                |
10999                                                      <alpha><alphanumeric>*
11000
11001
11002                  Where <number> is a decimal number greater than zero.
11003
11004                  Msg-range specifies all of the messages in the given range and must  not
11005                  be empty.
11006
11007                  Msg-sequence specifies up to <number> of messages, beginning with  "msg"
11008                  (in the case of first, cur, next, or <number>), or ending with "msg" (in
11009                  the case of prev or last).  +<number> forces "starting  with  msg",  and
11010                  -<number> forces "ending with number".  In all cases, "msg" must exist.
11011
11012                  User-defined sequences are defined and manipulated  with  the  _\bp_\bi_\bc_\bk  and
11013                  _\bm_\ba_\br_\bk commands.
11014
11015
11016
11017                                                   -166-
11018
11019
11020
11021
11022
11023
11024
11025
11026
11027
11028
11029
11030                                                 _\bR_\bE_\bF_\bE_\bR_\bE_\bN_\bC_\bE_\bS
11031
11032
11033
11034                  1.  Crocker, D. H., J. J. Vittal, K. T. Pogran,  and  D.  A.  Henderson,
11035                      Jr.,  "Standard  for  the  Format  of  ARPA  Network Text Messages,"
11036                      _\bR_\bF_\bC_\b7_\b3_\b3, November 1977.
11037
11038                  2.  Thompson, K., and D. M. Ritchie,  "The  UNIX  Time-sharing  System,"
11039                      _\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.
11040
11041                  3.  McCauley, E. J., and P. J. Drongowski, "KSOS-The Design of a  Secure
11042                      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
11043                      Conference, Vol. 48, 1979, pp. 345-353.
11044
11045                  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-
11046                      _\bs_\ba_\bg_\be _\bS_\by_\bs_\bt_\be_\bm, The RAND Corporation, R-2134-ARPA, December 1977.
11047
11048                  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.,
11049                      Western  Electric  Company,  May 1975 (available only to UNIX licen-
11050                      sees).
11051
11052                  6. Crocker, D. H., "Standard for the Format of ARPA Internet  Text  Mes-
11053                      sages," _\bR_\bF_\bC_\b8_\b2_\b2, August 1982.
11054
11055
11056
11057
11058
11059
11060
11061
11062
11063
11064
11065
11066
11067
11068
11069
11070
11071
11072
11073
11074
11075
11076
11077
11078
11079
11080
11081
11082
11083                                                   -167-
11084
11085
11086
11087
11088
11089
11090
11091
11092
11093
11094
11095
11096
11097
11098
11099
11100
11101
11102
11103
11104
11105
11106
11107
11108
11109
11110
11111
11112
11113
11114
11115
11116
11117
11118
11119
11120
11121
11122
11123
11124
11125
11126
11127
11128
11129
11130
11131
11132
11133
11134
11135
11136
11137
11138
11139
11140
11141
11142
11143
11144
11145
11146
11147
11148
11149                                                    -i-
11150
11151
11152
11153
11154
11155
11156
11157
11158
11159
11160
11161
11162                                                 _\bR_\bE_\bA_\bD _\bT_\bH_\bI_\bS
11163
11164
11165
11166
11167                       Although the _\bM_\bH system was originally developed by  the  RAND  Cor-
11168                  poration,  and is now in the public domain, the RAND Corporation assumes
11169                  no responsibility for _\bM_\bH or this particular version of _\bM_\bH.
11170
11171                       In addition, the Regents of the University of California issue  the
11172                  following disclaimer in regard to the UCI version of _\bM_\bH:
11173
11174                       "Although each program has been tested by its contributor, no  war-
11175                       ranty,  express  or  implied,  is  made  by  the contributor or the
11176                       University of California, as to the accuracy and functioning of the
11177                       program and related program material, nor shall the fact of distri-
11178                       bution constitute any  such  warranty,  and  no  responsibility  is
11179                       assumed  by the contributor or the University of California in con-
11180                       nection herewith."
11181
11182                       This version of _\bM_\bH is in the public domain, and as such, there  are
11183                  no  real  restrictions on its use.  The _\bM_\bH source code and documentation
11184                  have no licensing restrictions whatsoever.  As a courtesy,  the  authors
11185                  ask only that you provide appropriate credit to the RAND Corporation and
11186                  the University of California for having developed the software.
11187
11188                       _\bM_\bH is a software package that is supported neither by the RAND Cor-
11189                  poration nor the University of California.  However, since we do use the
11190                  software ourselves and plan to continue using (and  improving)  _\bM_\bH,  bug
11191                  reports and their associated fixes should be reported back to us so that
11192                  we may include them in future releases.  The  current  computer  mailbox
11193                  for   _\bM_\bH   is   Bug-MH@ICS.UCI.EDU   (in   the   ARPA   Internet),   and
11194                  ...!ucbvax!ucivax!bug-mh (UUCP).  Presently, there are two Internet dis-
11195                  cussion   groups,   MH-Users@ICS.UCI.EDU   and   MH-Workers@ICS.UCI.EDU.
11196                  MH-Workers is for people discussing code changes to _\bM_\bH.  MH-Users is for
11197                  general  discussion  about  how to use _\bM_\bH.  MH-Users is bi-directionally
11198                  gatewayed into USENET as comp.mail.mh.
11199
11200                  _\bH_\bO_\bW _\bT_\bO _\bG_\bE_\bT _\bM_\bH
11201
11202                       Since you probably already have _\bM_\bH, you may not need to  read  this
11203                  unless  you  suspect you have an old version.  There are two ways to get
11204                  the latest release:
11205
11206                       1.  If you can FTP to the  ARPA  Internet,  use  anonymous  FTP  to
11207                  ics.uci.edu  [128.195.1.1]  and  retrieve  the file pub/mh/mh-6.8.tar.Z.
11208                  This is a tar  image  after  being  run  through  the  compress  program
11209                  (approximately  1.8MB).   There  should  also  be  a README file in that
11210                  directory which tells what the current release of _\bM_\bH is, and how to  get
11211                  updates.
11212
11213
11214
11215                                                    -i-
11216
11217
11218
11219
11220
11221
11222
11223
11224
11225                                                    -ii-
11226
11227
11228                       This tar file is also available on louie.udel.edu [128.175.1.3]  in
11229                  portal/mh-6.8.tar.Z.   You  may  also find MH on various other hosts; to
11230                  make sure you get the latest version and don't waste your time re-fixing
11231                  bugs, it's best to get it from either ics.uci.edu or louie.udel.edu.
11232
11233                       2.  You can send $75 US to the address below.  This covers the cost
11234                  of  a  6250  BPI  9-track magtape, handling, and shipping.  In addition,
11235                  you'll get a laser-printed hard-copy of the entire MH documentation set.
11236                  Be  sure  to  include your USPS address with your check.  Checks must be
11237                  drawn on U.S. funds and should be made payable to:
11238
11239                            Regents of the University of California
11240
11241                  The distribution address is:
11242
11243                            Computing Support Group
11244                            Attn: MH distribution
11245                            Department of Information and Computer Science
11246                            University of California, Irvine
11247                            Irvine, CA  92717
11248
11249                            714/856-7554
11250
11251                       If you just want the hard-copies of the  documentation,  you  still
11252                  have  to  pay  the $75.  The tar image has the documentation source (the
11253                  manual is in roff format, but the rest are in TeX  format).   Postscript
11254                  formatted  versions  of  the TeX papers are available, as are crude tty-
11255                  conversions of those papers.
11256
11257
11258
11259
11260
11261
11262
11263
11264
11265
11266
11267
11268
11269
11270
11271
11272
11273
11274
11275
11276
11277
11278
11279
11280
11281
11282
11283
11284
11285
11286
11287
11288
11289
11290
11291
11292
11293
11294                                                  _\bF_\bO_\bR_\bE_\bW_\bO_\bR_\bD
11295
11296
11297
11298
11299                       This document describes the RAND _\bM_\bH Message Handling  System.   Its
11300                  primary  purpose  is  to  serve as a user's manual.  It has been heavily
11301                  based on a previous version of the manual,  prepared  by  Bruce  Borden,
11302                  Stockton Gaines, and Norman Shapiro.
11303
11304                       _\bM_\bH is a particularly novel system, and thus it is often more  prone
11305                  to  change  than  other  pieces  of  production software.  As such, some
11306                  specific points in this manual may not be correct in the future.  In all
11307                  cases,  the  on-line  sections  of  this  manual,  available through the
11308                  UNIX[1] _\bm_\ba_\bn command, should present the most current information.
11309
11310                       When reading this document as a user's manual, certain sections are
11311                  more  interesting than others.  The Preface and Summary are not particu-
11312                  larly interesting to those interested in learning _\bM_\bH.  The  Introduction
11313                  is slightly more interesting, as it touches upon the organization of the
11314                  remainder of this document.  The most useful sections are the  Overview,
11315                  Tutorial,  and Detailed Description.  The Overview should be read by all
11316                  _\bM_\bH users, regardless of their expertise (beginning, novice, advanced, or
11317                  hacker).   The  Tutorial  should  be read by all beginning and novice _\bM_\bH
11318                  users, as it presents a nice description of the _\bM_\bH system.  The Detailed
11319                  Description  should  be  read by the day-to-day user of _\bM_\bH, as it spells
11320                  out all of the realities of the _\bM_\bH system.  The Advanced  Features  sec-
11321                  tion discusses some powerful _\bM_\bH capabilities for advanced users.  Appen-
11322                  dix A is particularly useful for novices, as it summarizes  the  invoca-
11323                  tion syntax of all the _\bM_\bH commands.
11324
11325                       There are also several other documents which may be useful to  you:
11326                  _\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
11327                  _\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
11328                  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-
11329                  _\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
11330                  the  1985  Summer  Usenix Conference and Exhibition in Portland, Oregon;
11331                  _\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
11332                  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
11333                  _\bS_\by_\bs_\bt_\be_\bm_\bs, which was presented at the  First  International  Symposium  on
11334                  Computer  Message  Systems  in  Nottingham, U.K.; and, _\bD_\be_\bs_\bi_\bg_\bn _\bo_\bf _\bt_\bh_\be _\bT_\bT_\bI
11335                  _\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"
11336                  mail  system  built on _\bM_\bH.  There are also documents, mostly specific to
11337                  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
11338                  _\bM_\bM _\bU_\bs_\be_\br_\bs.  All of these documents exist in the _\bm_\bh._\b6 distribution sent to
11339                  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-
11340                  _\bd_\bl_\bi_\bn_\bg  _\bS_\by_\bs_\bt_\be_\bm:  _\bM_\bH._\b6,  which  describes  user-visible changes made to _\bM_\bH
11341                  since the last major release.
11342
11343
11344                     [1] UNIX is a trademark of AT&T Bell Laboratories.
11345
11346
11347                                                   -iii-
11348
11349
11350
11351
11352
11353
11354
11355
11356
11357                                                    -iv-
11358
11359
11360                       This manual is very large, as it describes a large, powerful system
11361                  in gruesome detail.  The important thing to remember is:
11362
11363
11364                                               _\bD_\bO_\bN'_\bT _\bP_\bA_\bN_\bI_\bC[_\b2]
11365
11366
11367                  As explained in the tutorial, you really need to know only 5 commands to
11368                  handle most of your mail.
11369
11370                       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-
11371                  _\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
11372                  distribution sent to your site.
11373
11374
11375
11376
11377
11378
11379
11380
11381
11382
11383
11384
11385
11386
11387
11388
11389
11390
11391
11392
11393
11394
11395
11396
11397
11398
11399
11400
11401
11402
11403
11404
11405
11406
11407
11408
11409
11410                     [2] Note the large, _\bf_\br_\bi_\be_\bn_\bd_\bl_\by letters.
11411
11412
11413
11414
11415
11416
11417
11418
11419
11420
11421
11422
11423
11424
11425
11426                                              _\bA_\bC_\bK_\bN_\bO_\bW_\bL_\bE_\bD_\bG_\bM_\bE_\bN_\bT_\bS
11427
11428
11429
11430
11431                       The _\bM_\bH system described herein is based on  the  original  RAND  _\bM_\bH
11432                  system.   It  has  been  extensively  developed (perhaps too much so) by
11433                  Marshall T. Rose and John L. Romine at  the  University  of  California,
11434                  Irvine.  Einar A. Stefferud, Jerry N. Sweet, and Terry P. Domae provided
11435                  numerous suggestions to improve the UCI version of  _\bM_\bH.   Of  course,  a
11436                  large  number  of  people have helped _\bM_\bH along.  The list of ``_\bM_\bH immor-
11437                  tals'' is too long to list here.  However, Van Jacobson deserves a  spe-
11438                  cial  acknowledgement for his tireless work in improving the performance
11439                  of _\bM_\bH.  Some programs have been speeded-up by a factor of 10 or 20.  All
11440                  of  users  of  _\bM_\bH,  everywhere,  owe  a special thanks to Van.  For this
11441                  release, numerous _\bM_\bH-_\bW_\bo_\br_\bk_\be_\br_\bs sent in fixes and other changes.  A handful
11442                  of  courageous  _\bM_\bH-_\bW_\bo_\br_\bk_\be_\br_\bs volunteered to beta-test these changes; their
11443                  help is particularly appreciated.
11444
11445                       This manual is based on the original _\bM_\bH manual written at  RAND  by
11446                  Bruce Borden, Stockton Gaines, and Norman Shapiro.
11447
11448
11449
11450
11451
11452
11453
11454
11455
11456
11457
11458
11459
11460
11461
11462
11463
11464
11465
11466
11467
11468
11469
11470
11471
11472
11473
11474
11475
11476
11477
11478
11479                                                    -v-
11480
11481
11482
11483
11484
11485
11486
11487
11488
11489
11490
11491
11492                                                  _\bP_\bR_\bE_\bF_\bA_\bC_\bE
11493
11494
11495
11496
11497                       This report describes a system for dealing with messages  transmit-
11498                  ted  on  a  computer.  Such messages might originate with other users of
11499                  the same computer or might come from an outside source through a network
11500                  to  which the user's computer is connected.  Such computer-based message
11501                  systems are becoming increasingly widely used, both within  and  outside
11502                  the Department of Defense.
11503
11504                       The message handling system _\bM_\bH was developed for two reasons.   One
11505                  was  to  investigate some research ideas concerning how a message system
11506                  might take advantage  of  the  architecture  of  the  UNIX  time-sharing
11507                  operating  system  for Digital Equipment Corporation PDP-11 and VAX com-
11508                  puters, and the special features of UNIX's command-level interface  with
11509                  the  user  (the  "shell").  The other reason was to provide a better and
11510                  more adaptable base than that of conventional designs on which to  build
11511                  a  command and control message system.  The effort has succeeded in both
11512                  regards, although this report mainly describes the message system itself
11513                  and how it fits in with UNIX.
11514
11515                       The present report  should  be  of  interest  to  three  groups  of
11516                  readers.   First, it is a complete reference manual for the users of _\bM_\bH.
11517                  Second, it should be of interest to those who have a  general  knowledge
11518                  of  computer-based message systems, both in civilian and military appli-
11519                  cations.  Finally, it should be of interest to  those  who  build  large
11520                  subsystems  that  interface  with  users,  since  it  illustrates  a new
11521                  approach to such interfaces.
11522
11523                       The original _\bM_\bH system was developed  by  Bruce  Borden,  using  an
11524                  approach  suggested  by  Stockton  Gaines  and Norman Shapiro.  Valuable
11525                  assistance was provided by Phyllis Kantar in the  later  stages  of  the
11526                  system's  implementation.   Several  colleagues contributed to the ideas
11527                  included in this system, particularly Robert Anderson and David Crocker.
11528                  In  addition,  valuable  experience  in  message systems, and a valuable
11529                  source of ideas, was available to us in the form of a  previous  message
11530                  system for UNIX called MS, designed at RAND by David Crocker.
11531
11532                       This report was originally prepared as part  of  the  RAND  project
11533                  entitled "Data Automation Research", sponsored by Project AIR FORCE.
11534
11535
11536
11537
11538
11539
11540
11541
11542
11543
11544
11545                                                    -vi-
11546
11547
11548
11549
11550
11551
11552
11553
11554
11555
11556
11557
11558                                                  _\bS_\bU_\bM_\bM_\bA_\bR_\bY
11559
11560
11561
11562
11563                       Electronic communication of text messages is becoming  commonplace.
11564                  Computer-based  message systems-software packages that provide tools for
11565                  dealing with messages-are used in many contexts.  In particular, message
11566                  systems  are  becoming increasingly important in command and control and
11567                  intelligence applications.
11568
11569                       This report describes a message handling system  called  _\bM_\bH.   This
11570                  system  provides  the  user with tools to compose, send, receive, store,
11571                  retrieve, forward, and reply to messages.  _\bM_\bH has been built on the UNIX
11572                  time-sharing  system,  a  popular operating system developed for the DEC
11573                  PDP-11 and VAX classes of computers.
11574
11575                       A complete description of _\bM_\bH is given for users of the system.  For
11576                  those who do not intend to use the system, this description gives a gen-
11577                  eral idea of what a message system is like.  The  system  involves  some
11578                  new ideas about how large subsystems can be constructed.
11579
11580                       The interesting and unusual features of _\bM_\bH include  the  following:
11581                  The  user command interface to _\bM_\bH is the UNIX "shell" (the standard UNIX
11582                  command interpreter).  Each separable  component  of  message  handling,
11583                  such  as  message composition or message display, is a separate command.
11584                  Each program is driven from and  updates  a  private  user  environment,
11585                  which  is  stored  as  a file between program invocations.  This private
11586                  environment also contains information  to  "custom  tailor"  _\bM_\bH  to  the
11587                  individual's  tastes.   _\bM_\bH  stores each message as a separate file under
11588                  UNIX, and it utilizes the tree-structured UNIX file system  to  organize
11589                  groups  of  files  within separate directories or "folders".  All of the
11590                  UNIX facilities for dealing with files and directories, such  as  renam-
11591                  ing,  copying, deleting, cataloging, off-line printing, etc., are appli-
11592                  cable to messages and directories of messages (folders).   Thus,  impor-
11593                  tant capabilities needed in a message system are available in _\bM_\bH without
11594                  the need (often seen in other message systems) for code that  duplicates
11595                  the facilities of the supporting operating system.  It also allows users
11596                  familiar with the shell to use _\bM_\bH with minimal effort.
11597
11598
11599
11600
11601
11602
11603
11604
11605
11606
11607
11608
11609
11610
11611                                                   -vii-
11612
11613
11614
11615
11616
11617
11618
11619
11620
11621
11622
11623
11624                                                  _\bC_\bO_\bN_\bT_\bE_\bN_\bT_\bS
11625
11626
11627
11628
11629                  READ THIS .........................................................    i
11630
11631                  FOREWORD ..........................................................  iii
11632
11633                  ACKNOWLEDGMENTS ...................................................    v
11634
11635                  PREFACE ...........................................................   vi
11636
11637                  SUMMARY ...........................................................  vii
11638
11639                  Section
11640
11641                     1.  INTRODUCTION ...............................................    1
11642
11643                     2.  OVERVIEW ...................................................    4
11644
11645                     3.  TUTORIAL ...................................................    7
11646
11647                     4.  DETAILED DESCRIPTION .......................................   10
11648                       THE USER PROFILE .............................................   10
11649                       MESSAGE NAMING ...............................................   13
11650                       OTHER MH CONVENTIONS .........................................   14
11651                       MH COMMANDS ..................................................   16
11652                          ALI .......................................................   17
11653                          ANNO ......................................................   19
11654                          BBC .......................................................   21
11655                          BBOARDS ...................................................   24
11656                          BURST .....................................................   26
11657                          COMP ......................................................   28
11658                          DIST ......................................................   30
11659                          FOLDER ....................................................   33
11660                          FORW ......................................................   37
11661                          INC .......................................................   41
11662                          MARK ......................................................   44
11663                          MHL .......................................................   46
11664                          MHMAIL ....................................................   51
11665                          MHOOK .....................................................   53
11666                          MHPARAM ...................................................   55
11667                          MHPATH ....................................................   57
11668                          MSGCHK ....................................................   60
11669                          MSH .......................................................   61
11670                          NEXT ......................................................   65
11671                          PACKF .....................................................   66
11672                          PICK ......................................................   67
11673                          PREV ......................................................   72
11674                          PROMPTER ..................................................   73
11675                          RCVSTORE ..................................................   76
11676
11677
11678
11679
11680
11681
11682
11683
11684
11685
11686
11687
11688
11689
11690                          REFILE ....................................................   78
11691                          REPL ......................................................   80
11692                          RMF .......................................................   84
11693                          RMM .......................................................   86
11694                          SCAN ......................................................   88
11695                          SEND ......................................................   91
11696                          SHOW ......................................................   94
11697                          SLOCAL ....................................................   97
11698                          SORTM .....................................................  102
11699                          VMH .......................................................  104
11700                          WHATNOW ...................................................  106
11701                          WHOM ......................................................  108
11702                       MORE DETAILS .................................................  110
11703                          MH-ALIAS ..................................................  111
11704                          MH-FORMAT .................................................  115
11705                          MH-MAIL ...................................................  124
11706                          MH-PROFILE ................................................  128
11707                          MH-SEQUENCE ...............................................  136
11708                          AP ........................................................  140
11709                          CONFLICT ..................................................  142
11710                          DP ........................................................  144
11711                          FMTDUMP ...................................................  146
11712                          INSTALL-MH ................................................  147
11713                          POST ......................................................  148
11714
11715                     5.  REPORTING PROBLEMS .........................................  150
11716
11717                     6.  ADVANCED FEATURES ..........................................  151
11718                       USER-DEFINED SEQUENCES .......................................  151
11719                          Pick and User-Defined Sequences ...........................  151
11720                          Mark and User-Defined Sequences ...........................  153
11721                          Public and Private User-Defined Sequences .................  153
11722                          Sequence Negation .........................................  153
11723                          The Previous Sequence .....................................  154
11724                          The Unseen Sequence .......................................  154
11725                       COMPOSITION OF MAIL ..........................................  155
11726                          The Draft Folder ..........................................  155
11727                          What Happens if the Draft Exists ..........................  157
11728                          The Push Option at What now? Level ........................  157
11729                          Options at What now? Level ................................  158
11730                          Digests ...................................................  159
11731                       FOLDER HANDLING ..............................................  160
11732                          Relative Folder Addressing ................................  160
11733                          The Folder-Stack ..........................................  161
11734
11735                  Appendix
11736                     A.  Command Summary ............................................  162
11737                     B.  Message Name BNF ...........................................  166
11738
11739                  REFERENCES ........................................................  167
11740
11741
11742
11743
11744
11745
11746
11747
11748
11749
11750
11751
11752
11753
11754
11755
11756
11757
11758
11759
11760
11761
11762
11763
11764
11765
11766
11767
11768                                          THE RAND MH
11769
11770
11771                                       MESSAGE HANDLING
11772
11773
11774                                            SYSTEM:
11775
11776
11777                                         USER'S MANUAL
11778
11779
11780
11781
11782
11783
11784                                          UCI Version
11785
11786
11787
11788
11789
11790                                       Marshall T. Rose
11791
11792                                        John L. Romine
11793
11794
11795
11796
11797                                Based on the original manual by
11798
11799                                  Borden, Gaines, and Shapiro
11800
11801
11802
11803
11804
11805
11806
11807                                       November 30, 1993
11808
11809
11810
11811
11812
11813
11814
11815
11816
11817
11818
11819
11820
11821
11822
11823                                         6.8.3 #1[UCI]
11824
11825
11826
11827
11828
11829
11830
11831
11832
11833
11834
11835
11836
11837
11838
11839
11840
11841
11842
11843
11844
11845
11846
11847
11848
11849
11850
11851
11852
11853
11854
11855
11856
11857
11858
11859
11860
11861
11862
11863
11864
11865
11866
11867
11868
11869
11870
11871
11872
11873
11874
11875
11876
11877
11878
11879
11880