MH-PROFILE(5) [nmh-1.2] MH-PROFILE(5)
NAME
mh-profile - user profile customization for nmh message handler
SYNOPSIS
$HOME/.mh_profile
DESCRIPTION
Each user of nmh is expected to have a file named .mh_profile in his or her home direc-
tory. This file contains a set of user parameters used by some or all of the nmh family
of programs. Each entry in the file is of the format
profile-component: value
If the text of profile entry is long, you may extend it across several real lines by
indenting the continuation lines with leading spaces or tabs.
Standard Profile Entries
The possible profile components are exemplified below. The only mandatory entry is
`Path:'. The others are optional; some have default values if they are not present. In
the notation used below, (profile, default) indicates whether the information is kept in
the user's nmh profile or nmh context, and indicates what the default value is.
Path: Mail
Locates nmh transactions in directory "Mail". This is the only mandatory profile
entry. (profile, no default)
context: context
Declares the location of the nmh context file. This is overridden by the environment
variable $MHCONTEXT. See the HISTORY section below. (profile, default:
<nmh-dir>/context)
Current-Folder: inbox
Keeps track of the current open folder. (context, default: folder specified by
"Inbox")
Inbox: inbox
Defines the name of your default inbox. (profile, default: inbox)
Previous-Sequence: pseq
Names the sequence or sequences which should be defined as the `msgs' or `msg' argu-
ment given to any nmh command. If not present or empty, no such sequences are
defined. Otherwise, for each name given, the sequence is first zero'd and then each
message is added to the sequence. Read the mh-sequence(5) man page for the details
about this sequence. (profile, no default)
Sequence-Negation: not
Defines the string which, when prefixed to a sequence name, negates that sequence.
Hence, "notseen" means all those messages that are not a member of the sequence
"seen". Read the mh-sequence(5) man page for the details. (profile, no default)
Unseen-Sequence: unseen
Names the sequence or sequences which should be defined as those messages which are
unread. The commands inc, rcvstore, mhshow, and show will add or remove messages
from these sequences when they are incorporated or read. If not present or empty, no
such sequences are defined. Otherwise, each message is added to, or removed from,
each sequence name given. Read the mh-sequence(5) man page for the details about
this sequence. (profile, no default)
mh-sequences: .mh_sequences
The name of the file in each folder which defines public sequences. To disable the
use of public sequences, leave the value portion of this entry blank. (profile,
default: .mh_sequences)
atr-seq-folder: 172 178-181 212
Keeps track of the private sequence called "seq" in the specified folder. Private
sequences are generally used for read-only folders. See the mh-sequence(5) man page
for details about private sequences. (context, no default)
Editor: /usr/bin/vi
Defines the editor to be used by the commands comp, dist, forw, and repl. (profile,
default: /usr/bin/sensible-editor)
automimeproc:
If defined and set to 1, then the whatnow program will automatically invoke the
buildmimeproc (discussed below) to process each message as a MIME composition draft
before it is sent. (profile, no default)
Msg-Protect: 644
An octal number which defines the permission bits for new message files. See
chmod(1) for an explanation of the octal number. (profile, default: 0644)
Folder-Protect: 750
An octal number which defines the permission bits for new folder directories. See
chmod(1) for an explanation of the octal number. (profile, default: 700)
program: default switches
Sets default switches to be used whenever the mh program program is invoked. For
example, one could override the "Editor:" profile component when replying to messages
by adding a component such as:
repl: -editor /bin/ed
(profile, no defaults)
lasteditor-next: nexteditor
Names "nexteditor" to be the default editor after using "lasteditor". This takes
effect at "What now?" prompt in comp, dist, forw, and repl. After editing the draft
with "lasteditor", the default editor is set to be "nexteditor". If the user types
"edit" without any arguments to "What now?", then "nexteditor" is used. (profile, no
default)
bboards: system
Tells bbc which BBoards you are interested in. (profile, default: system)
Folder-Stack: folders
The contents of the folder-stack for the folder command. (context, no default)
mhe:
If present, tells inc to compose an MHE auditfile in addition to its other tasks.
MHE is Brian Reid's emacs front-end for nmh. (profile, no default)
Alternate-Mailboxes: mh@uci-750a, bug-mh*
Tells repl and scan which addresses are really yours. In this way, repl knows which
addresses should be included in the reply, and scan knows if the message really orig-
inated from you. Addresses must be separated by a comma, and the hostnames listed
should be the "official" hostnames for the mailboxes you indicate, as local nicknames
for hosts are not replaced with their official site names. For each address, if a
host is not given, then that address on any host is considered to be you. In addi-
tion, an asterisk (`*') may appear at either or both ends of the mailbox and host to
indicate wild-card matching. (profile, default: your user-id)
Aliasfile: aliases other-alias
Indicates aliases files for ali, whom, and send. This may be used instead of the
-alias file switch. (profile, no default)
Draft-Folder: drafts
Indicates a default draft folder for comp, dist, forw, and repl. Read the
mh-draft(5) man page for details. (profile, no default)
digest-issue-list: 1
Tells forw the last issue of the last volume sent for the digest list. (context, no
default)
digest-volume-list: 1
Tells forw the last volume sent for the digest list. (context, no default)
MailDrop: .mail
Tells inc your maildrop, if different from the default. This is superseded by the
environment variable $MAILDROP. (profile, default: /var/mail/$USER)
Signature: RAND MH System (agent: Marshall Rose)
Tells send your mail signature. This is superseded by the environment variable $SIG-
NATURE. If $SIGNATURE is not set and this profile entry is not present, the "gcos"
field of the /etc/passwd file will be used; otherwise, on hosts where nmh was config-
ured with the UCI option, the file $HOME/.signature is consulted. Your signature
will be added to the address send puts in the "From:" header; do not include an
address in the signature text. (profile, no default)
Process Profile Entries
The following profile elements are used whenever an nmh program invokes some other program
such as more. The .mh_profile can be used to select alternate programs if the user
wishes. The default values are given in the examples.
buildmimeproc: /usr/bin/mh/mhbuild
This is the program used by whatnow to process drafts which are MIME composition
files.
fileproc: /usr/bin/mh/refile
This program is used to refile or link a message to another folder. It is used by
post to file a copy of a message into a folder given by a "Fcc:" field. It is used
by the draft folder facility in comp, dist, forw, and repl to refile a draft message
into another folder. It is used to refile a draft message in response to the refile
directive at the "What now?" prompt.
incproc: /usr/bin/mh/inc
Program called by mhmail to incorporate new mail when it is invoked with no argu-
ments.
installproc: /usr/lib/mh/install-mh
This program is called to initialize the environment for new users of nmh.
lproc: /usr/bin/sensible-pager
This program is used to list the contents of a message in response to the list direc-
tive at the "What now?" prompt. It is also used by the draft folder facility in
comp, dist, forw, and repl to display the draft message.
mailproc: /usr/bin/mh/mhmail
This is the program used to automatically mail various messages and notifications.
It is used by conflict when using the -mail option. It is used by send to post fail-
ure notices. It is used to retrieve an external-body with access-type `mail-server'
(such as when storing the body with mhstore).
mhlproc: /usr/lib/mh/mhl
This is the program used to filter messages in various ways. It is used by mhshow to
filter and display the message headers of MIME messages. When the -format or -filter
option is used by forw or repl, the mhlproc is used to filter the message that you
are forwarding, or to which you are replying. When the -filter option is given to
send or post, the mhlproc is used by post to filter the copy of the message that is
sent to "Bcc:" recipients.
moreproc: /usr/bin/sensible-pager
This is the program used by mhl to page the mhl formatted message when displaying to
a terminal. It is also the default program used by mhshow to display message bodies
(or message parts) of type text/plain.
mshproc: /usr/bin/mh/msh
Currently not used.
packproc: /usr/bin/mh/packf
Currently not used.
postproc: /usr/lib/mh/post
This is the program used by send, mhmail, rcvdist, and viamail (used by the sendfiles
shell script) to post a message to the mail transport system. It is also called by
whom (called with the switches -whom and -library) to do address verification.
rmmproc: none
This is the program used by rmm and refile to delete a message from a folder.
rmfproc: /usr/bin/mh/rmf
Currently not used.
sendproc: /usr/bin/mh/send
This is the program to use by whatnow to actually send the message
showmimeproc: /usr/bin/mh/mhshow
This is the program used by show to process and display non-text (MIME) messages.
showproc: /usr/lib/mh/mhl
This is the program used by show to filter and display text (non-MIME) messages.
whatnowproc: /usr/bin/mh/whatnow
This is the program invoked by comp, forw, dist, and repl to query about the disposi-
tion of a composed draft message.
whomproc: /usr/bin/mh/whom
This is the program used by whatnow to determine to whom a message would be sent.
Environment Variables
The operation of nmh and its commands it also controlled by the presence of certain envi-
ronment variables.
Many of these environment variables are used internally by the "What now?" interface.
It's amazing all the information that has to get passed via environment variables to make
the "What now?" interface look squeaky clean to the nmh user, isn't it? The reason for
all this is that the nmh user can select any program as the whatnowproc, including one of
the standard shells. As a result, it's not possible to pass information via an argument
list. The convention is that environment variables whose names are all upper-case are
user-settable; those whose names are lower-case only are used internally by nmh and should
not generally be set by the user.
If the WHATNOW option was set during nmh configuration, and if this environment variable
is set, then if the commands refile , send, show, or whom are not given any `msgs' argu-
ments, then they will default to using the file indicated by mh-draft(5). This is useful
for getting the default behavior supplied by the default whatnowproc.
$MH
With this environment variable, you can specify a profile other than .mh_profile to
be read by the nmh programs that you invoke. If the value of $MH is not absolute,
(i.e., does not begin with a "/"), it will be presumed to start from the current
working directory. This is one of the very few exceptions in nmh where non-absolute
pathnames are not considered relative to the user's nmh directory.
$MHCONTEXT
With this environment variable, you can specify a context other than the normal con-
text file (as specified in the nmh profile). As always, unless the value of $MHCON-
TEXT is absolute, it will be presumed to start from your nmh directory.
$MM_CHARSET
With this environment variable, you can specify the native character set you are
using. You must be able to display this character set on your terminal.
This variable is checked to see if a RFC-2047 header field should be decoded (in inc,
scan, mhl). This variable is checked by show to see if the showproc or showmimeproc
should be called, since showmimeproc will be called if a text message uses a charac-
ter set that doesn't match $MM_CHARSET. This variable is checked by mhshow for
matches against the charset parameter of text contents to decide it the text content
can be displayed without modifications to your terminal. This variable is checked by
mhbuild to decide what character set to specify in the charset parameter of text con-
tents containing 8-bit characters.
When decoding text in such an alternate character set, nmh must be able to determine
which characters are alphabetic, which are control characters, etc. For many operat-
ing systems, this will require enabling the support for locales (such as setting the
environment variable $LC_CTYPE to iso_8859_1).
$MAILDROP
This variable tells inc the default maildrop. This supersedes the "MailDrop" profile
entry.
$SIGNATURE
This variable tells send and post your mail signature. This supersedes the "Signa-
ture" profile entry.
$HOME
This variable tells all nmh programs your home directory
$SHELL
This variable tells bbl the default shell to run
$TERM
This variable tells nmh your terminal type.
The environment variable $TERMCAP is also consulted. In particular, these tell scan
and mhl how to clear your terminal, and how many columns wide your terminal is. They
also tell mhl how many lines long your terminal screen is.
$editalt
This is the alternate message.
This is set by dist and repl during edit sessions so you can peruse the message being
distributed or replied to. The message is also available through a link called "@"
in the current directory if your current working directory and the folder the message
lives in are on the same UNIX filesystem.
$mhdraft
This is the path to the working draft.
This is set by comp, dist, forw, and repl to tell the whatnowproc which file to ask
"What now?" questions about.
$mhfolder
This is set by dist, forw, and repl, if appropriate.
$mhaltmsg
dist and repl set $mhaltmsg to tell the whatnowproc about an alternate message asso-
ciated with the draft (the message being distributed or replied to).
$mhdist
dist sets $mhdist to tell the whatnowproc that message re-distribution is occurring.
$mheditor
This is set by comp, repl, forw, and dist to tell the whatnowproc the user's choice
of editor (unless overridden by -noedit).
$mhuse
This may be set by comp.
$mhmessages
This is set by dist, forw, and repl if annotations are to occur.
$mhannotate
This is set by dist, forw, and repl if annotations are to occur.
$mhinplace
This is set by dist, forw, and repl if annotations are to occur.
$mhfolder
This is the folder containing the alternate message.
This is set by dist and repl during edit sessions so you can peruse other messages in
the current folder besides the one being distributed or replied to. The environment
variable $mhfolder is also set by show, prev, and next for use by mhl.
FILES
$HOME/.mh_profile The user profile
or $MH Rather than the standard profile
<mh-dir>/context The user context
or $MHCONTEXT Rather than the standard context
<folder>/.mh_sequences Public sequences for <folder>
SEE ALSO
nmh(7), environ(5), mh-sequence(5)
HISTORY
The .mh_profile contains only static information, which nmh programs will NOT update.
Changes in context are made to the context file kept in the users nmh directory. This
includes, but is not limited to: the "Current-Folder" entry and all private sequence
information. Public sequence information is kept in each folder in the file determined by
the "mh-sequences" profile entry (default is .mh_sequences).
The .mh_profile may override the path of the context file, by specifying a "context" entry
(this must be in lower-case). If the entry is not absolute (does not start with a "/"),
then it is interpreted relative to the user's nmh directory. As a result, you can actu-
ally have more than one set of private sequences by using different context files.
BUGS
The shell quoting conventions are not available in the .mh_profile. Each token is sepa-
rated by whitespace.
There is some question as to what kind of arguments should be placed in the profile as
options. In order to provide a clear answer, recall command line semantics of all nmh
programs: conflicting switches (e.g. -header and -noheader) may occur more than one time
on the command line, with the last switch taking effect. Other arguments, such as message
sequences, filenames and folders, are always remembered on the invocation line and are not
superseded by following arguments of the same type. Hence, it is safe to place only
switches (and their arguments) in the profile.
If one finds that an nmh program is being invoked again and again with the same arguments,
and those arguments aren't switches, then there are a few possible solutions to this prob-
lem. The first is to create a (soft) link in your $HOME/bin directory to the nmh program
of your choice. By giving this link a different name, you can create a new entry in your
profile and use an alternate set of defaults for the nmh command. Similarly, you could
create a small shell script which called the nmh program of your choice with an alternate
set of invocation line switches (using links and an alternate profile entry is preferable
to this solution).
Finally, the csh user could create an alias for the command of the form:
alias cmd 'cmd arg1 arg2 ...'
In this way, the user can avoid lengthy type-in to the shell, and still give nmh commands
safely. (Recall that some nmh commands invoke others, and that in all cases, the profile
is read, meaning that aliases are disregarded beyond an initial command invocation)
MH.6.8 1 Jul 2003 MH-PROFILE(5)
Generated by $Id: phpMan.php,v 4.49 2006/02/26 13:18:18 chedong Exp $ Author: Che Dong
On Apache
Under GNU General Public License
2012-05-25 23:06 @38.107.179.239 Crawled by CCBot/1.0 (+http://www.commoncrawl.org/bot.html)