Next: Reading Mail, Previous: Using This Manual, Up: Top

## 5 Incorporating Your Mail

This chapter talks about getting mail from your system mailbox into your MH ‘`+inbox`’ folder. The following command accomplishes that and is found in the ‘`Folder`’ menu.

`i`
  Incorporate new mail into a folder (`mh-inc-folder`).

The following options in the ‘`mh-inc`’ customization group are used.

`mh-inc-prog`
  Program to incorporate mail (default: `"inc"`).
`mh-inc-spool-list`
  Alternate spool files (default: `nil`).

The following hook is available.

`mh-inc-folder-hook`
  Hook run by `mh-inc-folder` after incorporating mail into a folder (default: `nil`).

If at any time you receive new mail, incorporate the new mail into your ‘`+inbox`’ buffer with `i` (`mh-inc-folder`). Note that `i` will display the ‘`+inbox`’ buffer, even if there isn't any new mail. You can incorporate mail from any file into the current folder by specifying a prefix argument; you'll be prompted for the name of the file to use as well as the destination folder (for example, `C-u i ~/mbox <RET> +tmp <RET>`).

Emacs can notify you when you have new mail by displaying ‘`Mail`’ in the mode line. To enable this behavior, and to have a clock in the mode line as well, add the following to `~/.emacs`:

         (display-time)

The name of the program that incorporates new mail is stored in `mh-inc-prog`; it is `"inc"` by default. This program generates a one-line summary for each of the new messages. Unless it is an absolute pathname, the file is assumed to be in the `mh-progs` directory (see Getting Started). You may also link a file to `inc` that uses a different format (see ‘`mh-profile`’(5), and sections Reading Mail: inc show next prev and MH Format Strings in the MH book). You'll then need to modify several variables appropriately (see Scan Line Formats).

You can use the `mh-inc-spool-list` variable to direct MH-E to retrieve mail from arbitrary spool files other than your system mailbox, file it in folders other than your ‘`+inbox`’, and assign key bindings to incorporate this mail.

Suppose you are subscribed to the mh-e-devel mailing list and you use `procmail` to filter this mail into `~/mail/mh-e` with the following recipe in `.procmailrc`:

         PATH=$PATH:/usr/bin/mh
         MAILDIR=$HOME/`mhparam Path`
         :0:
         * ^From mh-e-devel-admin@stop.mail-abuse.org
         mh-e

In order to incorporate `~/mail/mh-e` into ‘`+mh-e`’ with an `I m` (`mh-inc-spool-mh-e`) command, customize this option, and click on the ‘`INS`’ button. Enter a ‘`Spool File`’ of ‘`~/mail/mh-e`’, a ‘`Folder`’ of ‘`mh-e`’, and a ‘`Key Binding`’ of ‘`m`’.

You can use `xbuffy` to automate the incorporation of this mail using the Emacs 23 command `emacsclient` as follows:

         box ~/mail/mh-e
             title mh-e
             origMode
             polltime 10
             headertime 0
             command emacsclient --eval '(mh-inc-spool-mh-e)'

In XEmacs, the command `gnuclient` is used in a similar fashion.

You can set the hook `mh-inc-folder-hook`, which is called after new mail is incorporated by the `i` (`mh-inc-folder`) command. A good use of this hook is to rescan the whole folder either after running `M-x mh-rmail` the first time or when you've changed the message numbers from outside of MH-E.

         (defun my-mh-inc-folder-hook ()
           "Hook to rescan folder after incorporating mail."
           (if (buffer-modified-p)            ; if outstanding refiles and deletes,
               (mh-execute-commands))         ;   carry them out
           (mh-rescan-folder)                 ; synchronize with +inbox
           (mh-show))                         ; show the current message

         (add-hook 'mh-inc-folder-hook 'my-mh-inc-folder-hook)

         Rescan folder after incorporating new mail via mh-inc-folder-hook