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 8.0 supports GNU mailutils, S/MIME, picons, which-func-mode,
12 sports an improved interface for hiding header fields, improves upon
13 the MH variant detection, improves folder completion, makes the pick
14 search equivalent to the other types of searches, spruces up the tool
15 bar, creates the correct MIME type when including OpenOffice
16 documents, works on a Mac, adds colors to buttons for signed or
17 encrypted messages, incorporates new features introduced in
18 Emacs 22.1, fixes a bunch of bugs, and best of all, comes with an
21 Internally, MH-E now sports a new software organization which will
22 help future maintainability. As a side-effect, the number of XEmacs
23 compilation warnings has plummeted from hundreds to just three. CVS
24 users will notice that MH-E has been migrated from the CVS repository
25 from SourceForge to Savannah (but only for those files that were
26 already part of Emacs). As a result, the location of MH-E in the
27 load-path has changed, and mh-e-autoloads.el was renamed to
28 mh-autoloads.el. See section INSTALL in the README for details. While
29 this migration will benefit maintainers, it will also benefit users:
30 CVS Emacs users will not have to check out MH-E separately and welcome
31 faster MH-E updates, and CVS MH-E users will welcome faster MH-E
32 updates from Emacs developers. Read section CVS MH-E INSTALL in the
35 While not related to this release, the MH-E mailing lists are now
36 gatewayed at gmane.org (closes SF #979308).
38 If you want to see the release notes for the alpha and beta releases
39 leading up this release, please see:
41 http://cvs.savannah.gnu.org/viewcvs/emacs/etc/MH-E-NEWS?rev=1.25&root=emacs&view=markup
45 ** New Features in MH-E 8.0
47 *** GNU mailutils Support
49 MH-E now supports GNU mailutils 0.4 and higher versions.
53 MH-E now supports S/MIME using Gnus 5.10.6 or higher.
57 In addition to the other methods of displaying an icon for the sender
58 of a message, MH-E can now display images from a picon directory. The
59 directory search path is found in the `mh-picon-directory-list'
60 variable. More documentation is found in the "facedb" sections in the
65 There is a new `F c' (`mh-catchup') command that marks all unread
66 messages in the current folder as read.
68 *** Use which-func-mode to Display Folder in Index Mode
70 Turning on `which-func-mode' displays the folder name of the message
71 under the cursor in index folders (closes SF #855520).
75 The `?' (`mh-help') function now displays the help in its own buffer
76 called *MH-E Help* (closes SF #493740 and SF #656631).
78 *** Search Unification
80 The old `F s' behavior of adding messages to the search sequence has
81 been removed. The `F i' keybinding was deprecated and the new `F s'
82 (`mh-search') command is used to initiate either indexed or pick
83 searches. Within the MH-Search buffer (renamed from MH-Pick), the
84 command `C-c C-p' (`mh-pick-do-search') now runs pick on the given
85 folder recursively and displays the results in a search folder like
86 the other search methods (closes SF #829207).
88 *** Entry Points Have Moved
90 Emacs 21 users must now add `(require 'mh-autoloads)' because the
91 entry points (such as `mh-rmail' and `mh-smail') have moved to
92 different files which have made the autoloads that come with Emacs
93 inaccurate. This change was necessary because the code was reorganized
94 to remove circular dependencies, to make the code more stable and
95 maintainable, and to reduce the time to load MH-E.
97 *** MH-Folder Keymap Changes
99 There is now a keymap for the printing functions whose prefix is `P'.
100 The command `l' (`mh-print-msg') has been replaced with `P l' although
101 we suggest you use the new `P p' instead.
105 ; - mh-toggle-mh-decode-mime-flag
107 / f mh-narrow-to-from -
108 / r mh-narrow-to-range -
109 / g - mh-narrow-to-range
110 / m - mh-narrow-to-from
112 F i mh-index-search -
113 F s mh-search-folder mh-search
114 K e - mh-display-with-external-viewer
115 K t - mh-toggle-mime-buttons
117 P C - mh-ps-print-toggle-color
118 P F - mh-ps-print-toggle-faces
119 P f - mh-ps-print-msg-file
121 P p - mh-ps-print-msg
123 *** MH-Letter Keymap Changes
125 The change where `mh-letter-mode' derives from `mail-mode' adds a few
126 keybindings. Some are interesting: experiment! Only the keybinding
127 changes for MH-E functions are listed here.
129 Most of the changes have to do with the renaming of the functions with
130 "mhn" in them to "mh" because nmh doesn't use `mhn'. The names were
131 also made consistent with the the family of "mml" functions.
133 The type of signing or encryption has been generalized so the method
134 is now an option rather than a part of the function's name. The option
135 is `mh-mml-method-default' and choices include PGP (MIME), PGP,
140 C-c C-e mh-edit-mhn mh-mh-to-mime
141 C-c RET C-e mh-mml-secure-message-encrypt-pgpmime
142 mh-mml-secure-message-encrypt
143 C-c RET C-g - mh-mh-compose-anon-ftp
144 C-c RET C-n - mh-mml-unsecure-message
145 C-c RET C-s mh-mml-secure-message-sign-pgpmime
146 mh-mml-secure-message-sign
147 C-c RET C-t - mh-mh-compose-external-compressed-tar
148 C-c RET C-u mh-revert-mhn-edit mh-mh-to-mime-undo
149 C-c RET C-x - mh-mh-compose-external-type
150 C-c RET e mh-mml-secure-message-encrypt-pgpmime
152 C-c RET e e - mh-mml-secure-message-encrypt
153 C-c RET e s - mh-mml-secure-message-signencrypt
154 C-c RET g - mh-mh-compose-anon-ftp
155 C-c RET n - mh-mml-unsecure-message
156 C-c RET s - Prefix Command
157 C-c RET s e - mh-mml-secure-message-signencrypt
158 C-c RET s s - mh-mml-secure-message-sign
159 C-c RET t - mh-mh-compose-external-compressed-tar
160 C-c RET u mh-revert-mhn-edit mh-mh-to-mime-undo
161 C-c RET x - mh-mh-compose-external-type
163 C-c C-f C-a - mh-to-field
164 C-c C-f C-l - mh-to-field
165 C-c C-f RET - mh-to-field
166 C-c C-f a - mh-to-field
167 C-c C-f l - mh-to-field
168 C-c C-f m - mh-to-field
170 *** MH-Search Keymap Changes
172 These are the changes associated with the new search mode. The command
173 `C-c C-c' (`mh-index-do-search') now performs the standard indexed
174 search, while `C-c C-p' (`mh-pick-do-search') runs pick as before,
177 The `mh-to-field' keybindings were adjusted to be consistent with
178 those in the MH-Letter mode.
182 C-c C-c mh-do-search mh-index-do-search
183 C-c C-f C-d mh-to-field -
184 C-c C-f C-f mh-to-field -
185 C-c C-f C-r mh-to-field -
186 C-c C-f RET - mh-to-field
187 C-c C-f d mh-to-field -
188 C-c C-f f mh-to-field -
189 C-c C-f m - mh-to-field
190 C-c C-f r mh-to-field -
191 C-c TAB mh-index-do-search -
193 *** Updates to X-Image-URL
195 Now support the use of `curl' and `fetch' as alternatives to `wget' to
196 obtain the image. The display of images are controlled with the
197 `mh-show-use-xface-flag' option while the `mh-fetch-x-image-url'
198 option controls how the images are fetched.
200 The default of `mh-fetch-x-image-url' has been changed to "Never
201 Fetch." Those of you who like the value of "Ask Before Fetching" will
202 have to customize this option (closes SF #831278).
204 WARNING: There are security concerns with this feature. Please read
205 the documentation for these options carefully before changing the
208 *** Updates to mh-identity-list
210 Note that the field names found in `mh-identity-list' that refer to
211 the fields in `mh-identity-handlers' have changed in an incompatible
212 way from 7.4.4. In general, the symbolic names now have a ":" prefix
213 to avoid collisions with header fields. Before starting Emacs, edit
214 your .emacs and insert ":" before "signature" if you have defined it.
216 You can change your attribution in replies with the new "Attribution
217 Verb" field, and you can set your default GPG user ID with the "GPG
220 Signatures can now be read from the `mh-signature-file-name' variable,
221 or come from a function, in addition to a named file. If you write
222 your own function, variables that you can use include
223 `mh-signature-separator-regexp', `mh-signature-separator',
224 and `mh-signature-separator-p'.
226 The handling of these fields has been moved into a new
227 `mh-identity-handlers' option, an alist of fields (strings) and
228 handlers (functions). Strings are lowercase. Use ":signature" for
229 Signature and ":pgg-default-user-id" for GPG Key ID. The function
230 associated with the string "default" is used if no other functions are
231 appropriate. For this reason, don't name a header field "Default".
233 If you point your signature at a vCard file with a vcf suffix, then it
234 will be incorporated as a vCard body part (closes SF #802723).
236 *** Updates to Speedbar
238 The speedbar now renders the folders with unseen messages in boldface
239 which makes them easier to identify (closes SF #623369).
241 *** Updates to mh-msg-is-in-seq
243 Can now specify an alternate message number to `S s'
244 (`mh-msg-is-in-seq') with a prefix argument.
246 *** Updates to mh-to-field-choices
248 In MH-Letter mode, you can use the `C-c C-f' (`mh-to-field') prefix to
249 go to and insert fields. The fields `Reply-To:', `Mail-Reply-To:',
250 `Mail-Followup-To:' can now be created via the `C-r', `C-a' (for
251 author), and `C-l' keys respectively. The key for the `From:' field
252 has been renamed from `C-r' to `C-m' for consistency with `mail-mode'
253 (closes SF #1400139).
255 *** Change Content-Type Renderer on the Fly in MH-Show Buffer
257 This has been implemented by adding the key binding `K e'
258 (`mh-display-with-external-viewer'). For inline text/html parts,
259 buttons aren't displayed by default. In that case use `K t'
260 (`mh-toggle-mime-buttons') to display the button before viewing it
261 with an external browser (closes SF #839318).
263 *** MH-E No Longer Calls install-mh
265 The new variant detection code makes use of `mhparam' which assumes
266 that your MH environment has already been set up. The code to call
267 `install-mh', which could no longer be run anyway, was removed.
269 *** Add :package-version Keyword to Options
271 This `defcustom', `defgroup', and `defface' keyword was introduced in
272 Emacs 22.1. MH-E has been extended to take advantage of it. With this
273 keyword, you can now use `M-x customize-changed-options' to see what
274 options in MH-E have changed between versions of Emacs. In a future
275 version of Emacs, you'll be able to see changes between MH-E versions
276 as well (closes SF #1452724).
278 *** Render Signature and vCard in Italics
280 This has been implemented. Use `mh-show-signature-face' to customize
281 the face used (closes SF #802722).
283 *** Derive mh-letter-mode from mail-mode
285 MH-Letter mode is now derived from `mail-mode'. We were able to delete
286 a lot of code. In return, there are a few `mail-mode' commands that
287 are available that may or may not be useful and the `mail-mode-hook'
288 is run (closes SF #1385571).
290 *** Remove Emacs 20 Support
292 As it turns out, we had already added some code that didn't work on
293 Emacs 20. However, now we've formalized it and removed code that was
294 present solely for Emacs 20 support (closes SF #1359240).
296 *** Glimpse Support Removed
298 Since glimpse isn't free, we cannot mention it. Glimpse has been
299 removed from the option `mh-indexer-choices' (closes SF #831276).
301 *** Use run-hook-with-args
303 We use normal hooks whenever possible and do not use
304 `run-hook-with-args' (with one documented exception) (closes SF
309 ** New Variables in MH-E 8.0
311 *** mh-after-commands-processed-hook
313 Hook run by `x' (`mh-execute-commands') after performing outstanding
314 refile and delete requests.
316 *** mh-alias-reloaded-hook
318 Invoked by `mh-alias-reload' after reloading aliases.
320 *** mh-auto-fields-prompt-flag
322 On means to prompt before sending if fields in `mh-auto-fields-list'
325 *** mh-before-commands-processed-hook
327 Renamed from `mh-folder-updated-hook'. It wasn't clear whether
328 `mh-folder-updated-hook' was run before or after the commands were
329 executed. We now provide both with clear names.
331 *** mh-compose-forward-as-mime-flag
333 On means that messages are forwarded as attachments (closes SF
336 *** mh-default-folder-for-message-function
338 Function to select a default folder for refiling or `Fcc:'.
342 Invoked on the forwarded letter by `f' (`mh-forward').
344 *** mh-highlight-citation-style
346 Renamed from `mh-highlight-citation-p' since it wasn't a boolean. The
347 new name is also more descriptive.
349 *** mh-identity-handlers
351 Handler functions for fields in `mh-identity-list'.
353 *** mh-insert-signature-hook
355 Renamed from `mh-letter-insert-signature-hook' since most of the other
356 hooks do not carry the mode in the prefix and because the new name is
359 *** mh-invisible-header-fields-default
361 List of hidden header fields. The header fields listed in this option
362 are hidden, although you can check off any field that you would like
363 to see. Header fields that you would like to hide that aren't listed
364 can be added to the `mh-invisible-header-fields' option (closes SF
367 The option `mh-visible-header-fields' has been deleted.
369 *** mh-junk-background
371 If on, spam programs are run in background. This used to be the
372 default behavior but this could overwhelm a system if many messages
373 were black- or whitelisted at once. The spam programs are now run in
374 the foreground, but this option can be used to put them back in the
377 *** mh-junk-disposition
379 Renamed from `mh-junk-mail-folder' since this variable can accept
380 values other than folder names.
382 *** mh-kill-folder-suppress-prompt-hooks
384 Renamed from `mh-kill-folder-suppress-prompt-hook'. By convention,
385 abnormal hooks, which this is, either have a -function or -hooks
388 *** mh-mhl-format-file
390 Renamed from `mhl-formfile' to put it in the MH-E namespace and to be
391 consistent with other similar options.
393 *** mh-mh-to-mime-hook
395 Renamed from `mh-edit-mhn-hook'. We have a family of `mh-mml-to-mime'
396 functions and variables; the older mhn functions and variables were
397 renamed to have a consistent `mh-mh-to-mime' prefix.
399 *** mh-mml-method-default
401 Default method to use in security tags.
403 *** mh-new-messages-folders
405 Renamed from `mh-index-new-messages-folders' for clarity.
409 Additional list of directories to search for MH.
411 *** mh-redist-full-contents-flag
413 On means the `dist' command needs entire letter for redistribution.
414 This was previously a variable. It's now an option.
416 *** mh-search-mode-hook
418 Renamed from `mh-pick-mode-hook' as part of the
419 `mh-index.el'/`mh-pick.el' merge into `mh-search.el'.
421 *** mh-search-program
423 Renamed from `mh-index-program' as part of the
424 `mh-index.el'/`mh-pick.el' merge into `mh-search.el'.
426 *** mh-signature-separator-flag
428 On means a signature separator should be inserted. It is not
429 recommended that you change this option since various mail user
430 agents, including MH-E, use the separator to present the signature
431 differently, and to suppress the signature when replying or yanking a
436 Additional arguments for `sortm'. This was previously an internal
437 variable. It's now an user-customizable option.
439 *** mh-speed-update-interval
441 Renamed from `mh-speed-flists-interval' for clarity.
443 *** mh-ticked-messages-folders
445 Renamed from `mh-index-ticked-messages-folders' for clarity.
449 Specifies the variant used by MH-E. The default setting of this option
450 is `Auto-detect' which means that MH-E will automatically choose the
451 first of nmh, MH, or GNU mailutils that it finds in the directories
452 listed in `mh-path', `mh-sys-path', and `exec-path'. If, for example,
453 you have both nmh and mailutils installed and `mh-variant-in-use' was
454 initialized to nmh but you want to use mailutils, then you can set
455 this option to `mailutils'.
457 When this variable is changed, MH-E resets `mh-progs', `mh-lib',
458 `mh-lib-progs', `mh-flists-present-flag', and `mh-variant-in-use'
461 If you've set these variables in your .emacs, it is strongly suggested
462 that you comment them out. The MH detection code has been completely
463 rewritten and it is very likely that you no longer to set them and
464 their setting may confuse other MH-E settings.
466 *** mh-xemacs-tool-bar-position
468 Renamed from `mh-xemacs-toolbar-position' per GNU Emacs naming conventions.
470 *** mh-xemacs-use-tool-bar-flag
472 Renamed from `mh-xemacs-use-toolbar-flag' per GNU Emacs naming conventions.
476 Renamed from `mh-yank-from-start-of-msg' for clarity.
480 ** Variables Deleted in MH-E 8.0
482 *** mh-alias-system-aliases
484 System definitions should not be a user option.
488 Renamed to `mh-mh-to-mime-hook'.
490 *** mh-folder-updated-hook
492 Renamed to `mh-before-commands-processed-hook'.
494 *** mh-highlight-citation-p
496 Renamed to `mh-highlight-citation-style'.
498 *** mh-index-new-messages-folders
500 Renamed to `mh-new-messages-folders'.
504 Renamed to `mh-search-program'.
506 *** mh-index-ticked-messages-folders
508 Renamed to `mh-ticked-messages-folders'.
510 *** mh-junk-mail-folder
512 Since this variable can accept values other than folder names, it was
513 renamed to `mh-junk-disposition' to more accurately reflect the content.
515 *** mh-kill-folder-suppress-prompt-hook
517 Renamed to `mh-kill-folder-suppress-prompt-hooks'.
519 *** mh-letter-insert-signature-hook
521 Renamed to `mh-insert-signature-hook'.
523 *** mh-pick-mode-hook
525 Renamed to `mh-search-mode-hook'.
527 *** mh-show-use-goto-addr-flag
529 This flag was redundant with and inconsistent with
530 `goto-address-highlight-p' at the same time, so we removed it. Please
531 customize `goto-address-highlight-p' if you wish to turn off email
532 address and URL highlighting.
534 *** mh-speed-flists-interval
536 Renamed to `mh-speed-update-interval'.
538 *** mh-speed-run-flists-flag
540 Deleted since setting `mh-speed-flists-interval' to 0 accomplishes the
543 *** mh-visible-header-fields
545 Deleted since it would hide new header fields you might want to see.
547 *** mh-xemacs-toolbar-position
549 Renamed to `mh-xemacs-tool-bar-position'.
551 *** mh-xemacs-use-toolbar-flag
553 Renamed to `mh-xemacs-use-tool-bar-flag'.
555 *** mh-yank-from-start-of-msg
557 Renamed to `mh-yank-behavior'.
561 Renamed to `mh-mhl-format-file'.
565 ** New Faces in MH-E 8.0
567 *** mh-folder-address
569 Renamed from `mh-folder-address-face' per new Emacs conventions.
573 Renamed from `mh-folder-body-face' per new Emacs conventions.
575 *** mh-folder-cur-msg-number
577 Renamed from `mh-folder-cur-msg-number-face' per new Emacs conventions.
581 Renamed from `mh-folder-date-face' per new Emacs conventions.
583 *** mh-folder-deleted
585 Renamed from `mh-folder-deleted-face' per new Emacs conventions.
587 *** mh-folder-followup
589 Renamed from `mh-folder-followup-face' per new Emacs conventions.
591 *** mh-folder-msg-number
593 Renamed from `mh-folder-msg-number-face' per new Emacs conventions.
595 *** mh-folder-refiled
597 Renamed from `mh-folder-refiled-face' per new Emacs conventions.
599 *** mh-folder-sent-to-me-hint
601 Fontification hint face in messages sent directly to us.
603 *** mh-folder-sent-to-me-sender
605 Sender face in messages sent directly to us.
607 *** mh-folder-subject
609 Renamed from `mh-folder-subject-face' per new Emacs conventions.
613 Renamed from `mh-folder-tick-face' per new Emacs conventions.
617 Renamed from `mh-folder-to-face' per new Emacs conventions.
619 *** mh-letter-header-field
621 Renamed from `mh-letter-header-field-face' per new Emacs conventions.
625 Renamed from `mh-index-folder-face'.
629 Renamed from `mh-show-cc-face' per new Emacs conventions.
633 Renamed from `mh-show--face' per new Emacs conventions.
637 Renamed from `mh-show-from-face' per new Emacs conventions.
641 Renamed from `mh-show-header-face' per new Emacs conventions.
645 Face used to highlight a bad PGG signature.
649 Face used to highlight a good PGG signature.
651 *** mh-show-pgg-unknown
653 Face used to highlight a PGG signature whose status is unknown. This
654 face is also used for a signature when the signer is untrusted.
656 *** mh-show-signature
658 Face used to highlight the signature.
662 Renamed from `mh-show-subject-face' per new Emacs conventions.
666 Renamed from `mh-show-to-face' per new Emacs conventions.
670 Renamed from `mh-show-xface-face' per new Emacs conventions.
672 *** mh-speedbar-folder
674 Renamed from `mh-speedbar-folder-face' per new Emacs conventions.
676 *** mh-speedbar-folder-with-unseen-messages
678 Renamed from `mh-speedbar-folder-with-unseen-messages-face' per new
681 *** mh-speedbar-selected-folder
683 Renamed from `mh-speedbar-selected-folder-face' per new Emacs conventions.
685 *** mh-speedbar-selected-folder-with-unseen-messages
687 Renamed from `mh-speedbar-selected-folder-with-unseen-messages-face'
688 per new Emacs conventions.
692 ** Faces Deleted in MH-E 8.0
694 *** mh-folder-address-face
696 Renamed to `mh-folder-address' per new Emacs conventions.
698 *** mh-folder-body-face
700 Renamed to `mh-folder-body' per new Emacs conventions.
702 *** mh-folder-cur-msg-face
706 *** mh-folder-cur-msg-number-face
708 Renamed to `mh-folder-cur-msg-number' per new Emacs conventions.
710 *** mh-folder-date-face
712 Renamed to `mh-folder-date' per new Emacs conventions.
714 *** mh-folder-deleted-face
716 Renamed to `mh-folder-deleted' per new Emacs conventions.
718 *** mh-folder-followup-face
720 Renamed to `mh-folder-followup' per new Emacs conventions.
722 *** mh-folder-msg-number-face
724 Renamed to `mh-folder-msg-number' per new Emacs conventions.
726 *** mh-folder-refiled-face
728 Renamed to `mh-folder-refiled' per new Emacs conventions.
730 *** mh-folder-subject-face
732 Renamed to `mh-folder-subject' per new Emacs conventions.
734 *** mh-folder-tick-face
736 Renamed to `mh-folder-tick' per new Emacs conventions.
738 *** mh-folder-to-face
740 Renamed to `mh-folder-to' per new Emacs conventions.
742 *** mh-index-folder-face
744 Renamed to `mh-search-folder'.
746 *** mh-letter-header-field-face
748 Renamed to `mh-letter-header-field' per new Emacs conventions.
752 Renamed to `mh-show-cc' per new Emacs conventions.
754 *** mh-show-date-face
756 Renamed to `mh-show-date' per new Emacs conventions.
758 *** mh-show-from-face
760 Renamed to `mh-show-from' per new Emacs conventions.
762 *** mh-show-header-face
764 Renamed to `mh-show-header' per new Emacs conventions.
766 *** mh-show-subject-face
768 Renamed to `mh-show-subject' per new Emacs conventions.
772 Renamed to `mh-show-to' per new Emacs conventions.
774 *** mh-show-xface-face
776 Renamed to `mh-show-xface' per new Emacs conventions.
778 *** mh-speedbar-folder-face
780 Renamed to `mh-speedbar-folder' per new Emacs conventions.
782 *** mh-speedbar-folder-with-unseen-messages-face
784 Renamed to `mh-speedbar-folder-with-unseen-messages' per new Emacs conventions.
786 *** mh-speedbar-selected-folder-face
788 Renamed to `mh-speedbar-selected-folder' per new Emacs conventions.
790 *** mh-speedbar-selected-folder-with-unseen-messages-face
792 Renamed to `mh-speedbar-selected-folder-with-unseen-messages' per new
797 ** Bug Fixes in MH-E 8.0
799 *** Face Variable Names Now Follow Current Conventions
801 The -face suffix has been dropped from all face names.
805 Items in swish indexes that aren't mail messages are now handled more
808 *** Spamassassin Fixes
810 If you use spamassassin, there was an error when you tried to junk
811 mail if the option `mh-junk-background' was set. This has been fixed.
815 Indexing now compatible with Mairix version 0.12 and later.
817 *** mh-extract-rejected-mail Can't Do MIME (and Other Formats)
819 Now handles qmail and exim bounces (addresses SF #404965).
821 *** mh-rmail Hangs in XEmacs
823 We've determined that MH-E is incompatible with some versions of
824 XEmacs (21.5.9-21.5.16). More recent versions work fine. If you think
825 our list is too broad, please let us know which version of XEmacs you
826 are using (closes SF #644321).
828 *** Completions Offered by mh-refile-message Are Not Sorted
830 This behavior is no longer observed (closes SF #698734).
832 *** Add Message-ID to Outgoing Messages
834 If you replied to a message in your `+outbox', an `In-Reply-To:'
835 header field was created that broke threading at the recipient's end.
836 We now add a `Message-ID:' to outgoing messages which fixes this
839 *** Inconsistent Prompts
841 Emacs changed their defaults in prompts from "Prompt: [value]" to
842 "Prompt (default value): ". All MH-E prompts have been updated to
843 comply with the new standard and are therefore now consistent
844 throughout the application (closes SF #730470, SF #1275933).
846 *** Empty Shell Comments Confuse mh-mhn-directive-present-p
848 If you had a string that matched the regexp "^# $" in your draft, it
849 would cause an error. This has been fixed (closes SF #762458).
851 *** Quote Hashes When mhbuild Directives Used
853 A related bug, if you had empty shell comments but inserted your own
854 directives, you'd get another error from mhbuild. This has been fixed
855 by quoting the hash ("^# $") like this "##" before submitting to
856 mhbuild (closes SF #762464).
858 *** Inconsistent Usage in Scan Formatting Variables
870 used to contain strings. Although only the first character was read,
871 the entire string would be inserted which may have caused problems.
872 These variables have been converted to character constants so that
873 only a single character can be inserted into the scan line (closes SF
876 *** Bad Handling of Aliases That Conflict With Local User Names
878 If a user name existed both locally and in the aliases file, the local
879 user would be flashed, but the alias would be used when sending. This
880 has been fixed so that the user name that is flashed is the same as
881 the name that is sent (closes SF #772595).
883 *** Initialization Fails If ~/Mail Exists
885 MH-E no longer calls `install-mh' so this issue has gone away (closes
888 *** Not Re-prompted to Sign After Pass Phrase Typo
890 If there were errors when sending a signed message (like getting the
891 pass phrase wrong), the MML markup remained in the draft buffer. The
892 draft buffer is now restored if there is an error (closes SF #839303).
894 *** Font-lock Gets Confused in MH-Letter Buffer
896 If a user manually moved the cursor to the end of the header field
897 separator line (by mouse click or keyboard navigation) and hit Enter
898 to start typing their message, any line in the body with a colon would
899 be fontified with a gray background. This has been fixed (closes SF
902 *** RETURN Causes Infinite Loop in mh-letter
904 This behavior is no longer observed (closes SF #887346).
906 *** mh-refile-msg Fails to Suggest Folder for Empty Message
908 If you received a message with an empty body from someone who is
909 listed in your aliases file, `o' (`mh-refile-msg') failed to suggest
910 the correct folder. This has been fixed (closes SF #917096).
912 *** Missing Headers When Replying to All
914 User needed to edit `replgroupcomps' (closes SF #918194).
916 *** Error Visiting Folder With no Unseen Messages
918 If you visited a folder without unseen messages and the option "flist:
919 -noshowzero" is present in your `~/.mh_profile', you'd get an error.
920 This has been fixed (closes SF #933954).
922 *** Error Message When Trying to Send Using MH-E
924 This behavior is no longer observed (closes SF #1002103).
926 *** mh-find-path Doesn't Use mhparam
928 MH-E no longer peeks into the MH profile `~/.mh_profile' directly. It
929 uses `mhparam' instead (closes SF #1016027).
931 *** rmmproc Refile Complains No Such Message
933 MH-E would get confused about which folder to delete messages from if
934 you were refiling and deleting messages at the same time. This has
935 been fixed (closes SF #1023959).
937 *** auto-mode-alist Updated
939 MH-E originally updated auto-mode-alist to set the major mode of
940 drafts. Now that we explicitly set the mode, there is no reason to do
941 this, and this behavior caused problems for people who didn't use MH-E
942 who were editing files that looked like MH message files (closes SF
945 *** ! Doesn't Do Regions
947 Now it does (closes SF #1046330).
949 *** mh-show-unquote-From Fails (read-only buffer)
951 MH-E quotes the `From ' header field that is inserted by MTAs.
952 However, it was trying to do this in a read-only buffer. This has been
953 fixed (closes SF #1089870).
955 *** Whitespace in pick Expressions
957 The `C-u / s RET' command now works. In addition, you can now add
958 whitespace to any of the limiting (/) commands (closes SF #1122655).
960 *** mh-index-previous-folder Does Not Work Correctly
962 If your cursor was on an item below a folder heading and you used
963 `M-TAB' (`mh-index-previous-folder'), you would move to the previous
964 folder heading. This has been fixed (closes SF #1126188).
966 *** Default Identity Prevents Insertion of Auto Fields
968 Auto insertion of an identity now occurs even when the default
969 identity is used (closes SF #1204506).
971 *** mh-compose-forward and Default Message Number
973 `mh-compose-forward' will now default to the sent message in the sent
974 folder and the `cur' message in other folders. It also takes ranges of
975 messages and can include multiple messages at a time (closes SF
978 *** Better Handling of Empty cur Sequence
980 If you refiled a message into a folder and then used `F r'
981 (`mh-rescan-folder') in that folder, your cursor would be taken to the
982 first message. The cursor now stays where it was (closes SF #1207247).
984 *** mh-customize Uses Group mh, Not mh-e
986 The `mh' customization group alias has been deleted to avoid some
987 problems that were found (closes SF #1213716).
989 *** "Args out of range" Error in Displaying Message
991 This behavior is no longer observed (closes SF #1227504).
993 *** Front-and-back Truncation in mailto: Rendering
995 This behavior is no longer observed (closes SF #1227510).
997 *** Name of the Draft File in mh-comp.el
999 MH is documented to use the draft file. If you use a draft file for
1000 something else (like Sylpheed), then use draft folders (closes SF
1003 *** font-lock Error in mh-letter-mode
1005 An error in MH-E was introduced as a result of a change in CVS Emacs.
1006 This has been fixed (closes SF #1241017).
1008 *** Msg Display Broken After Displaying Msg with Inline Image
1010 Messages with inline images no longer trim certain message header
1011 fields (closes SF #1306141).
1013 *** mh-visit-folder Munges font-lock-keywords
1015 MH-E broke highlighting in Gnus buffers. This was actually a problem
1016 in CVS Emacs 22 and has been fixed there (closes SF #1393879).
1018 *** Illegal Filename Chars for W32 Filesystems
1020 Windows users who view `X-Image-URL:' images could not cache the
1021 images since the cached image file names had illegal characters. This
1022 has been fixed (closes SF #1396499).
1024 *** mh-send Doesn't Handle mml Insertions Via mail-user-agent
1026 Can now forward messages in Gnus if MH-E is your `mail-user-agent'
1027 (closes SF #1399307).
1029 *** Can't Narrow to Subject with Regexp Chars
1031 The command `/ s' could not limit subjects that had special pick
1032 characters (such as [, *, $, .). This has been fixed (closes SF
1035 *** `/ s' Can Miss the Original Mail
1037 The command `/ s' failed to include the message with the "Re:" in the
1038 Subject. This has been fixed (closes SF #1438369).
1040 *** mhparam -components Fails on mailutils
1042 This error prevented MH-E from loading when using GNU mailutils. GNU
1043 mailutils drops the `s' in this argument, so we did too since
1044 -component still works in nmh and MH (closes SF #1446985).
1046 *** `/ s' Still Has Problems With []'d Mail
1048 On XEmacs, subjects that had special characters would prevent `/ s'
1049 from narrowing to the given subject. These characters are now quoted
1050 correctly in XEmacs (closes SF #1447598).
1052 *** Variable mh-send-args Is a String, Not a List
1054 This was causing errors when sending under GNU mailutils. The internal
1055 variable `mh-send-args' is now a list which fixes the problem (closes
1060 Most of the tool bar icons have been replaced by GTK or GNOME 2 icons
1061 (closes SF #1452715).
1063 *** Strip Build Number From emacs-version in X-Mailer
1065 This has been done (closes SF #1466481).
1067 *** Rename Function and Variable Definers
1069 If you had ever shown help for an MH-E symbol that was both a function
1070 or variable, you might have found that the hyperlink to the file
1071 brought you to the wrong definition. This has been fixed by renaming
1072 the macros `mh-defgroup', `mh-defcustom', `mh-defface',
1073 `mh-defun-compat', and `mh-defmacro-compat' to `defgroup-mh',
1074 `defcustom-mh', `defface-mh', `defun-mh', `defmacro-mh' respectively
1075 (closes SF #1472029).
1077 *** mh-insert-letter Uses Wrong Default
1079 If you had used `C-c TAB' (`mh-insert-letter') to insert a letter into
1080 your draft, specified a different folder, and chose the default
1081 message number, you got the wrong message. This has been fixed (closes
1086 * Changes in MH-E 7.4.4
1088 Version 7.4.4 addresses programmatic issues from the FSF and prepares
1089 MH-E for inclusion into an impending GNU Emacs release (22.1). There
1090 are no user-visible changes (unless you are using XEmacs on DOS or
1091 don't have the cl package installed). Filenames are now unique in
1092 their first 8 characters (DOS 8.3 requirement). The runtime dependency
1093 on the cl package has been removed. Desktop saving and restoration
1094 code moved here from desktop.el.
1096 * Changes in MH-E 7.4.3
1098 Version 7.4.3 fixes the problem where `mh-identity-list' was not getting
1101 * Changes in MH-E 7.4.2
1103 Version 7.4.2 fixes the accidental dependence on nmh (closes SF
1106 * Changes in MH-E 7.4.1
1108 Version 7.4.1 fixes the Makefile so it no longer tries to compile
1111 * Changes in MH-E 7.4
1113 Version 7.4 contains many new useful features including arbitrary MH
1114 range handling, new draft features such as draft form editing, as well
1115 as sequence propagation and manipulation. We've also fixed bugs and
1116 added a handful of new variables.
1118 ** New Features in MH-E 7.4
1120 *** Add Arbitrary Ranges to MH-E UI
1122 MH-E now handles any legal MH range (such as last:5 or 4 8 10-12)
1123 wherever you're prompted for a message number or sequence (closes SF
1126 *** Remove Prompting in mh-send
1128 Brian Reid's original mhe didn't do prompting anywhere but used forms
1129 instead. While we won't go that far, we eliminated prompting where a
1130 form is already involved, such as in composing a message.
1132 The new customization variable `mh-compose-prompt-flag' can be set to
1133 t to get the original behavior (closes SF #745622).
1135 *** Use TAB to Switch Fields in Header
1137 When composing a message, TAB and SHIFT-TAB can be used to move
1138 quickly between header fields. The new customization variable,
1139 `mh-compose-skipped-header-fields', contains a list of header fields
1140 that are skipped and truncated if they are too long (closes SF
1143 *** Alias Completion in Composition Buffer
1145 Aliases can be completed in the draft with "M-TAB
1146 (mh-letter-complete)". Or, if the customization variable
1147 `mh-compose-space-does-completion-flag' is set to t, then a "SPC
1148 (mh-letter-complete-or-space)" with do the same thing. If
1149 `mh-alias-flash-on-comma' is non-nil, ", (mh-letter-confirm-address)"
1150 will show the alias expansion in the minibuffer (closes SF #745634).
1152 *** Auto Fields Should be Inserted During Send
1154 Fields that were inserted by the multiple personality code when the
1155 draft was sent now insert the header fields when the draft is composed
1156 to give you a chance to edit them (closes SF #747890).
1158 *** mh-index-tick-messages
1160 The command "F ' (mh-index-ticked-messages)" creates a buffer with all
1161 messages ticked with "' (mh-toggle-tick)" in the folders listed in the
1162 new customization variable `mh-index-ticked-messages-folders'. Chances
1163 are that if you set `mh-index-new-messages-folders', you'll want to
1164 set `mh-index-ticked-messages-folders' accordingly.
1166 In addition, a general function, "F q (mh-index-sequenced-messages)"
1167 has been provided that displays messages in the `mh-unseen-seq' in the
1168 folders listed `mh-index-new-messages-folders', unless a prefix
1169 argument is given, in which case you can provide both a list of
1170 folders and a sequence (closes SF #718833).
1172 *** Narrow to Region
1174 If there is a region, "/ r (mh-narrow-to-range)" will only consider
1175 those messages in the region. In addition, there is now a stack of
1176 folder limits which can be popped with "/ w (mh-widen)". With a prefix
1177 arg, all the restrictions are popped off of the stack (closes SF
1180 *** Narrow to Ticked Sequence
1182 The buffer can now be narrowed to ticked messages with "S '
1183 (mh-narrow-to-tick)" (closes SF #732825).
1185 *** Display Multiple Buttons for multipart/alternative
1187 A new customizable variable,
1188 `mh-display-buttons-for-alternatives-flag', was added to display
1189 buttons for the alternatives. The default value is nil to retain the
1190 current behavior (closes SF #741288).
1192 *** Identity Menu Changes
1194 A menu item has been added that inserts custom fields if the To or Cc
1195 header fields match `mh-auto-fields-list'.
1197 ** New Variables in MH-E 7.4
1199 *** mh-alias-local-users-prefix
1201 This string is prepended to the real names of users from the passwd
1202 file. If nil, use the username string unmodified instead of the real
1203 name from the gecos field of the passwd file.
1205 *** mh-alias-passwd-gecos-comma-separator-flag
1207 Non-nil means the gecos field in the passwd file uses comma as a
1208 separator. Used to construct aliases for users in the passwd file."
1210 *** mh-interpret-number-as-range-flag
1212 Non-nil means interpret a number as a range. If the variable is
1213 non-nil, and you use an integer, N, when asked for a range to scan,
1214 then MH-E uses the range "last:N".
1216 *** mh-kill-folder-suppress-prompt-hook
1218 This new hook is invoked at the beginning of the `F k
1219 (mh-kill-folder)' command. It is a list of functions to be called,
1220 with no arguments, which should return a value of non-nil if you
1221 should not be asked if you're sure that you want to remove the folder.
1222 This is useful for folders that are easily regenerated.
1224 The default value of `mh-index-p' suppresses the prompt on folders
1225 generated by an index search.
1227 WARNING: Use this hook with care. If there is a bug in your hook which
1228 returns t on +inbox and you hit `F k' by accident in the +inbox
1229 buffer, you will not be happy.
1231 *** mh-refile-preserves-sequences-flag
1233 Non-nil means that sequences are preserved when messages are refiled.
1234 If this variable is non-nil and a message belonging to a sequence
1235 other than cur or Previous-Sequence (see mh-profile 5) is refiled then
1236 it is put in the same sequence in the destination folder. Additional
1237 sequences that should not to be preserved can be specified by setting
1238 `mh-unpropagated-sequences' appropriately.
1240 *** mh-visible-header-fields
1242 Customize this instead of `mh-visible-headers', which is now a defvar.
1243 This was done to mimic the relationship between
1244 `mh-invisible-header-fields' and `mh-invisible-fields'.
1246 ** Variables Deleted in MH-E 7.4
1248 *** mh-visible-headers
1250 See the paragraph for `mh-visible-header-fields' above.
1252 ** Bug Fixes in MH-E 7.4
1254 *** Aliases Constantly Reloaded
1256 The system aliases are not loaded as often as they were, so the
1257 completion speed has been dramatically improved if your passwd file is
1258 large (closes SF #693859).
1260 *** Folders in MH-Index View Not Saved
1262 When you perform a search to produce an MH-Index buffer, the folders
1263 that contain the messages are shown. If the MH-Index buffer was
1264 deleted, or Emacs was restarted and the corresponding folder
1265 rescanned, the folder information would be lost. This has been fixed
1266 by saving the information in a file called ".mhe_index" (closes SF
1269 *** Ticking Messages in +mhe-index/new
1271 If a new message in a buffer created by "F n" was ticked (with "'"),
1272 the message would not be added to the tick sequence in the source
1273 folder. This has been fixed so that any sequence changes in any index
1274 folder (from within MH-E of course) are now reflected back to the
1275 corresponding source folder (closes SF #709664).
1277 *** Custom Vars Set by a Function
1279 The default setting of customization variable `mh-summary-height' is
1280 now `nil' which means MH-E will change the size dynamically according
1281 to the size of the frame (closes SF #723267).
1283 *** Folder Completion Slow
1285 The first folder completion was very slow. This has been fixed (closes
1288 *** Tick Sequence Persistent When Refiled
1290 Sequences are now preserved when messages are refiled (closes SF
1293 *** Auto-inserted Header Fields Inconsistent
1295 For consistency, all automatically inserted header fields (such as
1296 X-Mailer and X-Face) are added when the draft is first presented to
1297 you. This also gives you a chance to edit or delete them if necessary
1298 (closes SF #745624). Note that we would be distressed if you deleted
1301 *** Toolbar Spec Error
1303 The following message appeared when displaying a message in XEmacs:
1305 Signaling: (error "Toolbar spec must be list or nil" )
1307 This has been fixed (closes SF #745655).
1309 *** mh-index-search Doesn't Find Short Acronyms
1311 Swish typically ignores words with fewer than four letters, but will
1312 still look for acronyms. Unfortunately, MH-E was downcasing the input
1313 words which defeated this feature. This has been fixed (closes SF
1318 * Changes in MH-E 7.3
1320 This release includes the new features of an index view of unseen
1321 messages in all folders, spam software support, relative folder
1322 specification @ support, marking messages, recipient handling by
1323 mh-default-folder-list, Face and X-Image-URL header field support, and
1324 Fcc completion. Function arguments have been unified. Bugs have been
1327 ** New Features in MH-E 7.3
1329 *** Unified Function Arguments
1331 Any function with MSG-OR-SEQ in its docstring uses the displayed
1332 message by default for this argument. However, if a prefix argument is
1333 provided, then the user is prompted for a message sequence. If the
1334 variable `transient-mark-mode' is non-nil and the mark is active, then
1335 the function operates on the messages in the selected region. In a
1336 program, MSG-OR-SEQ can be a message number, a list of message
1337 numbers, a region in a cons cell, or a sequence.
1339 *** MH-Index View of Unseen Messages
1341 Use "F n (mh-index-new-messages)" or Folder -> View New Messages menu
1342 item to display messages in the `mh-unseen-seq' sequence in folders
1343 specified by `mh-index-new-messages-folders'. With a prefix argument,
1344 enter a space-separated list of folders, or nothing to search all
1347 Like other MH-Index folders, use "v (mh-index-visit-folder)" if you
1348 wish to visit the original folder with the unseen message. This is
1349 usually not necessary since the original message is annotated if you
1350 reply, deleted if you delete the message, or refiled if you refile the
1351 message (closes SF #701756).
1353 *** Spam Software Support
1355 MH-E now supports several spam filters including Bogofilter,
1356 SpamProbe, and SpamAssassin. Spam that is mistakenly considered to be
1357 good mail can be reclassified as spam with "J b (mh-junk-blacklist)".
1358 Conversely, good mail that is accidently considered to be spam can be
1359 reclassified with "J w (mh-junk-whitelist)" (closes SF #669518).
1361 If a message is blacklisted, and `mh-junk-mail-folder' is a string,
1362 then the message is refiled to that folder. If this variable is nil,
1363 the message is deleted. If a message is whitelisted, then the message
1364 is refiled to `mh-inbox'.
1366 To change the spam program being used, customize `mh-junk-program'.
1367 This should only be necessary if you have multiple filters on your
1368 system and MH-E picked the wrong one. These customization variables
1369 are found in the new customization group `mh-junk'.
1371 The documentation for the following functions describes what setup is
1372 needed for the different spam fighting programs:
1374 - `mh-bogofilter-blacklist'
1375 - `mh-spamprobe-blacklist'
1376 - `mh-spamassassin-blacklist'
1378 *** Relative Folder Specification @ Supported
1380 You can now use the relative folder marker @ in folder names (closes
1383 *** Marking Messages
1385 Messages can now be highlighted with "' (mh-toggle-tick)", Sequence ->
1386 Toggle Tick Mark menu item or the "Toggle tick mark" button. These
1387 messages are added to the "tick" sequence, although this sequence can
1388 be changed in `mh-tick-seq'. The highlighting effect can be modified
1389 by customizing `mh-folder-tick-face' (closes SF #623367).
1391 There is also a new keybinding "/ ' (mh-narrow-to-tick)" and menu item
1392 Sequence -> Narrow to Tick Sequence to narrow the view to the
1393 highlighted messages.
1395 *** mh-default-folder-list Now Takes Recipients
1397 If you wish to file a message based upon the recipient of a message
1398 (such as a mailing list), you can now indicate that when filling out
1399 the address in the `mh-default-folder-list' customization variable.
1401 *** Face Header Field Supported
1403 In addition to the X-Face header field, the Face header field, which
1404 can display color images, is now supported. As a bonus, the external
1405 xface-e21 library is no longer required.
1407 *** X-Image-URL Support
1409 Images specified in X-Image-URL header fields are now supported.
1410 See the customization variable `mh-fetch-x-image-url' to enable this
1415 Folders in Fcc fields in message drafts can now be completed with
1418 ** New Variables in MH-E 7.3
1420 Variables that have been added to MH-E that have not been discussed
1421 elsewhere are listed here.
1423 *** mh-auto-fields-list
1425 Alist of addresses for which header lines are automatically inserted.
1426 When a regular expression matches in the To or cc fields of a message,
1427 the corresponding header field is automatically inserted in the
1428 message header. It also allows the automatic setting of an identity
1429 (using `mh-insert-identity') to set an alternate identity when sending
1430 messages to a certain person or mailing list.
1432 Since this is a more general use of `mh-insert-mail-followup-to-flag'
1433 and `mh-insert-mail-followup-to-list', these variables have been removed.
1435 *** mh-show-xface-face
1437 Face for displaying the X-Face image.
1439 *** mh-xemacs-toolbar-position
1441 This customization variable allows the user to place the toolbar on
1442 the four edges of the frame.
1444 *** mh-xemacs-use-toolbar-flag
1446 This customization variable is used to enable or disable the toolbar
1449 ** Variables Deleted in MH-E 7.3
1451 Variables that have been removed from MH-E that have not been
1452 discussed elsewhere are listed here.
1454 *** mh-decode-content-transfer-encoded-message-flag
1456 No longer needed since the external program mimencode is no longer
1459 *** mh-index-show-hook
1461 This hook was never used, so it was removed.
1463 *** mh-tool-bar-reply-3-buttons-flag
1465 Obsolete. This functionality is present `mh-tool-bar-folder-buttons'.
1467 ** Bug Fixes in MH-E 7.3
1469 *** Can't Refile Message
1471 Messages with invalid addresses were causing errors in ali which
1472 prevented the refiling of messages. The ali error is now shown in the
1473 "*MH-E Log*" buffer and refiling suggests the last folder used (closes
1476 *** Empty Body Triggers Duped Header
1478 If the body was empty the header would be treated like the body and
1479 was therefore displayed twice. This has been fixed (closes SF
1482 *** mml or mhl Directives Not Always Processed
1484 The mml and mhl directives used to create body parts were not
1485 processed if one re-edited a draft, or if they added the directives
1486 manually. The directives are now always processed upon sending the
1487 letter. You may still, of course, use "C-c C-m m (mh-mml-to-mime)" or
1488 "C-c C-e (mh-edit-mhn)" to manually create the MIME body parts from
1489 the directives and then send the draft.
1491 *** mh-alias-grab-from-field Fails
1493 MH-E was adding aliases with angle brackets around the address when
1494 there wasn't a phrase (usually, the user's name), to go with it. This
1495 caused ali to fail which caused problems in MH-E. This is probably a
1496 bug in ali, but MH-E no longer inserts angle brackets around the
1497 address unless there is a phrase, which avoids the problem (closes SF
1502 MH-E is now fully supported under XEmacs and compiles without any
1505 In particular, the following now work under XEmacs:
1507 - X-Face, Face, and X-Image-URL header fields
1508 - MH-E logo in mode line
1509 - Emphasis (bold, italics, etc.)
1513 *** Indexed Folders Should Respect mh-show-threads-flag
1515 Indexed folders are now threaded if `mh-show-threads-flag' is non-nil
1516 (closes SF #709667).
1518 *** Threading Index View Loses Folder Info
1520 This has been fixed (closes SF #709672).
1522 *** No Undo Information When Re-editing Drafts
1524 Undo is turned on in the draft buffer when using "e (mh-edit-again)"
1525 (closes SF #712777).
1527 *** Forwarded base64-encoded Messages Are Incorrectly Displayed
1529 This has been fixed (closes SF #681518).
1531 *** Append to *MH-E Log* Buffer
1533 The last 100 lines of log messages are kept in the *MH-E Log* buffer.
1534 Previously, the buffer was erased every time it was written (closes SF
1535 #685476). In addition, many of the MH-E commands now send their output
1536 into this buffer instead of a plethora of other special-purpose
1539 *** mh-inc-folder Complains if No Mail and No Current Message
1541 The function `mh-inc-folder' no longer calls `mh-show' if point is not
1542 on a valid scan line. This keeps `mh-inc-folder' from complaining
1543 (closes SF #678115).
1545 *** Folder Normalization Strips Leading Slash
1547 Leading "/" characters in folder names entered by the user were being
1548 lost. This has been fixed (closes SF #676890).
1550 *** Print Header Doesn't Show Message
1552 When printing a sequence, the header simply indicated that a sequence,
1553 but not which one, was being printed and did not show the message
1554 number. This has been fixed. If more than one message is printed, a
1555 page of the scan lines is printed and its header indicates the
1556 sequence or message range. The pages with the actual messages all set
1557 the header to the folder and message displayed on that page.
1559 *** Aliases Constantly Reloaded
1561 Empty lists are now handled properly (closes SF #693859).
1563 *** Remove RCS Keywords
1565 Removed RCS keywords per Emacs conventions (closes SF #680731).
1567 *** Replace Mimencode
1569 MH-E was enhanced to decode message based on charset and
1570 Content-Transfer-Encoding. This eliminates the need for the external
1571 program mimencode (closes SF #674857).
1575 * Changes in MH-E 7.2
1577 This release includes the new features of filing hints, hierarchical
1578 file name completion, indexed search and pick integration, unification
1579 between `mh-visit-folder' and the speedbar, a displayed message
1580 indicator, buffer name organization, support for mairix indexed
1581 search, and last but not least, the MH-E logo has been added to the
1582 mode line. Code that handles sequences and message regions runs
1583 faster. Bugs have been fixed.
1585 ** New Features in MH-E 7.2
1589 When you file a message, MH-E now looks for an alias corresponding to
1590 the address of the sender and offers that as a default folder (closes
1591 SF #657096). The new variable `mh-default-folder-prefix' can be used
1592 to put these folders in a sub-folder. The new variable
1593 `mh-default-folder-must-exist-flag' means to suppress the suggested
1594 folder (thereby providing the previous folder used) if the folder
1595 doesn't already exist. The new variable `mh-default-folder-list' can
1596 be used to map additional addresses and folders.
1598 *** Hierarchical File Name Completion
1600 When you completed filenames in the past, you were presented with a
1601 list of all your folders at all depths in the tree. Now you are
1602 presented with only one level at a time (closes SF #664821).
1603 As a result, the variables `mh-auto-folder-collect-flag' and
1604 `mh-folder-list-change-hook' are obsolete.
1606 *** Indexed Search and Pick Integration
1608 The indexed and pick searches have been integrated (closes SF
1609 #664816). Both "F s (mh-search-folder)" and "F i (mh-index-search)"
1610 use the pick template for forming queries. To submit the query, use
1611 "C-c C-c (mh-do-search)" which will use the query method you selected.
1612 If you change your mind while forming the query, you can use "C-c C-i
1613 (mh-index-do-search)" or "C-c C-p (mh-pick-do-search)" to submit the
1614 query using the respective method.
1616 Second, the results from a pick search are now saved in a sub-folder
1617 of +mhe-index like an indexed search.
1619 Third, `pick' is now a valid choice for `mh-index-program'.
1621 *** mh-visit-folder Metamorphosis Continues
1623 When visiting a folder from the speedbar, only the unseen messages are
1624 shown if there are unseen messages. If there aren't any unseen
1625 messages, all of the messages are shown if there are fewer than
1626 `mh-large-folder' messages; otherwise, the user is prompted for the
1627 range of messages to display. The "F v (mh-visit-folder)" command has
1628 been modified to mimic this behavior. Use a prefix arg to force the
1629 message range prompt.
1631 *** Displayed Message Indicator
1633 In graphical Emacs, the message that is shown is marked by a triangle
1634 in the fringe. In textual Emacs, there is a ">" in the first column
1635 (closes SF #664824).
1637 *** Buffer Name Organization
1639 All ephemeral buffer names start with " *mh" while all interesting
1640 buffers start with "*MH-E ". The "*Folders*", "*Sequences*", and
1641 "*Recipients*" buffers were therefore renamed to "*MH-E Folders*",
1642 "*MH-E Sequences*" and "*MH-E Recipients*" respectively (programmers
1643 should see mh-utils.el for the names of the new constants). Also, the
1644 output of MH commands is saved in the "*MH-E Log*" buffer.
1646 *** mh-index-program
1648 Add choices for `mairix' and `pick'.
1650 *** Logo Displayed on Mode Line
1652 ** New Variables in MH-E 7.2
1654 The new variables have been discussed elsewhere.
1656 ** Bug Fixes in MH-E 7.2
1658 *** mh-decode-content-transfer-encoded-message
1660 Messages that had been encoded with base64 were not decoded. This has
1661 been fixed with this new function (closes SF #674190). As a result,
1662 the variable `mh-decode-quoted-printable-flag' has been renamed to
1663 `mh-decode-content-transfer-encoded-message-flag'.
1667 Now restores previous window configuration (closes SF #664828).
1671 MH-E was not using the charset defined in the content-type
1672 header. This meant that mail in a different charset would not
1673 be properly displayed. This has been fixed (closes SF #655123).
1677 In XEmacs and Emacs20, this function would always prompt using "To: "
1678 instead of using the command argument. This has been fixed (closes SF
1683 Unseen messages are now shown in addition to new ones (closes SF
1686 *** mh-scan-msg-overflow-regexp
1688 Change the variable so that a space is always maintained in the
1689 beginning of the scan line.
1691 *** mh-swish-execute-search
1693 The example configuration file in the docstring didn't show the
1694 backslash in the FileRules filename. If the example had been used
1695 literally by the user, no files would be indexed! This has been fixed
1696 (closes SF #665888).
1698 *** mh-thread-refile
1700 The "T o (mh-thread-refile)" command did not provide refiling hints
1701 like `mh-refile-msg'. This has been fixed (closes SF #664829).
1703 *** mh-toggle-threads
1705 If the threaded view was modified and then toggled, the standard view
1706 may not have been accurate (as it contained a potentially old first
1707 message to last message range). This has been fixed (closes SF
1710 *** mh-tool-bar-show-set, mh-tool-bar-letter-set, mh-tool-bar-folder-set
1712 Clicking the customize and help buttons now deletes the other windows
1717 The "M-x mh-version" command displayed "Aliasfile: aliases". This has
1718 been fixed (closes SF #664467). See Buffer Name Organization above.
1722 * Changes in MH-E 7.1
1724 This release includes the new features of multiple identities and
1725 alias completion. In addition, indexed searching has been revamped.
1726 Various other features have been added and a few bugs were fixed.
1728 ** New Features in MH-E 7.1
1730 *** Multiple Identities
1732 MH-E now supports multiple identities (closes SF #628782). That means
1733 that you can have different From and Organization header fields (or
1734 any other header field of your choice) as well as different signatures
1735 depending on your context. Usually, the contexts are home and work.
1737 Add your identities to the variable `mh-identity-list' and set the
1738 default identity with the variable `mh-identity-default'. Your
1739 identity can be switched on the fly by using the Identity menu or by
1740 calling "M-x mh-insert-identity RET".
1742 This functionality can be customized within the mh-identity group.
1744 *** Alias Completion and Harvesting
1746 The contributed file mh-alias.el has been rewritten and incorporated
1749 By default, aliases are culled from the system files
1750 "/etc/nmh/MailAliases," "/usr/lib/mh/MailAliases," and "/etc/passwd"
1751 (see `mh-alias-system-aliases') and from your "AliasFile" MH profile
1752 component. These aliases are then used for completion in the
1753 minibuffer when entering addresses. Within the header of the message
1754 draft, "M-TAB (mh-letter-complete)" is used to do alias completion.
1756 The package also provides for alias creation based upon the From
1757 header field of the current message. Use the lasso button
1758 (mh-alias-grab-from-field).
1760 This functionality can be customized within the mh-alias group.
1762 *** Index Folder Updates
1764 The results of an index search "F i (mh-index-search)" are now stored
1765 in a bona fide folder so that you can refile messages and reply to
1766 messages directly from the result folder. This folder is a sub-folder
1767 of +mhe-index and the name is based upon the search string (closes SF
1770 If a prefix argument is given then the search in the current index
1773 The index folder lists the names of the source folders as before.
1774 However, instead of using RET on the name of the folder to visit the
1775 folder, use "v (mh-show-index-visit-folder)" anywhere within the
1776 results to visit that folder narrowed to the results of the search.
1777 Additional functions have been added to navigate including "TAB
1778 (mh-index-next-folder)", and "SHIFT-TAB (mh-index-previous-folder)."
1780 *** mh-visit-folder Interface Updated
1782 A change was made to the prompting of the message range. In general,
1783 you can use the same format for messages and sequences as you can in
1784 MH with a single exception: a single number means to scan that many
1785 messages, rather than scan that message number. This turns out to be
1786 much more useful than visiting a single message and is consistent with
1787 Gnus and the MH-E speedbar (closes SF #655891).
1789 If mh-visit-folder is called non-interactively and RANGE is nil then
1790 all messages are displayed. This behavior is now documented and
1791 provides backwards compatibility.
1793 *** Threading Improvements
1795 After incorporating new mail into a threaded folder, unseen messages
1796 can be spread about. Two new functions have been added to make it
1797 easier to find them: these are "M-n (mh-next-unread-msg)" and "M-p
1798 (mh-previous-unread-msg)" (closes SF #630328)
1800 Two new functions were added to delete and refile threads. They are "T
1801 d (mh-thread-delete)" and "T o (mh-thread-refile)" respectively
1802 (closes SF #630493).
1804 In addition, the key "k" used to be bound to the function
1805 `mh-delete-subject': it is now bound to
1806 `mh-show-delete-subject-or-thread'.
1808 New functions to navigate threads include "T u (mh-thread-ancestor)",
1809 which can jump to the root message of the current thread given an
1810 optional argument, "T n (mh-thread-next-sibling)", and "T p
1811 (mh-thread-previous-sibling)"
1813 *** Refiling of Messages in Region
1815 If mark is active and `transient-mark-mode' is enabled then all the
1816 messages in the region are refiled.
1820 If a signature cannot be identified, but there is a vCard attachment,
1821 then that vCard will be presented as a signature (closes SF #649216).
1823 *** New Info Added to mh-version
1825 Information about Gnus versions available at both compile time and run
1826 time has been added.
1828 ** New Variables in MH-E 7.1
1830 The defcustom groups were reorganized. Rather than iterate the
1831 specific changes here, you are invited to browse the groups with "M-x
1834 *** mh-alias-completion-ignore-case-flag
1836 Non-nil means don't consider case significant in MH alias completion.
1837 This is the default in plain MH, so it is the default here as well. It
1838 can be useful to set this to t if, for example, you use lowercase
1839 aliases for people and uppercase for mailing lists.
1841 *** mh-alias-expand-aliases-flag
1843 Non-nil means to expand aliases entered in the minibuffer. In other
1844 words, aliases entered in the minibuffer will be expanded to the full
1845 address in the message draft. By default, this expansion is not
1848 *** mh-alias-flash-on-comma
1850 Specify whether to flash the translation of the alias or warn if there
1851 isn't a translation of the alias.
1853 *** mh-alias-insert-file
1855 Filename to use to store new MH-E aliases. This variable can also be a
1856 list of filenames, in which case MH-E will prompt for one of them. If
1857 nil, the default, then MH-E will use the first file found in the
1858 "AliasFile" component of the MH profile.
1860 *** mh-alias-insertion-location
1862 Specifies where new aliases are entered in alias files. Options are
1863 sorted alphabetically (the default), at the top of the file or at the
1866 *** mh-alias-local-users
1868 If t, local users are completed in MH-E To: and Cc: prompts.
1870 If you set this variable to a string, it will be executed to generate
1871 a password file. A value of "ypcat passwd" is helpful if NIS is in
1874 *** mh-alias-system-aliases
1876 A list of system files from which to cull aliases. If these files are
1877 modified, they are automatically reread. This list need include only
1878 system aliases and the passwd file, since personal alias files listed
1879 in your "AliasFile" MH profile component are automatically included.
1881 *** mh-identity-default
1883 Default identity to use when `mh-letter-mode' is called.
1885 *** mh-identity-list
1887 List holding MH-E identity.
1889 *** mh-invisible-header-fields
1891 Simple user interface to change `mh-invisible-headers'.
1893 *** mh-letter-complete-function
1895 Function to call when completing outside of fields specific to
1896 aliases. By default, it is bound to 'ispell-complete-word.
1898 *** mh-show-threads-flag
1900 Non-nil means new folders start in threaded mode. Threading large
1901 number of messages can be time consuming. So if the flag is non-nil
1902 then threading will be done only if the number of messages being
1903 threaded is less than `mh-large-folder' (closes SF #646794).
1905 *** mh-tool-bar-folder-buttons
1907 Buttons to include in MH-E folder/show toolbar.
1909 *** mh-tool-bar-letter-buttons
1911 Buttons to include in MH-E letter toolbar.
1913 ** Bug Fixes in MH-E 7.1
1917 Call new function `mh-add-cur-notation' to undo the work of
1918 `mh-remove-cur-notation' if there was no new mail (closes SF #647681).
1922 No longer updates the default `mh-cmd-note' value. This resulted in
1923 the misplacement of the current mark when the message number width
1924 changed (closes SF #643701).
1928 * Changes in MH-E 7.0
1930 This is a major release which includes a lot of new features including
1931 improved MIME handling, speedbar folder browsing, and indexed
1932 searching. In this version, MH-E runs under XEmacs, passes checkdoc,
1933 and compiles clean under all supported platforms.
1935 The "passes checkdoc" feature above required changing the name of
1936 several user-visible variables. It is likely that this affects you.
1937 Please be sure to see the table at the end of these notes and rename
1938 your variables accordingly.
1940 MH-E has been written mh-e, Mh-e, MH-e and MH-E. We have decided that
1941 the proper term should be MH-E. Please try to use MH-E in your
1944 ** New Features in MH-E 7.0
1948 There is now support for the speedbar. Try "M-x speedbar" (closes SF
1951 Press the middle mouse button on the `+' icons to open a folder,
1952 middle mouse button on a folder name to open the folder. Folders with
1953 unseen messages are shown in bold, so this is a handy way to browse
1954 new messages that you have filed with procmail or slocal.
1956 See the new customization variable `mh-large-folder,' which controls
1957 when the speedbar asks for how many messages to scan when opening a
1958 large folder and `mh-speed-run-flists-flag' whose default value of t
1959 means to use the flists command to populate the count of unseen and
1960 total messages in each folder.
1964 Interoperability with swish++, swish, glimpse, and namazu has been
1965 added to enable lightening-fast searches of your mail. If none of
1966 these are present, grep is used. Try "F i (mh-index-search)".
1968 For more information, read the documentation for the functions
1969 `mh-swish++-execute-search,' `mh-swish-execute-search,'
1970 `mh-namazu-execute-search,' or `mh-glimpse-execute-search' depending
1971 on your preferred indexing program to see what kind of setup is needed
1972 to generate the index.
1976 Use "T t (mh-toggle-threads)" to view the threads in the folder. Use
1977 it again to return to a non-threaded view.
1981 Use "? (mh-help)" and "X ? (mh-prefix-help)," where X is a prefix
1982 character, for a brief synopsis in the minibuffer of frequently used
1983 commands. In the MH-Letter or MH-Pick buffers, use "C-c ? (mh-help)"
1984 (closes SF #493740).
1986 *** Folder Keymap Shared by Show Buffer
1988 You can now use the MH-Folder mode commands from the MH-Show buffer.
1989 Because of this, the MH-Show buffer is now read-only (closes SF
1990 #493749 and SF #527946) and you now have to use "M (mh-modify)" to
1995 You no longer have to modify your scan format if your folders have
1996 more than 9999 messages in them. If you've only modified your scan
1997 format file to allow for the wider message numbers, consider using the
1998 default behavior of MH-E and simplify your MH-E configuration
1999 considerably (closes SF #635791).
2001 To do this, you may have to remove your modifications of
2002 `mh-scan.*-regexp' and `mh-cmd-note' and your customization of
2003 `mh-scan-format-file'.
2005 You may still want the updated format files for running MH commands
2006 outside of MH-E; the default of `mh-scan-format-file' will cause them
2009 If you prefer fixed-width message numbers, set the new customization
2010 variable to nil , set this variable to
2011 nil and call `mh-set-cmd-note' with the width specified by the scan format in
2012 `mh-scan-format-file'. For example, the default width is 4, so you would use
2013 "(mh-set-cmd-note 4)" if `mh-scan-format-file' were nil.
2017 MH-E now displays the content of the X-Face header field in the From
2018 field. When sending a message, an X-Face field is appended to the
2019 header if it doesn't already exist and "~/.face" is present. See the
2020 new customization variables `mh-show-use-xface-flag' and `mh-x-face-file'
2021 (closes SF #480770).
2023 MH-E depends on the external x-face package found in
2024 ftp://ftp.jpl.org/pub/elisp/ to do this. The `uncompface' binary is
2025 also required to be in the execute PATH. It can be obtained from:
2026 http://freshmeat.net/redir/compface/1439/url_tgz/compface-1.4.tar.gz.
2028 It has also been observed that if you don't see the faces, you might
2029 have to do this (for unknown reasons):
2031 mv /usr/local/include/compface.h /usr/include/
2033 *** Graphical Smileys
2035 Smiley's are now converted to cute little images. See the new
2036 customization variable `mh-graphical-smileys-flag.'
2040 ASCII formatting is now converted to the appropriate font. For
2041 example, _underline_ is underlined, *bold* appears in bold, /italic/
2042 appears in italic, etc. See `gnus-emphasis-alist' for the whole list.
2043 See the new customization variables `mh-decode-mime' and
2044 `mh-graphical-emphasis-flag.'
2046 *** Attachment Handling
2048 Inline attachments are now displayed. Regular attachments appear as
2049 buttons in show buffer. Use "K TAB (mh-next-button)" or "K SHIFT-TAB
2050 (mh-prev-button)" to cycle through these buttons. Use "K v
2051 (mh-folder-toggle-mime-part)" to view, "K o
2052 (mh-folder-save-mime-part)" to save one part or "K-a
2053 (mh-save-mime-parts)" to save all parts, or "K i
2054 (mh-folder-inline-mime-part)" to view the attachment inline.
2056 See the new customization variable `mh-decode-mime' for additional
2057 information. Other customization variables that affect this new feature
2058 include `mh-store-mime-parts-default-directory' and
2059 `mh-display-buttons-for-inline-parts-flag'.
2061 HTML documents can be viewed inline if Gnus v5.10 and w3 or w3m lisp
2062 packages are present. Set the customization variable
2063 `mm-text-html-renderer' accordingly (closes SF #453352).
2065 *** Quoted-printable Handling
2067 Quoted-printable body parts are now decoded.
2069 *** More Choices for `mh-yank-from-start-of-msg'
2071 Historically, if this variable was t, the entire message, with full
2072 headers would be included and every line would begin with
2073 `mh-ins-buf-prefix.' This usage is deprecated in favor of the setting
2074 `supercite' below. The default has been changed to `attribution.' The
2075 following symbols are now understood:
2077 `body': yank the message minus the header.
2079 `supercite': include the entire message, with full headers. This also
2080 causes the invocation of `sc-cite-original' without the setting of
2081 `mail-citation-hook', now deprecated practice.
2083 `autosupercite': do as for `supercite' automatically when show buffer
2084 matches the message being replied-to.
2086 `attribution': yank the message minus the header and add a simple
2087 attribution line at the top.
2089 `autoattrib': do as for `attribution' automatically when show buffer
2090 matches the message being replied-to.
2092 There is a new customization variable called
2093 `mh-extract-from-attribution-verb' which is used for attribution which
2094 provides a method for setting a different language.
2096 *** Use Gnus mml Instead of mhn
2098 When inserting attachments into a message draft, Gnus mml directives
2099 are now used instead of mhn directives. One beneficial side-effect of
2100 this is that attachments can now appear inline as well as separate.
2102 The new customization variable `mh-compose-insertion' controls whether
2103 Gnus or mhn is used to insert MIME message directives in messages
2104 (default: 'gnus, if the mml library exists).
2106 *** Content-Type Now Obtained Automatically
2108 The value of the Content-Type no longer needs to be entered by the
2111 *** Attachments Automatically Included Upon Send
2113 You no longer have to run "C-c C-e (mh-edit-mhn)" before sending a
2114 message with attachments--this is done automatically when you send the
2115 message with "C-c C-c (mh-send-letter)". There is, however, a new key
2116 binding "C-c C-m m (mh-mml-to-mime)" which is analogous to "C-c C-e
2121 Messages that have been signed or encrypted with GPG are verified and
2122 decrypted automatically. To sign or encrypt a message, use "C-c RET
2123 C-s (mh-mml-secure-message-sign-pgpmime)" and "C-c C-m C-e
2124 (mh-mml-secure-message-encrypt-pgpmime)." You need Gnus version 5.10
2125 for this feature. These functions are provided by the pgg.el package.
2127 Users report "flashing" with the pgg.el package and prefer the gpg.el
2128 package instead. To use gpg.el instead of the pgg.el package you need:
2130 (setq mml2015-use 'gpg)
2132 To mimic automatic encryption in gpg.el, use:
2134 (setq mm-verify-option 'always)
2135 (setq mm-decrypt-option 'always)
2137 The venerable mailcrypt package is also an option. However, now that
2138 show buffers are read-only, mailcrypt version 3.5.6 and older fail
2139 when they attempt to decrypt the contents.
2141 *** Mail-Followup-To Header Field
2143 Support for this controversial field has been added because nmh
2144 supports it (closes SF #627035). If you want to add it to outgoing
2145 mail for selected mailing lists, add those mailing lists to the new
2146 customization variable `mh-insert-mail-followup-to-list.' If you think
2147 this field is evil, set the new customization variable
2148 `mh-insert-mail-followup-to-flag' to nil.
2152 If you update Gnus, you must recompile MH-E. Note that if you are
2153 running the stock version of MH-E that comes with Emacs or the MH-E
2154 package on a Debian GNU/Linux, this is done for you.
2156 ** New Variables in MH-E 7.0
2158 New customization variables not mentioned earlier include:
2160 *** mh-letter-insert-signature-hook
2162 Invoked at the beginning of the "C-c C-s (mh-insert-signature)"
2163 command. Can be used to determine which signature file to use based on
2164 message content. On return, if `mh-signature-file-name' is non-nil
2165 that file will be inserted at the current point in the buffer.
2167 *** mh-show-maximum-size
2169 Maximum size of message (in bytes) to display automatically. Provides
2170 an opportunity to skip over large messages which may be slow to load.
2171 Use a value of 0 to display all messages automatically regardless of
2172 size (closes SF #488696).
2174 *** mh-tool-bar-reply-3-buttons-flag
2176 Non-nil means use three buttons for reply commands in tool-bar. If you
2177 have room on your tool-bar because you are using a large font, you may
2178 set this variable to expand the single reply button into three buttons
2179 that won't lead to minibuffer prompt about who to reply to.
2181 ** Bug Fixes in MH-E 7.0
2183 *** mh-delete-msg, mh-refile-msg, mh-undo
2185 Mandrake Linux includes XEmacs initialization code that binds
2186 `transient-mark-mode' which causes problems in MH-E. These problems
2187 have been fixed (closes SF #541915).
2191 This would sometimes yield a read-only buffer. This has been fixed
2192 (closes SF #624283 and SF #625538).
2196 When using nmh, always specify -mime so as to preserve the original
2201 If you had narrowed to a sequence and then incorporated new mail,
2202 those new messages would not be present in your +inbox when you
2203 widened. This has been fixed (closes SF #489430, SF #489437, SF
2206 *** mh-insert-letter
2208 No longer uses mhl to include a message as this mangled the header and
2209 gave supercite fits (closes SF #629153).
2213 "M-q (fill-paragraph)" now fills quoted paragraphs (for example,
2214 starting with "> ") correctly (closes SF #489927).
2216 *** mh-next-undeleted-msg, mh-previous-undeleted-msg
2218 If there are no more undeleted messages the point remains at its
2219 original position and a message is produced (closes SF #494304).
2223 Now calls `mh-pick-mode-hook' as documented.
2225 *** mh-put-msg-in-seq
2227 Now puts all messages in region in sequence (closes SF #630324).
2229 *** mh-refile-msg, mh-write-msg-to-file
2231 These functions stomped on the variables that held the name of the
2232 last file and folder respectively for the other function. This has
2233 been fixed so that the last folder or file name is preserved (closes
2236 *** mh-region-to-sequence
2238 If the region in MH-Folder was set with "C-x h (mark-whole-buffer)",
2239 you couldn't perform operations on all of the messages as you would
2240 expect. This has been fixed (closes SF #621632).
2244 Performing an undo the first thing after replying would blank out the
2245 entire draft. Now just the insertion of the yanked message is undone
2246 leaving the header and signature intact for additional editing (closes
2251 Now calls `mh-show-mode-hook' as documented (closes SF #627222).
2253 *** mh-subject-thread-to-sequence
2255 Make 'subject sequence a real one, exported to MH. This means you can,
2256 for example, mh-forward it. But it also shows up with a mark in the
2257 scan output (closes SF #489445).
2261 The following bugs have also been closed:
2263 SF #495450: Folder buffer read-only after inc
2264 SF #489706: mh-page-msg bombs out
2265 SF #580772: mh-last-destination is overloaded
2267 *** Variables renamed to conform with Emacs coding conventions
2269 The coding conventions require that boolean variables end in -flag.
2270 The following two tables show which variables were affected (closes SF
2273 Customization Variables (defcustom)
2277 mh-auto-folder-collect mh-auto-folder-collect-flag
2278 mh-bury-show-buffer mh-bury-show-buffer-flag
2279 mh-clean-message-header mh-clean-message-header-flag
2280 mh-decode-quoted-printable mh-decode-quoted-printable-flag
2281 mh-delete-yanked-msg-window mh-delete-yanked-msg-window-flag
2282 mh-do-not-confirm mh-do-not-confirm-flag
2283 mh-highlight-citation-p mh-highlight-citation
2284 mh-insert-x-mailer-p mh-insert-x-mailer-flag
2285 mh-print-background mh-print-background-flag
2286 mh-recenter-summary-p mh-recenter-summary-flag
2287 mh-recursive-folders mh-recursive-folders-flag
2288 mh-reply-show-message-p mh-reply-show-message-flag
2289 mh-show-use-goto-addr mh-show-use-goto-addr-flag
2290 mh-update-sequences-after-mh-show mh-update-sequences-after-mh-show-flag
2292 Regular Variables (defvar)
2296 mh-mhn-compose-insert-p mh-mhn-compose-insert-flag
2297 mh-nmh-p mh-nmh-flag
2298 mh-page-to-next-msg-p mh-page-to-next-msg-flag
2302 * Changes in mh-e 6.1
2304 This is a minor release which includes a few bug fixes. The
2305 distribution now includes the ChangeLog.
2307 ** New Features in mh-e 6.1
2311 Unseen messages now displayed in bold.
2313 *** Viewing folders and sequences
2315 The folder and sequence listings that "F l (mh-list-folders)" and "S l
2316 (mh-list-sequences)" create are now displayed in view mode.
2318 ** Bug Fixes in mh-e 6.1
2320 *** mh-folder-unseen-seq-name
2322 Byte compilation failed when initializing this variable when the
2323 user's MH environment was not set up. This has been fixed (closes
2324 Debian #140232 and Debian #140817).
2328 When forwarding a sequence, the mode of the draft would not be set to
2329 MH-Letter correctly. This has been fixed (closes SF #489448).
2331 *** mh-insert-prefix-string
2333 Fixed to work under XEmacs. Thanks to Will Partain
2334 <partain at dcs.gla.ac.uk>.
2338 mh-quit now cleans up the buffers named `mh-temp-buffer,'
2339 'mh-temp-folders-buffer' and 'mh-temp-sequences-buffer.'
2342 * Changes in mh-e 6.0
2344 mh-e is now maintained at SourceForge (see
2345 http://mh-e.sourceforge.net/). This is where you need to go to obtain
2346 new versions of mh-e, report bugs and receive support.
2348 The maintainers have moved much of their personal configurations into
2349 the codebase, so you may find that you may be able to reduce your mh-e
2350 customizations as well.
2352 There are several incompatibilities in this version from older
2353 versions. Please read the following notes carefully for details. Pay
2354 particular attention to the key binding changes in the MH-Folder
2355 section. If you have customized your scan format, you will want to
2356 read about the new variable `mh-scan-format-file'.
2358 The manual could not be updated in time for this release. It will be
2359 updated in the near future. If the Preface in your manual indicates
2360 the older version (version 1.3, for mh-e version 5.0.2), please check
2361 the following page occasionally for an update:
2363 https://sourceforge.net/project/showfiles.php?group_id=13357
2366 ** New Features in mh-e 6.0
2370 mh-e now uses the customize feature of Emacs. Use "M-x customize-group
2371 mh RET" to customize mh-e.
2375 All mh-e modes now provide menus that contain most mh-e functions.
2379 All mh-e modes now have toolbar buttons for oft-used functions (Emacs 21).
2383 All mh-e buffers now have font-lock keywords. To use, either call
2384 (turn-on-font-lock) from the appropriate hook, or set
2385 `global-font-lock-mode' to t. To customize, use "M-x
2386 customize-apropos-faces ^mh RET".
2388 If you have customized your scan lines, you will have to update your
2389 scan regexps. The existing regexps were changed to extract a match so
2390 you will have to add appropriate grouping constructs to take advantage
2391 of the fontification. Your old settings will continue to work, but the
2392 folder will not be fontified. For example:
2394 (setq mh-good-msg-regexp "^\\(.....\\)[^D^]")
2396 You will most likely have to update the new variable
2397 `mh-scan-subject-regexp' as well. There is another new variable
2398 `mh-scan-date-regexp' which you may also find useful. Run "M-x apropos
2399 mh.*regexp" for a complete list.
2401 *** mail-user-agent support
2403 You can now set `mail-user-agent' to `mh-e-user-agent' so that packages
2404 that need to send mail will use mh-e (closes SF #406883, SF #470024).
2406 *** replgroupcomps support
2408 If you reply to `cc' or `all' and you use nmh, the nmh repl option
2409 -group will be used. This means that the file `replgroupcomps' will be
2410 used. If you have customized `replcomps', you will definitely want to
2411 either copy `$NMH_LIB/replgroupcomps' to your mail directory and modify
2412 it the same way that you modified your `replcomps' file, or simply
2413 copy your `replcomps' file to `replgroupcomps'.
2417 The variable `mh-summary-height' used to have a default of 4. It now
2418 varies from 4 to 10 depending on the height of the frame.
2420 Clicking the mouse on a message shows that message.
2422 Delete, refile and undo now operate on a region (but only if
2423 `transient-mark-mode' is non-nil).
2425 SPC (mh-page-msg) now displays the message if it is not already
2426 visible. If the bottom of a message is showing, SPC (mh-page-msg)
2427 moves to the next message (respecting the direction you are moving
2428 through the folder).
2430 The threading commands "T u (mh-next-unseen-subject-thread)",
2431 "T t (mh-toggle-subject-thread)", "T s (mh-narrow-to-subject-thread)",
2432 and "T k (mh-delete-subject-thread)" have been added. These functions
2433 do not offer threading in the true sense of the word, but do allow
2434 some manipulation by subject.
2436 Major, major keymap changes. This was done to free up movement
2437 commands in the buffer, and to provide for additional features, such
2438 as the threading commands. At the same time, better and more
2439 consistent mnemonics were realized that should make it easier to
2440 remember key bindings.
2442 Added new sub-keymaps for folder commands, sequence commands,
2443 extraction commands, and digest commands which begin with with F, S,
2444 X, and D, respectively. These sub-keymaps allowed some consistency
2445 (e.g., especially with l(ist) and k(ill)).
2447 Here are the actual changes and rationale:
2451 e - Deleted. Already have x. Now used by mh-edit-again.
2452 j - Deleted. Already have g.
2454 M-a e Better mnemonic. Matches rmail. Frees movement command.
2455 M-e E Better mnemonic. Consistent with e.
2456 - S Why not? mh-sort-folder.
2458 M-f Fv Frees movement command
2459 M-f Ff Alias (keep?)
2460 M-f Fo Alias (keep?)
2461 M-k Fk No reason but to keep with folder commands
2462 M-l Fl No reason but to keep with folder commands
2463 M-p Fp No reason but to keep with folder commands
2464 M-r Fr Frees movement command
2465 M-s Fs No reason but to keep with folder commands
2466 M-u Fu No reason but to keep with folder commands
2468 M-% Sd Better mnemonic
2469 M-# Sk Better mnemonic
2470 M-q Sl Better mnemonic
2471 C-xn Sn Frees up standard key binding
2472 % Sp Better mnemonic for putting a message in a sequence
2473 ? Ss Shows sequences that message is in
2474 C-xw Sw Frees up standard key binding
2476 M-n Xs Better mnemonic (extract shar)
2477 M-n Xu Better mnemonic (extract uuencode)
2479 M-SPC D SPC Frees mark command
2480 M-\177 D \177 No reason but to keep with digest commands
2481 M-b Db Frees movement command
2483 As the number of variables increases, it is becoming important to
2484 organize the mh-e namespace. Several variables having to do with the
2485 format of scan lines were renamed, as follows:
2489 mh-good-msg-regexp mh-scan-good-msg-regexp
2490 mh-deleted-msg-regexp mh-scan-deleted-msg-regexp
2491 mh-refiled-msg-regexp mh-scan-refiled-msg-regexp
2492 mh-valid-scan-line mh-scan-valid-regexp
2493 mh-cur-scan-msg-regexp mh-scan-cur-msg-number-regexp
2494 - mh-scan-cur-msg-regexp
2495 - mh-scan-rcpt-regexp
2496 - mh-scan-format-regexp
2497 mh-msg-number-regexp mh-scan-msg-number-regexp
2498 mh-msg-search-regexp mh-scan-msg-search-regexp
2502 While the MIME support is not complete, quoted-printable body parts
2505 Some MTAs quote From at the beginning of the line with a ">". The ">"
2506 is now removed in the display, but not on disk.
2510 New function "C-c C-o (mh-split-line)" splits lines in a draft
2511 preserving the fill prefix and indentation. This is useful when
2512 responding to several sentences in a single paragraph separately.
2514 "M-q (fill-paragraph)" can now be used on the message that is being
2515 replied to. The fill prefix such as "> " is preserved.
2517 You no longer have to run "C-c C-e (mh-edit-mhn)" manually as this is
2518 now done automatically when the message is sent.
2520 The X-Mailer header field is now added to messages as they are sent.
2522 "C-c C-m C-i (mh-mhn-compose-insertion)" now makes a pretty good guess
2523 at the type of file using the `file' command and no longer asks the
2524 user for the media type. If the necessary version of `file' is not
2525 available, the user is asked for the media type as before; however,
2526 the list of media types is now taken from the system mailcap if
2527 available. Failing that, the built-in list of types has been
2528 supplemented so in most cases the type you need should be present
2529 (closes SF #406883, #441179).
2531 ** New Variables in mh-e 6.0
2533 New variables not mentioned earlier include:
2535 *** mh-insert-x-mailer-p
2537 Default value of t means that an X-Mailer header field should be
2540 *** mh-reply-show-message-p
2542 The setting of this variable determines whether the MH show-buffer is
2543 displayed with the current message when using mh-reply without a prefix
2544 argument. Set it to nil if you already include the message
2545 automatically in your draft using "repl: -filter repl.filter" in
2548 *** mh-scan-format-file
2550 Specifies the format file to pass to the scan program. If t, the
2551 format string will be taken from the either `mh-scan-format-mh' or
2552 `mh-scan-format-nmh' depending on whether MH or nmh is in use. If nil,
2553 the default scan output will be used.
2555 If you customize the scan format, you may need to modify a few
2556 variables containing regexps that mh-e uses to identify specific
2557 portions of the output. Use `M-x apropos RET mh-scan.*regexp' to
2558 obtain a list of these variables.
2560 *** mh-scan-format-mh
2562 Scan format string for MH, provided to the scan program via the
2563 -format arg. This format is identical to the default except that
2564 additional hints for fontification have been added to the sixth
2567 *** mh-scan-format-nmh
2569 Scan format string for nmh, provided to the scan program via the
2570 -format arg. This format is identical to the default except that
2571 additional hints for fontification have been added to the sixth
2574 *** mh-show-use-goto-addr
2576 Non-nil means URLs and e-mail addresses are highlighted using
2577 goto-addr in MH-Show buffer.
2579 *** mh-letter-fill-column
2581 Fill column to use in `mh-letter-mode'. This is useful to make the
2582 lines a bit shorter to allow for quoting in replies.
2584 *** mh-folder-updated-hook
2586 Invoked when the actions in a folder (such as moves and deletes) are
2587 performed. Variables that are useful in this hook include
2588 `mh-delete-list' and `mh-refile-list' which can be used to see which
2589 changes are being made to current folder, `mh-current-folder'.
2591 *** mh-unseen-updated-hook
2593 Invoked after the unseen sequence has been updated. The variable
2594 `mh-seen-list' can be used to obtain the list of messages which will
2595 be removed from the unseen sequence
2597 ** Bug Fixes in mh-e 6.0
2599 *** mh-edit-again and mh-extract-rejected-mail
2601 Now insert a header separator (--------) which packages such as
2606 Now uses `mhparam' to set `mh-lib-progs' and `mh-lib'. Added more
2607 directories to `mh-progs' so that mh-e can autoconfigure in more
2608 environments. Chances are that you no longer have to set these
2609 variables, and if you do, you will only have to set `mh-progs'.
2610 Unless, of course, you are using an ancient version of MH that doesn't
2613 *** mh-folder-mode-map
2615 The DEL/<delete>/<backspace> change in Emacs 21 broke
2616 `mh-previous-page'. This has been fixed (closes SF #228907).
2620 If you had "forw: -mime" to your .mh_profile, forwarding a message
2623 Search failed: "^------- Forwarded Message"
2625 In addition, the Subject field was not filled in. This has been fixed
2626 (closes SF #223603).
2630 The user is now always prompted before this action; the variable
2631 `mh-do-not-confirm' is no longer consulted here. Therefore users who
2632 wanted to set `mh-do-not-confirm' but didn't because of the
2633 `mh-kill-folder' dependency may now do so.
2635 *** mh-make-folder-mode-line
2637 Properly deals with folders that do not have any lines in them. Prints
2638 "no msgs" instead of "0 msgs". Does not try to print a range when
2639 there are no messages.
2641 *** mh-mhn-compose-insertion
2643 Now gets the MIME type automatically (assuming the local file command
2644 supports the -i and -b options). If this use of the file command is
2645 not supported, the list of MIME types has been expanded to use the
2646 system's mailcap file.
2650 This variable (t when nmh is in use rather than MH) assumed that the
2651 string "nmh" is in `mh-lib-progs' or `mh-lib'. This has been fixed
2652 (closes SF #441776).
2656 No longer lets you specify an empty folder (closes SF #476824).
2658 *** mh-regenerate-headers
2660 Now suppresses "scan: bad message list" messages.
2664 This function was looking for `mhl' in the wrong place on nmh on
2665 Redhat LINUX 7.0. This has been fixed (closes SF #481128).
2669 Now updates `cur' sequence after a message is shown (closes SF #481772).
2673 Renamed variable and function to `mh-showing-mode' to conform with
2674 minor mode conventions. Added optional arg to function so it would
2675 behave like a normal minor mode: no or nil arg toggles mode, 0 arg
2676 turns off, non-nil turns on. This fixed the error that occurred when
2677 `desktop-create-buffer' recreated mh-e buffers because it was calling
2678 `mh-showing' with an arg.
2682 Fixed for nmh. Now displays mh-e version correctly. Cleaned up output
2683 and display `mh-progs', etc.
2687 Now attempts to stay on the same message number (closes SF #480922).
2689 No longer wipes out pending deletes and refiles without warning
2690 (closes SF #481036).
2693 * Changes in mh-e 5.0.2
2695 This version contains additional minor changes to integrate it with
2696 reporter.el (requires reporter.el version 3.1c or later) and Emacs
2697 19.30. The mh-goto-msg function is much faster, which also speeds up
2698 several other operations.
2701 * Changes in mh-e 5.0.1
2703 This version contains minor changes from mh-e 5.0 to integrate it with
2707 * User-visible changes to mh-e 5.0
2709 Note: This being a major release, there are many internal changes.
2710 This document lists only changes to the external interfaces of mh-e.
2712 When upgrading, you must either explicitly reload the new versions of
2713 all mh-e files that are already loaded or restart your Emacs.
2716 ** Major Changes and New Features in mh-e 5.0
2718 The emphasis for this release has been on consistency and
2719 documentation. Many documentation strings were enhanced. Documentation
2720 strings were changed to comments for internal functions and variables.
2722 *** There is now proper documentation in the form of a 75-page users
2723 manual. The Texinfo source is mh-e.texi; the formatted Info document
2726 *** There is a new command `mh-update-sequences', which updates MH's
2727 idea of what messages are in the Unseen sequence and what is the
2728 current folder and message. `mh-quit' calls it. While
2729 `mh-execute-commands' has always done this updating as a side effect,
2730 the new function is faster.
2732 *** The MH profile entry "Inbox:" is supported.
2734 *** If the show-buffer is modified, the user is queried before mh-e
2735 reuses the buffer to show a different message. This buffer is also
2736 auto-saved and backed up correctly.
2738 *** `mh-store-buffer' is significantly more robust. It now handles
2739 messages created by a wide variety of packaging software. The status
2740 message for `uudecode' includes the name of the file created. An error
2741 is signaled if the subprocess exits with a non-zero status.
2743 *** `mh-search-folder' behaves predictably, adding messages found to
2744 the `search' sequence. It correctly handles the case of no messages
2747 *** `mh-burst-digest' (`M-b') now only rescans the part of the folder
2748 affected by the burst. It is now much faster in a large folder.
2751 ** New Hooks and Customization Variables in mh-e 5.0
2753 *** `mh-default-folder-for-message-function': new name for the old
2754 `mh-msg-folder-hook', which wasn't a hook. The old name was confusing,
2755 leading people to think they could use `add-hook' with it, when
2756 actually `setq' is the correct way.
2758 *** `mh-sortm-args': When this variable is used has changed. Now
2759 `mh-sortm-args' is passed if there IS a prefix argument to
2760 `mh-sort-folder'. The assumption is that for arguments you normally
2761 want, you would specify them in an MH profile entry.
2763 *** `mh-mhn-args': new hook, a list of additional arguments to pass to
2764 the `mhn' program if `mh-edit-mhn' is given a prefix argument.
2766 *** `mh-edit-mhn-hook': new hook called by `mh-edit-mhn', the function
2767 that formats MIME messages.
2769 *** `mh-folder-list-change-hook': new hook, called whenever the cached
2770 list of folders, `mh-folder-list', is changed.
2772 *** `mh-find-path-hook': new hook, called when entering mh-e.
2774 *** `mh-repl-formfile': new variable, used to change the format file
2775 used by `mh-reply' from the default of "replcomps".
2777 *** New variables to customize the scan format and notating:
2778 `mh-note-deleted', `mh-note-refiled', `mh-note-seq', `mh-note-cur',
2779 `mh-note-copied', `mh-note-printed'.
2782 ** Key Binding Changes in mh-e 5.0
2784 *** `RET' runs `mh-show' for consistency with the Finder and Info. The
2785 old binding `.' still works, but `RET' is now the standard binding.
2787 *** `M-<' now runs `mh-first-msg' for consistency with `M->', which
2790 *** `C-c C-f C-d' in MH-Letter mode moves to a Dcc: header field.
2792 *** `C-c C-f C-r' in MH-Letter mode moves to a From: header field.
2794 *** `g' is now the standard binding for `mh-goto-msg'. The old binding
2798 ** Other Improvements and Changes to mh-e 5.0
2800 *** `mh-lpr-command-format' no longer passes the "-p" argument to
2801 `lpr' by default. The mail header typically has the date anyway.
2803 *** When prompting for a sequence name, if no sequences have been used
2804 yet, mh-e will offer the first sequence the current message is in.
2806 *** The patterns of more mailers are recognized by
2807 `mh-extract-rejected-mail'.
2809 *** `mh-insert-prefix-string' no longer wraps the call to the
2810 `mail-citation-hook' function in a `save-excursion' so the hook writer
2811 can choose whether to leave point at the beginning or the end of the
2814 *** `mh-write-msg-to-file': The prompt now refers to "message" or
2815 "message body" depending on which will be written. (This is controlled
2816 by a prefix argument.) The file defaults to the last-used file instead
2817 of supplying only the directory name.
2819 *** mh-e uses message ranges when running MH commands. Thus "rmm 1 2 3
2820 4 6" is now "rmm 1-4 6". This change makes it less likely to overflow
2821 system argument list limits, and it might be faster, too.
2824 ** Bug Fixes to mh-e 5.0
2826 *** mh-e's idea of the unseen sequence now stays in sync with MH's
2829 *** Functions that are supposed to find fields in the message header
2830 no longer look in the message body.
2832 *** mh-e would sometimes fail to remove the "%" from a scan line when
2833 the message was removed from a sequence if the message was also in the
2836 *** The variable `mh-inc-prog' is now correctly used in all places.
2838 *** `mh-pipe-msg' runs the process in the correct directory.
2840 *** A partially scanned folder will no longer lose the "/select"
2841 annotation when you execute marked deletes and refiles with `x'.
2844 * Changes to mh-e 4.0
2846 This file is automatically generated from news-mh-e.txinfo. Do not edit.
2848 [MH-E-ONEWS has been incorporated here and removed. news-mh-e.txinfo
2849 is no longer available.]
2851 Note: there are many internal changes to mh-e in this release. If you
2852 have the previous version loaded into your Emacs, you will probably not
2853 be able to load this version on top of it.
2855 ** New Features in mh-e 4.0
2857 *** Background folder collection. The first time you are prompted for
2858 a folder, you must wait while mh-e collects the names of all existing
2859 folders. Now however, if you abort, collecting will continue in the
2860 background, and you can do something else in Emacs until the
2861 collection completes. Normally, mh-e will begin collecting folders
2862 names in the background when you first load it; you can disable this
2863 feature by setting `mh-auto-folder-collect' to nil.
2865 *** There is support for composing MIME messages using the `mhn'
2866 program from MH 6.8. See the documentation string for mh-edit-mhn.
2867 (While composing a letter, type `C-h k C-c C-e'.) See also mhn(1).
2868 There is as yet no support for reading MIME messages.
2870 *** `mh-show', typically on `.', repositions to the start of the
2871 message if the message is already visible. It used to do nothing in
2874 *** The function `mh-unshar-msg' is renamed `mh-store-msg'. It now
2875 does uudecoding, too. Someday it should do MIME. It remembers the last
2876 directory you used and offers it as the default for next time.
2878 *** New function `mh-header-display', on `,', displays the message
2879 with all headers, including those normally not displayed. Type `.' to
2880 display the message normally again.
2882 *** New function `mh-list-sequences' lists the sequences in use in the
2885 *** New function `mh-version' displays version information about MH
2886 and mh-e. Please use the output in bug reports.
2888 *** `mh-quit' now burys the folder buffer and show buffer.
2891 ** New hooks and customization variables in mh-e 4.0
2893 *** `mh-pick-mode-hook': new hook called by new mode `mh-pick-mode'.
2894 The pick buffer didn't used to have its own mode. Another advantage of
2895 `mh-pick-mode' is that `C-h m' works in the pick buffer.
2897 *** `mail-citation-hook': new variable for supercite.
2899 *** `mh-refile-msg-hook': new hook called by `mh-refile-msg' (and
2900 `mh-refile-or-write-again' when refiling).
2902 *** `mh-msg-folder-hook': new hook used by `mh-refile-msg' and
2903 `mh-to-fcc' to provide a default folder for user prompt.
2905 *** `mh-show-hook': new hook called by `mh-show'.
2907 *** `mh-delete-msg-hook': new hook called by `mh-delete-msg'.
2909 *** `mh-show-mode-hook': new hook called by new mode `mh-show-mode'
2910 for `show-' buffers.
2912 *** `mh-comp-formfile': new variable so can customize `components'
2915 *** `mh-sortm-args': new variable, a list of extra arguments to be
2916 passed to sortm by `mh-sort-folder'. Give an argument to
2917 `mh-sort-folder' to suppress this behavior.
2919 *** `mh-send-prog': new variable so can customize name of `send'
2920 program in case of name conflicts.
2922 *** `mh-scan-prog': new variable so can customize name of `scan'
2923 program to generate custom effects.
2925 *** `mh-inc-prog': new variable so can customize name of `inc' program
2926 to do fancy management of incoming messages.
2928 *** `mh-forwarded-letter-subject': new function used by `mh-forward'
2929 to compute the Subject line of the new message. It is a small function
2930 which can be replaced by the user for customization. Uses the new
2931 variable `mh-forward-subject-format', which allows some simple
2932 customizations without rewriting even `mh-forwarded-letter-subject'.
2934 *** `mh-new-draft-cleaned-headers': new variable, header lines removed
2935 by `mh-edit-again' and `mh-extract-rejected-mail' before offering a
2936 message as a new draft.
2938 *** `mh-signature-file-name': new variable used by
2939 `mh-insert-signature' to so can customize name of the file to insert.
2941 *** `mh-read-address': new function called to read all To: and Cc:
2944 *** `mh-msg-folder-hook': new hook used by `mh-refile-msg' and
2945 `mh-to-fcc' to provide a default folder for user prompt.
2948 ** Key binding changes in mh-e 4.0
2950 *** `,' runs new function `mh-header-display'. It is like `.' but it
2951 displays *all* the headers.
2953 *** `M-#' runs the new function `mh-delete-seq'. One used to have to
2954 type `C-u M-%' to delete a sequence.
2956 *** `<' no longer does `mh-first-msg', but `M->' now does
2957 `mh-last-msg'. This allows first and last to be consistent (`>' was
2958 taken) and is more likely to be discovered by chance anyway.
2960 *** `M-d' runs `mh-redistribute', `r' runs `mh-reply' (on the theory
2961 that the more commonly used function should be easier to type, and the
2962 obscure action of redistributing can be harder to type).
2964 *** `M-o' changed to `C-o' (`mh-write-msg-to-file'). It was
2965 interfering with arrow keys for some people.
2967 *** `M-n' now runs `mh-store-msg' (formerly `mh-unshar-msg').
2969 *** `b' no longer runs `mh-quit'; use `q' instead. `b' may be used in
2970 a future version for something else.
2973 ** Minor improvements to mh-e 4.0
2975 *** The mh-e code is now divided into multiple Emacs Lisp files, so it
2976 starts up faster because Emacs doesn't have to load all of it at once.
2977 (This change also makes it easier for the maintainer to manage
2980 *** When searching for the directory containing the MH programs,
2981 search the user's PATH in addition to the built-in directories, to
2982 increase the chance of finding the MH programs.
2984 *** The subject for a forwarded message no longer has ugly square
2987 *** The name of the folder is no longer appears twice in the show
2990 *** When typing a folder name in the minibuffer, parent folders
2991 complete to the trailing slash (/), for easier typing of subfolders.
2993 *** The folder buffer mode name changed from `mh-e scan' or `mh-e
2994 show' to `MH-Folder', which makes the hook name easier to guess. Added
2995 `mh-showing' to `minor-mode-alist' so there is still an indication in
2996 the mode line of whether messages will be shown automatically.
2998 *** `mh-rename-seq' does completion on the old sequence name.
3000 *** If called by a user who has never used MH on this system before,
3001 mh-e runs the MH program `install-mh' to get them set up.
3003 *** Undo history for previous messages is not kept to avoid wasting
3006 *** The internal temp buffer used by mh-e has `buffer-offer-save'
3007 explicitly nil. This change benefits people who change the
3008 `buffer-offer-save' default.
3011 ** Bug fixes to mh-e 4.0
3013 *** `mh-to-field': don't bomb if no To: field.
3015 *** `mh-get-new-mail': restore annotations, e.g., cur, even if no new
3018 *** `mh-rename-seq': verify that the new seq name was accepted by
3019 `mark' before updating state.
3021 *** `mh-internal-seq': the Previous sequence is not notated, since it
3022 would notate everything scanned.
3024 *** `mh-read-draft': don't call `find-file-noselect' so an
3025 `auto-mode-alist' doesn't trigger `mh-letter-mode-hook' twice. Faster,
3028 *** `mh-show': If user moves onto a message that doesn't exist, don't
3029 leave the cursor in the show pane.
3031 *** `mh-delete-scan-msgs': use `equal', not `=', on the result of
3032 `mh-get-msg-num', since it may be nil.
3034 *** `mh-get-field': do anchored search so searching for `reply-to:'
3035 doesn't find `in-reply-to:'.
3037 *** `mh-widen': do nothing if not narrowed.
3039 *** `mh-clean-message-header': find end of headers even if no body.
3044 paragraph-separate: "[
\f]*$"
3047 arch-tag: f6696cad-eb1b-4c5f-8057-4e3954a98d18