]> code.delx.au - gnu-emacs/blobdiff - doc/misc/mh-e.texi
(VERSION, EDITION, UPDATED, UPDATE-MONTH): Update for release 8.2.
[gnu-emacs] / doc / misc / mh-e.texi
index 7c9a86ad6575c1cfec5f2a0a7a5a48b489498882..b9739620f383f706dbd9cb368547767b6ff1a1b9 100644 (file)
@@ -8,12 +8,12 @@
 @c %**end of header
 
 @c Version of the software and manual.
-@set VERSION 8.0.3+CVS
+@set VERSION 8.2
 @c Edition of the manual. It is either empty for the first edition or
 @c has the form ", nth Edition" (without the quotes).
 @set EDITION
-@set UPDATED 2008-03-16
-@set UPDATE-MONTH March, 2008
+@set UPDATED 2009-06-13
+@set UPDATE-MONTH June, 2009
 
 @c Other variables.
 @set MH-BOOK-HOME http://rand-mh.sourceforge.net/book/mh
 This is version @value{VERSION}@value{EDITION} of @cite{The MH-E
 Manual}, last updated @value{UPDATED}.
 
-Copyright @copyright{} 1995, 2001, 2002, 2003, 2005, 2006, 2007, 2008
+Copyright @copyright{} 1995, 2001, 2002, 2003, 2005, 2006, 2007, 2008, 2009
 Free Software Foundation, Inc.
 
+@c This dual license has been agreed upon by the FSF.
+
 @quotation
 Permission is granted to copy, distribute and/or modify this document
-under the terms of the GNU Free Documentation License, Version 1.2 or
-any later version published by the Free Software Foundation; with no
-Invariant Sections, with the Front-Cover texts being ``A GNU Manual,''
-and with the Back-Cover Texts as in (a) below.  A copy of the license
-is included in the section entitled ``GNU Free Documentation License.''
+under the terms of either:
+
+@enumerate a
+@item
+the GNU Free Documentation License, Version 1.3 or any later version
+published by the Free Software Foundation; with no Invariant Sections,
+with the Front-Cover texts being ``A GNU Manual,'' and with the
+Back-Cover Texts as in (a) below. A copy of the license is included in
+the section entitled ``GNU Free Documentation License.''
 
 (a) The FSF's Back-Cover Text is: ``You have the freedom to copy and
-modify this GNU manual.  Buying copies from the FSF supports it in
+modify this GNU manual. Buying copies from the FSF supports it in
 developing GNU and promoting software freedom.''
+
+@item
+the GNU General Public License as published by the Free Software
+Foundation; either version 3, or (at your option) any later version. A
+copy of the license is included in the section entitled ``GNU General
+Public License.''
+@end enumerate
+
 @end quotation
 @end copying
 
@@ -48,7 +62,6 @@ developing GNU and promoting software freedom.''
 @end direntry
 
 @c Title Page
-@setchapternewpage odd
 @titlepage
 @title The MH-E Manual
 @subtitle Version @value{VERSION}@value{EDITION}
@@ -107,6 +120,7 @@ developing GNU and promoting software freedom.''
 * Odds and Ends::               Odds and Ends
 * History::                     History of MH-E
 * GFDL::                        GNU Free Documentation License
+* GPL::                         GNU General Public License
 * Key Index::                   Key (Character) Index
 * Command Index::               Command Index
 * Option Index::                Option (Variable) Index
