]> diplodocus.org Git - nmh/blob - docs/historical/MH-19910201.txt
Fix a segfault that happens when using the -file option.
[nmh] / docs / historical / MH-19910201.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 February 1, 1991
22 6.7.1a #6[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 \e9\e9
61
62
63
64
65
66
67
68
69
70
71
72
73 _\b1. _\bI_\bN_\bT_\bR_\bO_\bD_\bU_\bC_\bT_\bI_\bO_\bN
74
75
76
77 \e9
78 Although people can travel cross-country in hours and can reach
79 others by telephone in seconds, communications still depend heavily upon
80 paper, most of which is distributed through the mails.
81
82 There are several major reasons for this continued dependence on
83 written documents. First, a written document may be proofread and
84 corrected prior to its distribution, giving the author complete control
85 over his words. Thus, a written document is better than a telephone
86 conversation in this respect. Second, a carefully written document is
87 far less likely to be misinterpreted or poorly translated than a phone
88 conversation. Third, a signature offers reasonable verification of
89 authorship, which cannot be provided with media such as telegrams.
90
91 However, the need for fast\b\b\b\b____, accurate, and reproducible document
92 distribution is obvious. One solution in widespread use is the telefax.
93 Another that is rapidly gaining popularity is electronic mail. Elec-
94 tronic mail is similar to telefax in that the data to be sent are digi-
95 tized, transmitted via phone lines, and turned back into a document at
96 the receiver. The advantage of electronic mail is in its compression
97 factor. Whereas a telefax must scan a page in very fine lines and send
98 all of the black and white information, electronic mail assigns charac-
99 ters fixed codes which can be transmitted as a few bits of information.
100 Telefax presently has the advantage of being able to transmit an arbi-
101 trary page, including pictures, but electronic mail is beginning to deal
102 with this problem. Electronic mail also integrates well with current
103 directions in office automation, allowing documents prepared with
104 sophisticated equipment at one site to be quickly transferred and
105 printed at another site.
106
107 Currently, most electronic mail is intraorganizational, with mail
108 transfer remaining within one computer. As computer networking becomes
109 more common, however, it is becoming more feasible to communicate with
110 anyone whose computer can be linked to your own via a network.
111
112 The pioneering efforts on general-purpose electronic mail were by
113 organizations using the DoD ARPAnet[1]. The capability to send messages
114 between computers existed before the ARPAnet was developed, but it was
115 used only in limited ways. With the advent of the ARPAnet, tools began
116 to be developed which made it convenient for individuals or organiza-
117 tions to distribute messages over broad geographic areas, using diverse
118 computer facilities. The interest and activity in message systems has
119 now reached such proportions that steps have been taken within the DoD
120 to coordinate and unify the development of military message systems.
121 The use of electronic mail is expected to increase dramatically in the
122 next few years. The utility of such systems in the command and control
123 and intelligence environments is clear, and applications in these areas
124
125 \e9
126
127
128
129
130
131
132
133
134
135 -2-
136
137
138 will probably lead the way. As the costs for sending and handling elec-
139 tronic messages continue their rapid decrease, such uses can be expected
140 to spread rapidly into other areas and, of course, will not be limited
141 to the DoD.
142
143 A message system provides tools that help users (individuals or
144 organizations) deal with messages in various ways. Messages must be
145 composed, sent, received, stored, retrieved, forwarded, and replied to.
146 Today's best interactive computer systems provide a variety of word-
147 processing and information handling capabilities. The message handling
148 facilities should be well integrated with the rest of the system, so as
149 to be a graceful extension of overall system capability.
150
151 The message system described in this report, _\bM_\bH, provides most of
152 the features that can be found in other message systems and also incor-
153 porates some new ones. It has been built on the UNIX time-sharing sys-
154 tem[2], a popular operating system for the DEC PDP-11[1] and VAX-11
155 classes of computers. A "secure" operating system similar to UNIX is
156 currently being developed[3], and that system will also run _\bM_\bH.
157
158 This report provides a complete description of _\bM_\bH and thus may
159 serve as a user's manual, although parts of the report will be of
160 interest to non-users as well. Sections 2 and 3, the Overview and
161 Tutorial, present the key ideas of _\bM_\bH and will give those not familiar
162 with message systems an idea of what such systems are like.
163
164 _\bM_\bH consists of a set of commands which use some special files and
165 conventions. The final section is divided into three parts. The first
166 part covers the information a user needs to know in addition to the com-
167 mands. Then, each of the _\bM_\bH commands is described in detail. Finally,
168 other obscure details are revealed. A summary of the commands is given
169 in Appendix A, and the syntax of message sequences is given in Appendix
170 B.
171
172 A novel approach has been taken in the design of _\bM_\bH. Instead of
173 creating a large subsystem that appears as a single command to the user
174 (such as MS[4]), _\bM_\bH is a collection of separate commands which are run
175 as separate programs. The file and directory system of UNIX are used
176 directly. Messages are stored as individual files (datasets), and col-
177 lections of them are grouped into directories. In contrast, most other
178 message systems store messages in a complicated data structure within a
179 monolithic file. With the _\bM_\bH approach, UNIX commands can be interleaved
180 with commands invoking the functions of the message handler. Con-
181 versely, existing UNIX commands can be used in connection with messages.
182 For example, all the usual UNIX editing, text-formatting, and printing
183 facilities can be applied directly to individual messages. MH, there-
184 fore, consists of a relatively small amount of new code; it makes
185
186
187 \e9 [1] PDP and VAX are trademarks of Digital Equipment Corporation.
188
189
190 \e9
191
192
193
194
195
196
197
198
199
200 -3-
201
202
203 extensive use of other UNIX software to provide the capabilities found
204 in other message systems.
205
206
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 \e9
255 \e9
256
257
258
259
260
261
262
263
264
265
266
267
268 _\b2. _\bO_\bV_\bE_\bR_\bV_\bI_\bE_\bW
269
270
271
272 \e9
273 There are three main aspects of _\bM_\bH : the way messages are
274 stored (the message database), the user's profile (which directs how
275 certain actions of the message handler take place), and the commands for
276 dealing with messages.
277
278 Under _\bM_\bH, each message is stored as a separate file. A user can
279 take any action with a message that he could with an ordinary file in
280 UNIX. A UNIX directory in which messages are stored is called a folder.
281 Each folder contains some standard entries to support the message-
282 handling functions. The messages in a folder have numerical names.
283 These folders (directories) are entries in a particular directory path,
284 described in the user profile, through which _\bM_\bH can find message fold-
285 ers. Using the UNIX "link" facility, it is possible for one copy of a
286 message to be "filed" in more than one folder, providing a message index
287 facility. Also, using the UNIX tree-structured file system, it is pos-
288 sible to have a folder within a folder, nested arbitrarily deep, and
289 have the full power of the _\bM_\bH commands available.
290
291 Each user of _\bM_\bH has a user profile, a file in his $HOME (initial
292 login) directory called ._\bm_\bh__\bp_\br_\bo_\bf_\bi_\bl_\be. This profile contains several
293 pieces of information used by the _\bM_\bH commands: a path name to the direc-
294 tory that contains the message folders and parameters that tailor _\bM_\bH
295 commands to the individual user's requirements. There is also another
296 file, called the user context, which contains information concerning
297 which folder the user last referenced (the "current" folder). It also
298 contains most of the necessary state information concerning how the user
299 is dealing with his messages, enabling _\bM_\bH to be implemented as a set of
300 individual UNIX commands, in contrast to the usual approach of a monol-
301 ithic subsystem.
302
303 In _\bM_\bH, incoming mail is appended to the end of a file in a system
304 spooling area for the user. This area is called the mail drop direc-
305 tory, and the file is called the user's mail drop. Normally when the
306 user logins in, s/he is informed of new mail (or the _\bM_\bH program _\bm_\bs_\bg_\bc_\bh_\bk
307 may be run). The user adds the new messages to his/her collection of _\bM_\bH
308 messages by invoking the command _\bi_\bn_\bc. The _\bi_\bn_\bc (incorporate) command
309 adds the new messages to a folder called "inbox", assigning them names
310 which are consecutive integers starting with the next highest integer
311 available in inbox. _\bi_\bn_\bc also produces a _\bs_\bc_\ba_\bn summary of the messages
312 thus incorporated. A folder can be compacted into a single file, for
313 easy storage, by using the _\bp_\ba_\bc_\bk_\bf command. Also, messages within a
314 folder can be sorted by date and time with the _\bs_\bo_\br_\bt_\bm command.
315
316
317 There are four commands for examining the messages in a folder:
318 _\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
319
320 \e9 -4-
321
322
323
324
325
326
327
328
329
330 -5-
331
332
333 folder, _\bp_\br_\be_\bv displays the message preceding the current message, and
334 _\bn_\be_\bx_\bt displays the message following the current message. _\bM_\bH lets the
335 user choose the program that displays individual messages. A special
336 program, _\bm_\bh_\bl, can be used to display messages according to the user's
337 preferences. The _\bs_\bc_\ba_\bn command summarizes the messages in a folder, nor-
338 mally producing one line per message, showing who the message is from,
339 the date, the subject, etc.
340
341 The user may move a message from one folder to another with the
342 command _\br_\be_\bf_\bi_\bl_\be. Messages may be removed from a folder by means of the
343 command _\br_\bm_\bm. In addition, a user may query what the current folder is
344 and may specify that a new folder become the current folder, through the
345 command _\bf_\bo_\bl_\bd_\be_\br. All folders may be summarized with the _\bf_\bo_\bl_\bd_\be_\br_\bs command.
346 A message folder (or subfolder) may be removed by means of the command
347 _\br_\bm_\bf.
348
349 A set of messages based on content may be selected by use of the
350 command _\bp_\bi_\bc_\bk. This command searches through messages in a folder and
351 selects those that match a given set of criteria. These messages are
352 then bound to a "sequence" name for use with other _\bM_\bH commands. The
353 _\bm_\ba_\br_\bk command manipulates these sequences.
354
355 There are five commands enabling the user to create new messages
356 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-
357 vides the facility for the user to compose a new message; _\bd_\bi_\bs_\bt redistri-
358 butes mail to additional addressees; _\bf_\bo_\br_\bw enables the user to forward
359 messages; and _\br_\be_\bp_\bl facilitates the generation of a reply to an incoming
360 message. The last three commands may optionally annotate the original
361 message. Messages may be arbitrarily annotated with the _\ba_\bn_\bn_\bo command.
362 Once a draft has been constructed by one of the four above composition
363 programs, a user-specifiable program is run to query the user as to the
364 disposition of the draft prior to sending. _\bM_\bH provides the simple _\bw_\bh_\ba_\bt_\b-
365 _\bn_\bo_\bw program to start users off. If a message is not sent directly by
366 one of these commands, it may be sent at a later time using the command
367 _\bs_\be_\bn_\bd. _\bM_\bH allows the use of any UNIX editor when composing a message.
368 For rapid entry, a special editor, _\bp_\br_\bo_\bm_\bp_\bt_\be_\br, is provided. For programs,
369 a special mail-sending program, _\bm_\bh_\bm_\ba_\bi_\bl, is provided.
370
371 _\bM_\bH supports a personal aliasing facility which gives users the
372 capability to considerably shorten address typein and use meaningful
373 names for addresses. The _\ba_\bl_\bi program can be used to query _\bM_\bH as to the
374 expansion of a list of aliases. After composing a message, but prior to
375 sending, the _\bw_\bh_\bo_\bm command can be used to determine exactly who a message
376 would go to.
377
378 _\bM_\bH provides a natural interface for telling the user's shell the
379 names of _\bM_\bH messages and folders. The _\bm_\bh_\bp_\ba_\bt_\bh program achieves this
380 capability.
381
382 Finally, _\bM_\bH supports the UCI BBoards facility. _\bb_\bb_\bc can be used to
383 query the status of a group of BBoards, while _\bm_\bs_\bh can be used to read
384 them. The _\bb_\bu_\br_\bs_\bt command can be used to "shred" digests of messages into
385
386
387
388
389
390
391
392
393
394
395
396 -6-
397
398
399 individual messages.
400
401 All of the elements summarized above are described in more detail
402 in the following sections. Many of the normal facilities of UNIX pro-
403 vide additional capabilities for dealing with messages in various ways.
404 For example, it is possible to print messages on the line-printer
405 without requiring any additional code within _\bM_\bH . Using standard UNIX
406 facilities, any terminal output can be redirected to a file for repeated
407 or future viewing. In general, the flexibility and capabilities of the
408 UNIX interface with the user are preserved as a result of the integra-
409 tion of _\bM_\bH into the UNIX structure.
410
411
412
413
414
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 \e9
451 \e9
452
453
454
455
456
457
458
459
460
461
462
463
464 _\b3. _\bT_\bU_\bT_\bO_\bR_\bI_\bA_\bL
465
466
467
468 \e9
469 This tutorial provides a brief introduction to the _\bM_\bH commands. It
470 should be sufficient to allow the user to read his mail, do some simple
471 manipulations of it, and create and send messages.
472
473 A message has two major pieces: the header and the body. The body
474 consists of the text of the message (whatever you care to type in). It
475 follows the header and is separated from it by an empty line. (When you
476 compose a message, the form that appears on your terminal shows a line
477 of dashes after the header. This is for convenience and is replaced by
478 an empty line when the message is sent.) The header is composed of
479 several components, including the subject of the message and the person
480 to whom it is addressed. Each component starts with a name and a colon;
481 components must not start with a blank. The text of the component may
482 take more than one line, but each continuation line must start with a
483 blank. Messages typically have "To:", "cc:", and "Subject:" components.
484 When composing a message, you should include the "To:" and "Subject:"
485 components; the "cc:" (for people you want to send copies to) is not
486 necessary.
487
488 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,
489 and _\br_\be_\bp_\bl. These are described below.
490
491 _\bi_\bn_\bc
492
493 When you get the message "You have mail", type the command _\bi_\bn_\bc.
494 You will get a "scan listing" such as:
495
496 7+ 7/13 Cas revival of measurement work
497 8 10/ 9 Norm NBS people and publications
498 9 11/26 To:norm question <<Are there any functions
499
500 This shows the messages you received since the last time you exe-
501 cuted this command (_\bi_\bn_\bc adds these new messages to your inbox folder).
502 You can see this list again, plus a list of any other messages you have,
503 by using the _\bs_\bc_\ba_\bn command.
504
505 _\bs_\bc_\ba_\bn
506
507 The scan listing shows the message number, followed by the date and
508 the sender. (If you are the sender, the addressee in the "To:" com-
509 ponent is displayed. You may send yourself a message by including your
510 name among the "To:" or "cc:" addressees.) It also shows the message's
511 subject; if the subject is short, the first part of the body of the mes-
512 sage is included after the characters <<.
513
514
515
516 \e9 -7-
517
518
519
520
521
522
523
524
525
526 -8-
527
528
529 _\bs_\bh_\bo_\bw
530
531 This command shows the current message, that is, the first one of
532 the new messages after an _\bi_\bn_\bc. If the message is not specified by name
533 (number), it is generally the last message referred to by an _\bM_\bH command.
534 For example,
535
536
537 _\bs_\bh_\bo_\bw 5 will show message 5.
538
539
540 You can use the show command to copy a message or print a message.
541
542
543 _\bs_\bh_\bo_\bw > _\bx will copy the message to file x.
544 _\bs_\bh_\bo_\bw | _\bl_\bp_\br will print the message, using the _\bl_\bp_\br command.
545 _\bn_\be_\bx_\bt will show the message that follows the current message.
546 _\bp_\br_\be_\bv will show the message previous to the current message.
547 _\br_\bm_\bm will remove the current message.
548 _\br_\bm_\bm _\b3 will remove message 3.
549
550
551 _\bc_\bo_\bm_\bp
552
553 The _\bc_\bo_\bm_\bp command puts you in the editor to write or edit a message.
554 Fill in or delete the "To:", "cc:", and "Subject:" fields, as appropri-
555 ate, and type the body of the message. Then exit normally from the edi-
556 tor. You will be asked "What now?". Type a carriage return to see the
557 options. Typing send will cause the message to be sent; typing quit
558 will cause an exit from _\bc_\bo_\bm_\bp, with the message draft saved.
559
560 If you quit without sending the message, it will be saved in a file
561 called <name>/Mail/draft (where <name> is your $HOME directory). You
562 can resume editing the message later with "comp -use"; or you can send
563 the message later, using the _\bs_\be_\bn_\bd command.
564
565 _\bc_\bo_\bm_\bp -_\be_\bd_\bi_\bt_\bo_\br _\bp_\br_\bo_\bm_\bp_\bt_\be_\br
566
567 This command uses a different editor and is useful for preparing
568 "quick and dirty" messages. It prompts you for each component of the
569 header. Type the information for that component, or type a carriage
570 return to omit the component. After that, type the body of the message.
571 Backspacing is the only form of editing allowed with this editor. When
572 the body is complete, type a carriage return followed by <EOT> (usually
573 <CTRL-D>). This completes the initial preparation of the message; from
574 then on, use the same procedures as with _\bc_\bo_\bm_\bp (above).
575
576
577
578
579
580 \e9
581 \e9
582
583
584
585
586
587
588
589
590
591 -9-
592
593
594 _\br_\be_\bp_\bl
595 _\br_\be_\bp_\bl n
596
597 This command makes up an initial message form with a header that is
598 appropriate for replying to an existing message. The message being
599 answered is the current message if no message number is mentioned, or n
600 if a number is specified. After the header is completed, you can finish
601 the message as in _\bc_\bo_\bm_\bp (above).
602
603 This is enough information to get you going using _\bM_\bH. There are
604 more commands, and the commands described here have more features. Sub-
605 sequent sections explain _\bM_\bH in complete detail. The system is quite
606 powerful if you want to use its sophisticated features, but the forego-
607 ing commands suffice for sending and receiving messages.
608
609 There are numerous additional capabilities you may wish to explore.
610 For example, the _\bp_\bi_\bc_\bk command will select a subset of messages based on
611 specified criteria such as sender and/or subject. Groups of messages
612 may be designated, as described in Sec. IV, under Message Naming. The
613 file ._\bm_\bh__\bp_\br_\bo_\bf_\bi_\bl_\be can be used to tailor your use of the message system to
614 your needs and preferences, as described in Sec. IV, under The User Pro-
615 file. In general, you may learn additional features of the system
616 selectively, according to your requirements, by studying the relevant
617 sections of this manual. There is no need to learn all the details of
618 the system at once.
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645 \e9
646 \e9
647
648
649
650
651
652
653
654
655
656
657
658
659 _\b4. _\bD_\bE_\bT_\bA_\bI_\bL_\bE_\bD _\bD_\bE_\bS_\bC_\bR_\bI_\bP_\bT_\bI_\bO_\bN
660
661
662
663 \e9
664 This section describes the _\bM_\bH system in detail, including the com-
665 ponents of the user profile, the conventions for message naming, and
666 some of the other _\bM_\bH conventions. Readers who are generally familiar
667 with computer systems will be able to follow the principal ideas,
668 although some details may be meaningful only to those familiar with
669 UNIX.
670
671
672 \e9 _\bT_\bH_\bE _\bU_\bS_\bE_\bR _\bP_\bR_\bO_\bF_\bI_\bL_\bE
673
674 The first time an _\bM_\bH command is issued by a new user, the system
675 prompts for a "Path" and creates an _\bM_\bH "profile".
676
677 Each _\bM_\bH user has a profile which contains tailoring information for
678 each individual program. Other profile entries control the _\bM_\bH path
679 (where folders and special files are kept), folder and message protec-
680 tions, editor selection, and default arguments for each _\bM_\bH program.
681 Each user of _\bM_\bH also has a context file which contains current state
682 information for the _\bM_\bH package (the location of the context file is kept
683 in the user's _\bM_\bH directory, or may be named in the user profile). When
684 a folder becomes the current folder, it is recorded in the user's con-
685 text. (Other state information is kept in the context file, see the
686 manual entry for _\bm_\bh-_\bp_\br_\bo_\bf_\bi_\bl_\be (5) for more details.) In general, the term
687 "profile entry" refer to entries in either the profile or context file.
688 Users of _\bM_\bH needn't worry about the distinction, _\bM_\bH handles these things
689 automatically.
690
691 The _\bM_\bH profile is stored in the file ._\bm_\bh__\bp_\br_\bo_\bf_\bi_\bl_\be in the user's
692 $HOME directory[1]. It has the format of a message without any body.
693 That is, each profile entry is on one line, with a keyword followed by a
694 colon (:) followed by text particular to the keyword.
695 => _\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.
696 The keywords may have any combination of upper and lower case. (See the
697 information of _\bm_\bh-_\bm_\ba_\bi_\bl later on in this manual for a description of mes-
698 sage formats.)
699
700 For the average _\bM_\bH user, the only profile entry of importance is
701 "Path". Path specifies a directory in which _\bM_\bH folders and certain
702 files such as "draft" are found. The argument to this keyword must be a
703 legal UNIX path that names an existing directory. If this path is not
704
705
706 \e9 [1] By defining the envariable $MH, you can specify an alternate pro-
707 file to be used by _\bM_\bH commands.
708
709
710 \e9 -10-
711
712
713
714
715
716
717
718
719
720 -11-
721
722
723 absolute (i.e., does not begin with a / ), it will be presumed to start
724 from the user's $HOME directory. All folder and message references
725 within _\bM_\bH will relate to this path unless full path names are used.
726
727 Message protection defaults to 644, and folder protection to 711.
728 These may be changed by profile entries "Msg-Protect" and "Folder-
729 Protect", respectively. The argument to these keywords is an octal
730 number which is used as the UNIX file mode[2].
731
732 When an _\bM_\bH program starts running, it looks through the user's pro-
733 file for an entry with a keyword matching the program's name. For exam-
734 ple, when _\bc_\bo_\bm_\bp is run, it looks for a "comp" profile entry. If one is
735 found, the text of the profile entry is used as the default switch set-
736 ting until all defaults are overridden by explicit switches passed to
737 the program as arguments. Thus the profile entry
738 "comp: -form standard.list" would direct _\bc_\bo_\bm_\bp to use the file
739 "standard.list" as the message skeleton. If an explicit form switch is
740 given to the _\bc_\bo_\bm_\bp command, it will override the switch obtained from the
741 profile.
742
743 In UNIX, a program may exist under several names, either by linking
744 or aliasing. The actual invocation name is used by an _\bM_\bH program when
745 scanning for its profile defaults[3]. Thus, each _\bM_\bH program may have
746 several names by which it can be invoked, and each name may have a dif-
747 ferent set of default switches. For example, if _\bc_\bo_\bm_\bp is invoked by the
748 name _\bi_\bc_\bo_\bm_\bp, the profile entry "icomp" will control the default switches
749 for this invocation of the _\bc_\bo_\bm_\bp program. This provides a powerful
750 definitional facility for commonly used switch settings.
751
752 The default editor for editing within _\bc_\bo_\bm_\bp, _\br_\be_\bp_\bl, _\bf_\bo_\br_\bw, and _\bd_\bi_\bs_\bt,
753 is usually _\bp_\br_\bo_\bm_\bp_\bt_\be_\br, but might be something else at your site, such as
754 /_\bu_\bs_\br/_\bu_\bc_\bb/_\be_\bx or /_\bb_\bi_\bn/_\be. A different editor may be used by specifying the
755 profile entry "Editor: ". The argument to "Editor" is the name of an
756 executable program or shell command file which can be found via the
757 user's $PATH defined search path, excluding the current directory. The
758 "Editor:" profile specification may in turn be overridden by a
759 `-editor <editor>' profile switch associated with _\bc_\bo_\bm_\bp, _\br_\be_\bp_\bl, _\bf_\bo_\br_\bw, or
760 _\bd_\bi_\bs_\bt. Finally, an explicit editor switch specified with any of these
761 four commands will have ultimate precedence.
762
763
764
765 \e9 [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].
766 [3] Unfortunately, the shell does not preserve aliasing information
767 when calling a program, hence if a program is invoked by an alias dif-
768 ferent than its name, the program will examine the profile entry for
769 it's name, not the alias that the user invoked it as. The correct solu-
770 tion is to create a (soft) link in your $_\bH_\bO_\bM_\bE/_\bb_\bi_\bn directory to the _\bM_\bH
771 program of your choice. By giving this link a different name, you can
772 use an alternate set of defaults for the command.
773
774
775 \e9
776
777
778
779
780
781
782
783
784
785 -12-
786
787
788 During message composition, more than one editor may be used. For
789 example, one editor (such as _\bp_\br_\bo_\bm_\bp_\bt_\be_\br ) may be used initially, and a
790 second editor may be invoked later to revise the message being composed
791 (see the discussion of _\bc_\bo_\bm_\bp in Section 5 for details). A profile entry
792 "<lasteditor>-next: <editor>" specifies the name of the editor to be
793 used after a particular editor. Thus "comp: -e prompter" causes the
794 initial text to be collected by _\bp_\br_\bo_\bm_\bp_\bt_\be_\br, and the profile entry
795 "prompter-next: ed" names ed as the editor to be invoked for the next
796 round of editing.
797
798 Some of the _\bM_\bH commands, such as _\bs_\bh_\bo_\bw, can be used on message fold-
799 ers owned by others, if those folders are readable. However, you cannot
800 write in someone else's folder. All the _\bM_\bH command actions not requir-
801 ing write permission may be used with a "read-only" folder.
802
803 Table 1 lists examples of some of the currently defined profile
804 entries, typical arguments, and the programs that reference the entries.
805
806
807
808
809
810
811
812
813
814
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 \e9
840 \e9
841
842
843
844
845
846
847
848
849
850 -13-
851
852
853 Table 1
854 \e9 PROFILE COMPONENTS
855 ______________________________________________________
856
857 _\bM_\bH Programs that
858 Keyword and Argument use Component\e9\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______________________________________________________
859 \e9 Path: Mail All
860 Current-Folder: inbox Most
861 Editor: /usr/ucb/ex _\bc_\bo_\bm_\bp, _\bd_\bi_\bs_\bt, _\bf_\bo_\br_\bw, _\br_\be_\bp_\bl
862 Msg-Protect: 644 _\bi_\bn_\bc
863 Folder-Protect: 711 _\bi_\bn_\bc, _\bp_\bi_\bc_\bk, _\br_\be_\bf_\bi_\bl_\be
864 <program>: default switches All
865 prompter-next: ed _\bc_\bo_\bm_\bp, _\bd_\bi_\bs_\bt, _\bf_\bo_\br_\bw, _\br_\be_\bp_\bl
866 ______________________________________________________
867
868
869 Path should\b\b\b\b\b\b______ be present. Current-Folder is maintained automatically
870 by many _\bM_\bH commands (see the Context sections of the individual commands
871 in Sec. IV). All other entries are optional, defaulting to the values
872 described above.
873
874
875 \e9 _\bM_\bE_\bS_\bS_\bA_\bG_\bE _\bN_\bA_\bM_\bI_\bN_\bG
876
877 Messages may be referred to explicitly or implicitly when using _\bM_\bH
878 commands. A formal syntax of message names is given in Appendix B, but
879 the following description should be sufficient for most _\bM_\bH users. Some
880 details of message naming that apply only to certain commands are
881 included in the description of those commands.
882
883 Most of the _\bM_\bH commands accept arguments specifying one or more
884 folders, and one or more messages to operate on. The use of the word
885 "msg" as an argument to a command means that exactly one message name
886 may be specified. A message name may be a number, such as 1, 33, or
887 234, or it may be one of the "reserved" message names: first, last,
888 prev, next, and cur. (As a shorthand, a period (.) is equivalent to
889 cur.) The meanings of these names are straightforward: "first" is the
890 first message in the folder; "last" is the last message in the folder;
891 "prev" is the message numerically previous to the current message;
892 "next" is the message numerically following the current message; "cur"
893 (or ".") is the current message in the folder. In addition, _\bM_\bH supports
894 user-defined-sequences; see the description of the _\bm_\ba_\br_\bk command for more
895 information.
896
897 The default in commands that take a "msg" argument is always "cur".
898
899 The word "msgs" indicates that several messages may be specified.
900 Such a specification consists of several message designations separated
901 by spaces. A message designation is either a message name or a message
902 range. A message range is a specification of the form name1-name2 or
903
904
905
906
907
908
909
910
911
912
913
914 -14-
915
916
917 name1:n, where name1 and name2 are message names and n is an integer.
918 The first form designates all the messages from name1 to name2
919 inclusive; this must be a non-empty range. The second form specifies up
920 to n messages, starting with name1 if name1 is a number, or first, cur,
921 or next, and ending with name1 if name1 is last or prev. This interpre-
922 tation of n is overridden if n is preceded by a plus sign or a minus
923 sign; +n always means up to n messages starting with name1, and -n
924 always means up to n messages ending with name1. Repeated specifica-
925 tions of the same message have the same effect as a single specification
926 of the message. Examples of specifications are:
927
928
929 1 5 7-11 22
930 first 6 8 next
931 first-10
932 last:5
933
934
935 The message name "all" is a shorthand for "first-last", indicating
936 all of the messages in the folder.
937
938 In commands that accept "msgs" arguments, the default is either cur
939 or all, depending on which makes more sense.
940
941 In all of the _\bM_\bH commands, a plus sign preceding an argument indi-
942 cates a folder name. Thus, "+inbox" is the name of the user's standard
943 inbox. If an explicit folder argument is given to an _\bM_\bH command, it
944 will become the current folder (that is, the "Current-Folder:" entry in
945 the user's profile will be changed to this folder). In the case of the
946 _\br_\be_\bf_\bi_\bl_\be command, which can have multiple output folders, a new source
947 folder (other than the default current folder) is specified by
948 `-src +folder'.
949
950
951 \e9 _\bO_\bT_\bH_\bE_\bR _\bM_\bH _\bC_\bO_\bN_\bV_\bE_\bN_\bT_\bI_\bO_\bN_\bS
952
953 One very powerful feature of _\bM_\bH is that the _\bM_\bH commands may be
954 issued from any current directory, and the proper path to the appropri-
955 ate folder(s) will be taken from the user's profile. If the _\bM_\bH path is
956 not appropriate for a specific folder or file, the automatic prepending
957 of the _\bM_\bH path can be avoided by beginning a folder or file name with /,
958 or with ./ or ../ component. Thus any specific absolute path may be
959 specified along with any path relative to the current working directory.
960
961 Arguments to the various programs may be given in any order, with
962 the exception of a few switches whose arguments must follow immediately,
963 such as `-src +folder' for _\br_\be_\bf_\bi_\bl_\be.
964
965 Whenever an _\bM_\bH command prompts the user, the valid options will be
966 listed in response to a <RETURN>. (The first of the listed options is
967 the default if end-of-file is encountered, such as from a command file.)
968
969 \e9
970
971
972
973
974
975
976
977
978
979 -15-
980
981
982 A valid response is any _\bu_\bn_\bi_\bq_\bu_\be abbreviation of one of the listed
983 options.
984
985 Standard UNIX documentation conventions are used in this report to
986 describe _\bM_\bH command syntax. Arguments enclosed in brackets ([ ]) are
987 optional; exactly one of the arguments enclosed within braces ({ }) must
988 be specified, and all other arguments are required. The use of ellipsis
989 dots (...) indicates zero or more repetitions of the previous item. For
990 example, "+folder ..." would indicate that one or more "+folder" argu-
991 ments is required and "[+folder ...]" indicates that 0 or more "+folder"
992 arguments may be given.
993
994 _\bM_\bH departs from UNIX standards by using switches that consist of
995 more than one character, e.g. `-header'. To minimize typing, only a
996 unique abbreviation of a switch need be typed; thus, for `-header',
997 `-hea' is probably sufficient, depending on the other switches the com-
998 mand accepts. Each _\bM_\bH program accepts the switch `-help' (which must be
999 spelled out fully) and produces a syntax description and a list of
1000 switches. In the list of switches, parentheses indicate required char-
1001 acters. For example, all `-help' switches will appear as "-(help)",
1002 indicating that no abbreviation is accepted. Furthermore, the `-help'
1003 switch tells the version of the _\bM_\bH program you invoked.
1004
1005 Many _\bM_\bH switches have both on and off forms, such as `-format' and
1006 `-noformat'. In many of the descriptions which follow, only one form is
1007 defined; the other form, often used to nullify profile switch settings,
1008 is assumed to be the opposite.
1009
1010
1011
1012
1013
1014
1015
1016
1017
1018
1019
1020
1021
1022
1023
1024
1025
1026
1027
1028
1029
1030
1031
1032
1033 \e9
1034 \e9
1035
1036
1037
1038
1039
1040
1041
1042
1043
1044 -16-
1045
1046
1047 _\bM_\bH _\bC_\bO_\bM_\bM_\bA_\bN_\bD_\bS
1048
1049 The _\bM_\bH package comprises several programs:
1050
1051 ali (1) - list mail aliases
1052 anno (1) - annotate messages
1053 bbc (1) - check on BBoards
1054 bboards (1) - the UCI BBoards facility
1055 burst (1) - explode digests into messages
1056 comp (1) - compose a message
1057 dist (1) - redistribute a message to additional addresses
1058 folder (1) - set/list current folder/message
1059 folders (1) - list all folders
1060 forw (1) - forward messages
1061 inc (1) - incorporate new mail
1062 mark (1) - mark messages
1063 mhl (1) - produce formatted listings of MH messages
1064 mhmail (1) - send or read mail
1065 mhook (1) - MH receive-mail hooks
1066 mhpath (1) - print full pathnames of MH messages and folders
1067 msgchk (1) - check for messages
1068 msh (1) - MH shell (and BBoard reader)
1069 next (1) - show the next message
1070 packf (1) - compress a folder into a single file
1071 pick (1) - select messages by content
1072 prev (1) - show the previous message
1073 prompter (1) - prompting editor front end
1074 rcvstore (1) - incorporate new mail asynchronously
1075 refile (1) - file messages in other folders
1076 repl (1) - reply to a message
1077 rmf (1) - remove folder
1078 rmm (1) - remove messages
1079 scan (1) - produce a one line per message scan listing
1080 send (1) - send a message
1081 show (1) - show (list) messages
1082 sortm (1) - sort messages
1083 vmh (1) - visual front-end to MH
1084 whatnow (1) - prompting front-end for send
1085 whom (1) - report to whom a message would go
1086
1087
1088 These programs are described below. The form of the descriptions
1089 conforms to the standard form for the description of UNIX commands.
1090
1091
1092
1093
1094
1095
1096
1097
1098 \e9
1099 \e9
1100
1101
1102
1103
1104
1105
1106
1107
1108
1109 ALI(1) -17- ALI(1)
1110
1111
1112 _\bN_\bA_\bM_\bE
1113 ali - list mail aliases
1114
1115 _\bS_\bY_\bN_\bO_\bP_\bS_\bI_\bS
1116 ali [-alias aliasfile] [-list] [-nolist] [-normalize]
1117 [-nonormalize] [-user] [-nouser] aliases ... [-help]
1118
1119 _\bD_\bE_\bS_\bC_\bR_\bI_\bP_\bT_\bI_\bO_\bN
1120
1121 _\bA_\bl_\bi searches the named mail alias files for each of the given
1122 _\ba_\bl_\bi_\ba_\bs_\be_\bs. It creates a list of addresses for those _\ba_\bl_\bi_\ba_\bs_\be_\bs, and
1123 writes that list on standard output. If the `-list' option is
1124 specified, each address appears on a separate line; otherwise, the
1125 addresses are separated by commas and printed on as few lines as
1126 possible.
1127
1128 The `-user' option directs _\ba_\bl_\bi to perform its processing in an
1129 inverted fashion: instead of listing the addresses that each given
1130 alias expands to, _\ba_\bl_\bi will list the aliases that expand to each
1131 given address. If the `-normalize' switch is given, _\ba_\bl_\bi will try
1132 to track down the official hostname of the address.
1133
1134 The file specified by the profile entry "Aliasfile:" and any addi-
1135 tional alias files given by the `-alias aliasfile' switch will be
1136 read. Each _\ba_\bl_\bi_\ba_\bs is processed as described in _\bm_\bh-_\ba_\bl_\bi_\ba_\bs (5).
1137
1138 _\bF_\bi_\bl_\be_\bs
1139 $HOME/.mh_profile The user profile
1140 /etc/passwd List of users
1141 /etc/group List of groups
1142
1143
1144 _\bP_\br_\bo_\bf_\bi_\bl_\be _\bC_\bo_\bm_\bp_\bo_\bn_\be_\bn_\bt_\bs
1145 Path: To determine the user's MH directory
1146 Aliasfile: For a default alias file
1147
1148
1149 _\bS_\be_\be _\bA_\bl_\bs_\bo
1150 mh-alias(5)
1151
1152
1153 _\bD_\be_\bf_\ba_\bu_\bl_\bt_\bs
1154 `-alias /usr/local/lib/mh/MailAliases'
1155 `-nolist'
1156 `-nonormalize'
1157 `-nouser'
1158
1159
1160 _\bC_\bo_\bn_\bt_\be_\bx_\bt
1161 None
1162
1163 \e9
1164 \e9 [mh.6] MH.6.7 UCI version
1165
1166
1167
1168
1169
1170
1171
1172
1173
1174 ALI(1) -18- ALI(1)
1175
1176
1177 _\bB_\bu_\bg_\bs
1178 The `-user' option with `-nonormalize' is not entirely accurate, as
1179 it does not replace local nicknames for hosts with their official
1180 site names.
1181
1182
1183
1184
1185
1186
1187
1188
1189
1190
1191
1192
1193
1194
1195
1196
1197
1198
1199
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 \e9
1229 \e9 [mh.6] MH.6.7 UCI version
1230
1231
1232
1233
1234
1235
1236
1237
1238
1239 ANNO(1) -19- ANNO(1)
1240
1241
1242 _\bN_\bA_\bM_\bE
1243 anno - annotate messages
1244
1245 _\bS_\bY_\bN_\bO_\bP_\bS_\bI_\bS
1246 anno [+folder] [msgs] [-component field] [-inplace] [-noinplace]
1247 [-date] [-nodate] [-text body] [-help]
1248
1249 _\bD_\bE_\bS_\bC_\bR_\bI_\bP_\bT_\bI_\bO_\bN
1250
1251 _\bA_\bn_\bn_\bo annotates the specified messages in the named folder using the
1252 field and body. Annotation is optionally performed by _\bd_\bi_\bs_\bt, _\bf_\bo_\br_\bw,
1253 and _\br_\be_\bp_\bl, to keep track of your distribution of, forwarding of, and
1254 replies to a message. By using _\ba_\bn_\bn_\bo, you can perform arbitrary
1255 annotations of your own. Each message selected will be annotated
1256 with the lines
1257
1258 field: date
1259 field: body
1260
1261 The `-nodate' switch inhibits the date annotation, leaving only the
1262 body annotation. The `-inplace' switch causes annotation to be
1263 done in place in order to preserve links to the annotated message.
1264
1265 The field specified should be a valid 822-style message field name,
1266 which means that it should consist of alphanumerics (or dashes)
1267 only. The body specified is arbitrary text.
1268
1269 If a `-component field' is not specified when _\ba_\bn_\bn_\bo is invoked, _\ba_\bn_\bn_\bo
1270 will prompt the user for the name of field for the annotation.
1271
1272 _\bF_\bi_\bl_\be_\bs
1273 $HOME/.mh_profile The user profile
1274
1275
1276 _\bP_\br_\bo_\bf_\bi_\bl_\be _\bC_\bo_\bm_\bp_\bo_\bn_\be_\bn_\bt_\bs
1277 Path: To determine the user's MH directory
1278 Current-Folder: To find the default current folder
1279
1280
1281 _\bS_\be_\be _\bA_\bl_\bs_\bo
1282 dist (1), forw (1), repl (1)
1283
1284
1285 _\bD_\be_\bf_\ba_\bu_\bl_\bt_\bs
1286 `+folder' defaults to the current folder
1287 `msgs' defaults to cur
1288 `-noinplace'
1289 `-date'
1290
1291
1292
1293 \e9
1294 \e9 [mh.6] MH.6.7 UCI version
1295
1296
1297
1298
1299
1300
1301
1302
1303
1304 ANNO(1) -20- ANNO(1)
1305
1306
1307 _\bC_\bo_\bn_\bt_\be_\bx_\bt
1308 If a folder is given, it will become the current folder. The first
1309 message annotated will become the current message.
1310
1311
1312
1313
1314
1315
1316
1317
1318
1319
1320
1321
1322
1323
1324
1325
1326
1327
1328
1329
1330
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 \e9
1359 \e9 [mh.6] MH.6.7 UCI version
1360
1361
1362
1363
1364
1365
1366
1367
1368
1369 BBC(1) -21- BBC(1)
1370
1371
1372 _\bN_\bA_\bM_\bE
1373 bbc - check on BBoards
1374
1375 _\bS_\bY_\bN_\bO_\bP_\bS_\bI_\bS
1376 bbc [bboards ...] [-topics] [-check] [-read] [-quiet] [-verbose]
1377 [-archive] [-noarchive] [-protocol] [-noprotocol]
1378 [-mshproc program] [switches for _\bm_\bs_\bh_\bp_\br_\bo_\bc] [-rcfile rcfile]
1379 [-norcfile] [-file BBoardsfile] [-user BBoardsuser]
1380 [-host host] [-help]
1381
1382 _\bD_\bE_\bS_\bC_\bR_\bI_\bP_\bT_\bI_\bO_\bN
1383
1384 _\bb_\bb_\bc is a BBoard reading/checking program that interfaces to the
1385 BBoard channel.
1386
1387 The _\bb_\bb_\bc program has three action switches which direct its opera-
1388 tion:
1389
1390 The `-read' switch invokes the _\bm_\bs_\bh program on the named _\bB_\bB_\bo_\ba_\br_\bd_\bs.
1391 If you also specify the `-archive' switch, then _\bb_\bb_\bc will invoke
1392 the _\bm_\bs_\bh program on the archives of the named _\bB_\bB_\bo_\ba_\br_\bd_\bs. If no
1393 _\bB_\bB_\bo_\ba_\br_\bd_\bs are given on the command line, and you specified
1394 `-archive', _\bb_\bb_\bc will not read your `bboards' profile entry, but
1395 will read the archives of the "system" _\bB_\bB_\bo_\ba_\br_\bd instead.
1396
1397 The `-check' switch types out status information for the named
1398 _\bB_\bB_\bo_\ba_\br_\bd_\bs. _\bb_\bb_\bc can print one of several messages depending on the
1399 status of both the BBoard and the user's reading habits. As with
1400 each of these messages, the number given is the item number of the
1401 last item placed in the BBoard. This number (which is marked in
1402 the messages as the "BBoard-Id") is ever increasing. Hence, when
1403 _\bb_\bb_\bc says "n items", it really means that the highest BBoard-Id is
1404 "n". There may, or may not actually be "n" items in the BBoard.
1405 Some common messages are:
1406
1407 BBoard -- n items unseen
1408 This message tells how many items the user has not yet
1409 seen. When invoked with the `-quiet' switch, this is the
1410 only informative line that _\bb_\bb_\bc will possibly print out.
1411
1412 BBoard -- empty
1413 The BBoard is empty.
1414
1415 BBoard -- n items (none seen)
1416 The BBoard has items in it, but the user hasn't seen any.
1417
1418 BBoard -- n items (all seen)
1419 The BBoard is non-empty, and the user has seen everything
1420 in it.
1421
1422 BBoard -- n items seen out of m
1423 The BBoard has at most m-n items that the user has not
1424
1425 [mh.6] MH.6.7 UCI version
1426
1427
1428
1429
1430
1431
1432
1433
1434
1435 BBC(1) -22- BBC(1)
1436
1437
1438 seen.
1439
1440 The `-topics' switch directs _\bb_\bb_\bc to print three items about the
1441 named _\bB_\bB_\bo_\ba_\br_\bd_\bs: it's official name, the number of items present, and
1442 the date and time of the last update. If no _\bB_\bB_\bo_\ba_\br_\bd_\bs are named,
1443 then all BBoards are listed. If the `-verbose' switch is given,
1444 more information is output.
1445
1446 The `-quiet' switch specifies that _\bb_\bb_\bc should be silent if no
1447 _\bB_\bB_\bo_\ba_\br_\bd_\bs are found with new information. The `-verbose' switch
1448 specifies that _\bb_\bb_\bc is to consider you to be interested in _\bB_\bB_\bo_\ba_\br_\bd_\bs
1449 that you've already seen everything in.
1450
1451 To override the default _\bm_\bs_\bh_\bp_\br_\bo_\bc and the profile entry, use the
1452 `-mshproc program' switch. Any arguments not understood by _\bb_\bb_\bc are
1453 passed to this program. The `-protocol' switch tells _\bb_\bb_\bc that your
1454 _\bm_\bs_\bh_\bp_\br_\bo_\bc knows about the special _\bb_\bb_\bc protocol for reporting back
1455 information. _\bm_\bs_\bh (1), the default _\bm_\bs_\bh_\bp_\br_\bo_\bc, knows all about this.
1456
1457 The `-file BBoardsfile' switch tells _\bb_\bb_\bc to use a non-standard
1458 _\bB_\bB_\bo_\ba_\br_\bd_\bs file when performing its calculations. Similarly, the
1459 `-user BBoardsuser' switch tells _\bb_\bb_\bc to use a non-standard user-
1460 name. Both of these switches are useful for debugging a new
1461 _\bB_\bB_\bo_\ba_\br_\bd_\bs or _\bP_\bO_\bP file.
1462
1463 If the local host is configured as an NNTP BBoards client, or if
1464 the `-host host' switch is given, then _\bb_\bb_\bc will query the NNTP ser-
1465 vice host as to the status of the BBoards. For NNTP BBoards
1466 clients, the `-user user' and the `-rpop' switches are ignored.
1467
1468 The `-rcfile rcfile' switch overrides the use of ._\bb_\bb_\br_\bc for
1469 user-specific BBoards information. If the value given to the
1470 switch is not absolute, (i.e., does not begin with a / ), it will
1471 be presumed to start from the current working directory. If this
1472 switch is not given (or the `-norcfile' switch is given), then _\bb_\bb_\bc
1473 consults the envariable $MHBBRC, and honors it similarly. If this
1474 envariable is not set, then the file ._\bb_\bb_\br_\bc in the user's $HOME
1475 directory is used.
1476
1477 _\bF_\bi_\bl_\be_\bs
1478 $HOME/.mh_profile The user profile
1479 $HOME/.bbrc BBoard information
1480
1481
1482 _\bP_\br_\bo_\bf_\bi_\bl_\be _\bC_\bo_\bm_\bp_\bo_\bn_\be_\bn_\bt_\bs
1483 Path: To determine the user's MH directory
1484 bboards: To specify interesting BBoards
1485 mshproc: Program to read a given BBoard
1486
1487
1488
1489 \e9
1490 \e9 [mh.6] MH.6.7 UCI version
1491
1492
1493
1494
1495
1496
1497
1498
1499
1500 BBC(1) -23- BBC(1)
1501
1502
1503 _\bS_\be_\be _\bA_\bl_\bs_\bo
1504 bbl(1), bboards(1), msh(1)
1505
1506
1507 _\bD_\be_\bf_\ba_\bu_\bl_\bt_\bs
1508 `-read'
1509 `-noarchive'
1510 `-protocol'
1511 `bboards' defaults to "system"
1512 `-file /usr/bboards/BBoards'
1513 `-user bboards'
1514
1515
1516 _\bC_\bo_\bn_\bt_\be_\bx_\bt
1517 None
1518
1519
1520 _\bB_\bu_\bg_\bs
1521 The `-user' switch takes effect only if followed by the `-file'
1522 switch.
1523
1524
1525
1526
1527
1528
1529
1530
1531
1532
1533
1534
1535
1536
1537
1538
1539
1540
1541
1542
1543
1544
1545
1546
1547
1548
1549
1550
1551
1552
1553
1554 \e9
1555 \e9 [mh.6] MH.6.7 UCI version
1556
1557
1558
1559
1560
1561
1562
1563
1564
1565 BBOARDS(1) -24- BBOARDS(1)
1566
1567
1568 _\bN_\bA_\bM_\bE
1569 bboards - the UCI BBoards facility
1570
1571 _\bS_\bY_\bN_\bO_\bP_\bS_\bI_\bS
1572 bbc [-check] [-read] bboards ... [-help]
1573
1574 _\bD_\bE_\bS_\bC_\bR_\bI_\bP_\bT_\bI_\bO_\bN
1575
1576 The home directory of _\bb_\bb_\bo_\ba_\br_\bd_\bs is where the BBoard system is kept.
1577 This documentation describes some of the nuances of the BBoard sys-
1578 tem.
1579
1580 BBoards, BBoard-IDs
1581 A BBoard is just a file containing a group of messages relat-
1582 ing to the same topic. These files live in the ~bboards home
1583 directory. Each message in a BBoard file has in its header
1584 the line "BBoard-Id: n", where "n" is an ascending decimal
1585 number. This id-number is unique for each message in a
1586 BBoards file. It should NOT be confused with the message
1587 number of a message, which can change as messages are removed
1588 from the BBoard.
1589
1590 BBoard Handling
1591 To read BBoards, use the _\bb_\bb_\bc and _\bm_\bs_\bh programs. The _\bm_\bs_\bh com-
1592 mand is a monolithic program which contains all the func-
1593 tionality of _\bM_\bH in a single program. The `-check' switch to
1594 _\bb_\bb_\bc lets you check on the status of BBoards, and the `-read'
1595 switch tells _\bb_\bb_\bc to invoke _\bm_\bs_\bh to read those BBoards.
1596
1597 Creating a BBoard
1598 Both public, and private BBoards are supported. Contact the
1599 mail address _\bP_\bo_\bs_\bt_\bM_\ba_\bs_\bt_\be_\br if you'd like to have a BBoard
1600 created.
1601
1602 BBoard addresses
1603 Each BBoard has associated with it 4 addresses, these are (for
1604 the ficticious BBoard called ``hacks''):
1605 hacks : The Internet wide distribution list.
1606 dist-hacks : The local BBoard.
1607 hacks-request : The people responsible for the BBoard at the
1608 Internet level.
1609 local-hacks-request : The people responsible for the BBoard
1610 locally.
1611
1612 _\bF_\bi_\bl_\be_\bs
1613 $HOME/.mh_profile The user profile
1614 $HOME/.bbrc BBoard information
1615
1616
1617
1618
1619 \e9
1620 \e9 [mh.6] MH.6.7 UCI version
1621
1622
1623
1624
1625
1626
1627
1628
1629
1630 BBOARDS(1) -25- BBOARDS(1)
1631
1632
1633 _\bP_\br_\bo_\bf_\bi_\bl_\be _\bC_\bo_\bm_\bp_\bo_\bn_\be_\bn_\bt_\bs
1634 Path: To determine the user's MH directory
1635 bboards: To specify interesting BBoards
1636 mshproc: Program to read a given BBoard
1637
1638
1639 _\bS_\be_\be _\bA_\bl_\bs_\bo
1640 bbc(1), bbl(1), bbleader(1), msh(1)
1641
1642
1643 _\bD_\be_\bf_\ba_\bu_\bl_\bt_\bs
1644 The default bboard is "system"
1645
1646
1647 _\bC_\bo_\bn_\bt_\be_\bx_\bt
1648 None
1649
1650
1651
1652
1653
1654
1655
1656
1657
1658
1659
1660
1661
1662
1663
1664
1665
1666
1667
1668
1669
1670
1671
1672
1673
1674
1675
1676
1677
1678
1679
1680
1681
1682
1683
1684 \e9
1685 \e9 [mh.6] MH.6.7 UCI version
1686
1687
1688
1689
1690
1691
1692
1693
1694
1695 BURST(1) -26- BURST(1)
1696
1697
1698 _\bN_\bA_\bM_\bE
1699 burst - explode digests into messages
1700
1701 _\bS_\bY_\bN_\bO_\bP_\bS_\bI_\bS
1702 burst [+folder] [msgs] [-inplace] [-noinplace] [-quiet] [-noquiet]
1703 [-verbose] [-noverbose] [-help]
1704
1705 _\bD_\bE_\bS_\bC_\bR_\bI_\bP_\bT_\bI_\bO_\bN
1706
1707 _\bB_\bu_\br_\bs_\bt considers the specified messages in the named folder to be
1708 Internet digests, and explodes them in that folder.
1709
1710 If `-inplace' is given, each digest is replaced by the "table of
1711 contents" for the digest (the original digest is removed). _\bB_\bu_\br_\bs_\bt
1712 then renumbers all of the messages following the digest in the
1713 folder to make room for each of the messages contained within the
1714 digest. These messages are placed immediately after the digest.
1715
1716 If `-noinplace' is given, each digest is preserved, no table of
1717 contents is produced, and the messages contained within the digest
1718 are placed at the end of the folder. Other messages are not tam-
1719 pered with in any way.
1720
1721 The `-quiet' switch directs _\bb_\bu_\br_\bs_\bt to be silent about reporting mes-
1722 sages that are not in digest format.
1723
1724 The `-verbose' switch directs _\bb_\bu_\br_\bs_\bt to tell the user the general
1725 actions that it is taking to explode the digest.
1726
1727 It turns out that _\bb_\bu_\br_\bs_\bt works equally well on forwarded messages
1728 and blind-carbon-copies as on Internet digests, provided that the
1729 former two were generated by _\bf_\bo_\br_\bw or _\bs_\be_\bn_\bd.
1730
1731 _\bF_\bi_\bl_\be_\bs
1732 $HOME/.mh_profile The user profile
1733
1734
1735 _\bP_\br_\bo_\bf_\bi_\bl_\be _\bC_\bo_\bm_\bp_\bo_\bn_\be_\bn_\bt_\bs
1736 Path: To determine the user's MH directory
1737 Current-Folder: To find the default current folder
1738 Msg-Protect: To set mode when creating a new message
1739
1740
1741 _\bS_\be_\be _\bA_\bl_\bs_\bo
1742 _\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),
1743 inc(1), msh(1), pack(1)
1744
1745
1746
1747
1748
1749 \e9
1750 \e9 [mh.6] MH.6.7 UCI version
1751
1752
1753
1754
1755
1756
1757
1758
1759
1760 BURST(1) -27- BURST(1)
1761
1762
1763 _\bD_\be_\bf_\ba_\bu_\bl_\bt_\bs
1764 `+folder' defaults to the current folder
1765 `msgs' defaults to cur
1766 `-noinplace'
1767 `-noquiet'
1768 `-noverbose'
1769
1770
1771 _\bC_\bo_\bn_\bt_\be_\bx_\bt
1772 If a folder is given, it will become the current folder. If `-in-
1773 place' is given, then the first message burst becomes the current
1774 message. This leaves the context ready for a _\bs_\bh_\bo_\bw of the table of
1775 contents of the digest, and a _\bn_\be_\bx_\bt to see the first message of the
1776 digest. If `-noinplace' is given, then the first message extracted
1777 from the first digest burst becomes the current message. This
1778 leaves the context in a similar, but not identical, state to the
1779 context achieved when using `-inplace'.
1780
1781
1782 _\bB_\bu_\bg_\bs
1783 The _\bb_\bu_\br_\bs_\bt program enforces a limit on the number of messages which
1784 may be _\bb_\bu_\br_\bs_\bt from a single message. This number is on the order of
1785 1000 messages. There is usually no limit on the number of messages
1786 which may reside in the folder after the _\bb_\bu_\br_\bs_\bting.
1787
1788 Although _\bb_\bu_\br_\bs_\bt uses a sophisticated algorithm to determine where
1789 one encapsulated message ends and another begins, not all digesti-
1790 fying programs use an encapsulation algorithm. In degenerate
1791 cases, this usually results in _\bb_\bu_\br_\bs_\bt finding an encapsulation boun-
1792 dary prematurely and splitting a single encapsulated message into
1793 two or more messages. These erroneous digestifying programs should
1794 be fixed.
1795
1796 Furthermore, any text which appears after the last encapsulated
1797 message is not placed in a seperate message by _\bb_\bu_\br_\bs_\bt. In the case
1798 of digestified messages, this text is usally an "End of digest"
1799 string. As a result of this possibly un-friendly behavior on the
1800 part of _\bb_\bu_\br_\bs_\bt, note that when the `-inplace' option is used, this
1801 trailing information is lost. In practice, this is not a problem
1802 since correspondents usually place remarks in text prior to the
1803 first encapsulated message, and this information is not lost.
1804
1805
1806
1807
1808
1809
1810
1811
1812
1813
1814 \e9
1815 \e9 [mh.6] MH.6.7 UCI version
1816
1817
1818
1819
1820
1821
1822
1823
1824
1825 COMP(1) -28- COMP(1)
1826
1827
1828 _\bN_\bA_\bM_\bE
1829 comp - compose a message
1830
1831 _\bS_\bY_\bN_\bO_\bP_\bS_\bI_\bS
1832 comp [+folder] [msg] [-draftfolder +folder] [-draftmessage msg]
1833 [-nodraftfolder] [-editor editor] [-noedit] [-file file]
1834 [-form formfile] [-use] [-nouse] [-whatnowproc program]
1835 [-nowhatnowproc] [-help]
1836
1837 _\bD_\bE_\bS_\bC_\bR_\bI_\bP_\bT_\bI_\bO_\bN
1838
1839 _\bC_\bo_\bm_\bp is used to create a new message to be mailed. It copies a
1840 message form to the draft being composed and then invokes an editor
1841 on the draft (unless `-noedit' is given, in which case the initial
1842 edit is suppressed).
1843
1844 The default message form contains the following elements:
1845
1846 To:
1847 cc:
1848 Subject:
1849 --------
1850
1851 If the file named "components" exists in the user's MH directory,
1852 it will be used instead of this form. The file specified by
1853 `-form formfile' will be used if given. You may also start _\bc_\bo_\bm_\bp
1854 using the contents of an existing message as the form. If you sup-
1855 ply either a `+folder' or `msg' argument, that message will be used
1856 as the form. You may not supply both a `-form formfile' and a
1857 `+folder' or `msg' argument. The line of dashes or a blank line
1858 must be left between the header and the body of the message for the
1859 message to be identified properly when it is sent (see _\bs_\be_\bn_\bd (1)).
1860 The switch `-use' directs _\bc_\bo_\bm_\bp to continue editing an already
1861 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
1862 terminated without sending the draft, the draft can be edited again
1863 via "comp -use".
1864
1865 If the draft already exists, _\bc_\bo_\bm_\bp will ask you as to the disposi-
1866 tion of the draft. A reply of quit will abort _\bc_\bo_\bm_\bp, leaving the
1867 draft intact; replace will replace the existing draft with the
1868 appropriate form; list will display the draft; use will use the
1869 draft for further composition; and refile +folder will file the
1870 draft in the given folder, and give you a new draft with the
1871 appropriate form. (The `+folder' argument to refile is required.)
1872
1873 The `-draftfolder +folder' and `-draftmessage msg' switches invoke
1874 the _\bM_\bH draft folder facility. This is an advanced (and highly use-
1875 ful) feature. Consult the Advanced Features section of the _\bM_\bH
1876 manual for more information.
1877
1878 The `-file file' switch says to use the named file as the message
1879 draft.
1880
1881 [mh.6] MH.6.7 UCI version
1882
1883
1884
1885
1886
1887
1888
1889
1890
1891 COMP(1) -29- COMP(1)
1892
1893
1894 The `-editor editor' switch indicates the editor to use for the
1895 initial edit. Upon exiting from the editor, _\bc_\bo_\bm_\bp will invoke the
1896 _\bw_\bh_\ba_\bt_\bn_\bo_\bw program. See _\bw_\bh_\ba_\bt_\bn_\bo_\bw (1) for a discussion of available
1897 options. The invocation of this program can be inhibited by using
1898 the `-nowhatnowproc' switch. (In truth of fact, it is the _\bw_\bh_\ba_\bt_\bn_\bo_\bw
1899 program which starts the initial edit. Hence, `-nowhatnowproc'
1900 will prevent any edit from occurring.)
1901
1902 _\bF_\bi_\bl_\be_\bs
1903 /usr/local/lib/mh/components The message skeleton
1904 or <mh-dir>/components Rather than the standard skeleton
1905 $HOME/.mh_profile The user profile
1906 <mh-dir>/draft The draft file
1907
1908
1909 _\bP_\br_\bo_\bf_\bi_\bl_\be _\bC_\bo_\bm_\bp_\bo_\bn_\be_\bn_\bt_\bs
1910 Path: To determine the user's MH directory
1911 Draft-Folder: To find the default draft-folder
1912 Editor: To override the default editor
1913 Msg-Protect: To set mode when creating a new message
1914 (draft)
1915 fileproc: Program to refile the message
1916 whatnowproc: Program to ask the "What now?" questions
1917
1918
1919 _\bS_\be_\be _\bA_\bl_\bs_\bo
1920 dist(1), forw(1), repl(1), send(1), whatnow(1), mh-profile(5)
1921
1922
1923 _\bD_\be_\bf_\ba_\bu_\bl_\bt_\bs
1924 `+folder' defaults to the current folder
1925 `msg' defaults to the current message
1926 `-nodraftfolder'
1927 `-nouse'
1928
1929
1930 _\bC_\bo_\bn_\bt_\be_\bx_\bt
1931 None
1932
1933
1934 _\bB_\bu_\bg_\bs
1935 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
1936 does not actually run the _\bw_\bh_\ba_\bt_\bn_\bo_\bw program. Hence, if you define
1937 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
1938 it.
1939
1940
1941
1942
1943
1944
1945 \e9
1946 \e9 [mh.6] MH.6.7 UCI version
1947
1948
1949
1950
1951
1952
1953
1954
1955
1956 DIST(1) -30- DIST(1)
1957
1958
1959 _\bN_\bA_\bM_\bE
1960 dist - redistribute a message to additional addresses
1961
1962 _\bS_\bY_\bN_\bO_\bP_\bS_\bI_\bS
1963 dist [+folder] [msg] [-annotate] [-noannotate]
1964 [-draftfolder +folder] [-draftmessage msg] [-nodraftfolder]
1965 [-editor editor] [-noedit] [-form formfile] [-inplace]
1966 [-noinplace] [-whatnowproc program] [-nowhatnowproc] [-help]
1967
1968 _\bD_\bE_\bS_\bC_\bR_\bI_\bP_\bT_\bI_\bO_\bN
1969
1970 _\bD_\bi_\bs_\bt is similar to _\bf_\bo_\br_\bw. It prepares the specified message for
1971 redistribution to addresses that (presumably) are not on the origi-
1972 nal address list.
1973
1974 The default message form contains the following elements:
1975
1976 Resent-To:
1977 Resent-cc:
1978
1979 If the file named "distcomps" exists in the user's MH directory, it
1980 will be used instead of this form. In either case, the file speci-
1981 fied by `-form formfile' will be used if given. The form used will
1982 be prepended to the message being resent.
1983
1984 If the draft already exists, _\bd_\bi_\bs_\bt will ask you as to the disposi-
1985 tion of the draft. A reply of quit will abort _\bd_\bi_\bs_\bt, leaving the
1986 draft intact; replace will replace the existing draft with a blank
1987 skeleton; and list will display the draft.
1988
1989 Only those addresses in "Resent-To:", "Resent-cc:", and
1990 "Resent-Bcc:" will be sent. Also, a "Resent-Fcc: folder" will be
1991 honored (see _\bs_\be_\bn_\bd (1)). Note that with _\bd_\bi_\bs_\bt, the draft should con-
1992 tain only "Resent-xxx:" fields and no body. The headers and the
1993 body of the original message are copied to the draft when the mes-
1994 sage is sent. Use care in constructing the headers for the redis-
1995 tribution.
1996
1997 If the `-annotate' switch is given, the message being distributed
1998 will be annotated with the lines:
1999
2000 Resent: date
2001 Resent: addrs
2002
2003 where each address list contains as many lines as required. This
2004 annotation will be done only if the message is sent directly from
2005 _\bd_\bi_\bs_\bt. If the message is not sent immediately from _\bd_\bi_\bs_\bt, "comp
2006 -use" may be used to re-edit and send the constructed message, but
2007 the annotations won't take place. The '-inplace' switch causes
2008 annotation to be done in place in order to preserve links to the
2009 annotated message.
2010 \e9
2011 \e9 [mh.6] MH.6.7 UCI version
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021 DIST(1) -31- DIST(1)
2022
2023
2024 See _\bc_\bo_\bm_\bp (1) for a description of the `-editor' and `-noedit'
2025 switches. Note that while in the editor, the message being resent
2026 is available through a link named "@" (assuming the default _\bw_\bh_\ba_\bt_\b-
2027 _\bn_\bo_\bw_\bp_\br_\bo_\bc ). In addition, the actual pathname of the message is
2028 stored in the envariable $editalt, and the pathname of the folder
2029 containing the message is stored in the envariable $mhfolder.
2030
2031 The `-draftfolder +folder' and `-draftmessage msg' switches invoke
2032 the _\bM_\bH draft folder facility. This is an advanced (and highly use-
2033 ful) feature. Consult the Advanced Features section of the _\bM_\bH
2034 manual for more information.
2035
2036 Upon exiting from the editor, _\bd_\bi_\bs_\bt will invoke the _\bw_\bh_\ba_\bt_\bn_\bo_\bw program.
2037 See _\bw_\bh_\ba_\bt_\bn_\bo_\bw (1) for a discussion of available options. The invoca-
2038 tion of this program can be inhibited by using the `-nowhatnowproc'
2039 switch. (In truth of fact, it is the _\bw_\bh_\ba_\bt_\bn_\bo_\bw program which starts
2040 the initial edit. Hence, `-nowhatnowproc' will prevent any edit
2041 from occurring.)
2042
2043 _\bF_\bi_\bl_\be_\bs
2044 /usr/local/lib/mh/distcomps The message skeleton
2045 or <mh-dir>/distcomps Rather than the standard skeleton
2046 $HOME/.mh_profile The user profile
2047 <mh-dir>/draft The draft file
2048
2049
2050 _\bP_\br_\bo_\bf_\bi_\bl_\be _\bC_\bo_\bm_\bp_\bo_\bn_\be_\bn_\bt_\bs
2051 Path: To determine the user's MH directory
2052 Current-Folder: To find the default current folder
2053 Draft-Folder: To find the default draft-folder
2054 Editor: To override the default editor
2055 fileproc: Program to refile the message
2056 whatnowproc: Program to ask the "What now?" questions
2057
2058
2059 _\bS_\be_\be _\bA_\bl_\bs_\bo
2060 comp(1), forw(1), repl(1), send(1), whatnow(1)
2061
2062
2063 _\bD_\be_\bf_\ba_\bu_\bl_\bt_\bs
2064 `+folder' defaults to the current folder
2065 `msg' defaults to cur
2066 `-noannotate'
2067 `-nodraftfolder'
2068 `-noinplace'
2069
2070
2071 _\bC_\bo_\bn_\bt_\be_\bx_\bt
2072 If a folder is given, it will become the current folder. The mes-
2073 sage distributed will become the current message.
2074
2075 \e9
2076 \e9 [mh.6] MH.6.7 UCI version
2077
2078
2079
2080
2081
2082
2083
2084
2085
2086 DIST(1) -32- DIST(1)
2087
2088
2089 _\bH_\bi_\bs_\bt_\bo_\br_\by
2090 _\bD_\bi_\bs_\bt originally used headers of the form "Distribute-xxx:" instead
2091 of "Resent-xxx:". In order to conform with the ARPA Internet stan-
2092 dard, RFC-822, the "Resent-xxx:" form is now used. _\bD_\bi_\bs_\bt will
2093 recognize "Distribute-xxx:" type headers and automatically convert
2094 them to "Resent-xxx:".
2095
2096
2097 _\bB_\bu_\bg_\bs
2098 _\bD_\bi_\bs_\bt does not _\br_\bi_\bg_\bo_\br_\bo_\bu_\bs_\bl_\by check the message being distributed for
2099 adherence to the transport standard, but _\bp_\bo_\bs_\bt called by _\bs_\be_\bn_\bd does.
2100 The _\bp_\bo_\bs_\bt program will balk (and rightly so) at poorly formatted
2101 messages, and _\bd_\bi_\bs_\bt won't correct things for you.
2102
2103 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
2104 does not actually run the _\bw_\bh_\ba_\bt_\bn_\bo_\bw program. Hence, if you define
2105 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
2106 it.
2107
2108 If your current working directory is not writable, the link named
2109 "@" is not available.
2110
2111
2112
2113
2114
2115
2116
2117
2118
2119
2120
2121
2122
2123
2124
2125
2126
2127
2128
2129
2130
2131
2132
2133
2134
2135
2136
2137
2138
2139
2140 \e9
2141 \e9 [mh.6] MH.6.7 UCI version
2142
2143
2144
2145
2146
2147
2148
2149
2150
2151 FOLDER(1) -33- FOLDER(1)
2152
2153
2154 _\bN_\bA_\bM_\bE
2155 folder, folders - set/list current folder/message
2156
2157 _\bS_\bY_\bN_\bO_\bP_\bS_\bI_\bS
2158 folder [+folder] [msg] [-all] [-fast] [-nofast] [-header]
2159 [-noheader] [-pack] [-nopack] [-recurse] [-norecurse] [-total]
2160 [-nototal] [-print] [-noprint] [-list] [-nolist] [-push]
2161 [-pop] [-help]
2162
2163 folders
2164
2165 _\bD_\bE_\bS_\bC_\bR_\bI_\bP_\bT_\bI_\bO_\bN
2166
2167 Since the _\bM_\bH environment is the shell, it is easy to lose track of
2168 the current folder from day to day.
2169
2170 When _\bf_\bo_\bl_\bd_\be_\br is given the `-print' switch (the default), the current
2171 folder and/or message may be set, or all folders may be listed.
2172 When a `+folder' argument is given, this corresponds to a "cd"
2173 operation in the _\bC_\bS_\bh_\be_\bl_\bl; when no `+folder' argument is given, this
2174 corresponds roughly to a "pwd" operation in the _\bC_\bS_\bh_\be_\bl_\bl.
2175
2176 _\bF_\bo_\bl_\bd_\be_\br will list the current folder, the number of messages in it,
2177 the range of the messages (low-high), and the current message
2178 within the folder, and will flag extra files if they exist. An
2179 example of the output is:
2180
2181 inbox+ has 16 messages ( 3- 22); cur= 5.
2182
2183 If a `+folder' and/or `msg' are specified, they will become the
2184 current folder and/or message. Specifying `-all' will produce a
2185 line for each folder in the user's MH directory, sorted alphabeti-
2186 cally. These folders are preceded by the read-only folders, which
2187 occur as "atr-cur-" entries in the user's _\bM_\bH context. For example,
2188
2189 Folder # of messages ( range ) cur msg (other files)
2190 /fsd/rs/m/tacc has 35 messages ( 1- 35); cur= 23.
2191 /rnd/phyl/Mail/EP has 82 messages ( 1-108); cur= 82.
2192 ff has no messages.
2193 inbox+ has 16 messages ( 3- 22); cur= 5.
2194 mh has 76 messages ( 1- 76); cur= 70.
2195 notes has 2 messages ( 1- 2); cur= 1.
2196 ucom has 124 messages ( 1-124); cur= 6; (others).
2197 TOTAL= 339 messages in 7 folders
2198
2199 The "+" after inbox indicates that it is the current folder. The
2200 "(others)" indicates that the folder `ucom' has files which aren't
2201 messages. These files may either be sub-folders, or files that
2202 don't belong under the MH file naming scheme.
2203
2204 The header is output if either an `-all' or a `-header' switch is
2205 specified; it is suppressed by `-noheader'. Also, if _\bf_\bo_\bl_\bd_\be_\br is
2206
2207 [mh.6] MH.6.7 UCI version
2208
2209
2210
2211
2212
2213
2214
2215
2216
2217 FOLDER(1) -34- FOLDER(1)
2218
2219
2220 invoked by a name ending with "s" (e.g., _\bf_\bo_\bl_\bd_\be_\br_\bs ), `-all' is
2221 assumed. A `-total' switch will produce only the summary line.
2222
2223 If a `+folder' and/or `msg' is given along with the `-all' switch,
2224 _\bf_\bo_\bl_\bd_\be_\br will, in addition to setting the current folder and/or mes-
2225 sage, list the top-level folders for the current folder (with
2226 `-norecurse') or list all folders under the current folder recur-
2227 sively (with `-recurse').
2228
2229 If `-fast' is given, only the folder name (or names in the case of
2230 `-all') will be listed. (This is faster because the folders need
2231 not be read.)
2232
2233 The `-pack' switch will compress the message names in a folder,
2234 removing holes in message numbering.
2235
2236 The `-recurse' switch will list each folder recursively. Use of
2237 this option effectively defeats the speed enhancement of the
2238 `-fast' option, since each folder must be searched for subfolders.
2239 Nevertheless, the combination of these options is useful.
2240
2241 If the specified (or default) folder doesn't exist, the user will
2242 be queried as to whether the folder should be created. When stan-
2243 dard input is not a tty, the folder is created without any query.
2244 (This is the easy way to create an empty folder for use later.)
2245
2246 The `-push' switch directs _\bf_\bo_\bl_\bd_\be_\br to push the current folder onto
2247 the _\bf_\bo_\bl_\bd_\be_\br-_\bs_\bt_\ba_\bc_\bk, and make the `+folder' argument the current
2248 folder. If `+folder' is not given, the current folder and the top
2249 of the _\bf_\bo_\bl_\bd_\be_\br-_\bs_\bt_\ba_\bc_\bk are exchanged. This corresponds to the "pushd"
2250 operation in the _\bC_\bS_\bh_\be_\bl_\bl.
2251
2252 The `-pop' switch directs _\bf_\bo_\bl_\bd_\be_\br to discard the top of the
2253 _\bf_\bo_\bl_\bd_\be_\br-_\bs_\bt_\ba_\bc_\bk, after setting the current folder to that value. No
2254 `+folder' argument is allowed. This corresponds to the "popd"
2255 operation in the _\bC_\bS_\bh_\be_\bl_\bl. The `-push' switch and the `-pop' switch
2256 are mutually exclusive: the last occurrence of either one overrides
2257 any previous occurrence of the other.
2258
2259 The `-list' switch directs _\bf_\bo_\bl_\bd_\be_\br to list the contents of the
2260 _\bf_\bo_\bl_\bd_\be_\br-_\bs_\bt_\ba_\bc_\bk. No `+folder' argument is allowed. After a success-
2261 ful `-push' or `-pop', the `-list' action is taken. This
2262 corresponds to the "dirs" operation in the _\bC_\bS_\bh_\be_\bl_\bl.
2263
2264 _\bF_\bi_\bl_\be_\bs
2265 $HOME/.mh_profile The user profile
2266
2267
2268
2269
2270
2271 \e9
2272 \e9 [mh.6] MH.6.7 UCI version
2273
2274
2275
2276
2277
2278
2279
2280
2281
2282 FOLDER(1) -35- FOLDER(1)
2283
2284
2285 _\bP_\br_\bo_\bf_\bi_\bl_\be _\bC_\bo_\bm_\bp_\bo_\bn_\be_\bn_\bt_\bs
2286 Path: To determine the user's MH directory
2287 Current-Folder: To find the default current folder
2288 Folder-Protect: To set mode when creating a new folder
2289 Folder-Stack: To determine the folder stack
2290 lsproc: Program to list the contents of a folder
2291
2292
2293 _\bS_\be_\be _\bA_\bl_\bs_\bo
2294 refile(1), mhpath(1)
2295
2296
2297 _\bD_\be_\bf_\ba_\bu_\bl_\bt_\bs
2298 `+folder' defaults to the current folder
2299 `msg' defaults to none
2300 `-nofast'
2301 `-noheader'
2302 `-nototal'
2303 `-nopack'
2304 `-norecurse'
2305 `-print' is the default if no `-list', `-push', or `-pop' is specified
2306
2307
2308 _\bC_\bo_\bn_\bt_\be_\bx_\bt
2309 If `+folder' and/or `msg' are given, they will become the current
2310 folder and/or message.
2311
2312
2313 _\bH_\bi_\bs_\bt_\bo_\br_\by
2314 In previous versions of _\bM_\bH, the `-fast' switch prevented context
2315 changes from occurring for the current folder. This is no longer
2316 the case: if `+folder' is given, then _\bf_\bo_\bl_\bd_\be_\br will always change the
2317 current folder to that.
2318
2319
2320
2321
2322
2323
2324
2325
2326
2327
2328
2329
2330
2331
2332
2333
2334
2335
2336 \e9
2337 \e9 [mh.6] MH.6.7 UCI version
2338
2339
2340
2341
2342
2343
2344
2345
2346
2347 FORW(1) -36- FORW(1)
2348
2349
2350 _\bN_\bA_\bM_\bE
2351 forw - forward messages
2352
2353 _\bS_\bY_\bN_\bO_\bP_\bS_\bI_\bS
2354 forw [+folder] [msgs] [-annotate] [-noannotate]
2355 [-draftfolder +folder] [-draftmessage msg] [-nodraftfolder]
2356 [-editor editor] [-noedit] [-filter filterfile]
2357 [-form formfile] [-format] [-noformat] [-inplace] [-noinplace]
2358 [-whatnowproc program] [-nowhatnowproc] [-help]
2359
2360 forw [+folder] [msgs] [-digest list] [-issue number]
2361 [-volume number] [other switches for _\bf_\bo_\br_\bw] [-help]
2362
2363 _\bD_\bE_\bS_\bC_\bR_\bI_\bP_\bT_\bI_\bO_\bN
2364
2365 _\bF_\bo_\br_\bw may be used to prepare a message containing other messages.
2366 It constructs the new message from the components file or
2367 `-form formfile' (see _\bc_\bo_\bm_\bp ), with a body composed of the
2368 message(s) to be forwarded. An editor is invoked as in _\bc_\bo_\bm_\bp, and
2369 after editing is complete, the user is prompted before the message
2370 is sent.
2371
2372 The default message form contains the following elements:
2373
2374 To:
2375 cc:
2376 Subject:
2377 --------
2378
2379 If the file named "forwcomps" exists in the user's MH directory, it
2380 will be used instead of this form. In either case, the file speci-
2381 fied by `-form formfile' will be used if given.
2382
2383 If the draft already exists, _\bf_\bo_\br_\bw will ask you as to the disposi-
2384 tion of the draft. A reply of quit will abort _\bf_\bo_\br_\bw, leaving the
2385 draft intact; replace will replace the existing draft with a blank
2386 skeleton; and list will display the draft.
2387
2388 If the `-annotate' switch is given, each message being forwarded
2389 will be annotated with the lines
2390
2391 Forwarded: date
2392 Forwarded: addrs
2393
2394 where each address list contains as many lines as required. This
2395 annotation will be done only if the message is sent directly from
2396 _\bf_\bo_\br_\bw. If the message is not sent immediately from _\bf_\bo_\br_\bw,
2397 "comp -use" may be used to re-edit and send the constructed mes-
2398 sage, but the annotations won't take place. The '-inplace' switch
2399 causes annotation to be done in place in order to preserve links to
2400 the annotated message.
2401 \e9
2402 \e9 [mh.6] MH.6.7 UCI version
2403
2404
2405
2406
2407
2408
2409
2410
2411
2412 FORW(1) -37- FORW(1)
2413
2414
2415 See _\bc_\bo_\bm_\bp (1) for a description of the `-editor' and `-noedit'
2416 switches.
2417
2418 Although _\bf_\bo_\br_\bw uses the `-form formfile' switch to direct it how to
2419 construct the beginning of the draft, the `-filter filterfile',
2420 `-format', and `-noformat' switches direct _\bf_\bo_\br_\bw as to how each for-
2421 warded message should be formatted in the body of the draft. If
2422 `-noformat' is specified, then each forwarded message is output
2423 exactly as it appears. If `-format' or `-filter filterfile' is
2424 specified, then each forwarded message is filtered (re-formatted)
2425 prior to being output to the body of the draft. The filter file
2426 for _\bf_\bo_\br_\bw should be a standard form file for _\bm_\bh_\bl, as _\bf_\bo_\br_\bw will
2427 invoke _\bm_\bh_\bl to format the forwarded messages. The default message
2428 filter (what you get with `-format') is:
2429
2430 width=80,overflowtext=,overflowoffset=10
2431 leftadjust,compress,compwidth=9
2432 Date:formatfield="%<(nodate{text})%{text}%|%(tws{text})%>"
2433 From:
2434 To:
2435 cc:
2436 Subject:
2437 :
2438 body:nocomponent,overflowoffset=0,noleftadjust,nocompress
2439
2440 If the file named "mhl.forward" exists in the user's MH directory,
2441 it will be used instead of this form. In either case, the file
2442 specified by `-filter filterfile' will be used if given. To sum-
2443 marize: `-noformat' will reproduce each forwarded message exactly,
2444 `-format' will use _\bm_\bh_\bl and a default filterfile, "mhl.forward", to
2445 format each forwarded message, and `-filter filterfile' will use
2446 the named filterfile to format each forwarded message with _\bm_\bh_\bl.
2447
2448 Each forwarded message is separated with an encapsulation delimiter
2449 and dashes in the first column of the forwarded messages will be
2450 prepended with `- ' so that when received, the message is suitable
2451 for bursting by _\bb_\bu_\br_\bs_\bt (1). This follows the Internet RFC-934
2452 guidelines.
2453
2454 For users of _\bp_\br_\bo_\bm_\bp_\bt_\be_\br (1), by specifying prompter's `-prepend'
2455 switch in the .mh_profile file, any commentary text is entered
2456 before the forwarded messages. (A major win!)
2457
2458 The `-draftfolder +folder' and `-draftmessage msg' switches invoke
2459 the _\bM_\bH draft folder facility. This is an advanced (and highly use-
2460 ful) feature. Consult the Advanced Features section of the _\bM_\bH
2461 manual for more information.
2462
2463 Upon exiting from the editor, _\bf_\bo_\br_\bw will invoke the _\bw_\bh_\ba_\bt_\bn_\bo_\bw program.
2464 See _\bw_\bh_\ba_\bt_\bn_\bo_\bw (1) for a discussion of available options. The invoca-
2465 tion of this program can be inhibited by using the `-nowhatnowproc'
2466 switch. (In truth of fact, it is the _\bw_\bh_\ba_\bt_\bn_\bo_\bw program which starts
2467
2468 [mh.6] MH.6.7 UCI version
2469
2470
2471
2472
2473
2474
2475
2476
2477
2478 FORW(1) -38- FORW(1)
2479
2480
2481 the initial edit. Hence, `-nowhatnowproc' will prevent any edit
2482 from occurring.)
2483
2484 The `-digest list', `-issue number', and `-volume number' switches
2485 implement a digest facility for _\bM_\bH. Specifying these switches
2486 enables and/or overloads the following escapes:
2487
2488 _\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
2489 _\bc_\bo_\bm_\bp_\bo_\bn_\be_\bn_\bt _\bd_\bi_\bg_\be_\bs_\bt string Argument to `-digest'
2490 _\bf_\bu_\bn_\bc_\bt_\bi_\bo_\bn _\bc_\bu_\br integer Argument to `-volume'
2491 _\bf_\bu_\bn_\bc_\bt_\bi_\bo_\bn _\bm_\bs_\bg integer Argument to `-issue'
2492
2493 Consult the Advanced Features section of the _\bM_\bH User's Manual for
2494 more information on making digests.
2495
2496 _\bF_\bi_\bl_\be_\bs
2497 /usr/local/lib/mh/forwcomps The message skeleton
2498 or <mh-dir>/forwcomps Rather than the standard skeleton
2499 /usr/local/lib/mh/digestcomps The message skeleton if `-digest' is given
2500 or <mh-dir>/digestcomps Rather than the standard skeleton
2501 /usr/local/lib/mh/mhl.forward The message filter
2502 or <mh-dir>/mhl.forward Rather than the standard filter
2503 $HOME/.mh_profile The user profile
2504 <mh-dir>/draft The draft file
2505
2506
2507 _\bP_\br_\bo_\bf_\bi_\bl_\be _\bC_\bo_\bm_\bp_\bo_\bn_\be_\bn_\bt_\bs
2508 Path: To determine the user's MH directory
2509 Current-Folder: To find the default current folder
2510 Draft-Folder: To find the default draft-folder
2511 Editor: To override the default editor
2512 Msg-Protect: To set mode when creating a new message
2513 (draft)
2514 fileproc: Program to refile the message
2515 mhlproc: Program to filter messages being forwarded
2516 whatnowproc: Program to ask the "What now?" questions
2517
2518
2519 _\bS_\be_\be _\bA_\bl_\bs_\bo
2520 _\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),
2521 comp(1), dist(1), repl(1), send(1), whatnow(1), mh-format(5)
2522
2523
2524 _\bD_\be_\bf_\ba_\bu_\bl_\bt_\bs
2525 `+folder' defaults to the current folder
2526 `msgs' defaults to cur
2527 `-noannotate'
2528 `-nodraftfolder'
2529 `-noformat'
2530 `-noinplace'
2531
2532 \e9
2533 \e9 [mh.6] MH.6.7 UCI version
2534
2535
2536
2537
2538
2539
2540
2541
2542
2543 FORW(1) -39- FORW(1)
2544
2545
2546 _\bC_\bo_\bn_\bt_\be_\bx_\bt
2547 If a folder is given, it will become the current folder. The first
2548 message forwarded will become the current message.
2549
2550
2551 _\bB_\bu_\bg_\bs
2552 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
2553 does not actually run the _\bw_\bh_\ba_\bt_\bn_\bo_\bw program. Hence, if you define
2554 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
2555 it.
2556
2557 When _\bf_\bo_\br_\bw is told to annotate the messages it forwards, it doesn't
2558 actually annotate them until the draft is successfully sent. If
2559 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
2560 confuse _\bf_\bo_\br_\bw by re-ordering the file (e.g., by using
2561 `folder -pack') before the message is successfully sent. _\bD_\bi_\bs_\bt and
2562 _\br_\be_\bp_\bl don't have this problem.
2563
2564 To avoid prepending the leading dash characters in forwarded mes-
2565 sages, there is a `-nodashmunging' option. See the "Hidden
2566 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.
2567
2568
2569
2570
2571
2572
2573
2574
2575
2576
2577
2578
2579
2580
2581
2582
2583
2584
2585
2586
2587
2588
2589
2590
2591
2592
2593
2594
2595
2596
2597 \e9
2598 \e9 [mh.6] MH.6.7 UCI version
2599
2600
2601
2602
2603
2604
2605
2606
2607
2608 INC(1) -40- INC(1)
2609
2610
2611 _\bN_\bA_\bM_\bE
2612 inc - incorporate new mail
2613
2614 _\bS_\bY_\bN_\bO_\bP_\bS_\bI_\bS
2615 inc [+folder] [-audit audit-file] [-noaudit] [-changecur]
2616 [-nochangecur] [-form formatfile] [-format string]
2617 [-file name] [-silent] [-nosilent] [-truncate] [-notruncate]
2618 [-width columns] [-host host] [-user user] [-pack file]
2619 [-nopack] [-rpop] [-norpop] [-help]
2620
2621 _\bD_\bE_\bS_\bC_\bR_\bI_\bP_\bT_\bI_\bO_\bN
2622
2623 _\bI_\bn_\bc incorporates mail from the user's incoming mail drop into an _\bM_\bH
2624 folder. If `+folder' isn't specified, the folder named "inbox" in
2625 the user's _\bM_\bH directory will be used. The new messages being
2626 incorporated are assigned numbers starting with the next highest
2627 number in the folder. If the specified (or default) folder doesn't
2628 exist, the user will be queried prior to its creation. As the mes-
2629 sages are processed, a _\bs_\bc_\ba_\bn listing of the new mail is produced.
2630
2631 If the user's profile contains a "Msg-Protect: nnn" entry, it will
2632 be used as the protection on the newly created messages, otherwise
2633 the _\bM_\bH default of 0644 will be used. During all operations on mes-
2634 sages, this initially assigned protection will be preserved for
2635 each message, so _\bc_\bh_\bm_\bo_\bd(1) may be used to set a protection on an
2636 individual message, and its protection will be preserved
2637 thereafter.
2638
2639 If the switch `-audit audit-file' is specified (usually as a
2640 default switch in the profile), then _\bi_\bn_\bc will append a header line
2641 and a line per message to the end of the specified audit-file with
2642 the format:
2643
2644 <<inc>> date
2645 <scan line for first message>
2646 <scan line for second message>
2647 <etc.>
2648
2649 This is useful for keeping track of volume and source of incoming
2650 mail. Eventually, _\br_\be_\bp_\bl, _\bf_\bo_\br_\bw, _\bc_\bo_\bm_\bp, and _\bd_\bi_\bs_\bt may also produce
2651 audits to this (or another) file, perhaps with "Message-Id:" infor-
2652 mation to keep an exact correspondence history. "Audit-file" will
2653 be in the user's MH directory unless a full path is specified.
2654
2655 _\bI_\bn_\bc will incorporate even improperly formatted messages into the
2656 user's MH folder, inserting a blank line prior to the offending
2657 component and printing a comment identifying the bad message.
2658
2659 In all cases, the user's mail drop will be zeroed, unless the
2660 `-notruncate' switch is given.
2661
2662 If the profile entry "Unseen-Sequence" is present and non-empty,
2663
2664 [mh.6] MH.6.7 UCI version
2665
2666
2667
2668
2669
2670
2671
2672
2673
2674 INC(1) -41- INC(1)
2675
2676
2677 then _\bi_\bn_\bc will add each of the newly incorporated messages to each
2678 sequence named by the profile entry. This is similar to the
2679 "Previous-Sequence" profile entry supported by all _\bM_\bH commands
2680 which take `msgs' or `msg' arguments. Note that _\bi_\bn_\bc will not zero
2681 each sequence prior to adding messages.
2682
2683 The interpretation of the `-form formatfile', `-format string', and
2684 `-width columns' switches is the same as in _\bs_\bc_\ba_\bn (1).
2685
2686 By using the `-file name' switch, one can direct _\bi_\bn_\bc to incorporate
2687 messages from a file other than the user's maildrop. Note that the
2688 name file will NOT be zeroed, unless the `-truncate' switch is
2689 given.
2690
2691 If the envariable $MAILDROP is set, then _\bi_\bn_\bc uses it as the loca-
2692 tion of the user's maildrop instead of the default (the `-
2693 file name' switch still overrides this, however). If this envari-
2694 able is not set, then _\bi_\bn_\bc will consult the profile entry "MailDrop"
2695 for this information. If the value found is not absolute, then it
2696 is interpreted relative to the user's _\bM_\bH directory. If the value
2697 is not found, then _\bi_\bn_\bc will look in the standard system location
2698 for the user's maildrop.
2699
2700 The `-silent' switch directs _\bi_\bn_\bc to be quiet and not ask any ques-
2701 tions at all. This is useful for putting _\bi_\bn_\bc in the background and
2702 going on to other things.
2703
2704 If the local host is configured as a POP client, or if the
2705 `-host host' switch is given, then _\bi_\bn_\bc will query the POP service
2706 host as to the status of mail waiting. The `-user user' switch may
2707 be given to specify the name of the POP subscriber you wish to
2708 check mail for on the POP service host. The `-rpop' switch uses
2709 the UNIX _\br_\bP_\bO_\bP (authentication done via trusted connections). In
2710 contrast, the `-norpop' switch uses the ARPA _\bP_\bO_\bP (in which case _\bi_\bn_\bc
2711 will prompt for a password).
2712
2713 If _\bi_\bn_\bc uses POP, then the `-pack file' switch is considered. If
2714 given, then _\bi_\bn_\bc simply uses the POP to _\bp_\ba_\bc_\bk_\bf (1) the user's mail-
2715 drop from the POP service host to the named file. This switch is
2716 provided for those users who prefer to use _\bm_\bs_\bh to read their mail-
2717 drops.
2718
2719 _\bF_\bi_\bl_\be_\bs
2720 $HOME/.mh_profile The user profile
2721 /usr/local/lib/mh/mtstailor tailor file
2722 /usr/spool/mail/$USER Location of mail drop
2723
2724
2725
2726
2727
2728 \e9
2729 \e9 [mh.6] MH.6.7 UCI version
2730
2731
2732
2733
2734
2735
2736
2737
2738
2739 INC(1) -42- INC(1)
2740
2741
2742 _\bP_\br_\bo_\bf_\bi_\bl_\be _\bC_\bo_\bm_\bp_\bo_\bn_\be_\bn_\bt_\bs
2743 Path: To determine the user's MH directory
2744 Alternate-Mailboxes: To determine the user's mailboxes
2745 Folder-Protect: To set mode when creating a new folder
2746 Msg-Protect: To set mode when creating a new message and
2747 audit-file
2748 Unseen-Sequence: To name sequences denoting unseen messages
2749
2750
2751 _\bS_\be_\be _\bA_\bl_\bs_\bo
2752 _\bP_\bo_\bs_\bt _\bO_\bf_\bf_\bi_\bc_\be _\bP_\br_\bo_\bt_\bo_\bc_\bo_\bl - _\bv_\be_\br_\bs_\bi_\bo_\bn _\b3 (aka RFC-1081),
2753 mhmail(1), scan(1), mh-mail(5), post(8)
2754
2755
2756 _\bD_\be_\bf_\ba_\bu_\bl_\bt_\bs
2757 `+folder' defaults to "inbox"
2758 `-noaudit'
2759 `-changecur'
2760 `-format' defaulted as described above
2761 `-nosilent'
2762 `-truncate' if `-file name' not given, `-notruncate' otherwise
2763 `-width' defaulted to the width of the terminal
2764 `-nopack'
2765 `-rpop'
2766
2767
2768 _\bC_\bo_\bn_\bt_\be_\bx_\bt
2769 The folder into which messages are being incorporated will become
2770 the current folder. The first message incorporated will become the
2771 current message, unless the `-nochangecur' option is specified.
2772 This leaves the context ready for a _\bs_\bh_\bo_\bw of the first new message.
2773
2774
2775 _\bB_\bu_\bg_\bs
2776 The argument to the `-format' switch must be interpreted as a sin-
2777 gle token by the shell that invokes _\bi_\bn_\bc. Therefore, one must usu-
2778 ally place the argument to this switch inside double-quotes.
2779
2780
2781
2782
2783
2784
2785
2786
2787
2788
2789
2790
2791
2792
2793 \e9
2794 \e9 [mh.6] MH.6.7 UCI version
2795
2796
2797
2798
2799
2800
2801
2802
2803
2804 MARK(1) -43- MARK(1)
2805
2806
2807 _\bN_\bA_\bM_\bE
2808 mark - mark messages
2809
2810 _\bS_\bY_\bN_\bO_\bP_\bS_\bI_\bS
2811 mark [+folder] [msgs] [-sequence name ...] [-add] [-delete] [-list]
2812 [-public] [-nopublic] [-zero] [-nozero] [-help]
2813
2814 _\bD_\bE_\bS_\bC_\bR_\bI_\bP_\bT_\bI_\bO_\bN
2815
2816 The _\bm_\ba_\br_\bk command manipulates message sequences by adding or delet-
2817 ing message numbers from folder-specific message sequences, or by
2818 listing those sequences and messages. A message sequence is a key-
2819 word, just like one of the "reserved" message names, such as
2820 "first" or "next". Unlike the "reserved" message names, which have
2821 a fixed semantics on a per-folder basis, the semantics of a message
2822 sequence may be defined, modified, and removed by the user. Mes-
2823 sage sequences are folder-specific, e.g., the sequence name "seen"
2824 in the context of folder "+inbox" need not have any relation what-
2825 soever to the sequence of the same name in a folder of a different
2826 name.
2827
2828 Three action switches direct the operation of _\bm_\ba_\br_\bk. These switches
2829 are mutually exclusive: the last occurrence of any of them over-
2830 rides any previous occurrence of the other two.
2831
2832 The `-add' switch tells _\bm_\ba_\br_\bk to add messages to sequences or to
2833 create a new sequence. For each sequence named via the
2834 `-sequence name' argument (which must occur at least once) the mes-
2835 sages named via `msgs' (which defaults to "cur" if no `msgs' are
2836 given), are added to the sequence. The messages to be added need
2837 not be absent from the sequence. If the `-zero' switch is speci-
2838 fied, the sequence will be emptied prior to adding the messages.
2839 Hence, `-add -zero' means that each sequence should be initialized
2840 to the indicated messages, while `-add -nozero' means that each
2841 sequence should be appended to by the indicated messages.
2842
2843 The `-delete' switch tells _\bm_\ba_\br_\bk to delete messages from sequences,
2844 and is the dual of `-add'. For each of the named sequences, the
2845 named messages are removed from the sequence. These messages need
2846 not be already present in the sequence. If the `-zero' switch is
2847 specified, then all messages in the folder are appended to the
2848 sequence prior to removing the messages. Hence, `-delete -zero'
2849 means that each sequence should contain all messages except those
2850 indicated, while `-delete -nozero' means that only the indicated
2851 messages should be removed from each sequence. As expected, the
2852 command `mark -sequence seen -delete all' deletes the sequence
2853 "seen" from the current folder.
2854
2855 When creating (or modifying) a sequence, the `-public' switch indi-
2856 cates that the sequence should be made readable for other _\bM_\bH users.
2857 In contrast, the `-nopublic' switch indicates that the sequence
2858 should be private to the user's _\bM_\bH environment.
2859
2860 [mh.6] MH.6.7 UCI version
2861
2862
2863
2864
2865
2866
2867
2868
2869
2870 MARK(1) -44- MARK(1)
2871
2872
2873 The `-list' switch tells _\bm_\ba_\br_\bk to list both the sequences defined
2874 for the folder and the messages associated with those sequences.
2875 _\bM_\ba_\br_\bk will list each sequence named via `-sequence name' (or all of
2876 them if `-sequence' isn't used), and the messages associated with
2877 that sequence. The `-zero' switch does not affect the operation of
2878 `-list'.
2879
2880 The current restrictions on sequences are:
2881
2882 The name used to denote a message sequence must consist of an
2883 alphabetic character followed by zero or more alphanumeric char-
2884 acters, and can not be one of the "reserved" message names (e.g.,
2885 "first", "cur", and so forth).
2886
2887 Only a certain number of sequences may be defined for a given
2888 folder. This number is usually limited to 10.
2889
2890 Message ranges with user-defined sequence names are restricted to
2891 the form "name:n" or "name:-n", and refer to the first or last
2892 `n' messages of the sequence `name', respectively. Constructs of
2893 the form "name1-name2" are forbidden.
2894
2895 _\bF_\bi_\bl_\be_\bs
2896 $HOME/.mh_profile The user profile
2897
2898
2899 _\bP_\br_\bo_\bf_\bi_\bl_\be _\bC_\bo_\bm_\bp_\bo_\bn_\be_\bn_\bt_\bs
2900 Path: To determine the user's MH directory
2901 Current-Folder: To find the default current folder
2902
2903
2904 _\bS_\be_\be _\bA_\bl_\bs_\bo
2905 pick (1)
2906
2907
2908 _\bD_\be_\bf_\ba_\bu_\bl_\bt_\bs
2909 `+folder' defaults to the current folder
2910 `-add' if `-sequence' is specified, `-list' otherwise
2911 `msgs' defaults to cur (or all if `-list' is specified)
2912 `-nopublic' if the folder is read-only, `-public' otherwise
2913 `-nozero'
2914
2915
2916 _\bC_\bo_\bn_\bt_\be_\bx_\bt
2917 If a folder is given, it will become the current folder.
2918
2919
2920
2921
2922
2923
2924 \e9
2925 \e9 [mh.6] MH.6.7 UCI version
2926
2927
2928
2929
2930
2931
2932
2933
2934
2935 MHL(1) -45- MHL(1)
2936
2937
2938 _\bN_\bA_\bM_\bE
2939 mhl - produce formatted listings of MH messages
2940
2941 _\bS_\bY_\bN_\bO_\bP_\bS_\bI_\bS
2942 /usr/local/lib/mh/mhl [-bell] [-nobell] [-clear] [-noclear]
2943 [-folder +folder] [-form formfile] [-length lines]
2944 [-width columns] [-moreproc program] [-nomoreproc] [files ...]
2945 [-help]
2946
2947 _\bD_\bE_\bS_\bC_\bR_\bI_\bP_\bT_\bI_\bO_\bN
2948
2949 _\bM_\bh_\bl is a formatted message listing program. It can be used as a
2950 replacement for _\bm_\bo_\br_\be (1) (the default _\bs_\bh_\bo_\bw_\bp_\br_\bo_\bc ). As with _\bm_\bo_\br_\be,
2951 each of the messages specified as arguments (or the standard input)
2952 will be output. If more than one message file is specified, the
2953 user will be prompted prior to each one, and a <RETURN> or <EOT>
2954 will begin the output, with <RETURN> clearing the screen (if
2955 appropriate), and <EOT> (usually CTRL-D) suppressing the screen
2956 clear. An <INTERRUPT> (usually CTRL-C) will abort the current mes-
2957 sage output, prompting for the next message (if there is one), and
2958 a <QUIT> (usually CTRL-\) will terminate the program (without core
2959 dump).
2960
2961 The `-bell' option tells _\bm_\bh_\bl to ring the terminal's bell at the end
2962 of each page, while the `-clear' option tells _\bm_\bh_\bl to clear the
2963 scree at the end of each page (or output a formfeed after each mes-
2964 sage). Both of these switches (and their inverse counterparts)
2965 take effect only if the profile entry _\bm_\bo_\br_\be_\bp_\br_\bo_\bc is defined but
2966 empty, and _\bm_\bh_\bl is outputting to a terminal. If the _\bm_\bo_\br_\be_\bp_\br_\bo_\bc entry
2967 is defined and non-empty, and _\bm_\bh_\bl is outputting to a terminal, then
2968 _\bm_\bh_\bl will cause the _\bm_\bo_\br_\be_\bp_\br_\bo_\bc to be placed between the terminal and
2969 _\bm_\bh_\bl and the switches are ignored. Furthermore, if the `-clear'
2970 switch is used and _\bm_\bh_\bl'_\bs output is directed to a terminal, then _\bm_\bh_\bl
2971 will consult the $TERM and $TERMCAP envariables to determine the
2972 user's terminal type in order to find out how to clear the screen.
2973 If the `-clear' switch is used and _\bm_\bh_\bl'_\bs output is not directed to
2974 a terminal (e.g., a pipe or a file), then _\bm_\bh_\bl will send a formfeed
2975 after each message.
2976
2977 To override the default _\bm_\bo_\br_\be_\bp_\br_\bo_\bc and the profile entry, use the
2978 `-moreproc program' switch. Note that _\bm_\bh_\bl will never start a
2979 _\bm_\bo_\br_\be_\bp_\br_\bo_\bc if invoked on a hardcopy terminal.
2980
2981 The `-length length' and `-width width' switches set the screen
2982 length and width, respectively. These default to the values indi-
2983 cated by $TERMCAP, if appropriate, otherwise they default to 40 and
2984 80, respectively.
2985
2986 The default format file used by _\bm_\bh_\bl is called _\bm_\bh_\bl._\bf_\bo_\br_\bm_\ba_\bt (which is
2987 first searched for in the user's _\bM_\bH directory, and then sought in
2988 the /_\bu_\bs_\br/_\bl_\bo_\bc_\ba_\bl/_\bl_\bi_\bb/_\bm_\bh directory), this can be changed by using the
2989 `-form formatfile' switch.
2990
2991 [mh.6] MH.6.7 UCI version
2992
2993
2994
2995
2996
2997
2998
2999
3000
3001 MHL(1) -46- MHL(1)
3002
3003
3004 Finally, the `-folder +folder' switch sets the _\bM_\bH folder name,
3005 which is used for the "messagename:" field described below. The
3006 envariable $mhfolder is consulted for the default value, which
3007 _\bs_\bh_\bo_\bw, _\bn_\be_\bx_\bt, and _\bp_\br_\be_\bv initialize appropriately.
3008
3009 _\bM_\bh_\bl operates in two phases: 1) read and parse the format file, and
3010 2) process each message (file). During phase 1, an internal
3011 description of the format is produced as a structured list. In
3012 phase 2, this list is walked for each message, outputting message
3013 information under the format constraints from the format file.
3014
3015 The "mhl.format" form file contains information controlling screen
3016 clearing, screen size, wrap-around control, transparent text, com-
3017 ponent ordering, and component formatting. Also, a list of com-
3018 ponents to ignore may be specified, and a couple of "special" com-
3019 ponents are defined to provide added functionality. Message output
3020 will be in the order specified by the order in the format file.
3021
3022 Each line of mhl.format has one of the formats:
3023
3024 ;comment
3025 :cleartext
3026 variable[,variable...]
3027 component:[variable,...]
3028
3029 A line beginning with a `;' is a comment, and is ignored. A line
3030 beginning with a `:' is clear text, and is output exactly as is. A
3031 line containing only a `:' produces a blank line in the output. A
3032 line beginning with "component:" defines the format for the speci-
3033 fied component, and finally, remaining lines define the global
3034 environment.
3035
3036 For example, the line:
3037
3038 width=80,length=40,clearscreen,overflowtext="***",overflowoffset=5
3039
3040 defines the screen size to be 80 columns by 40 rows, specifies that
3041 the screen should be cleared prior to each page, that the overflow
3042 indentation is 5, and that overflow text should be flagged with
3043 "***".
3044
3045 Following are all of the current variables and their arguments. If
3046 they follow a component, they apply only to that component, other-
3047 wise, their affect is global. Since the whole format is parsed
3048 before any output processing, the last global switch setting for a
3049 variable applies to the whole message if that variable is used in a
3050 global context (i.e., bell, clearscreen, width, length).
3051
3052 _\bv_\ba_\br_\bi_\ba_\bb_\bl_\be _\bt_\by_\bp_\be _\bs_\be_\bm_\ba_\bn_\bt_\bi_\bc_\bs
3053 width integer screen width or component width
3054 length integer screen length or component length
3055 offset integer positions to indent "component: "
3056
3057 [mh.6] MH.6.7 UCI version
3058
3059
3060
3061
3062
3063
3064
3065
3066
3067 MHL(1) -47- MHL(1)
3068
3069
3070 overflowtext string text to use at the beginning of an
3071 overflow line
3072 overflowoffset integer positions to indent overflow lines
3073 compwidth integer positions to indent component text
3074 after the first line is output
3075 uppercase flag output text of this component in all
3076 upper case
3077 nouppercase flag don't uppercase
3078 clearscreen flag/G clear the screen prior to each page
3079 noclearscreen flag/G don't clearscreen
3080 bell flag/G ring the bell at the end of each page
3081 nobell flag/G don't bell
3082 component string/L name to use instead of "component" for
3083 this component
3084 nocomponent flag don't output "component: " for this
3085 component
3086 center flag center component on line (works for
3087 one-line components only)
3088 nocenter flag don't center
3089 leftadjust flag strip off leading whitespace on each
3090 line of text
3091 noleftadjust flag don't leftadjust
3092 compress flag change newlines in text to spaces
3093 nocompress flag don't compress
3094 split flag don't combine multiple fields into a single field
3095 nosplit flag combine multiple fields into a single field
3096 formatfield string format string for this component (see below)
3097 addrfield flag field contains addresses
3098 datefield flag field contains dates
3099
3100 To specify the value of integer-valued and string-valued variables,
3101 follow their name with an equals-sign and the value.
3102 Integer-valued variables are given decimal values, while
3103 string-valued variables are given arbirtray text bracketed by
3104 double-quotes. If a value is suffixed by "/G" or "/L", then its
3105 value is useful in a global-only or local-only context (respec-
3106 tively).
3107
3108 A line of the form:
3109
3110 ignores=component,...
3111
3112 specifies a list of components which are never output.
3113
3114 The component "MessageName" (case-insensitive) will output the
3115 actual message name (file name) preceded by the folder name if one
3116 is specified or found in the environment. The format is identical
3117 to that produced by the `-header' option to _\bs_\bh_\bo_\bw.
3118
3119 The component "Extras" will output all of the components of the
3120 message which were not matched by explicit components, or included
3121 in the ignore list. If this component is not specified, an ignore
3122
3123 [mh.6] MH.6.7 UCI version
3124
3125
3126
3127
3128
3129
3130
3131
3132
3133 MHL(1) -48- MHL(1)
3134
3135
3136 list is not needed since all non-specified components will be
3137 ignored.
3138
3139 If "nocomponent" is NOT specified, then the component name will be
3140 output as it appears in the format file.
3141
3142 The default format is:
3143
3144 : -- using template mhl.format --
3145 overflowtext="***",overflowoffset=5
3146 leftadjust,compwidth=9
3147 ignores=msgid,message-id,received
3148 Date:formatfield="%<(nodate{text})%{text}%|%(pretty{text})%>"
3149 To:
3150 cc:
3151 :
3152 From:
3153 Subject:
3154 :
3155 extras:nocomponent
3156 :
3157 body:nocomponent,overflowtext=,overflowoffset=0,noleftadjust
3158
3159 The variable "formatfield" specifies a format string (see
3160 _\bm_\bh-_\bf_\bo_\br_\bm_\ba_\bt (5)). The flag variables "addrfield" and "datefield"
3161 (which are mutually exclusive), tell _\bm_\bh_\bl to interpret the escapes
3162 in the format string as either addresses or dates, respectively.
3163
3164 By default, _\bm_\bh_\bl does not apply any formatting string to fields con-
3165 taining address or dates (see _\bm_\bh-_\bm_\ba_\bi_\bl (5) for a list of these
3166 fields). Note that this results in faster operation since _\bm_\bh_\bl must
3167 parse both addresses and dates in order to apply a format string to
3168 them. If desired, _\bm_\bh_\bl can be given a default format string for
3169 either address or date fields (but not both). To do this, on a
3170 global line specify: either the flag addrfield or datefield, along
3171 with the apropriate formatfield variable string.
3172
3173 _\bF_\bi_\bl_\be_\bs
3174 /usr/local/lib/mh/mhl.format The message template
3175 or <mh-dir>/mhl.format Rather than the standard template
3176 $HOME/.mh_profile The user profile
3177
3178
3179 _\bP_\br_\bo_\bf_\bi_\bl_\be _\bC_\bo_\bm_\bp_\bo_\bn_\be_\bn_\bt_\bs
3180 moreproc: Program to use as interactive front-end
3181
3182
3183 _\bS_\be_\be _\bA_\bl_\bs_\bo
3184 show(1), ap(8), dp(8)
3185
3186
3187 \e9
3188 \e9 [mh.6] MH.6.7 UCI version
3189
3190
3191
3192
3193
3194
3195
3196
3197
3198 MHL(1) -49- MHL(1)
3199
3200
3201 _\bD_\be_\bf_\ba_\bu_\bl_\bt_\bs
3202 `-bell'
3203 `-noclear'
3204 `-length 40'
3205 `-width 80'
3206
3207
3208 _\bC_\bo_\bn_\bt_\be_\bx_\bt
3209 None
3210
3211
3212 _\bB_\bu_\bg_\bs
3213 There should be some way to pass `bell' and `clear' information to
3214 the front-end.
3215
3216 On hosts where _\bM_\bH was configured with the BERK option, address
3217 parsing is not enabled.
3218
3219
3220
3221
3222
3223
3224
3225
3226
3227
3228
3229
3230
3231
3232
3233
3234
3235
3236
3237
3238
3239
3240
3241
3242
3243
3244
3245
3246
3247
3248
3249
3250
3251
3252 \e9
3253 \e9 [mh.6] MH.6.7 UCI version
3254
3255
3256
3257
3258
3259
3260
3261
3262
3263 MHMAIL(1) -50- MHMAIL(1)
3264
3265
3266 _\bN_\bA_\bM_\bE
3267 mhmail - send or read mail
3268
3269 _\bS_\bY_\bN_\bO_\bP_\bS_\bI_\bS
3270 mhmail [ addrs ... [-body text] [-cc addrs ...] [-from addr]
3271 [-subject subject]] [-help]
3272
3273 _\bD_\bE_\bS_\bC_\bR_\bI_\bP_\bT_\bI_\bO_\bN
3274
3275 _\bM_\bH_\bm_\ba_\bi_\bl is intended as a replacement for the standard Bell mail pro-
3276 gram (_\bb_\be_\bl_\bl_\bm_\ba_\bi_\bl (1)), compatible with _\bM_\bH. When invoked without
3277 arguments, it simply invokes _\bi_\bn_\bc (1) to incorporate new messages
3278 from the user's maildrop. When one or more users is specified, a
3279 message is read from the standard input and spooled to a temporary
3280 file. _\bM_\bH_\bm_\ba_\bi_\bl then invokes _\bp_\bo_\bs_\bt (8) with the name of the temporary
3281 file as its argument to deliver the message to the specified user.
3282
3283 The `-subject subject' switch can be used to specify the "Subject:"
3284 field of the message. The `-body text' switch can be used to
3285 specify the text of the message; if it is specified, then the stan-
3286 dard input is not read. Normally, addresses appearing as arguments
3287 are put in the "To:" field. If the `-cc' switch is used, all
3288 addresses following it are placed in the "cc:" field.
3289
3290 By using `-from addr', you can specify the "From:" header of the
3291 draft. Naturally, _\bp_\bo_\bs_\bt will fill-in the "Sender:" header
3292 correctly.
3293
3294 This program is intended for the use of programs such as _\ba_\bt (1),
3295 which expect to send mail automatically to various users. Nor-
3296 mally, real people (as opposed to the "unreal" ones) will prefer to
3297 use _\bc_\bo_\bm_\bp (1) and _\bs_\be_\bn_\bd (1) to send messages.
3298
3299 _\bF_\bi_\bl_\be_\bs
3300 /usr/local/inc Program to incorporate a maildrop into a folder
3301 /usr/local/lib/mh/post Program to deliver a message
3302 /tmp/mhmail* Temporary copy of message
3303
3304
3305 _\bP_\br_\bo_\bf_\bi_\bl_\be _\bC_\bo_\bm_\bp_\bo_\bn_\be_\bn_\bt_\bs
3306 None
3307
3308
3309 _\bS_\be_\be _\bA_\bl_\bs_\bo
3310 inc(1), post(8)
3311
3312
3313 _\bD_\be_\bf_\ba_\bu_\bl_\bt_\bs
3314 None
3315
3316
3317 \e9
3318 \e9 [mh.6] MH.6.7 UCI version
3319
3320
3321
3322
3323
3324
3325
3326
3327
3328 MHMAIL(1) -51- MHMAIL(1)
3329
3330
3331 _\bC_\bo_\bn_\bt_\be_\bx_\bt
3332 If _\bi_\bn_\bc is invoked, then _\bi_\bn_\bc's context changes occur.
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
3362
3363
3364
3365
3366
3367
3368
3369
3370
3371
3372
3373
3374
3375
3376
3377
3378
3379
3380
3381
3382 \e9
3383 \e9 [mh.6] MH.6.7 UCI version
3384
3385
3386
3387
3388
3389
3390
3391
3392
3393 MHOOK(1) -52- MHOOK(1)
3394
3395
3396 _\bN_\bA_\bM_\bE
3397 mhook - MH receive-mail hooks
3398
3399 _\bS_\bY_\bN_\bO_\bP_\bS_\bI_\bS
3400 $HOME/.maildelivery
3401
3402 /usr/local/lib/mh/rcvdist [-form formfile] [switches for _\bp_\bo_\bs_\bt_\bp_\br_\bo_\bc]
3403 address ... [-help]
3404
3405 /usr/local/lib/mh/rcvpack file [-help]
3406
3407 /usr/local/lib/mh/rcvtty [command] [-form formatfile]
3408 [-format string] [-bell] [-nobell] [-newline] [-nonewline]
3409 [-biff] [-help]
3410
3411 _\bD_\bE_\bS_\bC_\bR_\bI_\bP_\bT_\bI_\bO_\bN
3412
3413 A receive-mail hook is a program that is run whenever you receive a
3414 mail message. You do NOT invoke the hook yourself, rather the hook
3415 is invoked on your behalf by _\bM_\bM_\bD_\bF.
3416
3417 The ._\bm_\ba_\bi_\bl_\bd_\be_\bl_\bi_\bv_\be_\br_\by file, which is an ordinary ASCII file, controls
3418 how local delivery is performed. This file is read by the local
3419 channel. See _\bm_\ba_\bi_\bl_\bd_\be_\bl_\bi_\bv_\be_\br_\by (5) for the details.
3420
3421 Four programs are currently standardly available, _\br_\bc_\bv_\bd_\bi_\bs_\bt (redis-
3422 tribute incoming messages to additional recipients), _\br_\bc_\bv_\bp_\ba_\bc_\bk (save
3423 incoming messages in a _\bp_\ba_\bc_\bk_\bf'd file), and _\br_\bc_\bv_\bt_\bt_\by (notify user of
3424 incoming messages). The fourth program, _\br_\bc_\bv_\bs_\bt_\bo_\br_\be (1) is described
3425 separately. They all reside in the /_\bu_\bs_\br/_\bl_\bo_\bc_\ba_\bl/_\bl_\bi_\bb/_\bm_\bh/ directory.
3426
3427 The _\br_\bc_\bv_\bd_\bi_\bs_\bt program will resend a copy of the message to all of the
3428 addresses listed on its command line. It uses the format string
3429 facility described in _\bm_\bh-_\bf_\bo_\br_\bm_\ba_\bt (5).
3430
3431 The _\br_\bc_\bv_\bp_\ba_\bc_\bk program will append a copy of the message to the file
3432 listed on its command line. Its use is obsoleted by the ._\bm_\ba_\bi_\bl_\b-
3433 _\bd_\be_\bl_\bi_\bv_\be_\br_\by.
3434
3435 The _\br_\bc_\bv_\bt_\bt_\by program executes the named file with the message as its
3436 standard input, and writes the resulting output on your terminal.
3437
3438 If no file is specified, or is bogus, etc., then _\br_\bc_\bv_\bt_\bt_\by will
3439 instead write a one-line scan listing. Either the
3440 `-form formatfile' or `-format string' option may be used to over-
3441 ride the default output format (see _\bm_\bh-_\bf_\bo_\br_\bm_\ba_\bt (5)). A newline is
3442 output before the message output, and the terminal bell is rung
3443 after the output. The `-nonewline' and `-nobell' options will
3444 inhibit these functions.
3445
3446 Normally, _\br_\bc_\bv_\bt_\bt_\by obeys write permission as granted by _\bm_\be_\bs_\bg (1).
3447 With the `-biff' option, _\br_\bc_\bv_\bt_\bt_\by will obey the notification status
3448
3449 [mh.6] MH.6.7 UCI version
3450
3451
3452
3453
3454
3455
3456
3457
3458
3459 MHOOK(1) -53- MHOOK(1)
3460
3461
3462 set by _\bb_\bi_\bf_\bf (1). If the terminal access daemon (TTYD) is available
3463 on your system, then _\br_\bc_\bv_\bt_\bt_\by will give its output to the daemon for
3464 output instead of writing on the user's terminal.
3465
3466 _\bF_\bi_\bl_\be_\bs
3467 /usr/local/lib/mh/mtstailor tailor file
3468 $HOME/.maildelivery The file controlling local delivery
3469 /usr/local/lib/mh/maildelivery Rather than the standard file
3470
3471
3472 _\bS_\be_\be _\bA_\bl_\bs_\bo
3473 rcvstore (1), maildelivery(5), mh-format(5)
3474
3475
3476 _\bC_\bo_\bn_\bt_\be_\bx_\bt
3477 None
3478
3479
3480 _\bB_\bu_\bg_\bs
3481 Only two return codes are meaningful, others should be.
3482
3483 Versions of _\bM_\bM_\bD_\bF with the _\bm_\ba_\bi_\bl_\bd_\be_\bl_\bi_\bv_\be_\br_\by mechanism aren't entirely
3484 backwards-compatible with earlier versions. If you have an
3485 old-style hook, the best you can do is to have a one-line ._\bm_\ba_\bi_\bl-
3486 _\bd_\be_\bl_\bi_\bv_\be_\br_\by file:
3487
3488 default - pipe A "bin/rcvmail $(address) $(info) $(sender)"
3489
3490
3491
3492
3493
3494
3495
3496
3497
3498
3499
3500
3501
3502
3503
3504
3505
3506
3507
3508
3509
3510
3511
3512
3513 \e9
3514 \e9 [mh.6] MH.6.7 UCI version
3515
3516
3517
3518
3519
3520
3521
3522
3523
3524 MHPATH(1) -54- MHPATH(1)
3525
3526
3527 _\bN_\bA_\bM_\bE
3528 mhpath - print full pathnames of MH messages and folders
3529
3530 _\bS_\bY_\bN_\bO_\bP_\bS_\bI_\bS
3531 mhpath [+folder] [msgs] [-help]
3532
3533 _\bD_\bE_\bS_\bC_\bR_\bI_\bP_\bT_\bI_\bO_\bN
3534
3535 _\bM_\bh_\bp_\ba_\bt_\bh expands and sorts the message list `msgs' and writes the
3536 full pathnames of the messages to the standard output separated by
3537 newlines. If no `msgs' are specified, _\bm_\bh_\bp_\ba_\bt_\bh outputs the folder
3538 pathname instead. If the only argument is `+', your MH _\bP_\ba_\bt_\bh is
3539 output; this can be useful is shell scripts.
3540
3541 Contrasted with other MH commands, a message argument to _\bm_\bh_\bp_\ba_\bt_\bh may
3542 often be intended for _\bw_\br_\bi_\bt_\bi_\bn_\bg. Because of this: 1) the name "new"
3543 has been added to _\bm_\bh_\bp_\ba_\bt_\bh's list of reserved message names (the oth-
3544 ers are "first", "last", "prev", "next", "cur", and "all"). The
3545 new message is equivalent to the message after the last message in
3546 a folder (and equivalent to 1 in a folder without messages). The
3547 "new" message may not be used as part of a message range. 2)
3548 Within a message list, the following designations may refer to mes-
3549 sages that do not exist: a single numeric message name, the single
3550 message name "cur", and (obviously) the single message name "new".
3551 All other message designations must refer to at least one existing
3552 message. 3) An empty folder is not in itself an error.
3553
3554 Message numbers greater than the highest existing message in a
3555 folder as part of a range designation are replaced with the next
3556 free message number.
3557
3558 Examples: The current folder foo contains messages 3 5 6. Cur is
3559 4.
3560
3561 % mhpath
3562 /r/phyl/Mail/foo
3563
3564 % mhpath all
3565 /r/phyl/Mail/foo/3
3566 /r/phyl/Mail/foo/5
3567 /r/phyl/Mail/foo/6
3568
3569 % mhpath 2001
3570 /r/phyl/Mail/foo/7
3571
3572 % mhpath 1-2001
3573 /r/phyl/Mail/foo/3
3574 /r/phyl/Mail/foo/5
3575 /r/phyl/Mail/foo/6
3576
3577 % mhpath new
3578 /r/phyl/Mail/foo/7
3579
3580 [mh.6] MH.6.7 UCI version
3581
3582
3583
3584
3585
3586
3587
3588
3589
3590 MHPATH(1) -55- MHPATH(1)
3591
3592
3593 % mhpath last new
3594 /r/phyl/Mail/foo/6
3595 /r/phyl/Mail/foo/7
3596
3597 % mhpath last-new
3598 bad message list "last-new".
3599
3600 % mhpath cur
3601 /r/phyl/Mail/foo/4
3602
3603 % mhpath 1-2
3604 no messages in range "1-2".
3605
3606 % mhpath first:2
3607 /r/phyl/Mail/foo/3
3608 /r/phyl/Mail/foo/5
3609
3610 % mhpath 1 2
3611 /r/phyl/Mail/foo/1
3612 /r/phyl/Mail/foo/2
3613
3614 _\bM_\bH_\bp_\ba_\bt_\bh is also useful in back-quoted operations:
3615
3616 % cd `mhpath +inbox`
3617
3618 % echo `mhpath +`
3619 /r/phyl/Mail
3620
3621 _\bF_\bi_\bl_\be_\bs
3622 $HOME/.mh_profile The user profile
3623
3624
3625 _\bP_\br_\bo_\bf_\bi_\bl_\be _\bC_\bo_\bm_\bp_\bo_\bn_\be_\bn_\bt_\bs
3626 Path: To determine the user's MH directory
3627 Current-Folder: To find the default current folder
3628
3629
3630 _\bS_\be_\be _\bA_\bl_\bs_\bo
3631 folder(1)
3632
3633
3634 _\bD_\be_\bf_\ba_\bu_\bl_\bt_\bs
3635 `+folder' defaults to the current folder
3636 `msgs' defaults to none
3637
3638
3639 _\bC_\bo_\bn_\bt_\be_\bx_\bt
3640 None
3641
3642
3643
3644 \e9
3645 \e9 [mh.6] MH.6.7 UCI version
3646
3647
3648
3649
3650
3651
3652
3653
3654
3655 MHPATH(1) -56- MHPATH(1)
3656
3657
3658 _\bB_\bu_\bg_\bs
3659 Like all MH commands, _\bm_\bh_\bp_\ba_\bt_\bh expands and sorts [msgs]. So don't
3660 expect
3661
3662 mv `mhpath 501 500`
3663
3664 to move 501 to 500. Quite the reverse. But
3665
3666 mv `mhpath 501` `mhpath 500`
3667
3668 will do the trick.
3669
3670 Out of range message 0 is treated far more severely than large out
3671 of range message numbers.
3672
3673
3674
3675
3676
3677
3678
3679
3680
3681
3682
3683
3684
3685
3686
3687
3688
3689
3690
3691
3692
3693
3694
3695
3696
3697
3698
3699
3700
3701
3702
3703
3704
3705
3706
3707
3708
3709 \e9
3710 \e9 [mh.6] MH.6.7 UCI version
3711
3712
3713
3714
3715
3716
3717
3718
3719
3720 MSGCHK(1) -57- MSGCHK(1)
3721
3722
3723 _\bN_\bA_\bM_\bE
3724 msgchk - check for messages
3725
3726 _\bS_\bY_\bN_\bO_\bP_\bS_\bI_\bS
3727 msgchk [-date] [-nodate] [-notify all/mail/nomail]
3728 [-nonotify all/mail/nomail] [-host host] [-user user] [-rpop]
3729 [-norpop] [users ...] [-help]
3730
3731 _\bD_\bE_\bS_\bC_\bR_\bI_\bP_\bT_\bI_\bO_\bN
3732
3733 The _\bm_\bs_\bg_\bc_\bh_\bk program checks all known mail drops for mail waiting for
3734 you. For those drops which have mail for you, _\bm_\bs_\bg_\bc_\bh_\bk will indicate
3735 if it believes that you have seen the mail in question before.
3736
3737 The `-notify type' switch indicates under what circumstances _\bm_\bs_\bg_\bc_\bh_\bk
3738 should produce a message. The default is `-notify all' which says
3739 that _\bm_\bs_\bg_\bc_\bh_\bk should always report the status of the users maildrop.
3740 Other values for `type' include `mail' which says that _\bm_\bs_\bg_\bc_\bh_\bk
3741 should report the status of waiting mail; and, `nomail' which says
3742 that _\bm_\bs_\bg_\bc_\bh_\bk should report the status of empty maildrops. The
3743 `-nonotify type' switch has the inverted sense, so `-nonotify all'
3744 directs _\bm_\bs_\bg_\bc_\bh_\bk to never report the status of maildrops. This is
3745 useful if the user wishes to check _\bm_\bs_\bg_\bc_\bh_\bk's exit status. A
3746 non-zero exit status indicates that mail was not waiting for at
3747 least one of the indicated users.
3748
3749 If _\bm_\bs_\bg_\bc_\bh_\bk produces output, then the `-date' switch directs _\bm_\bs_\bg_\bc_\bh_\bk
3750 to print out the last date mail was read, if this can be deter-
3751 mined.
3752
3753 If the local host is configured as a POP client, or if the
3754 `-host host' switch is given, _\bm_\bs_\bg_\bc_\bh_\bk will query the POP service
3755 host as to the status of mail waiting. The `-user user' switch may
3756 be given to specify the name of the POP subscriber you wish to
3757 check mail for on the POP service host. The `-rpop' switch uses
3758 the UNIX _\br_\bP_\bO_\bP (authentication done via trusted connections). In
3759 contrast, the `-norpop' switch uses the ARPA _\bP_\bO_\bP (in which case
3760 _\bm_\bs_\bg_\bc_\bh_\bk will prompt for a password).
3761
3762 _\bF_\bi_\bl_\be_\bs
3763 $HOME/.mh_profile The user profile
3764 /usr/local/lib/mh/mtstailor tailor file
3765 /usr/spool/mail/$USER Location of mail drop
3766
3767
3768 _\bP_\br_\bo_\bf_\bi_\bl_\be _\bC_\bo_\bm_\bp_\bo_\bn_\be_\bn_\bt_\bs
3769 None
3770
3771
3772
3773
3774 \e9
3775 \e9 [mh.6] MH.6.7 UCI version
3776
3777
3778
3779
3780
3781
3782
3783
3784
3785 MSGCHK(1) -58- MSGCHK(1)
3786
3787
3788 _\bS_\be_\be _\bA_\bl_\bs_\bo
3789 _\bP_\bo_\bs_\bt _\bO_\bf_\bf_\bi_\bc_\be _\bP_\br_\bo_\bt_\bo_\bc_\bo_\bl - _\bv_\be_\br_\bs_\bi_\bo_\bn _\b3 (aka RFC-1081),
3790 inc(1)
3791
3792
3793 _\bD_\be_\bf_\ba_\bu_\bl_\bt_\bs
3794 `user' defaults to the current user
3795 `-date'
3796 `-notify all'
3797 `-rpop'
3798
3799
3800 _\bC_\bo_\bn_\bt_\be_\bx_\bt
3801 None
3802
3803
3804
3805
3806
3807
3808
3809
3810
3811
3812
3813
3814
3815
3816
3817
3818
3819
3820
3821
3822
3823
3824
3825
3826
3827
3828
3829
3830
3831
3832
3833
3834
3835
3836
3837
3838
3839 \e9
3840 \e9 [mh.6] MH.6.7 UCI version
3841
3842
3843
3844
3845
3846
3847
3848
3849
3850 MSH(1) -59- MSH(1)
3851
3852
3853 _\bN_\bA_\bM_\bE
3854 msh - MH shell (and BBoard reader)
3855
3856 _\bS_\bY_\bN_\bO_\bP_\bS_\bI_\bS
3857 msh [-prompt string] [-scan] [-noscan] [-topcur] [-notopcur] [file]
3858 [-help]
3859
3860 _\bD_\bE_\bS_\bC_\bR_\bI_\bP_\bT_\bI_\bO_\bN
3861
3862 _\bm_\bs_\bh is an interactive program that implements a subset of the nor-
3863 mal _\bM_\bH commands operating on a single file in _\bp_\ba_\bc_\bk_\bf'd format. That
3864 is, _\bm_\bs_\bh is used to read a file that contains a number of messages,
3865 as opposed to the standard _\bM_\bH style of reading a number of files,
3866 each file being a separate message in a folder. _\bm_\bs_\bh's chief advan-
3867 tage is that the normal _\bM_\bH style does not allow a file to have more
3868 than one message in it. Hence, _\bm_\bs_\bh is ideal for reading _\bB_\bB_\bo_\ba_\br_\bd_\bs,
3869 as these files are delivered by the transport system in this for-
3870 mat. In addition, _\bm_\bs_\bh can be used on other files, such as message
3871 archives which have been _\bp_\ba_\bc_\bked (see _\bp_\ba_\bc_\bk_\bf (1)). Finally, _\bm_\bs_\bh is
3872 an excellent _\bM_\bH tutor. As the only commands available to the user
3873 are _\bM_\bH commands, this allows _\bM_\bH beginners to concentrate on how
3874 commands to _\bM_\bH are formed and (more or less) what they mean.
3875
3876 When invoked, _\bm_\bs_\bh reads the named file, and enters a command loop.
3877 The user may type most of the normal _\bM_\bH commands. The syntax and
3878 semantics of these commands typed to _\bm_\bs_\bh are identical to their _\bM_\bH
3879 counterparts. In cases where the nature of _\bm_\bs_\bh would be incon-
3880 sistent (e.g., specifying a `+folder' with some commands), _\bm_\bs_\bh will
3881 duly inform the user. The commands that _\bm_\bs_\bh currently supports (in
3882 some slightly modified or restricted forms) are:
3883
3884 ali
3885 burst
3886 comp
3887 dist
3888 folder
3889 forw
3890 inc
3891 mark
3892 mhmail
3893 msgchk
3894 next
3895 packf
3896 pick
3897 prev
3898 refile
3899 repl
3900 rmm
3901 scan
3902 send
3903 show
3904 sortm
3905
3906 [mh.6] MH.6.7 UCI version
3907
3908
3909
3910
3911
3912
3913
3914
3915
3916 MSH(1) -60- MSH(1)
3917
3918
3919 whatnow
3920 whom
3921
3922 In addition, _\bm_\bs_\bh has a "help" command which gives a brief overview.
3923 To terminate _\bm_\bs_\bh, type CTRL-D, or use the "quit" command. If _\bm_\bs_\bh
3924 is being invoked from _\bb_\bb_\bc, then typing CTRL-D will also tell _\bb_\bb_\bc to
3925 exit as well, while using the "quit" command will return control to
3926 _\bb_\bb_\bc, and _\bb_\bb_\bc will continue examining the list of BBoards that it is
3927 scanning.
3928
3929 If the file is writable and has been modified, then using "quit"
3930 will query the user if the file should be updated.
3931
3932 The `-prompt string' switch sets the prompting string for _\bm_\bs_\bh.
3933
3934 You may wish to use an alternate _\bM_\bH profile for the commands that
3935 _\bm_\bs_\bh executes; see _\bm_\bh-_\bp_\br_\bo_\bf_\bi_\bl_\be (5) for details about the $MH envari-
3936 able.
3937
3938 When invoked from _\bb_\bb_\bc, two special features are enabled: First, the
3939 `-scan' switch directs _\bm_\bs_\bh to do a `scan unseen' on start-up if new
3940 items are present in the BBoard. This feature is best used from
3941 _\bb_\bb_\bc, which correctly sets the stage. Second, the _\bm_\ba_\br_\bk command in
3942 _\bm_\bs_\bh acts specially when you are reading a BBoard, since _\bm_\bs_\bh will
3943 consult the sequence "unseen" in determining what messages you have
3944 actually read. When _\bm_\bs_\bh exits, it reports this information to _\bb_\bb_\bc.
3945 In addition, if you give the _\bm_\ba_\br_\bk command with no arguments, _\bm_\bs_\bh
3946 will interpret it as `mark -sequence unseen -delete -nozero all'
3947 Hence, to discard all of the messages in the current BBoard you're
3948 reading, just use the _\bm_\ba_\br_\bk command with no arguments.
3949
3950 Normally, the "exit" command is identical to the "quit" command in
3951 _\bm_\bs_\bh. When run under _\bb_\bb_\bc however, "exit" directs _\bm_\bs_\bh to mark all
3952 messages as seen and then "quit". For speedy type-in, this command
3953 is often abbreviated as just "e".
3954
3955 When invoked from _\bv_\bm_\bh, another special feature is enabled: The
3956 `topcur' switch directs _\bm_\bs_\bh to have the current message "track" the
3957 top line of the _\bv_\bm_\bh scan window. Normally, _\bm_\bs_\bh has the current
3958 message "track" the center of the window (under `-notopcur', which
3959 is the default).
3960
3961 _\bm_\bs_\bh supports an output redirection facility. Commands may be fol-
3962 lowed by one of
3963
3964 > _\bf_\bi_\bl_\be write output to _\bf_\bi_\bl_\be
3965 >> _\bf_\bi_\bl_\be append output to _\bf_\bi_\bl_\be
3966 | _\bc_\bo_\bm_\bm_\ba_\bn_\bd pipe output to UNIX _\bc_\bo_\bm_\bm_\ba_\bn_\bd
3967
3968 If _\bf_\bi_\bl_\be starts with a `~' (tilde), then a _\bc_\bs_\bh-like expansion takes
3969 place. Note that _\bc_\bo_\bm_\bm_\ba_\bn_\bd is interpreted by _\bs_\bh (1). Also note that
3970 _\bm_\bs_\bh does NOT support history substitutions, variable substitutions,
3971
3972 [mh.6] MH.6.7 UCI version
3973
3974
3975
3976
3977
3978
3979
3980
3981
3982 MSH(1) -61- MSH(1)
3983
3984
3985 or alias substitutions.
3986
3987 When parsing commands to the left of any redirection symbol, _\bm_\bs_\bh
3988 will honor `\' (back-slash) as the quote next-character symbol, and
3989 `"' (double-quote) as quote-word delimiters. All other input
3990 tokens are separated by whitespace (spaces and tabs).
3991
3992 _\bF_\bi_\bl_\be_\bs
3993 $HOME/.mh_profile The user profile
3994 /usr/local/lib/mh/mtstailor tailor file
3995
3996
3997 _\bP_\br_\bo_\bf_\bi_\bl_\be _\bC_\bo_\bm_\bp_\bo_\bn_\be_\bn_\bt_\bs
3998 Path: To determine the user's MH directory
3999 Msg-Protect: To set mode when creating a new `file'
4000 fileproc: Program to file messages
4001 showproc: Program to show messages
4002
4003
4004 _\bS_\be_\be _\bA_\bl_\bs_\bo
4005 bbc(1)
4006
4007
4008 _\bD_\be_\bf_\ba_\bu_\bl_\bt_\bs
4009 `file' defaults to "./msgbox"
4010 `-prompt (msh) '
4011 `-noscan'
4012 `-notopcur'
4013
4014
4015 _\bC_\bo_\bn_\bt_\be_\bx_\bt
4016 None
4017
4018
4019
4020
4021
4022
4023
4024
4025
4026
4027
4028
4029
4030
4031
4032
4033
4034
4035
4036 \e9
4037 \e9 [mh.6] MH.6.7 UCI version
4038
4039
4040
4041
4042
4043
4044
4045
4046
4047 MSH(1) -62- MSH(1)
4048
4049
4050 _\bB_\bu_\bg_\bs
4051 The argument to the `-prompt' switch must be interpreted as a sin-
4052 gle token by the shell that invokes _\bm_\bs_\bh. Therefore, one must usu-
4053 ally place the argument to this switch inside double-quotes.
4054
4055 There is a strict limit of messages per file in _\bp_\ba_\bc_\bk_\bf'd format
4056 which _\bm_\bs_\bh can handle. Usually, this limit is 1000 messages.
4057
4058 Please remember that _\bm_\bs_\bh is not the _\bC_\bS_\bh_\be_\bl_\bl, and that a lot of the
4059 nice facilities provided by the latter are not present in the form-
4060 er.
4061
4062 In particular, _\bm_\bs_\bh does not understand back-quoting, so the only
4063 effective way to use _\bp_\bi_\bc_\bk inside _\bm_\bs_\bh is to always use the
4064 `-seq select' switch. Clever users of _\bM_\bH will put the line
4065
4066 pick: -seq select -list
4067
4068 in their .mh_profile file so that _\bp_\bi_\bc_\bk works equally well from both
4069 the shell and _\bm_\bs_\bh.
4070
4071 _\bs_\bo_\br_\bt_\bm always uses "-noverbose" and if "-textfield field" is used,
4072 "-limit 0".
4073
4074 The _\bm_\bs_\bh program inherits most (if not all) of the bugs from the _\bM_\bH
4075 commands it implements.
4076
4077
4078
4079
4080
4081
4082
4083
4084
4085
4086
4087
4088
4089
4090
4091
4092
4093
4094
4095
4096
4097
4098
4099
4100
4101 \e9
4102 \e9 [mh.6] MH.6.7 UCI version
4103
4104
4105
4106
4107
4108
4109
4110
4111
4112 NEXT(1) -63- NEXT(1)
4113
4114
4115 _\bN_\bA_\bM_\bE
4116 next - show the next message
4117
4118 _\bS_\bY_\bN_\bO_\bP_\bS_\bI_\bS
4119 next [+folder] [-header] [-noheader] [-showproc program]
4120 [-noshowproc] [switches for _\bs_\bh_\bo_\bw_\bp_\br_\bo_\bc] [-help]
4121
4122 _\bD_\bE_\bS_\bC_\bR_\bI_\bP_\bT_\bI_\bO_\bN
4123
4124 _\bN_\be_\bx_\bt performs a _\bs_\bh_\bo_\bw on the next message in the specified (or
4125 current) folder. Like _\bs_\bh_\bo_\bw, it passes any switches on to the pro-
4126 gram _\bs_\bh_\bo_\bw_\bp_\br_\bo_\bc, which is called to list the message. This command
4127 is almost exactly equivalent to "show next". Consult the manual
4128 entry for _\bs_\bh_\bo_\bw (1) for all the details.
4129
4130 _\bF_\bi_\bl_\be_\bs
4131 $HOME/.mh_profile The user profile
4132
4133
4134 _\bP_\br_\bo_\bf_\bi_\bl_\be _\bC_\bo_\bm_\bp_\bo_\bn_\be_\bn_\bt_\bs
4135 Path: To determine the user's MH directory
4136 Current-Folder: To find the default current folder
4137 showproc: Program to show the message
4138
4139
4140 _\bS_\be_\be _\bA_\bl_\bs_\bo
4141 show(1), prev(1)
4142
4143
4144 _\bD_\be_\bf_\ba_\bu_\bl_\bt_\bs
4145 `+folder' defaults to the current folder
4146 `-header'
4147
4148
4149 _\bC_\bo_\bn_\bt_\be_\bx_\bt
4150 If a folder is specified, it will become the current folder. The
4151 message that is shown (i.e., the next message in sequence) will be-
4152 come the current message.
4153
4154
4155 _\bB_\bu_\bg_\bs
4156 _\bn_\be_\bx_\bt is really a link to the _\bs_\bh_\bo_\bw program. As a result, if you
4157 make a link to _\bn_\be_\bx_\bt and that link is not called _\bn_\be_\bx_\bt, your link
4158 will act like _\bs_\bh_\bo_\bw instead. To circumvent this, add a
4159 profile-entry for the link to your _\bM_\bH profile and add the argument
4160 _\bn_\be_\bx_\bt to the entry.
4161
4162
4163
4164
4165
4166 \e9
4167 \e9 [mh.6] MH.6.7 UCI version
4168
4169
4170
4171
4172
4173
4174
4175
4176
4177 PACKF(1) -64- PACKF(1)
4178
4179
4180 _\bN_\bA_\bM_\bE
4181 packf - compress a folder into a single file
4182
4183 _\bS_\bY_\bN_\bO_\bP_\bS_\bI_\bS
4184 packf [+folder] [msgs] [-file name] [-help]
4185
4186 _\bD_\bE_\bS_\bC_\bR_\bI_\bP_\bT_\bI_\bO_\bN
4187
4188 _\bP_\ba_\bc_\bk_\bf takes messages from a folder and copies them to a single
4189 file. Each message in the file is separated by four CTRL-A's and a
4190 newline (identical to the way messages are stored in your receiving
4191 mail drop). Messages packed can be unpacked using _\bi_\bn_\bc.
4192
4193 If the _\bn_\ba_\bm_\be given to the `-file name' switch exists, then the mes-
4194 sages specified will be appended to the end of the file, otherwise
4195 the file will be created and the messages appended.
4196
4197 _\bF_\bi_\bl_\be_\bs
4198 $HOME/.mh_profile The user profile
4199
4200
4201 _\bP_\br_\bo_\bf_\bi_\bl_\be _\bC_\bo_\bm_\bp_\bo_\bn_\be_\bn_\bt_\bs
4202 Path: To determine the user's MH directory
4203 Current-Folder: To find the default current folder
4204 Msg-Protect: To set mode when creating a new `file'
4205
4206
4207 _\bS_\be_\be _\bA_\bl_\bs_\bo
4208 inc(1)
4209
4210
4211 _\bD_\be_\bf_\ba_\bu_\bl_\bt_\bs
4212 `+folder' defaults to the current folder
4213 `msgs' defaults to all
4214 `-file ./msgbox'
4215
4216
4217 _\bC_\bo_\bn_\bt_\be_\bx_\bt
4218 If a folder is given, it will become the current folder. The first
4219 message packed will become the current message.
4220
4221
4222
4223
4224
4225
4226
4227
4228
4229
4230
4231 \e9
4232 \e9 [mh.6] MH.6.7 UCI version
4233
4234
4235
4236
4237
4238
4239
4240
4241
4242 PICK(1) -65- PICK(1)
4243
4244
4245 _\bN_\bA_\bM_\bE
4246 pick - select messages by content
4247
4248 _\bS_\bY_\bN_\bO_\bP_\bS_\bI_\bS
4249 pick [+folder] [msgs] [-and ...] [-or ...] [-not ...]
4250 [-lbrace ... -rbrace] [--component pattern] [-after date]
4251 [-before date] [-datefield field] [-sequence name ...]
4252 [-public] [-nopublic] [-zero] [-nozero] [-list] [-nolist]
4253 [-help]
4254
4255 typically:
4256 scan `pick -from jones`
4257 pick -to holloway -sequence select
4258 show `pick -before friday`
4259
4260 _\bD_\bE_\bS_\bC_\bR_\bI_\bP_\bT_\bI_\bO_\bN
4261
4262 _\bP_\bi_\bc_\bk searches messages within a folder for the specified contents,
4263 and then identifies those messages. Two types of search primitives
4264 are available: pattern matching and date constraint operations.
4265
4266 A modified _\bg_\br_\be_\bp(1) is used to perform the matching, so the full
4267 regular expression (see _\be_\bd(1)) facility is available within `pat-
4268 tern'. With `-search', `pattern' is used directly, and with the
4269 others, the grep pattern constructed is:
4270
4271 "component[ \t]*:.*pattern"
4272
4273 This means that the pattern specified for a `-search' will be found
4274 everywhere in the message, including the header and the body, while
4275 the other pattern matching requests are limited to the single
4276 specified component. The expression
4277
4278 `--component pattern'
4279
4280 is a shorthand for specifying
4281
4282 `-search "component[ \t]*:.*pattern" '
4283
4284 It is used to pick a component which is not one of "To:", "cc:",
4285 "Date:", "From:", or "Subject:". An example is
4286 `pick --reply-to pooh'.
4287
4288 Pattern matching is performed on a per-line basis. Within the
4289 header of the message, each component is treated as one long line,
4290 but in the body, each line is separate. Lower-case letters in the
4291 search pattern will match either lower or upper case in the mes-
4292 sage, while upper case will match only upper case.
4293
4294 Note that since the `-date' switch is a pattern matching operation
4295 (as described above), to find messages sent on a certain date the
4296 pattern string must match the text of the "Date:" field of the
4297
4298 [mh.6] MH.6.7 UCI version
4299
4300
4301
4302
4303
4304
4305
4306
4307
4308 PICK(1) -66- PICK(1)
4309
4310
4311 message.
4312
4313 Independent of any pattern matching operations requested, the
4314 switches `-after date' or `-before date' may also be used to intro-
4315 duce date/time contraints on all of the messages. By default, the
4316 "Date:" field is consulted, but if another date yielding field
4317 (such as "BB-Posted:" or "Delivery-Date:") should be used, the
4318 `-datefield field' switch may be used.
4319
4320 With `-before' and `-after', _\bp_\bi_\bc_\bk will actually parse the date
4321 fields in each of the messages specified in `msgs' and compare them
4322 to the date/time specified. If `-after' is given, then only those
4323 messages whose "Date:" field value is chronologically after the
4324 date specified will be considered. The `-before' switch specifies
4325 the complimentary action.
4326
4327 Both the `-after' and `-before' switches take legal 822-style date
4328 specifications as arguments. _\bP_\bi_\bc_\bk will default certain missing
4329 fields so that the entire date need not be specified. These fields
4330 are (in order of defaulting): timezone, time and timezone, date,
4331 date and timezone. All defaults are taken from the current date,
4332 time, and timezone.
4333
4334 In addition to 822-style dates, _\bp_\bi_\bc_\bk will also recognize any of the
4335 days of the week ("sunday", "monday", and so on), and the special
4336 dates "today", "yesterday" (24 hours ago), and "tomorrow" (24 hours
4337 from now). All days of the week are judged to refer to a day in
4338 the past (e.g., telling _\bp_\bi_\bc_\bk "saturday" on a "tuesday" means
4339 "last saturday" not "this saturday").
4340
4341 Finally, in addition to these special specifications, _\bp_\bi_\bc_\bk will
4342 also honor a specification of the form "-dd", which means "dd days
4343 ago".
4344
4345 _\bP_\bi_\bc_\bk supports complex boolean operations on the searching primi-
4346 tives with the `-and', `-or', `-not', and `-lbrace ... -rbrace'
4347 switches. For example,
4348
4349 pick -after yesterday -and -lbrace -from freida -or -from fear -rbrace
4350
4351 identifies messages recently sent by "frieda" or "fear".
4352
4353 The matching primitives take precedence over the `-not' switch,
4354 which in turn takes precedence over `-and' which in turn takes pre-
4355 cedence over `-or'. To override the default precedence, the
4356 `-lbrace' and `-rbrace' switches are provided, which act just like
4357 opening and closing parentheses in logical expressions.
4358
4359 Once the search has been performed, if the `-list' switch is given,
4360 the message numbers of the selected messages are written to the
4361 standard output separated by newlines. This is _\be_\bx_\bt_\br_\be_\bm_\be_\bl_\by useful
4362 for quickly generating arguments for other _\bM_\bH programs by using the
4363
4364 [mh.6] MH.6.7 UCI version
4365
4366
4367
4368
4369
4370
4371
4372
4373
4374 PICK(1) -67- PICK(1)
4375
4376
4377 "backquoting" syntax of the shell. For example, the command
4378
4379 scan `pick +todo -after "31 Mar 83 0123 PST"`
4380
4381 says to _\bs_\bc_\ba_\bn those messages in the indicated folder which meet the
4382 appropriate criterion. Note that since _\bp_\bi_\bc_\bk 's context changes are
4383 written out prior to _\bs_\bc_\ba_\bn 's invocation, you need not give the
4384 folder argument to _\bs_\bc_\ba_\bn as well.
4385
4386 Regardless of the operation of the `-list' switch, the `-sequence
4387 name' switch may be given once for each sequence the user wishes to
4388 define. For each sequence named, that sequence will be defined to
4389 mean exactly those messages selected by _\bp_\bi_\bc_\bk. For example,
4390
4391 pick -from frated -seq fred
4392
4393 defines a new message sequence for the current folder called "fred"
4394 which contains exactly those messages that were selected.
4395
4396 Note that whenever _\bp_\bi_\bc_\bk processes a `-sequence name' switch, it
4397 sets `-nolist'.
4398
4399 By default, _\bp_\bi_\bc_\bk will zero the sequence before adding it. This
4400 action can be disabled with the `-nozero' switch, which means that
4401 the messages selected by _\bp_\bi_\bc_\bk will be added to the sequence, if it
4402 already exists, and any messages already a part of that sequence
4403 will remain so.
4404
4405 The `-public' and `-nopublic' switches are used by _\bp_\bi_\bc_\bk in the same
4406 way _\bm_\ba_\br_\bk uses them.
4407
4408 _\bF_\bi_\bl_\be_\bs
4409 $HOME/.mh_profile The user profile
4410
4411
4412 _\bP_\br_\bo_\bf_\bi_\bl_\be _\bC_\bo_\bm_\bp_\bo_\bn_\be_\bn_\bt_\bs
4413 Path: To determine the user's MH directory
4414 Current-Folder: To find the default current folder
4415
4416
4417 _\bS_\be_\be _\bA_\bl_\bs_\bo
4418 mark(1)
4419
4420
4421 _\bD_\be_\bf_\ba_\bu_\bl_\bt_\bs
4422 `+folder' defaults to the current folder
4423 `msgs' defaults to all
4424 `-datefield date'
4425 `-nopublic' if the folder is read-only, `-public' otherwise
4426 `-zero'
4427 `-list' is the default if no `-sequence', `-nolist' otherwise
4428 \e9
4429 \e9 [mh.6] MH.6.7 UCI version
4430
4431
4432
4433
4434
4435
4436
4437
4438
4439 PICK(1) -68- PICK(1)
4440
4441
4442 _\bC_\bo_\bn_\bt_\be_\bx_\bt
4443 If a folder is given, it will become the current folder.
4444
4445
4446 _\bH_\bi_\bs_\bt_\bo_\br_\by
4447 In previous versions of _\bM_\bH, the _\bp_\bi_\bc_\bk command would _\bs_\bh_\bo_\bw, _\bs_\bc_\ba_\bn, or
4448 _\br_\be_\bf_\bi_\bl_\be the selected messages. This was rather "inverted logic"
4449 from the UNIX point of view, so _\bp_\bi_\bc_\bk was changed to define se-
4450 quences and output those sequences. Hence, _\bp_\bi_\bc_\bk can be used to
4451 generate the arguments for all other _\bM_\bH commands, instead of giving
4452 _\bp_\bi_\bc_\bk endless switches for invoking those commands itself.
4453
4454 Also, previous versions of _\bp_\bi_\bc_\bk balked if you didn't specify a
4455 search string or a date/time constraint. The current version does
4456 not, and merely matches the messages you specify. This lets you
4457 type something like:
4458
4459 show `pick last:20 -seq fear`
4460
4461 instead of typing
4462
4463 mark -add -nozero -seq fear last:20
4464 show fear
4465
4466 Finally, timezones used to be ignored when comparing dates: they
4467 aren't any more.
4468
4469
4470 _\bB_\bu_\bg_\bs
4471 The argument to the `-after' and `-before' switches must be inter-
4472 preted as a single token by the shell that invokes _\bp_\bi_\bc_\bk. There-
4473 fore, one must usually place the argument to this switch inside
4474 double-quotes. Furthermore, any occurance of `-datefield' must oc-
4475 cur prior to the `-after' or `-before' switch it applies to.
4476
4477 If _\bp_\bi_\bc_\bk is used in a back-quoted operation, such as
4478
4479 scan `pick -from jones`
4480
4481 and _\bp_\bi_\bc_\bk fails (e.g., no messages are from "jones"), then the shell
4482 will still run the outer command (e.g., "scan"). Since no messages
4483 were matched, _\bp_\bi_\bc_\bk produced no output, and the argument given to
4484 the outer command as a result of backquoting _\bp_\bi_\bc_\bk is empty. In the
4485 case of _\bM_\bH programs, the outer command now acts as if the default
4486 `msg' or `msgs' should be used (e.g., "all" in the case of _\bs_\bc_\ba_\bn ).
4487 To prevent this unexpected behavior, if `-list' was given, and if
4488 its standard output is not a tty, then _\bp_\bi_\bc_\bk outputs the illegal
4489 message number "0" when it fails. This lets the outer command fail
4490 gracefully as well.
4491
4492
4493 \e9
4494 \e9 [mh.6] MH.6.7 UCI version
4495
4496
4497
4498
4499
4500
4501
4502
4503
4504 PREV(1) -69- PREV(1)
4505
4506
4507 _\bN_\bA_\bM_\bE
4508 prev - show the previous message
4509
4510 _\bS_\bY_\bN_\bO_\bP_\bS_\bI_\bS
4511 prev [+folder] [-header] [-noheader] [-showproc program]
4512 [-noshowproc] [-switches for _\bs_\bh_\bo_\bw_\bp_\br_\bo_\bc] [-help]
4513
4514 _\bD_\bE_\bS_\bC_\bR_\bI_\bP_\bT_\bI_\bO_\bN
4515
4516 _\bP_\br_\be_\bv performs a _\bs_\bh_\bo_\bw on the previous message in the specified (or
4517 current) folder. Like _\bs_\bh_\bo_\bw, it passes any switches on to the pro-
4518 gram named by _\bs_\bh_\bo_\bw_\bp_\br_\bo_\bc, which is called to list the message. This
4519 command is almost exactly equivalent to "show prev". Consult the
4520 manual entry for _\bs_\bh_\bo_\bw (1) for all the details.
4521
4522 _\bF_\bi_\bl_\be_\bs
4523 $HOME/.mh_profile The user profile
4524
4525
4526 _\bP_\br_\bo_\bf_\bi_\bl_\be _\bC_\bo_\bm_\bp_\bo_\bn_\be_\bn_\bt_\bs
4527 Path: To determine the user's MH directory
4528 Current-Folder: To find the default current folder
4529 showproc: Program to show the message
4530
4531
4532 _\bS_\be_\be _\bA_\bl_\bs_\bo
4533 show(1), next(1)
4534
4535
4536 _\bD_\be_\bf_\ba_\bu_\bl_\bt_\bs
4537 `+folder' defaults to the current folder
4538 `-header'
4539
4540
4541 _\bC_\bo_\bn_\bt_\be_\bx_\bt
4542 If a folder is specified, it will become the current folder. The
4543 message that is shown (i.e., the previous message in sequence) will
4544 become the current message.
4545
4546
4547 _\bB_\bu_\bg_\bs
4548 _\bp_\br_\be_\bv is really a link to the _\bs_\bh_\bo_\bw program. As a result, if you
4549 make a link to _\bp_\br_\be_\bv and that link is not called _\bp_\br_\be_\bv, your link
4550 will act like _\bs_\bh_\bo_\bw instead. To circumvent this, add a
4551 profile-entry for the link to your _\bM_\bH profile and add the argument
4552 _\bp_\br_\be_\bv to the entry.
4553
4554
4555
4556
4557
4558 \e9
4559 \e9 [mh.6] MH.6.7 UCI version
4560
4561
4562
4563
4564
4565
4566
4567
4568
4569 PROMPTER(1) -70- PROMPTER(1)
4570
4571
4572 _\bN_\bA_\bM_\bE
4573 prompter - prompting editor front-end
4574
4575 _\bS_\bY_\bN_\bO_\bP_\bS_\bI_\bS
4576 prompter [-erase chr] [-kill chr] [-prepend] [-noprepend] [-rapid]
4577 [-norapid] [-doteof] [-nodoteof] file [-help]
4578
4579 _\bD_\bE_\bS_\bC_\bR_\bI_\bP_\bT_\bI_\bO_\bN
4580
4581 This program is normally not invoked directly by users but takes
4582 the place of an editor and acts as an editor front-end. It
4583 operates on an 822-style message draft skeleton specified by file,
4584 normally provided by _\bc_\bo_\bm_\bp, _\bd_\bi_\bs_\bt, _\bf_\bo_\br_\bw, or _\br_\be_\bp_\bl.
4585
4586 _\bP_\br_\bo_\bm_\bp_\bt_\be_\br is an editor which allows rapid composition of messages.
4587 It is particularly useful to network and low-speed (less than 2400
4588 baud) users of _\bM_\bH. It is an _\bM_\bH program in that it can have its own
4589 profile entry with switches, but it is not invoked directly by the
4590 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
4591 an editor, either when invoked with `-editor prompter', or by the
4592 profile entry "Editor: prompter", or when given the command
4593 `edit prompter' at "What now?" level.
4594
4595 For each empty component _\bp_\br_\bo_\bm_\bp_\bt_\be_\br finds in the draft, the user is
4596 prompted for a response; A <RETURN> will cause the whole component
4597 to be left out. Otherwise, a `\' preceding a <RETURN> will con-
4598 tinue the response on the next line, allowing for multiline com-
4599 ponents. Continuation lines must begin with a space or tab.
4600
4601 Each non-empty component is copied to the draft and displayed on
4602 the terminal.
4603
4604 The start of the message body is denoted by a blank line or a line
4605 of dashes. If the body is non-empty, the prompt, which isn't writ-
4606 ten to the file, is
4607
4608 "--------Enter additional text",
4609
4610 or (if `-prepend' was given)
4611
4612 "--------Enter initial text".
4613
4614 Message-body typing is terminated with an end-of-file (usually
4615 CTRL-D). With the `-doteof' switch, a period on a line all by
4616 itself also signifies end-of-file. At this point control is
4617 returned to the calling program, where the user is asked "What
4618 now?". See _\bw_\bh_\ba_\bt_\bn_\bo_\bw for the valid options to this query.
4619
4620 By using the `-prepend' switch, the user can add type-in to the
4621 beginning of the message body and have the rest of the body follow.
4622 This is useful for the _\bf_\bo_\br_\bw command.
4623 \e9
4624 \e9 [mh.6] MH.6.7 UCI version
4625
4626
4627
4628
4629
4630
4631
4632
4633
4634 PROMPTER(1) -71- PROMPTER(1)
4635
4636
4637 By using the `-rapid' switch, if the draft already contains text in
4638 the message-body, it is not displayed on the user's terminal. This
4639 is useful for low-speed terminals.
4640
4641 The line editing characters for kill and erase may be specified by
4642 the user via the arguments `-kill chr' and `-erase chr', where chr
4643 may be a character; or `\nnn', where "nnn" is the octal value for
4644 the character.
4645
4646 An interrupt (usually CTRL-C) during component typing will abort
4647 _\bp_\br_\bo_\bm_\bp_\bt_\be_\br and the _\bM_\bH command that invoked it. An interrupt during
4648 message-body typing is equivalent to CTRL-D, for historical rea-
4649 sons. This means that _\bp_\br_\bo_\bm_\bp_\bt_\be_\br should finish up and exit.
4650
4651 The first non-flag argument to _\bp_\br_\bo_\bm_\bp_\bt_\be_\br is taken as the name of the
4652 draft file, and subsequent non-flag arguments are ignored.
4653
4654 _\bF_\bi_\bl_\be_\bs
4655 $HOME/.mh_profile The user profile
4656 /tmp/prompter* Temporary copy of message
4657
4658
4659 _\bP_\br_\bo_\bf_\bi_\bl_\be _\bC_\bo_\bm_\bp_\bo_\bn_\be_\bn_\bt_\bs
4660 prompter-next: To name the editor to be used on exit from
4661 _\bp_\br_\bo_\bm_\bp_\bt_\be_\br
4662 Msg-Protect: To set mode when creating a new draft
4663
4664
4665 _\bS_\be_\be _\bA_\bl_\bs_\bo
4666 comp(1), dist(1), forw(1), repl(1), whatnow(1)
4667
4668
4669 _\bD_\be_\bf_\ba_\bu_\bl_\bt_\bs
4670 `-prepend'
4671 `-norapid'
4672 `-nodoteof'
4673
4674
4675 _\bC_\bo_\bn_\bt_\be_\bx_\bt
4676 None
4677
4678 _\bH_\be_\bl_\bp_\bf_\bu_\bl _\bH_\bi_\bn_\bt_\bs
4679
4680 The `-rapid' option is particularly useful with _\bf_\bo_\br_\bw, and
4681 `-noprepend' is useful with _\bc_\bo_\bm_\bp -_\bu_\bs_\be.
4682
4683 The user may wish to link _\bp_\br_\bo_\bm_\bp_\bt_\be_\br under several names (e.g., "ra-
4684 pid") and give appropriate switches in the profile entries under
4685 these names (e.g., "rapid: -rapid"). This facilitates invoking
4686 prompter differently for different _\bM_\bH commands (e.g., "forw: -edi-
4687 tor rapid").
4688 \e9
4689 \e9 [mh.6] MH.6.7 UCI version
4690
4691
4692
4693
4694
4695
4696
4697
4698
4699 PROMPTER(1) -72- PROMPTER(1)
4700
4701
4702 _\bB_\bu_\bg_\bs
4703 _\bP_\br_\bo_\bm_\bp_\bt_\be_\br uses _\bs_\bt_\bd_\bi_\bo (3), so it will lose if you edit files with
4704 nulls in them.
4705
4706
4707
4708
4709
4710
4711
4712
4713
4714
4715
4716
4717
4718
4719
4720
4721
4722
4723
4724
4725
4726
4727
4728
4729
4730
4731
4732
4733
4734
4735
4736
4737
4738
4739
4740
4741
4742
4743
4744
4745
4746
4747
4748
4749
4750
4751
4752
4753 \e9
4754 \e9 [mh.6] MH.6.7 UCI version
4755
4756
4757
4758
4759
4760
4761
4762
4763
4764 RCVSTORE(1) -73- RCVSTORE(1)
4765
4766
4767 _\bN_\bA_\bM_\bE
4768 rcvstore - incorporate new mail asynchronously
4769
4770 _\bS_\bY_\bN_\bO_\bP_\bS_\bI_\bS
4771 /usr/local/lib/mh/rcvstore [+folder] [-create] [-nocreate]
4772 [-sequence name ...] [-public] [-nopublic] [-zero] [-nozero]
4773 [-help]
4774
4775 _\bD_\bE_\bS_\bC_\bR_\bI_\bP_\bT_\bI_\bO_\bN
4776
4777 _\bR_\bc_\bv_\bs_\bt_\bo_\br_\be incorporates a message from the standard input into an _\bM_\bH
4778 folder. If `+folder' isn't specified, the folder named "inbox" in
4779 the user's _\bM_\bH directory will be used instead. The new message
4780 being incorporated is assigned the next highest number in the
4781 folder. If the specified (or default) folder doesn't exist, then
4782 it will be created if the `-create' option is specified, otherwise
4783 _\br_\bc_\bv_\bs_\bt_\bo_\br_\be will exit.
4784
4785 If the user's profile contains a "Msg-Protect: nnn" entry, it will
4786 be used as the protection on the newly created messages, otherwise
4787 the _\bM_\bH default of 0644 will be used. During all operations on mes-
4788 sages, this initially assigned protection will be preserved for
4789 each message, so _\bc_\bh_\bm_\bo_\bd(1) may be used to set a protection on an
4790 individual message, and its protection will be preserved
4791 thereafter.
4792
4793 _\bR_\bc_\bv_\bs_\bt_\bo_\br_\be will incorporate anything except zero length messages into
4794 the user's MH folder.
4795
4796 If the profile entry "Unseen-Sequence" is present and non-empty,
4797 then _\br_\bc_\bv_\bs_\bt_\bo_\br_\be will add the newly incorporated message to each
4798 sequence named by the profile entry. This is similar to the
4799 "Previous-Sequence" profile entry supported by all _\bM_\bH commands
4800 which take `msgs' or `msg' arguments. Note that _\br_\bc_\bv_\bs_\bt_\bo_\br_\be will not
4801 zero each sequence prior to adding messages.
4802
4803 Furthermore, the incoming messages may be added to user-defined
4804 sequences as they arrive by appropriate use of the `-sequence'
4805 option. As with _\bp_\bi_\bc_\bk, use of the `-zero' and `-nozero' switches
4806 can also be used to zero old sequences or not. Similarly, use of
4807 the `-public' and `-nopublic switches may be used to force addi-
4808 tions to public and private sequences.
4809
4810 _\bF_\bi_\bl_\be_\bs
4811 $HOME/.mh_profile The user profile
4812
4813
4814
4815
4816
4817
4818 \e9
4819 \e9 [mh.6] MH.6.7 UCI version
4820
4821
4822
4823
4824
4825
4826
4827
4828
4829 RCVSTORE(1) -74- RCVSTORE(1)
4830
4831
4832 _\bP_\br_\bo_\bf_\bi_\bl_\be _\bC_\bo_\bm_\bp_\bo_\bn_\be_\bn_\bt_\bs
4833 Path: To determine the user's MH directory
4834 Folder-Protect: To set mode when creating a new folder
4835 Msg-Protect: To set mode when creating a new message
4836 Unseen-Sequence: To name sequences denoting unseen messages
4837
4838
4839 _\bS_\be_\be _\bA_\bl_\bs_\bo
4840 inc(1), pick(1), mh-mail(5)
4841
4842
4843 _\bD_\be_\bf_\ba_\bu_\bl_\bt_\bs
4844 `+folder' defaults to "inbox"
4845 `-create'
4846 `-nopublic' if the folder is read-only, `-public' otherwise
4847 `-nozero'
4848
4849
4850 _\bC_\bo_\bn_\bt_\be_\bx_\bt
4851 No context changes will be attempted, with the exception of se-
4852 quence manipulation.
4853
4854
4855
4856
4857
4858
4859
4860
4861
4862
4863
4864
4865
4866
4867
4868
4869
4870
4871
4872
4873
4874
4875
4876
4877
4878
4879
4880
4881
4882
4883 \e9
4884 \e9 [mh.6] MH.6.7 UCI version
4885
4886
4887
4888
4889
4890
4891
4892
4893
4894 REFILE(1) -75- REFILE(1)
4895
4896
4897 _\bN_\bA_\bM_\bE
4898 refile - file message in other folders
4899
4900 _\bS_\bY_\bN_\bO_\bP_\bS_\bI_\bS
4901 refile [msgs] [-draft] [-link] [-nolink] [-preserve] [-nopreserve]
4902 [-src +folder] [-file file] [-rmmproc program] [-normmproc]
4903 +folder ... [-help]
4904
4905 _\bD_\bE_\bS_\bC_\bR_\bI_\bP_\bT_\bI_\bO_\bN
4906
4907 _\bR_\be_\bf_\bi_\bl_\be moves (_\bm_\bv (1)) or links (_\bl_\bn (1)) messages from a source
4908 folder into one or more destination folders. If you think of a
4909 message as a sheet of paper, this operation is not unlike filing
4910 the sheet of paper (or copies) in file cabinet folders. When a
4911 message is filed, it is linked into the destination folder(s) if
4912 possible, and is copied otherwise. As long as the destination
4913 folders are all on the same file system, multiple filing causes
4914 little storage overhead. This facility provides a good way to
4915 cross-file or multiply-index messages. For example, if a message
4916 is received from Jones about the ARPA Map Project, the command
4917
4918 refile cur +jones +Map
4919
4920 would allow the message to be found in either of the two folders
4921 `jones' or `Map'.
4922
4923 The option `-file file' directs _\br_\be_\bf_\bi_\bl_\be to use the specified file as
4924 the source message to be filed, rather than a message from a
4925 folder. Note that the file should be a validly formatted message,
4926 just like any other _\bM_\bH message. It should NOT be in mail drop for-
4927 mat (to convert a file in mail drop format to a folder of _\bM_\bH mes-
4928 sages, see _\bi_\bn_\bc (1)).
4929
4930 If a destination folder doesn't exist, _\br_\be_\bf_\bi_\bl_\be will ask if you want
4931 to create it. A negative response will abort the file operation.
4932
4933 The option `-link' preserves the source folder copy of the message
4934 (i.e., it does a _\bl_\bn(1) rather than a _\bm_\bv(1)), whereas, `-nolink'
4935 deletes the filed messages from the source folder. Normally, when
4936 a message is filed, it is assigned the next highest number avail-
4937 able in each of the destination folders. Use of the `-preserve'
4938 switch will override this message renaming, but name conflicts may
4939 occur, so use this switch cautiously.
4940
4941 If `-link' is not specified (or `-nolink' is specified), the filed
4942 messages will be removed from the source folder, by renaming them
4943 with a site-dependent prefix (usually a comma).
4944
4945
4946
4947
4948 \e9
4949 \e9 [mh.6] MH.6.7 UCI version
4950
4951
4952
4953
4954
4955
4956
4957
4958
4959 REFILE(1) -76- REFILE(1)
4960
4961
4962 If the user has a profile component such as
4963
4964 rmmproc: /bin/rm
4965
4966 then _\br_\be_\bf_\bi_\bl_\be will instead call the named program to delete the mes-
4967 sage files. The user may specify `-rmmproc program' on the command
4968 line to override this profile specification. The `-normmproc'
4969 option forces the message files to be deleted by renaming them as
4970 described above.
4971
4972 The `-draft' switch tells _\br_\be_\bf_\bi_\bl_\be to file the <mh-dir>/draft.
4973
4974 _\bF_\bi_\bl_\be_\bs
4975 $HOME/.mh_profile The user profile
4976
4977
4978 _\bP_\br_\bo_\bf_\bi_\bl_\be _\bC_\bo_\bm_\bp_\bo_\bn_\be_\bn_\bt_\bs
4979 Path: To determine the user's MH directory
4980 Current-Folder: To find the default current folder
4981 Folder-Protect: To set mode when creating a new folder
4982 rmmproc: Program to delete the message
4983
4984
4985 _\bS_\be_\be _\bA_\bl_\bs_\bo
4986 folder(1)
4987
4988
4989 _\bD_\be_\bf_\ba_\bu_\bl_\bt_\bs
4990 `-src +folder' defaults to the current folder
4991 `msgs' defaults to cur
4992 `-nolink'
4993 `-nopreserve'
4994
4995
4996 _\bC_\bo_\bn_\bt_\be_\bx_\bt
4997 If `-src +folder' is given, it will become the current folder. If
4998 neither `-link' nor `all' is specified, the current message in the
4999 source folder will be set to the last message specified; otherwise,
5000 the current message won't be changed.
5001
5002 If the Previous-Sequence profile entry is set, in addition to de-
5003 fining the named sequences from the source folder, _\br_\be_\bf_\bi_\bl_\be will also
5004 define those sequences for the destination folders. See
5005 _\bm_\bh-_\bp_\br_\bo_\bf_\bi_\bl_\be (1) for information concerning the previous sequence.
5006
5007
5008 _\bB_\bu_\bg_\bs
5009 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
5010 must NOT call _\br_\be_\bf_\bi_\bl_\be without specifying `-normmproc', or you will
5011 create an infinte loop.
5012
5013 \e9
5014 \e9 [mh.6] MH.6.7 UCI version
5015
5016
5017
5018
5019
5020
5021
5022
5023
5024 REPL(1) -77- REPL(1)
5025
5026
5027 _\bN_\bA_\bM_\bE
5028 repl - reply to a message
5029
5030 _\bS_\bY_\bN_\bO_\bP_\bS_\bI_\bS
5031 repl [+folder] [msg] [-annotate] [-noannotate] [-cc all/to/cc/me]
5032 [-nocc all/to/cc/me] [-draftfolder +folder]
5033 [-draftmessage msg] [-nodraftfolder] [-editor editor]
5034 [-noedit] [-fcc +folder] [-filter filterfile] [-form formfile]
5035 [-inplace] [-noinplace] [-query] [-noquery] [-width columns]
5036 [-whatnowproc program] [-nowhatnowproc] [-help]
5037
5038 _\bD_\bE_\bS_\bC_\bR_\bI_\bP_\bT_\bI_\bO_\bN
5039
5040 _\bR_\be_\bp_\bl aids a user in producing a reply to an existing message. _\bR_\be_\bp_\bl
5041 uses a reply template to guide its actions when constructing the
5042 message draft of the reply. In its simplest form (with no argu-
5043 ments), it will set up a message-form skeleton in reply to the
5044 current message in the current folder, and invoke the whatnow
5045 shell. The default reply template will direct _\br_\be_\bp_\bl to construct
5046 the composed message as follows:
5047
5048 To: <Reply-To> or <From>
5049 cc: <cc>, <To>, and yourself
5050 Subject: Re: <Subject>
5051 In-reply-to: Your message of <Date>.
5052 <Message-Id>
5053
5054 where field names enclosed in angle brackets (< >) indicate the
5055 contents of the named field from the message to which the reply is
5056 being made. A reply template is simply a format file. See
5057 _\bm_\bh-_\bf_\bo_\br_\bm_\ba_\bt (5) for the details.
5058
5059 The `-cc type' switch takes an argument which specifies who gets
5060 placed on the "cc:" list of the reply. The `-query' switch modi-
5061 fies the action of `-cc type' switch by interactively asking you if
5062 each address that normally would be placed in the "To:" and "cc:"
5063 list should actually be sent a copy. (This is useful for
5064 special-purpose replies.) Note that the position of the `-cc' and
5065 `-nocc' switches, like all other switches which take a positive and
5066 negative form, is important.
5067
5068 Lines beginning with the fields "To:", "cc:", and "Bcc:" will be
5069 standardized and have duplicate addresses removed. In addition,
5070 the `-width columns' switch will guide _\br_\be_\bp_\bl's formatting of these
5071 fields.
5072
5073 If the file named "replcomps" exists in the user's MH directory, it
5074 will be used instead of the default form. In either case, the file
5075 specified by `-form formfile' will be used if given.
5076
5077 If the draft already exists, _\br_\be_\bp_\bl will ask you as to the disposi-
5078 tion of the draft. A reply of quit will abort _\br_\be_\bp_\bl, leaving the
5079
5080 [mh.6] MH.6.7 UCI version
5081
5082
5083
5084
5085
5086
5087
5088
5089
5090 REPL(1) -78- REPL(1)
5091
5092
5093 draft intact; replace will replace the existing draft with a blank
5094 skeleton; and list will display the draft.
5095
5096 See _\bc_\bo_\bm_\bp (1) for a description of the `-editor' and `-noedit'
5097 switches. Note that while in the editor, the message being replied
5098 to is available through a link named "@" (assuming the default
5099 _\bw_\bh_\ba_\bt_\bn_\bo_\bw_\bp_\br_\bo_\bc ). In addition, the actual pathname of the message is
5100 stored in the envariable $editalt, and the pathname of the folder
5101 containing the message is stored in the envariable $mhfolder.
5102
5103 Although _\br_\be_\bp_\bl uses the `-form formfile' switch to direct it how to
5104 construct the beginning of the draft, the `-filter filterfile'
5105 switch directs _\br_\be_\bp_\bl as to how the message being replied-to should
5106 be formatted in the body of the draft. If `-filter' is not speci-
5107 fied, then the message being replied-to is not included in the body
5108 of the draft. If `-filter filterfile' is specified, then the mes-
5109 sage being replied-to is filtered (re-formatted) prior to being
5110 output to the body of the draft. The filter file for _\br_\be_\bp_\bl should
5111 be a standard form file for _\bm_\bh_\bl, as _\br_\be_\bp_\bl will invoke _\bm_\bh_\bl to format
5112 the message being replied-to. There is no default message filter
5113 (`-filter' must be followed by a file name). A filter file that is
5114 commonly used is:
5115
5116 :
5117 body:nocomponent,compwidth=9,offset=9
5118
5119 which says to output a blank line and then the body of the message
5120 being replied-to, indented by one tab-stop. Another format popular
5121 on USENET is:
5122
5123 message-id:nocomponent,formatfield=\
5124 "In message %{text}you write:"
5125 body:component=">",overflowtext=">",overflowoffset=0
5126
5127 Which cites the Message-ID of the message being replied-to, and
5128 then outputs each line of the body prefaced with the ">" character.
5129
5130 If the `-annotate' switch is given, the message being replied-to
5131 will be annotated with the lines
5132
5133 Replied: date
5134 Replied: addrs
5135
5136 where the address list contains one line for each addressee. The
5137 annotation will be done only if the message is sent directly from
5138 _\br_\be_\bp_\bl. If the message is not sent immediately from _\br_\be_\bp_\bl,
5139 "comp -use" may be used to re-edit and send the constructed mes-
5140 sage, but the annotations won't take place. The `-inplace' switch
5141 causes annotation to be done in place in order to preserve links to
5142 the annotated message.
5143
5144 The `-fcc +folder' switch can be used to automatically specify a
5145
5146 [mh.6] MH.6.7 UCI version
5147
5148
5149
5150
5151
5152
5153
5154
5155
5156 REPL(1) -79- REPL(1)
5157
5158
5159 folder to receive Fcc:s. More than one folder, each preceeded by
5160 `-fcc' can be named.
5161
5162 In addition to the standard _\bm_\bh-_\bf_\bo_\br_\bm_\ba_\bt (5) escapes, _\br_\be_\bp_\bl also recog-
5163 nizes the following additional _\bc_\bo_\bm_\bp_\bo_\bn_\be_\bn_\bt escape:
5164
5165 _\bE_\bs_\bc_\ba_\bp_\be _\bR_\be_\bt_\bu_\br_\bn_\bs _\bD_\be_\bs_\bc_\br_\bi_\bp_\bt_\bi_\bo_\bn
5166 _\bf_\bc_\bc string Any folders specified with `-fcc folder'
5167
5168 To avoid reiteration, _\br_\be_\bp_\bl strips any leading `Re: ' strings from
5169 the _\bs_\bu_\bb_\bj_\be_\bc_\bt component.
5170
5171 The `-draftfolder +folder' and `-draftmessage msg' switches invoke
5172 the _\bM_\bH draft folder facility. This is an advanced (and highly use-
5173 ful) feature. Consult the Advanced Features section of the _\bM_\bH
5174 manual for more information.
5175
5176 Upon exiting from the editor, _\br_\be_\bp_\bl will invoke the _\bw_\bh_\ba_\bt_\bn_\bo_\bw program.
5177 See _\bw_\bh_\ba_\bt_\bn_\bo_\bw (1) for a discussion of available options. The invoca-
5178 tion of this program can be inhibited by using the `-nowhatnowproc'
5179 switch. (In truth of fact, it is the _\bw_\bh_\ba_\bt_\bn_\bo_\bw program which starts
5180 the initial edit. Hence, `-nowhatnowproc' will prevent any edit
5181 from occurring.)
5182
5183 _\bF_\bi_\bl_\be_\bs
5184 /usr/local/lib/mh/replcomps The reply template
5185 or <mh-dir>/replcomps Rather than the standard template
5186 $HOME/.mh_profile The user profile
5187 <mh-dir>/draft The draft file
5188
5189
5190 _\bP_\br_\bo_\bf_\bi_\bl_\be _\bC_\bo_\bm_\bp_\bo_\bn_\be_\bn_\bt_\bs
5191 Path: To determine the user's MH directory
5192 Alternate-Mailboxes: To determine the user's mailboxes
5193 Current-Folder: To find the default current folder
5194 Draft-Folder: To find the default draft-folder
5195 Editor: To override the default editor
5196 Msg-Protect: To set mode when creating a new message
5197 (draft)
5198 fileproc: Program to refile the message
5199 mhlproc: Program to filter message being replied-to
5200 whatnowproc: Program to ask the "What now?" questions
5201
5202
5203 _\bS_\be_\be _\bA_\bl_\bs_\bo
5204 comp(1), dist(1), forw(1), send(1), whatnow(1), mh-format(5)
5205
5206
5207
5208
5209
5210 \e9
5211 \e9 [mh.6] MH.6.7 UCI version
5212
5213
5214
5215
5216
5217
5218
5219
5220
5221 REPL(1) -80- REPL(1)
5222
5223
5224 _\bD_\be_\bf_\ba_\bu_\bl_\bt_\bs
5225 `+folder' defaults to the current folder
5226 `msg' defaults to cur
5227 `-nocc all' at ATHENA sites, `-cc all' otherwise
5228 `-noannotate'
5229 `-nodraftfolder'
5230 `-noinplace'
5231 `-noquery'
5232 `-width 72'
5233
5234
5235 _\bC_\bo_\bn_\bt_\be_\bx_\bt
5236 If a folder is given, it will become the current folder. The mes-
5237 sage replied-to will become the current message.
5238
5239
5240 _\bH_\bi_\bs_\bt_\bo_\br_\by
5241 Prior to using the format string mechanism, `-noformat' used to
5242 cause address headers to be output as-is. Now all address fields
5243 are formatted using Internet standard guidelines.
5244
5245
5246 _\bB_\bu_\bg_\bs
5247 If any addresses occur in the reply template, addresses in the tem-
5248 plate that do not contain hosts are defaulted incorrectly. Instead
5249 of using the localhost for the default, _\br_\be_\bp_\bl uses the sender's
5250 host. Moral of the story: if you're going to include addresses in
5251 a reply template, include the host portion of the address.
5252
5253 The `-width columns' switch is only used to do address-folding;
5254 other headers are not line-wrapped.
5255
5256 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
5257 does not actually run the _\bw_\bh_\ba_\bt_\bn_\bo_\bw program. Hence, if you define
5258 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
5259 it.
5260
5261 If your current working directory is not writable, the link named
5262 "@" is not available.
5263
5264
5265
5266
5267
5268
5269
5270
5271
5272
5273
5274
5275 \e9
5276 \e9 [mh.6] MH.6.7 UCI version
5277
5278
5279
5280
5281
5282
5283
5284
5285
5286 RMF(1) -81- RMF(1)
5287
5288
5289 _\bN_\bA_\bM_\bE
5290 rmf - remove folder
5291
5292 _\bS_\bY_\bN_\bO_\bP_\bS_\bI_\bS
5293 rmf [+folder] [-interactive] [-nointeractive] [-help]
5294
5295 _\bD_\bE_\bS_\bC_\bR_\bI_\bP_\bT_\bI_\bO_\bN
5296
5297 _\bR_\bm_\bf removes all of the messages (files) within the specified (or
5298 default) folder, and then removes the folder (directory) itself.
5299 If there are any files within the folder which are not a part of
5300 _\bM_\bH, they will _\bn_\bo_\bt be removed, and an error will be produced. If
5301 the folder is given explicitly or the `-nointeractive' option is
5302 given, then the folder will be removed without confirmation. Oth-
5303 erwise, the user will be asked for confirmation. If _\br_\bm_\bf can't find
5304 the current folder, for some reason, the folder to be removed
5305 defaults to `+inbox' with confirmation.
5306
5307 _\bR_\bm_\bf irreversibly deletes messages that don't have other links, so
5308 use it with caution.
5309
5310 If the folder being removed is a subfolder, the parent folder will
5311 become the new current folder, and _\br_\bm_\bf will produce a message tel-
5312 ling the user this has happened. This provides an easy mechanism
5313 for selecting a set of messages, operating on the list, then remov-
5314 ing the list and returning to the current folder from which the
5315 list was extracted.
5316
5317 _\bR_\bm_\bf of a read-only folder will delete the private sequence and cur
5318 information (i.e., "atr-_\bs_\be_\bq-_\bf_\bo_\bl_\bd_\be_\br" entries) from the profile
5319 without affecting the folder itself.
5320
5321 _\bF_\bi_\bl_\be_\bs
5322 $HOME/.mh_profile The user profile
5323
5324
5325 _\bP_\br_\bo_\bf_\bi_\bl_\be _\bC_\bo_\bm_\bp_\bo_\bn_\be_\bn_\bt_\bs
5326 Path: To determine the user's MH directory
5327 Current-Folder: To find the default current folder
5328
5329
5330 _\bS_\be_\be _\bA_\bl_\bs_\bo
5331 rmm(1)
5332
5333
5334 _\bD_\be_\bf_\ba_\bu_\bl_\bt_\bs
5335 `+folder' defaults to the current folder, usually with confirmation
5336 `-interactive' if +folder' not given, `-nointeractive' otherwise
5337
5338
5339
5340 \e9
5341 \e9 [mh.6] MH.6.7 UCI version
5342
5343
5344
5345
5346
5347
5348
5349
5350
5351 RMF(1) -82- RMF(1)
5352
5353
5354 _\bC_\bo_\bn_\bt_\be_\bx_\bt
5355 _\bR_\bm_\bf will set the current folder to the parent folder if a subfolder
5356 is removed; or if the current folder is removed, it will make "in-
5357 box" current. Otherwise, it doesn't change the current folder or
5358 message.
5359
5360
5361 _\bB_\bu_\bg_\bs
5362 Although intuitively one would suspect that _\br_\bm_\bf works recursively,
5363 it does not. Hence if you have a sub-folder within a folder, in
5364 order to _\br_\bm_\bf the parent, you must first _\br_\bm_\bf each of the children.
5365
5366
5367
5368
5369
5370
5371
5372
5373
5374
5375
5376
5377
5378
5379
5380
5381
5382
5383
5384
5385
5386
5387
5388
5389
5390
5391
5392
5393
5394
5395
5396
5397
5398
5399
5400
5401
5402
5403
5404
5405 \e9
5406 \e9 [mh.6] MH.6.7 UCI version
5407
5408
5409
5410
5411
5412
5413
5414
5415
5416 RMM(1) -83- RMM(1)
5417
5418
5419 _\bN_\bA_\bM_\bE
5420 rmm - remove messages
5421
5422 _\bS_\bY_\bN_\bO_\bP_\bS_\bI_\bS
5423 rmm [+folder] [msgs] [-help]
5424
5425 _\bD_\bE_\bS_\bC_\bR_\bI_\bP_\bT_\bI_\bO_\bN
5426
5427 _\bR_\bm_\bm removes the specified messages by renaming the message files
5428 with preceding commas. Many sites consider files that start with a
5429 comma to be a temporary backup, and arrange for _\bc_\br_\bo_\bn (8) to remove
5430 such files once a day.
5431
5432 If the user has a profile component such as
5433
5434 rmmproc: /bin/rm
5435
5436 then instead of simply renaming the message file, _\br_\bm_\bm will call the
5437 named program to delete the file. Note that at most installations,
5438 _\bc_\br_\bo_\bn (8) is told to remove files that begin with a comma once a
5439 night.
5440
5441 Some users of csh prefer the following:
5442
5443 alias rmm 'refile +d'
5444
5445 where folder +d is a folder for deleted messages, and
5446
5447 alias mexp 'rm `mhpath +d all`'
5448
5449 is used to "expunge" deleted messages.
5450
5451 The current message is not changed by _\br_\bm_\bm, so a _\bn_\be_\bx_\bt will advance
5452 to the next message in the folder as expected.
5453
5454 _\bF_\bi_\bl_\be_\bs
5455 $HOME/.mh_profile The user profile
5456
5457
5458 _\bP_\br_\bo_\bf_\bi_\bl_\be _\bC_\bo_\bm_\bp_\bo_\bn_\be_\bn_\bt_\bs
5459 Path: To determine the user's MH directory
5460 Current-Folder: To find the default current folder
5461 rmmproc: Program to delete the message
5462
5463
5464 _\bS_\be_\be _\bA_\bl_\bs_\bo
5465 rmf(1)
5466
5467
5468
5469
5470 \e9
5471 \e9 [mh.6] MH.6.7 UCI version
5472
5473
5474
5475
5476
5477
5478
5479
5480
5481 RMM(1) -84- RMM(1)
5482
5483
5484 _\bD_\be_\bf_\ba_\bu_\bl_\bt_\bs
5485 `+folder' defaults to the current folder
5486 `msgs' defaults to cur
5487
5488
5489 _\bC_\bo_\bn_\bt_\be_\bx_\bt
5490 If a folder is given, it will become the current folder.
5491
5492 _\bH_\be_\bl_\bp_\bf_\bu_\bl _\bH_\bi_\bn_\bt_\bs
5493
5494 If you're not a csh user, and you have an _\br_\bm_\bm_\bp_\br_\bo_\bc script which
5495 _\br_\be_\bf_\bi_\bl_\bes messages, be sure you use something like:
5496
5497 mv `mhpath msgs` `mhpath new +folder`
5498
5499 Other work-arounds are possible, such as:
5500
5501 cd `mhpath +`
5502 MH=/dev/null MHCONTEXT=/dev/null refile $* +folder
5503
5504
5505 _\bB_\bu_\bg_\bs
5506 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
5507 must NOT call _\br_\be_\bf_\bi_\bl_\be without specifying `-normmproc', or you will
5508 create an infinte loop.
5509
5510
5511
5512
5513
5514
5515
5516
5517
5518
5519
5520
5521
5522
5523
5524
5525
5526
5527
5528
5529
5530
5531
5532
5533
5534
5535 \e9
5536 \e9 [mh.6] MH.6.7 UCI version
5537
5538
5539
5540
5541
5542
5543
5544
5545
5546 SCAN(1) -85- SCAN(1)
5547
5548
5549 _\bN_\bA_\bM_\bE
5550 scan - produce a one line per message scan listing
5551
5552 _\bS_\bY_\bN_\bO_\bP_\bS_\bI_\bS
5553 scan [+folder] [msgs] [-clear] [-noclear] [-form formatfile]
5554 [-format string] [-header] [-noheader] [-width columns]
5555 [-reverse] [-noreverse] [-file filename] [-help]
5556
5557 _\bD_\bE_\bS_\bC_\bR_\bI_\bP_\bT_\bI_\bO_\bN
5558
5559 _\bS_\bc_\ba_\bn produces a one-line-per-message listing of the specified mes-
5560 sages. Each _\bs_\bc_\ba_\bn line contains the message number (name), the
5561 date, the "From:" field, the "Subject" field, and, if room allows,
5562 some of the body of the message. For example:
5563
5564 15+ 7/ 5 Dcrocker nned <<Last week I asked some of
5565 16 - 7/ 5 dcrocker message id format <<I recommend
5566 18 7/ 6 Obrien Re: Exit status from mkdir
5567 19 7/ 7 Obrien "scan" listing format in MH
5568
5569 The `+' on message 15 indicates that it is the current message.
5570 The `-' on message 16 indicates that it has been replied to, as
5571 indicated by a "Replied:" component produced by an `-annotate'
5572 switch to the _\br_\be_\bp_\bl command.
5573
5574 If there is sufficient room left on the _\bs_\bc_\ba_\bn line after the sub-
5575 ject, the line will be filled with text from the body, preceded by
5576 <<, and terminated by >> if the body is sufficiently short. _\bS_\bc_\ba_\bn
5577 actually reads each of the specified messages and parses them to
5578 extract the desired fields. During parsing, appropriate error mes-
5579 sages will be produced if there are format errors in any of the
5580 messages.
5581
5582 The `-header' switch produces a header line prior to the _\bs_\bc_\ba_\bn list-
5583 ing. Currently, the name of the folder and the current date and
5584 time are output (see the HISTORY section for more information).
5585
5586 If the `-clear' switch is used and _\bs_\bc_\ba_\bn'_\bs output is directed to a
5587 terminal, then _\bs_\bc_\ba_\bn will consult the $TERM and $TERMCAP envariables
5588 to determine your terminal type in order to find out how to clear
5589 the screen prior to exiting. If the `-clear' switch is used and
5590 _\bs_\bc_\ba_\bn'_\bs output is not directed to a terminal (e.g., a pipe or a
5591 file), then _\bs_\bc_\ba_\bn will send a formfeed prior to exiting.
5592
5593 For example, the command:
5594
5595 (scan -clear -header; show all -show pr -f) | lpr
5596
5597 produces a scan listing of the current folder, followed by a
5598 formfeed, followed by a formatted listing of all messages in the
5599 folder, one per page. Omitting `-show pr -f' will cause the mes-
5600 sages to be concatenated, separated by a one-line header and two
5601
5602 [mh.6] MH.6.7 UCI version
5603
5604
5605
5606
5607
5608
5609
5610
5611
5612 SCAN(1) -86- SCAN(1)
5613
5614
5615 blank lines.
5616
5617 If _\bs_\bc_\ba_\bn encounters a message without a "Date:" field, rather than
5618 leaving that portion of the scan listing blank, the date is
5619 filled-in with the last write date of the message, and post-fixed
5620 with a `*'. This is particularly handy for scanning a _\bd_\br_\ba_\bf_\bt
5621 _\bf_\bo_\bl_\bd_\be_\br, as message drafts usually aren't allowed to have dates in
5622 them.
5623
5624 To override the output format used by _\bs_\bc_\ba_\bn, the `-format string' or
5625 `-format file' switches are used. This permits individual fields
5626 of the scan listing to be extracted with ease. The string is sim-
5627 ply a format string and the file is simply a format file. See
5628 _\bm_\bh-_\bf_\bo_\br_\bm_\ba_\bt (5) for the details.
5629
5630 In addition to the standard _\bm_\bh-_\bf_\bo_\br_\bm_\ba_\bt (5) escapes, _\bs_\bc_\ba_\bn also recog-
5631 nizes the following additional _\bc_\bo_\bm_\bp_\bo_\bn_\be_\bn_\bt escape:
5632
5633 _\bE_\bs_\bc_\ba_\bp_\be _\bR_\be_\bt_\bu_\br_\bn_\bs _\bD_\be_\bs_\bc_\br_\bi_\bp_\bt_\bi_\bo_\bn
5634 body string the (compressed) first part of the body
5635
5636 Also, if no date header was present in the message, the _\bf_\bu_\bn_\bc_\bt_\bi_\bo_\bn
5637 escapes which operate on {_\bd_\ba_\bt_\be} will return values for the date of
5638 last modification of the message file itself.
5639
5640
5641 _\bs_\bc_\ba_\bn will update the _\bM_\bH context prior to starting the listing, so
5642 interrupting a long _\bs_\bc_\ba_\bn listing preserves the new context. _\bM_\bH
5643 purists hate this idea.
5644
5645 _\bF_\bi_\bl_\be_\bs
5646 $HOME/.mh_profile The user profile
5647
5648
5649 _\bP_\br_\bo_\bf_\bi_\bl_\be _\bC_\bo_\bm_\bp_\bo_\bn_\be_\bn_\bt_\bs
5650 Path: To determine the user's MH directory
5651 Alternate-Mailboxes: To determine the user's mailboxes
5652 Current-Folder: To find the default current folder
5653
5654
5655 _\bS_\be_\be _\bA_\bl_\bs_\bo
5656 inc(1), pick(1), show(1), mh-format(5)
5657
5658
5659 _\bD_\be_\bf_\ba_\bu_\bl_\bt_\bs
5660 `+folder' defaults to the folder current
5661 `msgs' defaults to all
5662 `-format' defaulted as described above
5663 `-noheader'
5664 `-width' defaulted to the width of the terminal
5665
5666 \e9
5667 \e9 [mh.6] MH.6.7 UCI version
5668
5669
5670
5671
5672
5673
5674
5675
5676
5677 SCAN(1) -87- SCAN(1)
5678
5679
5680 _\bC_\bo_\bn_\bt_\be_\bx_\bt
5681 If a folder is given, it will become the current folder.
5682
5683
5684 _\bH_\bi_\bs_\bt_\bo_\br_\by
5685 Prior to using the format string mechanism, `-header' used to gen-
5686 erate a heading saying what each column in the listing was. Format
5687 strings prevent this from happening.
5688
5689
5690 _\bB_\bu_\bg_\bs
5691 The argument to the `-format' switch must be interpreted as a sin-
5692 gle token by the shell that invokes _\bs_\bc_\ba_\bn. Therefore, one must usu-
5693 ally place the argument to this switch inside double-quotes.
5694 The value of each _\bc_\bo_\bm_\bp_\bo_\bn_\be_\bn_\bt escape is set by _\bs_\bc_\ba_\bn to the contents
5695 of the first message header _\bs_\bc_\ba_\bn encounters with the corresponding
5696 component name; any following headers with the same component name
5697 are ignored.
5698
5699 The switch `-reverse', makes _\bs_\bc_\ba_\bn list the messages in reverse ord-
5700 er; this should be considered a bug.
5701
5702 The `-file filename' switch allows the user to obtain a _\bs_\bc_\ba_\bn list-
5703 ing of a maildrop file as produced by _\bp_\ba_\bc_\bk_\bf. This listing includes
5704 every message in the file. The user should use _\bm_\bs_\bh for more selec-
5705 tive processing of the file. `-reverse' is ignored with this op-
5706 tion.
5707
5708
5709
5710
5711
5712
5713
5714
5715
5716
5717
5718
5719
5720
5721
5722
5723
5724
5725
5726
5727
5728
5729
5730
5731 \e9
5732 \e9 [mh.6] MH.6.7 UCI version
5733
5734
5735
5736
5737
5738
5739
5740
5741
5742 SEND(1) -88- SEND(1)
5743
5744
5745 _\bN_\bA_\bM_\bE
5746 send - send a message
5747
5748 _\bS_\bY_\bN_\bO_\bP_\bS_\bI_\bS
5749 send [-alias aliasfile] [-draft] [-draftfolder +folder]
5750 [-draftmessage msg] [-nodraftfolder] [-filter filterfile]
5751 [-nofilter] [-format] [-noformat] [-forward] [-noforward]
5752 [-msgid] [-nomsgid] [-push] [-nopush] [-verbose] [-noverbose]
5753 [-watch] [-nowatch] [-width columns] [file ...] [-help]
5754
5755 _\bD_\bE_\bS_\bC_\bR_\bI_\bP_\bT_\bI_\bO_\bN
5756
5757 _\bS_\be_\bn_\bd will cause each of the specified files to be delivered (via
5758 _\bp_\bo_\bs_\bt (8)) to each of the destinations in the "To:", "cc:", "Bcc:",
5759 and "Fcc:" fields of the message. If _\bs_\be_\bn_\bd is re-distributing a
5760 message, as invoked from _\bd_\bi_\bs_\bt, then the corresponding "Resent-xxx"
5761 fields are examined instead.
5762
5763 If `-push' is specified, _\bs_\be_\bn_\bd will detach itself from the user's
5764 terminal and perform its actions in the background. If _\bp_\bu_\bs_\bh 'd and
5765 the draft can't be sent, then the `-forward' switch says that draft
5766 should be forwarded with the failure notice sent to the user. This
5767 differs from putting _\bs_\be_\bn_\bd in the background because the output is
5768 trapped and analyzed by _\bM_\bH.
5769
5770 If `-verbose' is specified, _\bs_\be_\bn_\bd will indicate the interactions
5771 occurring with the transport system, prior to actual delivery. If
5772 `-watch' is specified _\bs_\be_\bn_\bd will monitor the delivery of local and
5773 network mail. Hence, by specifying both switches, a large detail
5774 of information can be gathered about each step of the message's
5775 entry into the transport system.
5776
5777 The `-draftfolder +folder' and `-draftmessage msg' switches invoke
5778 the _\bM_\bH draft folder facility. This is an advanced (and highly use-
5779 ful) feature. Consult the Advanced Features section of the _\bM_\bH
5780 manual for more information.
5781
5782 _\bS_\be_\bn_\bd with no _\bf_\bi_\bl_\be argument will query whether the draft is the
5783 intended file, whereas `-draft' will suppress this question. Once
5784 the transport system has successfully accepted custody of the mes-
5785 sage, the file will be renamed with a leading comma, which allows
5786 it to be retrieved until the next draft message is sent. If there
5787 are errors in the formatting of the message, _\bs_\be_\bn_\bd will abort with a
5788 (hopefully) helpful error message.
5789
5790 If a "Bcc:" field is encountered, its addresses will be used for
5791 delivery, and the "Bcc:" field will be removed from the message
5792 sent to sighted recipients. The blind recipients will receive an
5793 entirely new message with a minimal set of headers. Included in
5794 the body of the message will be a copy of the message sent to the
5795 sighted recipients. If `-filter filterfile' is specified, then
5796 this copy is filtered (re-formatted) prior to being sent to the
5797
5798 [mh.6] MH.6.7 UCI version
5799
5800
5801
5802
5803
5804
5805
5806
5807
5808 SEND(1) -89- SEND(1)
5809
5810
5811 blind recipients.
5812
5813 Prior to sending the message, the fields "From: user@local", and
5814 "Date: now" will be appended to the headers in the message. If the
5815 envariable $SIGNATURE is set, then its value is used as your per-
5816 sonal name when constructing the "From:" line of the message. If
5817 this envariable is not set, then _\bs_\be_\bn_\bd will consult the profile
5818 entry "Signature" for this information. On hosts where _\bM_\bH was con-
5819 figured with the UCI option, if $SIGNATURE is not set and the "Sig-
5820 nature" profile entry is not present, then the file
5821 $HOME/.signature is consulted. If `-msgid' is specified, then a
5822 "Message-ID:" field will also be added to the message.
5823
5824 If _\bs_\be_\bn_\bd is re-distributing a message (when invoked by _\bd_\bi_\bs_\bt ), then
5825 "Resent-" will be prepended to each of these fields: "From:",
5826 "Date:", and "Message-ID:". If the message already contains a
5827 "From:" field, then a "Sender: user@local" field will be added as
5828 well. (An already existing "Sender:" field is an error!)
5829
5830 By using the `-format' switch, each of the entries in the "To:" and
5831 "cc:" fields will be replaced with "standard" format entries. This
5832 standard format is designed to be usable by all of the message
5833 handlers on the various systems around the Internet. If `-nofor-
5834 mat' is given, then headers are output exactly as they appear in
5835 the message draft.
5836
5837 If an "Fcc: folder" is encountered, the message will be copied to
5838 the specified folder for the sender in the format in which it will
5839 appear to any non-Bcc receivers of the message. That is, it will
5840 have the appended fields and field reformatting. The "Fcc:" fields
5841 will be removed from all outgoing copies of the message.
5842
5843 By using the `-width columns' switch, the user can direct _\bs_\be_\bn_\bd as
5844 to how long it should make header lines containing addresses.
5845
5846 The file specified by the profile entry "Aliasfile:" and any addi-
5847 tional alias files given by the `-alias aliasfile' switch will be
5848 read (more than one file, each preceeded by `-alias', can be
5849 named). See _\bm_\bh-_\ba_\bl_\bi_\ba_\bs (5) for more information.
5850
5851 _\bF_\bi_\bl_\be_\bs
5852 $HOME/.mh_profile The user profile
5853
5854
5855 _\bP_\br_\bo_\bf_\bi_\bl_\be _\bC_\bo_\bm_\bp_\bo_\bn_\be_\bn_\bt_\bs
5856 Path: To determine the user's MH directory
5857 Draft-Folder: To find the default draft-folder
5858 Aliasfile: For a default alias file
5859 Signature: To determine the user's mail signature
5860 mailproc: Program to post failure notices
5861 postproc: Program to post the message
5862 \e9
5863 \e9 [mh.6] MH.6.7 UCI version
5864
5865
5866
5867
5868
5869
5870
5871
5872
5873 SEND(1) -90- SEND(1)
5874
5875
5876 _\bS_\be_\be _\bA_\bl_\bs_\bo
5877 comp(1), dist(1), forw(1), repl(1), mh-alias(5), post(8)
5878
5879
5880 _\bD_\be_\bf_\ba_\bu_\bl_\bt_\bs
5881 `file' defaults to <mh-dir>/draft
5882 `-alias /usr/local/lib/mh/MailAliases'
5883 `-nodraftfolder'
5884 `-nofilter'
5885 `-format'
5886 `-forward'
5887 `-nomsgid'
5888 `-nopush'
5889 `-noverbose'
5890 `-nowatch'
5891 `-width 72'
5892
5893
5894 _\bC_\bo_\bn_\bt_\be_\bx_\bt
5895 None
5896
5897
5898
5899
5900
5901
5902
5903
5904
5905
5906
5907
5908
5909
5910
5911
5912
5913
5914
5915
5916
5917
5918
5919
5920
5921
5922
5923
5924
5925
5926
5927 \e9
5928 \e9 [mh.6] MH.6.7 UCI version
5929
5930
5931
5932
5933
5934
5935
5936
5937
5938 SHOW(1) -91- SHOW(1)
5939
5940
5941 _\bN_\bA_\bM_\bE
5942 show - show (list) messages
5943
5944 _\bS_\bY_\bN_\bO_\bP_\bS_\bI_\bS
5945 show [+folder] [msgs] [-draft] [-header] [-noheader]
5946 [-showproc program] [-noshowproc] [switches for _\bs_\bh_\bo_\bw_\bp_\br_\bo_\bc]
5947 [-help]
5948
5949 _\bD_\bE_\bS_\bC_\bR_\bI_\bP_\bT_\bI_\bO_\bN
5950
5951 _\bS_\bh_\bo_\bw lists each of the specified messages to the standard output
5952 (typically, the terminal). Typically, the messages are listed
5953 exactly as they are, with no reformatting. A program named by the
5954 _\bs_\bh_\bo_\bw_\bp_\br_\bo_\bc profile component is invoked to do the listing, and any
5955 switches not recognized by _\bs_\bh_\bo_\bw are passed along to that program.
5956 The default program is known as _\bm_\bo_\br_\be (1). To override the default
5957 and the _\bs_\bh_\bo_\bw_\bp_\br_\bo_\bc profile component, use the `-showproc program'
5958 switch. For example, `-show pr' will cause the _\bp_\br (1) program to
5959 list the messages. The _\bM_\bH command _\bm_\bh_\bl can be used as a _\bs_\bh_\bo_\bw_\bp_\br_\bo_\bc to
5960 show messages in a more uniform format. Normally, this program is
5961 specified as the _\bs_\bh_\bo_\bw_\bp_\br_\bo_\bc is the user's .mh_profile. See _\bm_\bh_\bl (1)
5962 for the details. If the `-noshowproc' option is specified,
5963 `/bin/cat' is used instead of _\bs_\bh_\bo_\bw_\bp_\br_\bo_\bc.
5964
5965 The `-header' switch tells _\bs_\bh_\bo_\bw to display a one-line description
5966 of the message being shown. This description includes the folder
5967 and the message number.
5968
5969 If no `msgs' are specified, the current message is used. If more
5970 than one message is specified, _\bm_\bo_\br_\be will prompt for a <RETURN>
5971 prior to listing each message. _\bm_\bo_\br_\be will list each message, a page
5972 at a time. When the end of page is reached, _\bm_\bo_\br_\be will ring the
5973 bell and wait for a <SPACE> or <RETURN>. If a <RETURN> is entered,
5974 _\bm_\bo_\br_\be will print the next line, whereas <SPACE> will print the next
5975 screenful. To exit _\bm_\bo_\br_\be, type "q".
5976
5977 If the standard output is not a terminal, no queries are made, and
5978 each file is listed with a one-line header and two lines of separa-
5979 tion.
5980
5981 "show -draft" will list the file <mh-dir>/draft if it exists.
5982
5983 If the profile entry "Unseen-Sequence" is present and non-empty,
5984 then _\bs_\bh_\bo_\bw will remove each of the messages shown from each sequence
5985 named by the profile entry. This is similar to the
5986 "Previous-Sequence" profile entry supported by all _\bM_\bH commands
5987 which take `msgs' or `msg' arguments.
5988
5989 _\bF_\bi_\bl_\be_\bs
5990 $HOME/.mh_profile The user profile
5991
5992 \e9
5993 \e9 [mh.6] MH.6.7 UCI version
5994
5995
5996
5997
5998
5999
6000
6001
6002
6003 SHOW(1) -92- SHOW(1)
6004
6005
6006 _\bP_\br_\bo_\bf_\bi_\bl_\be _\bC_\bo_\bm_\bp_\bo_\bn_\be_\bn_\bt_\bs
6007 Path: To determine the user's MH directory
6008 Current-Folder: To find the default current folder
6009 Unseen-Sequence: To name sequences denoting unseen messages
6010 showproc: Program to show messages
6011
6012
6013 _\bS_\be_\be _\bA_\bl_\bs_\bo
6014 mhl(1), more(1), next(1), pick(1), prev(1), scan(1)
6015
6016
6017 _\bD_\be_\bf_\ba_\bu_\bl_\bt_\bs
6018 `+folder' defaults to the current folder
6019 `msgs' defaults to cur
6020 `-header'
6021
6022
6023 _\bC_\bo_\bn_\bt_\be_\bx_\bt
6024 If a folder is given, it will become the current folder. The last
6025 message shown will become the current message.
6026
6027
6028
6029
6030
6031
6032
6033
6034
6035
6036
6037
6038
6039
6040
6041
6042
6043
6044
6045
6046
6047
6048
6049
6050
6051
6052
6053
6054
6055
6056
6057 \e9
6058 \e9 [mh.6] MH.6.7 UCI version
6059
6060
6061
6062
6063
6064
6065
6066
6067
6068 SHOW(1) -93- SHOW(1)
6069
6070
6071 _\bB_\bu_\bg_\bs
6072 The `-header' switch doesn't work when `msgs' expands to more than
6073 one message. If the _\bs_\bh_\bo_\bw_\bp_\br_\bo_\bc is _\bm_\bh_\bl, then is problem can be cir-
6074 cumvented by referencing the "messagename" field in the _\bm_\bh_\bl format
6075 file.
6076
6077 _\bS_\bh_\bo_\bw updates the user's context before showing the message. Hence
6078 _\bs_\bh_\bo_\bw will mark messages as seen prior to the user actually seeing
6079 them. This is generally not a problem, unless the user relies on
6080 the "unseen" messages mechanism, and interrupts _\bs_\bh_\bo_\bw while it is
6081 showing "unseen" messages.
6082
6083 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-
6084 tually run the _\bm_\bh_\bl program. Hence, if you define your own
6085 _\bs_\bh_\bo_\bw_\bp_\br_\bo_\bc, don't call it _\bm_\bh_\bl since _\bs_\bh_\bo_\bw won't run it.
6086
6087 If _\bm_\bo_\br_\be (1) is your showproc (the default), then avoid running _\bs_\bh_\bo_\bw
6088 in the background with only its standard output piped to another
6089 process, as in
6090
6091 show | imprint &
6092
6093 Due to a bug in _\bm_\bo_\br_\be, show will go into a "tty input" state. To
6094 avoid this problem, re-direct _\bs_\bh_\bo_\bw's diagnostic output as well.
6095 For users of _\bc_\bs_\bh:
6096
6097 show |& imprint &
6098
6099 For users of _\bs_\bh:
6100
6101 show 2>&1 | imprint &
6102
6103
6104
6105
6106
6107
6108
6109
6110
6111
6112
6113
6114
6115
6116
6117
6118
6119
6120
6121
6122 \e9
6123 \e9 [mh.6] MH.6.7 UCI version
6124
6125
6126
6127
6128
6129
6130
6131
6132
6133 SORTM(1) -94- SORTM(1)
6134
6135
6136 _\bN_\bA_\bM_\bE
6137 sortm - sort messages
6138
6139 _\bS_\bY_\bN_\bO_\bP_\bS_\bI_\bS
6140 sortm [+folder] [msgs] [-datefield field] [-textfield field]
6141 [-notextfield] [-limit days] [-nolimit] [-verbose]
6142 [-noverbose] [-help]
6143
6144 _\bD_\bE_\bS_\bC_\bR_\bI_\bP_\bT_\bI_\bO_\bN
6145
6146 _\bS_\bo_\br_\bt_\bm sorts the specified messages in the named folder according to
6147 the chronological order of the "Date:" field of each message.
6148
6149 The `-verbose' switch directs _\bs_\bo_\br_\bt_\bm to tell the user the general
6150 actions that it is taking to place the folder in sorted order.
6151
6152 The `-datefield field' switch tells _\bs_\bo_\br_\bt_\bm the name of the field to
6153 use when making the date comparison. If the user has a special
6154 field in each message, such as "BB-Posted:" or "Delivery-Date:",
6155 then the `-datefield' switch can be used to direct _\bs_\bo_\br_\bt_\bm which
6156 field to examine.
6157
6158 The `-textfield field' switch causes _\bs_\bo_\br_\bt_\bm to sort messages by the
6159 specified text field. If this field is "subject", any leading
6160 "re:" is stripped off. In any case, all characters except letters
6161 and numbers are stripped and the resulting strings are sorted
6162 datefield-major, textfield-minor, using a case insensitive com-
6163 parison.
6164
6165 With `-textfield field', if `-limit days' is specified, messages
6166 with similar textfields that are dated within `days' of each other
6167 appear together. Specifying `-nolimit' makes the limit infinity.
6168 With `-limit 0', the sort is instead made textfield-major,
6169 date-minor.
6170
6171 For example, to order a folder by date-major, subject-minor, use:
6172
6173 sortm -textfield subject +folder
6174
6175
6176 _\bF_\bi_\bl_\be_\bs
6177 $HOME/.mh_profile The user profile
6178
6179
6180 _\bP_\br_\bo_\bf_\bi_\bl_\be _\bC_\bo_\bm_\bp_\bo_\bn_\be_\bn_\bt_\bs
6181 Path: To determine the user's MH directory
6182 Current-Folder: To find the default current folder
6183
6184
6185 _\bS_\be_\be _\bA_\bl_\bs_\bo
6186 folder (1)
6187 \e9
6188 \e9 [mh.6] MH.6.7 UCI version
6189
6190
6191
6192
6193
6194
6195
6196
6197
6198 SORTM(1) -95- SORTM(1)
6199
6200
6201 _\bD_\be_\bf_\ba_\bu_\bl_\bt_\bs
6202 `+folder' defaults to the current folder
6203 `msgs' defaults to all
6204 `-datefield date'
6205 `-notextfield'
6206 `-noverbose'
6207 `-nolimit'
6208
6209
6210 _\bC_\bo_\bn_\bt_\be_\bx_\bt
6211 If a folder is given, it will become the current folder. If the
6212 current message is moved, _\bs_\bo_\br_\bt_\bm will preserve its status as
6213 current.
6214
6215
6216 _\bH_\bi_\bs_\bt_\bo_\br_\by
6217 Timezones used to be ignored when comparing dates: they aren't any
6218 more.
6219
6220 Messages which were in the folder, but not specified by `msgs',
6221 used to be moved to the end of the folder; now such messages are
6222 left untouched.
6223
6224 Previously, _\bs_\bo_\br_\bt_\bm would try to fill any gaps in a folder within the
6225 range of messages it sorted. To improve performance, _\bs_\bo_\br_\bt_\bm now
6226 minimizes the number of message moves. To pack a folder, use
6227 "_\bf_\bo_\bl_\bd_\be_\br -_\bp_\ba_\bc_\bk" instead.
6228
6229
6230 _\bB_\bu_\bg_\bs
6231 If _\bs_\bo_\br_\bt_\bm encounters a message without a date-field, or if the mes-
6232 sage has a date-field that _\bs_\bo_\br_\bt_\bm cannot parse, then _\bs_\bo_\br_\bt_\bm attempts
6233 to keep the message in the same relative position. This does not
6234 always work. For instance, if the first message encountered lacks
6235 a date which can be parsed, then it will usually be placed at the
6236 end of the messages being sorted.
6237
6238 When _\bs_\bo_\br_\bt_\bm complains about a message which it can't temporally ord-
6239 er, it complains about the message number _\bp_\br_\bi_\bo_\br to sorting. It
6240 should indicate what the message number will be _\ba_\bf_\bt_\be_\br sorting.
6241
6242
6243
6244
6245
6246
6247
6248
6249
6250
6251
6252 \e9
6253 \e9 [mh.6] MH.6.7 UCI version
6254
6255
6256
6257
6258
6259
6260
6261
6262
6263 VMH(1) -96- VMH(1)
6264
6265
6266 _\bN_\bA_\bM_\bE
6267 vmh - visual front-end to MH
6268
6269 _\bS_\bY_\bN_\bO_\bP_\bS_\bI_\bS
6270 vmh [-prompt string] [-vmhproc program] [-novmhproc]
6271 [switches for _\bv_\bm_\bh_\bp_\br_\bo_\bc] [-help]
6272
6273 _\bD_\bE_\bS_\bC_\bR_\bI_\bP_\bT_\bI_\bO_\bN
6274
6275 _\bv_\bm_\bh is a program which implements the server side of the _\bM_\bH window
6276 management protocol and uses _\bc_\bu_\br_\bs_\be_\bs (3) routines to maintain a
6277 split-screen interface to any program which implements the client
6278 side of the protocol. This latter program, called the _\bv_\bm_\bh_\bp_\br_\bo_\bc, is
6279 specified using the `-vmhproc program' switch.
6280
6281 The upshot of all this is that one can run _\bm_\bs_\bh on a display termi-
6282 nal and get a nice visual interface. To do this, for example, just
6283 add the line
6284
6285 mshproc: vmh
6286
6287 to your .mh_profile. (This takes advantage of the fact that _\bm_\bs_\bh is
6288 the default _\bv_\bm_\bh_\bp_\br_\bo_\bc for _\bv_\bm_\bh.)
6289
6290 In order to facilitate things, if the `-novmhproc' switch is given,
6291 and _\bv_\bm_\bh can't run on the user's terminal, the _\bv_\bm_\bh_\bp_\br_\bo_\bc is run
6292 directly without the window management protocol.
6293
6294 After initializing the protocol, _\bv_\bm_\bh prompts the user for a command
6295 to be given to the client. Usually, this results in output being
6296 sent to one or more windows. If a output to a window would cause
6297 it to scroll, _\bv_\bm_\bh prompts the user for instructions, roughly per-
6298 mitting the capabilities of _\bl_\be_\bs_\bs or _\bm_\bo_\br_\be (e.g., the ability to
6299 scroll backwards and forwards):
6300
6301 SPACE advance to the next windowful
6302 RETURN * advance to the next line
6303 y * retreat to the previous line
6304 d * advance to the next ten lines
6305 u * retreat to the previous ten lines
6306 g * go to an arbitrary line
6307 (preceed g with the line number)
6308 G * go to the end of the window
6309 (if a line number is given, this acts like `g')
6310 CTRL-L refresh the entire screen
6311 h print a help message
6312 q abort the window
6313
6314 (A `*' indicates that a numeric prefix is meaningful for this com-
6315 mand.)
6316
6317 Note that if a command resulted in more than one window's worth of
6318
6319 [mh.6] MH.6.7 UCI version
6320
6321
6322
6323
6324
6325
6326
6327
6328
6329 VMH(1) -97- VMH(1)
6330
6331
6332 information being displayed, and you allow the command which is
6333 generating information for the window to gracefully finish (i.e.,
6334 you don't use the `q' command to abort information being sent to
6335 the window), then _\bv_\bm_\bh will give you one last change to peruse the
6336 window. This is useful for scrolling back and forth. Just type
6337 `q' when you're done.
6338
6339 To abnormally terminate _\bv_\bm_\bh (without core dump), use <QUIT> (usu-
6340 ally CTRL-\). For instance, this does the "right" thing with _\bb_\bb_\bc
6341 and _\bm_\bs_\bh.
6342
6343 _\bF_\bi_\bl_\be_\bs
6344 $HOME/.mh_profile The user profile
6345
6346
6347 _\bP_\br_\bo_\bf_\bi_\bl_\be _\bC_\bo_\bm_\bp_\bo_\bn_\be_\bn_\bt_\bs
6348 Path: To determine the user's MH directory
6349
6350
6351 _\bS_\be_\be _\bA_\bl_\bs_\bo
6352 msh(1)
6353
6354
6355 _\bD_\be_\bf_\ba_\bu_\bl_\bt_\bs
6356 `-prompt (vmh) '
6357 `-vmhproc msh'
6358
6359
6360 _\bC_\bo_\bn_\bt_\be_\bx_\bt
6361 None
6362
6363
6364 _\bB_\bu_\bg_\bs
6365 The argument to the `-prompt' switch must be interpreted as a sin-
6366 gle token by the shell that invokes _\bv_\bm_\bh. Therefore, one must usu-
6367 ally place the argument to this switch inside double-quotes.
6368
6369 At present, there is no way to pass signals (e.g., interrupt, quit)
6370 to the client. However, generating QUIT when _\bv_\bm_\bh is reading a com-
6371 mand from the terminal is sufficient to tell the client to go away
6372 quickly.
6373
6374 Acts strangely (loses peer or botches window management protocol
6375 with peer) on random occasions.
6376
6377
6378
6379
6380
6381
6382
6383 \e9
6384 \e9 [mh.6] MH.6.7 UCI version
6385
6386
6387
6388
6389
6390
6391
6392
6393
6394 WHATNOW(1) -98- WHATNOW(1)
6395
6396
6397 _\bN_\bA_\bM_\bE
6398 whatnow - prompting front-end for send
6399
6400 _\bS_\bY_\bN_\bO_\bP_\bS_\bI_\bS
6401 whatnow [-draftfolder +folder] [-draftmessage msg] [-nodraftfolder]
6402 [-editor editor] [-noedit] [-prompt string] [file] [-help]
6403
6404 _\bD_\bE_\bS_\bC_\bR_\bI_\bP_\bT_\bI_\bO_\bN
6405
6406 _\bW_\bh_\ba_\bt_\bn_\bo_\bw is the default program that queries the user about the
6407 disposition of a composed draft. It is normally invoked by one of
6408 _\bc_\bo_\bm_\bp, _\bd_\bi_\bs_\bt, _\bf_\bo_\br_\bw, or _\br_\be_\bp_\bl after the initial edit.
6409
6410 When started, the editor is started on the draft (unless `-noedit'
6411 is given, in which case the initial edit is suppressed). Then,
6412 _\bw_\bh_\ba_\bt_\bn_\bo_\bw repetitively prompts the user with "What now?" and awaits a
6413 response. The valid responses are:
6414
6415 display to list the message being distributed/replied-to on
6416 the terminal
6417 edit to re-edit using the same editor that was used on the
6418 preceding round unless a profile entry
6419 "<lasteditor>-next: <editor>" names an alternate editor
6420 edit <editor> to invoke <editor> for further editing
6421 list to list the draft on the terminal
6422 push to send the message in the background
6423 quit to terminate the session and preserve the draft
6424 quit -delete to terminate, then delete the draft
6425 refile +folder to refile the draft into the given folder
6426 send to send the message
6427 send -watch to cause the delivery process to be monitored
6428 whom to list the addresses that the message will go to
6429 whom -check to list the addresses and verify that they are
6430 acceptable to the transport service
6431
6432 For the edit response, any valid switch to the editor is valid.
6433 Similarly, for the send and whom responses, any valid switch to
6434 _\bs_\be_\bn_\bd (1) and _\bw_\bh_\bo_\bm (1) commands, respectively, are valid. For the
6435 push response, any valid switch to _\bs_\be_\bn_\bd (1) is valid (as this
6436 merely invokes _\bs_\be_\bn_\bd with the `-push' option). For the _\br_\be_\bf_\bi_\bl_\be
6437 response, any valid switch to the _\bf_\bi_\bl_\be_\bp_\br_\bo_\bc is valid. For the
6438 display and list responses, any valid argument to the _\bl_\bp_\br_\bo_\bc is
6439 valid. If any non-switch arguments are present, then the pathname
6440 of the draft will be excluded from the argument list given to the
6441 _\bl_\bp_\br_\bo_\bc (this is useful for listing another _\bM_\bH message).
6442
6443 See _\bm_\bh-_\bp_\br_\bo_\bf_\bi_\bl_\be (5) for further information about how editors are
6444 used by MH. It also discusses how complex envariables can be used
6445 to direct _\bw_\bh_\ba_\bt_\bn_\bo_\bw's actions.
6446
6447 The `-prompt string' switch sets the prompting string for _\bw_\bh_\ba_\bt_\bn_\bo_\bw.
6448 \e9
6449 \e9 [mh.6] MH.6.7 UCI version
6450
6451
6452
6453
6454
6455
6456
6457
6458
6459 WHATNOW(1) -99- WHATNOW(1)
6460
6461
6462 The `-draftfolder +folder' and `-draftmessage msg' switches invoke
6463 the _\bM_\bH draft folder facility. This is an advanced (and highly use-
6464 ful) feature. Consult the Advanced Features section of the _\bM_\bH
6465 manual for more information.
6466
6467 _\bF_\bi_\bl_\be_\bs
6468 $HOME/.mh_profile The user profile
6469 <mh-dir>/draft The draft file
6470
6471
6472 _\bP_\br_\bo_\bf_\bi_\bl_\be _\bC_\bo_\bm_\bp_\bo_\bn_\be_\bn_\bt_\bs
6473 Path: To determine the user's MH directory
6474 Draft-Folder: To find the default draft-folder
6475 Editor: To override the default editor
6476 <lasteditor>-next: To name an editor to be used after exit from
6477 <lasteditor>
6478 fileproc: Program to refile the message
6479 lproc: Program to list the contents of a message
6480 sendproc: Program to use to send the message
6481 whomproc: Program to determine who a message would go to
6482
6483
6484 _\bS_\be_\be _\bA_\bl_\bs_\bo
6485 send(1), whom(1)
6486
6487
6488 _\bD_\be_\bf_\ba_\bu_\bl_\bt_\bs
6489 `-prompt "What Now? "'
6490
6491
6492 _\bC_\bo_\bn_\bt_\be_\bx_\bt
6493 None
6494
6495
6496 _\bB_\bu_\bg_\bs
6497 The argument to the `-prompt' switch must be interpreted as a sin-
6498 gle token by the shell that invokes _\bw_\bh_\ba_\bt_\bn_\bo_\bw. Therefore, one must
6499 usually place the argument to this switch inside double-quotes.
6500
6501 If the initial edit fails, _\bw_\bh_\ba_\bt_\bn_\bo_\bw deletes your draft (by renaming
6502 it with a leading comma); failure of a later edit preverves the
6503 draft.
6504
6505 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
6506 built-in _\bw_\bh_\ba_\bt_\bn_\bo_\bw, and do not actually run the _\bw_\bh_\ba_\bt_\bn_\bo_\bw program.
6507 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
6508 since it won't be run.
6509
6510 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
6511 actually run the _\bs_\be_\bn_\bd program. Hence, if you define your own
6512 _\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.
6513 \e9
6514 \e9 [mh.6] MH.6.7 UCI version
6515
6516
6517
6518
6519
6520
6521
6522
6523
6524 WHATNOW(1) -100- WHATNOW(1)
6525
6526
6527 _\bN_\bA_\bM_\bE
6528 whom - report to whom a message would go
6529
6530 _\bS_\bY_\bN_\bO_\bP_\bS_\bI_\bS
6531 whom [-alias aliasfile] [-check] [-nocheck] [-draft]
6532 [-draftfolder +folder] [-draftmessage msg] [-nodraftfolder]
6533 [file] [-help]
6534
6535 _\bD_\bE_\bS_\bC_\bR_\bI_\bP_\bT_\bI_\bO_\bN
6536
6537 _\bW_\bh_\bo_\bm is used to expand the headers of a message into a set of
6538 addresses and optionally verify that those addresses are deliver-
6539 able at that time (if `-check' is given).
6540
6541 The `-draftfolder +folder' and `-draftmessage msg' switches invoke
6542 the _\bM_\bH draft folder facility. This is an advanced (and highly use-
6543 ful) feature. Consult the Advanced Features section of the _\bM_\bH
6544 manual for more information.
6545
6546 The file specified by the profile entry "Aliasfile:" and any addi-
6547 tional alias files given by the `-alias aliasfile' switch will be
6548 read (more than one file, each preceeded by `-alias', can be
6549 named). See _\bm_\bh-_\ba_\bl_\bi_\ba_\bs (5) for more information.
6550
6551 _\bF_\bi_\bl_\be_\bs
6552 $HOME/.mh_profile The user profile
6553
6554
6555 _\bP_\br_\bo_\bf_\bi_\bl_\be _\bC_\bo_\bm_\bp_\bo_\bn_\be_\bn_\bt_\bs
6556 Path: To determine the user's MH directory
6557 Draft-Folder: To find the default draft-folder
6558 Aliasfile: For a default alias file
6559 postproc: Program to post the message
6560
6561
6562 _\bS_\be_\be _\bA_\bl_\bs_\bo
6563 mh-alias(5), post(8)
6564
6565
6566 _\bD_\be_\bf_\ba_\bu_\bl_\bt_\bs
6567 `file' defaults to <mh-dir>/draft
6568 `-nocheck'
6569 `-alias /usr/local/lib/mh/MailAliases'
6570
6571
6572 _\bC_\bo_\bn_\bt_\be_\bx_\bt
6573 None
6574
6575
6576
6577
6578 \e9
6579 \e9 [mh.6] MH.6.7 UCI version
6580
6581
6582
6583
6584
6585
6586
6587
6588
6589 WHOM(1) -101- WHOM(1)
6590
6591
6592 _\bB_\bu_\bg_\bs
6593 With the `-check' option, _\bw_\bh_\bo_\bm makes no guarantees that the ad-
6594 dresses listed as being ok are really deliverable, rather, an ad-
6595 dress being listed as ok means that at the time that _\bw_\bh_\bo_\bm was run
6596 the address was thought to be deliverable by the transport service.
6597 For local addresses, this is absolute; for network addresses, it
6598 means that the host is known; for uucp addresses, it (often) means
6599 that the _\bU_\bU_\bC_\bP network is available for use.
6600
6601
6602
6603
6604
6605
6606
6607
6608
6609
6610
6611
6612
6613
6614
6615
6616
6617
6618
6619
6620
6621
6622
6623
6624
6625
6626
6627
6628
6629
6630
6631
6632
6633
6634
6635
6636
6637
6638
6639
6640
6641
6642
6643 \e9
6644 \e9 [mh.6] MH.6.7 UCI version
6645
6646
6647
6648
6649
6650
6651
6652
6653
6654 -102-
6655
6656
6657 _\bM_\bO_\bR_\bE _\bD_\bE_\bT_\bA_\bI_\bL_\bS
6658
6659 This section describes some of the more intense points of the _\bM_\bH
6660 system, by expanding on topics previously discussed. The format
6661 presented conforms to the standard form for the description of UNIX
6662 documentation.
6663
6664
6665
6666
6667
6668
6669
6670
6671
6672
6673
6674
6675
6676
6677
6678
6679
6680
6681
6682
6683
6684
6685
6686
6687
6688
6689
6690
6691
6692
6693
6694
6695
6696
6697
6698
6699
6700
6701
6702
6703
6704
6705
6706
6707
6708 \e9
6709 \e9
6710
6711
6712
6713
6714
6715
6716
6717
6718
6719 MH-ALIAS(5) -103- MH-ALIAS(5)
6720
6721
6722 _\bN_\bA_\bM_\bE
6723 mh-alias - alias file for MH message system
6724
6725 _\bS_\bY_\bN_\bO_\bP_\bS_\bI_\bS
6726 any _\bM_\bH command
6727
6728 _\bD_\bE_\bS_\bC_\bR_\bI_\bP_\bT_\bI_\bO_\bN
6729
6730 This describes both _\bM_\bH personal alias files and the (primary) alias
6731 file for mail delivery, the file
6732
6733 /usr/local/lib/mh/MailAliases
6734
6735 It does not describe aliases files used by the message transport
6736 system. Each line of the alias file has the format:
6737
6738 alias : address-group
6739 or
6740 alias ; address-group
6741 or
6742 < alias-file
6743 or
6744 ; comment
6745
6746 where:
6747
6748 address-group := address-list
6749 | "<" file
6750 | "=" UNIX-group
6751 | "+" UNIX-group
6752 | "*"
6753
6754 address-list := address
6755 | address-list, address
6756
6757 Continuation lines in alias files end with `\' followed by the new-
6758 line character.
6759
6760 Alias-file and file are UNIX file names. UNIX-group is a group
6761 name (or number) from /_\be_\bt_\bc/_\bg_\br_\bo_\bu_\bp. An address is a "simple"
6762 Internet-style address. Througout this file, case is ignored,
6763 except for alias-file names.
6764
6765 If the line starts with a `<', then the file named after the `<' is
6766 read for more alias definitions. The reading is done recursively,
6767 so a `<' may occur in the beginning of an alias file with the
6768 expected results.
6769
6770 If the address-group starts with a `<', then the file named after
6771 the `<' is read and its contents are added to the address-list for
6772 the alias.
6773 \e9
6774 \e9 [mh.6] MH.6.7 UCI version
6775
6776
6777
6778
6779
6780
6781
6782
6783
6784 MH-ALIAS(5) -104- MH-ALIAS(5)
6785
6786
6787 If the address-group starts with an `=', then the file /_\be_\bt_\bc/_\bg_\br_\bo_\bu_\bp
6788 is consulted for the UNIX-group named after the `='. Each login
6789 name occurring as a member of the group is added to the
6790 address-list for the alias.
6791
6792 In contrast, if the address-group starts with a `+', then the file
6793 /_\be_\bt_\bc/_\bg_\br_\bo_\bu_\bp is consulted to determine the group-id of the UNIX-group
6794 named after the `+'. Each login name occurring in the /_\be_\bt_\bc/_\bp_\ba_\bs_\bs_\bw_\bd
6795 file whose group-id is indicated by this group is added to the
6796 address-list for the alias.
6797
6798 If the address-group is simply `*', then the file /_\be_\bt_\bc/_\bp_\ba_\bs_\bs_\bw_\bd is
6799 consulted and all login names with a userid greater than some magic
6800 number (usually 200) are added to the address-list for the alias.
6801
6802 In match, a trailing * on an alias will match just about anything
6803 appropriate. (See example below.)
6804
6805 An approximation of the way aliases are resolved at posting time is
6806 (it's not really done this way):
6807
6808 1) Build a list of all addresses from the message to be
6809 delivered, eliminating duplicate addresses.
6810
6811 2) If this draft originated on the local host, then for those
6812 addresses in the message that have no host specified, perform
6813 alias resolution.
6814
6815 3) For each line in the alias file, compare "alias" against
6816 all of the existing addresses. If a match, remove the matched
6817 "alias" from the address list, and add each new address in the
6818 address-group to the address list if it is not already on the
6819 list. The alias itself is not usually output, rather the
6820 address-group that the alias maps to is output instead. If
6821 "alias" is terminated with a `;' instead of a `:', then both
6822 the "alias" and the address are output in the correct format.
6823 (This makes replies possible since _\bM_\bH aliases and personal
6824 aliases are unknown to the mail transport system.)
6825
6826 Since the alias file is read line by line, forward references work,
6827 but backward references are not recognized, thus, there is no
6828 recursion.
6829
6830 Example:
6831 </usr/local/lib/mh/BBoardAliases
6832 sgroup: fred, fear, freida
6833 fred: frated@UCI
6834 UNIX-committee: <unix.aliases
6835 staff: =staff
6836 wheels: +wheel
6837 everyone: *
6838 news.*: news
6839
6840 [mh.6] MH.6.7 UCI version
6841
6842
6843
6844
6845
6846
6847
6848
6849
6850 MH-ALIAS(5) -105- MH-ALIAS(5)
6851
6852
6853 The first line says that more aliases should immediately be read
6854 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,
6855 "fred" is defined as an alias for "frated@UCI", and "sgroup" is
6856 defined as an alias for the three names "frated@UCI", "fear", and
6857 "freida". Next, the definition of "UNIX-committee" is given by
6858 reading the file _\bu_\bn_\bi_\bx._\ba_\bl_\bi_\ba_\bs_\be_\bs in the users _\bM_\bH directory, "staff" is
6859 defined as all users who are listed as members of the group "staff"
6860 in the /_\be_\bt_\bc/_\bg_\br_\bo_\bu_\bp file, and "wheels" is defined as all users whose
6861 group-id in /_\be_\bt_\bc/_\bp_\ba_\bs_\bs_\bw_\bd is equivalent to the "wheel" group.
6862 Finally, "everyone" is defined as all users with a user-id in
6863 /_\be_\bt_\bc/_\bp_\ba_\bs_\bs_\bw_\bd greater than 200, and all aliases of the form
6864 "news.<anything>" are defined to be "news".
6865
6866 The key thing to understand about aliasing in _\bM_\bH is that aliases in
6867 _\bM_\bH alias files are expanded into the headers of messages posted.
6868 This aliasing occurs first, at posting time, without the knowledge
6869 of the message transport system. In contrast, once the message
6870 transport system is given a message to deliver to a list of
6871 addresses, for each address that appears to be local, a system-wide
6872 alias file is consulted. These aliases are NOT expanded into the
6873 headers of messages delivered.
6874
6875 _\bH_\be_\bl_\bp_\bf_\bu_\bl _\bH_\bi_\bn_\bt_\bs
6876
6877 To use aliasing in _\bM_\bH quickly, do the following:
6878
6879 First, in your ._\bm_\bh__\bp_\br_\bo_\bf_\bi_\bl_\be, choose a name for your primary
6880 alias file, say "aliases", and add the line:
6881
6882 Aliasfile: aliases
6883
6884 Second, create the file "aliases" in your _\bM_\bH directory.
6885
6886 Third, start adding aliases to your "aliases" file as
6887 appropriate.
6888
6889 _\bF_\bi_\bl_\be_\bs
6890 /usr/local/lib/mh/MailAliases Primary alias file
6891
6892
6893 _\bP_\br_\bo_\bf_\bi_\bl_\be _\bC_\bo_\bm_\bp_\bo_\bn_\be_\bn_\bt_\bs
6894 Aliasfile: For a default alias file
6895
6896
6897 _\bS_\be_\be _\bA_\bl_\bs_\bo
6898 ali(1), send(1), whom(1), group(5), passwd(5), conflict(8), post(8)
6899
6900
6901 _\bD_\be_\bf_\ba_\bu_\bl_\bt_\bs
6902 None
6903
6904 \e9
6905 \e9 [mh.6] MH.6.7 UCI version
6906
6907
6908
6909
6910
6911
6912
6913
6914
6915 MH-ALIAS(5) -106- MH-ALIAS(5)
6916
6917
6918 _\bC_\bo_\bn_\bt_\be_\bx_\bt
6919 None
6920
6921
6922 _\bH_\bi_\bs_\bt_\bo_\br_\by
6923 In previous releases of _\bM_\bH, only a single, system-wide mh-alias
6924 file was supported. Now that _\bM_\bH uses _\bM_\bM_\bD_\bF as a transport system,
6925 the system-wide aliasing facility can be more consistently con-
6926 trolled by the latter. This means that at most sites, the
6927 system-wide mh-alias file will be empty (or trivial at best).
6928 Hence, the semantics of mh-alias were extended to support personal
6929 alias files. Users of _\bM_\bH no longer need to bother mail-system ad-
6930 ministrators for keeping information in the system-wide alias file,
6931 as each _\bM_\bH user can create/modify/remove aliases at will from any
6932 number of personal files.
6933
6934
6935 _\bB_\bu_\bg_\bs
6936 Although the forward-referencing semantics of _\bm_\bh-_\ba_\bl_\bi_\ba_\bs files
6937 prevent recursion, the "< alias-file" command may defeat this.
6938 Since the number of file descriptors is finite (and very limited),
6939 such infinite recursion will terminate with a meaningless diagnos-
6940 tic when all the fds are used up.
6941
6942
6943
6944
6945
6946
6947
6948
6949
6950
6951
6952
6953
6954
6955
6956
6957
6958
6959
6960
6961
6962
6963
6964
6965
6966
6967
6968
6969 \e9
6970 \e9 [mh.6] MH.6.7 UCI version
6971
6972
6973
6974
6975
6976
6977
6978
6979
6980 MH-FORMAT(5) -107- MH-FORMAT(5)
6981
6982
6983 _\bN_\bA_\bM_\bE
6984 mh-format - format file for MH message system
6985
6986 _\bS_\bY_\bN_\bO_\bP_\bS_\bI_\bS
6987 some _\bM_\bH commands
6988
6989 _\bD_\bE_\bS_\bC_\bR_\bI_\bP_\bT_\bI_\bO_\bN
6990
6991 Several _\bM_\bH commands utilize either a _\bf_\bo_\br_\bm_\ba_\bt string or a _\bf_\bo_\br_\bm_\ba_\bt file
6992 during their execution. For example, _\bs_\bc_\ba_\bn (1) uses a format string
6993 which directs it how to generate the scan listing for each message;
6994 _\br_\be_\bp_\bl (1) uses a format file which directs it how to generate the
6995 reply to a message, and so on.
6996
6997 Format strings are designed to be efficiently parsed by _\bM_\bH which
6998 means they are not necessarily simple to write and understand.
6999 This means that novice, casual, or even advanced users of _\bM_\bH should
7000 not have to deal with them. Some canned scan listing formats are
7001 in /usr/local/lib/mh/scan.time, /usr/local/lib/mh/scan.size, and
7002 /usr/local/lib/mh/scan.timely. Look in /usr/local/lib/mh for other
7003 _\bs_\bc_\ba_\bn and _\br_\be_\bp_\bl format files which may have been written at your
7004 site.
7005
7006 It suffices to have your local _\bM_\bH expert actually write new format
7007 commands or modify existing ones. This manual section explains how
7008 to do that. Note: familiarity with the C _\bp_\br_\bi_\bn_\bt_\bf routine is
7009 assumed.
7010
7011 A format string consists of ordinary text, and special multi-
7012 character _\be_\bs_\bc_\ba_\bp_\be sequences which begin with `%'. When specifying a
7013 format string, the usual C backslash characters are honored: `\b',
7014 `\f', `\n', `\r', and `\t'. Continuation lines in format files end
7015 with `\' followed by the newline character. There are three types
7016 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,
7017 flow _\bc_\bo_\bn_\bt_\br_\bo_\bl.
7018
7019 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
7020 each header found in the message being processed. For example
7021 `%{date}' refers to the "Date:" field of the appropriate message.
7022 All component escapes have a string value. Normally, component
7023 values are compressed by converting any control characters (tab and
7024 newline included) to spaces, then eliding any leading or multiple
7025 spaces. However, commands may give different interpretations to
7026 some component escapes; be sure to refer to each command's manual
7027 entry for complete details.
7028
7029 A _\bf_\bu_\bn_\bc_\bt_\bi_\bo_\bn escape is specified as `%(_\bf_\bu_\bn_\bc_\bt_\bi_\bo_\bn)'. All functions are
7030 built-in, and most have a string or numeric value.
7031
7032
7033
7034 \e9
7035 \e9 [mh.6] MH.6.7 UCI version
7036
7037
7038
7039
7040
7041
7042
7043
7044
7045 MH-FORMAT(5) -108- MH-FORMAT(5)
7046
7047
7048 _\bC_\bo_\bn_\bt_\br_\bo_\bl-_\bf_\bl_\bo_\bw _\be_\bs_\bc_\ba_\bp_\be_\bs
7049
7050 A _\bc_\bo_\bn_\bt_\br_\bo_\bl escape is one of: `%<', `%?', `%|', or `%>'. These are
7051 combined into the conditional execution construct:
7052
7053 %<condition
7054 _\bf_\bo_\br_\bm_\ba_\bt _\bt_\be_\bx_\bt _\b1
7055 %?condition2
7056 _\bf_\bo_\br_\bm_\ba_\bt _\bt_\be_\bx_\bt _\b2
7057 %?condition3
7058 _\bf_\bo_\br_\bm_\ba_\bt _\bt_\be_\bx_\bt _\b3
7059 ...
7060 %|
7061 _\bf_\bo_\br_\bm_\ba_\bt _\bt_\be_\bx_\bt _\bN
7062 %>
7063
7064 Extra white space is shown here only for clarity. These constructs
7065 may be nested without ambiguity. They form a general
7066 if-elseif-else-endif block where only one of the _\bf_\bo_\br_\bm_\ba_\bt _\bt_\be_\bx_\bt seg-
7067 ments is interpreted.
7068
7069 The `%<' and `%?' control escapes causes a condition to be
7070 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.
7071 The four constructs have the following syntax:
7072
7073 %<{component}
7074 %<(function)
7075 %?{component}
7076 %?(function)
7077
7078 These control escapes test whether the function or component value
7079 is non-zero (for integer-valued escapes), or non-empty (for
7080 string-valued escapes).
7081
7082 If this test evaulates true, then the format text up to the next
7083 corresponding control escape (one of `%|', `%?', or `%>') is inter-
7084 preted normally. Next, all format text up to the corresponding
7085 `%>' control escape (if any) is skipped. The `%>' control escape
7086 is not interpreted; normal interpretation resumes after the `%>'
7087 escape.
7088
7089 If the test evaluates false, however, then the format text up to
7090 the next corresponding control escape (again, one of `%|', `%?', or
7091 `%>') is skipped, instead of being interpreted. If the control
7092 escape encountered was `%?', then the condition associated with
7093 that control escape is evaluated, and interpretation proceeds after
7094 that test as described in the previous paragraph. If the control
7095 escape encountered was `%|', then the format text up to the
7096 corresponding `%>' escape is interpreted normally. As above, the
7097 `%>' escape is not interpreted and normal interpretation resumes
7098 after the `%>' escape.
7099 \e9
7100 \e9 [mh.6] MH.6.7 UCI version
7101
7102
7103
7104
7105
7106
7107
7108
7109
7110 MH-FORMAT(5) -109- MH-FORMAT(5)
7111
7112
7113 The `%?' control escape and its following format text is optional,
7114 and may be included zero or more times. The `%|' control escape
7115 and its following format text is also optional, and may be included
7116 zero or one times.
7117
7118
7119 _\bF_\bu_\bn_\bc_\bt_\bi_\bo_\bn _\be_\bs_\bc_\ba_\bp_\be_\bs
7120
7121 Most functions expect an argument of a particular type:
7122
7123 _\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
7124 literal A literal number, %(_\bf_\bu_\bn_\bc 1234)
7125 or string %(_\bf_\bu_\bn_\bc text string)
7126 comp Any header component %(_\bf_\bu_\bn_\bc{_\bi_\bn-_\br_\be_\bp_\bl_\by-_\bt_\bo})
7127 date A date component %(_\bf_\bu_\bn_\bc{_\bd_\ba_\bt_\be})
7128 addr An address component %(_\bf_\bu_\bn_\bc{_\bf_\br_\bo_\bm})
7129 expr An optional component, %(_\bf_\bu_\bn_\bc(_\bf_\bu_\bn_\bc_\b2))
7130 function or control, %(_\bf_\bu_\bn_\bc %<{_\br_\be_\bp_\bl_\by-_\bt_\bo}%|%{_\bf_\br_\bo_\bm}%>)
7131 perhaps nested %(_\bf_\bu_\bn_\bc(_\bf_\bu_\bn_\bc_\b2{_\bc_\bo_\bm_\bp}))
7132
7133 The types _\bd_\ba_\bt_\be and _\ba_\bd_\bd_\br have the same syntax as _\bc_\bo_\bm_\bp, but require
7134 that the header component be a date string, or address string,
7135 respectively.
7136
7137 All arguments except those of type _\be_\bx_\bp_\br are required. For the _\be_\bx_\bp_\br
7138 argument type, the leading `%' must be omitted for component and
7139 function escape arguments, and must be present (with a leading
7140 space) for control escape arguments.
7141
7142 The evaluation of format strings is based on a simple machine with
7143 an integer register _\bn_\bu_\bm, and a text string register _\bs_\bt_\br. When a
7144 function escape is processed, if it accepts an optional _\be_\bx_\bp_\br argu-
7145 ment which is not present, it reads the current value of either _\bn_\bu_\bm
7146 or _\bs_\bt_\br as appropriate.
7147
7148
7149 _\bR_\be_\bt_\bu_\br_\bn _\bv_\ba_\bl_\bu_\be_\bs
7150
7151 Component escapes write the value of their message header in _\bs_\bt_\br.
7152 Function escapes write their return value in _\bn_\bu_\bm for functions
7153 returning _\bi_\bn_\bt_\be_\bg_\be_\br or _\bb_\bo_\bo_\bl_\be_\ba_\bn values, and in _\bs_\bt_\br for functions
7154 returning string values. (The _\bb_\bo_\bo_\bl_\be_\ba_\bn type is a subset of integers
7155 with usual values 0=false and 1=true.)
7156
7157 All component escapes, and those function escapes which return an
7158 _\bi_\bn_\bt_\be_\bg_\be_\br or _\bs_\bt_\br_\bi_\bn_\bg value, pass this value back to their caller in
7159 addition to setting _\bs_\bt_\br or _\bn_\bu_\bm. These escapes will print out this
7160 value unless called as part of an argument to another escape
7161 sequence. Function escapes which return a _\bb_\bo_\bo_\bl_\be_\ba_\bn value do pass
7162 this value back to their caller, but will never print out the
7163 value.
7164 \e9
7165 \e9 [mh.6] MH.6.7 UCI version
7166
7167
7168
7169
7170
7171
7172
7173
7174
7175 MH-FORMAT(5) -110- MH-FORMAT(5)
7176
7177
7178 _\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
7179 msg integer message number
7180 cur integer message is current
7181 size integer size of message
7182 strlen integer length of _\bs_\bt_\br
7183 width integer output buffer size in bytes
7184 charleft integer bytes left in output buffer
7185 timenow integer seconds since the UNIX epoch
7186 me string the user's mailbox
7187 eq literal boolean _\bn_\bu_\bm == _\ba_\br_\bg
7188 ne literal boolean _\bn_\bu_\bm != _\ba_\br_\bg
7189 gt literal boolean _\bn_\bu_\bm > _\ba_\br_\bg
7190 match literal boolean _\bs_\bt_\br contains _\ba_\br_\bg
7191 amatch literal boolean _\bs_\bt_\br starts with _\ba_\br_\bg
7192 plus literal integer _\ba_\br_\bg plus _\bn_\bu_\bm
7193 minus literal integer _\ba_\br_\bg minus _\bn_\bu_\bm
7194 divide literal integer _\bn_\bu_\bm divided by _\ba_\br_\bg
7195 num literal integer Set _\bn_\bu_\bm to _\ba_\br_\bg
7196 lit literal string Set _\bs_\bt_\br to _\ba_\br_\bg
7197 nonzero expr boolean _\bn_\bu_\bm is non-zero
7198 zero expr boolean _\bn_\bu_\bm is zero
7199 null expr boolean _\bs_\bt_\br is empty
7200 nonnull expr boolean _\bs_\bt_\br is non-empty
7201 void expr Set _\bs_\bt_\br or _\bn_\bu_\bm
7202 comp comp string Set _\bs_\bt_\br to component text
7203 compval comp integer _\bn_\bu_\bm set to "atoi(_\bs_\bt_\br)"
7204 trim expr trim trailing white-space from _\bs_\bt_\br
7205 putstr expr print _\bs_\bt_\br
7206 putstrf expr print _\bs_\bt_\br in a fixed width
7207 putnum expr print _\bn_\bu_\bm
7208 putnumf expr print _\bn_\bu_\bm in a fixed width
7209
7210 These functions require a date component as an argument:
7211
7212 _\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
7213 sec date integer seconds of the minute
7214 min date integer minutes of the hour
7215 hour date integer hours of the day (0-23)
7216 wday date integer day of the week (Sun=0)
7217 day date string day of the week (abbrev.)
7218 weekday date string day of the week
7219 sday date integer day of the week known?
7220 (0=implicit,-1=unknown)
7221 mday date integer day of the month
7222 yday date integer day of the year
7223 mon date integer month of the year
7224 month date string month of the year (abbrev.)
7225 lmonth date string month of the year
7226 year date integer year of the century
7227 zone date integer timezone in hours
7228 tzone date string timezone string
7229 szone date integer timezone explicit?
7230
7231 [mh.6] MH.6.7 UCI version
7232
7233
7234
7235
7236
7237
7238
7239
7240
7241 MH-FORMAT(5) -111- MH-FORMAT(5)
7242
7243
7244 (0=implicit,-1=unknown)
7245 date2local date coerce date to local timezone
7246 date2gmt date coerce date to GMT
7247 dst date integer daylight savings in effect?
7248 clock date integer seconds since the UNIX epoch
7249 rclock date integer seconds prior to current time
7250 tws date string official 822 rendering
7251 pretty date string user-friendly rendering
7252 nodate date integer _\bs_\bt_\br not a date string
7253
7254 These functions require an address component as an argument. The
7255 return value of functions noted with `*' pertain only to the first
7256 address present in the header component.
7257
7258 _\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
7259 proper addr string official 822 rendering
7260 friendly addr string user-friendly rendering
7261 addr addr string mbox@host or host!mbox rendering*
7262 pers addr string the personal name*
7263 note addr string commentary text*
7264 mbox addr string the local mailbox*
7265 mymbox addr integer the user's addresses? (0=no,1=yes)
7266 host addr string the host domain*
7267 nohost addr integer no host was present*
7268 type addr integer host type* (0=local,1=network,
7269 -1=uucp,2=unknown)
7270 path addr string any leading host route*
7271 ingrp addr integer address was inside a group*
7272 gname addr string name of group*
7273 formataddr expr append _\ba_\br_\bg to _\bs_\bt_\br as a
7274 (comma separated) address list
7275 putaddr literal print _\bs_\bt_\br address list with
7276 _\ba_\br_\bg as optional label;
7277 get line width from _\bn_\bu_\bm
7278
7279 When escapes are nested, evaluation is done from inner-most to
7280 outer-most. The outer-most escape must begin with `%'; the inner
7281 escapes must not. For example,
7282
7283 %<(mymbox{from}) To: %{to}%>
7284
7285 writes the value of the header component "From:" to _\bs_\bt_\br; then (_\bm_\by_\bm_\b-
7286 _\bb_\bo_\bx) reads _\bs_\bt_\br and writes its result to _\bn_\bu_\bm; then the control
7287 escape evaluates _\bn_\bu_\bm. If _\bn_\bu_\bm is non-zero, the string "To: " is
7288 printed followed by the value of the header component "To:".
7289
7290 A minor explanation of (_\bm_\by_\bm_\bb_\bo_\bx{_\bc_\bo_\bm_\bp}) is in order. In general, it
7291 checks each of the addresses in the header component "_\bc_\bo_\bm_\bp" against
7292 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
7293 true if any address matches, however, it also returns true if the
7294 "_\bc_\bo_\bm_\bp" header is not present in the message. If needed, the (_\bn_\bu_\bl_\bl)
7295 function can be used to explicitly test for this condition.
7296
7297 [mh.6] MH.6.7 UCI version
7298
7299
7300
7301
7302
7303
7304
7305
7306
7307 MH-FORMAT(5) -112- MH-FORMAT(5)
7308
7309
7310 When a function or component escape is interpreted and the result
7311 will be immediately printed, an optional field width can be speci-
7312 fied to print the field in exactly a given number of characters.
7313 For example, a numeric escape like %4(_\bs_\bi_\bz_\be) will print at most 4
7314 digits of the message size; overflow will be indicated by a `?' in
7315 the first position (like `?234'). A string escape like %4(_\bm_\be) will
7316 print the first 4 characters and truncate at the end. Short fields
7317 are padded at the right with the fill character (normally, a
7318 blank). If the field width argument begins with a leading zero,
7319 then the fill character is set to a zero.
7320
7321 As above, the functions (_\bp_\bu_\bt_\bn_\bu_\bm_\bf) and (_\bp_\bu_\bt_\bs_\bt_\br_\bf) print their result
7322 in exactly the number of characters specified by their leading
7323 field width argument. For example, %06(_\bp_\bu_\bt_\bn_\bu_\bm_\bf(_\bs_\bi_\bz_\be)) will print
7324 the message size in a field six characters wide filled with leading
7325 zeros; %14(_\bp_\bu_\bt_\bs_\bt_\br_\bf{_\bf_\br_\bo_\bm}) will print the "From:" header component
7326 in fourteen characters with trailing spaces added as needed. For
7327 _\bp_\bu_\bt_\bs_\bt_\br_\bf, using a negative value for the field width causes right-
7328 justification of the string within the field, with padding on the
7329 left up to the field width. The functions (_\bp_\bu_\bt_\bn_\bu_\bm) and (_\bp_\bu_\bt_\bs_\bt_\br)
7330 print their result in the minimum number of characters required,
7331 and ignore any leading field width argument.
7332
7333 The available output width is kept in an internal register; any
7334 output past this width will be truncated.
7335
7336 With all this in mind, here's the default format string for _\bs_\bc_\ba_\bn.
7337 It's been divided into several pieces for readability. The first
7338 part is:
7339
7340 %4(putnumf(msg))%<(cur)+%| %>%<{replied}-%| %>
7341
7342 which says that the message number should be printed in four
7343 digits, if the message is the current message then a `+' else a
7344 space should be printed, and if a "Replied:" field is present then
7345 a `-' else a space should be printed. Next:
7346
7347 %02(putnumf(mon{date}))/%02(putnumf(mday{date}))
7348
7349 the month and date are printed in two digits (zero filled)
7350 separated by a slash. Next,
7351
7352 %<{date} %|*>
7353
7354 If a "Date:" field was present, then a space is printed, otherwise
7355 a `*'. Next,
7356
7357 %<(mymbox{from})To:%14(putstrf(friendly{to}))
7358
7359 if the message is from me, print `To:' followed by a "user-
7360 friendly" rendering of the first address in the "To:" field. Con-
7361 tinuing,
7362
7363 [mh.6] MH.6.7 UCI version
7364
7365
7366
7367
7368
7369
7370
7371
7372
7373 MH-FORMAT(5) -113- MH-FORMAT(5)
7374
7375
7376 %|%17(putstrf(friendly{from}))%>
7377
7378 if the message isn't from me, then the print the "From:" address is
7379 printed. And finally,
7380
7381 %{subject}%<{body}<<%{body}%>
7382
7383 the subject and initial body (if any) are printed.
7384
7385 For a more complicated example, next consider the default _\br_\be_\bp_\bl_\bc_\bo_\bm_\bp_\bs
7386 format file.
7387
7388 %(lit)%(formataddr %<{reply-to}%|
7389
7390 This clears _\bs_\bt_\br and formats the "Reply-To:" header if present. If
7391 not present, the else clause is executed:
7392
7393 %<{from}%|%<{sender}%|%<{return-path}%>%>%>%>)\
7394
7395 This formats the "From:", "Sender:" and "Return-Path:" headers,
7396 stopping as soon as one of them is present. Next:
7397
7398 %<(nonnull)%(void(width))%(putaddr To: )\n%>\
7399
7400 If the _\bf_\bo_\br_\bm_\ba_\bt_\ba_\bd_\bd_\br result is non-null, it is printed as an address
7401 (with line folding if needed) in a field _\bw_\bi_\bd_\bt_\bh wide with a leading
7402 label of "To: ".
7403
7404 %(lit)%(formataddr{to})%(formataddr{cc})%(formataddr(me))\
7405
7406 _\bs_\bt_\br is cleared, and the "To:" and "Cc:" headers, along with the
7407 user's address (depending on what was specified with the "-cc"
7408 switch to _\br_\be_\bp_\bl) are formatted.
7409
7410 %<(nonnull)%(void(width))%(putaddr cc: )\n%>\
7411
7412 If the result is non-null, it is printed as above with a leading
7413 label of "cc: ".
7414
7415 %<{fcc}Fcc: %{fcc}\n%>\
7416
7417 If a "-fcc folder" switch was given to _\br_\be_\bp_\bl (see _\br_\be_\bp_\bl (1) for more
7418 details about %{_\bf_\bc_\bc}), an "Fcc:" header is output.
7419
7420 %<{subject}Subject: Re: %{subject}\n%>\
7421
7422 If a subject component was present, a suitable reply subject is
7423 output.
7424
7425 %<{date}In-reply-to: Your message of "\
7426 %<(nodate{date})%{date}%|%(tws{date})%>."%<{message-id}
7427 %{message-id}%>\n%>\
7428
7429 [mh.6] MH.6.7 UCI version
7430
7431
7432
7433
7434
7435
7436
7437
7438
7439 MH-FORMAT(5) -114- MH-FORMAT(5)
7440
7441
7442 --------
7443
7444 If a date component was present, an "In-Reply-To:" header is output
7445 with the preface "Your message of ". If the date was parseable, it
7446 is output in official format, otherwise it is output as-is. The
7447 message-id is included if present. As with all plain-text, the row
7448 of dashes are output as-is.
7449
7450 This last part is a good example for a little more elaboration.
7451 Here's that part again in pseudo-code:
7452
7453 if (comp_exists(date)) then
7454 print ("In-reply-to: Your message of \"")
7455 if (not_date_string(date.value) then
7456 print (date.value)
7457 else
7458 print (rfc822(date.value))
7459 endif
7460 print ("\"")
7461 if (comp_exists(message-id)) then
7462 print ("\n\t")
7463 print (message-id.value)
7464 endif
7465 print ("\n")
7466 endif
7467
7468 Although this seems complicated, in point of fact, this method is
7469 flexible enough to extract individual fields and print them in any
7470 format the user desires.
7471
7472 _\bF_\bi_\bl_\be_\bs
7473 None
7474
7475
7476 _\bP_\br_\bo_\bf_\bi_\bl_\be _\bC_\bo_\bm_\bp_\bo_\bn_\be_\bn_\bt_\bs
7477 None
7478
7479
7480 _\bS_\be_\be _\bA_\bl_\bs_\bo
7481 scan(1), repl(1), ap(8), dp(8)
7482
7483
7484 _\bD_\be_\bf_\ba_\bu_\bl_\bt_\bs
7485 None
7486
7487
7488 _\bC_\bo_\bn_\bt_\be_\bx_\bt
7489 None
7490
7491
7492
7493 \e9
7494 \e9 [mh.6] MH.6.7 UCI version
7495
7496
7497
7498
7499
7500
7501
7502
7503
7504 MH-FORMAT(5) -115- MH-FORMAT(5)
7505
7506
7507 _\bH_\bi_\bs_\bt_\bo_\br_\by
7508 This software was contributed for MH 6.3. Prior to this, output
7509 format specifications were much easier to write, but considerably
7510 less flexible.
7511
7512
7513 _\bB_\bu_\bg_\bs
7514 On hosts where _\bM_\bH was configured with the BERK option, address
7515 parsing is not enabled.
7516
7517
7518
7519
7520
7521
7522
7523
7524
7525
7526
7527
7528
7529
7530
7531
7532
7533
7534
7535
7536
7537
7538
7539
7540
7541
7542
7543
7544
7545
7546
7547
7548
7549
7550
7551
7552
7553
7554
7555
7556
7557
7558 \e9
7559 \e9 [mh.6] MH.6.7 UCI version
7560
7561
7562
7563
7564
7565
7566
7567
7568
7569 MH-MAIL(5) -116- MH-MAIL(5)
7570
7571
7572 _\bN_\bA_\bM_\bE
7573 mh-mail - message format for MH message system
7574
7575 _\bS_\bY_\bN_\bO_\bP_\bS_\bI_\bS
7576 any _\bM_\bH command
7577
7578 _\bD_\bE_\bS_\bC_\bR_\bI_\bP_\bT_\bI_\bO_\bN
7579
7580 _\bM_\bH processes messages in a particular format. It should be noted
7581 that although neither Bell nor Berkeley mailers produce message
7582 files in the format that _\bM_\bH prefers, _\bM_\bH can read message files in
7583 that antiquated format.
7584
7585 Each user possesses a mail drop box which initially receives all
7586 messages processed by _\bp_\bo_\bs_\bt (8). _\bI_\bn_\bc (1) will read from that drop
7587 box and incorporate the new messages found there into the user's
7588 own mail folders (typically `+inbox'). The mail drop box consists
7589 of one or more messages. To facilitate the separation of messages,
7590 each message begins and ends with a line consisting of nothing but
7591 four CTRL-A (octal 001) characters.
7592
7593 Messages are expected to consist of lines of text. Graphics and
7594 binary data are not handled. No data compression is accepted. All
7595 text is clear ASCII 7-bit data.
7596
7597 The general "memo" framework of RFC-822 is used. A message con-
7598 sists of a block of information in a rigid format, followed by gen-
7599 eral text with no specified format. The rigidly formatted first
7600 part of a message is called the header, and the free-format portion
7601 is called the body. The header must always exist, but the body is
7602 optional. These parts are separated by an empty line, i.e., two
7603 consecutive newline characters. Within _\bM_\bH, the header and body may
7604 be separated by a line consisting of dashes:
7605
7606 To:
7607 cc:
7608 Subject:
7609 --------
7610
7611 The header is composed of one or more header items. Each header
7612 item can be viewed as a single logical line of ASCII characters.
7613 If the text of a header item extends across several real lines, the
7614 continuation lines are indicated by leading spaces or tabs.
7615
7616 Each header item is called a component and is composed of a keyword
7617 or name, along with associated text. The keyword begins at the
7618 left margin, may NOT contain spaces or tabs, may not exceed 63
7619 characters (as specified by RFC-822), and is terminated by a colon
7620 (`:'). Certain components (as identified by their keywords) must
7621 follow rigidly defined formats in their text portions.
7622
7623 The text for most formatted components (e.g., "Date:" and
7624
7625 [mh.6] MH.6.7 UCI version
7626
7627
7628
7629
7630
7631
7632
7633
7634
7635 MH-MAIL(5) -117- MH-MAIL(5)
7636
7637
7638 "Message-Id:") is produced automatically. The only ones entered by
7639 the user are address fields such as "To:", "cc:", etc. Internet
7640 addresses are assigned mailbox names and host computer specifica-
7641 tions. The rough format is "local@domain", such as "MH@UCI", or
7642 "MH@UCI-ICSA.ARPA". Multiple addresses are separated by commas. A
7643 missing host/domain is assumed to be the local host/domain.
7644
7645 As mentioned above, a blank line (or a line of dashes) signals that
7646 all following text up to the end of the file is the body. No for-
7647 matting is expected or enforced within the body.
7648
7649 Following is a list of header components that are considered mean-
7650 ingful to various MH programs.
7651 Date:
7652 Added by _\bp_\bo_\bs_\bt (8), contains date and time of the message's
7653 entry into the transport system.
7654
7655 From:
7656 Added by _\bp_\bo_\bs_\bt (8), contains the address of the author or
7657 authors (may be more than one if a "Sender:" field is
7658 present). Replies are typically directed to addresses in the
7659 "Reply-To:" or "From:" field (the former has precedence if
7660 present).
7661
7662 Sender:
7663 Added by _\bp_\bo_\bs_\bt (8) in the event that the message already has a
7664 "From:" line. This line contains the address of the actual
7665 sender. Replies are never sent to addresses in the "Sender:"
7666 field.
7667
7668 To:
7669 Contains addresses of primary recipients.
7670
7671 cc:
7672 Contains addresses of secondary recipients.
7673
7674 Bcc:
7675 Still more recipients. However, the "Bcc:" line is not copied
7676 onto the message as delivered, so these recipients are not
7677 listed. _\bM_\bH uses an encapsulation method for blind copies, see
7678 _\bs_\be_\bn_\bd (1).
7679
7680 Fcc:
7681 Causes _\bp_\bo_\bs_\bt (8) to copy the message into the specified folder
7682 for the sender, if the message was successfully given to the
7683 transport system.
7684
7685 Message-ID:
7686 A unique message identifier added by _\bp_\bo_\bs_\bt (8) if the `-msgid'
7687 flag is set.
7688
7689 Subject:
7690
7691 [mh.6] MH.6.7 UCI version
7692
7693
7694
7695
7696
7697
7698
7699
7700
7701 MH-MAIL(5) -118- MH-MAIL(5)
7702
7703
7704 Sender's commentary. It is displayed by _\bs_\bc_\ba_\bn (1).
7705
7706 In-Reply-To:
7707 A commentary line added by _\br_\be_\bp_\bl (1) when replying to a mes-
7708 sage.
7709
7710 Resent-Date:
7711 Added when redistributing a message by _\bp_\bo_\bs_\bt (8).
7712
7713 Resent-From:
7714 Added when redistributing a message by _\bp_\bo_\bs_\bt (8).
7715
7716 Resent-To:
7717 New recipients for a message resent by _\bd_\bi_\bs_\bt (1).
7718
7719 Resent-cc:
7720 Still more recipients. See "cc:" and "Resent-To:".
7721
7722 Resent-Bcc:
7723 Even more recipients. See "Bcc:" and "Resent-To:".
7724
7725 Resent-Fcc:
7726 Copy resent message into a folder. See "Fcc:" and
7727 "Resent-To:".
7728
7729 Resent-Message-Id:
7730 A unique identifier glued on by _\bp_\bo_\bs_\bt (8) if the `-msgid' flag
7731 is set. See "Message-Id:" and "Resent-To:".
7732
7733 Resent:
7734 Annotation for _\bd_\bi_\bs_\bt (1) under the `-annotate' option.
7735
7736 Forwarded:
7737 Annotation for _\bf_\bo_\br_\bw (1) under the `-annotate' option.
7738
7739 Replied:
7740 Annotation for _\br_\be_\bp_\bl (1) under the `-annotate' option.
7741
7742
7743 _\bF_\bi_\bl_\be_\bs
7744 /usr/spool/mail/$USER Location of mail drop
7745
7746
7747 _\bP_\br_\bo_\bf_\bi_\bl_\be _\bC_\bo_\bm_\bp_\bo_\bn_\be_\bn_\bt_\bs
7748 None
7749
7750
7751 _\bS_\be_\be _\bA_\bl_\bs_\bo
7752 _\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
7753 RFC-822)
7754
7755 \e9
7756 \e9 [mh.6] MH.6.7 UCI version
7757
7758
7759
7760
7761
7762
7763
7764
7765
7766 MH-MAIL(5) -119- MH-MAIL(5)
7767
7768
7769 _\bD_\be_\bf_\ba_\bu_\bl_\bt_\bs
7770 None
7771
7772
7773 _\bC_\bo_\bn_\bt_\be_\bx_\bt
7774 None
7775
7776
7777
7778
7779
7780
7781
7782
7783
7784
7785
7786
7787
7788
7789
7790
7791
7792
7793
7794
7795
7796
7797
7798
7799
7800
7801
7802
7803
7804
7805
7806
7807
7808
7809
7810
7811
7812
7813
7814
7815
7816
7817
7818
7819
7820 \e9
7821 \e9 [mh.6] MH.6.7 UCI version
7822
7823
7824
7825
7826
7827
7828
7829
7830
7831 MH-PROFILE(5) -120- MH-PROFILE(5)
7832
7833
7834 _\bN_\bA_\bM_\bE
7835 .mh_profile - user customization for MH message system
7836
7837 _\bS_\bY_\bN_\bO_\bP_\bS_\bI_\bS
7838 any _\bM_\bH command
7839
7840 _\bD_\bE_\bS_\bC_\bR_\bI_\bP_\bT_\bI_\bO_\bN
7841
7842 Each user of _\bM_\bH is expected to have a file named ._\bm_\bh__\bp_\br_\bo_\bf_\bi_\bl_\be in his
7843 or her home directory. This file contains a set of user parameters
7844 used by some or all of the _\bM_\bH family of programs. Each line of the
7845 file is of the format
7846
7847 _\bp_\br_\bo_\bf_\bi_\bl_\be-_\bc_\bo_\bm_\bp_\bo_\bn_\be_\bn_\bt: _\bv_\ba_\bl_\bu_\be
7848
7849 The possible profile components are exemplified below. Only
7850 `Path:' is mandatory. The others are optional; some have default
7851 values if they are not present. In the notation used below, (pro-
7852 file, default) indicates whether the information is kept in the
7853 user's _\bM_\bH profile or _\bM_\bH context, and indicates what the default
7854 value is.
7855
7856 Path: Mail
7857 Locates _\bM_\bH transactions in directory "Mail". (profile,
7858 no default)
7859
7860 context: context
7861 Declares the location of the _\bM_\bH context file, see the
7862 HISTORY section below. (profile, default:
7863 <mh-dir>/context)
7864
7865 Current-Folder: inbox
7866 Keeps track of the current open folder. (context,
7867 default: +inbox)
7868
7869 Previous-Sequence: pseq
7870 Names the sequences which should be defined as the `msgs'
7871 or `msg' argument given to the program. If not present,
7872 or empty, no sequences are defined. Otherwise, for each
7873 name given, the sequence is first zero'd and then each
7874 message is added to the sequence. (profile, no default)
7875
7876 Sequence-Negation: not
7877 Defines the string which, when prefixed to a sequence
7878 name, negates that sequence. Hence, "notseen" means all
7879 those messages that are not a member of the sequence
7880 "seen". (profile, no default)
7881
7882 Unseen-Sequence: unseen
7883 Names the sequences which should be defined as those mes-
7884 sages recently incorporated by _\bi_\bn_\bc. _\bS_\bh_\bo_\bw knows to remove
7885 messages from this sequence once it thinks they have been
7886
7887 [mh.6] MH.6.7 UCI version
7888
7889
7890
7891
7892
7893
7894
7895
7896
7897 MH-PROFILE(5) -121- MH-PROFILE(5)
7898
7899
7900 seen. If not present, or empty, no sequences are
7901 defined. Otherwise, for each name given, the sequence is
7902 first zero'd and then each message is added to the
7903 sequence. (profile, no default)
7904
7905 mh-sequences: .mh_sequences
7906 The name of the file in each folder which defines public
7907 sequences. To disable the use of public sequences, leave
7908 the value portion of this entry blank. (profile,
7909 default: .mh_sequences)
7910
7911 atr-_\bs_\be_\bq-_\bf_\bo_\bl_\bd_\be_\br: 172 178-181 212
7912 Keeps track of the private sequence called _\bs_\be_\bq in the
7913 specified folder. (context, no default)
7914
7915 Editor: /usr/ucb/ex
7916 Defines editor to be used by _\bc_\bo_\bm_\bp (1), _\bd_\bi_\bs_\bt (1),
7917 _\bf_\bo_\br_\bw (1), and _\br_\be_\bp_\bl (1). (profile, default: prompter)
7918
7919 Msg-Protect: 644
7920 Defines octal protection bits for message files. See
7921 _\bc_\bh_\bm_\bo_\bd (1) for an explanation of the octal number. (pro-
7922 file, default: 0644)
7923
7924 Folder-Protect: 711
7925 Defines protection bits for folder directories. (pro-
7926 file, default: 0711)
7927
7928 _\bp_\br_\bo_\bg_\br_\ba_\bm: default switches
7929 Sets default switches to be used whenever the mh program
7930 _\bp_\br_\bo_\bg_\br_\ba_\bm is invoked. For example, one could override the
7931 _\bE_\bd_\bi_\bt_\bo_\br: profile component when replying to messages by
7932 adding a component such as:
7933 repl: -editor /bin/ed
7934 (profile, no defaults)
7935
7936 _\bl_\ba_\bs_\bt_\be_\bd_\bi_\bt_\bo_\br-next: nexteditor
7937 Names "nexteditor" to be the default editor after using
7938 "lasteditor". This takes effect at "What now?" level in
7939 _\bc_\bo_\bm_\bp, _\bd_\bi_\bs_\bt, _\bf_\bo_\br_\bw, and _\br_\be_\bp_\bl. After editing the draft with
7940 "lasteditor", the default editor is set to be "nextedi-
7941 tor". If the user types "edit" without any arguments to
7942 "What now?", then "nexteditor" is used. (profile, no
7943 default)
7944
7945 bboards: system
7946 Tells _\bb_\bb_\bc which BBoards you are interested in. (profile,
7947 default: system)
7948
7949 Folder-Stack: _\bf_\bo_\bl_\bd_\be_\br_\bs
7950 The contents of the folder-stack for the _\bf_\bo_\bl_\bd_\be_\br command.
7951 (context, no default)
7952
7953 [mh.6] MH.6.7 UCI version
7954
7955
7956
7957
7958
7959
7960
7961
7962
7963 MH-PROFILE(5) -122- MH-PROFILE(5)
7964
7965
7966 mhe:
7967 If present, tells _\bi_\bn_\bc to compose an _\bM_\bH_\bE auditfile in
7968 addition to its other tasks. _\bM_\bH_\bE is Brian Reid's _\bE_\bm_\ba_\bc_\bs
7969 front-end for _\bM_\bH. An early version is supplied with the
7970 _\bm_\bh._\b6 distribution. (profile, no default)
7971
7972 Alternate-Mailboxes: mh@uci-750a, bug-mh*
7973 Tells _\br_\be_\bp_\bl and _\bs_\bc_\ba_\bn which addresses are really yours. In
7974 this way, _\br_\be_\bp_\bl knows which addresses should be included
7975 in the reply, and _\bs_\bc_\ba_\bn knows if the message really ori-
7976 ginated from you. Addresses must be separated by a
7977 comma, and the hostnames listed should be the "official"
7978 hostnames for the mailboxes you indicate, as local nick-
7979 names for hosts are not replaced with their official site
7980 names. For each address, if a host is not given, then
7981 that address on any host is considered to be you. In
7982 addition, an asterisk (`*') may appear at either or both
7983 ends of the mailbox and host to indicate wild-card match-
7984 ing. (profile, default: your user-id)
7985
7986 Aliasfile: aliases
7987 Indicates a default aliases file for _\ba_\bl_\bi, _\bw_\bh_\bo_\bm, and _\bs_\be_\bn_\bd.
7988 This may be used instead of the `-alias file' switch.
7989 (profile, no default)
7990
7991 Draft-Folder: drafts
7992 Indicates a default draft folder for _\bc_\bo_\bm_\bp, _\bd_\bi_\bs_\bt, _\bf_\bo_\br_\bw,
7993 and _\br_\be_\bp_\bl. (profile, no default)
7994
7995 digest-issue-_\bl_\bi_\bs_\bt: 1
7996 Tells _\bf_\bo_\br_\bw the last issue of the last volume sent for the
7997 digest _\bl_\bi_\bs_\bt. (context, no default)
7998
7999 digest-volume-_\bl_\bi_\bs_\bt: 1
8000 Tells _\bf_\bo_\br_\bw the last volume sent for the digest _\bl_\bi_\bs_\bt.
8001 (context, no default)
8002
8003 MailDrop: .mail
8004 Tells _\bi_\bn_\bc your maildrop, if different from the default.
8005 This is superceded by the $MAILDROP envariable. (pro-
8006 file, default: /usr/spool/mail/$USER)
8007
8008 Signature: RAND MH System (agent: Marshall Rose)
8009 Tells _\bs_\be_\bn_\bd your mail signature. This is superceded by
8010 the $SIGNATURE envariable. On hosts where _\bM_\bH was config-
8011 ured with the UCI option, if $SIGNATURE is not set and
8012 this profile entry is not present, the file
8013 $HOME/.signature is consulted. Your signature will be
8014 added to the address _\bs_\be_\bn_\bd puts in the "From:" header; do
8015 not include an address in the signature text. (profile,
8016 no default)
8017 \e9
8018 \e9 [mh.6] MH.6.7 UCI version
8019
8020
8021
8022
8023
8024
8025
8026
8027
8028 MH-PROFILE(5) -123- MH-PROFILE(5)
8029
8030
8031 The following profile elements are used whenever an _\bM_\bH program
8032 invokes some other program such as _\bm_\bo_\br_\be (1). The ._\bm_\bh__\bp_\br_\bo_\bf_\bi_\bl_\be can
8033 be used to select alternate programs if the user wishes. The
8034 default values are given in the examples.
8035
8036 fileproc: /usr/local/refile
8037 incproc: /usr/local/inc
8038 installproc: /usr/local/lib/mh/install-mh
8039 lproc: /usr/ucb/more
8040 mailproc: /usr/local/mhmail
8041 mhlproc: /usr/local/lib/mh/mhl
8042 moreproc: /usr/ucb/more
8043 mshproc: /usr/local/msh
8044 packproc: /usr/local/packf
8045 postproc: /usr/local/lib/mh/post
8046 rmmproc: none
8047 rmfproc: /usr/local/rmf
8048 sendproc: /usr/local/send
8049 showproc: /usr/ucb/more
8050 whatnowproc: /usr/local/whatnow
8051 whomproc: /usr/local/whom
8052
8053 If you define the envariable $MH, you can specify a profile other
8054 than ._\bm_\bh__\bp_\br_\bo_\bf_\bi_\bl_\be to be read by the _\bM_\bH programs that you invoke. If
8055 the value of $MH is not absolute, (i.e., does not begin with a / ),
8056 it will be presumed to start from the current working directory.
8057 This is one of the very few exceptions in _\bM_\bH where non-absolute
8058 pathnames are not considered relative to the user's _\bM_\bH directory.
8059
8060 Similarly, if you define the envariable $MHCONTEXT, you can specify
8061 a context other than the normal context file (as specified in the
8062 _\bM_\bH profile). As always, unless the value of $MHCONTEXT is abso-
8063 lute, it will be presumed to start from your _\bM_\bH directory.
8064
8065 _\bM_\bH programs also support other envariables:
8066
8067 $MAILDROP : tells _\bi_\bn_\bc the default maildrop
8068 This supercedes the "MailDrop:" profile entry.
8069
8070 $SIGNATURE : tells _\bs_\be_\bn_\bd and _\bp_\bo_\bs_\bt your mail signature
8071 This supercedes the "Signature:" profile entry.
8072
8073 $HOME : tells all _\bM_\bH programs your home directory
8074
8075 $SHELL : tells _\bb_\bb_\bl the default shell to run
8076
8077 $TERM : tells _\bM_\bH your terminal type
8078 The $TERMCAP envariable is also consulted. In particular,
8079 these tells _\bs_\bc_\ba_\bn and _\bm_\bh_\bl how to clear your terminal, and how
8080 many columns wide your terminal is. They also tell _\bm_\bh_\bl how
8081 many lines long your terminal screen is.
8082 \e9
8083 \e9 [mh.6] MH.6.7 UCI version
8084
8085
8086
8087
8088
8089
8090
8091
8092
8093 MH-PROFILE(5) -124- MH-PROFILE(5)
8094
8095
8096 $editalt : the alternate message
8097 This is set by _\bd_\bi_\bs_\bt and _\br_\be_\bp_\bl during edit sessions so you can
8098 peruse the message being distributed or replied-to. The mes-
8099 sage is also available through a link called "@" in the
8100 current directory if your current working directory and the
8101 folder the message lives in are on the same UNIX filesystem.
8102
8103 $mhdraft : the path to the working draft
8104 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-
8105 _\bn_\bo_\bw_\bp_\br_\bo_\bc which file to ask "What now?" questions about. In
8106 addition, _\bd_\bi_\bs_\bt, _\bf_\bo_\br_\bw, and _\br_\be_\bp_\bl set $mhfolder if appropriate.
8107 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
8108 about an alternate message associated with the draft (the mes-
8109 sage being distributed or replied-to), and _\bd_\bi_\bs_\bt sets $mhdist
8110 to tell the _\bw_\bh_\ba_\bt_\bn_\bo_\bw_\bp_\br_\bo_\bc that message re-distribution is occur-
8111 ring. Also, $mheditor is set to tell the _\bw_\bh_\ba_\bt_\bn_\bo_\bw_\bp_\br_\bo_\bc the
8112 user's choice of editor (unless overridden by `-noedit').
8113 Similarly, $mhuse may be set by _\bc_\bo_\bm_\bp. Finally, $mhmessages is
8114 set by _\bd_\bi_\bs_\bt, _\bf_\bo_\br_\bw, and _\br_\be_\bp_\bl if annotations are to occur (along
8115 with $mhannotate, and $mhinplace). It's amazing all the
8116 information that has to get passed via envariables to make the
8117 "What now?" interface look squeaky clean to the _\bM_\bH user, isn't
8118 it? The reason for all this is that the _\bM_\bH user can select
8119 _\ba_\bn_\by program as the _\bw_\bh_\ba_\bt_\bn_\bo_\bw_\bp_\br_\bo_\bc, including one of the standard
8120 shells. As a result, it's not possible to pass information
8121 via an argument list.
8122 If the WHATNOW option was set during _\bM_\bH configuration (type
8123 `-help' to an _\bM_\bH command to find out), and if this envariable
8124 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
8125 given any `msgs' arguments, then they will default to using
8126 the file indicated by $mhdraft. This is useful for getting
8127 the default behavior supplied by the default _\bw_\bh_\ba_\bt_\bn_\bo_\bw_\bp_\br_\bo_\bc.
8128
8129 $mhfolder : the folder containing the alternate message
8130 This is set by _\bd_\bi_\bs_\bt and _\br_\be_\bp_\bl during edit sessions so you can
8131 peruse other messages in the current folder besides the one
8132 being distributed or replied-to. The $mhfolder envariable is
8133 also set by _\bs_\bh_\bo_\bw, _\bp_\br_\be_\bv, and _\bn_\be_\bx_\bt for use by _\bm_\bh_\bl.
8134
8135 $MHBBRC :
8136 If you define the envariable $MHBBRC, you can specify a
8137 BBoards information file other than ._\bb_\bb_\br_\bc to be read by _\bb_\bb_\bc.
8138 If the value of $MHBBRC is not absolute, (i.e., does not begin
8139 with a / ), it will be presumed to start from the current
8140 working directory.
8141
8142 $MHFD :
8143 If the OVERHEAD option was set during _\bM_\bH configuration (type
8144 `-help' to an _\bM_\bH command to find out), then if this envariable
8145 is set, _\bM_\bH considers it to be the number of a file-descriptor
8146 which is opened, read-only to the _\bM_\bH profile. Similarly, if
8147 the envariable $MHCONTEXTFD is set, this is the number of a
8148
8149 [mh.6] MH.6.7 UCI version
8150
8151
8152
8153
8154
8155
8156
8157
8158
8159 MH-PROFILE(5) -125- MH-PROFILE(5)
8160
8161
8162 file-descriptor which is opened read-only to the _\bM_\bH context.
8163 This feature of _\bM_\bH is experimental, and is used to examine
8164 possible speed improvements for _\bM_\bH startup. Note that these
8165 envariables must be set and non-empty to enable this feature.
8166 However, if OVERHEAD is enabled during _\bM_\bH configuration, then
8167 when _\bM_\bH programs call other _\bM_\bH programs, this scheme is used.
8168 These file-descriptors are not closed throughout the execution
8169 of the _\bM_\bH program, so children may take advantage of this.
8170 This approach is thought to be completely safe and does result
8171 in some performance enhancements.
8172
8173
8174 _\bF_\bi_\bl_\be_\bs
8175 $HOME/.mh_profile The user profile
8176 or $MH Rather than the standard profile
8177 <mh-dir>/context The user context
8178 or $CONTEXT Rather than the standard context
8179 <folder>/.mh_sequences Public sequences for <folder>
8180
8181
8182 _\bP_\br_\bo_\bf_\bi_\bl_\be _\bC_\bo_\bm_\bp_\bo_\bn_\be_\bn_\bt_\bs
8183 All
8184
8185
8186 _\bS_\be_\be _\bA_\bl_\bs_\bo
8187 mh(1), environ(5)
8188
8189
8190 _\bD_\be_\bf_\ba_\bu_\bl_\bt_\bs
8191 None
8192
8193
8194 _\bC_\bo_\bn_\bt_\be_\bx_\bt
8195 All
8196
8197
8198
8199
8200
8201
8202
8203
8204
8205
8206
8207
8208
8209
8210
8211
8212
8213 \e9
8214 \e9 [mh.6] MH.6.7 UCI version
8215
8216
8217
8218
8219
8220
8221
8222
8223
8224 MH-PROFILE(5) -126- MH-PROFILE(5)
8225
8226
8227 _\bH_\bi_\bs_\bt_\bo_\br_\by
8228 In previous versions of _\bM_\bH, the current-message value of a writable
8229 folder was kept in a file called "cur" in the folder itself. In
8230 _\bm_\bh._\b3, the ._\bm_\bh__\bp_\br_\bo_\bf_\bi_\bl_\be contained the current-message values for all
8231 folders, regardless of their writability.
8232
8233 In all versions of _\bM_\bH since _\bm_\bh._\b4, the ._\bm_\bh__\bp_\br_\bo_\bf_\bi_\bl_\be contains only
8234 static information, which _\bM_\bH programs will NOT update. Changes in
8235 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-
8236 _\br_\by. This includes, but is not limited to: the "Current-Folder" en-
8237 try and all private sequence information. Public sequence informa-
8238 tion is kept in a file called ._\bm_\bh__\bs_\be_\bq_\bu_\be_\bn_\bc_\be_\bs in each folder.
8239
8240 To convert from the format used in releases of _\bM_\bH prior to the for-
8241 mat used in the _\bm_\bh._\b4 release, _\bi_\bn_\bs_\bt_\ba_\bl_\bl-_\bm_\bh should be invoked with the
8242 `-compat' switch. This generally happens automatically on _\bM_\bH sys-
8243 tems generated with the "COMPAT" option during _\bM_\bH configuration.
8244
8245 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
8246 specifying a "context" entry (this must be in lower-case). If the
8247 entry is not absolute (does not start with a / ), then it is inter-
8248 preted relative to the user's _\bM_\bH directory. As a result, you can
8249 actually have more than one set of private sequences by using dif-
8250 ferent context files.
8251
8252
8253
8254
8255
8256
8257
8258
8259
8260
8261
8262
8263
8264
8265
8266
8267
8268
8269
8270
8271
8272
8273
8274
8275
8276
8277
8278 \e9
8279 \e9 [mh.6] MH.6.7 UCI version
8280
8281
8282
8283
8284
8285
8286
8287
8288
8289 MH-PROFILE(5) -127- MH-PROFILE(5)
8290
8291
8292 _\bB_\bu_\bg_\bs
8293 The shell quoting conventions are not available in the .mh_profile.
8294 Each token is separated by whitespace.
8295
8296 There is some question as to what kind of arguments should be
8297 placed in the profile as options. In order to provide a clear
8298 answer, recall command line semantics of all _\bM_\bH programs: conflict-
8299 ing switches (e.g., `-header and `-noheader') may occur more than
8300 one time on the command line, with the last switch taking effect.
8301 Other arguments, such as message sequences, filenames and folders,
8302 are always remembered on the invocation line and are not superseded
8303 by following arguments of the same type. Hence, it is safe to
8304 place only switches (and their arguments) in the profile.
8305
8306 If one finds that an _\bM_\bH program is being invoked again and again
8307 with the same arguments, and those arguments aren't switches, then
8308 there are a few possible solutions to this problem. The first is
8309 to create a (soft) link in your $_\bH_\bO_\bM_\bE/_\bb_\bi_\bn directory to the _\bM_\bH pro-
8310 gram of your choice. By giving this link a different name, you can
8311 create a new entry in your profile and use an alternate set of de-
8312 faults for the _\bM_\bH command. Similarly, you could create a small
8313 shell script which called the _\bM_\bH program of your choice with an al-
8314 ternate set of invocation line switches (using links and an alter-
8315 nate profile entry is preferable to this solution).
8316
8317 Finally, the _\bc_\bs_\bh user could create an alias for the command of the
8318 form:
8319
8320 alias cmd 'cmd arg1 arg2 ...'
8321
8322 In this way, the user can avoid lengthy type-in to the shell, and
8323 still give _\bM_\bH commands safely. (Recall that some _\bM_\bH commands in-
8324 voke others, and that in all cases, the profile is read, meaning
8325 that aliases are disregarded beyond an initial command invocation)
8326
8327
8328
8329
8330
8331
8332
8333
8334
8335
8336
8337
8338
8339
8340
8341
8342
8343 \e9
8344 \e9 [mh.6] MH.6.7 UCI version
8345
8346
8347
8348
8349
8350
8351
8352
8353
8354 MH-SEQUENCE(5) -128- MH-SEQUENCE(5)
8355
8356
8357 _\bN_\bA_\bM_\bE
8358 mh-sequence - sequence specification for MH message system
8359
8360 _\bS_\bY_\bN_\bO_\bP_\bS_\bI_\bS
8361 most _\bM_\bH commands
8362
8363 _\bD_\bE_\bS_\bC_\bR_\bI_\bP_\bT_\bI_\bO_\bN
8364
8365 Most _\bM_\bH commands accept a `msg' or `msgs' specification, where
8366 `msg' indicates one message and `msgs' indicates one or more mes-
8367 sages. To designate a message, you may use either its number
8368 (e.g., 1, 10, 234) or one of these "reserved" message names:
8369
8370 _\bN_\ba_\bm_\be _\bD_\be_\bs_\bc_\br_\bi_\bp_\bt_\bi_\bo_\bn
8371 first the first message in the folder
8372 last the last message in the folder
8373 cur the most recently accessed message
8374 prev the message numerically preceding "cur"
8375 next the message numerically following "cur"
8376
8377 In commands that take a `msg' argument, the default is "cur". As a
8378 shorthand, "." is equivalent to "cur".
8379
8380 For example: In a folder containing five messages numbered 5, 10,
8381 94, 177 and 325, "first" is 5 and "last" is 325. If "cur" is 94,
8382 then "prev" is 10 and "next" is 177.
8383
8384 The word `msgs' indicates that one or more messages may be speci-
8385 fied. Such a specification consists of one message designation or
8386 of several message designations separated by spaces. A message
8387 designation consists either of a message name as defined above, or
8388 a message range.
8389
8390 A message range is specified as "name1-name2" or "name:n", where
8391 `name', `name1' and `name2' are message names, and `n' is an
8392 integer.
8393
8394 The specification "name1-name2" designates all currently-existing
8395 messages from `name1' to `name2' inclusive. The message name "all"
8396 is a shorthand for the message range "first-last".
8397
8398 The specification "name:n" designates up to `n' messages. These
8399 messages start with `name' if `name' is a message number or one of
8400 the reserved names "first" "cur", or "next", The messages end with
8401 `name' if `name' is "prev" or "last". The interpretation of `n'
8402 may be overridden by preceding `n' with a plus or minus sign; `+n'
8403 always means up to `n' messages starting with `name', and `-n'
8404 always means up to `n' messages ending with `name'.
8405
8406 In commands which accept a `msgs' argument, the default is either
8407 "cur" or "all", depending on which makes more sense. Repeated
8408 specifications of the same message have the same effect as a single
8409
8410 [mh.6] MH.6.7 UCI version
8411
8412
8413
8414
8415
8416
8417
8418
8419
8420 MH-SEQUENCE(5) -129- MH-SEQUENCE(5)
8421
8422
8423 specification of the message.
8424
8425
8426 _\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
8427
8428 In addition to the "reserved" (pre-defined) message names given
8429 above, _\bM_\bH supports user-defined sequence names. User-defined
8430 sequences allow the _\bM_\bH user a tremendous amount of power in dealing
8431 with groups of messages in the same folder by allowing the user to
8432 bind a group of messages to a meaningful symbolic name.
8433
8434 The name used to denote a message sequence must consist of an
8435 alphabetic character followed by zero or more alphanumeric charac-
8436 ters, and can not be one of the "reserved" message names above.
8437 After defining a sequence, it can be used wherever an _\bM_\bH command
8438 expects a `msg' or `msgs' argument.
8439
8440 Some forms of message ranges are allowed with user-defined
8441 sequences. The specification "name:n" may be used, and it desig-
8442 nates up to the first `n' messages (or last `n' messages for `-n')
8443 which are elements of the user-defined sequence `name'.
8444
8445 The specifications "name:next" and "name:prev" may also be used,
8446 and they designate the next or previous message (relative to the
8447 current message) which is an element of the user-defined sequence
8448 `name'. The specificaitions "name:first" and "name:last" are
8449 equivalent to "name:1" and "name:-1", respectively. The specifica-
8450 tion "name:cur" is not allowed (use just "cur" instead). The syn-
8451 tax of these message range specifcations is subject to change in
8452 the future.
8453
8454 User-defined sequence names are specific to each folder. They are
8455 defined using the _\bp_\bi_\bc_\bk and _\bm_\ba_\br_\bk commands.
8456
8457
8458 _\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
8459
8460 There are two varieties of sequences: _\bp_\bu_\bb_\bl_\bi_\bc sequences and _\bp_\br_\bi_\bv_\ba_\bt_\be
8461 sequences. _\bP_\bu_\bb_\bl_\bi_\bc sequences of a folder are accessible to any _\bM_\bH
8462 user that can read that folder and are kept in the .mh_sequences
8463 file in the folder. _\bP_\br_\bi_\bv_\ba_\bt_\be sequences are accessible only to the
8464 _\bM_\bH user that defined those sequences and are kept in the user's _\bM_\bH
8465 context file. By default, _\bp_\bi_\bc_\bk and _\bm_\ba_\br_\bk create _\bp_\bu_\bb_\bl_\bi_\bc sequences if
8466 the folder for which the sequences are being defined is writable by
8467 the _\bM_\bH user. Otherwise, _\bp_\br_\bi_\bv_\ba_\bt_\be sequences are created. This can
8468 be overridden with the `-public' and `-private' switches to _\bm_\ba_\br_\bk.
8469
8470
8471 _\bS_\be_\bq_\bu_\be_\bn_\bc_\be _\bN_\be_\bg_\ba_\bt_\bi_\bo_\bn
8472
8473 _\bM_\bH provides the ability to select all messages not elements of a
8474 user-defined sequence. To do this, the user should define the
8475
8476 [mh.6] MH.6.7 UCI version
8477
8478
8479
8480
8481
8482
8483
8484
8485
8486 MH-SEQUENCE(5) -130- MH-SEQUENCE(5)
8487
8488
8489 entry "Sequence-Negation" in the _\bM_\bH profile file; its value may be
8490 any string. This string is then used to preface an existing user-
8491 defined sequence name. This specification then refers to those
8492 messages not elements of the specified sequence name. For example,
8493 if the profile entry is:
8494
8495 Sequence-Negation: not
8496
8497 then anytime an _\bM_\bH command is given "notfoo" as a `msg' or `msgs'
8498 argument, it would substitute all messages that are not elements of
8499 the sequence "foo".
8500
8501 Obviously, the user should beware of defining sequences with names
8502 that begin with the value of the "Sequence-Negation" profile entry.
8503
8504
8505 _\bT_\bh_\be _\bP_\br_\be_\bv_\bi_\bo_\bu_\bs _\bS_\be_\bq_\bu_\be_\bn_\bc_\be
8506
8507 _\bM_\bH provides the ability to remember the `msgs' or `msg' argument
8508 last given to an _\bM_\bH command. The entry "Previous-Sequence" should
8509 be defined in the _\bM_\bH profile; its value should be a sequence name
8510 or multiple sequence names separated by spaces. If this entry is
8511 defined, when when an _\bM_\bH command finishes, it will define the
8512 sequence(s) named in the value of this entry to be those messages
8513 that were specified to the command. Hence, a profile entry of
8514
8515 Previous-Sequence: pseq
8516
8517 directs any _\bM_\bH command that accepts a `msg' or `msgs' argument to
8518 define the sequence "pseq" as those messages when it finishes.
8519
8520 Note: there can be a performance penalty in using the
8521 "Previous-Sequence" facility. If it is used, all _\bM_\bH programs have
8522 to write the sequence information to the .mh_sequences file for the
8523 folder each time they run. If the "Previous-Sequence" profile
8524 entry is not included, only _\bp_\bi_\bc_\bk and _\bm_\ba_\br_\bk will write to the
8525 .mh_sequences file.
8526
8527
8528 _\bT_\bh_\be _\bU_\bn_\bs_\be_\be_\bn _\bS_\be_\bq_\bu_\be_\bn_\bc_\be
8529
8530 Finally, some users like to indicate messages which have not been
8531 previously seen by them. Both _\bi_\bn_\bc and _\bs_\bh_\bo_\bw honor the profile entry
8532 "Unseen-Sequence" to support this activity. This entry in the
8533 .mh_profile should be defined as one or more sequence names
8534 separated by spaces. If there is a value for "Unseen-Sequence" in
8535 the profile, then whenever _\bi_\bn_\bc places new messages in a folder, the
8536 new messages will also be added to the sequence(s) named in the
8537 value of this entry. Hence, a profile entry of
8538
8539 Unseen-Sequence: unseen
8540 \e9
8541 \e9 [mh.6] MH.6.7 UCI version
8542
8543
8544
8545
8546
8547
8548
8549
8550
8551 MH-SEQUENCE(5) -131- MH-SEQUENCE(5)
8552
8553
8554 directs _\bi_\bn_\bc to add new messages to the sequence "unseen". Unlike
8555 the behavior of the "Previous-Sequence" entry in the profile, how-
8556 ever, the sequence(s) will not be zeroed by _\bi_\bn_\bc.
8557
8558 Similarly, whenever _\bs_\bh_\bo_\bw (or _\bn_\be_\bx_\bt or _\bp_\br_\be_\bv) displays a message, that
8559 message will be removed from any sequences named by the
8560 "Unseen-Sequence" entry in the profile.
8561
8562
8563 _\bF_\bi_\bl_\be_\bs
8564 $HOME/.mh_profile The user profile
8565 <mh-dir>/context The user context
8566 <folder>/.mh_sequences Public sequences for <folder>
8567
8568
8569 _\bP_\br_\bo_\bf_\bi_\bl_\be _\bC_\bo_\bm_\bp_\bo_\bn_\be_\bn_\bt_\bs
8570 Sequence-Negation: To designate messages not in a sequence
8571 Previous-Sequence: The last message specification given
8572 Unseen-Sequence: Those messages not yet seen by the user
8573
8574
8575 _\bS_\be_\be _\bA_\bl_\bs_\bo
8576 mh(1), mark(1), pick(1), mh-profile(5)
8577
8578
8579 _\bD_\be_\bf_\ba_\bu_\bl_\bt_\bs
8580 None
8581
8582
8583 _\bC_\bo_\bn_\bt_\be_\bx_\bt
8584 All
8585
8586
8587 _\bB_\bu_\bg_\bs
8588 User-defined sequences are stored in the .mh_sequences file as a
8589 series of message specifications separated by spaces. If a user-
8590 defined sequence contains too many individual message specifica-
8591 tions, that line in the file may become too long for _\bM_\bH to handle.
8592 This will generate the error message ".mh_sequences is poorly for-
8593 matted". You'll have to edit the file by hand to remove the of-
8594 fending line.
8595
8596 This can happen to users who define the "Previous-Sequence" entry
8597 in the _\bM_\bH profile and have a folder containing many messages with
8598 gaps in the numbering. A workaround for large folders is to minim-
8599 ize numbering gaps by using "folder -pack" often.
8600
8601
8602
8603
8604
8605 \e9
8606 \e9 [mh.6] MH.6.7 UCI version
8607
8608
8609
8610
8611
8612
8613
8614
8615
8616 AP(8) -132- AP(8)
8617
8618
8619 _\bN_\bA_\bM_\bE
8620 ap - parse addresses 822-style
8621
8622 _\bS_\bY_\bN_\bO_\bP_\bS_\bI_\bS
8623 /usr/local/lib/mh/ap [-form formatfile] [-format string]
8624 [-normalize] [-nonormalize] [-width columns] addrs ...
8625 [-help]
8626
8627 _\bD_\bE_\bS_\bC_\bR_\bI_\bP_\bT_\bI_\bO_\bN
8628
8629 _\bA_\bp is a program that parses addresses according to the ARPA Inter-
8630 net standard. It also understands many non-standard formats. It
8631 is useful for seeing how _\bM_\bH will interpret an address.
8632
8633 The _\ba_\bp program treats each argument as one or more addresses, and
8634 prints those addresses out in the official 822-format. Hence, it
8635 is usually best to enclose each argument in double-quotes for the
8636 shell.
8637
8638 To override the output format used by _\ba_\bp, the `-format string' or
8639 `-format file' switches are used. This permits individual fields
8640 of the address to be extracted with ease. The string is simply a
8641 format stringand thefile is simply a format file. See
8642 _\bm_\bh-_\bf_\bo_\br_\bm_\ba_\bt (5) for the details.
8643
8644 In addition to the standard escapes, _\ba_\bp also recognizes the follow-
8645 ing additional escape:
8646
8647 _\bE_\bs_\bc_\ba_\bp_\be _\bR_\be_\bt_\bu_\br_\bn_\bs _\bD_\be_\bs_\bc_\br_\bi_\bp_\bt_\bi_\bo_\bn
8648 error string A diagnostic if the parse failed
8649
8650 If the `-normalize' switch is given, _\ba_\bp will try to track down the
8651 official hostname of the address.
8652
8653 Here is the default format string used by _\ba_\bp:
8654
8655 %<{error}%{error}: %{text}%|%(putstr(proper{text}))%>
8656
8657 which says that if an error was detected, print the error, a `:',
8658 and the address in error. Otherwise, output the 822-proper format
8659 of the address.
8660
8661 _\bF_\bi_\bl_\be_\bs
8662 $HOME/.mh_profile The user profile
8663 /usr/local/lib/mh/mtstailor tailor file
8664
8665
8666 _\bP_\br_\bo_\bf_\bi_\bl_\be _\bC_\bo_\bm_\bp_\bo_\bn_\be_\bn_\bt_\bs
8667 None
8668
8669
8670 \e9
8671 \e9 [mh.6] MH.6.7 UCI version
8672
8673
8674
8675
8676
8677
8678
8679
8680
8681 AP(8) -133- AP(8)
8682
8683
8684 _\bS_\be_\be _\bA_\bl_\bs_\bo
8685 dp(8),
8686 _\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
8687 RFC-822)
8688
8689
8690 _\bD_\be_\bf_\ba_\bu_\bl_\bt_\bs
8691 `-format' defaults as described above
8692 `-normalize'
8693 `-width' defaults to the width of the terminal
8694
8695
8696 _\bC_\bo_\bn_\bt_\be_\bx_\bt
8697 None
8698
8699
8700 _\bB_\bu_\bg_\bs
8701 The argument to the `-format' switch must be interpreted as a sin-
8702 gle token by the shell that invokes _\ba_\bp. Therefore, one must usual-
8703 ly place the argument to this switch inside double-quotes.
8704
8705 On hosts where _\bM_\bH was configured with the BERK option, address
8706 parsing is not enabled.
8707
8708
8709
8710
8711
8712
8713
8714
8715
8716
8717
8718
8719
8720
8721
8722
8723
8724
8725
8726
8727
8728
8729
8730
8731
8732
8733
8734
8735 \e9
8736 \e9 [mh.6] MH.6.7 UCI version
8737
8738
8739
8740
8741
8742
8743
8744
8745
8746 CONFLICT(8) -134- CONFLICT(8)
8747
8748
8749 _\bN_\bA_\bM_\bE
8750 conflict - search for alias/password conflicts
8751
8752 _\bS_\bY_\bN_\bO_\bP_\bS_\bI_\bS
8753 /usr/local/lib/mh/conflict [-mail name] [-search directory]
8754 [aliasfiles...] [-help]
8755
8756 _\bD_\bE_\bS_\bC_\bR_\bI_\bP_\bT_\bI_\bO_\bN
8757
8758 _\bC_\bo_\bn_\bf_\bl_\bi_\bc_\bt is a program that checks to see if the interface between
8759 _\bM_\bH and transport system is in good shape
8760
8761 _\bC_\bo_\bn_\bf_\bl_\bi_\bc_\bt also checks for maildrops in /usr/spool/mail which do not
8762 belong to a valid user. It assumes that no user name will start
8763 with `.', and thus ignores files in /usr/spool/mail which begin
8764 with `.'. It also checks for entries in the _\bg_\br_\bo_\bu_\bp (5) file which
8765 do not belong to a valid user, and for users who do not have a
8766 valid group number. In addition duplicate users and groups are
8767 noted.
8768
8769 If the `-mail name' switch is used, then the results will be sent
8770 to the specified _\bn_\ba_\bm_\be. Otherwise, the results are sent to the
8771 standard output.
8772
8773 The `-search directory' switch can be used to search directories
8774 other than /usr/spool/mail and to report anomalies in those direc-
8775 tories. The `-search directory' switch can appear more than one
8776 time in an invocation to _\bc_\bo_\bn_\bf_\bl_\bi_\bc_\bt.
8777
8778 _\bC_\bo_\bn_\bf_\bl_\bi_\bc_\bt should be run under _\bc_\br_\bo_\bn (8), or whenever system account-
8779 ing takes place.
8780
8781 _\bF_\bi_\bl_\be_\bs
8782 /usr/local/lib/mh/mtstailor tailor file
8783 /etc/passwd List of users
8784 /etc/group List of groups
8785 /usr/local/mhmail Program to send mail
8786 /usr/spool/mail/ Directory of mail drop
8787
8788
8789 _\bP_\br_\bo_\bf_\bi_\bl_\be _\bC_\bo_\bm_\bp_\bo_\bn_\be_\bn_\bt_\bs
8790 None
8791
8792
8793 _\bS_\be_\be _\bA_\bl_\bs_\bo
8794 mh-alias(5)
8795
8796
8797 _\bD_\be_\bf_\ba_\bu_\bl_\bt_\bs
8798 `aliasfiles' defaults to /usr/local/lib/mh/MailAliases
8799
8800 \e9
8801 \e9 [mh.6] MH.6.7 UCI version
8802
8803
8804
8805
8806
8807
8808
8809
8810
8811 CONFLICT(8) -135- CONFLICT(8)
8812
8813
8814 _\bC_\bo_\bn_\bt_\be_\bx_\bt
8815 None
8816
8817
8818
8819
8820
8821
8822
8823
8824
8825
8826
8827
8828
8829
8830
8831
8832
8833
8834
8835
8836
8837
8838
8839
8840
8841
8842
8843
8844
8845
8846
8847
8848
8849
8850
8851
8852
8853
8854
8855
8856
8857
8858
8859
8860
8861
8862
8863
8864
8865 \e9
8866 \e9 [mh.6] MH.6.7 UCI version
8867
8868
8869
8870
8871
8872
8873
8874
8875
8876 DP(8) -136- DP(8)
8877
8878
8879 _\bN_\bA_\bM_\bE
8880 dp - parse dates 822-style
8881
8882 _\bS_\bY_\bN_\bO_\bP_\bS_\bI_\bS
8883 /usr/local/lib/mh/dp [-form formatfile] [-format string]
8884 [-width columns] dates ... [-help]
8885
8886 _\bD_\bE_\bS_\bC_\bR_\bI_\bP_\bT_\bI_\bO_\bN
8887
8888 _\bD_\bp is a program that parses dates according to the ARPA Internet
8889 standard. It also understands many non-standard formats, such as
8890 those produced by TOPS-20 sites and some UNIX sites using
8891 _\bc_\bt_\bi_\bm_\be (3). It is useful for seeing how _\bM_\bH will interpret a date.
8892
8893 The _\bd_\bp program treats each argument as a single date, and prints
8894 the date out in the official 822-format. Hence, it is usually best
8895 to enclose each argument in double-quotes for the shell.
8896
8897 To override the output format used by _\bd_\bp, the `-format string' or
8898 `-format file' switches are used. This permits individual fields
8899 of the address to be extracted with ease. The string is simply a
8900 format stringand thefile is simply a format file. See
8901 _\bm_\bh-_\bf_\bo_\br_\bm_\ba_\bt (5) for the details.
8902
8903 Here is the default format string used by _\bd_\bp:
8904
8905 %<(nodate{text})error: %{text}%|%(putstr(pretty{text}))%>
8906
8907 which says that if an error was detected, print the error, a `:',
8908 and the date in error. Otherwise, output the 822-proper format of
8909 the date.
8910
8911 _\bF_\bi_\bl_\be_\bs
8912 $HOME/.mh_profile The user profile
8913
8914
8915 _\bP_\br_\bo_\bf_\bi_\bl_\be _\bC_\bo_\bm_\bp_\bo_\bn_\be_\bn_\bt_\bs
8916 None
8917
8918
8919 _\bS_\be_\be _\bA_\bl_\bs_\bo
8920 ap(8)
8921 _\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
8922 RFC-822)
8923
8924
8925 _\bD_\be_\bf_\ba_\bu_\bl_\bt_\bs
8926 `-format' default as described above
8927 `-width' default to the width of the terminal
8928
8929
8930 \e9
8931 \e9 [mh.6] MH.6.7 UCI version
8932
8933
8934
8935
8936
8937
8938
8939
8940
8941 DP(8) -137- DP(8)
8942
8943
8944 _\bC_\bo_\bn_\bt_\be_\bx_\bt
8945 None
8946
8947
8948 _\bB_\bu_\bg_\bs
8949 The argument to the `-format' switch must be interpreted as a sin-
8950 gle token by the shell that invokes _\bd_\bp. Therefore, one must usual-
8951 ly place the argument to this switch inside double-quotes.
8952
8953
8954
8955
8956
8957
8958
8959
8960
8961
8962
8963
8964
8965
8966
8967
8968
8969
8970
8971
8972
8973
8974
8975
8976
8977
8978
8979
8980
8981
8982
8983
8984
8985
8986
8987
8988
8989
8990
8991
8992
8993
8994
8995 \e9
8996 \e9 [mh.6] MH.6.7 UCI version
8997
8998
8999
9000
9001
9002
9003
9004
9005
9006 INSTALL-MH(8) -138- INSTALL-MH(8)
9007
9008
9009 _\bN_\bA_\bM_\bE
9010 install-mh - initialize the MH environment
9011
9012 _\bS_\bY_\bN_\bO_\bP_\bS_\bI_\bS
9013 /usr/local/lib/mh/install-mh [-auto] [-compat]
9014
9015 _\bD_\bE_\bS_\bC_\bR_\bI_\bP_\bT_\bI_\bO_\bN
9016
9017 When a user runs any _\bM_\bH program for the first time, the program
9018 will invoke _\bi_\bn_\bs_\bt_\ba_\bl_\bl-_\bm_\bh (with the `-auto' switch) to query the user
9019 for the initial _\bM_\bH environment. The user does NOT invoke this pro-
9020 gram directly. The user is asked for the name of the directory
9021 that will be designated as the user's _\bM_\bH directory. If this direc-
9022 tory does not exist, the user is asked if it should be created.
9023 Normally, this directory should be under the user's home directory,
9024 and has the default name of Mail/. After _\bi_\bn_\bs_\bt_\ba_\bl_\bl-_\bm_\bh has written
9025 the initial .mh_profile for the user, control returns to the origi-
9026 nal _\bM_\bH program.
9027
9028 As with all _\bM_\bH commands, _\bi_\bn_\bs_\bt_\ba_\bl_\bl-_\bm_\bh first consults the $HOME
9029 envariable to determine the user's home directory. If $HOME is not
9030 set, then the /_\be_\bt_\bc/_\bp_\ba_\bs_\bs_\bw_\bd file is consulted.
9031
9032 When converting from _\bm_\bh._\b3 to _\bm_\bh._\b4, _\bi_\bn_\bs_\bt_\ba_\bl_\bl-_\bm_\bh is automatically
9033 invoked with the `-compat' switch.
9034
9035 _\bF_\bi_\bl_\be_\bs
9036 $HOME/.mh_profile The user profile
9037
9038
9039 _\bP_\br_\bo_\bf_\bi_\bl_\be _\bC_\bo_\bm_\bp_\bo_\bn_\be_\bn_\bt_\bs
9040 Path: To set the user's MH directory
9041
9042
9043 _\bC_\bo_\bn_\bt_\be_\bx_\bt
9044 With `-auto', the current folder is changed to "inbox".
9045
9046
9047
9048
9049
9050
9051
9052
9053
9054
9055
9056
9057
9058
9059
9060 \e9
9061 \e9 [mh.6] MH.6.7 UCI version
9062
9063
9064
9065
9066
9067
9068
9069
9070
9071 POST(8) -139- POST(8)
9072
9073
9074 _\bN_\bA_\bM_\bE
9075 post - deliver a message
9076
9077 _\bS_\bY_\bN_\bO_\bP_\bS_\bI_\bS
9078 /usr/local/lib/mh/post [-alias aliasfile] [-filter filterfile]
9079 [-nofilter] [-format] [-noformat] [-msgid] [-nomsgid]
9080 [-verbose] [-noverbose] [-watch] [-nowatch] [-width columns]
9081 file [-help]
9082
9083 _\bD_\bE_\bS_\bC_\bR_\bI_\bP_\bT_\bI_\bO_\bN
9084
9085 _\bP_\bo_\bs_\bt is the program called by _\bs_\be_\bn_\bd (1) to deliver the message in
9086 _\bf_\bi_\bl_\be to local and remote users. In fact, all of the functions
9087 attributed to _\bs_\be_\bn_\bd on its manual page are performed by _\bp_\bo_\bs_\bt, with
9088 _\bs_\be_\bn_\bd acting as a relatively simple preprocessor. Thus, it is _\bp_\bo_\bs_\bt
9089 which parses the various header fields, appends From: and Date:
9090 lines, and interacts with the _\bM_\bM_\bD_\bF transport system. _\bP_\bo_\bs_\bt will not
9091 normally be called directly by the user.
9092
9093 _\bP_\bo_\bs_\bt searches the "To:", "cc:", "Bcc:", "Fcc:", and "Resent-xxx:"
9094 header lines of the specified message for destination addresses,
9095 checks these addresses for validity, and formats them so as to con-
9096 form to ARPAnet Internet Message Format protocol, unless the
9097 `-noformat' flag is set. This will normally cause "@_\bl_\bo_\bc_\ba_\bl-_\bs_\bi_\bt_\be" to
9098 be appended to each local destination address, as well as any local
9099 return addresses. The `-width columns' switch can be used to indi-
9100 cate the preferred length of the header components that contain
9101 addresses.
9102
9103 If a "Bcc:" field is encountered, its addresses will be used for
9104 delivery, and the "Bcc:" field will be removed from the message
9105 sent to sighted recipients. The blind recipients will receive an
9106 entirely new message with a minimal set of headers. Included in
9107 the body of the message will be a copy of the message sent to the
9108 sighted recipients. If `-filter filterfile' is specified, then
9109 this copy is filtered (re-formatted) prior to being sent to the
9110 blind recipients.
9111
9112 The `-alias aliasfile' switch can be used to specify a file that
9113 post should take aliases from. More than one file can be speci-
9114 fied, each being preceded with `-alias'. In any event, the primary
9115 alias file is read first.
9116
9117 The `-msgid' switch indicates that a "Message-ID:" or
9118 "Resent-Message-ID:" field should be added to the header.
9119
9120 The `-verbose' switch indicates that the user should be informed of
9121 each step of the posting/filing process.
9122
9123 The `-watch' switch indicates that the user would like to watch the
9124 transport system's handling of the message (e.g., local and "fast"
9125 delivery).
9126
9127 [mh.6] MH.6.7 UCI version
9128
9129
9130
9131
9132
9133
9134
9135
9136
9137 POST(8) -140- POST(8)
9138
9139
9140 _\bP_\bo_\bs_\bt consults the envariable $SIGNATURE to determine the sender's
9141 personal name in constructing the "From:" line of the message.
9142
9143 _\bF_\bi_\bl_\be_\bs
9144 /usr/local/lib/mh/mtstailor tailor file
9145 /usr/local/refile Program to process Fcc:s
9146 /usr/local/lib/mh/mhl Program to process Bcc:s
9147 /usr/local/lib/mh/MailAliases Primary alias file
9148
9149
9150 _\bP_\br_\bo_\bf_\bi_\bl_\be _\bC_\bo_\bm_\bp_\bo_\bn_\be_\bn_\bt_\bs
9151 _\bp_\bo_\bs_\bt does NOT consult the user's .mh_profile
9152
9153
9154 _\bS_\be_\be _\bA_\bl_\bs_\bo
9155 _\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
9156 RFC-822),
9157 mhmail(1), send(1), mh-mail(5), mh-alias(5)
9158
9159
9160 _\bD_\be_\bf_\ba_\bu_\bl_\bt_\bs
9161 `-alias /usr/local/lib/mh/MailAliases'
9162 `-format'
9163 `-nomsgid'
9164 `-noverbose'
9165 `-width 72'
9166 `-nofilter'
9167
9168
9169 _\bC_\bo_\bn_\bt_\be_\bx_\bt
9170 None
9171
9172
9173 _\bB_\bu_\bg_\bs
9174 "Reply-To:" fields are allowed to have groups in them according to
9175 the 822 specification, but _\bp_\bo_\bs_\bt won't let you use them.
9176
9177
9178
9179
9180
9181
9182
9183
9184
9185
9186
9187
9188
9189
9190
9191 \e9
9192 \e9 [mh.6] MH.6.7 UCI version
9193
9194
9195
9196
9197
9198
9199
9200
9201
9202
9203
9204
9205 _\b5. _\bR_\bE_\bP_\bO_\bR_\bT_\bI_\bN_\bG _\bP_\bR_\bO_\bB_\bL_\bE_\bM_\bS
9206
9207
9208
9209 \e9
9210 If problems are encountered with an _\bM_\bH program, the problems should
9211 be reported to the local maintainers of _\bM_\bH. When doing this, the name
9212 of the program should be reported, along with the version information
9213 for the program. To find out what version of an _\bM_\bH program is being
9214 run, invoke the program with the `-help' switch. In addition to listing
9215 the syntax of the command, the program will list information pertaining
9216 to its version. This information includes the version of _\bM_\bH, the host
9217 it was generated on, and the date the program was loaded. A second line
9218 of information, found on versions of _\bM_\bH after #5.380 include _\bM_\bH confi-
9219 guration options. For example,
9220
9221 version: MH 6.1 #1[UCI] (nrtc-gremlin) of Wed Nov 6 01:13:53 PST
9222 1985
9223 options: [BSD42] [MHE] [NETWORK] [SENDMTS] [MMDFII] [SMTP] [POP]
9224
9225 The `6.1 #1[UCI]' indicates that the program is from the UCI _\bm_\bh._\b6 ver-
9226 sion of _\bM_\bH. The program was generated on the host `nrtc-gremlin' on
9227 `Wed Nov 6 01:13:53 PST 1985'. It's usually a good idea to send the
9228 output of the `-help' switch along with your report.
9229
9230 If there is no local _\bM_\bH maintainer, try the address Bug-MH. If that
9231 fails, use the Internet mailbox Bug-MH@ICS.UCI.EDU.
9232
9233
9234
9235
9236
9237
9238
9239
9240
9241
9242
9243
9244
9245
9246
9247
9248
9249
9250
9251
9252
9253
9254
9255
9256
9257 \e9 -141-
9258
9259
9260
9261
9262
9263
9264
9265
9266
9267
9268
9269
9270 _\b6. _\bA_\bD_\bV_\bA_\bN_\bC_\bE_\bD _\bF_\bE_\bA_\bT_\bU_\bR_\bE_\bS
9271
9272
9273
9274 \e9
9275 This section describes some features of _\bM_\bH that were included
9276 strictly for advanced _\bM_\bH users. These capabilities permit _\bM_\bH to exhibit
9277 more powerful behavior for the seasoned _\bM_\bH users.
9278
9279
9280 \e9 _\bU_\bS_\bE_\bR-_\bD_\bE_\bF_\bI_\bN_\bE_\bD _\bS_\bE_\bQ_\bU_\bE_\bN_\bC_\bE_\bS
9281
9282 User-defined sequences allow the _\bM_\bH user a tremendous amount of
9283 power in dealing with groups of messages in the same folder by allowing
9284 the user to bind a group of messages to a meaningful symbolic name. The
9285 user may choose any name for a message sequence, as long as it consists
9286 of alphanumeric characters and does not conflict with the standard _\bM_\bH
9287 reserved message names (e.g., "first", etc). After defining a sequence,
9288 it can be used wherever an _\bM_\bH command expects a `msg' or `msgs' argu-
9289 ment.
9290
9291 A restricted form of message ranges are allowed with user-defined
9292 sequences. The form "name:n", specifies up to the first `n' messages
9293 which are part of the user-defined sequence `name'. A leading plus sign
9294 is allowed on `n', but is ignored. The interpretation of n is overrid-
9295 den if n is preceded by a minus sign; `-n' always means up to the last
9296 `n' messages which are part of the sequence `name'.
9297
9298 Although all _\bM_\bH commands expand user-defined sequences as appropri-
9299 ate, there are two commands that allow the user to define and manipulate
9300 them: _\bp_\bi_\bc_\bk and _\bm_\ba_\br_\bk.
9301
9302 _\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
9303
9304 Most users of _\bM_\bH will use user-defined sequences only with the _\bp_\bi_\bc_\bk
9305 command. By giving the `-sequence name' switch to _\bp_\bi_\bc_\bk (which can occur
9306 more than once on the command line), each sequence named is defined as
9307 those messages which _\bp_\bi_\bc_\bk matched according the the selection criteria
9308 it was given. Hence,
9309
9310 pick -from frated -seq fred
9311
9312 finds all those messages in the current folder which were from "frated",
9313 creates a sequence called "fred", and then adds them to the sequence.
9314 The user could then invoke
9315
9316 scan fred
9317
9318 to get a _\bs_\bc_\ba_\bn listing of those messages. Note that by default, _\bp_\bi_\bc_\bk
9319 creates the named sequences before it adds the selected messages to the
9320 sequence. Hence, if the named sequence already existed, the sequence is
9321
9322 -142-
9323
9324
9325
9326
9327
9328
9329
9330
9331
9332 -143-
9333
9334
9335 destroyed prior to being re-defined (nothing happens to the messages
9336 that were a part of this sequence, they simply cease to be members of
9337 that sequence). By using the `-nozero' switch, this behavior can be
9338 inhibited, as in
9339
9340 pick -from frated -seq sgroup
9341 pick -from fear -seq sgroup -nozero
9342 pick -from freida -seq sgroup -nozero
9343
9344 finds all those messages in the current folder which were from "frated",
9345 "fear", or "freida", and defines the sequence called "sgroup" as exactly
9346 those messages. These operations amounted to an "inclusive-or" of three
9347 selection criteria, using _\bp_\bi_\bc_\bk, one can also generate the "and" of some
9348 selection criteria as well:
9349
9350 pick -from frated -seq fred
9351 pick -before friday -seq fred fred
9352
9353 This example defines the sequence called "fred" as exactly those mes-
9354 sages from "frated" that were dated prior to "friday".[1]
9355
9356 _\bP_\bi_\bc_\bk is normally used as a back-quoted command, for example,
9357
9358 scan `pick -from postmaster`
9359
9360 Now suppose that the user decides that another command should be issued,
9361 using exactly those messages. Since, _\bp_\bi_\bc_\bk wasn't given a
9362 `-sequence name' argument in this example, the user would end-up typing
9363 the entire back-quoted command again. A simpler way is to add a default
9364 sequence name to the .mh_profile. For example,
9365
9366 pick: -seq select -list
9367
9368 will tell _\bp_\bi_\bc_\bk to always define the sequence "select" whenever it's run.
9369 The `-list' is necessary since the `-sequence name' switch sets `-nol-
9370 ist' whenever the former is encountered. Hence, this profile entry
9371
9372
9373 \e9 [1] Of course, it is much easier to simply use the built-in boolean
9374 operation of _\bp_\bi_\bc_\bk to get the desired results:
9375
9376 pick -from frated -or -from fear -or -from freida -seq sgroup
9377
9378 and
9379
9380 pick -from frated -and -before friday -seq fred
9381
9382 do exactly the same thing as the five commands listed above. Hence, the
9383 `-nozero' option to _\bp_\bi_\bc_\bk is only useful to manipulate existing se-
9384 quences.
9385
9386
9387 \e9
9388
9389
9390
9391
9392
9393
9394
9395
9396
9397 -144-
9398
9399
9400 makes _\bp_\bi_\bc_\bk define the "select" sequence and otherwise behave exactly as
9401 if there was no profile entry at all.
9402
9403 _\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
9404
9405 The _\bm_\ba_\br_\bk command lets the user perform low-level manipulation of
9406 sequences, and also provides a well-needed debug facility to the
9407 implementors/developers/maintainers of _\bM_\bH (the _\bM_\bH-hacks). In the
9408 future, a user-friendly "front-end" for _\bm_\ba_\br_\bk will probably be developed
9409 to give the _\bM_\bH user a way to take better advantage of the underlying
9410 facilities.
9411
9412 _\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
9413
9414 There are two kinds of sequences: _\bp_\bu_\bb_\bl_\bi_\bc sequences, and _\bp_\br_\bi_\bv_\ba_\bt_\be
9415 sequences. _\bP_\bu_\bb_\bl_\bi_\bc sequences of a folder are accessible to any _\bM_\bH user
9416 that can read that folder and are kept in the .mh_sequences file in the
9417 folder. _\bP_\br_\bi_\bv_\ba_\bt_\be sequences are accessible only to the _\bM_\bH user that
9418 defined those sequences and are kept in the user's _\bM_\bH context file. By
9419 default, _\bp_\bi_\bc_\bk (and _\bm_\ba_\br_\bk ) create _\bp_\bu_\bb_\bl_\bi_\bc sequences if the folder for
9420 which the sequences are being defined is writable by the _\bM_\bH user. Oth-
9421 erwise, _\bp_\br_\bi_\bv_\ba_\bt_\be sequences are created. This can be overridden with the
9422 `-public' and `-private' switches.
9423
9424 _\bS_\be_\bq_\bu_\be_\bn_\bc_\be _\bN_\be_\bg_\ba_\bt_\bi_\bo_\bn
9425
9426 In addition to telling an _\bM_\bH command to use the messages in the
9427 sequence "seen", as in
9428
9429 refile seen +old
9430
9431 it would be useful to be easily able to tell an _\bM_\bH command to use all
9432 messages _\be_\bx_\bc_\be_\bp_\bt those in the sequence. One way of doing this would be
9433 to use _\bm_\ba_\br_\bk and define the sequence explicitly, as in
9434
9435 mark -delete -zero seen -seq notseen
9436
9437 which, owing to _\bm_\ba_\br_\bk 's cryptic interpretation of `-delete' and `-zero',
9438 defines the sequence "notseen" to be all messages not in the sequence
9439 "seen". Naturally, anytime the sequence "seen" is changed, "notseen"
9440 will have to be updated. Another way to achieve this is to define the
9441 entry "Sequence-Negation:" in the .mh_profile. If the entry was
9442
9443 Sequence-Negation: not
9444
9445 then anytime an _\bM_\bH command was given "notseen" as a `msg' or `msgs'
9446 argument, it would substitute all messages that are not a member of the
9447 sequence "seen". That is,
9448
9449 refile notseen +new
9450
9451 does just that. The value of the "Sequence-Negation:" entry in the
9452
9453
9454
9455
9456
9457
9458
9459
9460
9461
9462
9463 -145-
9464
9465
9466 profile can be any string. Hence, experienced users of _\bM_\bH do not use a
9467 word, but rather a special character which their shell does not inter-
9468 pret (users of the _\bC_\bS_\bh_\be_\bl_\bl use a single caret or circumflex (usually
9469 shift-6), while users of the Bourne shell use an exclamation-mark).
9470 This is because there is nothing to prevent a user of _\bM_\bH from defining a
9471 sequence with this string as its prefix, if the string is nothing by
9472 letters and digits. Obviously, this could lead to confusing behavior if
9473 the "Sequence-Negation:" entry leads _\bM_\bH to believe that two sequences
9474 are opposites by virtue of their names differing by the prefix string.
9475
9476 _\bT_\bh_\be _\bP_\br_\be_\bv_\bi_\bo_\bu_\bs _\bS_\be_\bq_\bu_\be_\bn_\bc_\be
9477
9478 Many times users find themselves issuing a series of commands on
9479 the same sequences of messages. If the user first defined these mes-
9480 sages as a sequence, then considerable typing may be saved. If the user
9481 doesn't have this foresight, _\bM_\bH provides a handy way of having _\bM_\bH
9482 remember the `msgs' or `msg' argument last given to an _\bM_\bH command. If
9483 the entry "Previous-Sequence:" is defined in the .mh_profile, then when
9484 the command finishes, it will define the sequence(s) named in the value
9485 of this entry as being exactly those messages that were specified.
9486 Hence, a profile entry of
9487
9488 Previous-Sequence: pseq
9489
9490 directs any _\bM_\bH command that accepts a `msg' or `msgs' argument to define
9491 the sequence "pseq" as those messages when it finishes. More than one
9492 sequence name may be placed in this entry, separated with spaces. The
9493 one disadvantage of this approach is that the _\bM_\bH progams have to update
9494 the sequence information for the folder each time they run (although
9495 most programs read this information, usually only _\bp_\bi_\bc_\bk and _\bm_\ba_\br_\bk have to
9496 write this information out).
9497
9498 _\bT_\bh_\be _\bU_\bn_\bs_\be_\be_\bn _\bS_\be_\bq_\bu_\be_\bn_\bc_\be
9499
9500 Finally, some users like to distinguish between messages which have
9501 been previously seen by them. Both _\bi_\bn_\bc and _\bs_\bh_\bo_\bw honorthe profile entry
9502 "Unseen-Sequence" to support this activity. Whenever _\bi_\bn_\bc places new
9503 messages in a folder, if the entry "Unseen-Sequence" is defined in the
9504 .mh_profile, then when the command finishes, _\bi_\bn_\bc will add the new mes-
9505 sages to the sequence(s) named in the value of this entry. Hence, a
9506 profile entry of
9507
9508 Unseen-Sequence: unseen
9509
9510 directs _\bi_\bn_\bc to add new messages to the sequence "unseen". Unlike the
9511 behavior of the "Previous-Sequence" entry in the profile however, the
9512 sequence(s) will not be zero'd.
9513
9514 Similarly, whenever _\bs_\bh_\bo_\bw (or _\bn_\be_\bx_\bt or _\bp_\br_\be_\bv ) displays a message,
9515 they remove those messages from any sequences named by the
9516 "Unseen-Sequence" entry in the profile.
9517 \e9
9518 \e9
9519
9520
9521
9522
9523
9524
9525
9526
9527
9528 -146-
9529
9530
9531 _\bC_\bO_\bM_\bP_\bO_\bS_\bI_\bT_\bI_\bO_\bN _\bO_\bF _\bM_\bA_\bI_\bL
9532
9533 There are a number of interesting advanced facilities for the com-
9534 position of outgoing mail.
9535
9536
9537 _\bT_\bh_\be _\bD_\br_\ba_\bf_\bt _\bF_\bo_\bl_\bd_\be_\br
9538
9539 The _\bc_\bo_\bm_\bp, _\bd_\bi_\bs_\bt, _\bf_\bo_\br_\bw, and _\br_\be_\bp_\bl commands have two switches,
9540 `-draftfolder +folder' and `-draftmessage msg'. If
9541 `-draftfolder +folder' is used, these commands are directed to construct
9542 a draft message in the indicated folder. (The "Draft-Folder:" profile
9543 entry may be used to declare a default draft folder for use with _\bc_\bo_\bm_\bp,
9544 _\bd_\bi_\bs_\bt, _\bf_\bo_\br_\bw, and _\br_\be_\bp_\bl) If `-draftmessage msg' is not used, it defaults to
9545 `new' (unless the user invokes _\bc_\bo_\bm_\bp with `-use', in which case the
9546 default is `cur'). Hence, the user may have several message composi-
9547 tions in progress simultaneously. Now, all of the _\bM_\bH tools are avail-
9548 able on each of the user's message drafts (e.g., _\bs_\bh_\bo_\bw, _\bs_\bc_\ba_\bn, _\bp_\bi_\bc_\bk, and
9549 so on). If the folder does not exist, the user is asked if it should be
9550 created (just like with _\br_\be_\bf_\bi_\bl_\be ). Also, the last draft message the user
9551 was composing is known as `cur' in the draft folder.
9552
9553 Furthermore, the _\bs_\be_\bn_\bd command has these switches as well. Hence,
9554 from the shell, the user can send off whatever drafts desired using the
9555 standard _\bM_\bH `msgs' convention with `-draftmessage msgs'. If no `msgs'
9556 are given, it defaults to `cur'.
9557
9558 In addition, all five programs have a `-nodraftfolder' switch,
9559 which undoes the last occurrence of `-draftfolder folder' (useful if the
9560 latter occurs in the user's _\bM_\bH profile).
9561
9562 If the user does not give the `-draftfolder +folder' switch, then
9563 all these commands act ``normally''. Note that the `-draft' switch to
9564 _\bs_\be_\bn_\bd and _\bs_\bh_\bo_\bw still refers to the file called `draft' in the user's _\bM_\bH
9565 directory. In the interests of economy of expression, when using _\bc_\bo_\bm_\bp
9566 or _\bs_\be_\bn_\bd, the user needn't prefix the draft `msg' or `msgs' with `-draft-
9567 message'. Both of these commands accept a `file' or `files' argument,
9568 and they will, if given `-draftfolder +folder' treat these arguments as
9569 `msg' or `msgs'.[2] Hence,
9570
9571 send -draftf +drafts first
9572
9573 is the same as
9574
9575 send -draftf +drafts -draftm first
9576
9577
9578
9579 \e9 [2] This may appear to be inconsistent, at first, but it saves a lot
9580 of typing.
9581
9582
9583 \e9
9584
9585
9586
9587
9588
9589
9590
9591
9592
9593 -147-
9594
9595
9596 To make all this a bit more clear, here are some examples. Let's
9597 assume that the following entries are in the _\bM_\bH profile:
9598
9599 Draft-Folder: +drafts
9600 sendf: -draftfolder +drafts
9601
9602 Furthermore, let's assume that the program _\bs_\be_\bn_\bd_\bf is a (symbolic) link in
9603 the user's $HOME/bin/ directory to _\bs_\be_\bn_\bd. Then, any of the commands
9604
9605 comp
9606 dist
9607 forw
9608 repl
9609
9610 constructs the message draft in the `draft' folder using the `new' mes-
9611 sage number. Furthermore, they each define `cur' in this folder to be
9612 that message draft. If the user were to use the _\bq_\bu_\bi_\bt option at `What
9613 now?' level, then later on, if no other draft composition was done, the
9614 draft could be sent with simply
9615
9616 sendf
9617
9618 Or, if more editing was required, the draft could be edited with
9619
9620 comp -use
9621
9622 Instead, if other drafts had been composed in the meantime, so that this
9623 message draft was no longer known as `cur' in the `draft' folder, then
9624 the user could _\bs_\bc_\ba_\bn the folder to see which message draft in the folder
9625 should be used for editing or sending. Clever users could even employ a
9626 back-quoted _\bp_\bi_\bc_\bk to do the work:
9627
9628 comp -use `pick +drafts -to bug-mh`
9629
9630 or
9631
9632 sendf `pick +drafts -to bug-mh`
9633
9634 Note that in the _\bc_\bo_\bm_\bp example, the output from _\bp_\bi_\bc_\bk must resolve to a
9635 single message draft (it makes no sense to talk about composing two or
9636 more drafts with one invocation of _\bc_\bo_\bm_\bp ). In contrast, in the _\bs_\be_\bn_\bd
9637 example, as many message drafts as desired can appear, since _\bs_\be_\bn_\bd
9638 doesn't mind sending more than one draft at a time.
9639
9640 Note that the argument `-draftfolder +folder' is not included in
9641 the profile entry for _\bs_\be_\bn_\bd, since when _\bc_\bo_\bm_\bp, et. al., invoke _\bs_\be_\bn_\bd
9642 directly, they supply _\bs_\be_\bn_\bd with the UNIX pathname of the message draft,
9643 and not a `draftmessage msg' argument. As far as _\bs_\be_\bn_\bd is concerned, a
9644 _\bd_\br_\ba_\bf_\bt _\bf_\bo_\bl_\bd_\be_\br is not being used.
9645
9646 It is important to realize that _\bM_\bH treats the draft folder like a
9647 standard _\bM_\bH folder in nearly all respects. There are two exceptions:
9648
9649
9650
9651
9652
9653
9654
9655
9656
9657
9658
9659 -148-
9660
9661
9662 first\b\b\b\b\b_____, under no circumstancs will the `-draftfolder folder' switch cause
9663 the named folder to become the current folder.[3] Second\b\b\b\b\b\b______, although con-
9664 ceptually _\bs_\be_\bn_\bd deletes the `msgs' named in the draft folder, it does not
9665 call `delete-prog' to perform the deletion.
9666
9667
9668 _\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
9669
9670 When the _\bc_\bo_\bm_\bp, _\bd_\bi_\bs_\bt, _\bf_\bo_\br_\bw, and _\br_\be_\bp_\bl commands are invoked and the
9671 draft you indicated already exists, these programs will prompt the user
9672 for a reponse directing the program's action. The prompt is
9673
9674 Draft ``/usr/src/uci/mh/mhbox/draft'' exists (xx bytes).
9675 Disposition?
9676
9677 The appropriate responses and their meanings are: replace\b\b\b\b\b\b\b_______: deletes the
9678 draft and starts afresh; list\b\b\b\b____: lists the draft; refile\b\b\b\b\b\b______: files the draft
9679 into a folder and starts afresh; and, quit\b\b\b\b____: leaves the draft intact and
9680 exits. In addition, if you specified `-draftfolder folder' to the com-
9681 mand, then one other response will be accepted: new\b\b\b___: finds a new draft,
9682 just as if `-draftmessage new' had been given. Finally, the _\bc_\bo_\bm_\bp com-
9683 mand will accept one more response: use\b\b\b___: re-uses the draft, just as if
9684 `-use' had been given.
9685
9686
9687 _\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
9688
9689 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,
9690 and _\br_\be_\bp_\bl commands, directs the command to _\bs_\be_\bn_\bd the draft in a special
9691 detached fashion, with all normal output discarded. If _\bp_\bu_\bs_\bh is used and
9692 the draft can not be sent, then _\bM_\bH will send the user a message, indi-
9693 cating the name of the draft file, and an explanation of the failure.
9694
9695 The user can also invoke _\bs_\be_\bn_\bd from the shell with the `-push'
9696 switch, which makes _\bs_\be_\bn_\bd act like it had been _\bp_\bu_\bs_\bh 'd by one of the com-
9697 position commands.
9698
9699 By using _\bp_\bu_\bs_\bh, the user can free the shell to do other things,
9700 because it appears to the shell that the _\bM_\bH command has finished. As a
9701 result the shell will immediately prompt for another command, despite
9702 the fact that the command is really still running. Note that if the
9703
9704
9705 \e9 [3] Obviously, if the folder appeared in the context of a standard
9706 `+folder' argument to an _\bM_\bH program, as in
9707
9708 scan +drafts
9709
9710 it might become the current folder, depending on the context changes of
9711 the _\bM_\bH program in question.
9712
9713
9714 \e9
9715
9716
9717
9718
9719
9720
9721
9722
9723
9724 -149-
9725
9726
9727 user indicates that annotations are to be performed (with `-annotate' to
9728 _\bd_\bi_\bs_\bt, _\bf_\bo_\br_\bw, or _\br_\be_\bp_\bl), the annotations will be performed after the mes-
9729 sage has been successfully sent. This action will appear to occur asyn-
9730 chronously. Obviously, if one of the messages that is to be annotated
9731 is removed before the draft has been successfully sent, then when _\bM_\bH
9732 tries to make the annotations, it won't be able to do so. In previous
9733 versions of _\bM_\bH, this resulted in an error message mysteriously appearing
9734 on the user's terminal. In _\bm_\bh._\b5 and later versions, in this special
9735 circumstance, no error will be generated.
9736
9737 If send is _\bp_\bu_\bs_\bh 'd, then the `-forward' switch is examined if a
9738 failure notice is generated. If given, then the draft is forwarded with
9739 the failure notice sent to the user. This allows rapid _\bb_\bu_\br_\bs_\bt 'ing of
9740 the failure notice to retrieve the unsent draft.
9741
9742
9743 _\bO_\bp_\bt_\bi_\bo_\bn_\bs _\ba_\bt _\bW_\bh_\ba_\bt _\bn_\bo_\bw? _\bL_\be_\bv_\be_\bl
9744
9745 By default, the message composition programs call a program called
9746 _\bw_\bh_\ba_\bt_\bn_\bo_\bw before the initial draft composition. The _\bM_\bH user can specify
9747 any program for this. Following is some information about the default
9748 "What now?" level. More detailed information can be found in the _\bw_\bh_\ba_\bt_\b-
9749 _\bn_\bo_\bw (1) manual entry.
9750
9751 When using the _\bc_\bo_\bm_\bp, _\bd_\bi_\bs_\bt, _\bf_\bo_\br_\bw, and _\br_\be_\bp_\bl commands at "What now?"
9752 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-
9753 mands) the _\bd_\bi_\bs_\bp_\bl_\ba_\by options will pass on any additional arguments given
9754 them to whatever program they invoke.
9755
9756 In _\bm_\bh._\b1 (the original RAND _\bM_\bH ) and _\bm_\bh._\b2 (the first UCI version of
9757 _\bM_\bH ), _\bM_\bH used a complicated heuristic to determine if the draft should
9758 be deleted or preserved after an unsuccessful edit. In _\bm_\bh._\b3, _\bM_\bH was
9759 changed to preserve the draft always, since _\bc_\bo_\bm_\bp, et. al., could usually
9760 look at a draft, apply another set of heuristics, and decide if it was
9761 important or not. With the notion of a _\bd_\br_\ba_\bf_\bt _\bf_\bo_\bl_\bd_\be_\br, in which one by
9762 default gets a `new' message draft, the edit deletion/preservation algo-
9763 rithm was re-implemented, to keep the draft folder from being cluttered
9764 with aborted edits.
9765
9766 Also, note that by default, if the draft cannot be successfully
9767 sent, these commands return to "What now?" level. But, when _\bp_\bu_\bs_\bh is
9768 used, this does not happen (obviously). Hence, if these commands were
9769 expected to annotate any messages, this will have to be done by hand,
9770 later on, with the _\ba_\bn_\bn_\bo command.
9771
9772 Finally, if the `-delete' switch is not given to the _\bq_\bu_\bi_\bt option,
9773 then these commands will inform the user of the name of the unsent draft
9774 file.
9775
9776
9777 _\bD_\bi_\bg_\be_\bs_\bt_\bs
9778 \e9
9779 \e9
9780
9781
9782
9783
9784
9785
9786
9787
9788
9789 -150-
9790
9791
9792 The _\bf_\bo_\br_\bw command has the beginnings of a digestifying facility,
9793 with the `-digest list', `-issue number', and `-volume number' switches.
9794
9795 If _\bf_\bo_\br_\bw is given "list" to the `-digest' switch as the name of the dis-
9796 cussion group, and the `-issue number' switch is not given, then _\bf_\bo_\br_\bw
9797 looks for an entry in the user's _\bM_\bH context called "_\bd_\bi_\bg_\be_\bs_\bt-issue-list"
9798 and increments its value to use as the issue number. Similarly, if the
9799 `-volume number' switch is not given, then _\bf_\bo_\br_\bw looks for
9800 "_\bd_\bi_\bg_\be_\bs_\bt-volume-list" (but does not increment its value) to use as the
9801 volume number.
9802
9803 Having calculated the name of the digest and the volume and issue
9804 numbers, _\bf_\bo_\br_\bw will now process the components file using the same format
9805 string mechanism used by _\br_\be_\bp_\bl. The current `%'-escapes are:
9806
9807 _\be_\bs_\bc_\ba_\bp_\be _\bt_\by_\bp_\be _\bs_\bu_\bb_\bs_\bt_\bi_\bt_\bu_\bt_\bi_\bo_\bn
9808 digest string digest name
9809 msg integer issue number
9810 cur integer volume number
9811
9812 In addition, to capture the current date, any of the escapes valid for
9813 _\bd_\bp (8) are also valid for _\bf_\bo_\br_\bw.
9814
9815 The default components file used by _\bf_\bo_\br_\bw when in digest mode is:
9816
9817 From: %{digest}-Request
9818 To: %{digest} Distribution: dist-%{digest};
9819 Subject: %{digest} Digest V%(cur) #%(msg)
9820 Reply-To: %{digest}
9821 --------
9822 %{digest} Digest %(weekday{date}), %2(mday{date}) %(month{date}) 19%02(year{date})
9823 Volume %(cur) : Issue %(msg)
9824
9825 Today's Topics:
9826
9827 Hence, when the `-digest' switch is present, the first step taken by
9828 _\bf_\bo_\br_\bw is to expand the format strings in the component file. The next
9829 step is to compose the draft using the standard digest encapsulation
9830 algorithm (even putting an "End of list Digest" trailer in the draft).
9831 Once the draft is composed by _\bf_\bo_\br_\bw, _\bf_\bo_\br_\bw writes out the volume and issue
9832 profile entries for the digest, and then invokes the editor.
9833
9834 Naturally, when composing the draft, _\bf_\bo_\br_\bw will honor the
9835 `-filter filterfile' switch, which is given to _\bm_\bh_\bl to filter each mes-
9836 sage being forwarded prior to encapsulation in the draft. A good filter
9837 file to use, which is called _\bm_\bh_\bl._\bd_\bi_\bg_\be_\bs_\bt, is:
9838
9839
9840
9841
9842
9843 \e9
9844 \e9
9845
9846
9847
9848
9849
9850
9851
9852
9853
9854 -151-
9855
9856
9857 width=80,overflowoffset=10
9858 leftadjust,compress,compwidth=9
9859 Date:formatfield="%<(nodate{text})%{text}%|%(tws{text})%>"
9860 From:
9861 Subject:
9862 :
9863 body:nocomponent,overflowoffset=0,noleftadjust,nocompress
9864
9865
9866
9867 \e9 _\bF_\bO_\bL_\bD_\bE_\bR _\bH_\bA_\bN_\bD_\bL_\bI_\bN_\bG
9868
9869 There are two interesting facilities for manipulating folders:
9870 relative folder addressing, which allows a user to shorten the typing of
9871 long folder names; and the folder-stack, which permits a user to keep a
9872 stack of current folders.
9873
9874
9875 _\bR_\be_\bl_\ba_\bt_\bi_\bv_\be _\bF_\bo_\bl_\bd_\be_\br _\bA_\bd_\bd_\br_\be_\bs_\bs_\bi_\bn_\bg
9876
9877 By default, when `+folder' is given, and the folder name is not
9878 absolute (does not start with /, ./, or ../), then the UNIX pathname of
9879 the folder is interpreted relative to the user's _\bM_\bH directory. Although
9880 this mechanism works fine for top-level folders and their immediate
9881 sub-folders, once the depth of the sub-folder tree grows, it becomes
9882 rather unwieldly:
9883
9884 scan +mh/mh.4/draft/flames
9885
9886 is a lot of typing. _\bM_\bH can't do anything if the current folder was
9887 "+inbox", but if the current folder was, say, "+mh/mh.4/draft", _\bM_\bH has a
9888 short-hand notation to reference a sub-folder of the current folder.
9889 Using the `@folder' notation, the _\bM_\bH user can direct any _\bM_\bH program
9890 which expects a `+folder' argument to look for the folder relative to
9891 the current folder instead of the user's _\bM_\bH directory. Hence, if the
9892 current folder _\bw_\ba_\bs "+mh/mh.4/draft", then
9893
9894 scan @flames
9895
9896 would do the trick handily. In addition, if the current folder _\bw_\ba_\bs
9897 "+mh/mh.4/draft",
9898
9899 scan @../pick
9900
9901 would scan the folder "+mh/mh.4/pick", since, in the UNIX fashion, it
9902 references the folder "pick" which is a sub-folder of the folder that is
9903 the parent of the current folder. Since most advanced _\bM_\bH users seem to
9904 exhibit a large degree of locality in referencing folders when they pro-
9905 cess mail, this convention should receive a wide range of uses.
9906
9907
9908
9909 \e9
9910
9911
9912
9913
9914
9915
9916
9917
9918
9919 -152-
9920
9921
9922 _\bT_\bh_\be _\bF_\bo_\bl_\bd_\be_\br-_\bS_\bt_\ba_\bc_\bk
9923
9924 The _\bf_\bo_\bl_\bd_\be_\br-_\bs_\bt_\ba_\bc_\bk mechanism in _\bM_\bH gives the _\bM_\bH user a facility simi-
9925 lar to the _\bC_\bS_\bh_\be_\bl_\bl 's directory-stack. Simply put,
9926
9927 folder -push +foo
9928
9929 makes "foo" the current folder, saving the folder that was previously
9930 the current folder on the _\bf_\bo_\bl_\bd_\be_\br-_\bs_\bt_\ba_\bc_\bk. As expected,
9931
9932 folder -pop
9933
9934 takes the top of the _\bf_\bo_\bl_\bd_\be_\br-_\bs_\bt_\ba_\bc_\bk and makes it the current folder. Each
9935 of these switches lists the _\bf_\bo_\bl_\bd_\be_\br-_\bs_\bt_\ba_\bc_\bk when they execute. It is sim-
9936 ple to write a _\bp_\bu_\bs_\bh_\bf command as a shell script. It's one line:
9937
9938 exec folder -push $@
9939
9940 Probably a better way is to link _\bf_\bo_\bl_\bd_\be_\br to the $HOME/bin/ directory
9941 under the name of _\bp_\bu_\bs_\bh_\bf and then add the entry
9942
9943 pushf: -push
9944
9945 to the .mh_profile.
9946
9947 The manual page for _\bf_\bo_\bl_\bd_\be_\br discusses the analogy between the _\bC_\bS_\bh_\be_\bl_\bl
9948 directory stack commands and the switches in _\bf_\bo_\bl_\bd_\be_\br which manipulate the
9949 _\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:'
9950 to keep track of the folders in the user's stack of folders.
9951
9952
9953
9954
9955
9956
9957
9958
9959
9960
9961
9962
9963
9964
9965
9966
9967
9968
9969
9970
9971
9972
9973 \e9
9974 \e9
9975
9976
9977
9978
9979
9980
9981
9982
9983
9984
9985
9986
9987 Appendix A
9988 _\bC_\bO_\bM_\bM_\bA_\bN_\bD _\bS_\bU_\bM_\bM_\bA_\bR_\bY
9989
9990
9991
9992 \e9 ali [-alias aliasfile] [-list] [-nolist] [-normalize]
9993 [-nonormalize] [-user] [-nouser] aliases ... [-help]
9994
9995 anno [+folder] [msgs] [-component field] [-inplace] [-noinplace]
9996 [-date] [-nodate] [-text body] [-help]
9997
9998 bbc [bboards ...] [-topics] [-check] [-read] [-quiet] [-verbose]
9999 [-archive] [-noarchive] [-protocol] [-noprotocol]
10000 [-mshproc program] [switches for _\bm_\bs_\bh_\bp_\br_\bo_\bc] [-rcfile rcfile]
10001 [-norcfile] [-file BBoardsfile] [-user BBoardsuser]
10002 [-host host] [-help]
10003
10004 burst [+folder] [msgs] [-inplace] [-noinplace] [-quiet] [-noquiet]
10005 [-verbose] [-noverbose] [-help]
10006
10007 comp [+folder] [msg] [-draftfolder +folder] [-draftmessage msg]
10008 [-nodraftfolder] [-editor editor] [-noedit] [-file file]
10009 [-form formfile] [-use] [-nouse] [-whatnowproc program]
10010 [-nowhatnowproc] [-help]
10011
10012 dist [+folder] [msg] [-annotate] [-noannotate]
10013 [-draftfolder +folder] [-draftmessage msg] [-nodraftfolder]
10014 [-editor editor] [-noedit] [-form formfile] [-inplace]
10015 [-noinplace] [-whatnowproc program] [-nowhatnowproc] [-help]
10016
10017 folder [+folder] [msg] [-all] [-fast] [-nofast] [-header]
10018 [-noheader] [-pack] [-nopack] [-recurse] [-norecurse] [-total]
10019 [-nototal] [-print] [-noprint] [-list] [-nolist] [-push]
10020 [-pop] [-help]
10021
10022 folders
10023
10024 forw [+folder] [msgs] [-annotate] [-noannotate]
10025 [-draftfolder +folder] [-draftmessage msg] [-nodraftfolder]
10026 [-editor editor] [-noedit] [-filter filterfile]
10027 [-form formfile] [-format] [-noformat] [-inplace] [-noinplace]
10028 [-whatnowproc program] [-nowhatnowproc] [-help]
10029
10030 forw [+folder] [msgs] [-digest list] [-issue number]
10031 [-volume number] [other switches for _\bf_\bo_\br_\bw] [-help]
10032
10033
10034
10035
10036
10037
10038
10039 \e9 -153-
10040
10041
10042
10043
10044
10045
10046
10047
10048
10049
10050
10051
10052 inc [+folder] [-audit audit-file] [-noaudit] [-changecur]
10053 [-nochangecur] [-file name] [-form formatfile]
10054 [-format string] [-silent] [-nosilent] [-truncate]
10055 [-notruncate] [-width columns] [-host host] [-user user]
10056 [-pack file] [-nopack] [-rpop] [-norpop] [-help]
10057
10058 mark [+folder] [msgs] [-sequence name ...] [-add] [-delete] [-list]
10059 [-public] [-nopublic] [-zero] [-nozero] [-help]
10060
10061 /usr/local/lib/mh/mhl [-bell] [-nobell] [-clear] [-noclear]
10062 [-folder +folder] [-form formfile] [-length lines]
10063 [-width columns] [-moreproc program] [-nomoreproc] [files ...]
10064 [-help]
10065
10066 mhmail [ addrs ... [-body text] [-cc addrs ...] [-from addr]
10067 [-subject subject]] [-help]
10068
10069 mhpath [+folder] [msgs] [-help]
10070
10071 msgchk [-date] [-nodate] [-notify all/mail/nomail]
10072 [-nonotify all/mail/nomail] [-host host] [-user user] [-rpop]
10073 [-norpop] [users ...] [-help]
10074
10075 msh [-prompt string] [-scan] [-noscan] [-topcur] [-notopcur] [file]
10076 [-help]
10077
10078 next [+folder] [-header] [-noheader] [-showproc program]
10079 [-noshowproc] [switches for _\bs_\bh_\bo_\bw_\bp_\br_\bo_\bc] [-help]
10080
10081 packf [+folder] [msgs] [-file name] [-help]
10082
10083 pick [+folder] [msgs] [-and ...] [-or ...] [-not ...]
10084 [-lbrace ... -rbrace] [--component pattern] [-after date]
10085 [-before date] [-datefield field] [-sequence name ...]
10086 [-public] [-nopublic] [-zero] [-nozero] [-list] [-nolist]
10087 [-help]
10088
10089 prev [+folder] [-header] [-noheader] [-showproc program]
10090 [-noshowproc] [switches for _\bs_\bh_\bo_\bw_\bp_\br_\bo_\bc] [-help]
10091
10092 prompter [-erase chr] [-kill chr] [-prepend] [-noprepend] [-rapid]
10093 [-norapid] [-doteof] [-nodoteof] file [-help]
10094
10095 /usr/local/lib/mh/rcvstore [+folder] [-create] [-nocreate]
10096 [-sequence name ...] [-public] [-nopublic] [-zero] [-nozero]
10097 [-help]
10098
10099
10100
10101
10102
10103 \e9
10104 \e9 -154-
10105
10106
10107
10108
10109
10110
10111
10112
10113
10114
10115
10116
10117 refile [msgs] [-draft] [-link] [-nolink] [-preserve] [-nopreserve]
10118 [-src +folder] [-file file] +folder ... [-help]
10119
10120 repl [+folder] [msg] [-annotate] [-noannotate] [-cc all/to/cc/me]
10121 [-nocc all/to/cc/me] [-draftfolder +folder]
10122 [-draftmessage msg] [-nodraftfolder] [-editor editor]
10123 [-noedit] [-fcc +folder] [-filter filterfile] [-form formfile]
10124 [-inplace] [-noinplace] [-query] [-noquery]
10125 [-whatnowproc program] [-nowhatnowproc] [-width columns]
10126 [-help]
10127
10128 rmf [+folder] [-interactive] [-nointeractive] [-help]
10129
10130 rmm [+folder] [msgs] [-help]
10131
10132 scan [+folder] [msgs] [-clear] [-noclear] [-form formatfile]
10133 [-format string] [-header] [-noheader] [-width columns]
10134 [-reverse] [-noreverse] [-file filename] [-help]
10135
10136 send [-alias aliasfile] [-draft] [-draftfolder +folder]
10137 [-draftmessage msg] [-nodraftfolder] [-filter filterfile]
10138 [-nofilter] [-format] [-noformat] [-forward] [-noforward]
10139 [-msgid] [-nomsgid] [-push] [-nopush] [-verbose] [-noverbose]
10140 [-watch] [-nowatch] [-width columns] [file ...] [-help]
10141
10142 show [+folder] [msgs] [-draft] [-header] [-noheader]
10143 [-showproc program] [-noshowproc] [switches for _\bs_\bh_\bo_\bw_\bp_\br_\bo_\bc]
10144 [-help]
10145
10146 sortm [+folder] [msgs] [-datefield field] [-textfield field]
10147 [-notextfield] [-limit days] [-nolimit] [-verbose]
10148 [-noverbose] [-help]
10149
10150 vmh [-prompt string] [-vmhproc program] [-novmhproc]
10151 [switches for _\bv_\bm_\bh_\bp_\br_\bo_\bc] [-help]
10152
10153 whatnow [-draftfolder +folder] [-draftmessage msg] [-nodraftfolder]
10154 [-editor editor] [-noedit] [-prompt string] [file] [-help]
10155
10156 whom [-alias aliasfile] [-check] [-nocheck] [-draft]
10157 [-draftfolder +folder] [-draftmessage msg] [-nodraftfolder]
10158 [file] [-help]
10159
10160 /usr/local/lib/mh/ap [-form formatfile] [-format string]
10161 [-normalize] [-nonormalize] [-width columns] addrs ...
10162 [-help]
10163
10164
10165
10166
10167
10168 \e9
10169 \e9 -155-
10170
10171
10172
10173
10174
10175
10176
10177
10178
10179
10180
10181
10182 /usr/local/lib/mh/conflict [-mail name] [-search directory]
10183 [aliasfiles ...] [-help]
10184
10185 /usr/local/lib/mh/dp [-form formatfile] [-format string]
10186 [-width columns] dates ... [-help]
10187
10188 /usr/local/lib/mh/install-mh [-auto] [-compat]
10189
10190 /usr/local/lib/mh/post [-alias aliasfile] [-filter filterfile]
10191 [-nofilter] [-format] [-noformat] [-msgid] [-nomsgid]
10192 [-verbose] [-noverbose] [-watch] [-nowatch] [-width columns]
10193 file [-help]
10194
10195
10196
10197
10198
10199
10200
10201
10202
10203
10204
10205
10206
10207
10208
10209
10210
10211
10212
10213
10214
10215
10216
10217
10218
10219
10220
10221
10222
10223
10224
10225
10226
10227
10228
10229
10230
10231
10232
10233 \e9
10234 \e9 -156-
10235
10236
10237
10238
10239
10240
10241
10242
10243
10244
10245
10246
10247 Appendix B
10248 _\bM_\bE_\bS_\bS_\bA_\bG_\bE _\bN_\bA_\bM_\bE _\bB_\bN_\bF
10249
10250
10251
10252 \e9
10253 msgs := msgspec |
10254 msgs msgspec
10255
10256 msgspec := msg |
10257 msg-range |
10258 msg-sequence |
10259 user-defined-sequence
10260
10261 msg := msg-name |
10262 <number>
10263
10264 msg-name := "first" |
10265 "last" |
10266 "cur" |
10267 "." |
10268 "next" |
10269 "prev"
10270
10271 msg-range := msg"-"msg |
10272 "all"
10273
10274 msg-sequence := msg":"signed-number
10275
10276 signed-number := "+"<number> |
10277 "-"<number> |
10278 <number>
10279
10280 user-defined-sequence := <alpha> |
10281 <alpha><alphanumeric>*
10282
10283
10284 Where <number> is a decimal number greater than zero.
10285
10286 Msg-range specifies all of the messages in the given range and must not
10287 be empty.
10288
10289 Msg-sequence specifies up to <number> of messages, beginning with "msg"
10290 (in the case of first, cur, next, or <number>), or ending with "msg" (in
10291 the case of prev or last). +<number> forces "starting with msg", and
10292 -<number> forces "ending with number". In all cases, "msg" must exist.
10293
10294 User-defined sequences are defined and manipulated with the _\bp_\bi_\bc_\bk and
10295 _\bm_\ba_\br_\bk commands.
10296
10297
10298
10299 \e9 -157-
10300
10301
10302
10303
10304
10305
10306
10307
10308
10309
10310
10311
10312 _\bR_\bE_\bF_\bE_\bR_\bE_\bN_\bC_\bE_\bS
10313
10314
10315
10316 1. Crocker, D. H., J. J. Vittal, K. T. Pogran, and D. A. Henderson,
10317 Jr., "Standard for the Format of ARPA Network Text Messages,"
10318 _\bR_\bF_\bC_\b7_\b3_\b3, November 1977.
10319
10320 2. Thompson, K., and D. M. Ritchie, "The UNIX Time-sharing System,"
10321 _\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.
10322
10323 3. McCauley, E. J., and P. J. Drongowski, "KSOS-The Design of a Secure
10324 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
10325 Conference, Vol. 48, 1979, pp. 345-353.
10326
10327 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-
10328 _\bs_\ba_\bg_\be _\bS_\by_\bs_\bt_\be_\bm, The RAND Corporation, R-2134-ARPA, December 1977.
10329
10330 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.,
10331 Western Electric Company, May 1975 (available only to UNIX licen-
10332 sees).
10333
10334 6. Crocker, D. H., "Standard for the Format of ARPA Internet Text Mes-
10335 sages," _\bR_\bF_\bC_\b8_\b2_\b2, August 1982.
10336
10337
10338
10339
10340
10341
10342
10343
10344
10345
10346
10347
10348
10349
10350
10351
10352
10353
10354
10355
10356
10357
10358
10359
10360
10361
10362
10363 \e9
10364 \e9 -158-
10365
10366
10367
10368
10369
10370
10371
10372
10373
10374
10375
10376
10377
10378
10379
10380
10381
10382
10383
10384
10385
10386
10387
10388
10389
10390
10391
10392
10393
10394
10395
10396
10397
10398
10399
10400
10401
10402
10403
10404
10405
10406
10407
10408
10409
10410
10411
10412
10413
10414
10415
10416
10417
10418
10419
10420
10421
10422
10423
10424
10425
10426
10427
10428 \e9
10429 \e9 -i-
10430
10431
10432
10433
10434
10435
10436
10437
10438
10439
10440
10441
10442 _\bR_\bE_\bA_\bD _\bT_\bH_\bI_\bS
10443
10444
10445
10446
10447 Although the _\bM_\bH system was originally developed by the RAND Cor-
10448 poration, and is now in the public domain, the RAND Corporation assumes
10449 no responsibility for _\bM_\bH or this particular version of _\bM_\bH.
10450
10451 In addition, the Regents of the University of California issue the
10452 following disclaimer in regard to the UCI version of _\bM_\bH:
10453
10454 "Although each program has been tested by its contributor, no war-
10455 ranty, express or implied, is made by the contributor or the
10456 University of California, as to the accuracy and functioning of the
10457 program and related program material, nor shall the fact of distri-
10458 bution constitute any such warranty, and no responsibility is
10459 assumed by the contributor or the University of California in con-
10460 nection herewith."
10461
10462 This version of _\bM_\bH is in the public domain, and as such, there are
10463 no real restrictions on its use. The _\bM_\bH source code and documentation
10464 have no licensing restrictions whatsoever. As a courtesy, the authors
10465 ask only that you provide appropriate credit to the RAND Corporation and
10466 the University of California for having developed the software.
10467
10468 _\bM_\bH is a software package that is supported neither by the RAND Cor-
10469 poration nor the University of California. However, since we do use the
10470 software ourselves and plan to continue using (and improving) _\bM_\bH, bug
10471 reports and their associated fixes should be reported back to us so that
10472 we may include them in future releases. The current computer mailbox
10473 for _\bM_\bH is Bug-MH@ICS.UCI.EDU (in the ARPA Internet), and
10474 ...!ucbvax!ucivax!bug-mh (UUCP). Presently, there are two Internet dis-
10475 cussion groups, MH-Users@ICS.UCI.EDU and MH-Workers@ICS.UCI.EDU.
10476 MH-Workers is for people discussing code changes to _\bM_\bH. MH-Users is for
10477 general discussion about how to use _\bM_\bH. MH-Users is bi-directionally
10478 gatewayed into USENET as comp.mail.mh.
10479
10480 _\bH_\bO_\bW _\bT_\bO _\bG_\bE_\bT _\bM_\bH
10481
10482 Since you probably already have _\bM_\bH, you may not need to read this
10483 unless you suspect you have an old version. There are two ways to get
10484 the latest release:
10485
10486 1. If you can FTP to the ARPA Internet, use anonymous FTP to
10487 ics.uci.edu [128.195.1.1] and retrieve the file pub/mh/mh-6.7.tar.Z.
10488 This is a tar image after being run through the compress program
10489 (approximately 1.5MB). There should also be a README file in that
10490 directory which tells what the current release of _\bM_\bH is, and how to get
10491 updates.
10492
10493 \e9
10494 \e9 -i-
10495
10496
10497
10498
10499
10500
10501
10502
10503
10504 -ii-
10505
10506
10507 This tar file is also available on louie.udel.edu [128.175.1.3] in
10508 portal/mh-6.7.tar.Z. You may also find MH on various other hosts; to
10509 make sure you get the latest version and don't waste your time re-fixing
10510 bugs, it's best to get it from either ics.uci.edu or louie.udel.edu.
10511
10512 2. You can send $75 US to the address below. This covers the cost
10513 of a 6250 BPI 9-track magtape, handling, and shipping. In addition,
10514 you'll get a laser-printed hard-copy of the entire MH documentation set.
10515 Be sure to include your USPS address with your check. Checks must be
10516 drawn on U.S. funds and should be made payable to:
10517
10518 Regents of the University of California
10519
10520 The distribution address is:
10521
10522 Computing Support Group
10523 Attn: MH distribution
10524 Department of Information and Computer Science
10525 University of California, Irvine
10526 Irvine, CA 92717
10527
10528 714/856-7554
10529
10530 If you just want the hard-copies of the documentation, you still
10531 have to pay the $75. The tar image has the documentation source (the
10532 manual is in roff format, but the rest are in TeX format). Postscript
10533 formatted versions of the TeX papers are available, as are crude tty-
10534 conversions of those papers.
10535
10536
10537
10538
10539
10540
10541
10542
10543
10544
10545
10546
10547
10548
10549
10550
10551
10552
10553
10554
10555
10556
10557
10558 \e9
10559 \e9
10560
10561
10562
10563
10564
10565
10566
10567
10568
10569
10570
10571
10572 _\bF_\bO_\bR_\bE_\bW_\bO_\bR_\bD
10573
10574
10575
10576
10577 This document describes the RAND _\bM_\bH Message Handling System. Its
10578 primary purpose is to serve as a user's manual. It has been heavily
10579 based on a previous version of the manual, prepared by Bruce Borden,
10580 Stockton Gaines, and Norman Shapiro.
10581
10582 _\bM_\bH is a particularly novel system, and thus it is often more prone
10583 to change than other pieces of production software. As such, some
10584 specific points in this manual may not be correct in the future. In all
10585 cases, the on-line sections of this manual, available through the
10586 UNIX[1] _\bm_\ba_\bn command, should present the most current information.
10587
10588 When reading this document as a user's manual, certain sections are
10589 more interesting than others. The Preface and Summary are not particu-
10590 larly interesting to those interested in learning _\bM_\bH. The Introduction
10591 is slightly more interesting, as it touches upon the organization of the
10592 remainder of this document. The most useful sections are the Overview,
10593 Tutorial, and Detailed Description. The Overview should be read by all
10594 _\bM_\bH users, regardless of their expertise (beginning, novice, advanced, or
10595 hacker). The Tutorial should be read by all beginning and novice _\bM_\bH
10596 users, as it presents a nice description of the _\bM_\bH system. The Detailed
10597 Description should be read by the day-to-day user of _\bM_\bH, as it spells
10598 out all of the realities of the _\bM_\bH system. The Advanced Features sec-
10599 tion discusses some powerful _\bM_\bH capabilities for advanced users. Appen-
10600 dix A is particularly useful for novices, as it summarizes the invoca-
10601 tion syntax of all the _\bM_\bH commands.
10602
10603 There are also several other documents which may be useful to you:
10604 _\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
10605 _\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
10606 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-
10607 _\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
10608 the 1985 Summer Usenix Conference and Exhibition in Portland, Oregon;
10609 _\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
10610 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
10611 _\bS_\by_\bs_\bt_\be_\bm_\bs, which was presented at the First International Symposium on
10612 Computer Message Systems in Nottingham, U.K.; and, _\bD_\be_\bs_\bi_\bg_\bn _\bo_\bf _\bt_\bh_\be _\bT_\bT_\bI
10613 _\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"
10614 mail system built on _\bM_\bH. There are also documents, mostly specific to
10615 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
10616 _\bM_\bM _\bU_\bs_\be_\br_\bs. All of these documents exist in the _\bm_\bh._\b6 distribution sent to
10617 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-
10618 _\bd_\bl_\bi_\bn_\bg _\bS_\by_\bs_\bt_\be_\bm: _\bM_\bH._\b6, which describes user-visible changes made to _\bM_\bH
10619
10620
10621 \e9 [1] UNIX is a trademark of AT&T Bell Laboratories.
10622
10623
10624 \e9 -iii-
10625
10626
10627
10628
10629
10630
10631
10632
10633
10634 -iv-
10635
10636
10637 since the last major release.
10638
10639 This manual is very large, as it describes a large, powerful system
10640 in gruesome detail. The important thing to remember is:
10641
10642
10643 _\bD_\bO_\bN'_\bT _\bP_\bA_\bN_\bI_\bC[_\b2]
10644
10645
10646 As explained in the tutorial, you really need to know only 5 commands to
10647 handle most of your mail.
10648
10649 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-
10650 _\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
10651 distribution sent to your site.
10652
10653
10654
10655
10656
10657
10658
10659
10660
10661
10662
10663
10664
10665
10666
10667
10668
10669
10670
10671
10672
10673
10674
10675
10676
10677
10678
10679
10680
10681
10682
10683
10684
10685
10686 \e9 [2] Note the large, _\bf_\br_\bi_\be_\bn_\bd_\bl_\by letters.
10687
10688
10689 \e9
10690
10691
10692
10693
10694
10695
10696
10697
10698
10699
10700
10701
10702 _\bA_\bC_\bK_\bN_\bO_\bW_\bL_\bE_\bD_\bG_\bM_\bE_\bN_\bT_\bS
10703
10704
10705
10706
10707 The _\bM_\bH system described herein is based on the original RAND _\bM_\bH
10708 system. It has been extensively developed (perhaps too much so) by
10709 Marshall T. Rose and John L. Romine at the University of California,
10710 Irvine. Einar A. Stefferud, Jerry N. Sweet, and Terry P. Domae provided
10711 numerous suggestions to improve the UCI version of _\bM_\bH. Of course, a
10712 large number of people have helped _\bM_\bH along. The list of ``_\bM_\bH immor-
10713 tals'' is too long to list here. However, Van Jacobson deserves a spe-
10714 cial acknowledgement for his tireless work in improving the performance
10715 of _\bM_\bH. Some programs have been speeded-up by a factor of 10 or 20. All
10716 of users of _\bM_\bH, everywhere, owe a special thanks to Van. For this
10717 release, numerous _\bM_\bH-_\bW_\bo_\br_\bk_\be_\br_\bs sent in fixes and other changes. A handful
10718 of courageous _\bM_\bH-_\bW_\bo_\br_\bk_\be_\br_\bs volunteered to beta-test these changes; their
10719 help is particularly appreciated.
10720
10721 This manual is based on the original _\bM_\bH manual written at RAND by
10722 Bruce Borden, Stockton Gaines, and Norman Shapiro.
10723
10724
10725
10726
10727
10728
10729
10730
10731
10732
10733
10734
10735
10736
10737
10738
10739
10740
10741
10742
10743
10744
10745
10746
10747
10748
10749
10750
10751
10752
10753 \e9
10754 \e9 -v-
10755
10756
10757
10758
10759
10760
10761
10762
10763
10764
10765
10766
10767 _\bP_\bR_\bE_\bF_\bA_\bC_\bE
10768
10769
10770
10771
10772 This report describes a system for dealing with messages transmit-
10773 ted on a computer. Such messages might originate with other users of
10774 the same computer or might come from an outside source through a network
10775 to which the user's computer is connected. Such computer-based message
10776 systems are becoming increasingly widely used, both within and outside
10777 the Department of Defense.
10778
10779 The message handling system _\bM_\bH was developed for two reasons. One
10780 was to investigate some research ideas concerning how a message system
10781 might take advantage of the architecture of the UNIX time-sharing
10782 operating system for Digital Equipment Corporation PDP-11 and VAX com-
10783 puters, and the special features of UNIX's command-level interface with
10784 the user (the "shell"). The other reason was to provide a better and
10785 more adaptable base than that of conventional designs on which to build
10786 a command and control message system. The effort has succeeded in both
10787 regards, although this report mainly describes the message system itself
10788 and how it fits in with UNIX.
10789
10790 The present report should be of interest to three groups of
10791 readers. First, it is a complete reference manual for the users of _\bM_\bH.
10792 Second, it should be of interest to those who have a general knowledge
10793 of computer-based message systems, both in civilian and military appli-
10794 cations. Finally, it should be of interest to those who build large
10795 subsystems that interface with users, since it illustrates a new
10796 approach to such interfaces.
10797
10798 The original _\bM_\bH system was developed by Bruce Borden, using an
10799 approach suggested by Stockton Gaines and Norman Shapiro. Valuable
10800 assistance was provided by Phyllis Kantar in the later stages of the
10801 system's implementation. Several colleagues contributed to the ideas
10802 included in this system, particularly Robert Anderson and David Crocker.
10803 In addition, valuable experience in message systems, and a valuable
10804 source of ideas, was available to us in the form of a previous message
10805 system for UNIX called MS, designed at RAND by David Crocker.
10806
10807 This report was originally prepared as part of the RAND project
10808 entitled "Data Automation Research", sponsored by Project AIR FORCE.
10809
10810
10811
10812
10813
10814
10815
10816
10817
10818 \e9
10819 \e9 -vi-
10820
10821
10822
10823
10824
10825
10826
10827
10828
10829
10830
10831
10832 _\bS_\bU_\bM_\bM_\bA_\bR_\bY
10833
10834
10835
10836
10837 Electronic communication of text messages is becoming commonplace.
10838 Computer-based message systems-software packages that provide tools for
10839 dealing with messages-are used in many contexts. In particular, message
10840 systems are becoming increasingly important in command and control and
10841 intelligence applications.
10842
10843 This report describes a message handling system called _\bM_\bH. This
10844 system provides the user with tools to compose, send, receive, store,
10845 retrieve, forward, and reply to messages. _\bM_\bH has been built on the UNIX
10846 time-sharing system, a popular operating system developed for the DEC
10847 PDP-11 and VAX classes of computers.
10848
10849 A complete description of _\bM_\bH is given for users of the system. For
10850 those who do not intend to use the system, this description gives a gen-
10851 eral idea of what a message system is like. The system involves some
10852 new ideas about how large subsystems can be constructed.
10853
10854 The interesting and unusual features of _\bM_\bH include the following:
10855 The user command interface to _\bM_\bH is the UNIX "shell" (the standard UNIX
10856 command interpreter). Each separable component of message handling,
10857 such as message composition or message display, is a separate command.
10858 Each program is driven from and updates a private user environment,
10859 which is stored as a file between program invocations. This private
10860 environment also contains information to "custom tailor" _\bM_\bH to the
10861 individual's tastes. _\bM_\bH stores each message as a separate file under
10862 UNIX, and it utilizes the tree-structured UNIX file system to organize
10863 groups of files within separate directories or "folders". All of the
10864 UNIX facilities for dealing with files and directories, such as renam-
10865 ing, copying, deleting, cataloging, off-line printing, etc., are appli-
10866 cable to messages and directories of messages (folders). Thus, impor-
10867 tant capabilities needed in a message system are available in _\bM_\bH without
10868 the need (often seen in other message systems) for code that duplicates
10869 the facilities of the supporting operating system. It also allows users
10870 familiar with the shell to use _\bM_\bH with minimal effort.
10871
10872
10873
10874
10875
10876
10877
10878
10879
10880
10881
10882
10883 \e9
10884 \e9 -vii-
10885
10886
10887
10888
10889
10890
10891
10892
10893
10894
10895
10896
10897 _\bC_\bO_\bN_\bT_\bE_\bN_\bT_\bS
10898
10899
10900
10901
10902 READ THIS ......................................................... i
10903
10904 FOREWORD .......................................................... iii
10905
10906 ACKNOWLEDGMENTS ................................................... v
10907
10908 PREFACE ........................................................... vi
10909
10910 SUMMARY ........................................................... vii
10911
10912 Section
10913
10914 1. INTRODUCTION ............................................... 1
10915
10916 2. OVERVIEW ................................................... 4
10917
10918 3. TUTORIAL ................................................... 7
10919
10920 4. DETAILED DESCRIPTION ....................................... 10
10921 \e9 THE USER PROFILE ............................................. 10
10922 \e9 MESSAGE NAMING ............................................... 13
10923 \e9 OTHER MH CONVENTIONS ......................................... 14
10924 \e9 MH COMMANDS .................................................. 16
10925 ALI ....................................................... 17
10926 ANNO ...................................................... 19
10927 BBC ....................................................... 21
10928 BBOARDS ................................................... 24
10929 BURST ..................................................... 26
10930 COMP ...................................................... 28
10931 DIST ...................................................... 30
10932 FOLDER .................................................... 33
10933 FORW ...................................................... 36
10934 INC ....................................................... 40
10935 MARK ...................................................... 43
10936 MHL ....................................................... 45
10937 MHMAIL .................................................... 50
10938 MHOOK ..................................................... 52
10939 MHPATH .................................................... 54
10940 MSGCHK .................................................... 57
10941 MSH ....................................................... 59
10942 NEXT ...................................................... 63
10943 PACKF ..................................................... 64
10944 PICK ...................................................... 65
10945 PREV ...................................................... 69
10946 PROMPTER .................................................. 70
10947
10948
10949
10950
10951
10952
10953
10954
10955
10956
10957
10958
10959
10960
10961 RCVSTORE .................................................. 73
10962 REFILE .................................................... 75
10963 REPL ...................................................... 77
10964 RMF ....................................................... 81
10965 RMM ....................................................... 83
10966 SCAN ...................................................... 85
10967 SEND ...................................................... 88
10968 SHOW ...................................................... 91
10969 SORTM ..................................................... 94
10970 VMH ....................................................... 96
10971 WHATNOW ................................................... 98
10972 WHOM ...................................................... 100
10973 \e9 MORE DETAILS ................................................. 102
10974 MH-ALIAS .................................................. 103
10975 MH-FORMAT ................................................. 107
10976 MH-MAIL ................................................... 116
10977 MH-PROFILE ................................................ 120
10978 MH-SEQUENCE ............................................... 128
10979 AP ........................................................ 132
10980 CONFLICT .................................................. 134
10981 DP ........................................................ 136
10982 INSTALL-MH ................................................ 138
10983 POST ...................................................... 139
10984
10985 5. REPORTING PROBLEMS ......................................... 141
10986
10987 6. ADVANCED FEATURES .......................................... 142
10988 \e9 USER-DEFINED SEQUENCES ....................................... 142
10989 Pick and User-Defined Sequences ........................... 142
10990 Mark and User-Defined Sequences ........................... 144
10991 Public and Private User-Defined Sequences ................. 144
10992 Sequence Negation ......................................... 144
10993 The Previous Sequence ..................................... 145
10994 The Unseen Sequence ....................................... 145
10995 \e9 COMPOSITION OF MAIL .......................................... 146
10996 The Draft Folder .......................................... 146
10997 What Happens if the Draft Exists .......................... 148
10998 The Push Option at What now? Level ........................ 148
10999 Options at What now? Level ................................ 149
11000 Digests ................................................... 150
11001 \e9 FOLDER HANDLING .............................................. 151
11002 Relative Folder Addressing ................................ 151
11003 The Folder-Stack .......................................... 152
11004
11005 Appendix
11006 A. Command Summary ............................................ 153
11007 B. Message Name BNF ........................................... 157
11008
11009 REFERENCES ........................................................ 158
11010 \e9
11011 \e9
11012
11013
11014
11015
11016
11017
11018
11019
11020
11021
11022
11023
11024
11025
11026
11027
11028
11029
11030
11031
11032
11033
11034
11035 \e9 THE RAND MH
11036
11037 \e9 MESSAGE HANDLING
11038
11039 \e9 SYSTEM:
11040
11041 \e9 USER'S MANUAL
11042
11043
11044
11045
11046
11047
11048 UCI Version
11049
11050
11051
11052
11053
11054 Marshall T. Rose
11055
11056 John L. Romine
11057
11058
11059
11060
11061 Based on the original manual by
11062
11063 Borden, Gaines, and Shapiro
11064
11065
11066
11067
11068
11069
11070
11071 February 1, 1991
11072
11073 6.7.1a #6[UCI]
11074
11075
11076
11077
11078
11079
11080
11081
11082
11083
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 \e9
11140 \e9
11141
11142
11143
11144
11145