source: trunk/third/nmh/man/mh-profile.man @ 12455

Revision 12455, 19.7 KB checked in by danw, 26 years ago (diff)
This commit was generated by cvs2svn to compensate for changes in r12454, which included commits to RCS files with non-trunk default branches.
RevLine 
[12454]1.\"
2.\" %nmhwarning%
3.\" $Id: mh-profile.man,v 1.1.1.1 1999-02-07 18:14:20 danw Exp $
4.\"
5.\" include the -mh macro file
6.so %etcdir%/tmac.h
7.\"
8.TH MH-PROFILE %manext5% MH.6.8 [%nmhversion%]
9.SH NAME
10mh-profile \- user profile customization for nmh message handler
11.SH SYNOPSIS
12.in +.5i
13.ti -.5i
14\&\fI.mh\(ruprofile\fP
15.in -.5i
16.SH DESCRIPTION
17Each user of \fInmh\fR is expected to have a file named
18\fI\&.mh\(ruprofile\fR in his or her home directory.  This file contains
19a set of user parameters used by some or all of the \fInmh\fR family
20of programs.  Each entry in the file is of the format
21
22    \fIprofile\-component\fR: \fIvalue\fR
23
24If the text of profile entry is long, you may extend it across several
25real lines by indenting the continuation lines with leading spaces
26or tabs.
27
28.Uh "Standard Profile Entries"
29The possible profile components are exemplified below.  The only mandatory
30entry is `Path:'.  The others are optional; some have default values if
31they are not present.  In the notation used below, (profile, default)
32indicates whether the information is kept in the user's \fInmh\fR profile
33or \fInmh\fR context, and indicates what the default value is.
34
35.in +1i
36.ti -1i
37Path: Mail
38.br
39Locates \fInmh\fR transactions in directory \*(lqMail\*(rq.  This is the
40only mandatory profile entry.  (profile, no default)
41
42.ti -1i
43context: context
44.br
45Declares the location of the \fInmh\fR context file.  This is
46overridden by the environment variable \fBMHCONTEXT\fR.
47See the \fBHISTORY\fR section below.
48(profile, default: <nmh\-dir>/context)
49
50.ti -1i
51Current\-Folder:\ inbox
52.br
53Keeps track of the current open folder.
54(context, default: folder specified by \*(lqInbox\*(rq)
55
56.ti -1i
57Inbox: inbox
58.br
59Defines the name of your default inbox.
60(profile, default: inbox)
61
62.ti -1i
63Previous\-Sequence:\ pseq
64.br
65Names the sequence or sequences which should be defined as the `msgs' or
66`msg' argument given to any \fInmh\fR command.  If not present or empty,
67no such sequences are defined.  Otherwise, for each name given, the
68sequence is first zero'd and then each message is added to the sequence.
69Read the mh\-sequence(5) man page for the details about this sequence.
70(profile, no default)
71
72.ti -1i
73Sequence\-Negation:\ not
74.br
75Defines the string which, when prefixed to a sequence name, negates
76that sequence.  Hence, \*(lqnotseen\*(rq means all those messages that
77are not a member of the sequence \*(lqseen\*(rq.  Read the mh\-sequence(5)
78man page for the details.  (profile, no default)
79
80.ti -1i
81Unseen\-Sequence:\ unseen
82.br
83Names the sequence or sequences which should be defined as those
84messages which are unread.  The commands \fIinc\fR, \fIrcvstore\fR,
85\fImhshow\fR, and \fIshow\fR will add or remove messages from these
86sequences when they are incorporated or read.  If not present or
87empty, no such sequences are defined.  Otherwise, each message is
88added to, or removed from, each sequence name given.  Read the
89mh\-sequence(5) man page for the details about this sequence.
90(profile, no default)
91
92.ti -1i
93mh\-sequences:\ \&.mh\(rusequences
94.br
95The name of the file in each folder which defines public sequences.
96To disable the use of public sequences, leave the value portion of this
97entry blank.  (profile, default: \&.mh\(rusequences)
98
99.ti -1i
100atr\-\fIseq\fR\-\fIfolder\fR:\ 172\0178\-181\0212
101.br
102Keeps track of the private sequence called \fIseq\fR in the specified
103folder.  Private sequences are generally used for read\-only folders.
104See the mh\-sequence(5) man page for details about private sequences.
105(context, no default)
106
107.ti -1i
108Editor:\ /usr/bin/vi
109.br
110Defines the editor to be used by the commands \fIcomp\fR\0(1),
111\fIdist\fR\0(1), \fIforw\fR\0(1), and \fIrepl\fR\0(1).  (profile, default:
112%default_editor%)
113
114.ti -1i
115automimeproc:
116.br
117If defined and set to 1, then the \fIwhatnow\fR program will automatically
118invoke the buildmimeproc (discussed below) to process each message as a MIME
119composition draft before it is sent.
120(profile, no default)
121
122.ti -1i
123Msg\-Protect:\ 644
124.br
125An octal number which defines the permission bits for new message files.
126See \fIchmod\fR\0(1) for an explanation of the octal number.
127(profile, default: 0644)
128
129.ti -1i
130Folder\-Protect:\ 700
131.br
132An octal number which defines the permission bits for new folder
133directories.  See \fIchmod\fR\0(1) for an explanation of the octal number.
134(profile, default: 0700)
135
136.ti -1i
137\fIprogram\fR:\ default switches
138.br
139Sets default switches to be used whenever the mh program \fIprogram\fR
140is invoked.  For example, one could override the \fIEditor\fR: profile
141component when replying to messages by adding a component such as:
142.br
143        repl: \-editor /bin/ed
144.br
145(profile, no defaults)
146
147.ti -1i
148\fIlasteditor\fR\-next:\ nexteditor
149.br
150Names \*(lqnexteditor\*(rq to be the default editor after using
151\*(lqlasteditor\*(rq.  This takes effect at \*(lqWhat now?\*(rq prompt
152in \fIcomp\fR, \fIdist\fR, \fIforw\fR, and \fIrepl\fR.  After editing
153the draft with \*(lqlasteditor\*(rq, the default editor is set to be
154\*(lqnexteditor\*(rq.  If the user types \*(lqedit\*(rq without any
155arguments to \*(lqWhat now?\*(rq, then \*(lqnexteditor\*(rq is used.
156(profile, no default)
157
158.ti -1i
159bboards: system
160.br
161Tells \fIbbc\fR which BBoards you are interested in.  (profile, default:
162system)
163
164.ti -1i
165Folder\-Stack: \fIfolders\fR
166.br
167The contents of the folder-stack for the \fIfolder\fR command.
168(context, no default)
169
170.ti -1i
171mhe:
172.br
173If present, tells \fIinc\fR to compose an \fIMHE\fR auditfile in addition
174to its other tasks.  \fIMHE\fR is Brian Reid's \fIEmacs\fR front-end
175for \fInmh\fR.  (profile, no default)
176
177.ti -1i
178Alternate\-Mailboxes: mh@uci\-750a, bug-mh*
179.br
180Tells \fIrepl\fR and \fIscan\fR which addresses are really yours.
181In this way, \fIrepl\fR knows which addresses should be included in the
182reply, and \fIscan\fR knows if the message really originated from you.
183Addresses must be separated by a comma, and the hostnames listed should
184be the \*(lqofficial\*(rq hostnames for the mailboxes you indicate, as
185local nicknames for hosts are not replaced with their official site names.
186For each address, if a host is not given, then that address on any host is
187considered to be you.  In addition, an asterisk (`*') may appear at either
188or both ends of the mailbox and host to indicate wild-card matching.
189(profile, default: your user-id)
190
191.ti -1i
192Aliasfile: aliases other-alias
193.br
194Indicates aliases files for \fIali\fR, \fIwhom\fR, and \fIsend\fR.
195This may be used instead of the `\-alias file' switch.  (profile, no
196default)
197
198.ti -1i
199Draft\-Folder: drafts
200.br
201Indicates a default draft folder for \fIcomp\fR, \fIdist\fR, \fIforw\fR,
202and \fIrepl\fR.  Read the mh\-draft (5) man page for details.
203(profile, no default)
204
205.ti -1i
206digest\-issue\-\fIlist\fR:\ 1
207.br
208Tells \fIforw\fR the last issue of the last volume sent for the digest
209\fIlist\fR.  (context, no default)
210
211.ti -1i
212digest\-volume\-\fIlist\fR:\ 1
213.br
214Tells \fIforw\fR the last volume sent for the digest \fIlist\fR.
215(context, no default)
216
217.ti -1i
218MailDrop: .mail
219.br
220Tells \fIinc\fR your maildrop, if different from the default.  This is
221superseded by the environment variable \fBMAILDROP\fR.  (profile, default:
222%mailspool%/$USER)
223
224.ti -1i
225Signature: RAND MH System (agent: Marshall Rose)
226.br
227Tells \fIsend\fR your mail signature.  This is superseded by the
228environment variable \fBSIGNATURE\fR.  If \fBSIGNATURE\fR is not set and
229this profile entry is not present, the \*(lqgcos\*(rq field of
230the \fI/etc/passwd\fP file will be used; otherwise, on hosts where
231\fInmh\fR was configured with the UCI option, the file $HOME/.signature
232is consulted.  Your signature will be added to the address \fIsend\fP
233puts in the \*(lqFrom:\*(rq header; do not include an address in the
234signature text.  (profile, no default)
235.in -1i
236
237.Uh "Process Profile Entries"
238The following profile elements are used whenever an \fInmh\fR
239program invokes some other program such as \fImore\fR\0(1).  The
240\fI\&.mh\(ruprofile\fR can be used to select alternate programs if the
241user wishes.  The default values are given in the examples.
242
243.in +1i
244.ti -1i
245buildmimeproc: %bindir%/mhbuild
246.br
247This is the program used by \fIwhatnow\fR to process drafts which
248are MIME composition files.
249
250.ti -1i
251fileproc: %bindir%/refile
252.br
253This program is used to refile or link a message to another folder.
254It is used by \fIpost\fR to file a copy of a message into a folder given
255by a \*(lqFcc:\*(rq field.  It is used by the draft folder facility in
256\fIcomp\fR, \fIdist\fR, \fIforw\fR, and \fIrepl\fR to refile a draft
257message into another folder.  It is used to refile a draft message in
258response to the `refile' directive at the \*(lqWhat now?\*(rq prompt.
259
260.ti -1i
261incproc: %bindir%/inc
262.br
263Program called by \fImhmail\fR to incorporate new mail when it
264is invoked with no arguments.
265
266.ti -1i
267installproc: %libdir%/install\-mh
268.br
269This program is called to initialize the environment for
270new users of nmh.
271
272.ti -1i
273lproc: %default_pager%
274.br
275This program is used to list the contents of a message in response
276to the `list' directive at the \*(lqWhat now?\*(rq prompt.  It is
277also used by the draft folder facility in \fIcomp\fR, \fIdist\fR,
278\fIforw\fR, and \fIrepl\fR to display the draft message.
279
280.ti -1i
281mailproc: %bindir%/mhmail
282.br
283This is the program used to automatically mail various messages
284and notifications.  It is used by \fIconflict\fR when using the
285`-mail' option.  It is used by \fIsend\fR to post failure notices.
286It is used to retrieve an external-body with access-type `mail-server'
287(such as when storing the body with \fImhstore\fR).
288
289.ti -1i
290mhlproc: %libdir%/mhl
291.br
292This is the program used to filter messages in various ways.  It
293is used by \fImhshow\fR to filter and display the message headers
294of MIME messages.  When the `-format' or `-filter' option is used
295by \fIforw\fR or \fIrepl\fR, the mhlproc is used to filter the
296message that you are forwarding, or to which you are replying.
297When the `-filter' option is given to \fIsend\fR or \fIpost\fR,
298the mhlproc is used by \fIpost\fR to filter the copy of the message
299that is sent to \*(lqBcc:\*(rq recipients.
300
301.ti -1i
302moreproc: %default_pager%
303.br
304This is the program used by \fImhl\fR to page the \fImhl\fR formatted
305message when displaying to a terminal.  It is also the default
306program used by \fImhshow\fR to display message bodies (or message
307parts) of type text/plain.
308
309.ti -1i
310mshproc: %bindir%/msh
311.br
312Currently not used.
313
314.ti -1i
315packproc: %bindir%/packf
316.br
317Currently not used.
318
319.ti -1i
320postproc: %libdir%/post
321.br
322This is the program used by \fIsend\fR, \fImhmail\fR, \fIrcvdist\fR,
323and \fIviamail\fR (used by the \fIsendfiles\fR shell script) to
324post a message to the mail transport system.  It is also called by
325\fIwhom\fR (called with the switches `-whom' and `-library') to do
326address verification.
327
328.ti -1i
329rmmproc: none
330.br
331This is the program used by \fIrmm\fR and \fIrefile\fR to delete
332a message from a folder.
333
334.ti -1i
335rmfproc: %bindir%/rmf
336.br
337Currently not used.
338
339.ti -1i
340sendproc: %bindir%/send
341.br
342This is the program to use by \fIwhatnow\fR to actually
343send the message
344
345.ti -1i
346showmimeproc: %bindir%/mhshow
347.br
348This is the program used by \fIshow\fR to process and display
349non-text (MIME) messages.
350
351.ti -1i
352showproc: %libdir%/mhl
353.br
354This is the program used by \fIshow\fR to filter and display text
355(non-MIME) messages.
356
357.ti -1i
358whatnowproc: %bindir%/whatnow
359.br
360This is the program invoked by \fIcomp\fR, \fIforw\fR, \fIdist\fR, and
361\fIrepl\fR to query about the disposition of a composed draft message.
362
363.ti -1i
364whomproc: %bindir%/whom
365.br
366This is the program used by \fIwhatnow\fR to determine to whom a
367message would be sent.
368
369.Uh "Environment Variables"
370The operation of nmh and its commands it also controlled by the
371presence of certain environment variables.
372
373Many of these environment variables are used internally by the
374\*(lqWhat now?\*(rq interface.  It's amazing all the information
375that has to get passed via environment variables to make the
376\*(lqWhat now?\*(rq interface look squeaky clean to the \fInmh\fR
377user, isn't it?  The reason for all this is that the \fInmh\fR user
378can select \fIany\fR program as the \fIwhatnowproc\fR, including
379one of the standard shells.  As a result, it's not possible to pass
380information via an argument list.
381
382If the WHATNOW option was set during \fInmh\fR configuration, and
383if this environment variable is set, then if the commands \fIrefile\fR,
384\fIsend\fR, \fIshow\fR, or \fIwhom\fR are not given any `msgs'
385arguments, then they will default to using the file indicated by
386\fBmhdraft\fR.  This is useful for getting the default behavior
387supplied by the default \fIwhatnowproc\fR.
388
389.in +.5i
390.ti -.5i
391\fBMH\fR\0: With this environment variable, you can specify a profile
392other than \fI\&.mh\(ruprofile\fR to be read by the \fInmh\fR programs
393that you invoke.  If the value of \fBMH\fR is not absolute, (i.e., does
394not begin with a \fB/\fR\0), it will be presumed to start from the current
395working directory.  This is one of the very few exceptions in \fInmh\fR
396where non-absolute pathnames are not considered relative to the user's
397\fInmh\fR directory.
398
399.ti -.5i
400\fBMHCONTEXT\fR\0: With this environment variable, you can specify a
401context other than the normal context file (as specified in
402the \fInmh\fR profile).  As always, unless the value of \fBMHCONTEXT\fR
403is absolute, it will be presumed to start from your \fInmh\fR directory.
404
405.ti -.5i
406\fBMM_CHARSET\fR\0: With this environment variable, you can specify
407the native character set you are using.  You must be able to display
408this character set on your terminal.
409
410This variable is checked to see if a RFC-2047 header field should be
411decoded (in \fIinc\fR, \fIscan\fR, \fImhl\fR).  This variable is
412checked by \fIshow\fR to see if the showproc or showmimeproc should
413be called, since showmimeproc will be called if a text message uses
414a character set that doesn't match MM_CHARSET.  This variable is
415checked by \fImhshow\fR for matches against the charset parameter
416of text contents to decide it the text content can be displayed
417without modifications to your terminal.  This variable is checked by
418\fImhbuild\fR to decide what character set to specify in the charset
419parameter of text contents containing 8bit characters.
420
421When decoding text in such an alternate character set, \fInmh\fR
422must be able to determine which characters are alphabetic, which
423are control characters, etc.  For many operating systems, this
424will require enabling the support for locales (such as setting
425the environment variable LC_CTYPE to iso_8859_1).
426
427.ti -.5i
428\fBMAILDROP\fR\0: tells \fIinc\fR the default maildrop
429.br
430This supersedes the \*(lqMailDrop:\*(rq profile entry.
431
432.ti -.5i
433\fBSIGNATURE\fR\0: tells \fIsend\fR and \fIpost\fR your mail signature
434.br
435This supersedes the \*(lqSignature:\*(rq profile entry.
436
437.ti -.5i
438\fBHOME\fR\0: tells all \fInmh\fR programs your home directory
439
440.ti -.5i
441\fBSHELL\fR\0: tells \fIbbl\fR the default shell to run
442
443.ti -.5i
444\fBTERM\fR\0: tells \fInmh\fR your terminal type
445.br
446The environment variable \fBTERMCAP\fR is also consulted.  In particular,
447these tell \fIscan\fR and \fImhl\fR how to clear your terminal, and how
448many columns wide your terminal is.  They also tell \fImhl\fR how many
449lines long your terminal screen is.
450
451.ti -.5i
452\fBeditalt\fR\0: the alternate message
453.br
454This is set by \fIdist\fR and \fIrepl\fR during edit sessions so you can
455peruse the message being distributed or replied to.  The message is also
456available through a link called \*(lq@\*(rq in the current directory if
457your current working directory and the folder the message lives in are
458on the same UNIX filesystem.
459
460.ti -.5i
461\fBmhdraft\fR\0: the path to the working draft
462.br
463This is set by \fIcomp\fR, \fIdist\fR, \fIforw\fR, and \fIrepl\fR
464to tell the \fIwhatnowproc\fR which file to ask \*(lqWhat now?\*(rq
465questions about.
466
467.ti -.5i
468\fBmhfolder\fR\0:
469.br
470This is set by \fIdist\fR, \fIforw\fR, and \fIrepl\fR,
471if appropriate.
472
473.ti -.5i
474\fBmhaltmsg\fR\0:
475.br
476\fIdist\fR and \fIrepl\fR set \fBmhaltmsg\fR to tell the
477\fIwhatnowproc\fR about an alternate message associated with the
478draft (the message being distributed or replied to).
479
480.ti -.5i
481\fBmhdist\fR\0:
482.br
483\fIdist\fR sets \fBmhdist\fR to tell the \fIwhatnowproc\fR that
484message re-distribution is occurring.
485
486.ti -.5i
487\fBmheditor\fR\0:
488.br
489This is set to tell the \fIwhatnowproc\fR the user's choice of
490editor (unless overridden by `\-noedit').
491
492.ti -.5i
493\fBmhuse\fR\0:
494.br
495This may be set by \fIcomp\fR.
496
497.ti -.5i
498\fBmhmessages\fR\0:
499.br
500This is set by \fIdist\fR, \fIforw\fR, and \fIrepl\fR if annotations
501are to occur.
502
503.ti -.5i
504\fBmhannotate\fR\0:
505.br
506This is set by \fIdist\fR, \fIforw\fR, and \fIrepl\fR if annotations
507are to occur.
508
509.ti -.5i
510\fBmhinplace\fR\0:
511.br
512This is set by \fIdist\fR, \fIforw\fR, and \fIrepl\fR if annotations
513are to occur.
514
515.ti -.5i
516\fBmhfolder\fR\0: the folder containing the alternate message
517.br
518This is set by \fIdist\fR and \fIrepl\fR during edit sessions so you
519can peruse other messages in the current folder besides the one being
520distributed or replied to.  The environment variable \fBmhfolder\fR is
521also set by \fIshow\fR, \fIprev\fR, and \fInext\fR for use by \fImhl\fR.
522.in -.5i
523
524.Fi
525^$HOME/\&.mh\(ruprofile~^The user profile
526^or $MH~^Rather than the standard profile
527^<mh\-dir>/context~^The user context
528^or $MHCONTEXT~^Rather than the standard context
529^<folder>/\&.mh\(rusequences~^Public sequences for <folder>
530.Pr
531All
532.Sa
533mh(1), environ(5), mh-sequence(5)
534.De
535None
536.Co
537All
538.Hi
539The \fI\&.mh\(ruprofile\fR contains only static information, which
540\fInmh\fR programs will \fBNOT\fR update.  Changes in context are
541made to the \fIcontext\fR file kept in the users nmh \fIdirectory\fR.
542This includes, but is not limited to: the \*(lqCurrent\-Folder\*(rq entry
543and all private sequence information.  Public sequence information is
544kept in each folder in the file determined by the \*(lqmh\-sequences\*(rq
545profile entry (default is \fI\&.mh\(rusequences\fR).
546
547The \fI\&.mh\(ruprofile\fR may override the path of the \fIcontext\fR
548file, by specifying a \*(lqcontext\*(rq entry (this must be in
549lower-case).  If the entry is not absolute (does not start with a
550\fB/\fR\0), then it is interpreted relative to the user's \fInmh\fR
551directory.  As a result, you can actually have more than one set of
552private sequences by using different context files.
553.Bu
554The shell quoting conventions are not available in the \&.mh\(ruprofile.
555Each token is separated by whitespace.
556
557There is some question as to what kind of arguments should be placed
558in the profile as options.  In order to provide a clear answer, recall
559command line semantics of all \fInmh\fR programs: conflicting switches
560(e.g., `\-header and `\-noheader') may occur more than one time on the
561command line, with the last switch taking effect.  Other arguments, such
562as message sequences, filenames and folders, are always remembered on
563the invocation line and are not superseded by following arguments of
564the same type.  Hence, it is safe to place only switches (and their
565arguments) in the profile.
566
567If one finds that an \fInmh\fR program is being invoked again and again
568with the same arguments, and those arguments aren't switches, then there
569are a few possible solutions to this problem.  The first is to create a
570(soft) link in your \fI$HOME/bin\fR directory to the \fInmh\fR program
571of your choice.  By giving this link a different name, you can create
572a new entry in your profile and use an alternate set of defaults for
573the \fInmh\fR command.  Similarly, you could create a small shell script
574which called the \fInmh\fR program of your choice with an alternate set
575of invocation line switches (using links and an alternate profile entry
576is preferable to this solution).
577
578Finally, the \fIcsh\fR user could create an alias for the command of the form:
579
580.ti +.5i
581alias cmd 'cmd arg1 arg2 ...'
582
583In this way, the user can avoid lengthy type-in to the shell, and still
584give \fInmh\fR commands safely.  (Recall that some \fInmh\fR commands
585invoke others, and that in all cases, the profile is read, meaning that
586aliases are disregarded beyond an initial command invocation)
587.En
Note: See TracBrowser for help on using the repository browser.