-.TH MH-PROFILE %manext5% "November 6, 2012" "%nmhversion%"
+.TH MH-PROFILE %manext5% "April 18, 2014" "%nmhversion%"
.\"
.\" %nmhwarning%
.\"
.SH NAME
mh-profile \- user profile customization for nmh message handler
-.SH SYNOPSIS
-.I $HOME/.mh\(ruprofile
.SH DESCRIPTION
Each user of
.B nmh
.RE
.PP
.BR Editor :
-/usr/bin/vi
+vi
.RS 5
Defines the editor to be used by the commands
.BR comp ,
.BR forw ,
and
.BR repl .
-(profile, default: %default_editor%)
-.RE
-.PP
-.BR automimeproc :
-.RS 5
-If defined and set to 1, then the
-.B 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)
+If not set in profile the value will be taken from the VISUAL and
+EDITOR environment variables.
+(profile, default: vi)
.RE
.PP
.BR Msg\-Protect :
(profile, default: 700)
.RE
.PP
+.BR datalocking :
+fcntl
+.RS 5
+The locking algorithm used to lock changes to any
+.B nmh
+data files, such as sequences or the context. The locking algorithm is
+any one of the following entries:
+.PP
+.RS 5
+.nf
+%supported_locks%
+.fi
+.RE
+.PP
+Available locking algorithms can vary depending on what is supported by
+the operating system. Note: currently transactional locking is only
+supported on public sequences; see
+.IR mh\-sequence (5)
+for more information.
+(profile, default: fcntl)
+.RE
+.PP
.IR program :
.I default switches
.RS 5
and
.B repl
to construct your default \*(lqFrom\*(rq header. The text used here will
-be copied exactly to your From: header, so it should already be RFC-822
+be copied exactly to your From: header, so it should already be RFC 822
compliant. If this is set, the
.B Signature
profile entry is NOT used, so it should include a signature as well. (profile,
signature text. The \*(lqLocal\-Mailbox\*(rq profile component
supersedes all of this. (profile, no default)
.RE
+.PP
+.BR credentials :
+\&legacy
+.RS 5
+Indicates how the username and password credentials will be retrieved
+for access to external servers, such as those that provide SMTP or POP
+service. The supported entry values are \*(lqlegacy\*(rq and
+.RI \*(lqfile: netrc \*(rq.
+With \*(lqlegacy\*(rq, or if there is no credentials entry, the
+username is the first of:
+.PP
+.RS 5
+1)
+.B \-user
+switch to
+.BR send ,
+.BR post ,
+.BR whom ,
+.BR inc ,
+or
+.B msgchk
+program
+.br
+2) the login name on the local machine
+.RE
+.PP
+The password for SMTP services is the first of:
+.PP
+.RS 5
+1) password value from matching entry in file named \*(lq.netrc\*(rq
+in the user's home directory
+.br
+2) password obtained by interactively prompting the user
+.RE
+.PP
+The password for POP service when the
+.B \-sasl
+switch is used with one of these programs is the login name on the
+local machine.
+.PP
+With a
+.RI \*(lqfile: netrc \*(rq
+.B credentials
+entry, the username is the first of:
+.PP
+.RS 5
+1)
+.B \-user
+switch to program
+.br
+2) login name from matching entry in
+.I netrc
+file
+.br
+3) value provided by user in response to interactive query
+.RE
+.PP
+Similarly, the password is provided either in the
+.I netrc
+file or interactively.
+.I netrc
+can be any valid filename, either absolute or relative to Path or
+$HOME. The
+.I netrc
+file contains authentication information, for each server,
+using a line of the following form. Replace the words
+.IR myserver ,
+.IR mylogin ,
+and
+.I mypassword
+with your own account information:
+.PP
+.RS 5
+.B machine
+.I myserver
+.B login
+.I mylogin
+.B password
+.I mypassword
+.RE
+.PP
+This
+.I netrc
+file must be owned and readable only by you.
+(profile, default: legacy)
+.RE
.SS "Process Profile Entries"
The following profile elements are used whenever an
.B nmh
.I \&.mh\(ruprofile
can be used to select alternate programs if the
user wishes. The default values are given in the examples.
+.PP
+If the profile element contains spaces, the element is split at spaces
+into tokens and each token is given as a separate argument to the
+.IR execvp (2)
+system call. If the element contains shell metacharacters then the entire
+element is executed using
+.BR /bin/sh .
.RE
.PP
.BR buildmimeproc :
is invoked with no arguments.
.RE
.PP
-.BR installproc :
-%libdir%/install\-mh
-.RS 5
-This program is called to initialize the environment for
-new users of
-.BR nmh .
-.RE
-.PP
.BR lproc :
-%default_pager%
+more
.RS 5
This program is used to list the contents of a message in response
to the
.RS 5
This is the program used to automatically mail various messages
and notifications. It is used by
-.B conflict
-when using the
-.B \-mail
-option. It is used by
.B send
to post failure notices.
It is used to retrieve an external-body with access-type `mail-server'
.RE
.PP
.BR moreproc :
-%default_pager%
+more
.RS 5
This is the program used by
.B mhl
supersedes the default built-in pager command.)
.RE
.PP
-.BR mshproc :
-%bindir%/msh
-.RS 5
-Currently not used.
-.RE
-.PP
.BR packproc :
%bindir%/packf
.RS 5
none
.RS 5
This is the program used by
-.B rmm
+.BR rmm ,
+.BR refile ,
and
-.B refile
+.B mhfixmsg
to delete a message from a folder.
.RE
.PP
.B whatnow
to determine to whom a message would be sent.
.RE
+.SS "Profile Lookup"
+Some
+.B nmh
+programs will look in more than just the user's
+.I \&.mh\(ruprofile
+for profile entries. In particular,
+.BR mhbuild ,
+.BR mhshow ,
+.BR mhstore ,
+and
+.BR mhn
+will also all look in a file specified by a program-specific
+environment variable (see below), and after that in
+the system-installed profile (%etcdir%/mhn.defaults). (The
+.B mhfixmsg
+program is similar, but doesn't consult an environment variable.)
+The first match found for a particular component will be used,
+allowing user-supplied entries to override those that are system-supplied.
+A profile component with a blank value field will "hide" any later
+occurrences of the component, and will make the entry appear to be
+absent.
.SS "Environment Variables"
The operation of
.B nmh
in addition to the mhn.defaults profile.
.RE
.PP
-.B $MM_CHARSET
-.RS 5
-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.
-.PP
-This variable is checked to see if a RFC-2047 header field should be
-decoded (in
-.BR inc ,
-.BR scan ,
-.BR mhl ).
-This variable is
-checked by
-.B show
-to see if the
-.I showproc
-or
-.I showmimeproc
-should
-be called, since showmimeproc will be called if a text message uses
-a character set that doesn't match
-.BR $MM_CHARSET .
-This variable is
-checked by
-.B 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
-.B mhbuild
-to decide what character set to specify in the charset
-parameter of text contents containing 8\-bit characters.
-.PP
-When decoding text in such an alternate character set,
-.B nmh
-must be able to determine which characters are alphabetic, which
-are control characters, etc. For many operating systems, this
-will require enabling the support for locales (such as setting
-the environment variable
-.B $LC_CTYPE
-to iso_8859_1).
-.RE
-.PP
.B $MAILDROP
.RS 5
This variable tells
.PP
.B $MHTMPDIR
.B $TMPDIR
-.B $TMP
.RS 5
These variables are searched, in order, for the directory in which to
create some temporary files.
.B repl
during edit sessions so you can
peruse the message being distributed or replied to. The message is also
-available through a link called \*(lq@\*(rq in the current directory if
+available, when the
+.B \-atfile
+switch is used,
+through a link called \*(lq@\*(rq in the current directory if
your current working directory and the folder the message lives in are
-on the same UNIX filesystem.
+on the same UNIX filesystem, and if your current working directory is
+writable.
.RE
.PP
.B $mhdraft