@c This is part of the Emacs manual.
-@c Copyright (C) 1985, 86, 87, 93, 94, 95, 1997 Free Software Foundation, Inc.
+@c Copyright (C) 1985,86,87,93,94,95,1997,2001 Free Software Foundation, Inc.
@c See file emacs.texi for copying conditions.
@node Rmail, Dired, Sending Mail, Top
@chapter Reading Mail with Rmail
(@pxref{Rmail Motion}).
@kindex s @r{(Rmail)}
-@findex rmail-save
+@findex rmail-expunge-and-save
Following the usual conventions of Emacs, changes in an Rmail file
become permanent only when the file is saved. You can save it with
-@kbd{s} (@code{rmail-save}), which also expunges deleted messages from
-the file first (@pxref{Rmail Deletion}). To save the file without
-expunging, use @kbd{C-x C-s}. Rmail also saves the Rmail file after
-merging new mail from an inbox file (@pxref{Rmail Inbox}).
+@kbd{s} (@code{rmail-expunge-and-save}), which also expunges deleted
+messages from the file first (@pxref{Rmail Deletion}). To save the
+file without expunging, use @kbd{C-x C-s}. Rmail also saves the Rmail
+file after merging new mail from an inbox file (@pxref{Rmail Inbox}).
@kindex q @r{(Rmail)}
@findex rmail-quit
receipt of messages. When you enter Rmail, you are positioned at the
first message that you have not yet made current (that is, the first one
that has the @samp{unseen} attribute; @pxref{Rmail Attributes}). Move
-forward to see the other new messages; move backward to reexamine old
+forward to see the other new messages; move backward to re-examine old
messages.
@table @kbd
the direction of motion after deletion.
@vindex rmail-delete-message-hook
- Whenever Rmail deletes a message, it invokes the function(s) listed in
+ Whenever Rmail deletes a message, it runs the hook
@code{rmail-delete-message-hook}. When the hook functions are invoked,
the message has been marked deleted, but it is still the current message
in the Rmail buffer.
inbox format; the output commands ascertain the file's format and write
the copied message in that format.
- When copying a message to a file in Unix mail file format, these
-commands include whichever header fields are currently visible. Use the
-@kbd{t} command first, if you wish, to specify which headers to show
-(and copy).
-
The @kbd{o} and @kbd{C-o} commands differ in two ways: each has its
own separate default file name, and each specifies a choice of format to
use when the file does not already exist. The @kbd{o} command uses
headers and then send it. The variable
@code{rmail-retry-ignored-headers}, in the same format as
@code{rmail-ignored-headers} (@pxref{Rmail Display}), controls which
-headers are stripped from the failed message when retrying it; it
-defaults to @code{nil}.
+headers are stripped from the failed message when retrying it.
@kindex f @r{(Rmail)}
@findex rmail-forward
@dfn{Resending} is an alternative similar to forwarding; the
difference is that resending sends a message that is ``from'' the
original sender, just as it reached you---with a few added header fields
-@samp{Resent-from} and @samp{Resent-to} to indicate that it came via
+@samp{Resent-From} and @samp{Resent-To} to indicate that it came via
you. To resend a message in Rmail, use @kbd{C-u f}. (@kbd{f} runs
@code{rmail-forward}, which is programmed to invoke @code{rmail-resend}
if you provide a numeric argument.)
If you set the variable @code{rmail-mail-new-frame} to a
non-@code{nil} value, then all the Rmail commands to start sending a
message create a new frame to edit it in. This frame is deleted when
-you send the message, or when you use the @samp{Don't Send} item in the
+you send the message, or when you use the @samp{Cancel} item in the
@samp{Mail} menu.
All the Rmail commands to send a message use the mail-composition
A @dfn{summary} is a buffer containing one line per message to give
you an overview of the mail in an Rmail file. Each line shows the
-message number, the sender, the labels, and the subject. Almost all
-Rmail commands are valid in the summary buffer also; these apply to the
-message described by the current line of the summary. Moving point in
-the summary buffer selects messages as you move to their summary lines.
+message number and date, the sender, the line count, the labels, and
+the subject. Moving point in the summary buffer selects messages as
+you move to their summary lines. Almost all Rmail commands are valid
+in the summary buffer also; when used there, they apply to the message
+described by the current line of the summary.
A summary buffer applies to a single Rmail file only; if you are
editing multiple Rmail files, each one can have its own summary buffer.
@item C-M-t @var{topic} @key{RET}
Summarize messages that have a match for the specified regexp
@var{topic} in their subjects (@code{rmail-summary-by-topic}).
+@item C-M-s @var{regexp}
+Summarize messages whose headers and the subject line match the
+specified regular expression @var{regexp}
+(@code{rmail-summary-by-regexp}).
@end table
@kindex h @r{(Rmail)}
makes a partial summary mentioning only the messages whose subjects have
a match for the regular expression @var{topic}.
+@kindex C-M-s @r{(Rmail)}
+@findex rmail-summary-by-regexp
+ @kbd{C-M-s @var{regexp} @key{RET}} (@code{rmail-summary-by-regexp})
+makes a partial summary which mentions only the messages whose headers
+(including the date and the subject lines) match the regular
+expression @var{regexp}.
+
Note that there is only one summary buffer for any Rmail file; making one
kind of summary discards any previously made summary.
specifies the header fields to highlight; if it matches the beginning
of a header field, that whole field is highlighted.
- If you specify unusual colors for your text foreground and background,
-the colors used for highlighting may not go well with them. If so,
-specify different colors for the @code{highlight} face. That is worth
-doing because the @code{highlight} face is used for other kinds of
-highlighting as well. @xref{Faces}, for how to do this.
-
- To turn off highlighting entirely in Rmail, set
+ If you specify unusual colors for your text foreground and
+background, the colors used for highlighting may not go well with
+them. If so, specify different colors for the face
+@code{rmail-highlight-face}. @xref{Faces}, for how to do this. To
+turn off highlighting entirely in Rmail, set
@code{rmail-highlighted-headers} to @code{nil}.
You can highlight and activate URLs in incoming messages by adding
the function @code{goto-address} to the hook
@code{rmail-show-message-hook}. Then you can browse these URLs by
clicking on them with @kbd{Mouse-2} or by moving to one and typing
-@kbd{C-c @key{RET}}. @xref{Goto-address}.
+@kbd{C-c @key{RET}}. @xref{Goto-address, Activating URLs, Activating URLs}.
@node Rmail Coding
@section Rmail and Coding Systems
@cindex decoding mail messages (Rmail)
- Rmail automatically decodes messages which contain non-@sc{ascii}
-characters, just as it does with files you visit and with and
-subprocess output. Rmail uses the standard
-@samp{charset=@var{charset}} header in the message to determine how
-the was message encoded by the sender. It maps @var{charset} into the
-corresponding Emacs coding system (@pxref{Coding Systems}), and uses
-that coding system to decode message text. If the message header
-doesn't have the charset specification, or if the @var{charset} it
-specifies is not recognized, Rmail chooses the coding system with the
-usual Emacs heuristics and defaults (@pxref{Recognize Coding}).
+ Rmail automatically decodes messages which contain non-ASCII
+characters, just as Emacs does with files you visit and with subprocess
+output. Rmail uses the standard @samp{charset=@var{charset}} header in
+the message, if any, to determine how the message was encoded by the
+sender. It maps @var{charset} into the corresponding Emacs coding
+system (@pxref{Coding Systems}), and uses that coding system to decode
+message text. If the message header doesn't have the @samp{charset}
+specification, or if @var{charset} is not recognized,
+Rmail chooses the coding system with the usual Emacs heuristics and
+defaults (@pxref{Recognize Coding}).
@cindex fixing incorrectly decoded mail messages
Occasionally, a message is decoded incorrectly, either because Emacs
runs the hook @code{rmail-edit-mode-hook} (@pxref{Hooks}). It adds the
attribute @samp{edited} to the message. It also displays the full
headers of the message, so that you can edit the headers as well as the
-body of the message, and your changes in the the headers will be
+body of the message, and your changes in the headers will be
permanent.
@node Rmail Digest
@node Out of Rmail
@section Converting an Rmail File to Inbox Format
+@cindex Babyl format to Inbox format
+@cindex converting Rmail file to mailbox format
@findex unrmail
The command @kbd{M-x unrmail} converts a file in Rmail format to inbox
-format (also known as the system mailbox format), so that you can use it
-with other mail-editing tools. You must specify two arguments, the name
-of the Rmail file and the name to use for the converted file. @kbd{M-x
-unrmail} does not alter the Rmail file itself.
+format (also known as the system mailbox, or mbox, format), so that
+you can use it with other mail-editing tools. You must specify two
+arguments, the name of the Rmail file and the name to use for the
+converted file. @kbd{M-x unrmail} does not alter the Rmail file itself.
+
+@pindex b2m
+ @kbd{M-x unrmail} is useful if you can run Emacs on the machine
+where the Rmail file resides, or can access the Rmail file remotely
+(@pxref{Remote Files}) from a machine where Emacs is installed. If
+accessing Rmail files from Emacs is impossible, you can use the
+@command{b2m} program instead. @command{b2m} is part of the Emacs
+distribution, it is installed into the same directory where all the
+other auxiliary programs (@command{etags} etc.) are installed, and its
+source is available in the Emacs source distribution, so that you
+could copy the source to the target machine and compile it there.
+
+ To convert a file @file{@var{babyl-file}} into @file{@var{mbox-file}},
+invoke @command{b2m} like this:
+
+@example
+ b2m < @var{babyl-file} > @var{mbox-file}
+@end example
@node Rmail Rot13
@section Reading Rot13 Messages