@@ -199,8 +213,8 @@ more niceties about GNU Emacs and MH@. Now I'm fully hooked on both of
 them.
 
 The MH-E package is distributed with GNU Emacs@footnote{Version
-@value{VERSION} of MH-E will appear in GNU Emacs 22.1. It is supported
-in GNU Emacs 21, as well as XEmacs 21 (except for versions
+@value{VERSION} of MH-E will appear in GNU Emacs 23.1. It is supported
+in GNU Emacs 21 and 22, as well as XEmacs 21 (except for versions
 21.5.9-21.5.16). It is compatible with MH versions 6.8.4 and higher,
 all versions of nmh, and GNU mailutils 1.0 and higher.}, so you
 shouldn't have to do anything special to use it. Gnus is also
@@ -533,15 +547,15 @@ to install MH or tell MH-E where to find MH.
 
 @cindex Debian
 @cindex nmh
-@cindex GNU mailutils
+@cindex GNU mailutils MH
 
 If you don't have MH on your system already, you must install a
 variant of MH. The Debian mh-e package does this for you automatically
 (@pxref{Getting MH-E}). Most people use
 @uref{http://www.nongnu.org/nmh/, nmh}, but you may be interested in
-trying out @uref{http://www.gnu.org/software/mailutils/, GNU
-mailutils}, which supports IMAP. Your GNU/Linux distribution probably
-has packages for both of these.
+trying out @uref{http://www.gnu.org/software/mailutils/, GNU mailutils
+MH}, which supports IMAP. Your GNU/Linux distribution probably has
+packages for both of these.
 
 @cindex @command{install-mh}
 @cindex MH commands, @command{install-mh}
@@ -563,7 +577,8 @@ the more you can leverage its power. See the
 @cindex MH profile component, @samp{Path:}
 
 Your MH environment includes your @dfn{MH profile} which is found in
-the file @file{~/.mh_profile}. This file contains a number of @dfn{MH
+the file @file{~/.mh_profile}, or the file named in the environment
+variable @samp{$MH}. This file contains a number of @dfn{MH
 profile components}. For example, the @samp{Path:} MH profile
 component contains the path to your mail directory, which is
 @file{~/Mail} by default.
@@ -580,14 +595,15 @@ There are several options MH-E uses to interact with your MH
 installation. The option @code{mh-variant} specifies the variant used
 by MH-E (@pxref{Options}). The default setting of this option is
 @samp{Auto-detect} which means that MH-E will automatically choose the
-first of nmh, MH, or GNU mailutils that it finds in the directories
+first of nmh, MH, or GNU mailutils MH that it finds in the directories
 listed in @code{mh-path} (which you can customize),
 @code{mh-sys-path}, and @code{exec-path}. If MH-E can't find MH at
 all, you may have to customize @code{mh-path} and add the directory in
 which the command @command{mhparam} is located. If, on the other hand,
-you have both nmh and mailutils installed (for example) and
+you have both nmh and GNU mailutils MH installed (for example) and
 @code{mh-variant-in-use} was initialized to nmh but you want to use
-mailutils, then you can set @code{mh-variant} to @samp{mailutils}.
+GNU mailutils MH, then you can set @code{mh-variant} to
+@samp{gnu-mh}.
 
 @vindex mh-flists-present-flag
 @vindex mh-lib
@@ -705,7 +721,7 @@ left out the menu bar and tool bar in all of the example screens.}:
 To: wohler
 cc:
 Subject: Test
-X-Mailer: MH-E 8.0; nmh 1.1; GNU Emacs 22.1
+X-Mailer: MH-E 8.1; nmh 1.1; GNU Emacs 23.1
 --------
 This is a test message to get the wheels churning...#
 
@@ -788,7 +804,7 @@ You should see the scan line for your message, and perhaps others. Use
 -:%%  @{+inbox/select@} 4 msgs (1-4)   Bot L4     (MH-Folder Show)---------
 To: wohler
 Subject: Test
-X-Mailer: MH-E 8.0; nmh 1.1; GNU Emacs 22.1
+X-Mailer: MH-E 8.1; nmh 1.1; GNU Emacs 23.1
 Date: Fri, 17 Mar 2006 10:49:11 -0800
 From: Bill Wohler <wohler@@stop.mail-abuse.org>
 
@@ -836,14 +852,14 @@ In-reply-to: <31054.1142621351@@stop.mail-abuse.org>
 References: <31054.1142621351@@stop.mail-abuse.org>
 Comments: In-reply-to Bill Wohler <wohler@@stop.mail-abuse.org>
    message dated "Fri, 17 Mar 2006 10:49:11 -0800."
-X-Mailer: MH-E 8.0; nmh 1.1; GNU Emacs 22.1
+X-Mailer: MH-E 8.1; nmh 1.1; GNU Emacs 23.1
 --------
 #
 
 --:--  @{draft@}  All L10     (MH-Letter)----------------------------------
 To: wohler
 Subject: Test
-X-Mailer: MH-E 8.0; nmh 1.1; GNU Emacs 22.1
+X-Mailer: MH-E 8.1; nmh 1.1; GNU Emacs 23.1
 Date: Fri, 17 Mar 2006 10:49:11 -0800
 From: Bill Wohler <wohler@@stop.mail-abuse.org>
 
@@ -1492,7 +1508,7 @@ Binding} of @samp{m}.
 @cindex Unix commands, @command{xbuffy}
 
 You can use @command{xbuffy} to automate the incorporation of this
-mail using the Emacs 22 command @command{emacsclient} as follows:
+mail using the Emacs 23 command @command{emacsclient} as follows:
 
 @smallexample
 box ~/mail/mh-e
@@ -1601,6 +1617,14 @@ Display message (@code{mh-show}).
 @item , (comma)
 Display message with all header fields (@code{mh-header-display}).
 @c -------------------------
+@cindex @samp{Message > Show Message with Preferred Alternative} menu item
+@cindex menu item, @samp{Message > Show Message with Preferred Alternative}
+@kindex : (colon)
+@findex mh-show-preferred-alternative
+@item : (colon)
+Display message with the default preferred alternative
+(@code{mh-show-preferred-alternative}).
+@c -------------------------
 @kindex ; (semicolon)
 @findex mh-toggle-mh-decode-mime-flag
 @item ; (semicolon)
@@ -2479,6 +2503,15 @@ than the @samp{text/html} alternative. To do this in MH-E, customize
 the option @code{mm-discouraged-alternatives}, and add
 @samp{text/html}. The next best alternative, if any, will be shown.
 
+@findex mh-show-preferred-alternative
+@kindex : (colon)
+
+Occasionally, though, you might want to see the preferred alternative.
+The command @kbd{:} (@code{mh-show-preferred-alternative}) displays
+the message with the default preferred alternative. This is as if
+@code{mm-discouraged-alternatives} is set to @samp{nil}. Use the
+command @key{RET} (@code{mh-show}) to show the message normally again.
+
 @kindex K i
 @findex mh-folder-inline-mime-part
 
@@ -2633,7 +2666,7 @@ documentation for the Gnus command @kbd{W h} (see section
 @findex browse-url-at-mouse
 @kindex S-Mouse-2
 
-A useful key binding that you can add to to @file{~/.emacs} is the
+A useful key binding that you can add to @file{~/.emacs} is the
 following which displays an HTML link or textual URL in an external
 browser when clicked with @kbd{S-mouse-2}. This binding works in any
 buffer, including HTML buffers.
@@ -3379,6 +3412,10 @@ Hook run by @code{mh-folder-mode} when visiting a new folder (default:
 Abnormal hook run at the beginning of @code{mh-kill-folder} (default:
 @code{'mh-search-p}).
 @c -------------------------
+@item mh-pack-folder-hook
+Hook run by @code{mh-pack-folder} after renumbering the messages
+(default: @code{nil}).
+@c -------------------------
 @item mh-quit-hook
 Hook run by q after quitting MH-E (default: @code{nil}).
 @c -------------------------
@@ -3536,6 +3573,7 @@ you want to process refiles or deletes first and then either run
 @kindex x
 @vindex mh-after-commands-processed-hook
 @vindex mh-before-commands-processed-hook
+@vindex mh-current-folder
 
 The command @kbd{x} runs @code{mh-before-commands-processed-hook}
 before the commands are processed and
@@ -3694,6 +3732,13 @@ to rescan the folder, which is useful to grab all messages in your
 you don't want to rescan the entire folder, the commands @kbd{F r} or
 @kbd{F p} will accept a range (@pxref{Ranges}).
 
+@kindex F p
+@vindex mh-pack-folder-hook
+
+The command @kbd{F p} runs @code{mh-pack-folder-hook} after
+renumbering the messages. A variable that is useful with this hook
+is @code{mh-current-folder}.
+
 @kindex @key{TAB}
 @vindex mh-recursive-folders-flag
 
@@ -3928,6 +3973,10 @@ On means the MH-Show buffer is displayed using @kbd{r}
 The following hooks are available.
 
 @vtable @code
+@item mh-annotate-msg-hook
+Hook run by @code{mh-annotate-msg} after annotation (default:
+@code{nil}).
+@c -------------------------
 @item mh-forward-hook
 Hook run by @code{mh-forward} on a forwarded letter (default:
 @code{nil}).
@@ -3937,8 +3986,19 @@ Hook run by @code{mh-letter-mode} on a new letter (default:
 @code{nil}).
 @end vtable
 
-The functions and options introduced here are explained in more detail
-in the following sections.
+@findex mh-annotate-msg
+@vindex mh-annotate-list
+@vindex mh-annotate-msg-hook
+@vindex mh-current-folder
+
+A hook that is called whenever a message is sent and after the scan
+lines and message are annotated is @code{mh-annotate-msg-hook}. Hook
+functions can access the current folder name with
+@code{mh-current-folder} and obtain the message numbers of the
+annotated messages with @code{mh-annotate-list}.
+
+The rest of the functions and options introduced here are explained in
+more detail in the following sections.
 
 @menu
 * Composing::
@@ -4268,6 +4328,9 @@ in the MH book.} is compiled with the @sc{berk} option (which many
 people abhor). If you find that MH will not allow you to redistribute
 a message that has been redistributed before, turn off this option.
 
+The hook @code{mh-annotate-msg-hook} is run after annotating the
+message and scan line (@pxref{Sending Mail}).
+
 @node Editing Again,  , Redistributing, Sending Mail
 @section Editing Old Drafts and Bounced Messages
 
@@ -5407,7 +5470,7 @@ details from the user.
 To: wohler
 cc:
 Subject: Test of MIME
-X-Mailer: MH-E 8.0; nmh 1.1; GNU Emacs 22.1
+X-Mailer: MH-E 8.1; nmh 1.1; GNU Emacs 23.1
 MIME-Version: 1.0
 Content-Type: multipart/mixed; boundary="=-=-="
 --------
@@ -5620,6 +5683,9 @@ In case the MH @command{send} program@footnote{See the section
 in the MH book.} is installed under a different name, use
 @code{mh-send-prog} to tell MH-E the name.
 
+The hook @code{mh-annotate-msg-hook} is run after annotating the
+message and scan line (@pxref{Sending Mail}).
+
 @node Killing Draft,  , Sending Message, Editing Drafts
 @section Killing the Draft
 
@@ -7985,8 +8051,11 @@ Program used to scan messages (default: @code{"scan"}).
 There are a couple of caveats when creating your own scan format file.
 First, MH-E will not work if your scan lines do not include message
 numbers. It will work poorly if you don't dedicate a column for
-showing the current message and notations. You won't be able to use
-the option @code{mh-adaptive-cmd-note-flag} or the threading features
+showing the current message and notations. It is also best to keep the
+first column empty to make room for the cursor and so that text isn't
+obscured by the current message's overlay arrow when running in a
+terminal. You won't be able to use the option
+@code{mh-adaptive-cmd-note-flag} or the threading features
 (@pxref{Threading}).
 
 @cindex message numbers
@@ -8011,13 +8080,14 @@ width is 4, so you would use @samp{(mh-set-cmd-note 4)}.
 The default setting for @code{mh-scan-format-file} is @samp{Use MH-E
 scan Format}. This means that the format string will be taken from the
 either @code{mh-scan-format-mh} or @code{mh-scan-format-nmh} depending
-on whether MH or nmh (or GNU mailutils) is in use. This setting also
-enables you to turn on the option @code{mh-adaptive-cmd-note-flag}.
-You can also set this option to @samp{Use Default scan Format} to get
-the same output as you would get if you ran @command{scan} from the
-shell. If you have a format file that you want MH-E to use but not MH,
-you can set this option to @samp{Specify a scan Format File} and enter
-the name of your format file.
+on whether MH or nmh (or GNU mailutils MH) is in use. This setting
+also enables you to turn on the option
+@code{mh-adaptive-cmd-note-flag}. You can also set this option to
+@samp{Use Default scan Format} to get the same output as you would get
+if you ran @command{scan} from the shell. If you have a format file
+that you want MH-E to use but not MH, you can set this option to
+@samp{Specify a scan Format File} and enter the name of your format
+file.
 
 @vindex mh-scan-format-file
 @vindex mh-scan-format-mh
@@ -8026,7 +8096,7 @@ the name of your format file.
 The scan format that MH-E uses when @code{mh-scan-format-file} is set
 to its default of @samp{Use MH-E scan Format} is held in the variables
 @code{mh-scan-format-nmh} and @code{mh-scan-format-mh} depending on
-whether you are using nmh (or GNU mailutils) or not. Typically, you
+whether you are using nmh (or GNU mailutils MH) or not. Typically, you
 create your own format files rather than modifying these variables.
 The value of @code{mh-scan-format-nmh} is:
 
@@ -8874,20 +8944,28 @@ introduced in the version 7 series around the time of Emacs 21.4
 in 1994.
 
 Version 8 development was mostly driven by the rewrite of the manual.
-It also brought mailutils support, S/MIME support, picon support, and
-an improved interface for hiding header fields. The CVS repository was
-migrated from SourceForge to Savannah (only for those files that were
-already part of Emacs) and the software was completely reorganized to
-push back two decades of entropy. Version 8 will appear in Emacs 22.1,
-expected to be released in 2006.
+It also brought GNU mailutils MH support, S/MIME support, picon
+support, and an improved interface for hiding header fields. The CVS
+repository was migrated from SourceForge to Savannah (only for those
+files that were already part of Emacs) and the software was completely
+reorganized to push back two decades of entropy. Version 8 appeared in
+Emacs 22.1 in 2006.
+
+Development was then quiet for a couple of years. Emacs 23.1, which is
+due out in 2009, will contain version 8.1. This version includes a few
+new features and several bug fixes.
 
-Bill Wohler, February 2006
+Bill Wohler, August 2008
 
-@node GFDL, Key Index, History, Top
-@appendix GNU FREE DOCUMENTATION LICENSE
+@node GFDL, GPL, History, Top
+@appendix GNU Free Documentation License
 @include doclicense.texi
 
-@node Key Index, Command Index, GFDL, Top
+@node GPL, Key Index, GFDL, Top
+@appendix GNU General Public License
+@include gpl.texi
+
+@node Key Index, Command Index, GPL, Top
 @unnumbered Key (Character) Index
 @printindex ky