]> code.delx.au - gnu-emacs/blobdiff - etc/MH-E-NEWS
2004-04-13 Marcelo Toledo <marcelo@marcelotoledo.org>
[gnu-emacs] / etc / MH-E-NEWS
index 5acb4488b98aca41d59a44ef49b76ff14af5bd18..8861a10096ab8d071757da4133c1a19b3f4228b8 100644 (file)
-User-visible changes to mh-e in version 5.0 from 4.1.
+Copyright (C) 2003 Free Software Foundation, Inc.
+       
+Copying and distribution of this file, with or without modification,
+are permitted in any medium without royalty provided the copyright
+notice and this notice are preserved.
 
-   Note: This being a major release, there are many internal changes.
-This document lists only changes to the external interfaces of mh-e.
 
-   When upgrading, you must either explicitly reload the new versions of
-all mh-e files that are already loaded or restart your Emacs.
+* Changes in MH-E 7.3
 
-   mh-e 5.0.1 contains minor changes from mh-e 5.0 to integrate it with
-Emacs 19.29.
+This release includes the new features of an index view of unseen
+messages in all folders, spam software support, relative folder
+specification @ support, marking messages, recipient handling by
+mh-default-folder-list, Face and X-Image-URL header field support, and
+Fcc completion. Function arguments have been unified. Bugs have been
+fixed.
+
+** New Features in MH-E 7.3
+
+*** Unified Function Arguments
+
+Any function with MSG-OR-SEQ in its docstring uses the displayed
+message by default for this argument. However, if a prefix argument is
+provided, then the user is prompted for a message sequence. If the
+variable `transient-mark-mode' is non-nil and the mark is active, then
+the function operates on the messages in the selected region. In a
+program, MSG-OR-SEQ can be a message number, a list of message
+numbers, a region in a cons cell, or a sequence.
+
+*** MH-Index View of Unseen Messages
+
+Use "F n (mh-index-new-messages)" or Folder -> View New Messages menu
+item to display messages in the `mh-unseen-seq' sequence in folders
+specified by `mh-index-new-messages-folders'. With a prefix argument,
+enter a space-separated list of folders, or nothing to search all
+folders.
+
+Like other MH-Index folders, use "v (mh-index-visit-folder)" if you
+wish to visit the original folder with the unseen message. This is
+usually not necessary since the original message is annotated if you
+reply, deleted if you delete the message, or refiled if you refile the
+message (closes SF #701756).
+
+*** Spam Software Support
+
+MH-E now supports several spam filters including Bogofilter,
+SpamProbe, and SpamAssassin. Spam that is mistakenly considered to be
+good mail can be reclassified as spam with "J b (mh-junk-blacklist)".
+Conversely, good mail that is accidently considered to be spam can be
+reclassified with "J w (mh-junk-whitelist)" (closes SF #669518).
+
+If a message is blacklisted, and `mh-junk-mail-folder' is a string,
+then the message is refiled to that folder. If this variable is nil,
+the message is deleted. If a message is whitelisted, then the message
+is refiled to `mh-inbox'.
+
+To change the spam program being used, customize `mh-junk-program'.
+This should only be necessary if you have multiple filters on your
+system and MH-E picked the wrong one. These customization variables
+are found in the new customization group `mh-junk'.
+
+The documentation for the following functions describes what setup is
+needed for the different spam fighting programs:
+
+  - `mh-bogofilter-blacklist'
+  - `mh-spamprobe-blacklist'
+  - `mh-spamassassin-blacklist'
+
+*** Relative Folder Specification @ Supported
+
+You can now use the relative folder marker @ in folder names (closes
+SF #666774).
+
+*** Marking Messages
+
+Messages can now be highlighted with "' (mh-toggle-tick)", Sequence ->
+Toggle Tick Mark menu item or the "Toggle tick mark" button. These
+messages are added to the "tick" sequence, although this sequence can
+be changed in `mh-tick-seq'. The highlighting effect can be modified
+by customizing `mh-folder-tick-face' (closes SF #623367).
+
+There is also a new keybinding "/ ' (mh-narrow-to-tick)" and menu item
+Sequence -> Narrow to Tick Sequence to narrow the view to the
+highlighted messages.
+
+*** mh-default-folder-list Now Takes Recipients
+
+If you wish to file a message based upon the recipient of a message
+(such as a mailing list), you can now indicate that when filling out
+the address in the `mh-default-folder-list' customization variable.
+
+*** Face Header Field Supported
+
+In addition to the X-Face header field, the Face header field, which
+can display color images, is now supported. As a bonus, the external
+xface-e21 library is no longer required.
+
+*** X-Image-URL Support
+
+Images specified in X-Image-URL header fields are now supported.
+See the customization variable `mh-fetch-x-image-url' to enable this
+support.
+
+*** Fcc Completion
+
+Folders in Fcc fields in message drafts can now be completed with
+M-TAB.
+
+** New Variables in MH-E 7.3
+
+Variables that have been added to MH-E that have not been discussed
+elsewhere are listed here.
+
+*** mh-auto-fields-list
+
+Alist of addresses for which header lines are automatically inserted.
+When a regular expression matches in the To or cc fields of a message,
+the corresponding header field is automatically inserted in the
+message header. It also allows the automatic setting of an identity
+(using `mh-insert-identity') to set an alternate identity when sending
+messages to a certain person or mailing list.
+
+Since this is a more general use of `mh-insert-mail-followup-to-flag'
+and `mh-insert-mail-followup-to-list', these variables have been removed.
+
+*** mh-show-xface-face
+
+Face for displaying the X-Face image.
+
+*** mh-xemacs-toolbar-position
+
+This customization variable allows the user to place the toolbar on
+the four edges of the frame.
+
+*** mh-xemacs-use-toolbar-flag
+
+This customization variable is used to enable or disable the toolbar
+under XEmacs.
+
+** Variables Deleted in MH-E 7.3
+
+Variables that have been removed from MH-E that have not been
+discussed elsewhere are listed here.
+
+*** mh-decode-content-transfer-encoded-message-flag
+
+No longer needed since the external program mimencode is no longer
+used.
+
+*** mh-index-show-hook
+
+This hook was never used, so it was removed.
+
+*** mh-tool-bar-reply-3-buttons-flag
+
+Obsolete. This functionality is present `mh-tool-bar-folder-buttons'.
+
+** Bug Fixes in MH-E 7.3
+
+*** Can't Refile Message
+
+Messages with invalid addresses were causing errors in ali which
+prevented the refiling of messages. The ali error is now shown in the
+"*MH-E Log*" buffer and refiling suggests the last folder used (closes
+SF #680388).
+
+*** Empty Body Triggers Duped Header
+
+If the body was empty the header would be treated like the body and
+was therefore displayed twice. This has been fixed (closes SF
+#681162).
+
+*** mml or mhl Directives Not Always Processed
+
+The mml and mhl directives used to create body parts were not
+processed if one re-edited a draft, or if they added the directives
+manually. The directives are now always processed upon sending the
+letter. You may still, of course, use "C-c C-m m (mh-mml-to-mime)" or
+"C-c C-e (mh-edit-mhn)" to manually create the MIME body parts from
+the directives and then send the draft.
+
+*** mh-alias-grab-from-field Fails
+
+MH-E was adding aliases with angle brackets around the address when
+there wasn't a phrase (usually, the user's name), to go with it. This
+caused ali to fail which caused problems in MH-E. This is probably a
+bug in ali, but MH-E no longer inserts angle brackets around the
+address unless there is a phrase, which avoids the problem (closes SF
+#690216).
+
+*** XEmacs Fixes
+
+MH-E is now fully supported under XEmacs and compiles without any
+warnings.
+
+In particular, the following now work under XEmacs:
+
+- X-Face, Face, and X-Image-URL header fields
+- MH-E logo in mode line
+- Emphasis (bold, italics, etc.)
+- Smilies
+- Toolbar
+
+*** Indexed Folders Should Respect mh-show-threads-flag
+
+Indexed folders are now threaded if `mh-show-threads-flag' is non-nil
+(closes SF #709667).
+
+*** Threading Index View Loses Folder Info
+
+This has been fixed (closes SF #709672).
+
+*** No Undo Information When Re-editing Drafts
+
+Undo is turned on in the draft buffer when using "e (mh-edit-again)"
+(closes SF #712777).
+
+*** Forwarded base64-encoded Messages Are Incorrectly Displayed
+
+This has been fixed (closes SF #681518).
+
+*** Append to *MH-E Log* Buffer
+
+The last 100 lines of log messages are kept in the *MH-E Log* buffer.
+Previously, the buffer was erased every time it was written (closes SF
+#685476). In addition, many of the MH-E commands now send their output
+into this buffer instead of a plethora of other special-purpose
+buffers.
+
+*** mh-inc-folder Complains if No Mail and No Current Message
+
+The function `mh-inc-folder' no longer calls `mh-show' if point is not
+on a valid scan line. This keeps `mh-inc-folder' from complaining
+(closes SF #678115).
+
+*** Folder Normalization Strips Leading Slash
+
+Leading "/" characters in folder names entered by the user were being
+lost. This has been fixed (closes SF #676890).
+
+*** Print Header Doesn't Show Message
+
+When printing a sequence, the header simply indicated that a sequence,
+but not which one, was being printed and did not show the message
+number. This has been fixed. If more than one message is printed, a
+page of the scan lines is printed and its header indicates the
+sequence or message range. The pages with the actual messages all set
+the header to the folder and message displayed on that page.
+
+*** Aliases Constantly Reloaded
+
+Empty lists are now handled properly (closes SF #693859).
+
+*** Remove RCS Keywords
+
+Removed RCS keywords per Emacs conventions (closes SF #680731).
+
+*** Replace Mimencode
+
+MH-E was enhanced to decode message based on charset and
+Content-Transfer-Encoding. This eliminates the need for the external
+program mimencode (closes SF #674857).
+
+\f
+
+* Changes in MH-E 7.2
+
+This release includes the new features of filing hints, hierarchical
+file name completion, indexed search and pick integration, unification
+between `mh-visit-folder' and the speedbar, a displayed message
+indicator, buffer name organization, support for mairix indexed
+search, and last but not least, the MH-E logo has been added to the
+mode line. Code that handles sequences and message regions runs
+faster. Bugs have been fixed.
+
+** New Features in MH-E 7.2
+
+*** Filing Hints
+
+When you file a message, MH-E now looks for an alias corresponding to
+the address of the sender and offers that as a default folder (closes
+SF #657096). The new variable `mh-default-folder-prefix' can be used
+to put these folders in a sub-folder. The new variable
+`mh-default-folder-must-exist-flag' means to suppress the suggested
+folder (thereby providing the previous folder used) if the folder
+doesn't already exist. The new variable `mh-default-folder-list' can
+be used to map additional addresses and folders.
+
+*** Hierarchical File Name Completion
+
+When you completed filenames in the past, you were presented with a
+list of all your folders at all depths in the tree. Now you are
+presented with only one level at a time (closes SF #664821).
+As a result, the variables `mh-auto-folder-collect-flag' and
+`mh-folder-list-change-hook' are obsolete.
+
+*** Indexed Search and Pick Integration
+
+The indexed and pick searches have been integrated (closes SF
+#664816). Both "F s (mh-search-folder)" and "F i (mh-index-search)"
+use the pick template for forming queries. To submit the query, use
+"C-c C-c (mh-do-search)" which will use the query method you selected.
+If you change your mind while forming the query, you can use "C-c C-i
+(mh-index-do-search)" or "C-c C-p (mh-pick-do-search)" to submit the
+query using the respective method.
+
+Second, the results from a pick search are now saved in a sub-folder
+of +mhe-index like an indexed search.
+
+Third, `pick' is now a valid choice for `mh-index-program'.
+
+*** mh-visit-folder Metamorphosis Continues
+
+When visiting a folder from the speedbar, only the unseen messages are
+shown if there are unseen messages. If there aren't any unseen
+messages, all of the messages are shown if there are fewer than
+`mh-large-folder' messages; otherwise, the user is prompted for the
+range of messages to display. The "F v (mh-visit-folder)" command has
+been modified to mimic this behavior. Use a prefix arg to force the
+message range prompt.
+
+*** Displayed Message Indicator
+
+In graphical Emacs, the message that is shown is marked by a triangle
+in the fringe. In textual Emacs, there is a ">" in the first column
+(closes SF #664824).
+
+*** Buffer Name Organization
+
+All ephemeral buffer names start with " *mh" while all interesting
+buffers start with "*MH-E ". The "*Folders*", "*Sequences*", and
+"*Recipients*" buffers were therefore renamed to "*MH-E Folders*",
+"*MH-E Sequences*" and "*MH-E Recipients*" respectively (programmers
+should see mh-utils.el for the names of the new constants). Also, the
+output of MH commands is saved in the "*MH-E Log*" buffer.
+
+*** mh-index-program
+
+Add choices for `mairix' and `pick'.
+
+*** Logo Displayed on Mode Line
+
+** New Variables in MH-E 7.2
+
+The new variables have been discussed elsewhere.
+
+** Bug Fixes in MH-E 7.2
+
+*** mh-decode-content-transfer-encoded-message
+
+Messages that had been encoded with base64 were not decoded. This has
+been fixed with this new function (closes SF #674190). As a result,
+the variable `mh-decode-quoted-printable-flag' has been renamed to
+`mh-decode-content-transfer-encoded-message-flag'.
+
+*** mh-kill-folder
+
+Now restores previous window configuration (closes SF #664828).
+
+*** mh-mime-display
+
+MH-E was not using the charset defined in the content-type
+header. This meant that mail in a different charset would not
+be properly displayed. This has been fixed (closes SF #655123).
+
+*** mh-read-address
+
+In XEmacs and Emacs20, this function would always prompt using "To: "
+instead of using the command argument. This has been fixed (closes SF
+#670913).
+
+*** mh-rmail
+
+Unseen messages are now shown in addition to new ones (closes SF
+#667542).
+
+*** mh-scan-msg-overflow-regexp
+
+Change the variable so that a space is always maintained in the
+beginning of the scan line.
+
+*** mh-swish-execute-search
+
+The example configuration file in the docstring didn't show the
+backslash in the FileRules filename. If the example had been used
+literally by the user, no files would be indexed! This has been fixed
+(closes SF #665888).
+
+*** mh-thread-refile
+
+The "T o (mh-thread-refile)" command did not provide refiling hints
+like `mh-refile-msg'. This has been fixed (closes SF #664829).
+
+*** mh-toggle-threads
+
+If the threaded view was modified and then toggled, the standard view
+may not have been accurate (as it contained a potentially old first
+message to last message range). This has been fixed (closes SF
+#626117).
+
+*** mh-tool-bar-show-set, mh-tool-bar-letter-set, mh-tool-bar-folder-set
+
+Clicking the customize and help buttons now deletes the other windows
+in the frame.
+
+*** mh-version
+
+The "M-x mh-version" command displayed "Aliasfile: aliases". This has
+been fixed (closes SF #664467). See Buffer Name Organization above.
+
+\f
+
+* Changes in MH-E 7.1
+
+This release includes the new features of multiple identities and
+alias completion. In addition, indexed searching has been revamped.
+Various other features have been added and a few bugs were fixed.
+
+** New Features in MH-E 7.1
+
+*** Multiple Identities
+
+MH-E now supports multiple identities (closes SF #628782). That means
+that you can have different From and Organization header fields (or
+any other header field of your choice) as well as different signatures
+depending on your context. Usually, the contexts are home and work.
+
+Add your identities to the variable `mh-identity-list' and set the
+default identity with the variable `mh-identity-default'. Your
+identity can be switched on the fly by using the Identity menu or by
+calling "M-x mh-insert-identity RET".
+
+This functionality can be customized within the mh-identity group.
+
+*** Alias Completion and Harvesting
+
+The contributed file mh-alias.el has been rewritten and incorporated
+into MH-E.
+
+By default, aliases are culled from the system files
+"/etc/nmh/MailAliases," "/usr/lib/mh/MailAliases," and "/etc/passwd"
+(see `mh-alias-system-aliases') and from your "AliasFile" MH profile
+component. These aliases are then used for completion in the
+minibuffer when entering addresses. Within the header of the message
+draft, "M-TAB (mh-letter-complete)" is used to do alias completion.
+
+The package also provides for alias creation based upon the From
+header field of the current message. Use the lasso button
+(mh-alias-grab-from-field).
+
+This functionality can be customized within the mh-alias group.
+
+*** Index Folder Updates
+
+The results of an index search "F i (mh-index-search)" are now stored
+in a bona fide folder so that you can refile messages and reply to
+messages directly from the result folder. This folder is a sub-folder
+of +mhe-index and the name is based upon the search string (closes SF
+#623321).
+
+If a prefix argument is given then the search in the current index
+buffer is redone.
+
+The index folder lists the names of the source folders as before.
+However, instead of using RET on the name of the folder to visit the
+folder, use "v (mh-show-index-visit-folder)" anywhere within the
+results to visit that folder narrowed to the results of the search.
+Additional functions have been added to navigate including "TAB
+(mh-index-next-folder)", and "SHIFT-TAB (mh-index-previous-folder)."
+
+*** mh-visit-folder Interface Updated
+
+A change was made to the prompting of the message range. In general,
+you can use the same format for messages and sequences as you can in
+MH with a single exception: a single number means to scan that many
+messages, rather than scan that message number. This turns out to be
+much more useful than visiting a single message and is consistent with
+Gnus and the MH-E speedbar (closes SF #655891).
+
+If mh-visit-folder is called non-interactively and RANGE is nil then
+all messages are displayed. This behavior is now documented and
+provides backwards compatibility.
+
+*** Threading Improvements
+
+After incorporating new mail into a threaded folder, unseen messages
+can be spread about. Two new functions have been added to make it
+easier to find them: these are "M-n (mh-next-unread-msg)" and "M-p
+(mh-previous-unread-msg)" (closes SF #630328)
+
+Two new functions were added to delete and refile threads. They are "T
+d (mh-thread-delete)" and "T o (mh-thread-refile)" respectively
+(closes SF #630493).
+
+In addition, the key "k" used to be bound to the function
+`mh-delete-subject': it is now bound to
+`mh-show-delete-subject-or-thread'.
+
+New functions to navigate threads include "T u (mh-thread-ancestor)",
+which can jump to the root message of the current thread given an
+optional argument, "T n (mh-thread-next-sibling)", and "T p
+(mh-thread-previous-sibling)"
+
+*** Refiling of Messages in Region
+
+If mark is active and `transient-mark-mode' is enabled then all the
+messages in the region are refiled.
+
+*** vCard Handling
+
+If a signature cannot be identified, but there is a vCard attachment,
+then that vCard will be presented as a signature (closes SF #649216).
+
+*** New Info Added to mh-version
+
+Information about Gnus versions available at both compile time and run
+time has been added.
+
+** New Variables in MH-E 7.1
+
+The defcustom groups were reorganized. Rather than iterate the
+specific changes here, you are invited to browse the groups with "M-x
+mh-customize RET".
+
+*** mh-alias-completion-ignore-case-flag
+
+Non-nil means don't consider case significant in MH alias completion.
+This is the default in plain MH, so it is the default here as well. It
+can be useful to set this to t if, for example, you use lowercase
+aliases for people and uppercase for mailing lists.
+
+*** mh-alias-expand-aliases-flag
+
+Non-nil means to expand aliases entered in the minibuffer. In other
+words, aliases entered in the minibuffer will be expanded to the full
+address in the message draft. By default, this expansion is not
+performed.
+
+*** mh-alias-flash-on-comma
+
+Specify whether to flash the translation of the alias or warn if there
+isn't a translation of the alias.
+
+*** mh-alias-insert-file
+
+Filename to use to store new MH-E aliases. This variable can also be a
+list of filenames, in which case MH-E will prompt for one of them. If
+nil, the default, then MH-E will use the first file found in the
+"AliasFile" component of the MH profile.
+
+*** mh-alias-insertion-location
+
+Specifies where new aliases are entered in alias files. Options are
+sorted alphabetically (the default), at the top of the file or at the
+bottom.
+
+*** mh-alias-local-users
+
+If t, local users are completed in MH-E To: and Cc: prompts.
+
+If you set this variable to a string, it will be executed to generate
+a password file. A value of "ypcat passwd" is helpful if NIS is in
+use.
+
+*** mh-alias-system-aliases
+
+A list of system files from which to cull aliases. If these files are
+modified, they are automatically reread. This list need include only
+system aliases and the passwd file, since personal alias files listed
+in your "AliasFile" MH profile component are automatically included.
+
+*** mh-identity-default
+
+Default identity to use when `mh-letter-mode' is called.
+
+*** mh-identity-list
+
+List holding MH-E identity.
+
+*** mh-invisible-header-fields
+
+Simple user interface to change `mh-invisible-headers'.
+
+*** mh-letter-complete-function
+
+Function to call when completing outside of fields specific to
+aliases. By default, it is bound to 'ispell-complete-word.
+
+*** mh-show-threads-flag
+
+Non-nil means new folders start in threaded mode. Threading large
+number of messages can be time consuming. So if the flag is non-nil
+then threading will be done only if the number of messages being
+threaded is less than `mh-large-folder' (closes SF #646794).
+
+*** mh-tool-bar-folder-buttons
+
+Buttons to include in MH-E folder/show toolbar.
+
+*** mh-tool-bar-letter-buttons
+
+Buttons to include in MH-E letter toolbar.
+
+** Bug Fixes in MH-E 7.1
+
+*** mh-get-new-mail
+
+Call new function `mh-add-cur-notation' to undo the work of
+`mh-remove-cur-notation' if there was no new mail (closes SF #647681).
+
+*** mh-set-cmd-note
+
+No longer updates the default `mh-cmd-note' value. This resulted in
+the misplacement of the current mark when the message number width
+changed (closes SF #643701).
+
+\f
+
+* Changes in MH-E 7.0
+
+This is a major release which includes a lot of new features including
+improved MIME handling, speedbar folder browsing, and indexed
+searching. In this version, MH-E runs under XEmacs, passes checkdoc,
+and compiles clean under all supported platforms.
+
+The "passes checkdoc" feature above required changing the name of
+several user-visible variables. It is likely that this affects you.
+Please be sure to see the table at the end of these notes and rename
+your variables accordingly.
+
+MH-E has been written mh-e, Mh-e, MH-e and MH-E. We have decided that
+the proper term should be MH-E. Please try to use MH-E in your
+writing.
+
+** New Features in MH-E 7.0
+
+*** Speedbar
+
+There is now support for the speedbar. Try "M-x speedbar" (closes SF
+#503727).
+
+Press the middle mouse button on the `+' icons to open a folder,
+middle mouse button on a folder name to open the folder. Folders with
+unseen messages are shown in bold, so this is a handy way to browse
+new messages that you have filed with procmail or slocal.
+
+See the new customization variable `mh-large-folder,' which controls
+when the speedbar asks for how many messages to scan when opening a
+large folder and `mh-speed-run-flists-flag' whose default value of t
+means to use the flists command to populate the count of unseen and
+total messages in each folder.
+
+*** Indexed Search
+
+Interoperability with swish++, swish, glimpse, and namazu has been
+added to enable lightening-fast searches of your mail. If none of
+these are present, grep is used. Try "F i (mh-index-search)".
+
+For more information, read the documentation for the functions
+`mh-swish++-execute-search,' `mh-swish-execute-search,'
+`mh-namazu-execute-search,' or `mh-glimpse-execute-search' depending
+on your preferred indexing program to see what kind of setup is needed
+to generate the index.
+
+*** Threading
+
+Use "T t (mh-toggle-threads)" to view the threads in the folder. Use
+it again to return to a non-threaded view.
+
+*** Brief Help
+
+Use "? (mh-help)" and "X ? (mh-prefix-help)," where X is a prefix
+character, for a brief synopsis in the minibuffer of frequently used
+commands. In the MH-Letter or MH-Pick buffers, use "C-c ? (mh-help)"
+(closes SF #493740).
+
+*** Folder Keymap Shared by Show Buffer
+
+You can now use the MH-Folder mode commands from the MH-Show buffer.
+Because of this, the MH-Show buffer is now read-only (closes SF
+#493749 and SF #527946) and you now have to use "M (mh-modify)" to
+edit a message.
+
+*** Better Scanning
+
+You no longer have to modify your scan format if your folders have
+more than 9999 messages in them. If you've only modified your scan
+format file to allow for the wider message numbers, consider using the
+default behavior of MH-E and simplify your MH-E configuration
+considerably (closes SF #635791).
+
+To do this, you may have to remove your modifications of
+`mh-scan.*-regexp' and `mh-cmd-note' and your customization of
+`mh-scan-format-file'.
+
+You may still want the updated format files for running MH commands
+outside of MH-E; the default of `mh-scan-format-file' will cause them
+to be ignored.
+
+If you prefer fixed-width message numbers, set the new customization
+variable to nil , set this variable to
+nil and call `mh-set-cmd-note' with the width specified by the scan format in
+`mh-scan-format-file'. For example, the default width is 4, so you would use
+"(mh-set-cmd-note 4)" if `mh-scan-format-file' were nil.
+
+*** X-Face
+
+MH-E now displays the content of the X-Face header field in the From
+field. When sending a message, an X-Face field is appended to the
+header if it doesn't already exist and "~/.face" is present. See the
+new customization variables `mh-show-use-xface-flag' and `mh-x-face-file'
+(closes SF #480770).
+
+MH-E depends on the external x-face package found in
+ftp://ftp.jpl.org/pub/elisp/ to do this. The `uncompface' binary is
+also required to be in the execute PATH. It can be obtained from:
+http://freshmeat.net/redir/compface/1439/url_tgz/compface-1.4.tar.gz.
+
+It has also been observed that if you don't see the faces, you might
+have to do this (for unknown reasons):
+
+    mv /usr/local/include/compface.h /usr/include/
+
+*** Graphical Smileys
+
+Smiley's are now converted to cute little images. See the new
+customization variable `mh-graphical-smileys-flag.'
+
+*** Text Emphasis
+
+ASCII formatting is now converted to the appropriate font. For
+example, _underline_ is underlined, *bold* appears in bold, /italic/
+appears in italic, etc. See `gnus-emphasis-alist' for the whole list.
+See the new customization variables `mh-decode-mime' and
+`mh-graphical-emphasis-flag.'
+
+*** Attachment Handling
+
+Inline attachments are now displayed. Regular attachments appear as
+buttons in show buffer. Use "K TAB (mh-next-button)" or "K SHIFT-TAB
+(mh-prev-button)" to cycle through these buttons. Use "K v
+(mh-folder-toggle-mime-part)" to view, "K o
+(mh-folder-save-mime-part)" to save one part or "K-a
+(mh-save-mime-parts)" to save all parts, or "K i
+(mh-folder-inline-mime-part)" to view the attachment inline.
+
+See the new customization variable `mh-decode-mime' for additional
+information. Other customization variables that affect this new feature
+include `mh-store-mime-parts-default-directory' and
+`mh-display-buttons-for-inline-parts-flag'.
+
+HTML documents can be viewed inline if Gnus v5.10 and w3 or w3m lisp
+packages are present. Set the customization variable
+`mm-text-html-renderer' accordingly (closes SF #453352).
+
+*** Quoted-printable Handling
+
+Quoted-printable body parts are now decoded.
+
+*** More Choices for `mh-yank-from-start-of-msg'
+
+Historically, if this variable was t, the entire message, with full
+headers would be included and every line would begin with
+`mh-ins-buf-prefix.' This usage is deprecated in favor of the setting
+`supercite' below. The default has been changed to `attribution.' The
+following symbols are now understood:
+
+`body': yank the message minus the header.
+
+`supercite': include the entire message, with full headers. This also
+causes the invocation of `sc-cite-original' without the setting of
+`mail-citation-hook', now deprecated practice.
+
+`autosupercite': do as for `supercite' automatically when show buffer
+matches the message being replied-to.
+
+`attribution': yank the message minus the header and add a simple
+attribution line at the top.
+
+`autoattrib': do as for `attribution' automatically when show buffer
+matches the message being replied-to.
+
+There is a new customization variable called
+`mh-extract-from-attribution-verb' which is used for attribution which
+provides a method for setting a different language.
+
+*** Use Gnus mml Instead of mhn
+
+When inserting attachments into a message draft, Gnus mml directives
+are now used instead of mhn directives. One beneficial side-effect of
+this is that attachments can now appear inline as well as separate.
+
+The new customization variable `mh-compose-insertion' controls whether
+Gnus or mhn is used to insert MIME message directives in messages
+(default: 'gnus, if the mml library exists).
+
+*** Content-Type Now Obtained Automatically
+
+The value of the Content-Type no longer needs to be entered by the
+user.
+
+*** Attachments Automatically Included Upon Send
+
+You no longer have to run "C-c C-e (mh-edit-mhn)" before sending a
+message with attachments--this is done automatically when you send the
+message with "C-c C-c (mh-send-letter)". There is, however, a new key
+binding "C-c C-m m (mh-mml-to-mime)" which is analogous to "C-c C-e
+(mh-edit-mhn)".
+
+*** GPG Handling
+
+Messages that have been signed or encrypted with GPG are verified and
+decrypted automatically. To sign or encrypt a message, use "C-c RET
+C-s (mh-mml-secure-message-sign-pgpmime)" and "C-c C-m C-e
+(mh-mml-secure-message-encrypt-pgpmime)." You need Gnus version 5.10
+for this feature. These functions are provided by the pgg.el package.
+
+Users report "flashing" with the pgg.el package and prefer the gpg.el
+package instead. To use gpg.el instead of the pgg.el package you need:
+
+  (setq mml2015-use 'gpg)
+
+To mimic automatic encryption in gpg.el, use:
+
+  (setq mm-verify-option 'always)
+  (setq mm-decrypt-option 'always)
+
+The venerable mailcrypt package is also an option. However, now that
+show buffers are read-only, mailcrypt version 3.5.6 and older fail
+when they attempt to decrypt the contents.
 
-   mh-e 5.0.2 contains additional minor changes to integrate it with
+*** Mail-Followup-To Header Field
+
+Support for this controversial field has been added because nmh
+supports it (closes SF #627035). If you want to add it to outgoing
+mail for selected mailing lists, add those mailing lists to the new
+customization variable `mh-insert-mail-followup-to-list.' If you think
+this field is evil, set the new customization variable
+`mh-insert-mail-followup-to-flag' to nil.
+
+*** Gnus Issues
+
+If you update Gnus, you must recompile MH-E. Note that if you are
+running the stock version of MH-E that comes with Emacs or the MH-E
+package on a Debian GNU/Linux, this is done for you.
+
+** New Variables in MH-E 7.0
+
+New customization variables not mentioned earlier include:
+
+*** mh-letter-insert-signature-hook
+
+Invoked at the beginning of the "C-c C-s (mh-insert-signature)"
+command. Can be used to determine which signature file to use based on
+message content. On return, if `mh-signature-file-name' is non-nil
+that file will be inserted at the current point in the buffer.
+
+*** mh-show-maximum-size
+
+Maximum size of message (in bytes) to display automatically. Provides
+an opportunity to skip over large messages which may be slow to load.
+Use a value of 0 to display all messages automatically regardless of
+size (closes SF #488696).
+
+*** mh-tool-bar-reply-3-buttons-flag
+
+Non-nil means use three buttons for reply commands in tool-bar. If you
+have room on your tool-bar because you are using a large font, you may
+set this variable to expand the single reply button into three buttons
+that won't lead to minibuffer prompt about who to reply to.
+
+** Bug Fixes in MH-E 7.0
+
+*** mh-delete-msg, mh-refile-msg, mh-undo
+
+Mandrake Linux includes XEmacs initialization code that binds
+`transient-mark-mode' which causes problems in MH-E. These problems
+have been fixed (closes SF #541915).
+
+*** mh-edit-again
+
+This would sometimes yield a read-only buffer. This has been fixed
+(closes SF #624283 and SF #625538).
+
+*** mh-forward
+
+When using nmh, always specify -mime so as to preserve the original
+message(s).
+
+*** mh-inc-folder
+
+If you had narrowed to a sequence and then incorporated new mail,
+those new messages would not be present in your +inbox when you
+widened. This has been fixed (closes SF #489430, SF #489437, SF
+#629233).
+
+*** mh-insert-letter
+
+No longer uses mhl to include a message as this mangled the header and
+gave supercite fits (closes SF #629153).
+
+*** mh-letter-mode
+
+"M-q (fill-paragraph)" now fills quoted paragraphs (for example,
+starting with "> ") correctly (closes SF #489927).
+
+*** mh-next-undeleted-msg, mh-previous-undeleted-msg
+
+If there are no more undeleted messages the point remains at its
+original position and a message is produced (closes SF #494304).
+
+*** mh-pick-mode
+
+Now calls `mh-pick-mode-hook' as documented.
+
+*** mh-put-msg-in-seq
+
+Now puts all messages in region in sequence (closes SF #630324).
+
+*** mh-refile-msg, mh-write-msg-to-file
+
+These functions stomped on the variables that held the name of the
+last file and folder respectively for the other function. This has
+been fixed so that the last folder or file name is preserved (closes
+SF #580772).
+
+*** mh-region-to-sequence
+
+If the region in MH-Folder was set with "C-x h (mark-whole-buffer)",
+you couldn't perform operations on all of the messages as you would
+expect. This has been fixed (closes SF #621632).
+
+*** mh-reply
+
+Performing an undo the first thing after replying would blank out the
+entire draft. Now just the insertion of the yanked message is undone
+leaving the header and signature intact for additional editing (closes
+SF #623693).
+
+*** mh-show-mode
+
+Now calls `mh-show-mode-hook' as documented (closes SF #627222).
+
+*** mh-subject-thread-to-sequence
+
+Make 'subject sequence a real one, exported to MH. This means you can,
+for example, mh-forward it. But it also shows up with a mark in the
+scan output (closes SF #489445).
+
+*** Other Bug Fixes
+
+The following bugs have also been closed:
+
+SF #495450: Folder buffer read-only after inc
+SF #489706: mh-page-msg bombs out
+SF #580772: mh-last-destination is overloaded
+
+*** Variables renamed to conform with Emacs coding conventions
+
+The coding conventions require that boolean variables end in -flag.
+The following two tables show which variables were affected (closes SF
+#627015).
+
+Customization Variables (defcustom)
+
+Old Name                               New Name
+
+mh-auto-folder-collect                 mh-auto-folder-collect-flag
+mh-bury-show-buffer                    mh-bury-show-buffer-flag
+mh-clean-message-header                mh-clean-message-header-flag
+mh-decode-quoted-printable             mh-decode-quoted-printable-flag
+mh-delete-yanked-msg-window            mh-delete-yanked-msg-window-flag
+mh-do-not-confirm                      mh-do-not-confirm-flag
+mh-highlight-citation-p                mh-highlight-citation
+mh-insert-x-mailer-p                   mh-insert-x-mailer-flag
+mh-print-background                    mh-print-background-flag
+mh-recenter-summary-p                  mh-recenter-summary-flag
+mh-recursive-folders                   mh-recursive-folders-flag
+mh-reply-show-message-p                mh-reply-show-message-flag
+mh-show-use-goto-addr                  mh-show-use-goto-addr-flag
+mh-update-sequences-after-mh-show      mh-update-sequences-after-mh-show-flag
+
+Regular Variables (defvar)
+
+Old Name                               New Name
+
+mh-mhn-compose-insert-p                mh-mhn-compose-insert-flag
+mh-nmh-p                               mh-nmh-flag
+mh-page-to-next-msg-p                  mh-page-to-next-msg-flag
+
+\f
+
+* Changes in mh-e 6.1
+
+This is a minor release which includes a few bug fixes. The
+distribution now includes the ChangeLog.
+
+** New Features in mh-e 6.1
+
+*** Fontification
+
+Unseen messages now displayed in bold.
+
+*** Viewing folders and sequences
+
+The folder and sequence listings that "F l (mh-list-folders)" and "S l
+(mh-list-sequences)" create are now displayed in view mode.
+
+** Bug Fixes in mh-e 6.1
+
+*** mh-folder-unseen-seq-name
+
+Byte compilation failed when initializing this variable when the
+user's MH environment was not set up. This has been fixed (closes
+Debian #140232 and Debian #140817).
+
+*** mh-forward
+
+When forwarding a sequence, the mode of the draft would not be set to
+MH-Letter correctly. This has been fixed (closes SF #489448).
+
+*** mh-insert-prefix-string
+
+Fixed to work under XEmacs. Thanks to Will Partain
+<partain at dcs.gla.ac.uk>.
+
+*** mh-quit
+
+mh-quit now cleans up the buffers named `mh-temp-buffer,'
+'mh-temp-folders-buffer' and 'mh-temp-sequences-buffer.'
+
+\f
+* Changes in mh-e 6.0
+
+mh-e is now maintained at SourceForge (see
+http://mh-e.sourceforge.net/). This is where you need to go to obtain
+new versions of mh-e, report bugs and receive support.
+
+The maintainers have moved much of their personal configurations into
+the codebase, so you may find that you may be able to reduce your mh-e
+customizations as well.
+
+There are several incompatibilities in this version from older
+versions. Please read the following notes carefully for details. Pay
+particular attention to the key binding changes in the MH-Folder
+section. If you have customized your scan format, you will want to
+read about the new variable `mh-scan-format-file'.
+
+The manual could not be updated in time for this release. It will be
+updated in the near future. If the Preface in your manual indicates
+the older version (version 1.3, for mh-e version 5.0.2), please check
+the following page occasionally for an update:
+
+  https://sourceforge.net/project/showfiles.php?group_id=13357
+
+
+** New Features in mh-e 6.0
+
+*** Customization
+
+mh-e now uses the customize feature of Emacs. Use "M-x customize-group
+mh RET" to customize mh-e.
+
+*** Menus
+
+All mh-e modes now provide menus that contain most mh-e functions.
+
+*** Toolbars
+
+All mh-e modes now have toolbar buttons for oft-used functions (Emacs 21).
+
+*** Fontification
+
+All mh-e buffers now have font-lock keywords. To use, either call
+(turn-on-font-lock) from the appropriate hook, or set
+`global-font-lock-mode' to t. To customize, use "M-x
+customize-apropos-faces ^mh RET".
+
+If you have customized your scan lines, you will have to update your
+scan regexps. The existing regexps were changed to extract a match so
+you will have to add appropriate grouping constructs to take advantage
+of the fontification. Your old settings will continue to work, but the
+folder will not be fontified. For example:
+
+  (setq mh-good-msg-regexp  "^\\(.....\\)[^D^]")
+
+You will most likely have to update the new variable
+`mh-scan-subject-regexp' as well. There is another new variable
+`mh-scan-date-regexp' which you may also find useful. Run "M-x apropos
+mh.*regexp" for a complete list.
+
+*** mail-user-agent support
+
+You can now set `mail-user-agent' to `mh-e-user-agent' so that packages
+that need to send mail will use mh-e (closes SF #406883, SF #470024).
+
+*** replgroupcomps support
+
+If you reply to `cc' or `all' and you use nmh, the nmh repl option
+-group will be used. This means that the file `replgroupcomps' will be
+used. If you have customized `replcomps', you will definitely want to
+either copy `$NMH_LIB/replgroupcomps' to your mail directory and modify
+it the same way that you modified your `replcomps' file, or simply
+copy your `replcomps' file to `replgroupcomps'.
+
+*** MH-Folder mode
+
+The variable `mh-summary-height' used to have a default of 4. It now
+varies from 4 to 10 depending on the height of the frame.
+
+Clicking the mouse on a message shows that message.
+
+Delete, refile and undo now operate on a region (but only if
+`transient-mark-mode' is non-nil).
+
+SPC (mh-page-msg) now displays the message if it is not already
+visible. If the bottom of a message is showing, SPC (mh-page-msg)
+moves to the next message (respecting the direction you are moving
+through the folder).
+
+The threading commands "T u (mh-next-unseen-subject-thread)",
+"T t (mh-toggle-subject-thread)", "T s (mh-narrow-to-subject-thread)",
+and "T k (mh-delete-subject-thread)" have been added. These functions
+do not offer threading in the true sense of the word, but do allow
+some manipulation by subject.
+
+Major, major keymap changes. This was done to free up movement
+commands in the buffer, and to provide for additional features, such
+as the threading commands. At the same time, better and more
+consistent mnemonics were realized that should make it easier to
+remember key bindings.
+
+Added new sub-keymaps for folder commands, sequence commands,
+extraction commands, and digest commands which begin with with F, S,
+X, and D, respectively. These sub-keymaps allowed some consistency
+(e.g., especially with l(ist) and k(ill)).
+
+Here are the actual changes and rationale:
+
+Old    New     Rationale
+
+e      -       Deleted. Already have x. Now used by mh-edit-again.
+j      -       Deleted. Already have g.
+
+M-a    e       Better mnemonic. Matches rmail. Frees movement command.
+M-e    E       Better mnemonic. Consistent with e.
+-      S       Why not? mh-sort-folder.
+
+M-f    Fv      Frees movement command
+M-f    Ff      Alias (keep?)
+M-f    Fo      Alias (keep?)
+M-k    Fk      No reason but to keep with folder commands
+M-l    Fl      No reason but to keep with folder commands
+M-p    Fp      No reason but to keep with folder commands
+M-r    Fr      Frees movement command
+M-s    Fs      No reason but to keep with folder commands
+M-u    Fu      No reason but to keep with folder commands
+
+M-%    Sd      Better mnemonic
+M-#    Sk      Better mnemonic
+M-q    Sl      Better mnemonic
+C-xn   Sn      Frees up standard key binding
+%      Sp      Better mnemonic for putting a message in a sequence
+?      Ss      Shows sequences that message is in
+C-xw   Sw      Frees up standard key binding
+
+M-n    Xs      Better mnemonic (extract shar)
+M-n    Xu      Better mnemonic (extract uuencode)
+
+M-SPC  D SPC   Frees mark command
+M-\177 D \177  No reason but to keep with digest commands
+M-b    Db      Frees movement command
+
+As the number of variables increases, it is becoming important to
+organize the mh-e namespace. Several variables having to do with the
+format of scan lines were renamed, as follows:
+
+Old                            New
+
+mh-good-msg-regexp             mh-scan-good-msg-regexp
+mh-deleted-msg-regexp          mh-scan-deleted-msg-regexp
+mh-refiled-msg-regexp          mh-scan-refiled-msg-regexp
+mh-valid-scan-line             mh-scan-valid-regexp
+mh-cur-scan-msg-regexp         mh-scan-cur-msg-number-regexp
+-                              mh-scan-cur-msg-regexp
+-                              mh-scan-rcpt-regexp
+-                              mh-scan-format-regexp
+mh-msg-number-regexp           mh-scan-msg-number-regexp
+mh-msg-search-regexp           mh-scan-msg-search-regexp
+
+*** MH-Show mode
+
+While the MIME support is not complete, quoted-printable body parts
+are now decoded.
+
+Some MTAs quote From at the beginning of the line with a ">". The ">"
+is now removed in the display, but not on disk.
+
+*** MH-Letter mode
+
+New function "C-c C-o (mh-split-line)" splits lines in a draft
+preserving the fill prefix and indentation. This is useful when
+responding to several sentences in a single paragraph separately.
+
+"M-q (fill-paragraph)" can now be used on the message that is being
+replied to. The fill prefix such as "> " is preserved.
+
+You no longer have to run "C-c C-e (mh-edit-mhn)" manually as this is
+now done automatically when the message is sent.
+
+The X-Mailer header field is now added to messages as they are sent.
+
+"C-c C-m C-i (mh-mhn-compose-insertion)" now makes a pretty good guess
+at the type of file using the `file' command and no longer asks the
+user for the media type. If the necessary version of `file' is not
+available, the user is asked for the media type as before; however,
+the list of media types is now taken from the system mailcap if
+available. Failing that, the built-in list of types has been
+supplemented so in most cases the type you need should be present
+(closes SF #406883, #441179).
+
+** New Variables in mh-e 6.0
+
+New variables not mentioned earlier include:
+
+*** mh-insert-x-mailer-p
+
+Default value of t means that an X-Mailer header field should be
+added.
+
+*** mh-reply-show-message-p
+
+The setting of this variable determines whether the MH show-buffer is
+displayed with the current message when using mh-reply without a prefix
+argument. Set it to nil if you already include the message
+automatically in your draft using "repl: -filter repl.filter" in
+"~/.mh_profile."
+
+*** mh-scan-format-file
+
+Specifies the format file to pass to the scan program. If t, the
+format string will be taken from the either `mh-scan-format-mh' or
+`mh-scan-format-nmh' depending on whether MH or nmh is in use. If nil,
+the default scan output will be used.
+
+If you customize the scan format, you may need to modify a few
+variables containing regexps that mh-e uses to identify specific
+portions of the output. Use `M-x apropos RET mh-scan.*regexp' to
+obtain a list of these variables.
+
+*** mh-scan-format-mh
+
+Scan format string for MH, provided to the scan program via the
+-format arg. This format is identical to the default except that
+additional hints for fontification have been added to the sixth
+column.
+
+*** mh-scan-format-nmh
+
+Scan format string for nmh, provided to the scan program via the
+-format arg. This format is identical to the default except that
+additional hints for fontification have been added to the sixth
+column.
+
+*** mh-show-use-goto-addr
+
+Non-nil means URLs and e-mail addresses are highlighted using
+goto-addr in MH-Show buffer.
+
+*** mh-letter-fill-column
+
+Fill column to use in `mh-letter-mode'. This is useful to make the
+lines a bit shorter to allow for quoting in replies.
+
+*** mh-folder-updated-hook
+
+Invoked when the actions in a folder (such as moves and deletes) are
+performed. Variables that are useful in this hook include
+`mh-delete-list' and `mh-refile-list' which can be used to see which
+changes are being made to current folder, `mh-current-folder'.
+
+*** mh-unseen-updated-hook
+
+Invoked after the unseen sequence has been updated. The variable
+`mh-seen-list' can be used to obtain the list of messages which will
+be removed from the unseen sequence
+
+** Bug Fixes in mh-e 6.0
+
+*** mh-edit-again and mh-extract-rejected-mail
+
+Now insert a header separator (--------) which packages such as
+mailcrypt expect.
+
+*** mh-find-progs
+
+Now uses `mhparam' to set `mh-lib-progs' and `mh-lib'. Added more
+directories to `mh-progs' so that mh-e can autoconfigure in more
+environments. Chances are that you no longer have to set these
+variables, and if you do, you will only have to set `mh-progs'.
+Unless, of course, you are using an ancient version of MH that doesn't
+have `mhparam'.
+
+*** mh-folder-mode-map
+
+The DEL/<delete>/<backspace> change in Emacs 21 broke
+`mh-previous-page'. This has been fixed (closes SF #228907).
+
+*** mh-forward
+
+If you had "forw: -mime" to your .mh_profile, forwarding a message
+resulted in:
+
+  Search failed: "^------- Forwarded Message"
+
+In addition, the Subject field was not filled in. This has been fixed
+(closes SF #223603).
+
+*** mh-kill-folder
+
+The user is now always prompted before this action; the variable
+`mh-do-not-confirm' is no longer consulted here. Therefore users who
+wanted to set `mh-do-not-confirm' but didn't because of the
+`mh-kill-folder' dependency may now do so.
+
+*** mh-make-folder-mode-line
+
+Properly deals with folders that do not have any lines in them. Prints
+"no msgs" instead of "0 msgs". Does not try to print a range when
+there are no messages.
+
+*** mh-mhn-compose-insertion
+
+Now gets the MIME type automatically (assuming the local file command
+supports the -i and -b options). If this use of the file command is
+not supported, the list of MIME types has been expanded to use the
+system's mailcap file.
+
+*** mh-nmh-p
+
+This variable (t when nmh is in use rather than MH) assumed that the
+string "nmh" is in `mh-lib-progs' or `mh-lib'. This has been fixed
+(closes SF #441776).
+
+*** mh-refile-msg
+
+No longer lets you specify an empty folder (closes SF #476824).
+
+*** mh-regenerate-headers
+
+Now suppresses "scan: bad message list" messages.
+
+*** mh-print-msg
+
+This function was looking for `mhl' in the wrong place on nmh on
+Redhat LINUX 7.0. This has been fixed (closes SF #481128).
+
+*** mh-show
+
+Now updates `cur' sequence after a message is shown (closes SF #481772).
+
+*** mh-showing
+
+Renamed variable and function to `mh-showing-mode' to conform with
+minor mode conventions. Added optional arg to function so it would
+behave like a normal minor mode: no or nil arg toggles mode, 0 arg
+turns off, non-nil turns on. This fixed the error that occurred when
+`desktop-create-buffer' recreated mh-e buffers because it was calling
+`mh-showing' with an arg.
+
+*** mh-version
+
+Fixed for nmh. Now displays mh-e version correctly. Cleaned up output
+and display `mh-progs', etc.
+
+*** mh-widen
+
+Now attempts to stay on the same message number (closes SF #480922).
+
+No longer wipes out pending deletes and refiles without warning
+(closes SF #481036).
+
+\f
+* Changes in mh-e 5.0.2
+
+This version contains additional minor changes to integrate it with
 reporter.el (requires reporter.el version 3.1c or later) and Emacs
 19.30.  The mh-goto-msg function is much faster, which also speeds up
 several other operations.
 
-Major Changes and New Features in mh-e
-======================================
+\f
+* Changes in mh-e 5.0.1
 
-   The emphasis for this release has been on consistency and
-documentation.  Many documentation strings were enhanced.
-Documentation strings were changed to comments for internal functions
-and variables.
+This version contains minor changes from mh-e 5.0 to integrate it with
+Emacs 19.29.
+
+\f
+* User-visible changes to mh-e 5.0
+
+Note: This being a major release, there are many internal changes.
+This document lists only changes to the external interfaces of mh-e.
+
+When upgrading, you must either explicitly reload the new versions of
+all mh-e files that are already loaded or restart your Emacs.
+
+
+** Major Changes and New Features in mh-e 5.0
 
-   There is now proper documentation in the form of a 75-page users
-manual.  The Texinfo source is mh-e.texi; the formatted Info document
+The emphasis for this release has been on consistency and
+documentation. Many documentation strings were enhanced. Documentation
+strings were changed to comments for internal functions and variables.
+
+*** There is now proper documentation in the form of a 75-page users
+manual. The Texinfo source is mh-e.texi; the formatted Info document
 is mh-e.info.
 
-   There is a new command `mh-update-sequences', which updates MH's
-idea of what messages are in the Unseen sequence and what is the current
-folder and message.  `mh-quit' calls it.  While `mh-execute-commands'
-has always done this updating as a side effect, the new function is
-faster.
+*** There is a new command `mh-update-sequences', which updates MH's
+idea of what messages are in the Unseen sequence and what is the
+current folder and message. `mh-quit' calls it. While
+`mh-execute-commands' has always done this updating as a side effect,
+the new function is faster.
 
-   The MH profile entry "Inbox:" is supported.
+*** The MH profile entry "Inbox:" is supported.
 
-   If the show-buffer is modified, the user is queried before mh-e
-reuses the buffer to show a different message.  This buffer is also
+*** If the show-buffer is modified, the user is queried before mh-e
+reuses the buffer to show a different message. This buffer is also
 auto-saved and backed up correctly.
 
-   `mh-store-buffer' is significantly more robust.  It now handles
-messages created by a wide variety of packaging software.  The status
-message for `uudecode' includes the name of the file created.  An error
+*** `mh-store-buffer' is significantly more robust. It now handles
+messages created by a wide variety of packaging software. The status
+message for `uudecode' includes the name of the file created. An error
 is signaled if the subprocess exits with a non-zero status.
 
-   `mh-search-folder' behaves predictably, adding messages found to the
-`search' sequence.  It correctly handles the case of no messages found.
+*** `mh-search-folder' behaves predictably, adding messages found to
+the `search' sequence. It correctly handles the case of no messages
+found.
+
+*** `mh-burst-digest' (`M-b') now only rescans the part of the folder
+affected by the burst. It is now much faster in a large folder.
 
-   `mh-burst-digest' (`M-b') now only rescans the part of the folder
-affected by the burst.  It is now much faster in a large folder.
 
-New mh-e Hooks and Customization Variables
-==========================================
+** New Hooks and Customization Variables in mh-e 5.0
 
-   `mh-default-folder-for-message-function': new name for the old
-`mh-msg-folder-hook', which wasn't a hook.  The old name was confusing,
+*** `mh-default-folder-for-message-function': new name for the old
+`mh-msg-folder-hook', which wasn't a hook. The old name was confusing,
 leading people to think they could use `add-hook' with it, when
 actually `setq' is the correct way.
 
-   `mh-sortm-args': When this variable is used has changed.  Now
+*** `mh-sortm-args': When this variable is used has changed. Now
 `mh-sortm-args' is passed if there IS a prefix argument to
-`mh-sort-folder'.  The assumption is that for arguments you normally
+`mh-sort-folder'. The assumption is that for arguments you normally
 want, you would specify them in an MH profile entry.
 
-   `mh-mhn-args': new hook, a list of additional arguments to pass to
+*** `mh-mhn-args': new hook, a list of additional arguments to pass to
 the `mhn' program if `mh-edit-mhn' is given a prefix argument.
 
-   `mh-edit-mhn-hook': new hook called by `mh-edit-mhn', the function
+*** `mh-edit-mhn-hook': new hook called by `mh-edit-mhn', the function
 that formats MIME messages.
 
-   `mh-folder-list-change-hook': new hook, called whenever the cached
+*** `mh-folder-list-change-hook': new hook, called whenever the cached
 list of folders, `mh-folder-list', is changed.
 
-   `mh-find-path-hook': new hook, called when entering mh-e.
+*** `mh-find-path-hook': new hook, called when entering mh-e.
 
-   `mh-repl-formfile': new variable, used to change the format file
+*** `mh-repl-formfile': new variable, used to change the format file
 used by `mh-reply' from the default of "replcomps".
 
-   New variables to customize the scan format and notating:
+*** New variables to customize the scan format and notating:
 `mh-note-deleted', `mh-note-refiled', `mh-note-seq', `mh-note-cur',
 `mh-note-copied', `mh-note-printed'.
 
-Key Binding Changes in mh-e
-===========================
 
-   `RET' runs `mh-show' for consistency with the Finder and Info.  The
+** Key Binding Changes in mh-e 5.0
+
+*** `RET' runs `mh-show' for consistency with the Finder and Info. The
 old binding `.' still works, but `RET' is now the standard binding.
 
-   `M-<' now runs `mh-first-msg' for consistency with `M->', which runs
-`mh-last-msg'.
+*** `M-<' now runs `mh-first-msg' for consistency with `M->', which
+runs `mh-last-msg'.
 
-   `C-c C-f C-d' in MH-Letter mode moves to a Dcc: header field.
+*** `C-c C-f C-d' in MH-Letter mode moves to a Dcc: header field.
 
-   `C-c C-f C-r' in MH-Letter mode moves to a From: header field.
+*** `C-c C-f C-r' in MH-Letter mode moves to a From: header field.
 
-   `g' is now the standard binding for `mh-goto-msg'.  The old binding
+*** `g' is now the standard binding for `mh-goto-msg'. The old binding
 `j' still works.
 
-Other Improvements and Changes to mh-e
-======================================
 
-   `mh-lpr-command-format' no longer passes the "-p" argument to `lpr'
-by default.  The mail header typically has the date anyway.
+** Other Improvements and Changes to mh-e 5.0
+
+*** `mh-lpr-command-format' no longer passes the "-p" argument to
+`lpr' by default. The mail header typically has the date anyway.
 
-   When prompting for a sequence name, if no sequences have been used
+*** When prompting for a sequence name, if no sequences have been used
 yet, mh-e will offer the first sequence the current message is in.
 
-   The patterns of more mailers are recognized by
+*** The patterns of more mailers are recognized by
 `mh-extract-rejected-mail'.
 
-   `mh-insert-prefix-string' no longer wraps the call to the
+*** `mh-insert-prefix-string' no longer wraps the call to the
 `mail-citation-hook' function in a `save-excursion' so the hook writer
 can choose whether to leave point at the beginning or the end of the
 yanked text.
 
-   `mh-write-msg-to-file': The prompt now refers to "message" or
-"message body" depending on which will be written.  (This is controlled
-by a prefix argument.)  The file defaults to the last-used file instead
+*** `mh-write-msg-to-file': The prompt now refers to "message" or
+"message body" depending on which will be written. (This is controlled
+by a prefix argument.) The file defaults to the last-used file instead
 of supplying only the directory name.
 
-   mh-e uses message ranges when running MH commands.  Thus "rmm 1 2 3
-4 6" is now "rmm 1-4 6".  This change makes it less likely to overflow
+*** mh-e uses message ranges when running MH commands. Thus "rmm 1 2 3
+4 6" is now "rmm 1-4 6". This change makes it less likely to overflow
 system argument list limits, and it might be faster, too.
 
-Bug Fixes to mh-e
-=================
 
-   mh-e's idea of the unseen sequence now stays in sync with MH's
+** Bug Fixes to mh-e 5.0
+
+*** mh-e's idea of the unseen sequence now stays in sync with MH's
 better.
 
-   Functions that are supposed to find fields in the message header no
-longer look in the message body.
+*** Functions that are supposed to find fields in the message header
+no longer look in the message body.
 
-   mh-e would sometimes fail to remove the "%" from a scan line when the
-message was removed from a sequence if the message was also in the
+*** mh-e would sometimes fail to remove the "%" from a scan line when
+the message was removed from a sequence if the message was also in the
 Previous sequence.
 
-   The variable `mh-inc-prog' is now correctly used in all places.
+*** The variable `mh-inc-prog' is now correctly used in all places.
 
-   `mh-pipe-msg' runs the process in the correct directory.
+*** `mh-pipe-msg' runs the process in the correct directory.
 
-   A partially scanned folder will no longer lose the "/select"
+*** A partially scanned folder will no longer lose the "/select"
 annotation when you execute marked deletes and refiles with `x'.
 
+\f
+* Changes to mh-e 4.0
+
+This file is automatically generated from news-mh-e.txinfo.  Do not edit.
+
+[MH-E-ONEWS has been incorporated here and removed. news-mh-e.txinfo
+is no longer available.]
+
+Note: there are many internal changes to mh-e in this release.  If you
+have the previous version loaded into your Emacs, you will probably not
+be able to load this version on top of it.
+
+** New Features in mh-e 4.0
+
+*** Background folder collection. The first time you are prompted for
+a folder, you must wait while mh-e collects the names of all existing
+folders. Now however, if you abort, collecting will continue in the
+background, and you can do something else in Emacs until the
+collection completes. Normally, mh-e will begin collecting folders
+names in the background when you first load it; you can disable this
+feature by setting `mh-auto-folder-collect' to nil.
+
+*** There is support for composing MIME messages using the `mhn'
+program from MH 6.8. See the documentation string for mh-edit-mhn.
+(While composing a letter, type `C-h k C-c C-e'.) See also mhn(1).
+There is as yet no support for reading MIME messages.
+
+*** `mh-show', typically on `.', repositions to the start of the
+message if the message is already visible. It used to do nothing in
+this case.
+
+*** The function `mh-unshar-msg' is renamed `mh-store-msg'. It now
+does uudecoding, too. Someday it should do MIME. It remembers the last
+directory you used and offers it as the default for next time.
+
+*** New function `mh-header-display', on `,', displays the message
+with all headers, including those normally not displayed. Type `.' to
+display the message normally again.
+
+*** New function `mh-list-sequences' lists the sequences in use in the
+current folder.
+
+*** New function `mh-version' displays version information about MH
+and mh-e. Please use the output in bug reports.
+
+*** `mh-quit' now burys the folder buffer and show buffer.
+
+
+** New hooks and customization variables in mh-e 4.0
+
+*** `mh-pick-mode-hook': new hook called by new mode `mh-pick-mode'.
+The pick buffer didn't used to have its own mode. Another advantage of
+`mh-pick-mode' is that `C-h m' works in the pick buffer.
+
+*** `mail-citation-hook': new variable for supercite.
+
+*** `mh-refile-msg-hook': new hook called by `mh-refile-msg' (and
+`mh-refile-or-write-again' when refiling).
+
+*** `mh-msg-folder-hook': new hook used by `mh-refile-msg' and
+`mh-to-fcc' to provide a default folder for user prompt.
+
+*** `mh-show-hook': new hook called by `mh-show'.
+
+*** `mh-delete-msg-hook': new hook called by `mh-delete-msg'.
+
+*** `mh-show-mode-hook': new hook called by new mode `mh-show-mode'
+for `show-' buffers.
+
+*** `mh-comp-formfile': new variable so can customize `components'
+file.
+
+*** `mh-sortm-args': new variable, a list of extra arguments to be
+passed to sortm by `mh-sort-folder'. Give an argument to
+`mh-sort-folder' to suppress this behavior.
+
+*** `mh-send-prog': new variable so can customize name of `send'
+program in case of name conflicts.
+
+*** `mh-scan-prog': new variable so can customize name of `scan'
+program to generate custom effects.
+
+*** `mh-inc-prog': new variable so can customize name of `inc' program
+to do fancy management of incoming messages.
+
+*** `mh-forwarded-letter-subject': new function used by `mh-forward'
+to compute the Subject line of the new message. It is a small function
+which can be replaced by the user for customization. Uses the new
+variable `mh-forward-subject-format', which allows some simple
+customizations without rewriting even `mh-forwarded-letter-subject'.
+
+*** `mh-new-draft-cleaned-headers': new variable, header lines removed
+by `mh-edit-again' and `mh-extract-rejected-mail' before offering a
+message as a new draft.
+
+*** `mh-signature-file-name': new variable used by
+`mh-insert-signature' to so can customize name of the file to insert.
+
+*** `mh-read-address': new function called to read all To: and Cc:
+addresses.
+
+*** `mh-msg-folder-hook': new hook used by `mh-refile-msg' and
+`mh-to-fcc' to provide a default folder for user prompt.
+
+
+** Key binding changes in mh-e 4.0
+
+*** `,' runs new function `mh-header-display'. It is like `.' but it
+displays *all* the headers.
+
+*** `M-#' runs the new function `mh-delete-seq'. One used to have to
+type `C-u M-%' to delete a sequence.
+
+*** `<' no longer does `mh-first-msg', but `M->' now does
+`mh-last-msg'. This allows first and last to be consistent (`>' was
+taken) and is more likely to be discovered by chance anyway.
+
+*** `M-d' runs `mh-redistribute', `r' runs `mh-reply' (on the theory
+that the more commonly used function should be easier to type, and the
+obscure action of redistributing can be harder to type).
+
+*** `M-o' changed to `C-o' (`mh-write-msg-to-file'). It was
+interfering with arrow keys for some people.
+
+*** `M-n' now runs `mh-store-msg' (formerly `mh-unshar-msg').
+
+*** `b' no longer runs `mh-quit'; use `q' instead. `b' may be used in
+a future version for something else.
+
+
+** Minor improvements to mh-e 4.0
+
+*** The mh-e code is now divided into multiple Emacs Lisp files, so it
+starts up faster because Emacs doesn't have to load all of it at once.
+(This change also makes it easier for the maintainer to manage
+things.)
+
+*** When searching for the directory containing the MH programs,
+search the user's PATH in addition to the built-in directories, to
+increase the chance of finding the MH programs.
+
+*** The subject for a forwarded message no longer has ugly square
+brackets around it.
+
+*** The name of the folder is no longer appears twice in the show
+buffer mode line.
+
+*** When typing a folder name in the minibuffer, parent folders
+complete to the trailing slash (/), for easier typing of subfolders.
+
+*** The folder buffer mode name changed from `mh-e scan' or `mh-e
+show' to `MH-Folder', which makes the hook name easier to guess. Added
+`mh-showing' to `minor-mode-alist' so there is still an indication in
+the mode line of whether messages will be shown automatically.
+
+*** `mh-rename-seq' does completion on the old sequence name.
+
+*** If called by a user who has never used MH on this system before,
+mh-e runs the MH program `install-mh' to get them set up.
+
+*** Undo history for previous messages is not kept to avoid wasting
+memory.
+
+*** The internal temp buffer used by mh-e has `buffer-offer-save'
+explicitly nil. This change benefits people who change the
+`buffer-offer-save' default.
+
+
+** Bug fixes to mh-e 4.0
+
+*** `mh-to-field': don't bomb if no To: field.
+
+*** `mh-get-new-mail': restore annotations, e.g., cur, even if no new
+mail.
+
+*** `mh-rename-seq': verify that the new seq name was accepted by
+`mark' before updating state.
+
+*** `mh-internal-seq': the Previous sequence is not notated, since it
+would notate everything scanned.
+
+*** `mh-read-draft': don't call `find-file-noselect' so an
+`auto-mode-alist' doesn't trigger `mh-letter-mode-hook' twice. Faster,
+too.
+
+*** `mh-show': If user moves onto a message that doesn't exist, don't
+leave the cursor in the show pane.
+
+*** `mh-delete-scan-msgs': use `equal', not `=', on the result of
+`mh-get-msg-num', since it may be nil.
+
+*** `mh-get-field': do anchored search so searching for `reply-to:'
+doesn't find `in-reply-to:'.
+
+*** `mh-widen': do nothing if not narrowed.
+
+*** `mh-clean-message-header': find end of headers even if no body.
+
+\f
+Local variables:
+mode: outline
+paragraph-separate: "[         \f]*$"
+end:
+
+arch-tag: f6696cad-eb1b-4c5f-8057-4e3954a98d18