3 Copyright (C) 2003, 2004, 2005, 2006 Free Software Foundation, Inc.
5 Copying and distribution of this file, with or without modification,
6 are permitted in any medium without royalty provided the copyright
7 notice and this notice are preserved.
11 Version 7.92, the third 8.0 beta release, removes the "sed -i" in the
12 Makefile (SF #1432060), tunes the setting of `mh-image-load-path',
13 works around systems that do not have face inheritance, fixes several
14 issues with searching on XEmacs, and creates the correct MIME type
15 when including OpenOffice documents.
17 * Changes in MH-E 7.91
19 Version 7.91 is the second 8.0 beta release and fixes several bugs
20 that were uncovered in wider testing.
22 * Changes in MH-E 7.90
24 Version 7.90 is the first 8.0 beta release and is a release that has
25 finally broken away from some unfortunate legacy decisions in favor of
26 something that will be easier to use and support. Many bugs were fixed
27 and many features were added, including making the pick search
28 equivalent to the other types of searches.
30 The rewrite of the manual accelerated dramatically in recent months
31 and drove the changes in this release. In order to make the
32 manual--and hence the software--better, clearer, more consistent, more
33 predictable, and easier to understand, many variables and functions
34 were renamed. The changes to the user-visible variables are listed
35 here. It is our hope that you, dear MH-E user, will embrace the
36 changes for the better and forgive us from making so many incompatible
39 If you use undocumented functionality, be sure to read the ChangeLog
40 for changes that might affect you.
42 ** New Features in MH-E 7.90
44 *** Entry Points Have Moved
46 Emacs 21 users must now add `(require 'mh-autoloads)' because the
47 entry points (such as `mh-rmail' and `mh-smail') have moved to
48 different files which have made the autoloads that come with Emacs
49 inaccurate. This change was necessary because the code was reorganized
50 to remove circular dependencies, to make the code more stable and
51 maintainable, and to reduce the time to load MH-E.
53 *** MH-E No Longer Calls install-mh
55 The new variant detection code makes use of `mhparam' which assumes
56 that your MH environment has already been set up. The code to call
57 `install-mh', which could no longer be run anyway, was removed.
59 *** Use run-hook-with-args
61 We use normal hooks whenever possible and do not use
62 `run-hook-with-args' (with one documented exception) (closes SF
65 *** Merge mh-index.el and mh-pick.el
67 We merged `mh-index.el' and `mh-pick.el' into a new file
68 `mh-search.el'. As part of this process, the old `F s' behavior of
69 adding messages to the search sequence has been removed. The `F i'
70 keybinding was then renamed to `F s' (`mh-search'). The mode of the
71 search-pattern buffer was renamed from MH-Pick to MH-Search. Within
72 the MH-Search buffer, the command `C-c C-p' (`mh-pick-do-search') now
73 runs pick on the given folder recursively and displays the results in
74 a search folder like the other search methods (closes SF #829207).
76 *** Improve Security of mh-fetch-x-image-url
78 The default has been changed to "Never Fetch." Those of you who like
79 the value of "Ask Before Fetching" will have to customize this option
82 *** Remove Emacs 20 Support
84 As it turns out, we had already added some code that didn't work on
85 Emacs 20. However, now we've formalized it and removed code that was
86 present solely for Emacs 20 support (closes SF #1359240).
88 *** Derive mh-letter-mode from mail-mode
90 MH-Letter mode is now derived from `mail-mode'. We were able to delete
91 a lot of code. In return, there are a few `mail-mode' commands that
92 are available that may or may not be useful and the `mail-mode-hook'
93 is run (closes SF #1385571).
95 *** Add Choices to mh-to-field-choices
97 In MH-Letter mode, you can use the "C-c C-f (mh-to-field)" prefix to
98 go to and insert fields. The fields "Reply-To:", "Mail-Reply-To:",
99 "Mail-Followup-To:" can now be created via the "C-r", "C-a" (for
100 author), and "C-l" keys respectively. The key for the "From:" field
101 has been renamed from "C-r" to "C-m" for consistency with `mail-mode'
102 (closes SF #1400139).
104 *** MH-Folder Keymap Changes
106 The function `mh-ps-print-toggle-mime' was never implemented and the
107 functionality in `mh-ps-print-msg-show' was better afforded by
108 `mh-ps-print-msg' and `mh-ps-print-msg-file'.
112 F i mh-index-search -
113 F s mh-search-folder mh-search
114 P A mh-ps-print-toggle-mime -
115 P M mh-ps-print-toggle-mime -
116 P s mh-ps-print-msg-show -
118 *** MH-Letter Keymap Changes
120 The change where `mh-letter-mode' derives from `mail-mode' adds a few
121 keybindings. Some are interesting; experiment! Most of the changes
122 have to do with the renaming of the functions with "mhn" in them to
123 "mh" because nmh doesn't use `mhn'. The names were also made
124 consistent with the the family of "mml" functions.
128 C-c C-e mh-edit-mhn mh-mh-to-mime
129 C-c C-f C-a - mh-to-field
130 C-c C-f C-l - mh-to-field
131 C-c C-f RET - mh-to-field
132 C-c C-f a - mh-to-field
133 C-c C-f l - mh-to-field
134 C-c C-f m - mh-to-field
135 C-c RET C-g mh-mhn-compose-anon-ftp mh-mh-compose-anon-ftp
136 C-c RET C-t mh-mhn-compose-external-compressed-tar
137 mh-mh-compose-external-compressed-tar
138 C-c RET C-u mh-revert-mhn-edit mh-mh-to-mime-undo
139 C-c RET C-x mh-mhn-compose-external-type mh-mh-compose-external-type
140 C-c RET g mh-mhn-compose-anon-ftp mh-mh-compose-anon-ftp
141 C-c RET t mh-mhn-compose-external-compressed-tar
142 mh-mh-compose-external-compressed-tar
143 C-c RET u mh-revert-mhn-edit mh-mh-to-mime-undo
144 C-c RET x mh-mhn-compose-external-type mh-mh-compose-external-type
146 *** MH-Search Keymap Changes
148 These are the changes associated with the new search mode. The command
149 `C-c C-c' (`mh-index-do-search') now performs the standard indexed
150 search, while `C-c C-p' (`mh-pick-do-search') runs pick as before,
155 C-c C-c mh-do-search mh-index-do-search
156 C-c TAB mh-index-do-search -
158 ** New Variables in MH-E 7.90
160 *** mh-after-commands-processed-hook
162 Hook run by `x' (`mh-execute-commands') after performing outstanding
163 refile and delete requests.
165 *** mh-before-commands-processed-hook
167 Renamed from `mh-folder-updated-hook'. It wasn't clear whether
168 `mh-folder-updated-hook' was run before or after the commands were
169 executed. We now provide both with clear names.
171 *** mh-highlight-citation-style
173 Renamed from `mh-highlight-citation-p' since it wasn't a boolean. The
174 new name is also more descriptive.
176 *** mh-insert-signature-hook
178 Renamed from `mh-letter-insert-signature-hook' since most of the other
179 hooks do not carry the mode in the prefix and because the new name is
182 *** mh-kill-folder-suppress-prompt-hooks
184 Renamed from `mh-kill-folder-suppress-prompt-hook'. By convention,
185 abnormal hooks, which this is, either have a -function or -hooks
188 *** mh-mhl-format-file
190 Renamed from `mhl-formfile' to put it in the MH-E namespace and to be
191 consistent with other similar options.
193 *** mh-mh-to-mime-hook
195 Renamed from `mh-edit-mhn-hook'. We have a family of `mh-mml-to-mime'
196 functions and variables; the older mhn functions and variables were
197 renamed to have a consistent `mh-mh-to-mime' prefix.
199 *** mh-new-messages-folders
201 Renamed from `mh-index-new-messages-folders' for clarity.
205 Additional list of directories to search for MH.
207 *** mh-redist-full-contents-flag
209 On means the `dist' command needs entire letter for redistribution.
210 This was previously a variable. It's now an option.
212 *** mh-search-mode-hook
214 Renamed from `mh-pick-mode-hook' as part of the
215 `mh-index.el'/`mh-pick.el' merge into `mh-search.el'.
217 *** mh-search-program
219 Renamed from `mh-index-program' as part of the
220 `mh-index.el'/`mh-pick.el' merge into `mh-search.el'.
224 Additional arguments for `sortm'. This was previously an internal
225 variable. It's now an user-customizable option.
227 *** mh-speed-update-interval
229 Renamed from `mh-speed-flists-interval' for clarity.
231 *** mh-ticked-messages-folders
233 Renamed from `mh-index-ticked-messages-folders' for clarity.
235 *** mh-xemacs-tool-bar-position
237 Renamed from `mh-xemacs-toolbar-position' per GNU Emacs naming conventions.
239 *** mh-xemacs-use-tool-bar-flag
241 Renamed from `mh-xemacs-use-toolbar-flag' per GNU Emacs naming conventions.
245 Renamed from `mh-yank-from-start-of-msg' for clarity.
247 ** Variables Deleted in MH-E 7.90
249 *** mail-citation-hook
251 This is already defined in `sendmail.el'.
255 Renamed to `mh-mh-to-mime-hook'.
257 *** mh-folder-updated-hook
259 Renamed to `mh-before-commands-processed-hook'.
261 *** mh-highlight-citation-p
263 Renamed to `mh-highlight-citation-style'.
265 *** mh-index-new-messages-folders
267 Renamed to `mh-new-messages-folders'.
271 Renamed to `mh-search-program'.
273 *** mh-index-ticked-messages-folders
275 Renamed to `mh-ticked-messages-folders'.
277 *** mh-kill-folder-suppress-prompt-hook
279 Renamed to `mh-kill-folder-suppress-prompt-hooks'.
281 *** mh-letter-insert-signature-hook
283 Renamed to `mh-insert-signature-hook'.
287 Renamed to `mh-mhl-format-file'.
289 *** mh-pick-mode-hook
291 Renamed to `mh-search-mode-hook'.
293 *** mh-speed-flists-interval
295 Renamed to `mh-speed-update-interval'.
297 *** mh-speed-run-flists-flag
299 Deleted since setting `mh-speed-flists-interval' to 0 accomplishes the
302 *** mh-xemacs-toolbar-position
304 Renamed to `mh-xemacs-tool-bar-position'.
306 *** mh-xemacs-use-toolbar-flag
308 Renamed to `mh-xemacs-use-tool-bar-flag'.
310 *** mh-yank-from-start-of-msg
312 Renamed to `mh-yank-behavior'.
314 ** Bug Fixes in MH-E 7.90
316 *** Error Message When Trying to Send Using MH-E
318 This behavior is no longer observed (closes SF #1002103).
320 *** "Args out of range" Error in Displaying Message
322 This behavior is no longer observed (closes SF #1227504).
324 *** Front-and-back Truncation in mailto: Rendering
326 This behavior is no longer observed (closes SF #1227510).
328 *** Completions Offered by mh-refile-message Are Not Sorted
330 This behavior is no longer observed (closes SF #698734).
332 *** Add Message-ID to Outgoing Messages
334 If you replied to a message in your `+outbox', an `In-Reply-To:'
335 header field was created that broke threading at the recipient's end.
336 We now add a `Message-ID:' to outgoing messages which fixes this
339 *** Speedbar Creating New Folders Instead of Visiting Existing
341 This was actually fixed in 7.4.3 (closes SF #792300).
343 *** Args Out of Range
345 This compilation error was actually fixed in 7.4.3 (closes SF
348 *** Initialization Fails If ~/Mail Exists
350 MH-E no longer calls `install-mh' so this issue has gone away (closes
353 *** RETURN Causes Infinite Loop in mh-letter
355 This behavior is no longer observed (closes SF #887346).
357 *** Missing Headers When Replying to All
359 User needed to edit `replgroupcomps' (closes SF #918194).
361 *** mh-find-path Doesn't Use mhparam
363 MH-E no longer peeks into the MH profile `~/.mh_profile' directly. It
364 uses `mhparam' instead (closes SF #1016027).
366 *** mh-index-previous-folder Does Not Work Correctly
368 If your cursor was on an item below a folder heading and you used
369 `M-TAB' (`mh-index-previous-folder'), you would move to the previous
370 folder heading. This has been fixed (closes SF #1126188).
372 *** XEmacs Compile Fails
374 Compiling produced a "Symbol's value as variable is void: require"
375 error on all files. This has been fixed. As a bonus, warnings have
376 been reduced from hundreds to just a few (closes SF #1127595).
378 *** buffer-offer-save Permanent Local
380 There was a movement to make `buffer-offer-save' a permanent local
381 which would have meant that we could not set it in `mh-letter-mode'.
382 However, this movement was fraught with issues and was postponed
383 (closes SF #1184756).
385 *** Better Handling of Empty cur Sequence
387 If you refiled a message into a folder and then used `F r'
388 (`mh-rescan-folder') in that folder, your cursor would be taken to the
389 first message. The cursor now stays where it was (closes SF #1207247).
391 *** Name of the Draft File in mh-comp.el
393 MH is documented to use the draft file. If you use a draft file for
394 something else (like Sylpheed), then use draft folders (closes SF
397 *** Use Standard Default Notation in Prompts
399 Emacs changed their defaults in prompts from "Prompt: [value]" to
400 "Prompt (default value): ". All MH-E prompts have been updated to
401 comply with the new standard (closes SF #1275933).
403 *** Msg Display Broken After Displaying Msg with Inline Image
405 Messages with inline images no longer trim certain message header
406 fields (closes SF #1306141).
408 *** mh-visit-folder Munges font-lock-keywords
410 MH-E broke highlighting in Gnus buffers. This was actually a problem
411 in CVS Emacs 22 and has been fixed there (closes SF #1393879).
413 *** Illegal Filename Chars for W32 Filesystems
415 Windows users who view `X-Image-URL:' images could not cache the
416 images since the cached image file names had illegal characters. This
417 has been fixed (closes SF #1396499).
419 *** mh-send Doesn't Handle mml Insertions Via mail-user-agent
421 Can now forward messages in Gnus if MH-E is your `mail-user-agent'
422 (closes SF #1399307).
426 * Changes in MH-E 7.85
428 Version 7.85 heralds a migration of the CVS repository from
429 SourceForge to Savannah only for those files that were already part of
430 Emacs. As a result, two incompatibilities were introduced with this
431 release: the location of MH-E in the load-path has changed, and
432 mh-e-autoloads.el was renamed to mh-autoloads.el. While this migration
433 will benefit maintainers, it will also benefit users: CVS Emacs users
434 will not have to check out MH-E separately and welcome faster MH-E
435 updates, and CVS MH-E users will welcome faster MH-E updates from
436 Emacs developers. Read section CVS MH-E INSTALL in the README for
439 MH-E now works on a Mac. See section INSTALL in the README for details.
441 ** Bug Fixes in MH-E 7.85
443 *** Prompts Now Follow Current Conventions
445 Instead of "Prompt: [<default>] ", the prompts now look like "Prompt
446 (default: <default>): ".
448 *** Face Variable Names Now Follow Current Conventions
450 The -face suffix has been dropped from all face names.
452 *** Default Identity Prevents Insertion of Auto Fields
454 Auto insertion of an identity now occurs even when the default
455 identity is used (closes SF #1204506).
457 *** mh-compose-forward and Default Message Number
459 mh-compose-forward will now default to the sent message in the sent
460 folder and the `cur' message in other folders. It also takes ranges of
461 messages and can include multiple messages at a time (closes SF
464 *** mh-customize Uses Group mh, Not mh-e
466 The `mh' customization group alias has been deleted to avoid some
467 problems that were found (closes SF #1213716).
469 *** font-lock Error in mh-letter-mode
471 An error in MH-E was introduced as a result of a change in CVS Emacs.
472 This has been fixed (closes SF #1241017).
476 * Changes in MH-E 7.84
478 Version 7.84 contains no user-visible changes. This version
479 incorporates changes made in CVS Emacs such as the removal of some
482 * Changes in MH-E 7.83
484 Version 7.83 fixes a handful of bugs, adds colors to buttons for
485 signed or encrypted messages, and contains some documentation changes
486 related to the upcoming release of the manual. Some options were moved
487 to other customization groups as a result.
489 While not related to this release, the MH-E mailing lists are now
490 gatewayed at gmane.org (closes SF #979308).
492 ** New Variables in MH-E 7.83
494 *** mh-show-pgg-bad-face
496 Face used to highlight a bad PGG signature.
498 *** mh-show-pgg-good-face
500 Face used to highlight a good PGG signature.
502 *** mh-show-pgg-unknown-face
504 Face used to highlight a PGG signature whose status is unknown. This
505 face is also used for a signature when the signer is untrusted.
507 ** Bug Fixes in MH-E 7.83
509 *** Whitespace in pick Expressions
511 The "C-u / s RET" command now works. In addition, you can now add
512 whitespace to any of the limiting (/) commands (closes SF #1122655).
514 *** auto-mode-alist Updated
516 MH-E originally updated auto-mode-alist to set the major mode of
517 drafts. Now that we explicitly set the mode, there is no reason to do
518 this, and this behavior caused problems for people who didn't use MH-E
519 who were editing files that looked like MH message files (closes SF
522 *** mh-show-unquote-From Fails (read-only buffer)
524 MH-E quotes the "From " header field that is inserted by MTAs.
525 However, it was trying to do this in a read-only buffer. This has been
526 fixed (closes SF #1089870).
528 *** rmmproc Refile Complains No Such Message
530 MH-E would get confused about which folder to delete messages from if
531 you were refiling and deleting messages at the same time. This has
532 been fixed (closes SF #1023959).
534 *** ! Doesn't Do Regions
536 Now it does (closes SF #1046330).
540 Items in swish indexes that aren't mail messages are now handled more
543 *** Spamassassin Fixes
545 If you use spamassassin, there was an error when you tried to junk
546 mail if the option mh-junk-background was set. This has been fixed.
550 Indexing now compatible with Mairix version 0.12 and later.
554 * Changes in MH-E 7.82
556 Version 7.82 continues to address the saga surrounding the use of CL
557 macros in CVS Emacs and fixes the auto-detection of vanilla MH (closes
560 * Changes in MH-E 7.81
562 Version 7.81 fixes a `wrong-type-argument' argument error that
563 sometimes occurred when processing the Message-ID, adds the ";
564 (mh-toggle-mh-decode-mime-flag)" command, and uses ":default" instead
565 of "default" in `mh-identity-handlers' to avoid problems with
566 "Default:" as a user defined field. If you have modified
567 `mh-identity-handlers' in your .emacs, you'll need to rename "default"
568 to ":default". This release also corrects the release numbering; the
569 previous version number was intended to be 7.80.
573 * Changes in MH-E 7.4.80
575 Version 7.4.80 now supports GNU mailutils, S/MIME, picons,
576 which-func-mode, has an improved interface for hiding header fields,
577 improves upon the MH variant detection, and contains many bug fixes.
578 Those of you familiar with the GNU version numbering schemes will
579 recognize this as an alpha release. This does not reflect on the
580 quality of this release which is as high as it has always been.
581 Although we are not ready to release 8.0, we want you to have access
582 to the work that has been hiding in CVS. At the same time we want to
583 make it clear that there are incompatible changes with previous
586 We are planning to release the long-awaited manual update synchronized
587 with version 8.0. We are using documentation from the manual in the
588 docstrings which is hoped to make "C-h f (describe-function)" really
589 useful and create a seamless experience when switching back and forth
590 between the manual and the docstrings. This has been done in about
591 half of the variables and functions in this version.
593 The writing of the manual has revealed a few inconsistencies in the
594 software whose fixes have resulted in incompatible changes, and there
595 may well be more. So, unlike version 7 which was chock full of new
596 features, version 8's strengths will include complete documentation
599 ** New Features in MH-E 7.4.80
601 *** GNU mailutils Support
603 MH-E now supports GNU mailutils 0.4 and higher versions.
607 MH-E now supports S/MIME using Gnus 5.10.6 or higher.
611 In addition to the other methods of displaying an icon for the sender
612 of a message, MH-E can now display images from a picon directory. The
613 directory search path is found in the `mh-picon-directory-list'
614 variable. More documentation is found in the "facedb" sections in the
615 xfaces man page. [NOTE: need to make mh-picon-directory-list an option
616 and add xfaces facedb documentation to it.]
618 *** X-Image-URL Updates
620 Now support the use of `curl' and `fetch' as alternatives to `wget' to
621 obtain the image. The display of images are controlled with the
622 `mh-show-use-xface-flag' option while the `mh-fetch-x-image-url'
623 option controls how the images are fetched.
625 WARNING: There are security concerns with this feature. Please read
626 the documentation for these options carefully before changing the
629 *** Updates to mh-identity-list
631 Note that the field names found in `mh-identity-list' that refer to
632 the fields in `mh-identity-handlers' have changed in an incompatible
633 way from 7.4.4. In general, the symbolic names now have a ":" prefix
634 to avoid collisions with header fields. Before starting Emacs, edit
635 your .emacs and insert ":" before "signature" if you have defined it.
637 You can change your attribution in replies with the new "Attribution
638 Verb" field, and you can set your default GPG user ID with the "GPG
641 Signatures can now be read from the `mh-signature-file-name' variable,
642 or come from a function, in addition to a named file. If you write
643 your own function, variables that you can use include
644 `mh-signature-separator-regexp', `mh-signature-separator',
645 and `mh-signature-separator-p'.
647 The handling of these fields has been moved into a new
648 `mh-identity-handlers' option, an alist of fields (strings) and
649 handlers (functions). Strings are lowercase. Use ":signature" for
650 Signature and ":pgg-default-user-id" for GPG Key ID. The function
651 associated with the string "default" is used if no other functions are
652 appropriate. For this reason, don't name a header field "Default".
654 If you point your signature at a vCard file with a vcf suffix, then it
655 will be incorporated as a vCard body part (closes SF #802723).
659 There is a new "F c (mh-catchup)" command that marks all unread
660 messages in the current folder as read.
662 *** Change Content-Type Renderer on the Fly in MH-Show Buffer
664 This has been implemented by adding the key binding "K e
665 (mh-display-with-external-viewer)". For inline text/html parts,
666 buttons aren't displayed by default. In that case use "K t
667 (mh-toggle-mime-buttons)" to display the button before viewing it with
668 an external browser (closes SF #839318).
670 *** Use which-func-mode to Display Folder in Index Mode
672 Turning on `which-func-mode' displays the folder name of the message
673 under the cursor in index folders (closes SF #855520).
675 *** Render Signature and vCard in Italics
677 This has been implemented. Use `mh-show-signature-face' to customize
678 the face used (closes SF #802722).
682 There is now a keymap for the printing functions whose prefix is "P".
683 The command "l (mh-print-msg)" has been replaced with "P l". Other new
684 functions in this keymap include:
686 P A mh-ps-print-toggle-mime
687 P C mh-ps-print-toggle-color
688 P F mh-ps-print-toggle-faces
689 P M mh-ps-print-toggle-mime
690 P f mh-ps-print-msg-file
693 P s mh-ps-print-msg-show
695 *** Draft Buffer Keymap Changes
697 The keymap in the draft buffer has been modified slightly. The old
698 anonymous ftp and tar composition commands have been reinstated and
699 letter signing and encrypting keymaps have been added.
701 The type of signing or encryption has been generalized so the method
702 is now an option rather than a part of the function's name. The option
703 is `mh-mml-method-default' and choices include PGP (MIME), PGP,
708 C-c RET C-e mh-mml-secure-message-encrypt-pgpmime
709 mh-mml-secure-message-encrypt
710 C-c RET C-s mh-mml-secure-message-sign-pgpmime
712 C-c RET C-g - mh-mhn-compose-anon-ftp
713 C-c RET C-n - mh-mml-unsecure-message
714 C-c RET C-s - mh-mml-secure-message-sign
715 C-c RET C-t - mh-mhn-compose-external-compressed-tar
716 C-c RET C-s mh-mml-secure-message-sign-pgpmime
717 mh-mml-secure-message-sign
718 C-c RET C-x - mh-mhn-compose-external-type
719 C-c RET e mh-mml-secure-message-encrypt-pgpmime
721 C-c RET e e - mh-mml-secure-message-encrypt
722 C-c RET e s - mh-mml-secure-message-signencrypt
723 C-c RET g - mh-mhn-compose-anon-ftp
724 C-c RET n - mh-mml-unsecure-message
725 C-c RET s mh-mml-secure-message-sign-pgpmime
727 C-c RET s e - mh-mml-secure-message-signencrypt
728 C-c RET s s - mh-mml-secure-message-sign
729 C-c RET t - mh-mhn-compose-external-compressed-tar
730 C-c RET x - mh-mhn-compose-external-type
732 *** Speedbar: Highlight Folders With Unseen
734 The speedbar now renders the folders with unseen messages in boldface
735 which makes them easier to identify (closes SF #623369).
739 The "? (mh-help)" function now displays the help in its own buffer
740 called *MH-E Help* (closes SF #493740 and SF #656631).
742 *** New Startup File mh-e-autoloads.el
744 If you are installing MH-E yourself, then you can replace any
745 autoloads you may have with "(require 'mh-e-autoloads.el)". See the
748 *** Glimpse Support Removed
750 Since glimpse isn't free, we cannot mention it. Glimpse has been
751 removed from the option `mh-indexer-choices' (closes SF #831276).
753 *** mh-msg-is-in-seq Update
755 Can now specify an alternate message number to "S s
756 (mh-msg-is-in-seq)" with a prefix argument.
758 ** New Variables in MH-E 7.4.80
760 Variables that have been added to MH-E that have not been discussed
761 elsewhere are listed here.
763 *** mail-citation-hook
765 Hook for modifying a citation just inserted in the mail buffer.
767 *** mh-alias-reloaded-hook
769 Invoked by `mh-alias-reload' after reloading aliases.
771 *** mh-auto-fields-prompt-flag
773 Non-nil means to prompt before sending if fields in
774 `mh-auto-fields-list' are inserted.
776 *** mh-default-folder-for-message-function
778 Function to select a default folder for refiling or `Fcc'.
782 Invoked on the forwarded letter by "f (mh-forward)".
784 *** mh-invisible-header-fields-default
786 List of hidden header fields. The header fields listed in this option
787 are hidden, although you can check off any field that you would like
788 to see. Header fields that you would like to hide that aren't listed
789 can be added to the `mh-invisible-header-fields' option (closes SF
792 The option `mh-visible-header-fields' has been deleted.
794 *** mh-junk-background
796 If on, spam programs are run in background. This used to be the
797 default behavior but this could overwhelm a system if many messages
798 were black- or whitelisted at once. The spam programs are now run in
799 the foreground, but this option can be used to put them back in the
802 *** mh-signature-separator-flag
804 Non-nil means a signature separator should be inserted. It is not
805 recommended that you change this option since various mail user
806 agents, including MH-E, use the separator to present the signature
807 differently, and to suppress the signature when replying or yanking a
812 Specifies the variant used by MH-E. The default setting of this option
813 is `Auto-detect' which means that MH-E will automatically choose the
814 first of nmh, MH, or GNU mailutils that it finds in the directories
815 listed in `mh-path', `mh-sys-path', and `exec-path'. If, for example,
816 you have both nmh and mailutils installed and `mh-variant-in-use' was
817 initialized to nmh but you want to use mailutils, then you can set
818 this option to `mailutils'.
820 When this variable is changed, MH-E resets `mh-progs', `mh-lib',
821 `mh-lib-progs', `mh-flists-present-flag', and `mh-variant-in-use'
824 If you've set these variables in your .emacs, it is strongly suggested
825 that you comment them out. The MH detection code has been completely
826 rewritten and it is very likely that you no longer to set them and
827 their setting may confuse other MH-E settings.
829 ** Variables Deleted in MH-E 7.4.80
831 Variables that have been removed from MH-E that have not been
832 discussed elsewhere are listed here.
834 *** mh-alias-system-aliases
836 System definitions should not be a user option.
838 *** mh-junk-mail-folder
840 Since this variable can accept values other than folder names, it was
841 renamed to `mh-junk-disposition' to more accurately reflect the content.
843 ** Bug Fixes in MH-E 7.4.80
845 Many bugs were fixed in this version that aren't listed below.
847 *** mh-extract-rejected-mail Can't Do MIME (and Other Formats)
849 Now handles qmail and exim bounces (addresses SF #404965).
851 *** mh-rmail Hangs in XEmacs
853 We've determined that MH-E is incompatible with some versions of
854 XEmacs (21.5.9-21.5.16). More recent versions work fine. If you think
855 our list is too broad, please let us know which version of XEmacs you
856 are using (closes SF #644321).
858 *** Inconsistent Prompts
860 Prompt formats are now consistent throughout the application (closes
863 *** Empty Shell Comments Confuse mh-mhn-directive-present-p
865 If you had a string that matched the regexp "^# $" in your draft, it
866 would cause an error. This has been fixed (closes SF #762458).
868 *** Quote Hashes When mhbuild Directives Used
870 A related bug, if you had empty shell comments but inserted your own
871 directives, you'd get another error from mhbuild. This has been fixed
872 by quoting the hash ("^# $") like this "##" before submitting to
873 mhbuild (closes SF #762464).
875 *** Inconsistent Usage in Scan Formatting Variables
887 used to contain strings. Although only the first character was read,
888 the entire string would be inserted which may have caused problems.
889 These variables have been converted to character constants so that
890 only a single character can be inserted into the scan line (closes SF
893 *** Bad Handling of Aliases That Conflict With Local User Names
895 If a user name existed both locally and in the aliases file, the local
896 user would be flashed, but the alias would be used when sending. This
897 has been fixed so that the user name that is flashed is the same as
898 the name that is sent (closes SF #772595).
900 *** Args out of range
902 In rare and non-reproducible circumstances, compilation sometimes
903 threw an "Args out of range" error. Nonetheless, this has been fixed
906 *** mh-forward hard-codes '-mime' Switch on nmh
908 Added new option `mh-compose-forward-as-mime-flag' that controls whether
909 messages are forwarded as MIME attachments (closes SF #827203).
911 *** Not Re-prompted to Sign After Pass Phrase Typo
913 If there were errors when sending a signed message (like getting the
914 pass phrase wrong), the MML markup remained in the draft buffer. The
915 draft buffer is now restored if there is an error (closes SF #839303).
917 *** Font-lock Gets Confused in MH-Letter Buffer
919 If a user manually moved the cursor to the end of the header field
920 separator line (by mouse click or keyboard navigation) and hit Enter
921 to start typing their message, any line in the body with a colon would
922 be fontified with a gray background. This has been fixed (closes SF
925 *** mh-refile-msg Fails to Suggest Folder for Empty Message
927 If you received a message with an empty body from someone who is
928 listed in your aliases file, "o (mh-refile-msg)" failed to suggest the
929 correct folder. This has been fixed (closes SF #917096).
931 *** Error Visiting Folder With no Unseen Messages
933 If you visited a folder without unseen messages and the option "flist:
934 -noshowzero" is present in your ~/.mh_profile, you'd get an error. This
935 has been fixed (closes SF #933954).
939 * Changes in MH-E 7.4.4
941 Version 7.4.4 addresses programmatic issues from the FSF and prepares
942 MH-E for inclusion into an impending GNU Emacs release (22.1). There
943 are no user-visible changes (unless you are using XEmacs on DOS or
944 don't have the cl package installed). Filenames are now unique in
945 their first 8 characters (DOS 8.3 requirement). The runtime dependency
946 on the cl package has been removed. Desktop saving and restoration
947 code moved here from desktop.el.
949 * Changes in MH-E 7.4.3
951 Version 7.4.3 fixes the problem where `mh-identity-list' was not getting
954 * Changes in MH-E 7.4.2
956 Version 7.4.2 fixes the accidental dependence on nmh (closes SF
959 * Changes in MH-E 7.4.1
961 Version 7.4.1 fixes the Makefile so it no longer tries to compile
964 * Changes in MH-E 7.4
966 Version 7.4 contains many new useful features including arbitrary MH
967 range handling, new draft features such as draft form editing, as well
968 as sequence propagation and manipulation. We've also fixed bugs and
969 added a handful of new variables.
971 ** New Features in MH-E 7.4
973 *** Add Arbitrary Ranges to MH-E UI
975 MH-E now handles any legal MH range (such as last:5 or 4 8 10-12)
976 wherever you're prompted for a message number or sequence (closes SF
979 *** Remove Prompting in mh-send
981 Brian Reid's original mhe didn't do prompting anywhere but used forms
982 instead. While we won't go that far, we eliminated prompting where a
983 form is already involved, such as in composing a message.
985 The new customization variable `mh-compose-prompt-flag' can be set to
986 t to get the original behavior (closes SF #745622).
988 *** Use TAB to Switch Fields in Header
990 When composing a message, TAB and SHIFT-TAB can be used to move
991 quickly between header fields. The new customization variable,
992 `mh-compose-skipped-header-fields', contains a list of header fields
993 that are skipped and truncated if they are too long (closes SF
996 *** Alias Completion in Composition Buffer
998 Aliases can be completed in the draft with "M-TAB
999 (mh-letter-complete)". Or, if the customization variable
1000 `mh-compose-space-does-completion-flag' is set to t, then a "SPC
1001 (mh-letter-complete-or-space)" with do the same thing. If
1002 `mh-alias-flash-on-comma' is non-nil, ", (mh-letter-confirm-address)"
1003 will show the alias expansion in the minibuffer (closes SF #745634).
1005 *** Auto Fields Should be Inserted During Send
1007 Fields that were inserted by the multiple personality code when the
1008 draft was sent now insert the header fields when the draft is composed
1009 to give you a chance to edit them (closes SF #747890).
1011 *** mh-index-tick-messages
1013 The command "F ' (mh-index-ticked-messages)" creates a buffer with all
1014 messages ticked with "' (mh-toggle-tick)" in the folders listed in the
1015 new customization variable `mh-index-ticked-messages-folders'. Chances
1016 are that if you set `mh-index-new-messages-folders', you'll want to
1017 set `mh-index-ticked-messages-folders' accordingly.
1019 In addition, a general function, "F q (mh-index-sequenced-messages)"
1020 has been provided that displays messages in the `mh-unseen-seq' in the
1021 folders listed `mh-index-new-messages-folders', unless a prefix
1022 argument is given, in which case you can provide both a list of
1023 folders and a sequence (closes SF #718833).
1025 *** Narrow to Region
1027 If there is a region, "/ r (mh-narrow-to-range)" will only consider
1028 those messages in the region. In addition, there is now a stack of
1029 folder limits which can be popped with "/ w (mh-widen)". With a prefix
1030 arg, all the restrictions are popped off of the stack (closes SF
1033 *** Narrow to Ticked Sequence
1035 The buffer can now be narrowed to ticked messages with "S '
1036 (mh-narrow-to-tick)" (closes SF #732825).
1038 *** Display Multiple Buttons for multipart/alternative
1040 A new customizable variable,
1041 `mh-display-buttons-for-alternatives-flag', was added to display
1042 buttons for the alternatives. The default value is nil to retain the
1043 current behavior (closes SF #741288).
1045 *** Identity Menu Changes
1047 A menu item has been added that inserts custom fields if the To or Cc
1048 header fields match `mh-auto-fields-list'.
1050 ** New Variables in MH-E 7.4
1052 *** mh-alias-local-users-prefix
1054 This string is prepended to the real names of users from the passwd
1055 file. If nil, use the username string unmodified instead of the real
1056 name from the gecos field of the passwd file.
1058 *** mh-alias-passwd-gecos-comma-separator-flag
1060 Non-nil means the gecos field in the passwd file uses comma as a
1061 separator. Used to construct aliases for users in the passwd file."
1063 *** mh-interpret-number-as-range-flag
1065 Non-nil means interpret a number as a range. If the variable is
1066 non-nil, and you use an integer, N, when asked for a range to scan,
1067 then MH-E uses the range "last:N".
1069 *** mh-kill-folder-suppress-prompt-hook
1071 This new hook is invoked at the beginning of the `F k
1072 (mh-kill-folder)' command. It is a list of functions to be called,
1073 with no arguments, which should return a value of non-nil if you
1074 should not be asked if you're sure that you want to remove the folder.
1075 This is useful for folders that are easily regenerated.
1077 The default value of `mh-index-p' suppresses the prompt on folders
1078 generated by an index search.
1080 WARNING: Use this hook with care. If there is a bug in your hook which
1081 returns t on +inbox and you hit `F k' by accident in the +inbox
1082 buffer, you will not be happy.
1084 *** mh-refile-preserves-sequences-flag
1086 Non-nil means that sequences are preserved when messages are refiled.
1087 If this variable is non-nil and a message belonging to a sequence
1088 other than cur or Previous-Sequence (see mh-profile 5) is refiled then
1089 it is put in the same sequence in the destination folder. Additional
1090 sequences that should not to be preserved can be specified by setting
1091 `mh-unpropagated-sequences' appropriately.
1093 *** mh-visible-header-fields
1095 Customize this instead of `mh-visible-headers', which is now a defvar.
1096 This was done to mimic the relationship between
1097 `mh-invisible-header-fields' and `mh-invisible-fields'.
1099 ** Variables Deleted in MH-E 7.4
1101 *** mh-visible-headers
1103 See the paragraph for `mh-visible-header-fields' above.
1105 ** Bug Fixes in MH-E 7.4
1107 *** Aliases Constantly Reloaded
1109 The system aliases are not loaded as often as they were, so the
1110 completion speed has been dramatically improved if your passwd file is
1111 large (closes SF #693859).
1113 *** Folders in MH-Index View Not Saved
1115 When you perform a search to produce an MH-Index buffer, the folders
1116 that contain the messages are shown. If the MH-Index buffer was
1117 deleted, or Emacs was restarted and the corresponding folder
1118 rescanned, the folder information would be lost. This has been fixed
1119 by saving the information in a file called ".mhe_index" (closes SF
1122 *** Ticking Messages in +mhe-index/new
1124 If a new message in a buffer created by "F n" was ticked (with "'"),
1125 the message would not be added to the tick sequence in the source
1126 folder. This has been fixed so that any sequence changes in any index
1127 folder (from within MH-E of course) are now reflected back to the
1128 corresponding source folder (closes SF #709664).
1130 *** Custom Vars Set by a Function
1132 The default setting of customization variable `mh-summary-height' is
1133 now `nil' which means MH-E will change the size dynamically according
1134 to the size of the frame (closes SF #723267).
1136 *** Folder Completion Slow
1138 The first folder completion was very slow. This has been fixed (closes
1141 *** Tick Sequence Persistent When Refiled
1143 Sequences are now preserved when messages are refiled (closes SF
1146 *** Auto-inserted Header Fields Inconsistent
1148 For consistency, all automatically inserted header fields (such as
1149 X-Mailer and X-Face) are added when the draft is first presented to
1150 you. This also gives you a chance to edit or delete them if necessary
1151 (closes SF #745624). Note that we would be distressed if you deleted
1154 *** Toolbar Spec Error
1156 The following message appeared when displaying a message in XEmacs:
1158 Signaling: (error "Toolbar spec must be list or nil" )
1160 This has been fixed (closes SF #745655).
1162 *** mh-index-search Doesn't Find Short Acronyms
1164 Swish typically ignores words with fewer than four letters, but will
1165 still look for acronyms. Unfortunately, MH-E was downcasing the input
1166 words which defeated this feature. This has been fixed (closes SF
1171 * Changes in MH-E 7.3
1173 This release includes the new features of an index view of unseen
1174 messages in all folders, spam software support, relative folder
1175 specification @ support, marking messages, recipient handling by
1176 mh-default-folder-list, Face and X-Image-URL header field support, and
1177 Fcc completion. Function arguments have been unified. Bugs have been
1180 ** New Features in MH-E 7.3
1182 *** Unified Function Arguments
1184 Any function with MSG-OR-SEQ in its docstring uses the displayed
1185 message by default for this argument. However, if a prefix argument is
1186 provided, then the user is prompted for a message sequence. If the
1187 variable `transient-mark-mode' is non-nil and the mark is active, then
1188 the function operates on the messages in the selected region. In a
1189 program, MSG-OR-SEQ can be a message number, a list of message
1190 numbers, a region in a cons cell, or a sequence.
1192 *** MH-Index View of Unseen Messages
1194 Use "F n (mh-index-new-messages)" or Folder -> View New Messages menu
1195 item to display messages in the `mh-unseen-seq' sequence in folders
1196 specified by `mh-index-new-messages-folders'. With a prefix argument,
1197 enter a space-separated list of folders, or nothing to search all
1200 Like other MH-Index folders, use "v (mh-index-visit-folder)" if you
1201 wish to visit the original folder with the unseen message. This is
1202 usually not necessary since the original message is annotated if you
1203 reply, deleted if you delete the message, or refiled if you refile the
1204 message (closes SF #701756).
1206 *** Spam Software Support
1208 MH-E now supports several spam filters including Bogofilter,
1209 SpamProbe, and SpamAssassin. Spam that is mistakenly considered to be
1210 good mail can be reclassified as spam with "J b (mh-junk-blacklist)".
1211 Conversely, good mail that is accidently considered to be spam can be
1212 reclassified with "J w (mh-junk-whitelist)" (closes SF #669518).
1214 If a message is blacklisted, and `mh-junk-mail-folder' is a string,
1215 then the message is refiled to that folder. If this variable is nil,
1216 the message is deleted. If a message is whitelisted, then the message
1217 is refiled to `mh-inbox'.
1219 To change the spam program being used, customize `mh-junk-program'.
1220 This should only be necessary if you have multiple filters on your
1221 system and MH-E picked the wrong one. These customization variables
1222 are found in the new customization group `mh-junk'.
1224 The documentation for the following functions describes what setup is
1225 needed for the different spam fighting programs:
1227 - `mh-bogofilter-blacklist'
1228 - `mh-spamprobe-blacklist'
1229 - `mh-spamassassin-blacklist'
1231 *** Relative Folder Specification @ Supported
1233 You can now use the relative folder marker @ in folder names (closes
1236 *** Marking Messages
1238 Messages can now be highlighted with "' (mh-toggle-tick)", Sequence ->
1239 Toggle Tick Mark menu item or the "Toggle tick mark" button. These
1240 messages are added to the "tick" sequence, although this sequence can
1241 be changed in `mh-tick-seq'. The highlighting effect can be modified
1242 by customizing `mh-folder-tick-face' (closes SF #623367).
1244 There is also a new keybinding "/ ' (mh-narrow-to-tick)" and menu item
1245 Sequence -> Narrow to Tick Sequence to narrow the view to the
1246 highlighted messages.
1248 *** mh-default-folder-list Now Takes Recipients
1250 If you wish to file a message based upon the recipient of a message
1251 (such as a mailing list), you can now indicate that when filling out
1252 the address in the `mh-default-folder-list' customization variable.
1254 *** Face Header Field Supported
1256 In addition to the X-Face header field, the Face header field, which
1257 can display color images, is now supported. As a bonus, the external
1258 xface-e21 library is no longer required.
1260 *** X-Image-URL Support
1262 Images specified in X-Image-URL header fields are now supported.
1263 See the customization variable `mh-fetch-x-image-url' to enable this
1268 Folders in Fcc fields in message drafts can now be completed with
1271 ** New Variables in MH-E 7.3
1273 Variables that have been added to MH-E that have not been discussed
1274 elsewhere are listed here.
1276 *** mh-auto-fields-list
1278 Alist of addresses for which header lines are automatically inserted.
1279 When a regular expression matches in the To or cc fields of a message,
1280 the corresponding header field is automatically inserted in the
1281 message header. It also allows the automatic setting of an identity
1282 (using `mh-insert-identity') to set an alternate identity when sending
1283 messages to a certain person or mailing list.
1285 Since this is a more general use of `mh-insert-mail-followup-to-flag'
1286 and `mh-insert-mail-followup-to-list', these variables have been removed.
1288 *** mh-show-xface-face
1290 Face for displaying the X-Face image.
1292 *** mh-xemacs-toolbar-position
1294 This customization variable allows the user to place the toolbar on
1295 the four edges of the frame.
1297 *** mh-xemacs-use-toolbar-flag
1299 This customization variable is used to enable or disable the toolbar
1302 ** Variables Deleted in MH-E 7.3
1304 Variables that have been removed from MH-E that have not been
1305 discussed elsewhere are listed here.
1307 *** mh-decode-content-transfer-encoded-message-flag
1309 No longer needed since the external program mimencode is no longer
1312 *** mh-index-show-hook
1314 This hook was never used, so it was removed.
1316 *** mh-tool-bar-reply-3-buttons-flag
1318 Obsolete. This functionality is present `mh-tool-bar-folder-buttons'.
1320 ** Bug Fixes in MH-E 7.3
1322 *** Can't Refile Message
1324 Messages with invalid addresses were causing errors in ali which
1325 prevented the refiling of messages. The ali error is now shown in the
1326 "*MH-E Log*" buffer and refiling suggests the last folder used (closes
1329 *** Empty Body Triggers Duped Header
1331 If the body was empty the header would be treated like the body and
1332 was therefore displayed twice. This has been fixed (closes SF
1335 *** mml or mhl Directives Not Always Processed
1337 The mml and mhl directives used to create body parts were not
1338 processed if one re-edited a draft, or if they added the directives
1339 manually. The directives are now always processed upon sending the
1340 letter. You may still, of course, use "C-c C-m m (mh-mml-to-mime)" or
1341 "C-c C-e (mh-edit-mhn)" to manually create the MIME body parts from
1342 the directives and then send the draft.
1344 *** mh-alias-grab-from-field Fails
1346 MH-E was adding aliases with angle brackets around the address when
1347 there wasn't a phrase (usually, the user's name), to go with it. This
1348 caused ali to fail which caused problems in MH-E. This is probably a
1349 bug in ali, but MH-E no longer inserts angle brackets around the
1350 address unless there is a phrase, which avoids the problem (closes SF
1355 MH-E is now fully supported under XEmacs and compiles without any
1358 In particular, the following now work under XEmacs:
1360 - X-Face, Face, and X-Image-URL header fields
1361 - MH-E logo in mode line
1362 - Emphasis (bold, italics, etc.)
1366 *** Indexed Folders Should Respect mh-show-threads-flag
1368 Indexed folders are now threaded if `mh-show-threads-flag' is non-nil
1369 (closes SF #709667).
1371 *** Threading Index View Loses Folder Info
1373 This has been fixed (closes SF #709672).
1375 *** No Undo Information When Re-editing Drafts
1377 Undo is turned on in the draft buffer when using "e (mh-edit-again)"
1378 (closes SF #712777).
1380 *** Forwarded base64-encoded Messages Are Incorrectly Displayed
1382 This has been fixed (closes SF #681518).
1384 *** Append to *MH-E Log* Buffer
1386 The last 100 lines of log messages are kept in the *MH-E Log* buffer.
1387 Previously, the buffer was erased every time it was written (closes SF
1388 #685476). In addition, many of the MH-E commands now send their output
1389 into this buffer instead of a plethora of other special-purpose
1392 *** mh-inc-folder Complains if No Mail and No Current Message
1394 The function `mh-inc-folder' no longer calls `mh-show' if point is not
1395 on a valid scan line. This keeps `mh-inc-folder' from complaining
1396 (closes SF #678115).
1398 *** Folder Normalization Strips Leading Slash
1400 Leading "/" characters in folder names entered by the user were being
1401 lost. This has been fixed (closes SF #676890).
1403 *** Print Header Doesn't Show Message
1405 When printing a sequence, the header simply indicated that a sequence,
1406 but not which one, was being printed and did not show the message
1407 number. This has been fixed. If more than one message is printed, a
1408 page of the scan lines is printed and its header indicates the
1409 sequence or message range. The pages with the actual messages all set
1410 the header to the folder and message displayed on that page.
1412 *** Aliases Constantly Reloaded
1414 Empty lists are now handled properly (closes SF #693859).
1416 *** Remove RCS Keywords
1418 Removed RCS keywords per Emacs conventions (closes SF #680731).
1420 *** Replace Mimencode
1422 MH-E was enhanced to decode message based on charset and
1423 Content-Transfer-Encoding. This eliminates the need for the external
1424 program mimencode (closes SF #674857).
1428 * Changes in MH-E 7.2
1430 This release includes the new features of filing hints, hierarchical
1431 file name completion, indexed search and pick integration, unification
1432 between `mh-visit-folder' and the speedbar, a displayed message
1433 indicator, buffer name organization, support for mairix indexed
1434 search, and last but not least, the MH-E logo has been added to the
1435 mode line. Code that handles sequences and message regions runs
1436 faster. Bugs have been fixed.
1438 ** New Features in MH-E 7.2
1442 When you file a message, MH-E now looks for an alias corresponding to
1443 the address of the sender and offers that as a default folder (closes
1444 SF #657096). The new variable `mh-default-folder-prefix' can be used
1445 to put these folders in a sub-folder. The new variable
1446 `mh-default-folder-must-exist-flag' means to suppress the suggested
1447 folder (thereby providing the previous folder used) if the folder
1448 doesn't already exist. The new variable `mh-default-folder-list' can
1449 be used to map additional addresses and folders.
1451 *** Hierarchical File Name Completion
1453 When you completed filenames in the past, you were presented with a
1454 list of all your folders at all depths in the tree. Now you are
1455 presented with only one level at a time (closes SF #664821).
1456 As a result, the variables `mh-auto-folder-collect-flag' and
1457 `mh-folder-list-change-hook' are obsolete.
1459 *** Indexed Search and Pick Integration
1461 The indexed and pick searches have been integrated (closes SF
1462 #664816). Both "F s (mh-search-folder)" and "F i (mh-index-search)"
1463 use the pick template for forming queries. To submit the query, use
1464 "C-c C-c (mh-do-search)" which will use the query method you selected.
1465 If you change your mind while forming the query, you can use "C-c C-i
1466 (mh-index-do-search)" or "C-c C-p (mh-pick-do-search)" to submit the
1467 query using the respective method.
1469 Second, the results from a pick search are now saved in a sub-folder
1470 of +mhe-index like an indexed search.
1472 Third, `pick' is now a valid choice for `mh-index-program'.
1474 *** mh-visit-folder Metamorphosis Continues
1476 When visiting a folder from the speedbar, only the unseen messages are
1477 shown if there are unseen messages. If there aren't any unseen
1478 messages, all of the messages are shown if there are fewer than
1479 `mh-large-folder' messages; otherwise, the user is prompted for the
1480 range of messages to display. The "F v (mh-visit-folder)" command has
1481 been modified to mimic this behavior. Use a prefix arg to force the
1482 message range prompt.
1484 *** Displayed Message Indicator
1486 In graphical Emacs, the message that is shown is marked by a triangle
1487 in the fringe. In textual Emacs, there is a ">" in the first column
1488 (closes SF #664824).
1490 *** Buffer Name Organization
1492 All ephemeral buffer names start with " *mh" while all interesting
1493 buffers start with "*MH-E ". The "*Folders*", "*Sequences*", and
1494 "*Recipients*" buffers were therefore renamed to "*MH-E Folders*",
1495 "*MH-E Sequences*" and "*MH-E Recipients*" respectively (programmers
1496 should see mh-utils.el for the names of the new constants). Also, the
1497 output of MH commands is saved in the "*MH-E Log*" buffer.
1499 *** mh-index-program
1501 Add choices for `mairix' and `pick'.
1503 *** Logo Displayed on Mode Line
1505 ** New Variables in MH-E 7.2
1507 The new variables have been discussed elsewhere.
1509 ** Bug Fixes in MH-E 7.2
1511 *** mh-decode-content-transfer-encoded-message
1513 Messages that had been encoded with base64 were not decoded. This has
1514 been fixed with this new function (closes SF #674190). As a result,
1515 the variable `mh-decode-quoted-printable-flag' has been renamed to
1516 `mh-decode-content-transfer-encoded-message-flag'.
1520 Now restores previous window configuration (closes SF #664828).
1524 MH-E was not using the charset defined in the content-type
1525 header. This meant that mail in a different charset would not
1526 be properly displayed. This has been fixed (closes SF #655123).
1530 In XEmacs and Emacs20, this function would always prompt using "To: "
1531 instead of using the command argument. This has been fixed (closes SF
1536 Unseen messages are now shown in addition to new ones (closes SF
1539 *** mh-scan-msg-overflow-regexp
1541 Change the variable so that a space is always maintained in the
1542 beginning of the scan line.
1544 *** mh-swish-execute-search
1546 The example configuration file in the docstring didn't show the
1547 backslash in the FileRules filename. If the example had been used
1548 literally by the user, no files would be indexed! This has been fixed
1549 (closes SF #665888).
1551 *** mh-thread-refile
1553 The "T o (mh-thread-refile)" command did not provide refiling hints
1554 like `mh-refile-msg'. This has been fixed (closes SF #664829).
1556 *** mh-toggle-threads
1558 If the threaded view was modified and then toggled, the standard view
1559 may not have been accurate (as it contained a potentially old first
1560 message to last message range). This has been fixed (closes SF
1563 *** mh-tool-bar-show-set, mh-tool-bar-letter-set, mh-tool-bar-folder-set
1565 Clicking the customize and help buttons now deletes the other windows
1570 The "M-x mh-version" command displayed "Aliasfile: aliases". This has
1571 been fixed (closes SF #664467). See Buffer Name Organization above.
1575 * Changes in MH-E 7.1
1577 This release includes the new features of multiple identities and
1578 alias completion. In addition, indexed searching has been revamped.
1579 Various other features have been added and a few bugs were fixed.
1581 ** New Features in MH-E 7.1
1583 *** Multiple Identities
1585 MH-E now supports multiple identities (closes SF #628782). That means
1586 that you can have different From and Organization header fields (or
1587 any other header field of your choice) as well as different signatures
1588 depending on your context. Usually, the contexts are home and work.
1590 Add your identities to the variable `mh-identity-list' and set the
1591 default identity with the variable `mh-identity-default'. Your
1592 identity can be switched on the fly by using the Identity menu or by
1593 calling "M-x mh-insert-identity RET".
1595 This functionality can be customized within the mh-identity group.
1597 *** Alias Completion and Harvesting
1599 The contributed file mh-alias.el has been rewritten and incorporated
1602 By default, aliases are culled from the system files
1603 "/etc/nmh/MailAliases," "/usr/lib/mh/MailAliases," and "/etc/passwd"
1604 (see `mh-alias-system-aliases') and from your "AliasFile" MH profile
1605 component. These aliases are then used for completion in the
1606 minibuffer when entering addresses. Within the header of the message
1607 draft, "M-TAB (mh-letter-complete)" is used to do alias completion.
1609 The package also provides for alias creation based upon the From
1610 header field of the current message. Use the lasso button
1611 (mh-alias-grab-from-field).
1613 This functionality can be customized within the mh-alias group.
1615 *** Index Folder Updates
1617 The results of an index search "F i (mh-index-search)" are now stored
1618 in a bona fide folder so that you can refile messages and reply to
1619 messages directly from the result folder. This folder is a sub-folder
1620 of +mhe-index and the name is based upon the search string (closes SF
1623 If a prefix argument is given then the search in the current index
1626 The index folder lists the names of the source folders as before.
1627 However, instead of using RET on the name of the folder to visit the
1628 folder, use "v (mh-show-index-visit-folder)" anywhere within the
1629 results to visit that folder narrowed to the results of the search.
1630 Additional functions have been added to navigate including "TAB
1631 (mh-index-next-folder)", and "SHIFT-TAB (mh-index-previous-folder)."
1633 *** mh-visit-folder Interface Updated
1635 A change was made to the prompting of the message range. In general,
1636 you can use the same format for messages and sequences as you can in
1637 MH with a single exception: a single number means to scan that many
1638 messages, rather than scan that message number. This turns out to be
1639 much more useful than visiting a single message and is consistent with
1640 Gnus and the MH-E speedbar (closes SF #655891).
1642 If mh-visit-folder is called non-interactively and RANGE is nil then
1643 all messages are displayed. This behavior is now documented and
1644 provides backwards compatibility.
1646 *** Threading Improvements
1648 After incorporating new mail into a threaded folder, unseen messages
1649 can be spread about. Two new functions have been added to make it
1650 easier to find them: these are "M-n (mh-next-unread-msg)" and "M-p
1651 (mh-previous-unread-msg)" (closes SF #630328)
1653 Two new functions were added to delete and refile threads. They are "T
1654 d (mh-thread-delete)" and "T o (mh-thread-refile)" respectively
1655 (closes SF #630493).
1657 In addition, the key "k" used to be bound to the function
1658 `mh-delete-subject': it is now bound to
1659 `mh-show-delete-subject-or-thread'.
1661 New functions to navigate threads include "T u (mh-thread-ancestor)",
1662 which can jump to the root message of the current thread given an
1663 optional argument, "T n (mh-thread-next-sibling)", and "T p
1664 (mh-thread-previous-sibling)"
1666 *** Refiling of Messages in Region
1668 If mark is active and `transient-mark-mode' is enabled then all the
1669 messages in the region are refiled.
1673 If a signature cannot be identified, but there is a vCard attachment,
1674 then that vCard will be presented as a signature (closes SF #649216).
1676 *** New Info Added to mh-version
1678 Information about Gnus versions available at both compile time and run
1679 time has been added.
1681 ** New Variables in MH-E 7.1
1683 The defcustom groups were reorganized. Rather than iterate the
1684 specific changes here, you are invited to browse the groups with "M-x
1687 *** mh-alias-completion-ignore-case-flag
1689 Non-nil means don't consider case significant in MH alias completion.
1690 This is the default in plain MH, so it is the default here as well. It
1691 can be useful to set this to t if, for example, you use lowercase
1692 aliases for people and uppercase for mailing lists.
1694 *** mh-alias-expand-aliases-flag
1696 Non-nil means to expand aliases entered in the minibuffer. In other
1697 words, aliases entered in the minibuffer will be expanded to the full
1698 address in the message draft. By default, this expansion is not
1701 *** mh-alias-flash-on-comma
1703 Specify whether to flash the translation of the alias or warn if there
1704 isn't a translation of the alias.
1706 *** mh-alias-insert-file
1708 Filename to use to store new MH-E aliases. This variable can also be a
1709 list of filenames, in which case MH-E will prompt for one of them. If
1710 nil, the default, then MH-E will use the first file found in the
1711 "AliasFile" component of the MH profile.
1713 *** mh-alias-insertion-location
1715 Specifies where new aliases are entered in alias files. Options are
1716 sorted alphabetically (the default), at the top of the file or at the
1719 *** mh-alias-local-users
1721 If t, local users are completed in MH-E To: and Cc: prompts.
1723 If you set this variable to a string, it will be executed to generate
1724 a password file. A value of "ypcat passwd" is helpful if NIS is in
1727 *** mh-alias-system-aliases
1729 A list of system files from which to cull aliases. If these files are
1730 modified, they are automatically reread. This list need include only
1731 system aliases and the passwd file, since personal alias files listed
1732 in your "AliasFile" MH profile component are automatically included.
1734 *** mh-identity-default
1736 Default identity to use when `mh-letter-mode' is called.
1738 *** mh-identity-list
1740 List holding MH-E identity.
1742 *** mh-invisible-header-fields
1744 Simple user interface to change `mh-invisible-headers'.
1746 *** mh-letter-complete-function
1748 Function to call when completing outside of fields specific to
1749 aliases. By default, it is bound to 'ispell-complete-word.
1751 *** mh-show-threads-flag
1753 Non-nil means new folders start in threaded mode. Threading large
1754 number of messages can be time consuming. So if the flag is non-nil
1755 then threading will be done only if the number of messages being
1756 threaded is less than `mh-large-folder' (closes SF #646794).
1758 *** mh-tool-bar-folder-buttons
1760 Buttons to include in MH-E folder/show toolbar.
1762 *** mh-tool-bar-letter-buttons
1764 Buttons to include in MH-E letter toolbar.
1766 ** Bug Fixes in MH-E 7.1
1770 Call new function `mh-add-cur-notation' to undo the work of
1771 `mh-remove-cur-notation' if there was no new mail (closes SF #647681).
1775 No longer updates the default `mh-cmd-note' value. This resulted in
1776 the misplacement of the current mark when the message number width
1777 changed (closes SF #643701).
1781 * Changes in MH-E 7.0
1783 This is a major release which includes a lot of new features including
1784 improved MIME handling, speedbar folder browsing, and indexed
1785 searching. In this version, MH-E runs under XEmacs, passes checkdoc,
1786 and compiles clean under all supported platforms.
1788 The "passes checkdoc" feature above required changing the name of
1789 several user-visible variables. It is likely that this affects you.
1790 Please be sure to see the table at the end of these notes and rename
1791 your variables accordingly.
1793 MH-E has been written mh-e, Mh-e, MH-e and MH-E. We have decided that
1794 the proper term should be MH-E. Please try to use MH-E in your
1797 ** New Features in MH-E 7.0
1801 There is now support for the speedbar. Try "M-x speedbar" (closes SF
1804 Press the middle mouse button on the `+' icons to open a folder,
1805 middle mouse button on a folder name to open the folder. Folders with
1806 unseen messages are shown in bold, so this is a handy way to browse
1807 new messages that you have filed with procmail or slocal.
1809 See the new customization variable `mh-large-folder,' which controls
1810 when the speedbar asks for how many messages to scan when opening a
1811 large folder and `mh-speed-run-flists-flag' whose default value of t
1812 means to use the flists command to populate the count of unseen and
1813 total messages in each folder.
1817 Interoperability with swish++, swish, glimpse, and namazu has been
1818 added to enable lightening-fast searches of your mail. If none of
1819 these are present, grep is used. Try "F i (mh-index-search)".
1821 For more information, read the documentation for the functions
1822 `mh-swish++-execute-search,' `mh-swish-execute-search,'
1823 `mh-namazu-execute-search,' or `mh-glimpse-execute-search' depending
1824 on your preferred indexing program to see what kind of setup is needed
1825 to generate the index.
1829 Use "T t (mh-toggle-threads)" to view the threads in the folder. Use
1830 it again to return to a non-threaded view.
1834 Use "? (mh-help)" and "X ? (mh-prefix-help)," where X is a prefix
1835 character, for a brief synopsis in the minibuffer of frequently used
1836 commands. In the MH-Letter or MH-Pick buffers, use "C-c ? (mh-help)"
1837 (closes SF #493740).
1839 *** Folder Keymap Shared by Show Buffer
1841 You can now use the MH-Folder mode commands from the MH-Show buffer.
1842 Because of this, the MH-Show buffer is now read-only (closes SF
1843 #493749 and SF #527946) and you now have to use "M (mh-modify)" to
1848 You no longer have to modify your scan format if your folders have
1849 more than 9999 messages in them. If you've only modified your scan
1850 format file to allow for the wider message numbers, consider using the
1851 default behavior of MH-E and simplify your MH-E configuration
1852 considerably (closes SF #635791).
1854 To do this, you may have to remove your modifications of
1855 `mh-scan.*-regexp' and `mh-cmd-note' and your customization of
1856 `mh-scan-format-file'.
1858 You may still want the updated format files for running MH commands
1859 outside of MH-E; the default of `mh-scan-format-file' will cause them
1862 If you prefer fixed-width message numbers, set the new customization
1863 variable to nil , set this variable to
1864 nil and call `mh-set-cmd-note' with the width specified by the scan format in
1865 `mh-scan-format-file'. For example, the default width is 4, so you would use
1866 "(mh-set-cmd-note 4)" if `mh-scan-format-file' were nil.
1870 MH-E now displays the content of the X-Face header field in the From
1871 field. When sending a message, an X-Face field is appended to the
1872 header if it doesn't already exist and "~/.face" is present. See the
1873 new customization variables `mh-show-use-xface-flag' and `mh-x-face-file'
1874 (closes SF #480770).
1876 MH-E depends on the external x-face package found in
1877 ftp://ftp.jpl.org/pub/elisp/ to do this. The `uncompface' binary is
1878 also required to be in the execute PATH. It can be obtained from:
1879 http://freshmeat.net/redir/compface/1439/url_tgz/compface-1.4.tar.gz.
1881 It has also been observed that if you don't see the faces, you might
1882 have to do this (for unknown reasons):
1884 mv /usr/local/include/compface.h /usr/include/
1886 *** Graphical Smileys
1888 Smiley's are now converted to cute little images. See the new
1889 customization variable `mh-graphical-smileys-flag.'
1893 ASCII formatting is now converted to the appropriate font. For
1894 example, _underline_ is underlined, *bold* appears in bold, /italic/
1895 appears in italic, etc. See `gnus-emphasis-alist' for the whole list.
1896 See the new customization variables `mh-decode-mime' and
1897 `mh-graphical-emphasis-flag.'
1899 *** Attachment Handling
1901 Inline attachments are now displayed. Regular attachments appear as
1902 buttons in show buffer. Use "K TAB (mh-next-button)" or "K SHIFT-TAB
1903 (mh-prev-button)" to cycle through these buttons. Use "K v
1904 (mh-folder-toggle-mime-part)" to view, "K o
1905 (mh-folder-save-mime-part)" to save one part or "K-a
1906 (mh-save-mime-parts)" to save all parts, or "K i
1907 (mh-folder-inline-mime-part)" to view the attachment inline.
1909 See the new customization variable `mh-decode-mime' for additional
1910 information. Other customization variables that affect this new feature
1911 include `mh-store-mime-parts-default-directory' and
1912 `mh-display-buttons-for-inline-parts-flag'.
1914 HTML documents can be viewed inline if Gnus v5.10 and w3 or w3m lisp
1915 packages are present. Set the customization variable
1916 `mm-text-html-renderer' accordingly (closes SF #453352).
1918 *** Quoted-printable Handling
1920 Quoted-printable body parts are now decoded.
1922 *** More Choices for `mh-yank-from-start-of-msg'
1924 Historically, if this variable was t, the entire message, with full
1925 headers would be included and every line would begin with
1926 `mh-ins-buf-prefix.' This usage is deprecated in favor of the setting
1927 `supercite' below. The default has been changed to `attribution.' The
1928 following symbols are now understood:
1930 `body': yank the message minus the header.
1932 `supercite': include the entire message, with full headers. This also
1933 causes the invocation of `sc-cite-original' without the setting of
1934 `mail-citation-hook', now deprecated practice.
1936 `autosupercite': do as for `supercite' automatically when show buffer
1937 matches the message being replied-to.
1939 `attribution': yank the message minus the header and add a simple
1940 attribution line at the top.
1942 `autoattrib': do as for `attribution' automatically when show buffer
1943 matches the message being replied-to.
1945 There is a new customization variable called
1946 `mh-extract-from-attribution-verb' which is used for attribution which
1947 provides a method for setting a different language.
1949 *** Use Gnus mml Instead of mhn
1951 When inserting attachments into a message draft, Gnus mml directives
1952 are now used instead of mhn directives. One beneficial side-effect of
1953 this is that attachments can now appear inline as well as separate.
1955 The new customization variable `mh-compose-insertion' controls whether
1956 Gnus or mhn is used to insert MIME message directives in messages
1957 (default: 'gnus, if the mml library exists).
1959 *** Content-Type Now Obtained Automatically
1961 The value of the Content-Type no longer needs to be entered by the
1964 *** Attachments Automatically Included Upon Send
1966 You no longer have to run "C-c C-e (mh-edit-mhn)" before sending a
1967 message with attachments--this is done automatically when you send the
1968 message with "C-c C-c (mh-send-letter)". There is, however, a new key
1969 binding "C-c C-m m (mh-mml-to-mime)" which is analogous to "C-c C-e
1974 Messages that have been signed or encrypted with GPG are verified and
1975 decrypted automatically. To sign or encrypt a message, use "C-c RET
1976 C-s (mh-mml-secure-message-sign-pgpmime)" and "C-c C-m C-e
1977 (mh-mml-secure-message-encrypt-pgpmime)." You need Gnus version 5.10
1978 for this feature. These functions are provided by the pgg.el package.
1980 Users report "flashing" with the pgg.el package and prefer the gpg.el
1981 package instead. To use gpg.el instead of the pgg.el package you need:
1983 (setq mml2015-use 'gpg)
1985 To mimic automatic encryption in gpg.el, use:
1987 (setq mm-verify-option 'always)
1988 (setq mm-decrypt-option 'always)
1990 The venerable mailcrypt package is also an option. However, now that
1991 show buffers are read-only, mailcrypt version 3.5.6 and older fail
1992 when they attempt to decrypt the contents.
1994 *** Mail-Followup-To Header Field
1996 Support for this controversial field has been added because nmh
1997 supports it (closes SF #627035). If you want to add it to outgoing
1998 mail for selected mailing lists, add those mailing lists to the new
1999 customization variable `mh-insert-mail-followup-to-list.' If you think
2000 this field is evil, set the new customization variable
2001 `mh-insert-mail-followup-to-flag' to nil.
2005 If you update Gnus, you must recompile MH-E. Note that if you are
2006 running the stock version of MH-E that comes with Emacs or the MH-E
2007 package on a Debian GNU/Linux, this is done for you.
2009 ** New Variables in MH-E 7.0
2011 New customization variables not mentioned earlier include:
2013 *** mh-letter-insert-signature-hook
2015 Invoked at the beginning of the "C-c C-s (mh-insert-signature)"
2016 command. Can be used to determine which signature file to use based on
2017 message content. On return, if `mh-signature-file-name' is non-nil
2018 that file will be inserted at the current point in the buffer.
2020 *** mh-show-maximum-size
2022 Maximum size of message (in bytes) to display automatically. Provides
2023 an opportunity to skip over large messages which may be slow to load.
2024 Use a value of 0 to display all messages automatically regardless of
2025 size (closes SF #488696).
2027 *** mh-tool-bar-reply-3-buttons-flag
2029 Non-nil means use three buttons for reply commands in tool-bar. If you
2030 have room on your tool-bar because you are using a large font, you may
2031 set this variable to expand the single reply button into three buttons
2032 that won't lead to minibuffer prompt about who to reply to.
2034 ** Bug Fixes in MH-E 7.0
2036 *** mh-delete-msg, mh-refile-msg, mh-undo
2038 Mandrake Linux includes XEmacs initialization code that binds
2039 `transient-mark-mode' which causes problems in MH-E. These problems
2040 have been fixed (closes SF #541915).
2044 This would sometimes yield a read-only buffer. This has been fixed
2045 (closes SF #624283 and SF #625538).
2049 When using nmh, always specify -mime so as to preserve the original
2054 If you had narrowed to a sequence and then incorporated new mail,
2055 those new messages would not be present in your +inbox when you
2056 widened. This has been fixed (closes SF #489430, SF #489437, SF
2059 *** mh-insert-letter
2061 No longer uses mhl to include a message as this mangled the header and
2062 gave supercite fits (closes SF #629153).
2066 "M-q (fill-paragraph)" now fills quoted paragraphs (for example,
2067 starting with "> ") correctly (closes SF #489927).
2069 *** mh-next-undeleted-msg, mh-previous-undeleted-msg
2071 If there are no more undeleted messages the point remains at its
2072 original position and a message is produced (closes SF #494304).
2076 Now calls `mh-pick-mode-hook' as documented.
2078 *** mh-put-msg-in-seq
2080 Now puts all messages in region in sequence (closes SF #630324).
2082 *** mh-refile-msg, mh-write-msg-to-file
2084 These functions stomped on the variables that held the name of the
2085 last file and folder respectively for the other function. This has
2086 been fixed so that the last folder or file name is preserved (closes
2089 *** mh-region-to-sequence
2091 If the region in MH-Folder was set with "C-x h (mark-whole-buffer)",
2092 you couldn't perform operations on all of the messages as you would
2093 expect. This has been fixed (closes SF #621632).
2097 Performing an undo the first thing after replying would blank out the
2098 entire draft. Now just the insertion of the yanked message is undone
2099 leaving the header and signature intact for additional editing (closes
2104 Now calls `mh-show-mode-hook' as documented (closes SF #627222).
2106 *** mh-subject-thread-to-sequence
2108 Make 'subject sequence a real one, exported to MH. This means you can,
2109 for example, mh-forward it. But it also shows up with a mark in the
2110 scan output (closes SF #489445).
2114 The following bugs have also been closed:
2116 SF #495450: Folder buffer read-only after inc
2117 SF #489706: mh-page-msg bombs out
2118 SF #580772: mh-last-destination is overloaded
2120 *** Variables renamed to conform with Emacs coding conventions
2122 The coding conventions require that boolean variables end in -flag.
2123 The following two tables show which variables were affected (closes SF
2126 Customization Variables (defcustom)
2130 mh-auto-folder-collect mh-auto-folder-collect-flag
2131 mh-bury-show-buffer mh-bury-show-buffer-flag
2132 mh-clean-message-header mh-clean-message-header-flag
2133 mh-decode-quoted-printable mh-decode-quoted-printable-flag
2134 mh-delete-yanked-msg-window mh-delete-yanked-msg-window-flag
2135 mh-do-not-confirm mh-do-not-confirm-flag
2136 mh-highlight-citation-p mh-highlight-citation
2137 mh-insert-x-mailer-p mh-insert-x-mailer-flag
2138 mh-print-background mh-print-background-flag
2139 mh-recenter-summary-p mh-recenter-summary-flag
2140 mh-recursive-folders mh-recursive-folders-flag
2141 mh-reply-show-message-p mh-reply-show-message-flag
2142 mh-show-use-goto-addr mh-show-use-goto-addr-flag
2143 mh-update-sequences-after-mh-show mh-update-sequences-after-mh-show-flag
2145 Regular Variables (defvar)
2149 mh-mhn-compose-insert-p mh-mhn-compose-insert-flag
2150 mh-nmh-p mh-nmh-flag
2151 mh-page-to-next-msg-p mh-page-to-next-msg-flag
2155 * Changes in mh-e 6.1
2157 This is a minor release which includes a few bug fixes. The
2158 distribution now includes the ChangeLog.
2160 ** New Features in mh-e 6.1
2164 Unseen messages now displayed in bold.
2166 *** Viewing folders and sequences
2168 The folder and sequence listings that "F l (mh-list-folders)" and "S l
2169 (mh-list-sequences)" create are now displayed in view mode.
2171 ** Bug Fixes in mh-e 6.1
2173 *** mh-folder-unseen-seq-name
2175 Byte compilation failed when initializing this variable when the
2176 user's MH environment was not set up. This has been fixed (closes
2177 Debian #140232 and Debian #140817).
2181 When forwarding a sequence, the mode of the draft would not be set to
2182 MH-Letter correctly. This has been fixed (closes SF #489448).
2184 *** mh-insert-prefix-string
2186 Fixed to work under XEmacs. Thanks to Will Partain
2187 <partain at dcs.gla.ac.uk>.
2191 mh-quit now cleans up the buffers named `mh-temp-buffer,'
2192 'mh-temp-folders-buffer' and 'mh-temp-sequences-buffer.'
2195 * Changes in mh-e 6.0
2197 mh-e is now maintained at SourceForge (see
2198 http://mh-e.sourceforge.net/). This is where you need to go to obtain
2199 new versions of mh-e, report bugs and receive support.
2201 The maintainers have moved much of their personal configurations into
2202 the codebase, so you may find that you may be able to reduce your mh-e
2203 customizations as well.
2205 There are several incompatibilities in this version from older
2206 versions. Please read the following notes carefully for details. Pay
2207 particular attention to the key binding changes in the MH-Folder
2208 section. If you have customized your scan format, you will want to
2209 read about the new variable `mh-scan-format-file'.
2211 The manual could not be updated in time for this release. It will be
2212 updated in the near future. If the Preface in your manual indicates
2213 the older version (version 1.3, for mh-e version 5.0.2), please check
2214 the following page occasionally for an update:
2216 https://sourceforge.net/project/showfiles.php?group_id=13357
2219 ** New Features in mh-e 6.0
2223 mh-e now uses the customize feature of Emacs. Use "M-x customize-group
2224 mh RET" to customize mh-e.
2228 All mh-e modes now provide menus that contain most mh-e functions.
2232 All mh-e modes now have toolbar buttons for oft-used functions (Emacs 21).
2236 All mh-e buffers now have font-lock keywords. To use, either call
2237 (turn-on-font-lock) from the appropriate hook, or set
2238 `global-font-lock-mode' to t. To customize, use "M-x
2239 customize-apropos-faces ^mh RET".
2241 If you have customized your scan lines, you will have to update your
2242 scan regexps. The existing regexps were changed to extract a match so
2243 you will have to add appropriate grouping constructs to take advantage
2244 of the fontification. Your old settings will continue to work, but the
2245 folder will not be fontified. For example:
2247 (setq mh-good-msg-regexp "^\\(.....\\)[^D^]")
2249 You will most likely have to update the new variable
2250 `mh-scan-subject-regexp' as well. There is another new variable
2251 `mh-scan-date-regexp' which you may also find useful. Run "M-x apropos
2252 mh.*regexp" for a complete list.
2254 *** mail-user-agent support
2256 You can now set `mail-user-agent' to `mh-e-user-agent' so that packages
2257 that need to send mail will use mh-e (closes SF #406883, SF #470024).
2259 *** replgroupcomps support
2261 If you reply to `cc' or `all' and you use nmh, the nmh repl option
2262 -group will be used. This means that the file `replgroupcomps' will be
2263 used. If you have customized `replcomps', you will definitely want to
2264 either copy `$NMH_LIB/replgroupcomps' to your mail directory and modify
2265 it the same way that you modified your `replcomps' file, or simply
2266 copy your `replcomps' file to `replgroupcomps'.
2270 The variable `mh-summary-height' used to have a default of 4. It now
2271 varies from 4 to 10 depending on the height of the frame.
2273 Clicking the mouse on a message shows that message.
2275 Delete, refile and undo now operate on a region (but only if
2276 `transient-mark-mode' is non-nil).
2278 SPC (mh-page-msg) now displays the message if it is not already
2279 visible. If the bottom of a message is showing, SPC (mh-page-msg)
2280 moves to the next message (respecting the direction you are moving
2281 through the folder).
2283 The threading commands "T u (mh-next-unseen-subject-thread)",
2284 "T t (mh-toggle-subject-thread)", "T s (mh-narrow-to-subject-thread)",
2285 and "T k (mh-delete-subject-thread)" have been added. These functions
2286 do not offer threading in the true sense of the word, but do allow
2287 some manipulation by subject.
2289 Major, major keymap changes. This was done to free up movement
2290 commands in the buffer, and to provide for additional features, such
2291 as the threading commands. At the same time, better and more
2292 consistent mnemonics were realized that should make it easier to
2293 remember key bindings.
2295 Added new sub-keymaps for folder commands, sequence commands,
2296 extraction commands, and digest commands which begin with with F, S,
2297 X, and D, respectively. These sub-keymaps allowed some consistency
2298 (e.g., especially with l(ist) and k(ill)).
2300 Here are the actual changes and rationale:
2304 e - Deleted. Already have x. Now used by mh-edit-again.
2305 j - Deleted. Already have g.
2307 M-a e Better mnemonic. Matches rmail. Frees movement command.
2308 M-e E Better mnemonic. Consistent with e.
2309 - S Why not? mh-sort-folder.
2311 M-f Fv Frees movement command
2312 M-f Ff Alias (keep?)
2313 M-f Fo Alias (keep?)
2314 M-k Fk No reason but to keep with folder commands
2315 M-l Fl No reason but to keep with folder commands
2316 M-p Fp No reason but to keep with folder commands
2317 M-r Fr Frees movement command
2318 M-s Fs No reason but to keep with folder commands
2319 M-u Fu No reason but to keep with folder commands
2321 M-% Sd Better mnemonic
2322 M-# Sk Better mnemonic
2323 M-q Sl Better mnemonic
2324 C-xn Sn Frees up standard key binding
2325 % Sp Better mnemonic for putting a message in a sequence
2326 ? Ss Shows sequences that message is in
2327 C-xw Sw Frees up standard key binding
2329 M-n Xs Better mnemonic (extract shar)
2330 M-n Xu Better mnemonic (extract uuencode)
2332 M-SPC D SPC Frees mark command
2333 M-\177 D \177 No reason but to keep with digest commands
2334 M-b Db Frees movement command
2336 As the number of variables increases, it is becoming important to
2337 organize the mh-e namespace. Several variables having to do with the
2338 format of scan lines were renamed, as follows:
2342 mh-good-msg-regexp mh-scan-good-msg-regexp
2343 mh-deleted-msg-regexp mh-scan-deleted-msg-regexp
2344 mh-refiled-msg-regexp mh-scan-refiled-msg-regexp
2345 mh-valid-scan-line mh-scan-valid-regexp
2346 mh-cur-scan-msg-regexp mh-scan-cur-msg-number-regexp
2347 - mh-scan-cur-msg-regexp
2348 - mh-scan-rcpt-regexp
2349 - mh-scan-format-regexp
2350 mh-msg-number-regexp mh-scan-msg-number-regexp
2351 mh-msg-search-regexp mh-scan-msg-search-regexp
2355 While the MIME support is not complete, quoted-printable body parts
2358 Some MTAs quote From at the beginning of the line with a ">". The ">"
2359 is now removed in the display, but not on disk.
2363 New function "C-c C-o (mh-split-line)" splits lines in a draft
2364 preserving the fill prefix and indentation. This is useful when
2365 responding to several sentences in a single paragraph separately.
2367 "M-q (fill-paragraph)" can now be used on the message that is being
2368 replied to. The fill prefix such as "> " is preserved.
2370 You no longer have to run "C-c C-e (mh-edit-mhn)" manually as this is
2371 now done automatically when the message is sent.
2373 The X-Mailer header field is now added to messages as they are sent.
2375 "C-c C-m C-i (mh-mhn-compose-insertion)" now makes a pretty good guess
2376 at the type of file using the `file' command and no longer asks the
2377 user for the media type. If the necessary version of `file' is not
2378 available, the user is asked for the media type as before; however,
2379 the list of media types is now taken from the system mailcap if
2380 available. Failing that, the built-in list of types has been
2381 supplemented so in most cases the type you need should be present
2382 (closes SF #406883, #441179).
2384 ** New Variables in mh-e 6.0
2386 New variables not mentioned earlier include:
2388 *** mh-insert-x-mailer-p
2390 Default value of t means that an X-Mailer header field should be
2393 *** mh-reply-show-message-p
2395 The setting of this variable determines whether the MH show-buffer is
2396 displayed with the current message when using mh-reply without a prefix
2397 argument. Set it to nil if you already include the message
2398 automatically in your draft using "repl: -filter repl.filter" in
2401 *** mh-scan-format-file
2403 Specifies the format file to pass to the scan program. If t, the
2404 format string will be taken from the either `mh-scan-format-mh' or
2405 `mh-scan-format-nmh' depending on whether MH or nmh is in use. If nil,
2406 the default scan output will be used.
2408 If you customize the scan format, you may need to modify a few
2409 variables containing regexps that mh-e uses to identify specific
2410 portions of the output. Use `M-x apropos RET mh-scan.*regexp' to
2411 obtain a list of these variables.
2413 *** mh-scan-format-mh
2415 Scan format string for MH, provided to the scan program via the
2416 -format arg. This format is identical to the default except that
2417 additional hints for fontification have been added to the sixth
2420 *** mh-scan-format-nmh
2422 Scan format string for nmh, provided to the scan program via the
2423 -format arg. This format is identical to the default except that
2424 additional hints for fontification have been added to the sixth
2427 *** mh-show-use-goto-addr
2429 Non-nil means URLs and e-mail addresses are highlighted using
2430 goto-addr in MH-Show buffer.
2432 *** mh-letter-fill-column
2434 Fill column to use in `mh-letter-mode'. This is useful to make the
2435 lines a bit shorter to allow for quoting in replies.
2437 *** mh-folder-updated-hook
2439 Invoked when the actions in a folder (such as moves and deletes) are
2440 performed. Variables that are useful in this hook include
2441 `mh-delete-list' and `mh-refile-list' which can be used to see which
2442 changes are being made to current folder, `mh-current-folder'.
2444 *** mh-unseen-updated-hook
2446 Invoked after the unseen sequence has been updated. The variable
2447 `mh-seen-list' can be used to obtain the list of messages which will
2448 be removed from the unseen sequence
2450 ** Bug Fixes in mh-e 6.0
2452 *** mh-edit-again and mh-extract-rejected-mail
2454 Now insert a header separator (--------) which packages such as
2459 Now uses `mhparam' to set `mh-lib-progs' and `mh-lib'. Added more
2460 directories to `mh-progs' so that mh-e can autoconfigure in more
2461 environments. Chances are that you no longer have to set these
2462 variables, and if you do, you will only have to set `mh-progs'.
2463 Unless, of course, you are using an ancient version of MH that doesn't
2466 *** mh-folder-mode-map
2468 The DEL/<delete>/<backspace> change in Emacs 21 broke
2469 `mh-previous-page'. This has been fixed (closes SF #228907).
2473 If you had "forw: -mime" to your .mh_profile, forwarding a message
2476 Search failed: "^------- Forwarded Message"
2478 In addition, the Subject field was not filled in. This has been fixed
2479 (closes SF #223603).
2483 The user is now always prompted before this action; the variable
2484 `mh-do-not-confirm' is no longer consulted here. Therefore users who
2485 wanted to set `mh-do-not-confirm' but didn't because of the
2486 `mh-kill-folder' dependency may now do so.
2488 *** mh-make-folder-mode-line
2490 Properly deals with folders that do not have any lines in them. Prints
2491 "no msgs" instead of "0 msgs". Does not try to print a range when
2492 there are no messages.
2494 *** mh-mhn-compose-insertion
2496 Now gets the MIME type automatically (assuming the local file command
2497 supports the -i and -b options). If this use of the file command is
2498 not supported, the list of MIME types has been expanded to use the
2499 system's mailcap file.
2503 This variable (t when nmh is in use rather than MH) assumed that the
2504 string "nmh" is in `mh-lib-progs' or `mh-lib'. This has been fixed
2505 (closes SF #441776).
2509 No longer lets you specify an empty folder (closes SF #476824).
2511 *** mh-regenerate-headers
2513 Now suppresses "scan: bad message list" messages.
2517 This function was looking for `mhl' in the wrong place on nmh on
2518 Redhat LINUX 7.0. This has been fixed (closes SF #481128).
2522 Now updates `cur' sequence after a message is shown (closes SF #481772).
2526 Renamed variable and function to `mh-showing-mode' to conform with
2527 minor mode conventions. Added optional arg to function so it would
2528 behave like a normal minor mode: no or nil arg toggles mode, 0 arg
2529 turns off, non-nil turns on. This fixed the error that occurred when
2530 `desktop-create-buffer' recreated mh-e buffers because it was calling
2531 `mh-showing' with an arg.
2535 Fixed for nmh. Now displays mh-e version correctly. Cleaned up output
2536 and display `mh-progs', etc.
2540 Now attempts to stay on the same message number (closes SF #480922).
2542 No longer wipes out pending deletes and refiles without warning
2543 (closes SF #481036).
2546 * Changes in mh-e 5.0.2
2548 This version contains additional minor changes to integrate it with
2549 reporter.el (requires reporter.el version 3.1c or later) and Emacs
2550 19.30. The mh-goto-msg function is much faster, which also speeds up
2551 several other operations.
2554 * Changes in mh-e 5.0.1
2556 This version contains minor changes from mh-e 5.0 to integrate it with
2560 * User-visible changes to mh-e 5.0
2562 Note: This being a major release, there are many internal changes.
2563 This document lists only changes to the external interfaces of mh-e.
2565 When upgrading, you must either explicitly reload the new versions of
2566 all mh-e files that are already loaded or restart your Emacs.
2569 ** Major Changes and New Features in mh-e 5.0
2571 The emphasis for this release has been on consistency and
2572 documentation. Many documentation strings were enhanced. Documentation
2573 strings were changed to comments for internal functions and variables.
2575 *** There is now proper documentation in the form of a 75-page users
2576 manual. The Texinfo source is mh-e.texi; the formatted Info document
2579 *** There is a new command `mh-update-sequences', which updates MH's
2580 idea of what messages are in the Unseen sequence and what is the
2581 current folder and message. `mh-quit' calls it. While
2582 `mh-execute-commands' has always done this updating as a side effect,
2583 the new function is faster.
2585 *** The MH profile entry "Inbox:" is supported.
2587 *** If the show-buffer is modified, the user is queried before mh-e
2588 reuses the buffer to show a different message. This buffer is also
2589 auto-saved and backed up correctly.
2591 *** `mh-store-buffer' is significantly more robust. It now handles
2592 messages created by a wide variety of packaging software. The status
2593 message for `uudecode' includes the name of the file created. An error
2594 is signaled if the subprocess exits with a non-zero status.
2596 *** `mh-search-folder' behaves predictably, adding messages found to
2597 the `search' sequence. It correctly handles the case of no messages
2600 *** `mh-burst-digest' (`M-b') now only rescans the part of the folder
2601 affected by the burst. It is now much faster in a large folder.
2604 ** New Hooks and Customization Variables in mh-e 5.0
2606 *** `mh-default-folder-for-message-function': new name for the old
2607 `mh-msg-folder-hook', which wasn't a hook. The old name was confusing,
2608 leading people to think they could use `add-hook' with it, when
2609 actually `setq' is the correct way.
2611 *** `mh-sortm-args': When this variable is used has changed. Now
2612 `mh-sortm-args' is passed if there IS a prefix argument to
2613 `mh-sort-folder'. The assumption is that for arguments you normally
2614 want, you would specify them in an MH profile entry.
2616 *** `mh-mhn-args': new hook, a list of additional arguments to pass to
2617 the `mhn' program if `mh-edit-mhn' is given a prefix argument.
2619 *** `mh-edit-mhn-hook': new hook called by `mh-edit-mhn', the function
2620 that formats MIME messages.
2622 *** `mh-folder-list-change-hook': new hook, called whenever the cached
2623 list of folders, `mh-folder-list', is changed.
2625 *** `mh-find-path-hook': new hook, called when entering mh-e.
2627 *** `mh-repl-formfile': new variable, used to change the format file
2628 used by `mh-reply' from the default of "replcomps".
2630 *** New variables to customize the scan format and notating:
2631 `mh-note-deleted', `mh-note-refiled', `mh-note-seq', `mh-note-cur',
2632 `mh-note-copied', `mh-note-printed'.
2635 ** Key Binding Changes in mh-e 5.0
2637 *** `RET' runs `mh-show' for consistency with the Finder and Info. The
2638 old binding `.' still works, but `RET' is now the standard binding.
2640 *** `M-<' now runs `mh-first-msg' for consistency with `M->', which
2643 *** `C-c C-f C-d' in MH-Letter mode moves to a Dcc: header field.
2645 *** `C-c C-f C-r' in MH-Letter mode moves to a From: header field.
2647 *** `g' is now the standard binding for `mh-goto-msg'. The old binding
2651 ** Other Improvements and Changes to mh-e 5.0
2653 *** `mh-lpr-command-format' no longer passes the "-p" argument to
2654 `lpr' by default. The mail header typically has the date anyway.
2656 *** When prompting for a sequence name, if no sequences have been used
2657 yet, mh-e will offer the first sequence the current message is in.
2659 *** The patterns of more mailers are recognized by
2660 `mh-extract-rejected-mail'.
2662 *** `mh-insert-prefix-string' no longer wraps the call to the
2663 `mail-citation-hook' function in a `save-excursion' so the hook writer
2664 can choose whether to leave point at the beginning or the end of the
2667 *** `mh-write-msg-to-file': The prompt now refers to "message" or
2668 "message body" depending on which will be written. (This is controlled
2669 by a prefix argument.) The file defaults to the last-used file instead
2670 of supplying only the directory name.
2672 *** mh-e uses message ranges when running MH commands. Thus "rmm 1 2 3
2673 4 6" is now "rmm 1-4 6". This change makes it less likely to overflow
2674 system argument list limits, and it might be faster, too.
2677 ** Bug Fixes to mh-e 5.0
2679 *** mh-e's idea of the unseen sequence now stays in sync with MH's
2682 *** Functions that are supposed to find fields in the message header
2683 no longer look in the message body.
2685 *** mh-e would sometimes fail to remove the "%" from a scan line when
2686 the message was removed from a sequence if the message was also in the
2689 *** The variable `mh-inc-prog' is now correctly used in all places.
2691 *** `mh-pipe-msg' runs the process in the correct directory.
2693 *** A partially scanned folder will no longer lose the "/select"
2694 annotation when you execute marked deletes and refiles with `x'.
2697 * Changes to mh-e 4.0
2699 This file is automatically generated from news-mh-e.txinfo. Do not edit.
2701 [MH-E-ONEWS has been incorporated here and removed. news-mh-e.txinfo
2702 is no longer available.]
2704 Note: there are many internal changes to mh-e in this release. If you
2705 have the previous version loaded into your Emacs, you will probably not
2706 be able to load this version on top of it.
2708 ** New Features in mh-e 4.0
2710 *** Background folder collection. The first time you are prompted for
2711 a folder, you must wait while mh-e collects the names of all existing
2712 folders. Now however, if you abort, collecting will continue in the
2713 background, and you can do something else in Emacs until the
2714 collection completes. Normally, mh-e will begin collecting folders
2715 names in the background when you first load it; you can disable this
2716 feature by setting `mh-auto-folder-collect' to nil.
2718 *** There is support for composing MIME messages using the `mhn'
2719 program from MH 6.8. See the documentation string for mh-edit-mhn.
2720 (While composing a letter, type `C-h k C-c C-e'.) See also mhn(1).
2721 There is as yet no support for reading MIME messages.
2723 *** `mh-show', typically on `.', repositions to the start of the
2724 message if the message is already visible. It used to do nothing in
2727 *** The function `mh-unshar-msg' is renamed `mh-store-msg'. It now
2728 does uudecoding, too. Someday it should do MIME. It remembers the last
2729 directory you used and offers it as the default for next time.
2731 *** New function `mh-header-display', on `,', displays the message
2732 with all headers, including those normally not displayed. Type `.' to
2733 display the message normally again.
2735 *** New function `mh-list-sequences' lists the sequences in use in the
2738 *** New function `mh-version' displays version information about MH
2739 and mh-e. Please use the output in bug reports.
2741 *** `mh-quit' now burys the folder buffer and show buffer.
2744 ** New hooks and customization variables in mh-e 4.0
2746 *** `mh-pick-mode-hook': new hook called by new mode `mh-pick-mode'.
2747 The pick buffer didn't used to have its own mode. Another advantage of
2748 `mh-pick-mode' is that `C-h m' works in the pick buffer.
2750 *** `mail-citation-hook': new variable for supercite.
2752 *** `mh-refile-msg-hook': new hook called by `mh-refile-msg' (and
2753 `mh-refile-or-write-again' when refiling).
2755 *** `mh-msg-folder-hook': new hook used by `mh-refile-msg' and
2756 `mh-to-fcc' to provide a default folder for user prompt.
2758 *** `mh-show-hook': new hook called by `mh-show'.
2760 *** `mh-delete-msg-hook': new hook called by `mh-delete-msg'.
2762 *** `mh-show-mode-hook': new hook called by new mode `mh-show-mode'
2763 for `show-' buffers.
2765 *** `mh-comp-formfile': new variable so can customize `components'
2768 *** `mh-sortm-args': new variable, a list of extra arguments to be
2769 passed to sortm by `mh-sort-folder'. Give an argument to
2770 `mh-sort-folder' to suppress this behavior.
2772 *** `mh-send-prog': new variable so can customize name of `send'
2773 program in case of name conflicts.
2775 *** `mh-scan-prog': new variable so can customize name of `scan'
2776 program to generate custom effects.
2778 *** `mh-inc-prog': new variable so can customize name of `inc' program
2779 to do fancy management of incoming messages.
2781 *** `mh-forwarded-letter-subject': new function used by `mh-forward'
2782 to compute the Subject line of the new message. It is a small function
2783 which can be replaced by the user for customization. Uses the new
2784 variable `mh-forward-subject-format', which allows some simple
2785 customizations without rewriting even `mh-forwarded-letter-subject'.
2787 *** `mh-new-draft-cleaned-headers': new variable, header lines removed
2788 by `mh-edit-again' and `mh-extract-rejected-mail' before offering a
2789 message as a new draft.
2791 *** `mh-signature-file-name': new variable used by
2792 `mh-insert-signature' to so can customize name of the file to insert.
2794 *** `mh-read-address': new function called to read all To: and Cc:
2797 *** `mh-msg-folder-hook': new hook used by `mh-refile-msg' and
2798 `mh-to-fcc' to provide a default folder for user prompt.
2801 ** Key binding changes in mh-e 4.0
2803 *** `,' runs new function `mh-header-display'. It is like `.' but it
2804 displays *all* the headers.
2806 *** `M-#' runs the new function `mh-delete-seq'. One used to have to
2807 type `C-u M-%' to delete a sequence.
2809 *** `<' no longer does `mh-first-msg', but `M->' now does
2810 `mh-last-msg'. This allows first and last to be consistent (`>' was
2811 taken) and is more likely to be discovered by chance anyway.
2813 *** `M-d' runs `mh-redistribute', `r' runs `mh-reply' (on the theory
2814 that the more commonly used function should be easier to type, and the
2815 obscure action of redistributing can be harder to type).
2817 *** `M-o' changed to `C-o' (`mh-write-msg-to-file'). It was
2818 interfering with arrow keys for some people.
2820 *** `M-n' now runs `mh-store-msg' (formerly `mh-unshar-msg').
2822 *** `b' no longer runs `mh-quit'; use `q' instead. `b' may be used in
2823 a future version for something else.
2826 ** Minor improvements to mh-e 4.0
2828 *** The mh-e code is now divided into multiple Emacs Lisp files, so it
2829 starts up faster because Emacs doesn't have to load all of it at once.
2830 (This change also makes it easier for the maintainer to manage
2833 *** When searching for the directory containing the MH programs,
2834 search the user's PATH in addition to the built-in directories, to
2835 increase the chance of finding the MH programs.
2837 *** The subject for a forwarded message no longer has ugly square
2840 *** The name of the folder is no longer appears twice in the show
2843 *** When typing a folder name in the minibuffer, parent folders
2844 complete to the trailing slash (/), for easier typing of subfolders.
2846 *** The folder buffer mode name changed from `mh-e scan' or `mh-e
2847 show' to `MH-Folder', which makes the hook name easier to guess. Added
2848 `mh-showing' to `minor-mode-alist' so there is still an indication in
2849 the mode line of whether messages will be shown automatically.
2851 *** `mh-rename-seq' does completion on the old sequence name.
2853 *** If called by a user who has never used MH on this system before,
2854 mh-e runs the MH program `install-mh' to get them set up.
2856 *** Undo history for previous messages is not kept to avoid wasting
2859 *** The internal temp buffer used by mh-e has `buffer-offer-save'
2860 explicitly nil. This change benefits people who change the
2861 `buffer-offer-save' default.
2864 ** Bug fixes to mh-e 4.0
2866 *** `mh-to-field': don't bomb if no To: field.
2868 *** `mh-get-new-mail': restore annotations, e.g., cur, even if no new
2871 *** `mh-rename-seq': verify that the new seq name was accepted by
2872 `mark' before updating state.
2874 *** `mh-internal-seq': the Previous sequence is not notated, since it
2875 would notate everything scanned.
2877 *** `mh-read-draft': don't call `find-file-noselect' so an
2878 `auto-mode-alist' doesn't trigger `mh-letter-mode-hook' twice. Faster,
2881 *** `mh-show': If user moves onto a message that doesn't exist, don't
2882 leave the cursor in the show pane.
2884 *** `mh-delete-scan-msgs': use `equal', not `=', on the result of
2885 `mh-get-msg-num', since it may be nil.
2887 *** `mh-get-field': do anchored search so searching for `reply-to:'
2888 doesn't find `in-reply-to:'.
2890 *** `mh-widen': do nothing if not narrowed.
2892 *** `mh-clean-message-header': find end of headers even if no body.
2897 paragraph-separate: "[
\f]*$"
2900 arch-tag: f6696cad-eb1b-4c5f-8057-4e3954a98d18