9 _
\bd_
\bi_
\bs_
\bc_
\ba_
\br_
\bd _
\bt_
\bh_
\bi_
\bs _
\bp_
\ba_
\bg_
\be
15 Message Handling System:
73 _
\b1. _
\bI_
\bN_
\bT_
\bR_
\bO_
\bD_
\bU_
\bC_
\bT_
\bI_
\bO_
\bN
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.
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.
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.
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.
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
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
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.
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.
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.
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
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
187 \e9 [1] PDP and VAX are trademarks of Digital Equipment Corporation.
203 extensive use of other UNIX software to provide the capabilities found
204 in other message systems.
268 _
\b2. _
\bO_
\bV_
\bE_
\bR_
\bV_
\bI_
\bE_
\bW
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.
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.
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-
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.
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
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.
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
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.
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.
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
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
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
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.
464 _
\b3. _
\bT_
\bU_
\bT_
\bO_
\bR_
\bI_
\bA_
\bL
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.
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
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.
493 When you get the message "You have mail", type the command _
\bi_
\bn_
\bc.
494 You will get a "scan listing" such as:
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
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.
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 <<.
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.
537 _
\bs_
\bh_
\bo_
\bw 5 will show message 5.
540 You can use the show command to copy a message or print a message.
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.
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.
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.
565 _
\bc_
\bo_
\bm_
\bp -_
\be_
\bd_
\bi_
\bt_
\bo_
\br _
\bp_
\br_
\bo_
\bm_
\bp_
\bt_
\be_
\br
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).
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).
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.
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
659 _
\b4. _
\bD_
\bE_
\bT_
\bA_
\bI_
\bL_
\bE_
\bD _
\bD_
\bE_
\bS_
\bC_
\bR_
\bI_
\bP_
\bT_
\bI_
\bO_
\bN
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
672 \e9 _
\bT_
\bH_
\bE _
\bU_
\bS_
\bE_
\bR _
\bP_
\bR_
\bO_
\bF_
\bI_
\bL_
\bE
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".
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
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-
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
706 \e9 [1] By defining the envariable $MH, you can specify an alternate pro-
707 file to be used by _
\bM_
\bH commands.
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.
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].
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
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.
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.
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.
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
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.
803 Table 1 lists examples of some of the currently defined profile
804 entries, typical arguments, and the programs that reference the entries.
854 \e9 PROFILE COMPONENTS
855 ______________________________________________________
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______________________________________________________
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 ______________________________________________________
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
875 \e9 _
\bM_
\bE_
\bS_
\bS_
\bA_
\bG_
\bE _
\bN_
\bA_
\bM_
\bI_
\bN_
\bG
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.
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
897 The default in commands that take a "msg" argument is always "cur".
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
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:
935 The message name "all" is a shorthand for "first-last", indicating
936 all of the messages in the folder.
938 In commands that accept "msgs" arguments, the default is either cur
939 or all, depending on which makes more sense.
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
951 \e9 _
\bO_
\bT_
\bH_
\bE_
\bR _
\bM_
\bH _
\bC_
\bO_
\bN_
\bV_
\bE_
\bN_
\bT_
\bI_
\bO_
\bN_
\bS
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.
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.
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.)
982 A valid response is any _
\bu_
\bn_
\bi_
\bq_
\bu_
\be abbreviation of one of the listed
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.
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.
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.
1047 _
\bM_
\bH _
\bC_
\bO_
\bM_
\bM_
\bA_
\bN_
\bD_
\bS
1049 The _
\bM_
\bH package comprises several programs:
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
1088 These programs are described below. The form of the descriptions
1089 conforms to the standard form for the description of UNIX commands.
1113 ali - list mail aliases
1115 _
\bS_
\bY_
\bN_
\bO_
\bP_
\bS_
\bI_
\bS
1116 ali [-alias aliasfile] [-list] [-nolist] [-normalize]
1117 [-nonormalize] [-user] [-nouser] aliases ... [-help]
1119 _
\bD_
\bE_
\bS_
\bC_
\bR_
\bI_
\bP_
\bT_
\bI_
\bO_
\bN
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
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.
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).
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
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
1149 _
\bS_
\be_
\be _
\bA_
\bl_
\bs_
\bo
1153 _
\bD_
\be_
\bf_
\ba_
\bu_
\bl_
\bt_
\bs
1154 `-alias /usr/local/lib/mh/MailAliases'
1160 _
\bC_
\bo_
\bn_
\bt_
\be_
\bx_
\bt
1164 \e9 [mh.6] MH.6.7 UCI version
1178 The `-user' option with `-nonormalize' is not entirely accurate, as
1179 it does not replace local nicknames for hosts with their official
1229 \e9 [mh.6] MH.6.7 UCI version
1239 ANNO(1) -19- ANNO(1)
1243 anno - annotate messages
1245 _
\bS_
\bY_
\bN_
\bO_
\bP_
\bS_
\bI_
\bS
1246 anno [+folder] [msgs] [-component field] [-inplace] [-noinplace]
1247 [-date] [-nodate] [-text body] [-help]
1249 _
\bD_
\bE_
\bS_
\bC_
\bR_
\bI_
\bP_
\bT_
\bI_
\bO_
\bN
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
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.
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.
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.
1272 _
\bF_
\bi_
\bl_
\be_
\bs
1273 $HOME/.mh_profile The user profile
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
1281 _
\bS_
\be_
\be _
\bA_
\bl_
\bs_
\bo
1282 dist (1), forw (1), repl (1)
1285 _
\bD_
\be_
\bf_
\ba_
\bu_
\bl_
\bt_
\bs
1286 `+folder' defaults to the current folder
1287 `msgs' defaults to cur
1294 \e9 [mh.6] MH.6.7 UCI version
1304 ANNO(1) -20- ANNO(1)
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.
1359 \e9 [mh.6] MH.6.7 UCI version
1373 bbc - check on BBoards
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]
1382 _
\bD_
\bE_
\bS_
\bC_
\bR_
\bI_
\bP_
\bT_
\bI_
\bO_
\bN
1384 _
\bb_
\bb_
\bc is a BBoard reading/checking program that interfaces to the
1387 The _
\bb_
\bb_
\bc program has three action switches which direct its opera-
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.
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:
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.
1413 The BBoard is empty.
1415 BBoard -- n items (none seen)
1416 The BBoard has items in it, but the user hasn't seen any.
1418 BBoard -- n items (all seen)
1419 The BBoard is non-empty, and the user has seen everything
1422 BBoard -- n items seen out of m
1423 The BBoard has at most m-n items that the user has not
1425 [mh.6] MH.6.7 UCI version
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.
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.
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.
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.
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.
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
1477 _
\bF_
\bi_
\bl_
\be_
\bs
1478 $HOME/.mh_profile The user profile
1479 $HOME/.bbrc BBoard information
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
1490 \e9 [mh.6] MH.6.7 UCI version
1503 _
\bS_
\be_
\be _
\bA_
\bl_
\bs_
\bo
1504 bbl(1), bboards(1), msh(1)
1507 _
\bD_
\be_
\bf_
\ba_
\bu_
\bl_
\bt_
\bs
1511 `bboards' defaults to "system"
1512 `-file /usr/bboards/BBoards'
1516 _
\bC_
\bo_
\bn_
\bt_
\be_
\bx_
\bt
1521 The `-user' switch takes effect only if followed by the `-file'
1555 \e9 [mh.6] MH.6.7 UCI version
1565 BBOARDS(1) -24- BBOARDS(1)
1569 bboards - the UCI BBoards facility
1571 _
\bS_
\bY_
\bN_
\bO_
\bP_
\bS_
\bI_
\bS
1572 bbc [-check] [-read] bboards ... [-help]
1574 _
\bD_
\bE_
\bS_
\bC_
\bR_
\bI_
\bP_
\bT_
\bI_
\bO_
\bN
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-
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
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.
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
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
1609 local-hacks-request : The people responsible for the BBoard
1612 _
\bF_
\bi_
\bl_
\be_
\bs
1613 $HOME/.mh_profile The user profile
1614 $HOME/.bbrc BBoard information
1620 \e9 [mh.6] MH.6.7 UCI version
1630 BBOARDS(1) -25- BBOARDS(1)
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
1639 _
\bS_
\be_
\be _
\bA_
\bl_
\bs_
\bo
1640 bbc(1), bbl(1), bbleader(1), msh(1)
1643 _
\bD_
\be_
\bf_
\ba_
\bu_
\bl_
\bt_
\bs
1644 The default bboard is "system"
1647 _
\bC_
\bo_
\bn_
\bt_
\be_
\bx_
\bt
1685 \e9 [mh.6] MH.6.7 UCI version
1695 BURST(1) -26- BURST(1)
1699 burst - explode digests into messages
1701 _
\bS_
\bY_
\bN_
\bO_
\bP_
\bS_
\bI_
\bS
1702 burst [+folder] [msgs] [-inplace] [-noinplace] [-quiet] [-noquiet]
1703 [-verbose] [-noverbose] [-help]
1705 _
\bD_
\bE_
\bS_
\bC_
\bR_
\bI_
\bP_
\bT_
\bI_
\bO_
\bN
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.
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.
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.
1721 The `-quiet' switch directs _
\bb_
\bu_
\br_
\bs_
\bt to be silent about reporting mes-
1722 sages that are not in digest format.
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.
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.
1731 _
\bF_
\bi_
\bl_
\be_
\bs
1732 $HOME/.mh_profile The user profile
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
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)
1750 \e9 [mh.6] MH.6.7 UCI version
1760 BURST(1) -27- BURST(1)
1763 _
\bD_
\be_
\bf_
\ba_
\bu_
\bl_
\bt_
\bs
1764 `+folder' defaults to the current folder
1765 `msgs' defaults to cur
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'.
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.
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
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.
1815 \e9 [mh.6] MH.6.7 UCI version
1825 COMP(1) -28- COMP(1)
1829 comp - compose a message
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]
1837 _
\bD_
\bE_
\bS_
\bC_
\bR_
\bI_
\bP_
\bT_
\bI_
\bO_
\bN
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).
1844 The default message form contains the following elements:
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
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.)
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.
1878 The `-file file' switch says to use the named file as the message
1881 [mh.6] MH.6.7 UCI version
1891 COMP(1) -29- COMP(1)
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.)
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
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
1915 fileproc: Program to refile the message
1916 whatnowproc: Program to ask the "What now?" questions
1919 _
\bS_
\be_
\be _
\bA_
\bl_
\bs_
\bo
1920 dist(1), forw(1), repl(1), send(1), whatnow(1), mh-profile(5)
1923 _
\bD_
\be_
\bf_
\ba_
\bu_
\bl_
\bt_
\bs
1924 `+folder' defaults to the current folder
1925 `msg' defaults to the current message
1930 _
\bC_
\bo_
\bn_
\bt_
\be_
\bx_
\bt
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
1946 \e9 [mh.6] MH.6.7 UCI version
1956 DIST(1) -30- DIST(1)
1960 dist - redistribute a message to additional addresses
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]
1968 _
\bD_
\bE_
\bS_
\bC_
\bR_
\bI_
\bP_
\bT_
\bI_
\bO_
\bN
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-
1974 The default message form contains the following elements:
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.
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.
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-
1997 If the `-annotate' switch is given, the message being distributed
1998 will be annotated with the lines:
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
2011 \e9 [mh.6] MH.6.7 UCI version
2021 DIST(1) -31- DIST(1)
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.
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.
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
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
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
2059 _
\bS_
\be_
\be _
\bA_
\bl_
\bs_
\bo
2060 comp(1), forw(1), repl(1), send(1), whatnow(1)
2063 _
\bD_
\be_
\bf_
\ba_
\bu_
\bl_
\bt_
\bs
2064 `+folder' defaults to the current folder
2065 `msg' defaults to cur
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.
2076 \e9 [mh.6] MH.6.7 UCI version
2086 DIST(1) -32- DIST(1)
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:".
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.
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
2108 If your current working directory is not writable, the link named
2109 "@" is not available.
2141 \e9 [mh.6] MH.6.7 UCI version
2151 FOLDER(1) -33- FOLDER(1)
2155 folder, folders - set/list current folder/message
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]
2165 _
\bD_
\bE_
\bS_
\bC_
\bR_
\bI_
\bP_
\bT_
\bI_
\bO_
\bN
2167 Since the _
\bM_
\bH environment is the shell, it is easy to lose track of
2168 the current folder from day to day.
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.
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:
2181 inbox+ has 16 messages ( 3- 22); cur= 5.
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,
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.
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
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.
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
2207 [mh.6] MH.6.7 UCI version
2217 FOLDER(1) -34- FOLDER(1)
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.
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').
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
2233 The `-pack' switch will compress the message names in a folder,
2234 removing holes in message numbering.
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.
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.)
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.
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.
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.
2264 _
\bF_
\bi_
\bl_
\be_
\bs
2265 $HOME/.mh_profile The user profile
2272 \e9 [mh.6] MH.6.7 UCI version
2282 FOLDER(1) -35- FOLDER(1)
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
2293 _
\bS_
\be_
\be _
\bA_
\bl_
\bs_
\bo
2294 refile(1), mhpath(1)
2297 _
\bD_
\be_
\bf_
\ba_
\bu_
\bl_
\bt_
\bs
2298 `+folder' defaults to the current folder
2299 `msg' defaults to none
2305 `-print' is the default if no `-list', `-push', or `-pop' is specified
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.
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.
2337 \e9 [mh.6] MH.6.7 UCI version
2347 FORW(1) -36- FORW(1)
2351 forw - forward messages
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]
2360 forw [+folder] [msgs] [-digest list] [-issue number]
2361 [-volume number] [other switches for _
\bf_
\bo_
\br_
\bw] [-help]
2363 _
\bD_
\bE_
\bS_
\bC_
\bR_
\bI_
\bP_
\bT_
\bI_
\bO_
\bN
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
2372 The default message form contains the following elements:
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.
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.
2388 If the `-annotate' switch is given, each message being forwarded
2389 will be annotated with the lines
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.
2402 \e9 [mh.6] MH.6.7 UCI version
2412 FORW(1) -37- FORW(1)
2415 See _
\bc_
\bo_
\bm_
\bp (1) for a description of the `-editor' and `-noedit'
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:
2430 width=80,overflowtext=,overflowoffset=10
2431 leftadjust,compress,compwidth=9
2432 Date:formatfield="%<(nodate{text})%{text}%|%(tws{text})%>"
2438 body:nocomponent,overflowoffset=0,noleftadjust,nocompress
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.
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
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!)
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.
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
2468 [mh.6] MH.6.7 UCI version
2478 FORW(1) -38- FORW(1)
2481 the initial edit. Hence, `-nowhatnowproc' will prevent any edit
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:
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'
2493 Consult the Advanced Features section of the _
\bM_
\bH User's Manual for
2494 more information on making digests.
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
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
2514 fileproc: Program to refile the message
2515 mhlproc: Program to filter messages being forwarded
2516 whatnowproc: Program to ask the "What now?" questions
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)
2524 _
\bD_
\be_
\bf_
\ba_
\bu_
\bl_
\bt_
\bs
2525 `+folder' defaults to the current folder
2526 `msgs' defaults to cur
2533 \e9 [mh.6] MH.6.7 UCI version
2543 FORW(1) -39- FORW(1)
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.
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
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.
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.
2598 \e9 [mh.6] MH.6.7 UCI version
2612 inc - incorporate new mail
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]
2621 _
\bD_
\bE_
\bS_
\bC_
\bR_
\bI_
\bP_
\bT_
\bI_
\bO_
\bN
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.
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
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
2645 <scan line for first message>
2646 <scan line for second message>
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.
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.
2659 In all cases, the user's mail drop will be zeroed, unless the
2660 `-notruncate' switch is given.
2662 If the profile entry "Unseen-Sequence" is present and non-empty,
2664 [mh.6] MH.6.7 UCI version
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.
2683 The interpretation of the `-form formatfile', `-format string', and
2684 `-width columns' switches is the same as in _
\bs_
\bc_
\ba_
\bn (1).
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
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.
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.
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).
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-
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
2729 \e9 [mh.6] MH.6.7 UCI version
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
2748 Unseen-Sequence: To name sequences denoting unseen messages
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)
2756 _
\bD_
\be_
\bf_
\ba_
\bu_
\bl_
\bt_
\bs
2757 `+folder' defaults to "inbox"
2760 `-format' defaulted as described above
2762 `-truncate' if `-file name' not given, `-notruncate' otherwise
2763 `-width' defaulted to the width of the terminal
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.
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.
2794 \e9 [mh.6] MH.6.7 UCI version
2804 MARK(1) -43- MARK(1)
2808 mark - mark messages
2810 _
\bS_
\bY_
\bN_
\bO_
\bP_
\bS_
\bI_
\bS
2811 mark [+folder] [msgs] [-sequence name ...] [-add] [-delete] [-list]
2812 [-public] [-nopublic] [-zero] [-nozero] [-help]
2814 _
\bD_
\bE_
\bS_
\bC_
\bR_
\bI_
\bP_
\bT_
\bI_
\bO_
\bN
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
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.
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.
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.
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.
2860 [mh.6] MH.6.7 UCI version
2870 MARK(1) -44- MARK(1)
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
2880 The current restrictions on sequences are:
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).
2887 Only a certain number of sequences may be defined for a given
2888 folder. This number is usually limited to 10.
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.
2895 _
\bF_
\bi_
\bl_
\be_
\bs
2896 $HOME/.mh_profile The user profile
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
2904 _
\bS_
\be_
\be _
\bA_
\bl_
\bs_
\bo
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
2916 _
\bC_
\bo_
\bn_
\bt_
\be_
\bx_
\bt
2917 If a folder is given, it will become the current folder.
2925 \e9 [mh.6] MH.6.7 UCI version
2939 mhl - produce formatted listings of MH messages
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 ...]
2947 _
\bD_
\bE_
\bS_
\bC_
\bR_
\bI_
\bP_
\bT_
\bI_
\bO_
\bN
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
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
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.
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
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.
2991 [mh.6] MH.6.7 UCI version
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.
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.
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.
3022 Each line of mhl.format has one of the formats:
3026 variable[,variable...]
3027 component:[variable,...]
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
3036 For example, the line:
3038 width=80,length=40,clearscreen,overflowtext="***",overflowoffset=5
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
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).
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: "
3057 [mh.6] MH.6.7 UCI version
3070 overflowtext string text to use at the beginning of an
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
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
3084 nocomponent flag don't output "component: " for this
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
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
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-
3110 ignores=component,...
3112 specifies a list of components which are never output.
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.
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
3123 [mh.6] MH.6.7 UCI version
3136 list is not needed since all non-specified components will be
3139 If "nocomponent" is NOT specified, then the component name will be
3140 output as it appears in the format file.
3142 The default format is:
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})%>"
3157 body:nocomponent,overflowtext=,overflowoffset=0,noleftadjust
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.
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.
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
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
3183 _
\bS_
\be_
\be _
\bA_
\bl_
\bs_
\bo
3184 show(1), ap(8), dp(8)
3188 \e9 [mh.6] MH.6.7 UCI version
3201 _
\bD_
\be_
\bf_
\ba_
\bu_
\bl_
\bt_
\bs
3208 _
\bC_
\bo_
\bn_
\bt_
\be_
\bx_
\bt
3213 There should be some way to pass `bell' and `clear' information to
3216 On hosts where _
\bM_
\bH was configured with the BERK option, address
3217 parsing is not enabled.
3253 \e9 [mh.6] MH.6.7 UCI version
3263 MHMAIL(1) -50- MHMAIL(1)
3267 mhmail - send or read mail
3269 _
\bS_
\bY_
\bN_
\bO_
\bP_
\bS_
\bI_
\bS
3270 mhmail [ addrs ... [-body text] [-cc addrs ...] [-from addr]
3271 [-subject subject]] [-help]
3273 _
\bD_
\bE_
\bS_
\bC_
\bR_
\bI_
\bP_
\bT_
\bI_
\bO_
\bN
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.
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.
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
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.
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
3305 _
\bP_
\br_
\bo_
\bf_
\bi_
\bl_
\be _
\bC_
\bo_
\bm_
\bp_
\bo_
\bn_
\be_
\bn_
\bt_
\bs
3309 _
\bS_
\be_
\be _
\bA_
\bl_
\bs_
\bo
3313 _
\bD_
\be_
\bf_
\ba_
\bu_
\bl_
\bt_
\bs
3318 \e9 [mh.6] MH.6.7 UCI version
3328 MHMAIL(1) -51- MHMAIL(1)
3331 _
\bC_
\bo_
\bn_
\bt_
\be_
\bx_
\bt
3332 If _
\bi_
\bn_
\bc is invoked, then _
\bi_
\bn_
\bc's context changes occur.
3383 \e9 [mh.6] MH.6.7 UCI version
3393 MHOOK(1) -52- MHOOK(1)
3397 mhook - MH receive-mail hooks
3399 _
\bS_
\bY_
\bN_
\bO_
\bP_
\bS_
\bI_
\bS
3402 /usr/local/lib/mh/rcvdist [-form formfile] [switches for _
\bp_
\bo_
\bs_
\bt_
\bp_
\br_
\bo_
\bc]
3405 /usr/local/lib/mh/rcvpack file [-help]
3407 /usr/local/lib/mh/rcvtty [command] [-form formatfile]
3408 [-format string] [-bell] [-nobell] [-newline] [-nonewline]
3411 _
\bD_
\bE_
\bS_
\bC_
\bR_
\bI_
\bP_
\bT_
\bI_
\bO_
\bN
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.
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.
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.
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).
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.
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.
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.
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
3449 [mh.6] MH.6.7 UCI version
3459 MHOOK(1) -53- MHOOK(1)
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.
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
3472 _
\bS_
\be_
\be _
\bA_
\bl_
\bs_
\bo
3473 rcvstore (1), maildelivery(5), mh-format(5)
3476 _
\bC_
\bo_
\bn_
\bt_
\be_
\bx_
\bt
3481 Only two return codes are meaningful, others should be.
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:
3488 default - pipe A "bin/rcvmail $(address) $(info) $(sender)"
3514 \e9 [mh.6] MH.6.7 UCI version
3524 MHPATH(1) -54- MHPATH(1)
3528 mhpath - print full pathnames of MH messages and folders
3530 _
\bS_
\bY_
\bN_
\bO_
\bP_
\bS_
\bI_
\bS
3531 mhpath [+folder] [msgs] [-help]
3533 _
\bD_
\bE_
\bS_
\bC_
\bR_
\bI_
\bP_
\bT_
\bI_
\bO_
\bN
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.
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.
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.
3558 Examples: The current folder foo contains messages 3 5 6. Cur is
3580 [mh.6] MH.6.7 UCI version
3590 MHPATH(1) -55- MHPATH(1)
3598 bad message list "last-new".
3604 no messages in range "1-2".
3614 _
\bM_
\bH_
\bp_
\ba_
\bt_
\bh is also useful in back-quoted operations:
3616 % cd `mhpath +inbox`
3621 _
\bF_
\bi_
\bl_
\be_
\bs
3622 $HOME/.mh_profile The user profile
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
3630 _
\bS_
\be_
\be _
\bA_
\bl_
\bs_
\bo
3634 _
\bD_
\be_
\bf_
\ba_
\bu_
\bl_
\bt_
\bs
3635 `+folder' defaults to the current folder
3636 `msgs' defaults to none
3639 _
\bC_
\bo_
\bn_
\bt_
\be_
\bx_
\bt
3645 \e9 [mh.6] MH.6.7 UCI version
3655 MHPATH(1) -56- MHPATH(1)
3659 Like all MH commands, _
\bm_
\bh_
\bp_
\ba_
\bt_
\bh expands and sorts [msgs]. So don't
3664 to move 501 to 500. Quite the reverse. But
3666 mv `mhpath 501` `mhpath 500`
3670 Out of range message 0 is treated far more severely than large out
3671 of range message numbers.
3710 \e9 [mh.6] MH.6.7 UCI version
3720 MSGCHK(1) -57- MSGCHK(1)
3724 msgchk - check for messages
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]
3731 _
\bD_
\bE_
\bS_
\bC_
\bR_
\bI_
\bP_
\bT_
\bI_
\bO_
\bN
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.
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.
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-
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).
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
3768 _
\bP_
\br_
\bo_
\bf_
\bi_
\bl_
\be _
\bC_
\bo_
\bm_
\bp_
\bo_
\bn_
\be_
\bn_
\bt_
\bs
3775 \e9 [mh.6] MH.6.7 UCI version
3785 MSGCHK(1) -58- MSGCHK(1)
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),
3793 _
\bD_
\be_
\bf_
\ba_
\bu_
\bl_
\bt_
\bs
3794 `user' defaults to the current user
3800 _
\bC_
\bo_
\bn_
\bt_
\be_
\bx_
\bt
3840 \e9 [mh.6] MH.6.7 UCI version
3854 msh - MH shell (and BBoard reader)
3856 _
\bS_
\bY_
\bN_
\bO_
\bP_
\bS_
\bI_
\bS
3857 msh [-prompt string] [-scan] [-noscan] [-topcur] [-notopcur] [file]
3860 _
\bD_
\bE_
\bS_
\bC_
\bR_
\bI_
\bP_
\bT_
\bI_
\bO_
\bN
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.
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:
3906 [mh.6] MH.6.7 UCI version
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
3929 If the file is writable and has been modified, then using "quit"
3930 will query the user if the file should be updated.
3932 The `-prompt string' switch sets the prompting string for _
\bm_
\bs_
\bh.
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-
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.
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".
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
3961 _
\bm_
\bs_
\bh supports an output redirection facility. Commands may be fol-
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
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,
3972 [mh.6] MH.6.7 UCI version
3985 or alias substitutions.
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).
3992 _
\bF_
\bi_
\bl_
\be_
\bs
3993 $HOME/.mh_profile The user profile
3994 /usr/local/lib/mh/mtstailor tailor file
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
4004 _
\bS_
\be_
\be _
\bA_
\bl_
\bs_
\bo
4008 _
\bD_
\be_
\bf_
\ba_
\bu_
\bl_
\bt_
\bs
4009 `file' defaults to "./msgbox"
4015 _
\bC_
\bo_
\bn_
\bt_
\be_
\bx_
\bt
4037 \e9 [mh.6] MH.6.7 UCI version
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.
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.
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-
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
4066 pick: -seq select -list
4068 in their .mh_profile file so that _
\bp_
\bi_
\bc_
\bk works equally well from both
4069 the shell and _
\bm_
\bs_
\bh.
4071 _
\bs_
\bo_
\br_
\bt_
\bm always uses "-noverbose" and if "-textfield field" is used,
4074 The _
\bm_
\bs_
\bh program inherits most (if not all) of the bugs from the _
\bM_
\bH
4075 commands it implements.
4102 \e9 [mh.6] MH.6.7 UCI version
4112 NEXT(1) -63- NEXT(1)
4116 next - show the next message
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]
4122 _
\bD_
\bE_
\bS_
\bC_
\bR_
\bI_
\bP_
\bT_
\bI_
\bO_
\bN
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.
4130 _
\bF_
\bi_
\bl_
\be_
\bs
4131 $HOME/.mh_profile The user profile
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
4140 _
\bS_
\be_
\be _
\bA_
\bl_
\bs_
\bo
4144 _
\bD_
\be_
\bf_
\ba_
\bu_
\bl_
\bt_
\bs
4145 `+folder' defaults to the current folder
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.
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.
4167 \e9 [mh.6] MH.6.7 UCI version
4177 PACKF(1) -64- PACKF(1)
4181 packf - compress a folder into a single file
4183 _
\bS_
\bY_
\bN_
\bO_
\bP_
\bS_
\bI_
\bS
4184 packf [+folder] [msgs] [-file name] [-help]
4186 _
\bD_
\bE_
\bS_
\bC_
\bR_
\bI_
\bP_
\bT_
\bI_
\bO_
\bN
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.
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.
4197 _
\bF_
\bi_
\bl_
\be_
\bs
4198 $HOME/.mh_profile The user profile
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'
4207 _
\bS_
\be_
\be _
\bA_
\bl_
\bs_
\bo
4211 _
\bD_
\be_
\bf_
\ba_
\bu_
\bl_
\bt_
\bs
4212 `+folder' defaults to the current folder
4213 `msgs' defaults to all
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.
4232 \e9 [mh.6] MH.6.7 UCI version
4242 PICK(1) -65- PICK(1)
4246 pick - select messages by content
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]
4256 scan `pick -from jones`
4257 pick -to holloway -sequence select
4258 show `pick -before friday`
4260 _
\bD_
\bE_
\bS_
\bC_
\bR_
\bI_
\bP_
\bT_
\bI_
\bO_
\bN
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.
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:
4271 "component[ \t]*:.*pattern"
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
4278 `--component pattern'
4280 is a shorthand for specifying
4282 `-search "component[ \t]*:.*pattern" '
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'.
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.
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
4298 [mh.6] MH.6.7 UCI version
4308 PICK(1) -66- PICK(1)
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.
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.
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,
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").
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
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,
4349 pick -after yesterday -and -lbrace -from freida -or -from fear -rbrace
4351 identifies messages recently sent by "frieda" or "fear".
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.
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
4364 [mh.6] MH.6.7 UCI version
4374 PICK(1) -67- PICK(1)
4377 "backquoting" syntax of the shell. For example, the command
4379 scan `pick +todo -after "31 Mar 83 0123 PST"`
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.
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,
4391 pick -from frated -seq fred
4393 defines a new message sequence for the current folder called "fred"
4394 which contains exactly those messages that were selected.
4396 Note that whenever _
\bp_
\bi_
\bc_
\bk processes a `-sequence name' switch, it
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
4405 The `-public' and `-nopublic' switches are used by _
\bp_
\bi_
\bc_
\bk in the same
4406 way _
\bm_
\ba_
\br_
\bk uses them.
4408 _
\bF_
\bi_
\bl_
\be_
\bs
4409 $HOME/.mh_profile The user profile
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
4417 _
\bS_
\be_
\be _
\bA_
\bl_
\bs_
\bo
4421 _
\bD_
\be_
\bf_
\ba_
\bu_
\bl_
\bt_
\bs
4422 `+folder' defaults to the current folder
4423 `msgs' defaults to all
4425 `-nopublic' if the folder is read-only, `-public' otherwise
4427 `-list' is the default if no `-sequence', `-nolist' otherwise
4429 \e9 [mh.6] MH.6.7 UCI version
4439 PICK(1) -68- PICK(1)
4442 _
\bC_
\bo_
\bn_
\bt_
\be_
\bx_
\bt
4443 If a folder is given, it will become the current folder.
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.
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:
4459 show `pick last:20 -seq fear`
4463 mark -add -nozero -seq fear last:20
4466 Finally, timezones used to be ignored when comparing dates: they
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.
4477 If _
\bp_
\bi_
\bc_
\bk is used in a back-quoted operation, such as
4479 scan `pick -from jones`
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
4494 \e9 [mh.6] MH.6.7 UCI version
4504 PREV(1) -69- PREV(1)
4508 prev - show the previous message
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]
4514 _
\bD_
\bE_
\bS_
\bC_
\bR_
\bI_
\bP_
\bT_
\bI_
\bO_
\bN
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.
4522 _
\bF_
\bi_
\bl_
\be_
\bs
4523 $HOME/.mh_profile The user profile
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
4532 _
\bS_
\be_
\be _
\bA_
\bl_
\bs_
\bo
4536 _
\bD_
\be_
\bf_
\ba_
\bu_
\bl_
\bt_
\bs
4537 `+folder' defaults to the current folder
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.
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.
4559 \e9 [mh.6] MH.6.7 UCI version
4569 PROMPTER(1) -70- PROMPTER(1)
4573 prompter - prompting editor front-end
4575 _
\bS_
\bY_
\bN_
\bO_
\bP_
\bS_
\bI_
\bS
4576 prompter [-erase chr] [-kill chr] [-prepend] [-noprepend] [-rapid]
4577 [-norapid] [-doteof] [-nodoteof] file [-help]
4579 _
\bD_
\bE_
\bS_
\bC_
\bR_
\bI_
\bP_
\bT_
\bI_
\bO_
\bN
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.
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.
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.
4601 Each non-empty component is copied to the draft and displayed on
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-
4608 "--------Enter additional text",
4610 or (if `-prepend' was given)
4612 "--------Enter initial text".
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.
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.
4624 \e9 [mh.6] MH.6.7 UCI version
4634 PROMPTER(1) -71- PROMPTER(1)
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.
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
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.
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.
4654 _
\bF_
\bi_
\bl_
\be_
\bs
4655 $HOME/.mh_profile The user profile
4656 /tmp/prompter* Temporary copy of message
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
4665 _
\bS_
\be_
\be _
\bA_
\bl_
\bs_
\bo
4666 comp(1), dist(1), forw(1), repl(1), whatnow(1)
4669 _
\bD_
\be_
\bf_
\ba_
\bu_
\bl_
\bt_
\bs
4675 _
\bC_
\bo_
\bn_
\bt_
\be_
\bx_
\bt
4678 _
\bH_
\be_
\bl_
\bp_
\bf_
\bu_
\bl _
\bH_
\bi_
\bn_
\bt_
\bs
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.
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-
4689 \e9 [mh.6] MH.6.7 UCI version
4699 PROMPTER(1) -72- PROMPTER(1)
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
4754 \e9 [mh.6] MH.6.7 UCI version
4764 RCVSTORE(1) -73- RCVSTORE(1)
4768 rcvstore - incorporate new mail asynchronously
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]
4775 _
\bD_
\bE_
\bS_
\bC_
\bR_
\bI_
\bP_
\bT_
\bI_
\bO_
\bN
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.
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
4793 _
\bR_
\bc_
\bv_
\bs_
\bt_
\bo_
\br_
\be will incorporate anything except zero length messages into
4794 the user's MH folder.
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.
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.
4810 _
\bF_
\bi_
\bl_
\be_
\bs
4811 $HOME/.mh_profile The user profile
4819 \e9 [mh.6] MH.6.7 UCI version
4829 RCVSTORE(1) -74- RCVSTORE(1)
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
4839 _
\bS_
\be_
\be _
\bA_
\bl_
\bs_
\bo
4840 inc(1), pick(1), mh-mail(5)
4843 _
\bD_
\be_
\bf_
\ba_
\bu_
\bl_
\bt_
\bs
4844 `+folder' defaults to "inbox"
4846 `-nopublic' if the folder is read-only, `-public' otherwise
4850 _
\bC_
\bo_
\bn_
\bt_
\be_
\bx_
\bt
4851 No context changes will be attempted, with the exception of se-
4852 quence manipulation.
4884 \e9 [mh.6] MH.6.7 UCI version
4894 REFILE(1) -75- REFILE(1)
4898 refile - file message in other folders
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]
4905 _
\bD_
\bE_
\bS_
\bC_
\bR_
\bI_
\bP_
\bT_
\bI_
\bO_
\bN
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
4918 refile cur +jones +Map
4920 would allow the message to be found in either of the two folders
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)).
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.
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.
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).
4949 \e9 [mh.6] MH.6.7 UCI version
4959 REFILE(1) -76- REFILE(1)
4962 If the user has a profile component such as
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
4972 The `-draft' switch tells _
\br_
\be_
\bf_
\bi_
\bl_
\be to file the <mh-dir>/draft.
4974 _
\bF_
\bi_
\bl_
\be_
\bs
4975 $HOME/.mh_profile The user profile
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
4985 _
\bS_
\be_
\be _
\bA_
\bl_
\bs_
\bo
4989 _
\bD_
\be_
\bf_
\ba_
\bu_
\bl_
\bt_
\bs
4990 `-src +folder' defaults to the current folder
4991 `msgs' defaults to cur
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.
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.
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.
5014 \e9 [mh.6] MH.6.7 UCI version
5024 REPL(1) -77- REPL(1)
5028 repl - reply to a message
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]
5038 _
\bD_
\bE_
\bS_
\bC_
\bR_
\bI_
\bP_
\bT_
\bI_
\bO_
\bN
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:
5048 To: <Reply-To> or <From>
5049 cc: <cc>, <To>, and yourself
5050 Subject: Re: <Subject>
5051 In-reply-to: Your message of <Date>.
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.
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.
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
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.
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
5080 [mh.6] MH.6.7 UCI version
5090 REPL(1) -78- REPL(1)
5093 draft intact; replace will replace the existing draft with a blank
5094 skeleton; and list will display the draft.
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.
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
5117 body:nocomponent,compwidth=9,offset=9
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
5123 message-id:nocomponent,formatfield=\
5124 "In message %{text}you write:"
5125 body:component=">",overflowtext=">",overflowoffset=0
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.
5130 If the `-annotate' switch is given, the message being replied-to
5131 will be annotated with the lines
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.
5144 The `-fcc +folder' switch can be used to automatically specify a
5146 [mh.6] MH.6.7 UCI version
5156 REPL(1) -79- REPL(1)
5159 folder to receive Fcc:s. More than one folder, each preceeded by
5160 `-fcc' can be named.
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:
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'
5168 To avoid reiteration, _
\br_
\be_
\bp_
\bl strips any leading `Re: ' strings from
5169 the _
\bs_
\bu_
\bb_
\bj_
\be_
\bc_
\bt component.
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.
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
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
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
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
5203 _
\bS_
\be_
\be _
\bA_
\bl_
\bs_
\bo
5204 comp(1), dist(1), forw(1), send(1), whatnow(1), mh-format(5)
5211 \e9 [mh.6] MH.6.7 UCI version
5221 REPL(1) -80- REPL(1)
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
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.
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.
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.
5253 The `-width columns' switch is only used to do address-folding;
5254 other headers are not line-wrapped.
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
5261 If your current working directory is not writable, the link named
5262 "@" is not available.
5276 \e9 [mh.6] MH.6.7 UCI version
5292 _
\bS_
\bY_
\bN_
\bO_
\bP_
\bS_
\bI_
\bS
5293 rmf [+folder] [-interactive] [-nointeractive] [-help]
5295 _
\bD_
\bE_
\bS_
\bC_
\bR_
\bI_
\bP_
\bT_
\bI_
\bO_
\bN
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.
5307 _
\bR_
\bm_
\bf irreversibly deletes messages that don't have other links, so
5308 use it with caution.
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
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.
5321 _
\bF_
\bi_
\bl_
\be_
\bs
5322 $HOME/.mh_profile The user profile
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
5330 _
\bS_
\be_
\be _
\bA_
\bl_
\bs_
\bo
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
5341 \e9 [mh.6] MH.6.7 UCI version
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
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.
5406 \e9 [mh.6] MH.6.7 UCI version
5420 rmm - remove messages
5422 _
\bS_
\bY_
\bN_
\bO_
\bP_
\bS_
\bI_
\bS
5423 rmm [+folder] [msgs] [-help]
5425 _
\bD_
\bE_
\bS_
\bC_
\bR_
\bI_
\bP_
\bT_
\bI_
\bO_
\bN
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.
5432 If the user has a profile component such as
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
5441 Some users of csh prefer the following:
5443 alias rmm 'refile +d'
5445 where folder +d is a folder for deleted messages, and
5447 alias mexp 'rm `mhpath +d all`'
5449 is used to "expunge" deleted messages.
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.
5454 _
\bF_
\bi_
\bl_
\be_
\bs
5455 $HOME/.mh_profile The user profile
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
5464 _
\bS_
\be_
\be _
\bA_
\bl_
\bs_
\bo
5471 \e9 [mh.6] MH.6.7 UCI version
5484 _
\bD_
\be_
\bf_
\ba_
\bu_
\bl_
\bt_
\bs
5485 `+folder' defaults to the current folder
5486 `msgs' defaults to cur
5489 _
\bC_
\bo_
\bn_
\bt_
\be_
\bx_
\bt
5490 If a folder is given, it will become the current folder.
5492 _
\bH_
\be_
\bl_
\bp_
\bf_
\bu_
\bl _
\bH_
\bi_
\bn_
\bt_
\bs
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:
5497 mv `mhpath msgs` `mhpath new +folder`
5499 Other work-arounds are possible, such as:
5502 MH=/dev/null MHCONTEXT=/dev/null refile $* +folder
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.
5536 \e9 [mh.6] MH.6.7 UCI version
5546 SCAN(1) -85- SCAN(1)
5550 scan - produce a one line per message scan listing
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]
5557 _
\bD_
\bE_
\bS_
\bC_
\bR_
\bI_
\bP_
\bT_
\bI_
\bO_
\bN
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:
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
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.
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
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).
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.
5593 For example, the command:
5595 (scan -clear -header; show all -show pr -f) | lpr
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
5602 [mh.6] MH.6.7 UCI version
5612 SCAN(1) -86- SCAN(1)
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
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.
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:
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
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.
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.
5645 _
\bF_
\bi_
\bl_
\be_
\bs
5646 $HOME/.mh_profile The user profile
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
5655 _
\bS_
\be_
\be _
\bA_
\bl_
\bs_
\bo
5656 inc(1), pick(1), show(1), mh-format(5)
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
5664 `-width' defaulted to the width of the terminal
5667 \e9 [mh.6] MH.6.7 UCI version
5677 SCAN(1) -87- SCAN(1)
5680 _
\bC_
\bo_
\bn_
\bt_
\be_
\bx_
\bt
5681 If a folder is given, it will become the current folder.
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.
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
5699 The switch `-reverse', makes _
\bs_
\bc_
\ba_
\bn list the messages in reverse ord-
5700 er; this should be considered a bug.
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-
5732 \e9 [mh.6] MH.6.7 UCI version
5742 SEND(1) -88- SEND(1)
5746 send - send a message
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]
5755 _
\bD_
\bE_
\bS_
\bC_
\bR_
\bI_
\bP_
\bT_
\bI_
\bO_
\bN
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.
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.
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.
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.
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.
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
5798 [mh.6] MH.6.7 UCI version
5808 SEND(1) -89- SEND(1)
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.
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!)
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
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.
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.
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.
5851 _
\bF_
\bi_
\bl_
\be_
\bs
5852 $HOME/.mh_profile The user profile
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
5863 \e9 [mh.6] MH.6.7 UCI version
5873 SEND(1) -90- SEND(1)
5876 _
\bS_
\be_
\be _
\bA_
\bl_
\bs_
\bo
5877 comp(1), dist(1), forw(1), repl(1), mh-alias(5), post(8)
5880 _
\bD_
\be_
\bf_
\ba_
\bu_
\bl_
\bt_
\bs
5881 `file' defaults to <mh-dir>/draft
5882 `-alias /usr/local/lib/mh/MailAliases'
5894 _
\bC_
\bo_
\bn_
\bt_
\be_
\bx_
\bt
5928 \e9 [mh.6] MH.6.7 UCI version
5938 SHOW(1) -91- SHOW(1)
5942 show - show (list) messages
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]
5949 _
\bD_
\bE_
\bS_
\bC_
\bR_
\bI_
\bP_
\bT_
\bI_
\bO_
\bN
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.
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.
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".
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-
5981 "show -draft" will list the file <mh-dir>/draft if it exists.
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.
5989 _
\bF_
\bi_
\bl_
\be_
\bs
5990 $HOME/.mh_profile The user profile
5993 \e9 [mh.6] MH.6.7 UCI version
6003 SHOW(1) -92- SHOW(1)
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
6013 _
\bS_
\be_
\be _
\bA_
\bl_
\bs_
\bo
6014 mhl(1), more(1), next(1), pick(1), prev(1), scan(1)
6017 _
\bD_
\be_
\bf_
\ba_
\bu_
\bl_
\bt_
\bs
6018 `+folder' defaults to the current folder
6019 `msgs' defaults to cur
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.
6058 \e9 [mh.6] MH.6.7 UCI version
6068 SHOW(1) -93- SHOW(1)
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
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.
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.
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
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:
6099 For users of _
\bs_
\bh:
6101 show 2>&1 | imprint &
6123 \e9 [mh.6] MH.6.7 UCI version
6133 SORTM(1) -94- SORTM(1)
6137 sortm - sort messages
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]
6144 _
\bD_
\bE_
\bS_
\bC_
\bR_
\bI_
\bP_
\bT_
\bI_
\bO_
\bN
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.
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.
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
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-
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,
6171 For example, to order a folder by date-major, subject-minor, use:
6173 sortm -textfield subject +folder
6176 _
\bF_
\bi_
\bl_
\be_
\bs
6177 $HOME/.mh_profile The user profile
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
6185 _
\bS_
\be_
\be _
\bA_
\bl_
\bs_
\bo
6188 \e9 [mh.6] MH.6.7 UCI version
6198 SORTM(1) -95- SORTM(1)
6201 _
\bD_
\be_
\bf_
\ba_
\bu_
\bl_
\bt_
\bs
6202 `+folder' defaults to the current folder
6203 `msgs' defaults to all
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
6216 _
\bH_
\bi_
\bs_
\bt_
\bo_
\br_
\by
6217 Timezones used to be ignored when comparing dates: they aren't any
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
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.
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.
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.
6253 \e9 [mh.6] MH.6.7 UCI version
6267 vmh - visual front-end to MH
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]
6273 _
\bD_
\bE_
\bS_
\bC_
\bR_
\bI_
\bP_
\bT_
\bI_
\bO_
\bN
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.
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
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.)
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.
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):
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
6314 (A `*' indicates that a numeric prefix is meaningful for this com-
6317 Note that if a command resulted in more than one window's worth of
6319 [mh.6] MH.6.7 UCI version
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.
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
6343 _
\bF_
\bi_
\bl_
\be_
\bs
6344 $HOME/.mh_profile The user profile
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
6351 _
\bS_
\be_
\be _
\bA_
\bl_
\bs_
\bo
6355 _
\bD_
\be_
\bf_
\ba_
\bu_
\bl_
\bt_
\bs
6360 _
\bC_
\bo_
\bn_
\bt_
\be_
\bx_
\bt
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.
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
6374 Acts strangely (loses peer or botches window management protocol
6375 with peer) on random occasions.
6384 \e9 [mh.6] MH.6.7 UCI version
6394 WHATNOW(1) -98- WHATNOW(1)
6398 whatnow - prompting front-end for send
6400 _
\bS_
\bY_
\bN_
\bO_
\bP_
\bS_
\bI_
\bS
6401 whatnow [-draftfolder +folder] [-draftmessage msg] [-nodraftfolder]
6402 [-editor editor] [-noedit] [-prompt string] [file] [-help]
6404 _
\bD_
\bE_
\bS_
\bC_
\bR_
\bI_
\bP_
\bT_
\bI_
\bO_
\bN
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.
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:
6415 display to list the message being distributed/replied-to on
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
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).
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.
6447 The `-prompt string' switch sets the prompting string for _
\bw_
\bh_
\ba_
\bt_
\bn_
\bo_
\bw.
6449 \e9 [mh.6] MH.6.7 UCI version
6459 WHATNOW(1) -99- WHATNOW(1)
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.
6467 _
\bF_
\bi_
\bl_
\be_
\bs
6468 $HOME/.mh_profile The user profile
6469 <mh-dir>/draft The draft file
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
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
6484 _
\bS_
\be_
\be _
\bA_
\bl_
\bs_
\bo
6488 _
\bD_
\be_
\bf_
\ba_
\bu_
\bl_
\bt_
\bs
6489 `-prompt "What Now? "'
6492 _
\bC_
\bo_
\bn_
\bt_
\be_
\bx_
\bt
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.
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
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.
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.
6514 \e9 [mh.6] MH.6.7 UCI version
6524 WHATNOW(1) -100- WHATNOW(1)
6528 whom - report to whom a message would go
6530 _
\bS_
\bY_
\bN_
\bO_
\bP_
\bS_
\bI_
\bS
6531 whom [-alias aliasfile] [-check] [-nocheck] [-draft]
6532 [-draftfolder +folder] [-draftmessage msg] [-nodraftfolder]
6535 _
\bD_
\bE_
\bS_
\bC_
\bR_
\bI_
\bP_
\bT_
\bI_
\bO_
\bN
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).
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.
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.
6551 _
\bF_
\bi_
\bl_
\be_
\bs
6552 $HOME/.mh_profile The user profile
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
6562 _
\bS_
\be_
\be _
\bA_
\bl_
\bs_
\bo
6563 mh-alias(5), post(8)
6566 _
\bD_
\be_
\bf_
\ba_
\bu_
\bl_
\bt_
\bs
6567 `file' defaults to <mh-dir>/draft
6569 `-alias /usr/local/lib/mh/MailAliases'
6572 _
\bC_
\bo_
\bn_
\bt_
\be_
\bx_
\bt
6579 \e9 [mh.6] MH.6.7 UCI version
6589 WHOM(1) -101- WHOM(1)
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.
6644 \e9 [mh.6] MH.6.7 UCI version
6657 _
\bM_
\bO_
\bR_
\bE _
\bD_
\bE_
\bT_
\bA_
\bI_
\bL_
\bS
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
6719 MH-ALIAS(5) -103- MH-ALIAS(5)
6723 mh-alias - alias file for MH message system
6725 _
\bS_
\bY_
\bN_
\bO_
\bP_
\bS_
\bI_
\bS
6726 any _
\bM_
\bH command
6728 _
\bD_
\bE_
\bS_
\bC_
\bR_
\bI_
\bP_
\bT_
\bI_
\bO_
\bN
6730 This describes both _
\bM_
\bH personal alias files and the (primary) alias
6731 file for mail delivery, the file
6733 /usr/local/lib/mh/MailAliases
6735 It does not describe aliases files used by the message transport
6736 system. Each line of the alias file has the format:
6738 alias : address-group
6740 alias ; address-group
6748 address-group := address-list
6754 address-list := address
6755 | address-list, address
6757 Continuation lines in alias files end with `\' followed by the new-
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.
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
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
6774 \e9 [mh.6] MH.6.7 UCI version
6784 MH-ALIAS(5) -104- MH-ALIAS(5)
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.
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.
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.
6802 In match, a trailing * on an alias will match just about anything
6803 appropriate. (See example below.)
6805 An approximation of the way aliases are resolved at posting time is
6806 (it's not really done this way):
6808 1) Build a list of all addresses from the message to be
6809 delivered, eliminating duplicate addresses.
6811 2) If this draft originated on the local host, then for those
6812 addresses in the message that have no host specified, perform
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.)
6826 Since the alias file is read line by line, forward references work,
6827 but backward references are not recognized, thus, there is no
6831 </usr/local/lib/mh/BBoardAliases
6832 sgroup: fred, fear, freida
6834 UNIX-committee: <unix.aliases
6840 [mh.6] MH.6.7 UCI version
6850 MH-ALIAS(5) -105- MH-ALIAS(5)
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".
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.
6875 _
\bH_
\be_
\bl_
\bp_
\bf_
\bu_
\bl _
\bH_
\bi_
\bn_
\bt_
\bs
6877 To use aliasing in _
\bM_
\bH quickly, do the following:
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:
6884 Second, create the file "aliases" in your _
\bM_
\bH directory.
6886 Third, start adding aliases to your "aliases" file as
6889 _
\bF_
\bi_
\bl_
\be_
\bs
6890 /usr/local/lib/mh/MailAliases Primary alias file
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
6897 _
\bS_
\be_
\be _
\bA_
\bl_
\bs_
\bo
6898 ali(1), send(1), whom(1), group(5), passwd(5), conflict(8), post(8)
6901 _
\bD_
\be_
\bf_
\ba_
\bu_
\bl_
\bt_
\bs
6905 \e9 [mh.6] MH.6.7 UCI version
6915 MH-ALIAS(5) -106- MH-ALIAS(5)
6918 _
\bC_
\bo_
\bn_
\bt_
\be_
\bx_
\bt
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.
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.
6970 \e9 [mh.6] MH.6.7 UCI version
6980 MH-FORMAT(5) -107- MH-FORMAT(5)
6984 mh-format - format file for MH message system
6986 _
\bS_
\bY_
\bN_
\bO_
\bP_
\bS_
\bI_
\bS
6987 some _
\bM_
\bH commands
6989 _
\bD_
\bE_
\bS_
\bC_
\bR_
\bI_
\bP_
\bT_
\bI_
\bO_
\bN
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.
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
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
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.
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.
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.
7035 \e9 [mh.6] MH.6.7 UCI version
7045 MH-FORMAT(5) -108- MH-FORMAT(5)
7048 _
\bC_
\bo_
\bn_
\bt_
\br_
\bo_
\bl-_
\bf_
\bl_
\bo_
\bw _
\be_
\bs_
\bc_
\ba_
\bp_
\be_
\bs
7050 A _
\bc_
\bo_
\bn_
\bt_
\br_
\bo_
\bl escape is one of: `%<', `%?', `%|', or `%>'. These are
7051 combined into the conditional execution construct:
7054 _
\bf_
\bo_
\br_
\bm_
\ba_
\bt _
\bt_
\be_
\bx_
\bt _
\b1
7056 _
\bf_
\bo_
\br_
\bm_
\ba_
\bt _
\bt_
\be_
\bx_
\bt _
\b2
7058 _
\bf_
\bo_
\br_
\bm_
\ba_
\bt _
\bt_
\be_
\bx_
\bt _
\b3
7061 _
\bf_
\bo_
\br_
\bm_
\ba_
\bt _
\bt_
\be_
\bx_
\bt _
\bN
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.
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:
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).
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 `%>'
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.
7100 \e9 [mh.6] MH.6.7 UCI version
7110 MH-FORMAT(5) -109- MH-FORMAT(5)
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
7119 _
\bF_
\bu_
\bn_
\bc_
\bt_
\bi_
\bo_
\bn _
\be_
\bs_
\bc_
\ba_
\bp_
\be_
\bs
7121 Most functions expect an argument of a particular type:
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}))
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,
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.
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.
7149 _
\bR_
\be_
\bt_
\bu_
\br_
\bn _
\bv_
\ba_
\bl_
\bu_
\be_
\bs
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.)
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
7165 \e9 [mh.6] MH.6.7 UCI version
7175 MH-FORMAT(5) -110- MH-FORMAT(5)
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
7210 These functions require a date component as an argument:
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?
7231 [mh.6] MH.6.7 UCI version
7241 MH-FORMAT(5) -111- MH-FORMAT(5)
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
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.
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,
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
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,
7283 %<(mymbox{from}) To: %{to}%>
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:".
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.
7297 [mh.6] MH.6.7 UCI version
7307 MH-FORMAT(5) -112- MH-FORMAT(5)
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.
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.
7333 The available output width is kept in an internal register; any
7334 output past this width will be truncated.
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
7340 %4(putnumf(msg))%<(cur)+%| %>%<{replied}-%| %>
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:
7347 %02(putnumf(mon{date}))/%02(putnumf(mday{date}))
7349 the month and date are printed in two digits (zero filled)
7350 separated by a slash. Next,
7354 If a "Date:" field was present, then a space is printed, otherwise
7357 %<(mymbox{from})To:%14(putstrf(friendly{to}))
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-
7363 [mh.6] MH.6.7 UCI version
7373 MH-FORMAT(5) -113- MH-FORMAT(5)
7376 %|%17(putstrf(friendly{from}))%>
7378 if the message isn't from me, then the print the "From:" address is
7379 printed. And finally,
7381 %{subject}%<{body}<<%{body}%>
7383 the subject and initial body (if any) are printed.
7385 For a more complicated example, next consider the default _
\br_
\be_
\bp_
\bl_
\bc_
\bo_
\bm_
\bp_
\bs
7388 %(lit)%(formataddr %<{reply-to}%|
7390 This clears _
\bs_
\bt_
\br and formats the "Reply-To:" header if present. If
7391 not present, the else clause is executed:
7393 %<{from}%|%<{sender}%|%<{return-path}%>%>%>%>)\
7395 This formats the "From:", "Sender:" and "Return-Path:" headers,
7396 stopping as soon as one of them is present. Next:
7398 %<(nonnull)%(void(width))%(putaddr To: )\n%>\
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
7404 %(lit)%(formataddr{to})%(formataddr{cc})%(formataddr(me))\
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.
7410 %<(nonnull)%(void(width))%(putaddr cc: )\n%>\
7412 If the result is non-null, it is printed as above with a leading
7415 %<{fcc}Fcc: %{fcc}\n%>\
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.
7420 %<{subject}Subject: Re: %{subject}\n%>\
7422 If a subject component was present, a suitable reply subject is
7425 %<{date}In-reply-to: Your message of "\
7426 %<(nodate{date})%{date}%|%(tws{date})%>."%<{message-id}
7427 %{message-id}%>\n%>\
7429 [mh.6] MH.6.7 UCI version
7439 MH-FORMAT(5) -114- MH-FORMAT(5)
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.
7450 This last part is a good example for a little more elaboration.
7451 Here's that part again in pseudo-code:
7453 if (comp_exists(date)) then
7454 print ("In-reply-to: Your message of \"")
7455 if (not_date_string(date.value) then
7458 print (rfc822(date.value))
7461 if (comp_exists(message-id)) then
7463 print (message-id.value)
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.
7472 _
\bF_
\bi_
\bl_
\be_
\bs
7476 _
\bP_
\br_
\bo_
\bf_
\bi_
\bl_
\be _
\bC_
\bo_
\bm_
\bp_
\bo_
\bn_
\be_
\bn_
\bt_
\bs
7480 _
\bS_
\be_
\be _
\bA_
\bl_
\bs_
\bo
7481 scan(1), repl(1), ap(8), dp(8)
7484 _
\bD_
\be_
\bf_
\ba_
\bu_
\bl_
\bt_
\bs
7488 _
\bC_
\bo_
\bn_
\bt_
\be_
\bx_
\bt
7494 \e9 [mh.6] MH.6.7 UCI version
7504 MH-FORMAT(5) -115- MH-FORMAT(5)
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
7514 On hosts where _
\bM_
\bH was configured with the BERK option, address
7515 parsing is not enabled.
7559 \e9 [mh.6] MH.6.7 UCI version
7569 MH-MAIL(5) -116- MH-MAIL(5)
7573 mh-mail - message format for MH message system
7575 _
\bS_
\bY_
\bN_
\bO_
\bP_
\bS_
\bI_
\bS
7576 any _
\bM_
\bH command
7578 _
\bD_
\bE_
\bS_
\bC_
\bR_
\bI_
\bP_
\bT_
\bI_
\bO_
\bN
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.
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.
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.
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:
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.
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.
7623 The text for most formatted components (e.g., "Date:" and
7625 [mh.6] MH.6.7 UCI version
7635 MH-MAIL(5) -117- MH-MAIL(5)
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.
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.
7649 Following is a list of header components that are considered mean-
7650 ingful to various MH programs.
7652 Added by _
\bp_
\bo_
\bs_
\bt (8), contains date and time of the message's
7653 entry into the transport system.
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
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:"
7669 Contains addresses of primary recipients.
7672 Contains addresses of secondary recipients.
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).
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
7686 A unique message identifier added by _
\bp_
\bo_
\bs_
\bt (8) if the `-msgid'
7691 [mh.6] MH.6.7 UCI version
7701 MH-MAIL(5) -118- MH-MAIL(5)
7704 Sender's commentary. It is displayed by _
\bs_
\bc_
\ba_
\bn (1).
7707 A commentary line added by _
\br_
\be_
\bp_
\bl (1) when replying to a mes-
7711 Added when redistributing a message by _
\bp_
\bo_
\bs_
\bt (8).
7714 Added when redistributing a message by _
\bp_
\bo_
\bs_
\bt (8).
7717 New recipients for a message resent by _
\bd_
\bi_
\bs_
\bt (1).
7720 Still more recipients. See "cc:" and "Resent-To:".
7723 Even more recipients. See "Bcc:" and "Resent-To:".
7726 Copy resent message into a folder. See "Fcc:" and
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:".
7734 Annotation for _
\bd_
\bi_
\bs_
\bt (1) under the `-annotate' option.
7737 Annotation for _
\bf_
\bo_
\br_
\bw (1) under the `-annotate' option.
7740 Annotation for _
\br_
\be_
\bp_
\bl (1) under the `-annotate' option.
7743 _
\bF_
\bi_
\bl_
\be_
\bs
7744 /usr/spool/mail/$USER Location of mail drop
7747 _
\bP_
\br_
\bo_
\bf_
\bi_
\bl_
\be _
\bC_
\bo_
\bm_
\bp_
\bo_
\bn_
\be_
\bn_
\bt_
\bs
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
7756 \e9 [mh.6] MH.6.7 UCI version
7766 MH-MAIL(5) -119- MH-MAIL(5)
7769 _
\bD_
\be_
\bf_
\ba_
\bu_
\bl_
\bt_
\bs
7773 _
\bC_
\bo_
\bn_
\bt_
\be_
\bx_
\bt
7821 \e9 [mh.6] MH.6.7 UCI version
7831 MH-PROFILE(5) -120- MH-PROFILE(5)
7835 .mh_profile - user customization for MH message system
7837 _
\bS_
\bY_
\bN_
\bO_
\bP_
\bS_
\bI_
\bS
7838 any _
\bM_
\bH command
7840 _
\bD_
\bE_
\bS_
\bC_
\bR_
\bI_
\bP_
\bT_
\bI_
\bO_
\bN
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
7847 _
\bp_
\br_
\bo_
\bf_
\bi_
\bl_
\be-_
\bc_
\bo_
\bm_
\bp_
\bo_
\bn_
\be_
\bn_
\bt: _
\bv_
\ba_
\bl_
\bu_
\be
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
7857 Locates _
\bM_
\bH transactions in directory "Mail". (profile,
7861 Declares the location of the _
\bM_
\bH context file, see the
7862 HISTORY section below. (profile, default:
7865 Current-Folder: inbox
7866 Keeps track of the current open folder. (context,
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)
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)
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
7887 [mh.6] MH.6.7 UCI version
7897 MH-PROFILE(5) -121- MH-PROFILE(5)
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)
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)
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)
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)
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)
7925 Defines protection bits for folder directories. (pro-
7926 file, default: 0711)
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)
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
7946 Tells _
\bb_
\bb_
\bc which BBoards you are interested in. (profile,
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)
7953 [mh.6] MH.6.7 UCI version
7963 MH-PROFILE(5) -122- MH-PROFILE(5)
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)
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)
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)
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)
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)
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)
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)
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,
8018 \e9 [mh.6] MH.6.7 UCI version
8028 MH-PROFILE(5) -123- MH-PROFILE(5)
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.
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
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
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.
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.
8065 _
\bM_
\bH programs also support other envariables:
8067 $MAILDROP : tells _
\bi_
\bn_
\bc the default maildrop
8068 This supercedes the "MailDrop:" profile entry.
8070 $SIGNATURE : tells _
\bs_
\be_
\bn_
\bd and _
\bp_
\bo_
\bs_
\bt your mail signature
8071 This supercedes the "Signature:" profile entry.
8073 $HOME : tells all _
\bM_
\bH programs your home directory
8075 $SHELL : tells _
\bb_
\bb_
\bl the default shell to run
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.
8083 \e9 [mh.6] MH.6.7 UCI version
8093 MH-PROFILE(5) -124- MH-PROFILE(5)
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.
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.
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.
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
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
8149 [mh.6] MH.6.7 UCI version
8159 MH-PROFILE(5) -125- MH-PROFILE(5)
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.
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>
8182 _
\bP_
\br_
\bo_
\bf_
\bi_
\bl_
\be _
\bC_
\bo_
\bm_
\bp_
\bo_
\bn_
\be_
\bn_
\bt_
\bs
8186 _
\bS_
\be_
\be _
\bA_
\bl_
\bs_
\bo
8190 _
\bD_
\be_
\bf_
\ba_
\bu_
\bl_
\bt_
\bs
8194 _
\bC_
\bo_
\bn_
\bt_
\be_
\bx_
\bt
8214 \e9 [mh.6] MH.6.7 UCI version
8224 MH-PROFILE(5) -126- MH-PROFILE(5)
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.
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.
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.
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.
8279 \e9 [mh.6] MH.6.7 UCI version
8289 MH-PROFILE(5) -127- MH-PROFILE(5)
8293 The shell quoting conventions are not available in the .mh_profile.
8294 Each token is separated by whitespace.
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.
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).
8317 Finally, the _
\bc_
\bs_
\bh user could create an alias for the command of the
8320 alias cmd 'cmd arg1 arg2 ...'
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)
8344 \e9 [mh.6] MH.6.7 UCI version
8354 MH-SEQUENCE(5) -128- MH-SEQUENCE(5)
8358 mh-sequence - sequence specification for MH message system
8360 _
\bS_
\bY_
\bN_
\bO_
\bP_
\bS_
\bI_
\bS
8361 most _
\bM_
\bH commands
8363 _
\bD_
\bE_
\bS_
\bC_
\bR_
\bI_
\bP_
\bT_
\bI_
\bO_
\bN
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:
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"
8377 In commands that take a `msg' argument, the default is "cur". As a
8378 shorthand, "." is equivalent to "cur".
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.
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
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
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".
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'.
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
8410 [mh.6] MH.6.7 UCI version
8420 MH-SEQUENCE(5) -129- MH-SEQUENCE(5)
8423 specification of the message.
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
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.
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.
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'.
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
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.
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
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.
8471 _
\bS_
\be_
\bq_
\bu_
\be_
\bn_
\bc_
\be _
\bN_
\be_
\bg_
\ba_
\bt_
\bi_
\bo_
\bn
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
8476 [mh.6] MH.6.7 UCI version
8486 MH-SEQUENCE(5) -130- MH-SEQUENCE(5)
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:
8495 Sequence-Negation: not
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
8501 Obviously, the user should beware of defining sequences with names
8502 that begin with the value of the "Sequence-Negation" profile entry.
8505 _
\bT_
\bh_
\be _
\bP_
\br_
\be_
\bv_
\bi_
\bo_
\bu_
\bs _
\bS_
\be_
\bq_
\bu_
\be_
\bn_
\bc_
\be
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
8515 Previous-Sequence: pseq
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.
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
8528 _
\bT_
\bh_
\be _
\bU_
\bn_
\bs_
\be_
\be_
\bn _
\bS_
\be_
\bq_
\bu_
\be_
\bn_
\bc_
\be
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
8539 Unseen-Sequence: unseen
8541 \e9 [mh.6] MH.6.7 UCI version
8551 MH-SEQUENCE(5) -131- MH-SEQUENCE(5)
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.
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.
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>
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
8575 _
\bS_
\be_
\be _
\bA_
\bl_
\bs_
\bo
8576 mh(1), mark(1), pick(1), mh-profile(5)
8579 _
\bD_
\be_
\bf_
\ba_
\bu_
\bl_
\bt_
\bs
8583 _
\bC_
\bo_
\bn_
\bt_
\be_
\bx_
\bt
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-
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.
8606 \e9 [mh.6] MH.6.7 UCI version
8620 ap - parse addresses 822-style
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 ...
8627 _
\bD_
\bE_
\bS_
\bC_
\bR_
\bI_
\bP_
\bT_
\bI_
\bO_
\bN
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.
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
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.
8644 In addition to the standard escapes, _
\ba_
\bp also recognizes the follow-
8645 ing additional escape:
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
8650 If the `-normalize' switch is given, _
\ba_
\bp will try to track down the
8651 official hostname of the address.
8653 Here is the default format string used by _
\ba_
\bp:
8655 %<{error}%{error}: %{text}%|%(putstr(proper{text}))%>
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
8661 _
\bF_
\bi_
\bl_
\be_
\bs
8662 $HOME/.mh_profile The user profile
8663 /usr/local/lib/mh/mtstailor tailor file
8666 _
\bP_
\br_
\bo_
\bf_
\bi_
\bl_
\be _
\bC_
\bo_
\bm_
\bp_
\bo_
\bn_
\be_
\bn_
\bt_
\bs
8671 \e9 [mh.6] MH.6.7 UCI version
8684 _
\bS_
\be_
\be _
\bA_
\bl_
\bs_
\bo
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
8690 _
\bD_
\be_
\bf_
\ba_
\bu_
\bl_
\bt_
\bs
8691 `-format' defaults as described above
8693 `-width' defaults to the width of the terminal
8696 _
\bC_
\bo_
\bn_
\bt_
\be_
\bx_
\bt
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.
8705 On hosts where _
\bM_
\bH was configured with the BERK option, address
8706 parsing is not enabled.
8736 \e9 [mh.6] MH.6.7 UCI version
8746 CONFLICT(8) -134- CONFLICT(8)
8750 conflict - search for alias/password conflicts
8752 _
\bS_
\bY_
\bN_
\bO_
\bP_
\bS_
\bI_
\bS
8753 /usr/local/lib/mh/conflict [-mail name] [-search directory]
8754 [aliasfiles...] [-help]
8756 _
\bD_
\bE_
\bS_
\bC_
\bR_
\bI_
\bP_
\bT_
\bI_
\bO_
\bN
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
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
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
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.
8778 _
\bC_
\bo_
\bn_
\bf_
\bl_
\bi_
\bc_
\bt should be run under _
\bc_
\br_
\bo_
\bn (8), or whenever system account-
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
8789 _
\bP_
\br_
\bo_
\bf_
\bi_
\bl_
\be _
\bC_
\bo_
\bm_
\bp_
\bo_
\bn_
\be_
\bn_
\bt_
\bs
8793 _
\bS_
\be_
\be _
\bA_
\bl_
\bs_
\bo
8797 _
\bD_
\be_
\bf_
\ba_
\bu_
\bl_
\bt_
\bs
8798 `aliasfiles' defaults to /usr/local/lib/mh/MailAliases
8801 \e9 [mh.6] MH.6.7 UCI version
8811 CONFLICT(8) -135- CONFLICT(8)
8814 _
\bC_
\bo_
\bn_
\bt_
\be_
\bx_
\bt
8866 \e9 [mh.6] MH.6.7 UCI version
8880 dp - parse dates 822-style
8882 _
\bS_
\bY_
\bN_
\bO_
\bP_
\bS_
\bI_
\bS
8883 /usr/local/lib/mh/dp [-form formatfile] [-format string]
8884 [-width columns] dates ... [-help]
8886 _
\bD_
\bE_
\bS_
\bC_
\bR_
\bI_
\bP_
\bT_
\bI_
\bO_
\bN
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.
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.
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.
8903 Here is the default format string used by _
\bd_
\bp:
8905 %<(nodate{text})error: %{text}%|%(putstr(pretty{text}))%>
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
8911 _
\bF_
\bi_
\bl_
\be_
\bs
8912 $HOME/.mh_profile The user profile
8915 _
\bP_
\br_
\bo_
\bf_
\bi_
\bl_
\be _
\bC_
\bo_
\bm_
\bp_
\bo_
\bn_
\be_
\bn_
\bt_
\bs
8919 _
\bS_
\be_
\be _
\bA_
\bl_
\bs_
\bo
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
8925 _
\bD_
\be_
\bf_
\ba_
\bu_
\bl_
\bt_
\bs
8926 `-format' default as described above
8927 `-width' default to the width of the terminal
8931 \e9 [mh.6] MH.6.7 UCI version
8944 _
\bC_
\bo_
\bn_
\bt_
\be_
\bx_
\bt
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.
8996 \e9 [mh.6] MH.6.7 UCI version
9006 INSTALL-MH(8) -138- INSTALL-MH(8)
9010 install-mh - initialize the MH environment
9012 _
\bS_
\bY_
\bN_
\bO_
\bP_
\bS_
\bI_
\bS
9013 /usr/local/lib/mh/install-mh [-auto] [-compat]
9015 _
\bD_
\bE_
\bS_
\bC_
\bR_
\bI_
\bP_
\bT_
\bI_
\bO_
\bN
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.
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.
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.
9035 _
\bF_
\bi_
\bl_
\be_
\bs
9036 $HOME/.mh_profile The user profile
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
9043 _
\bC_
\bo_
\bn_
\bt_
\be_
\bx_
\bt
9044 With `-auto', the current folder is changed to "inbox".
9061 \e9 [mh.6] MH.6.7 UCI version
9071 POST(8) -139- POST(8)
9075 post - deliver a message
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]
9083 _
\bD_
\bE_
\bS_
\bC_
\bR_
\bI_
\bP_
\bT_
\bI_
\bO_
\bN
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.
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
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
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.
9117 The `-msgid' switch indicates that a "Message-ID:" or
9118 "Resent-Message-ID:" field should be added to the header.
9120 The `-verbose' switch indicates that the user should be informed of
9121 each step of the posting/filing process.
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"
9127 [mh.6] MH.6.7 UCI version
9137 POST(8) -140- POST(8)
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.
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
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
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
9157 mhmail(1), send(1), mh-mail(5), mh-alias(5)
9160 _
\bD_
\be_
\bf_
\ba_
\bu_
\bl_
\bt_
\bs
9161 `-alias /usr/local/lib/mh/MailAliases'
9169 _
\bC_
\bo_
\bn_
\bt_
\be_
\bx_
\bt
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.
9192 \e9 [mh.6] MH.6.7 UCI version
9205 _
\b5. _
\bR_
\bE_
\bP_
\bO_
\bR_
\bT_
\bI_
\bN_
\bG _
\bP_
\bR_
\bO_
\bB_
\bL_
\bE_
\bM_
\bS
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,
9221 version: MH 6.1 #1[UCI] (nrtc-gremlin) of Wed Nov 6 01:13:53 PST
9223 options: [BSD42] [MHE] [NETWORK] [SENDMTS] [MMDFII] [SMTP] [POP]
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.
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.
9270 _
\b6. _
\bA_
\bD_
\bV_
\bA_
\bN_
\bC_
\bE_
\bD _
\bF_
\bE_
\bA_
\bT_
\bU_
\bR_
\bE_
\bS
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.
9280 \e9 _
\bU_
\bS_
\bE_
\bR-_
\bD_
\bE_
\bF_
\bI_
\bN_
\bE_
\bD _
\bS_
\bE_
\bQ_
\bU_
\bE_
\bN_
\bC_
\bE_
\bS
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-
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'.
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.
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
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,
9310 pick -from frated -seq fred
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
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
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
9340 pick -from frated -seq sgroup
9341 pick -from fear -seq sgroup -nozero
9342 pick -from freida -seq sgroup -nozero
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:
9350 pick -from frated -seq fred
9351 pick -before friday -seq fred fred
9353 This example defines the sequence called "fred" as exactly those mes-
9354 sages from "frated" that were dated prior to "friday".[1]
9356 _
\bP_
\bi_
\bc_
\bk is normally used as a back-quoted command, for example,
9358 scan `pick -from postmaster`
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,
9366 pick: -seq select -list
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
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:
9376 pick -from frated -or -from fear -or -from freida -seq sgroup
9380 pick -from frated -and -before friday -seq fred
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-
9400 makes _
\bp_
\bi_
\bc_
\bk define the "select" sequence and otherwise behave exactly as
9401 if there was no profile entry at all.
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
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
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
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.
9424 _
\bS_
\be_
\bq_
\bu_
\be_
\bn_
\bc_
\be _
\bN_
\be_
\bg_
\ba_
\bt_
\bi_
\bo_
\bn
9426 In addition to telling an _
\bM_
\bH command to use the messages in the
9427 sequence "seen", as in
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
9435 mark -delete -zero seen -seq notseen
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
9443 Sequence-Negation: not
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,
9451 does just that. The value of the "Sequence-Negation:" entry in the
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.
9476 _
\bT_
\bh_
\be _
\bP_
\br_
\be_
\bv_
\bi_
\bo_
\bu_
\bs _
\bS_
\be_
\bq_
\bu_
\be_
\bn_
\bc_
\be
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
9488 Previous-Sequence: pseq
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).
9498 _
\bT_
\bh_
\be _
\bU_
\bn_
\bs_
\be_
\be_
\bn _
\bS_
\be_
\bq_
\bu_
\be_
\bn_
\bc_
\be
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
9508 Unseen-Sequence: unseen
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.
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.
9531 _
\bC_
\bO_
\bM_
\bP_
\bO_
\bS_
\bI_
\bT_
\bI_
\bO_
\bN _
\bO_
\bF _
\bM_
\bA_
\bI_
\bL
9533 There are a number of interesting advanced facilities for the com-
9534 position of outgoing mail.
9537 _
\bT_
\bh_
\be _
\bD_
\br_
\ba_
\bf_
\bt _
\bF_
\bo_
\bl_
\bd_
\be_
\br
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.
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'.
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).
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,
9571 send -draftf +drafts first
9575 send -draftf +drafts -draftm first
9579 \e9 [2] This may appear to be inconsistent, at first, but it saves a lot
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:
9599 Draft-Folder: +drafts
9600 sendf: -draftfolder +drafts
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
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
9618 Or, if more editing was required, the draft could be edited with
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:
9628 comp -use `pick +drafts -to bug-mh`
9632 sendf `pick +drafts -to bug-mh`
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.
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.
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:
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.
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
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
9674 Draft ``/usr/src/uci/mh/mhbox/draft'' exists (xx bytes).
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.
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
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.
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-
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
9705 \e9 [3] Obviously, if the folder appeared in the context of a standard
9706 `+folder' argument to an _
\bM_
\bH program, as in
9710 it might become the current folder, depending on the context changes of
9711 the _
\bM_
\bH program in question.
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.
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.
9743 _
\bO_
\bp_
\bt_
\bi_
\bo_
\bn_
\bs _
\ba_
\bt _
\bW_
\bh_
\ba_
\bt _
\bn_
\bo_
\bw? _
\bL_
\be_
\bv_
\be_
\bl
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.
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.
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
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.
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
9777 _
\bD_
\bi_
\bg_
\be_
\bs_
\bt_
\bs
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.
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
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:
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
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.
9815 The default components file used by _
\bf_
\bo_
\br_
\bw when in digest mode is:
9817 From: %{digest}-Request
9818 To: %{digest} Distribution: dist-%{digest};
9819 Subject: %{digest} Digest V%(cur) #%(msg)
9822 %{digest} Digest %(weekday{date}), %2(mday{date}) %(month{date}) 19%02(year{date})
9823 Volume %(cur) : Issue %(msg)
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.
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:
9857 width=80,overflowoffset=10
9858 leftadjust,compress,compwidth=9
9859 Date:formatfield="%<(nodate{text})%{text}%|%(tws{text})%>"
9863 body:nocomponent,overflowoffset=0,noleftadjust,nocompress
9867 \e9 _
\bF_
\bO_
\bL_
\bD_
\bE_
\bR _
\bH_
\bA_
\bN_
\bD_
\bL_
\bI_
\bN_
\bG
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.
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
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
9884 scan +mh/mh.4/draft/flames
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
9896 would do the trick handily. In addition, if the current folder _
\bw_
\ba_
\bs
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.
9922 _
\bT_
\bh_
\be _
\bF_
\bo_
\bl_
\bd_
\be_
\br-_
\bS_
\bt_
\ba_
\bc_
\bk
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,
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,
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:
9938 exec folder -push $@
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
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.
9988 _
\bC_
\bO_
\bM_
\bM_
\bA_
\bN_
\bD _
\bS_
\bU_
\bM_
\bM_
\bA_
\bR_
\bY
9992 \e9 ali [-alias aliasfile] [-list] [-nolist] [-normalize]
9993 [-nonormalize] [-user] [-nouser] aliases ... [-help]
9995 anno [+folder] [msgs] [-component field] [-inplace] [-noinplace]
9996 [-date] [-nodate] [-text body] [-help]
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]
10004 burst [+folder] [msgs] [-inplace] [-noinplace] [-quiet] [-noquiet]
10005 [-verbose] [-noverbose] [-help]
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]
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]
10017 folder [+folder] [msg] [-all] [-fast] [-nofast] [-header]
10018 [-noheader] [-pack] [-nopack] [-recurse] [-norecurse] [-total]
10019 [-nototal] [-print] [-noprint] [-list] [-nolist] [-push]
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]
10030 forw [+folder] [msgs] [-digest list] [-issue number]
10031 [-volume number] [other switches for _
\bf_
\bo_
\br_
\bw] [-help]
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]
10058 mark [+folder] [msgs] [-sequence name ...] [-add] [-delete] [-list]
10059 [-public] [-nopublic] [-zero] [-nozero] [-help]
10061 /usr/local/lib/mh/mhl [-bell] [-nobell] [-clear] [-noclear]
10062 [-folder +folder] [-form formfile] [-length lines]
10063 [-width columns] [-moreproc program] [-nomoreproc] [files ...]
10066 mhmail [ addrs ... [-body text] [-cc addrs ...] [-from addr]
10067 [-subject subject]] [-help]
10069 mhpath [+folder] [msgs] [-help]
10071 msgchk [-date] [-nodate] [-notify all/mail/nomail]
10072 [-nonotify all/mail/nomail] [-host host] [-user user] [-rpop]
10073 [-norpop] [users ...] [-help]
10075 msh [-prompt string] [-scan] [-noscan] [-topcur] [-notopcur] [file]
10078 next [+folder] [-header] [-noheader] [-showproc program]
10079 [-noshowproc] [switches for _
\bs_
\bh_
\bo_
\bw_
\bp_
\br_
\bo_
\bc] [-help]
10081 packf [+folder] [msgs] [-file name] [-help]
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]
10089 prev [+folder] [-header] [-noheader] [-showproc program]
10090 [-noshowproc] [switches for _
\bs_
\bh_
\bo_
\bw_
\bp_
\br_
\bo_
\bc] [-help]
10092 prompter [-erase chr] [-kill chr] [-prepend] [-noprepend] [-rapid]
10093 [-norapid] [-doteof] [-nodoteof] file [-help]
10095 /usr/local/lib/mh/rcvstore [+folder] [-create] [-nocreate]
10096 [-sequence name ...] [-public] [-nopublic] [-zero] [-nozero]
10117 refile [msgs] [-draft] [-link] [-nolink] [-preserve] [-nopreserve]
10118 [-src +folder] [-file file] +folder ... [-help]
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]
10128 rmf [+folder] [-interactive] [-nointeractive] [-help]
10130 rmm [+folder] [msgs] [-help]
10132 scan [+folder] [msgs] [-clear] [-noclear] [-form formatfile]
10133 [-format string] [-header] [-noheader] [-width columns]
10134 [-reverse] [-noreverse] [-file filename] [-help]
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]
10142 show [+folder] [msgs] [-draft] [-header] [-noheader]
10143 [-showproc program] [-noshowproc] [switches for _
\bs_
\bh_
\bo_
\bw_
\bp_
\br_
\bo_
\bc]
10146 sortm [+folder] [msgs] [-datefield field] [-textfield field]
10147 [-notextfield] [-limit days] [-nolimit] [-verbose]
10148 [-noverbose] [-help]
10150 vmh [-prompt string] [-vmhproc program] [-novmhproc]
10151 [switches for _
\bv_
\bm_
\bh_
\bp_
\br_
\bo_
\bc] [-help]
10153 whatnow [-draftfolder +folder] [-draftmessage msg] [-nodraftfolder]
10154 [-editor editor] [-noedit] [-prompt string] [file] [-help]
10156 whom [-alias aliasfile] [-check] [-nocheck] [-draft]
10157 [-draftfolder +folder] [-draftmessage msg] [-nodraftfolder]
10160 /usr/local/lib/mh/ap [-form formatfile] [-format string]
10161 [-normalize] [-nonormalize] [-width columns] addrs ...
10182 /usr/local/lib/mh/conflict [-mail name] [-search directory]
10183 [aliasfiles ...] [-help]
10185 /usr/local/lib/mh/dp [-form formatfile] [-format string]
10186 [-width columns] dates ... [-help]
10188 /usr/local/lib/mh/install-mh [-auto] [-compat]
10190 /usr/local/lib/mh/post [-alias aliasfile] [-filter filterfile]
10191 [-nofilter] [-format] [-noformat] [-msgid] [-nomsgid]
10192 [-verbose] [-noverbose] [-watch] [-nowatch] [-width columns]
10248 _
\bM_
\bE_
\bS_
\bS_
\bA_
\bG_
\bE _
\bN_
\bA_
\bM_
\bE _
\bB_
\bN_
\bF
10259 user-defined-sequence
10264 msg-name := "first" |
10271 msg-range := msg"-"msg |
10274 msg-sequence := msg":"signed-number
10276 signed-number := "+"<number> |
10280 user-defined-sequence := <alpha> |
10281 <alpha><alphanumeric>*
10284 Where <number> is a decimal number greater than zero.
10286 Msg-range specifies all of the messages in the given range and must not
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.
10294 User-defined sequences are defined and manipulated with the _
\bp_
\bi_
\bc_
\bk and
10295 _
\bm_
\ba_
\br_
\bk commands.
10312 _
\bR_
\bE_
\bF_
\bE_
\bR_
\bE_
\bN_
\bC_
\bE_
\bS
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.
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.
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.
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.
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-
10334 6. Crocker, D. H., "Standard for the Format of ARPA Internet Text Mes-
10335 sages," _
\bR_
\bF_
\bC_
\b8_
\b2_
\b2, August 1982.
10442 _
\bR_
\bE_
\bA_
\bD _
\bT_
\bH_
\bI_
\bS
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.
10451 In addition, the Regents of the University of California issue the
10452 following disclaimer in regard to the UCI version of _
\bM_
\bH:
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-
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.
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.
10480 _
\bH_
\bO_
\bW _
\bT_
\bO _
\bG_
\bE_
\bT _
\bM_
\bH
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:
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
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.
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:
10518 Regents of the University of California
10520 The distribution address is:
10522 Computing Support Group
10523 Attn: MH distribution
10524 Department of Information and Computer Science
10525 University of California, Irvine
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.
10572 _
\bF_
\bO_
\bR_
\bE_
\bW_
\bO_
\bR_
\bD
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.
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.
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.
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
10621 \e9 [1] UNIX is a trademark of AT&T Bell Laboratories.
10637 since the last major release.
10639 This manual is very large, as it describes a large, powerful system
10640 in gruesome detail. The important thing to remember is:
10643 _
\bD_
\bO_
\bN'_
\bT _
\bP_
\bA_
\bN_
\bI_
\bC[_
\b2]
10646 As explained in the tutorial, you really need to know only 5 commands to
10647 handle most of your mail.
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.
10686 \e9 [2] Note the large, _
\bf_
\br_
\bi_
\be_
\bn_
\bd_
\bl_
\by letters.
10702 _
\bA_
\bC_
\bK_
\bN_
\bO_
\bW_
\bL_
\bE_
\bD_
\bG_
\bM_
\bE_
\bN_
\bT_
\bS
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.
10721 This manual is based on the original _
\bM_
\bH manual written at RAND by
10722 Bruce Borden, Stockton Gaines, and Norman Shapiro.
10767 _
\bP_
\bR_
\bE_
\bF_
\bA_
\bC_
\bE
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.
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.
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.
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.
10807 This report was originally prepared as part of the RAND project
10808 entitled "Data Automation Research", sponsored by Project AIR FORCE.
10832 _
\bS_
\bU_
\bM_
\bM_
\bA_
\bR_
\bY
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.
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.
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.
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.
10897 _
\bC_
\bO_
\bN_
\bT_
\bE_
\bN_
\bT_
\bS
10902 READ THIS ......................................................... i
10904 FOREWORD .......................................................... iii
10906 ACKNOWLEDGMENTS ................................................... v
10908 PREFACE ........................................................... vi
10910 SUMMARY ........................................................... vii
10914 1. INTRODUCTION ............................................... 1
10916 2. OVERVIEW ................................................... 4
10918 3. TUTORIAL ................................................... 7
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
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
10985 5. REPORTING PROBLEMS ......................................... 141
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
11006 A. Command Summary ............................................ 153
11007 B. Message Name BNF ........................................... 157
11009 REFERENCES ........................................................ 158
11037 \e9 MESSAGE HANDLING
11061 Based on the original manual by
11063 Borden, Gaines, and Shapiro