10. Editing Within a Message

Rmail mode provides a few special commands for moving within and
editing the current message. In addition, the usual Emacs commands are
available (except for a few, such as C-M-n and C-M-h, that
are redefined by Rmail for other purposes). However, the Rmail buffer
is normally read-only, and to alter it you must use the Rmail command
w described below.

t

Toggle display of original headers (rmail-toggle-headers).

w

Edit current message (rmail-edit-current-message).

Rmail reformats the header of each message before displaying it.
Normally this involves deleting most header fields, on the grounds that
they are not interesting. The variable rmail-ignored-headers
should contain a regexp that matches the header fields to discard in
this way. The original headers are saved permanently; to see what they
look like, use the t (rmail-toggle-headers) command. This
discards the reformatted headers of the current message and displays it
with the original headers. Repeating t reformats the message
again. Selecting the message again also reformats.

The Rmail buffer is normally read-only, and most of the characters you
would type to modify it (including most letters) are redefined as Rmail
commands. This is usually not a problem since people rarely want to
change the text of a message. When you do want to do this, type w
(rmail-edit-current-message), which changes from Rmail mode to
Rmail Edit mode, another major mode which is nearly the same as Text
mode. The mode line indicates this change.

In Rmail Edit mode, letters insert themselves as usual and the Rmail
commands are not available. When you are finished editing the message
and are ready to go back to Rmail, type C-c C-c, which switches
back to Rmail mode. To return to Rmail mode but cancel all the editing
you have done, type C-c C-].

Entering Rmail Edit mode calls the value of the variable
text-mode-hook with no arguments, if that value exists and is not
nil. It then does the same with the variable
rmail-edit-mode-hook and finally adds the attribute `edited'
to the message.