Provided by: nmh_1.3-1build1_i386 bug

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 directory.  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' argument 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  originated  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 addition, 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  $SIGNATURE.   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
            configured 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 arguments.

       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 directive 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 failure 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 disposition 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 environment 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' arguments, 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  context file (as specified in the nmh profile).
            As always, unless the value of $MHCONTEXT 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 character 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 contents 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 operating  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 "Signature" 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  associated  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
       actually 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 separated 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 problem.  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)