Next: Folders, Previous: Incorporating Mail, Up: Top

## 6 Reading Your Mail

The MH-E entry point for reading mail is `M-x mh-rmail`. This command incorporates your mail and creates a buffer called ‘`+inbox`’ in MH-Folder mode. The command `M-x mh-rmail` shows you only new mail, not mail you have already read1.

There are some commands that need to read mail, such as `Mouse-2` over the ‘`Mail`’ button that `display-time` adds to the mode line. You can configure Emacs to have these commands use MH-E by setting the option `read-mail-command` to ‘`mh-rmail`’.

The ‘`+inbox`’ buffer contains scan lines, which are one-line summaries of each incorporated message. You can perform most MH commands on these messages via one- or two-letter commands in either the MH-Folder or MH-Show buffers or by using the ‘`Message`’ menu. See `scan`(1) for a description of the contents of the scan lines, and see the Figure in Reading Mail Tour, for an example.

`?`
  Display cheat sheet for the MH-E commands (`mh-help`).
`<RET>`
  Display message (`mh-show`).
`, (comma)`
  Display message with all header fields (`mh-header-display`).
`: (colon)`
  Display message with the default preferred alternative (`mh-show-preferred-alternative`).
`; (semicolon)`
  Toggle the value of `mh-decode-mime-flag` (`mh-toggle-mh-decode-mime-flag`).
`<SPC>`
  Display next page in message (`mh-page-msg`).
`<BS>`
  Display previous page in message (`mh-previous-page`).
`>`
  Append message to end of file (`mh-write-msg-to-file`).
`|`
  Pipe message through shell command (`mh-pipe-msg`).
`C-d`
  Delete range, don't move to next message (`mh-delete-msg-no-motion`).
`d`
  Delete range (`mh-delete-msg`).
`D ?`
  Display cheat sheet for the commands of the current prefix in minibuffer (`mh-prefix-help`).
`D <SPC>`
  Display next message in digest (`mh-page-digest`).
`D <BS>`
  Display previous message in digest (`mh-page-digest-backwards`).
`D b`
  Break up digest into separate messages (`mh-burst-digest`).
`g`
  Go to a message (`mh-goto-msg`).
`k`
  Delete messages with same subject or thread (`mh-delete-subject-or-thread`).
`K ?`
  Display cheat sheet for the commands of the current prefix in minibuffer (`mh-prefix-help`).
`K <TAB>`
  Go to the next button (`mh-next-button`).
`K S-<TAB>`
  Go to the previous button (`mh-prev-button`).
`K a`
  Save attachments (`mh-mime-save-parts`).
`K e`
  View attachment externally (`mh-display-with-external-viewer`).
`K i`
  Show attachment verbatim (`mh-folder-inline-mime-part`).
`K o`
  Save (output) attachment (`mh-folder-save-mime-part`).
`K t`
  Toggle option `mh-display-buttons-for-inline-parts-flag` (`mh-toggle-mime-buttons`).
`K v`
  View attachment (`mh-folder-toggle-mime-part`).
`M`
  Edit message (`mh-modify`).
`M-<`
  Display first message (`mh-first-msg`).
`M->`
  Display last message (`mh-last-msg`).
`M-n`
  Display next unread message (`mh-next-unread-msg`).
`M-p`
  Display previous unread message (`mh-previous-unread-msg`).
`n`
  Display next message (`mh-next-undeleted-msg`).
`p`
  Display previous message (`mh-previous-undeleted-msg`).
`P ?`
  Display cheat sheet for the commands of the current prefix in minibuffer (`mh-prefix-help`).
`P C`
  Toggle whether color is used in printing messages (`mh-ps-print-toggle-color`).
`P F`
  Toggle whether printing is done with faces or not (`mh-ps-print-toggle-faces`).
`P f`
  Print range to file (`mh-ps-print-msg-file`).
`P l`
  Print range the old fashioned way (`mh-print-msg`).
`P p`
  Print range (`mh-ps-print-msg`).
`X ?`
  Display cheat sheet for the commands of the current prefix in minibuffer (`mh-prefix-help`).
`X s`
`X u`
  Unpack message created with `uudecode` or `shar` (`mh-store-msg`).
`Mouse-2`
  Move point to mouse event and show message (`mh-show-mouse`).

