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