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