Within the MH-Show buffer, the following command is defined.

`<RET>`
`Mouse-1`
`Mouse-2`
  View contents of button (`mh-press-button`).

The following table lists options in the ‘`mh-show`’ customization group that are used while reading mail.

`mh-bury-show-buffer-flag`
  On means show buffer is buried (default: ‘`on`’).
`mh-clean-message-header-flag`
  On means remove extraneous header fields (default: ‘`on`’).
`mh-decode-mime-flag`
  On means attachments are handled (default: ‘`on`’ if the Gnus ‘`mm-decode`’ package is present).
`mh-display-buttons-for-alternatives-flag`
  On means display buttons for all alternative attachments (default: ‘`off`’).
`mh-display-buttons-for-inline-parts-flag`
  On means display buttons for all inline attachments (default: ‘`off`’).
`mh-do-not-confirm-flag`
  On means non-reversible commands do not prompt for confirmation (default: ‘`off`’).
`mh-fetch-x-image-url`
  Control fetching of ‘`X-Image-URL:`’ header field image (default: ‘`Never Fetch`’).
`mh-graphical-smileys-flag`
  On means graphical smileys are displayed (default: ‘`on`’).
`mh-graphical-emphasis-flag`
  On means graphical emphasis is displayed (default: ‘`on`’).
`mh-highlight-citation-style`
  Style for highlighting citations (default: ‘`Multicolor`’).
`mh-invisible-header-fields-default`
  List of hidden header fields (default: a checklist too long to list here).
`mh-invisible-header-fields`
  Additional header fields to hide (default: `nil`).
`mh-lpr-command-format`
  Command used to print (default: `"lpr -J '%s'"`).
`mh-max-inline-image-height`
  Maximum inline image height if ‘`Content-Disposition:`’ is not present (default: 0).
`mh-max-inline-image-width`
  Maximum inline image width if ‘`Content-Disposition:`’ is not present(default: 0).
`mh-mhl-format-file`
  Specifies the format file to pass to the `mhl` program (default: ‘`Use Default mhl Format (Printing Only)`’).
`mh-mime-save-parts-default-directory`
  Default directory to use for `K a`.
`mh-print-background-flag`
  On means messages should be printed in the background (default: ‘`off`’).
`mh-show-buffer-mode-line-buffer-id`
  Format string to produce `mode-line-buffer-identification` for show buffers (default: `" {show-%s} %d"`).
`mh-show-maximum-size`
  Maximum size of message (in bytes) to display automatically (default: 0).
`mh-show-use-xface-flag`
  On means display face images in MH-Show buffers (default: ‘`on`’).
`mh-store-default-directory`
  Default directory for `X s` (default: ‘`Current`’).
`mh-summary-height`
  Number of lines in MH-Folder buffer (including the mode line) (default: depends on size of frame).

The following hooks are available.

`mh-delete-msg-hook`
  Hook run after marking each message for deletion (default: `nil`).
`mh-show-hook`
  Hook run after <RET> shows a message (default: `nil`).
`mh-show-mode-hook`
  Hook run upon entry to `mh-show-mode` (default: `nil`).

The following faces are available.

`mh-show-cc`
  Face used to highlight ‘`cc:`’ header fields.
`mh-show-date`
  Face used to highlight ‘`Date:`’ header fields.
`mh-show-from`
  Face used to highlight ‘`From:`’ header fields.
`mh-show-header`
  Face used to deemphasize less interesting header fields.
`mh-show-pgg-bad`
  Bad PGG signature face.
`mh-show-pgg-good`
  Good PGG signature face.
`mh-show-pgg-unknown`
  Unknown or untrusted PGG signature face.
`mh-show-signature`
  Signature face.
`mh-show-subject`
  Face used to highlight ‘`Subject:`’ header fields.
`mh-show-to`
  Face used to highlight ‘`To:`’ header fields.
`mh-show-xface`
  X-Face image face.

The functions and variables introduced here are explained in more detail in the following sections.

#### Footnotes

[1] If you want to see your old mail as well, use `F r` to pull all your messages into MH-E. Or, give a prefix argument to `mh-rmail` so it will prompt you for folder to visit like `F v` (for example, `C-u M-x mh-rmail <RET> bob <RET>`). See Folders.