]> diplodocus.org Git - nmh/blob - man/mh-profile.man
Fixed typo (NOTLSSW).
[nmh] / man / mh-profile.man
1 .TH MH-PROFILE %manext5% "December 21, 2014" "%nmhversion%"
2 .\"
3 .\" %nmhwarning%
4 .\"
5 .SH NAME
6 mh-profile \- user profile customization for nmh message handler
7 .SH DESCRIPTION
8 Each user of
9 .B nmh
10 is expected to have a file named
11 .I \&.mh\-profile
12 in his or her home directory. This file contains
13 a set of user parameters used by some or all of the
14 .B nmh
15 family of programs. Each entry in the file is of the format
16 .PP
17 .RS 5
18 .IR profile\-component ": " value
19 .RE
20 .PP
21 If the text of profile entry is long, you may extend it across several
22 real lines by indenting the continuation lines with leading spaces or tabs.
23 Comments may be introduced by a line starting with `#:':
24 .PP
25 .RS 5
26 .IR # ": "
27 This is a comment.
28 .RE
29 .PP
30 Blank lines are not permitted in
31 .IR \&.mh\-profile.
32 The shell quoting conventions are not available in the
33 .IR \&.mh\-profile ;
34 each token is separated by whitespace.
35 .SS "Standard Profile Entries"
36 The possible profile components are exemplified below. The only mandatory
37 entry is `Path:'. The others are optional; some have default values if
38 they are not present. In the notation used below, (profile, default)
39 indicates whether the information is kept in the user's
40 .B nmh
41 profile or
42 .B nmh
43 context, and indicates what the default value is. Note that a profile
44 component can only appear once. Multiple appearances with trigger a
45 warning that all appearances after the first are ignored.
46 .PP
47 Some MH programs, including
48 .BR mhbuild ,
49 .BR mhshow ,
50 and
51 .BR mhstore ,
52 have specific profile components that are described in their respective
53 man pages. Each component name begins with the name of the program and
54 is followed by a dash.
55 .PP
56 .BR Path :
57 Mail
58 .RS 5
59 Locates
60 .B nmh
61 transactions in directory \*(lqMail\*(rq. This is the
62 only mandatory profile entry. (profile, no default)
63 .RE
64 .PP
65 .BR context :
66 context
67 .RS 5
68 Declares the location of the
69 .B nmh
70 context file. This is overridden by the environment variable
71 MHCONTEXT.
72 See the
73 .B HISTORY
74 section below.
75 (profile, default: <nmh\-dir>/context)
76 .RE
77 .PP
78 .BR Current\-Folder :
79 inbox
80 .RS 5
81 Keeps track of the current open folder.
82 (context, default: folder specified by \*(lqInbox\*(rq)
83 .RE
84 .PP
85 .BR Inbox :
86 inbox
87 .RS 5
88 Defines the name of your default inbox.
89 (profile, default: inbox)
90 .RE
91 .PP
92 .BR Previous\-Sequence :
93 .I pseq
94 .RS 5
95 Names the sequence or sequences which should be defined as the `msgs' or
96 `msg' argument given to any
97 .B nmh
98 command. If not present or empty,
99 no such sequences are defined. Otherwise, for each name given, the
100 sequence is first zero'd and then each message is added to the sequence.
101 Read the
102 .IR mh\-sequence (5)
103 man page for the details about this sequence. (profile, no default)
104 .RE
105 .PP
106 .BR Sequence\-Negation :
107 not
108 .RS 5
109 Defines the string which, when prefixed to a sequence name, negates
110 that sequence. Hence, \*(lqnotseen\*(rq means all those messages that
111 are not a member of the sequence \*(lqseen\*(rq. Read the
112 .IR mh\-sequence (5)
113 man page for the details. (profile, no default)
114 .RE
115 .PP
116 .BR Unseen\-Sequence :
117 unseen
118 .RS 5
119 Names the sequence or sequences which should be defined as those
120 messages which are unread. The commands
121 .BR inc ,
122 .BR rcvstore ,
123 .BR mhshow ,
124 and
125 .B show
126 will add or remove messages from these
127 sequences when they are incorporated or read. If not present or
128 empty, no such sequences are defined. Otherwise, each message is
129 added to, or removed from, each sequence name given. Read the
130 .IR mh\-sequence (5)
131 man page for the details about this sequence.
132 (profile, no default)
133 .RE
134 .PP
135 .BR mh\-sequences :
136 \&.mh\-sequences
137 .RS 5
138 The name of the file in each folder which defines public sequences.
139 To disable the use of public sequences, leave the value portion of this
140 entry blank. (profile, default: \&.mh\-sequences)
141 .RE
142 .PP
143 .BI atr\- seq \- folder :
144 172\0178\-181\0212
145 .RS 5
146 Keeps track of the private sequence called \*(lqseq\*(rq in the specified
147 folder. Private sequences are generally used for read\-only folders.
148 See the
149 .IR mh\-sequence (5)
150 man page for details about private sequences.
151 (context, no default)
152 .RE
153 .PP
154 .BR Editor :
155 vi
156 .RS 5
157 Defines the editor to be used by the commands
158 .BR comp ,
159 .BR dist ,
160 .BR forw ,
161 and
162 .BR repl .
163 If not set in profile the value will be taken from the VISUAL and
164 EDITOR environment variables.
165 (profile, default: vi)
166 .RE
167 .PP
168 .BR Msg\-Protect :
169 600
170 .RS 5
171 An octal number which defines the permission bits for new message files.
172 See
173 .IR chmod (1)
174 for an explanation of the octal number. Note that some filesystems,
175 such as FAT32, do not support removal of read file permissions.
176 (profile, default: 0600)
177 .RE
178 .PP
179 .BR Folder\-Protect :
180 700
181 .RS 5
182 An octal number which defines the permission bits for new folder
183 directories. See
184 .IR chmod (1)
185 for an explanation of the octal number.
186 (profile, default: 700)
187 .RE
188 .PP
189 .BR datalocking :
190 fcntl
191 .RS 5
192 The locking algorithm used to lock changes to any
193 .B nmh
194 data files, such as sequences or the context. The locking algorithm is
195 any one of the following entries:
196 .PP
197 .RS 5
198 .nf
199 %supported_locks%
200 .fi
201 .RE
202 .PP
203 Available locking algorithms can vary depending on what is supported by
204 the operating system. Note: currently transactional locking is only
205 supported on public sequences; see
206 .IR mh\-sequence (5)
207 for more information.
208 (profile, default: fcntl)
209 .RE
210 .PP
211 .IR program :
212 .I default switches
213 .RS 5
214 Sets default switches to be used whenever the mh program
215 .I program
216 is invoked. For example, one could override the \*(lqEditor:\*(rq profile
217 component when replying to messages by adding a component such as:
218 .PP
219 .RS 5
220 repl: \-editor /bin/ed
221 .RE
222 .PP
223 (profile, no defaults)
224 .RE
225 .PP
226 .IB lasteditor "-next:"
227 .I nexteditor
228 .RS 5
229 Names \*(lqnexteditor\*(rq to be the default editor after using
230 \*(lqlasteditor\*(rq. This takes effect at \*(lqWhat now?\*(rq prompt
231 in
232 .BR comp ,
233 .BR dist ,
234 .BR forw ,
235 and
236 .BR repl .
237 After editing
238 the draft with \*(lqlasteditor\*(rq, the default editor is set to be
239 \*(lqnexteditor\*(rq. If the user types \*(lqedit\*(rq without any
240 arguments to \*(lqWhat now?\*(rq, then \*(lqnexteditor\*(rq is used.
241 (profile, no default)
242 .RE
243 .PP
244 .BR Folder\-Stack :
245 .I folders
246 .RS 5
247 The contents of the folder-stack for the
248 .B folder
249 command.
250 (context, no default)
251 .RE
252 .PP
253 .BR Local\-Mailbox :
254 Your Username <user@some.host>
255 .RS 5
256 Tells the various MH tools what your local mailbox is. If set, will be used
257 by the default component files by tools like
258 .B comp
259 and
260 .B repl
261 to construct your default \*(lqFrom\*(rq header. The text used here will
262 be copied exactly to your From: header, so it should already be RFC 822
263 compliant. If this is set, the
264 .B Signature
265 profile entry is NOT used, so it should include a signature as well. (profile,
266 default: userid@local.hostname)
267 .RE
268 .PP
269 .BR Alternate\-Mailboxes :
270 mh@uci\-750a, bug-mh*
271 .RS 5
272 Tells
273 .B repl
274 and
275 .B scan
276 which addresses are really yours.
277 In this way,
278 .B repl
279 knows which addresses should be included in the
280 reply, and
281 scan
282 knows if the message really originated from you.
283 Addresses must be separated by a comma, and the hostnames listed should
284 be the \*(lqofficial\*(rq hostnames for the mailboxes you indicate, as
285 local nicknames for hosts are not replaced with their official site names.
286 For each address, if a host is not given, then that address on any host is
287 considered to be you. In addition, an asterisk (`*') may appear at either
288 or both ends of the mailbox and host to indicate wild-card matching.
289 (profile, default: your user-id)
290 .RE
291 .PP
292 .BR Aliasfile :
293 aliases
294 .I other-alias
295 .RS 5
296 Indicates aliases files for
297 .BR ali ,
298 .BR whom ,
299 and
300 .BR send .
301 This may be used instead of the
302 .B \-alias
303 .I file
304 switch. (profile, no default)
305 .RE
306 .PP
307 .BR Draft\-Folder :
308 drafts
309 .RS 5
310 Indicates a default draft folder for
311 .BR comp ,
312 .BR dist ,
313 .BR forw ,
314 .BR refile ,
315 and
316 .BR repl .
317 Read the
318 .IR mh\-draft (5)
319 man page for details. (profile, no default)
320 .RE
321 .PP
322 .BI digest\-issue\- list :
323 1
324 .RS 5
325 Tells
326 .B forw
327 the last issue of the last volume sent for the digest
328 .IR list .
329 (context, no default)
330 .RE
331 .PP
332 .BI digest\-volume\- list :
333 1
334 .RS 5
335 Tells
336 .B forw
337 the last volume sent for the digest
338 .IR list .
339 (context, no default)
340 .RE
341 .PP
342 .BR MailDrop :
343 \&.mail
344 .RS 5
345 Tells
346 .B inc
347 your maildrop, if different from the default. This is
348 superseded by the environment variable
349 MAILDROP.
350 (profile, default: %mailspool%/$USER)
351 .RE
352 .PP
353 .BR Signature :
354 RAND MH System (agent: Marshall Rose)
355 .RS 5
356 Tells front-end programs such as
357 .BR comp,
358 .BR forw,
359 and
360 .B repl
361 your mail signature. This is superseded by the
362 environment variable
363 SIGNATURE .
364 If
365 SIGNATURE
366 is not set and this profile entry is not present, the \*(lqgcos\*(rq field of
367 the \fI/etc/passwd\fP file will be used.
368 Your signature will be added to the address
369 .B send
370 puts in the \*(lqFrom:\*(rq header; do not include an address in the
371 signature text. The \*(lqLocal\-Mailbox\*(rq profile component
372 supersedes all of this. (profile, no default)
373 .RE
374 .PP
375 .BR credentials :
376 \&legacy
377 .RS 5
378 Indicates how the username and password credentials will be retrieved
379 for access to external servers, such as those that provide SMTP or POP
380 service. The supported entry values are \*(lqlegacy\*(rq and
381 .RI \*(lqfile: netrc \*(rq.
382 With \*(lqlegacy\*(rq, or if there is no credentials entry, the
383 username is the first of:
384 .RS 5
385 .TP 5
386 .PD 0
387 1)
388 .B \-user
389 switch to
390 .BR send ,
391 .BR post ,
392 .BR whom ,
393 .BR inc ,
394 or
395 .B msgchk
396 program
397 .TP
398 2)
399 the login name on the local machine
400 .PD
401 .RE
402 .PP
403 The password for SMTP services is the first of:
404 .RS 5
405 .TP 5
406 .PD 0
407 1)
408 password value from matching entry in file named \*(lq.netrc\*(rq
409 in the user's home directory
410 .TP
411 2)
412 password obtained by interactively prompting the user
413 .PD
414 .RE
415 .PP
416 The password for POP service when the
417 .B \-sasl
418 switch is used with one of these programs is the login name on the
419 local machine.
420 .PP
421 With a
422 .RI \*(lqfile: netrc \*(rq
423 .B credentials
424 entry, the username is the first of:
425 .RS 5
426 .PD 0
427 .TP 5
428 1)
429 .B \-user
430 switch to program
431 .TP 5
432 2)
433 login name from matching entry in
434 .I netrc
435 file
436 .TP 5
437 3)
438 value provided by user in response to interactive query
439 .PD
440 .RE
441 .PP
442 Similarly, the password is provided either in the
443 .I netrc
444 file or interactively.
445 .I netrc
446 can be any valid filename, either absolute or relative to Path or
447 $HOME. The
448 .I netrc
449 file contains authentication information, for each server,
450 using a line of the following form. Replace the words
451 .IR myserver ,
452 .IR mylogin ,
453 and
454 .I mypassword
455 with your own account information:
456 .PP
457 .RS 5
458 .B machine
459 .I myserver
460 .B login
461 .I mylogin
462 .B password
463 .I mypassword
464 .RE
465 .PP
466 This
467 .I netrc
468 file must be owned and readable only by you.
469 (profile, default: legacy)
470 .RE
471 .SS "Process Profile Entries"
472 The following profile elements are used whenever an
473 .B nmh
474 program invokes some other program such as
475 .BR more .
476 The
477 .I \&.mh\-profile
478 can be used to select alternate programs if the
479 user wishes. The default values are given in the examples.
480 .PP
481 If the profile element contains spaces, the element is split at spaces
482 into tokens and each token is given as a separate argument to the
483 .IR execvp (2)
484 system call. If the element contains shell metacharacters then the entire
485 element is executed using
486 .BR /bin/sh .
487 .RE
488 .PP
489 .BR buildmimeproc :
490 %bindir%/mhbuild
491 .RS 5
492 This is the program used by
493 .B whatnow
494 to process drafts which are MIME composition files.
495 .RE
496 .PP
497 .BR fileproc :
498 %bindir%/refile
499 .RS 5
500 This program is used to refile or link a message to another folder.
501 It is used by
502 .B send
503 to file a copy of a message into a folder given
504 by a \*(lqFcc:\*(rq field. It is used by the draft folder facility in
505 .BR comp ,
506 .BR dist ,
507 .BR forw ,
508 and
509 .B repl
510 to refile a draft
511 message into another folder. It is used to refile a draft message in
512 response to the
513 .B refile
514 directive at the \*(lqWhat now?\*(rq prompt.
515 .RE
516 .PP
517 .BR formatproc :
518 .RS 5
519 Program called by
520 .B mhl
521 to filter a component when it is tagged with the \*(lqformat\*(rq variable
522 in the mhl filter. See
523 .IR mhl (5)
524 for more information.
525 .RE
526 .PP
527 .BR incproc :
528 %bindir%/inc
529 .RS 5
530 Program called by
531 .B mhmail
532 to incorporate new mail when it
533 is invoked with no arguments.
534 .RE
535 .PP
536 .BR lproc :
537 more
538 .RS 5
539 This program is used to list the contents of a message in response
540 to the
541 .B list
542 directive at the \*(lqWhat now?\*(rq prompt. It is
543 also used by the draft folder facility in
544 .BR comp ,
545 .BR dist ,
546 .BR forw ,
547 and
548 .B repl
549 to display the draft message.
550 (Note that
551 the environment variable PAGER
552 supersedes the default built-in pager command.)
553 .RE
554 .PP
555 .BR mailproc :
556 %bindir%/mhmail
557 .RS 5
558 This is the program used to automatically mail various messages
559 and notifications. It is used by
560 .B send
561 to post failure notices.
562 It is used to retrieve an external-body with access-type `mail-server'
563 (such as when storing the body with
564 .BR mhstore ).
565 .RE
566 .PP
567 .BR mhlproc :
568 %nmhlibexecdir%/mhl
569 .RS 5
570 This is the program used to filter messages in various ways. It
571 is used by
572 .B mhshow
573 to filter and display the message headers
574 of MIME messages. When the
575 .B \-format
576 or
577 .B \-filter
578 option is used
579 by
580 .B forw
581 or
582 .BR repl ,
583 the
584 .I mhlproc
585 is used to filter the
586 message that you are forwarding, or to which you are replying.
587 When the
588 .B \-filter
589 option is given to
590 .BR send ,
591 the
592 .I mhlproc
593 is used to filter the copy of the message
594 that is sent to \*(lqBcc:\*(rq recipients.
595 .RE
596 .PP
597 .BR moreproc :
598 more
599 .RS 5
600 This is the program used by
601 .B mhl
602 to page the
603 .B mhl
604 formatted message when displaying to a terminal. It is also the default
605 program used by
606 .B mhshow
607 to display message bodies (or message parts) of type text/plain.
608 (Note that
609 the vivironment variable PAGER
610 supersedes the default built-in pager command.)
611 .RE
612 .PP
613 .BR packproc :
614 %bindir%/packf
615 .RS 5
616 Currently not used.
617 .RE
618 .PP
619 .BR postproc :
620 %nmhlibexecdir%/post
621 .RS 5
622 This is the program used by
623 .BR send ,
624 .BR mhmail ,
625 .BR rcvdist ,
626 and
627 .B viamail
628 (used by the
629 .B sendfiles
630 shell script) to
631 post a message to the mail transport system. It is also called by
632 .B whom
633 (called with the switches
634 .B \-whom
635 and
636 .BR \-library )
637 to do address verification.
638 .RE
639 .PP
640 .BR rmmproc :
641 none
642 .RS 5
643 This is the program used by
644 .BR rmm ,
645 .BR refile ,
646 and
647 .B mhfixmsg
648 to delete a message from a folder.
649 .RE
650 .PP
651 .BR sendproc :
652 %bindir%/send
653 .RS 5
654 This is the program to use by
655 .B whatnow
656 to actually send the message
657 .RE
658 .PP
659 .BR showmimeproc :
660 %bindir%/mhshow
661 .RS 5
662 This is the program used by
663 .B show
664 to process and display non-text (MIME) messages.
665 .RE
666 .PP
667 .BR showproc :
668 %nmhlibexecdir%/mhl
669 .RS 5
670 This is the program used by
671 .B show
672 to filter and display text (non-MIME) messages.
673 .RE
674 .PP
675 .BR whatnowproc :
676 %bindir%/whatnow
677 .RS 5
678 This is the program invoked by
679 .BR comp ,
680 .BR forw ,
681 .BR dist ,
682 and
683 .B repl
684 to query about the disposition of a composed draft message.
685 .RE
686 .PP
687 .BR whomproc :
688 %bindir%/whom
689 .RS 5
690 This is the program used by
691 .B whatnow
692 to determine to whom a message would be sent.
693 .RE
694 .SS "Profile Lookup"
695 After consulting .mh_profile,
696 some programs read an optional profile specified by a
697 program-specific environment variable,
698 and then the system-wide profile %nmhetcdir%/mhn.defaults.
699 These programs are
700 .BR mhbuild ,
701 .BR mhshow ,
702 .BR mhstore ,
703 and
704 .BR mhn .
705 .B mhfixmsg
706 is similar, but has no optional profile.
707 .sp
708 The first occurrence of a component is used,
709 e.g.\& .mh_profile's trumps $MHSHOW's.
710 A component with no value still stops further occurrences being used,
711 but is considered absent.
712 .PP
713 The
714 .I \&.mh\-profile
715 contains only static information, which
716 .B nmh
717 programs will
718 .B NOT
719 update. Changes in context are made to the
720 .I context
721 file kept in the users
722 .B nmh
723 directory.
724 This includes, but is not limited to: the \*(lqCurrent\-Folder\*(rq entry
725 and all private sequence information. Public sequence information is
726 kept in each folder in the file determined by the \*(lqmh\-sequences\*(rq
727 profile entry (default is
728 .IR \&.mh\-sequences ).
729 .PP
730 The
731 .I \&.mh\-profile
732 may override the path of the
733 .I context
734 file, by specifying a \*(lqcontext\*(rq entry (this must be in
735 lower-case). If the entry is not absolute (does not start with a
736 \*(lq/\*(rq), then it is interpreted relative to the user's
737 .B nmh
738 directory. As a result, you can actually have more than one set of
739 private sequences by using different context files.
740 .SH ENVIRONMENT
741 The operation of
742 .B nmh
743 and its commands it also controlled by the
744 presence of certain environment variables.
745 .PP
746 Many of these environment variables are used internally by the
747 \*(lqWhat now?\*(rq interface. It's amazing all the information
748 that has to get passed via environment variables to make the
749 \*(lqWhat now?\*(rq interface look squeaky clean to the
750 .B nmh
751 user, isn't it? The reason for all this is that the
752 .B nmh
753 user
754 can select
755 any
756 program as the
757 .IR whatnowproc ,
758 including
759 one of the standard shells. As a result, it's not possible to pass
760 information via an argument list. The convention is that environment
761 variables whose names are all upper-case are user-settable; those
762 whose names are lower-case only are used internally by nmh and should
763 not generally be set by the user.
764 .TP
765 MAILDROP
766 This variable tells
767 .B inc
768 the default maildrop. This supersedes the \*(lqMailDrop\*(rq profile entry.
769 .TP
770 MAILHOST
771 This variable tells
772 .B inc
773 the POP host to query for mail to incorporate. See the
774 .IR inc (1)
775 man page for more information.
776 .TP
777 MH
778 With this environment variable, you can specify a profile
779 other than
780 .I \&.mh\-profile
781 to be read by the
782 .B nmh
783 programs
784 that you invoke. If the value of
785 MH
786 is not absolute, (i.e., does
787 not begin with a \*(lq/\*(rq), it will be presumed to start from the current
788 working directory. This is one of the very few exceptions in
789 .B nmh
790 where non-absolute pathnames are not considered relative to the user's
791 .B nmh
792 directory.
793 .TP
794 MHBUILD
795 With this environment variable, you can specify an
796 additional user profile (file) to be read by
797 .BR mhbuild ,
798 in addition to the mhn.defaults profile.
799 .TP
800 MHCONTEXT
801 With this environment variable, you can specify a
802 context other than the normal context file (as specified in
803 the
804 .B nmh
805 profile). As always, unless the value of
806 MHCONTEXT
807 is absolute, it will be presumed to start from your
808 .B nmh
809 directory.
810 .TP
811 MHLDEBUG
812 If this variable is set to a non-null value,
813 .B mhl
814 will emit debugging information.
815 .TP
816 MHMTSCONF
817 If this variable is set to a non-null value, it specifies the
818 name of the mail transport configuration file to use by
819 .BR post ,
820 .BR inc ,
821 and other programs that interact with the mail transport system,
822 instead of the default. See
823 .IR mh-tailor (5).
824 .TP
825 MHMTSUSERCONF
826 If this variable is set to a non-null value, it specifies the name of
827 a mail transport configuration file to be read in addition to the
828 default. See
829 .IR mh-tailor (5).
830 .TP
831 MHN
832 With this environment variable, you can specify an
833 additional user profile (file) to be read by
834 .BR mhn ,
835 in addition to the mhn.defaults profile.
836 .B mhn
837 is deprecated, so support for this variable will
838 be removed from a future nmh release.
839 .TP
840 MHSHOW
841 With this environment variable, you can specify an
842 additional user profile (file) to be read by
843 .BR mhshow ,
844 in addition to the mhn.defaults profile.
845 .TP
846 MHSTORE
847 With this environment variable, you can specify an
848 additional user profile (file) to be read by
849 .BR mhstore ,
850 in addition to the mhn.defaults profile.
851 .TP
852 MHPDEBUG
853 If this variable is set to a non-null value,
854 .B pick
855 will emit a representation of the search pattern.
856 MHPDEBUG
857 is deprecated, so support for this variable will
858 be removed from a future nmh release. Instead,
859 .B pick
860 now supports a
861 .B \-debug
862 switch.
863 .TP
864 MHTMPDIR, TMPDIR
865 These variables are searched, in order, for the directory in which to
866 create some temporary files.
867 .TP
868 MHWDEBUG
869 If this variable is set to a non-null value,
870 .B nmh
871 commands that use the
872 .B Alternate\-Mailboxes
873 profile entry will display debugging information
874 about the values in that entry.
875 .TP
876 PAGER
877 If set to a non-null value, this supersedes the value of
878 the default built-in pager command.
879 .TP
880 SIGNATURE
881 This variable tells
882 .B send
883 and
884 .B post
885 your mail signature. This supersedes the \*(lqSignature\*(rq profile entry,
886 and is not used when the \*(lqLocal\-Mailbox\*(rq profile component is set.
887 .TP
888 USER
889 This variable tells
890 .B repl
891 your user name and
892 .B inc
893 your default maildrop: see the \*(lqMailDrop\*(rq profile entry.
894 .TP
895 USERNAME_EXTENSION
896 This variable is for use with username_extension masquerading. See the
897 .IR mh-tailor (5)
898 man page.
899 .TP
900 editalt
901 This is the alternate message.
902 This is set by
903 .B dist
904 and
905 .B repl
906 during edit sessions so you can
907 peruse the message being distributed or replied to. The message is also
908 available, when the
909 .B \-atfile
910 switch is used,
911 through a link called \*(lq@\*(rq in the current directory if
912 your current working directory and the folder the message lives in are
913 on the same UNIX filesystem, and if your current working directory is
914 writable.
915 .TP
916 mhaltmsg
917 .B dist
918 and
919 .B repl
920 set
921 mhaltmsg
922 to tell the
923 .I whatnowproc
924 about an alternate message associated with the
925 draft (the message being distributed or replied to).
926 .TP
927 mhannotate
928 This is set by
929 .BR dist ,
930 .BR forw ,
931 and
932 .B repl
933 if annotations are to occur.
934 .TP
935 mhdist
936 .B dist
937 sets
938 mhdist
939 to tell the
940 .I whatnowproc
941 that message re-distribution is occurring.
942 .TP
943 mhdraft
944 This is the path to the working draft.
945 It is set by
946 .BR comp ,
947 .BR dist ,
948 .BR forw ,
949 and
950 .B repl
951 to tell the
952 .I whatnowproc
953 which file to ask \*(lqWhat now?\*(rq
954 questions about.
955 .TP
956 mheditor
957 This is set by
958 .BR comp ,
959 .BR repl ,
960 .BR forw ,
961 and
962 .B dist
963 to tell the
964 .I whatnowproc
965 the user's choice of
966 editor (unless overridden by
967 .BR \-noedit ).
968 .TP
969 mhfolder
970 This is the folder containing the alternate message.
971 It is set by
972 .B dist
973 and
974 .B repl
975 during edit sessions so you
976 can peruse other messages in the current folder besides the one being
977 distributed or replied to. The environment variable
978 mhfolder
979 is also set by
980 .BR show ,
981 .BR prev ,
982 and
983 .B next
984 for use by
985 .BR mhl .
986 .TP
987 mhinplace
988 This is set by
989 .BR dist ,
990 .BR forw ,
991 and
992 .B repl
993 if annotations are to occur.
994 .TP
995 mhmessages
996 This is set by
997 .BR dist ,
998 .BR forw ,
999 and
1000 .B repl
1001 if annotations are to occur.
1002 .TP
1003 mhuse
1004 This may be set by
1005 .BR comp .
1006 .SH FILES
1007 .PD 0
1008 .TP 20
1009 $HOME/\&.mh\-profile
1010 The user's profile.
1011 .TP
1012 <mh\-dir>/context
1013 The user's context
1014 .TP
1015 <folder>/\&.mh\-sequences
1016 Public sequences for <folder>.
1017 .PD
1018 .SH "SEE ALSO"
1019 .IR mhbuild (1),
1020 .IR mhshow (1),
1021 .IR mhstore (1),
1022 .IR mh-sequence (5),
1023 .IR nmh (7)
1024 .SH BUGS
1025 There is some question as to what kind of arguments should be placed
1026 in the profile as options. In order to provide a clear answer, recall
1027 command line semantics of all
1028 .B nmh
1029 programs: conflicting switches
1030 (e.g.
1031 .B \-header
1032 and
1033 .BR \-noheader )
1034 may occur more than one time on the
1035 command line, with the last switch taking effect. Other arguments, such
1036 as message sequences, filenames and folders, are always remembered on
1037 the invocation line and are not superseded by following arguments of
1038 the same type. Hence, it is safe to place only switches (and their
1039 arguments) in the profile.
1040 .PP
1041 If one finds that an
1042 .B nmh
1043 program is being invoked again and again
1044 with the same arguments, and those arguments aren't switches, then there
1045 are a few possible solutions to this problem. The first is to create a
1046 (soft) link in your
1047 .I $HOME/bin
1048 directory to the
1049 .B nmh
1050 program
1051 of your choice. By giving this link a different name, you can create
1052 a new entry in your profile and use an alternate set of defaults for
1053 the
1054 .B nmh
1055 command. Similarly, you could create a small shell script
1056 which called the
1057 .B nmh
1058 program of your choice with an alternate set
1059 of invocation line switches (using links and an alternate profile entry
1060 is preferable to this solution).
1061 .PP
1062 Finally, the
1063 .B csh
1064 user could create an alias for the command of the form:
1065 .PP
1066 .RS 5
1067 alias cmd 'cmd arg1 arg2 ...'
1068 .RE
1069 .PP
1070 In this way, the user can avoid lengthy type-in to the shell, and still
1071 give
1072 .B nmh
1073 commands safely. (Recall that some
1074 .B nmh
1075 commands
1076 invoke others, and that in all cases, the profile is read, meaning that
1077 aliases are disregarded beyond an initial command invocation)