33.11.2 Editing in Summaries
You can use the Rmail summary buffer to do almost anything you can do in the Rmail buffer itself. In fact, once you have a summary buffer, there’s no need to switch back to the Rmail buffer.
You can select and display various messages in the Rmail buffer, from the summary buffer, just by moving point in the summary buffer to different lines. It doesn’t matter what Emacs command you use to move point; whichever line point is on at the end of the command, that message is selected in the Rmail buffer.
Almost all Rmail commands work in the summary buffer as well as in the Rmail buffer. Thus, d
in the summary buffer deletes the current message, u
undeletes, and x
expunges. (However, in the summary buffer, if there are no more undeleted messages in the relevant direction, the delete commands go to the first or last message, rather than staying on the current message.) o
and C-o
output the current message to a FILE; r
starts a reply to it; etc. You can scroll the current message while remaining in the summary buffer using SPC
and DEL
. However, in the summary buffer scrolling past the end or the beginning of a message with SPC
or DEL
goes, respectively, to the next or previous undeleted message. Customize the rmail-summary-scroll-between-messages
option to nil
to disable scrolling to next/previous messages.
M-u
(rmail-summary-undelete-many
) undeletes all deleted messages in the summary. A prefix argument means to undelete that many of the previous deleted messages.
The Rmail commands to move between messages also work in the summary buffer, but with a twist: they move through the set of messages included in the summary. They also ensure the Rmail buffer appears on the screen (unlike cursor motion commands, which update the contents of the Rmail buffer but don’t display it in a window unless it already appears). Here is a list of these commands:
n
Move to next line, skipping lines saying “deleted", and select its message (rmail-summary-next-msg
).
p
Move to previous line, skipping lines saying “deleted", and select its message (rmail-summary-previous-msg
).
M-n
Move to next line and select its message (rmail-summary-next-all
).
M-p
Move to previous line and select its message (rmail-summary-previous-all
).
>
Move to the last line, and select its message (rmail-summary-last-message
).
<
Move to the first line, and select its message (rmail-summary-first-message
).
j
RET
Select the message on the current line (ensuring that the Rmail buffer appears on the screen; rmail-summary-goto-msg
). With argument n
, select message number n
and move to its line in the summary buffer; this signals an error if the message is not listed in the summary buffer.
M-s pattern RET
Search through messages for pattern
starting with the current message; select the message found, and move point in the summary buffer to that message’s line (rmail-summary-search
). A prefix argument acts as a repeat count; a negative argument means search backward (equivalent to rmail-summary-search-backward
.)
C-M-n labels RET
Move to the next message with at least one of the specified labels (rmail-summary-next-labeled-message
). labels
is a comma-separated list of labels. A prefix argument acts as a repeat count.
C-M-p labels RET
Move to the previous message with at least one of the specified labels (rmail-summary-previous-labeled-message
).
C-c C-n RET
Move to the next message with the same subject as the current message (rmail-summary-next-same-subject
). A prefix argument acts as a repeat count.
C-c C-p RET
Move to the previous message with the same subject as the current message (rmail-summary-previous-same-subject
).
Deletion, undeletion, and getting new mail, and even selection of a different message all update the summary buffer when you do them in the Rmail buffer. If the variable rmail-redisplay-summary
is non-nil
, these actions also bring the summary buffer back onto the screen.
When you are finished using the summary, type Q
(rmail-summary-wipe
) to delete the summary buffer’s window. You can also exit Rmail while in the summary: q
(rmail-summary-quit
) deletes the summary window, then exits from Rmail by saving the Rmail file and switching to another buffer. Alternatively, b
(rmail-summary-bury
) simply buries the Rmail summary and buffer.