3 Copyright (C) 2003, 2004 Free Software Foundation, Inc.
5 Copying and distribution of this file, with or without modification,
6 are permitted in any medium without royalty provided the copyright
7 notice and this notice are preserved.
11 Version 7.81 fixes a `wrong-type-argument' argument error that
12 sometimes occurred when processing the Message-ID, adds the ";
13 (mh-toggle-mh-decode-mime-flag)" command, and uses ":default" instead
14 of "default" in `mh-identity-handlers' to avoid problems with
15 "Default:" as a user defined field. If you have modified
16 `mh-identity-handlers' in your .emacs, you'll need to rename "default"
17 to ":default". This release also corrects the release numbering; the
18 previous version number was intended to be 7.80.
20 * Changes in MH-E 7.4.80
22 Version 7.4.80 now supports GNU mailutils, S/MIME, picons,
23 which-func-mode, has an improved interface for hiding header fields,
24 improves upon the MH variant detection, and contains many bug fixes.
25 Those of you familiar with the GNU version numbering schemes will
26 recognize this as an alpha release. This does not reflect on the
27 quality of this release which is as high as it has always been.
28 Although we are not ready to release 8.0, we want you to have access
29 to the work that has been hiding in CVS. At the same time we want to
30 make it clear that there are incompatible changes with previous
33 We are planning to release the long-awaited manual update synchronized
34 with version 8.0. We are using documentation from the manual in the
35 docstrings which is hoped to make "C-h f (describe-function)" really
36 useful and create a seamless experience when switching back and forth
37 between the manual and the docstrings. This has been done in about
38 half of the variables and functions in this version.
40 The writing of the manual has revealed a few inconsistencies in the
41 software whose fixes have resulted in incompatible changes, and there
42 may well be more. So, unlike version 7 which was chock full of new
43 features, version 8's strengths will include complete documentation
46 ** New Features in MH-E 7.4.80
48 *** GNU mailutils Support
50 MH-E now supports GNU mailutils 0.4 and higher versions.
54 MH-E now supports S/MIME using Gnus 5.10.6 or higher.
58 In addition to the other methods of displaying an icon for the sender
59 of a message, MH-E can now display images from a picon directory. The
60 directory search path is found in the `mh-picon-directory-list'
61 variable. More documentation is found in the "facedb" sections in the
62 xfaces man page. [NOTE: need to make mh-picon-directory-list an option
63 and add xfaces facedb documentation to it.]
65 *** X-Image-URL Updates
67 Now support the use of `curl' and `fetch' as alternatives to `wget' to
68 obtain the image. The display of images are controlled with the
69 `mh-show-use-xface-flag' option while the `mh-fetch-x-image-url'
70 option controls how the images are fetched.
72 WARNING: There are security concerns with this feature. Please read
73 the documentation for these options carefully before changing the
76 *** Updates to mh-identity-list
78 Note that the field names found in `mh-identity-list' that refer to
79 the fields in `mh-identity-handlers' have changed in an incompatible
80 way from 7.4.4. In general, the symbolic names now have a ":" prefix
81 to avoid collisions with header fields. Before starting Emacs, edit
82 your .emacs and insert ":" before "signature" if you have defined it.
84 You can change your attribution in replies with the new "Attribution
85 Verb" field, and you can set your default GPG user ID with the "GPG
88 Signatures can now be read from the `mh-signature-file-name' variable,
89 or come from a function, in addition to a named file. If you write
90 your own function, variables that you can use include
91 `mh-signature-separator-regexp', `mh-signature-separator',
92 and `mh-signature-separator-p'.
94 The handling of these fields has been moved into a new
95 `mh-identity-handlers' option, an alist of fields (strings) and
96 handlers (functions). Strings are lowercase. Use ":signature" for
97 Signature and ":pgg-default-user-id" for GPG Key ID. The function
98 associated with the string "default" is used if no other functions are
99 appropriate. For this reason, don't name a header field "Default".
101 If you point your signature at a vCard file with a vcf suffix, then it
102 will be incorporated as a vCard body part (closes SF #802723).
106 There is a new "F c (mh-catchup)" command that marks all unread
107 messages in the current folder as read.
109 *** Change Content-Type Renderer on the Fly in MH-Show Buffer
111 This has been implemented by adding the key binding "K e
112 (mh-display-with-external-viewer)". For inline text/html parts,
113 buttons aren't displayed by default. In that case use "K t
114 (mh-toggle-mime-buttons)" to display the button before viewing it with
115 an external browser (closes SF #839318).
117 *** Use which-func-mode to Display Folder in Index Mode
119 Turning on `which-func-mode' displays the folder name of the message
120 under the cursor in index folders (closes SF #855520).
122 *** Render Signature and vCard in Italics
124 This has been implemented. Use `mh-show-signature-face' to customize
125 the face used (closes SF #802722).
129 There is now a keymap for the printing functions whose prefix is "P".
130 The command "l (mh-print-msg)" has been replaced with "P l". Other new
131 functions in this keymap include:
133 P A mh-ps-print-toggle-mime
134 P C mh-ps-print-toggle-color
135 P F mh-ps-print-toggle-faces
136 P M mh-ps-print-toggle-mime
137 P f mh-ps-print-msg-file
140 P s mh-ps-print-msg-show
142 *** Draft Buffer Keymap Changes
144 The keymap in the draft buffer has been modified slightly. The old
145 anonymous ftp and tar composition commands have been reinstated and
146 letter signing and encrypting keymaps have been added.
148 The type of signing or encryption has been generalized so the method
149 is now an option rather than a part of the function's name. The option
150 is `mh-mml-method-default' and choices include PGP (MIME), PGP,
155 C-c RET C-e mh-mml-secure-message-encrypt-pgpmime
156 mh-mml-secure-message-encrypt
157 C-c RET C-s mh-mml-secure-message-sign-pgpmime
159 C-c RET C-g - mh-mhn-compose-anon-ftp
160 C-c RET C-n - mh-mml-unsecure-message
161 C-c RET C-s - mh-mml-secure-message-sign
162 C-c RET C-t - mh-mhn-compose-external-compressed-tar
163 C-c RET C-s mh-mml-secure-message-sign-pgpmime
164 mh-mml-secure-message-sign
165 C-c RET C-x - mh-mhn-compose-external-type
166 C-c RET e mh-mml-secure-message-encrypt-pgpmime
168 C-c RET e e - mh-mml-secure-message-encrypt
169 C-c RET e s - mh-mml-secure-message-signencrypt
170 C-c RET g - mh-mhn-compose-anon-ftp
171 C-c RET n - mh-mml-unsecure-message
172 C-c RET s mh-mml-secure-message-sign-pgpmime
174 C-c RET s e - mh-mml-secure-message-signencrypt
175 C-c RET s s - mh-mml-secure-message-sign
176 C-c RET t - mh-mhn-compose-external-compressed-tar
177 C-c RET x - mh-mhn-compose-external-type
179 *** Speedbar: Highlight Folders With Unseen
181 The speedbar now renders the folders with unseen messages in boldface
182 which makes them easier to identify (closes SF #623369).
186 The "? (mh-help)" function now displays the help in its own buffer
187 called *MH-E Help* (closes SF #493740 and SF #656631).
189 *** New Startup File mh-e-autoloads.el
191 If you are installing MH-E yourself, then you can replace any
192 autoloads you may have with "(require 'mh-e-autoloads.el)". See the
195 *** Glimpse Support Removed
197 Since glimpse isn't free, we cannot mention it. Glimpse has been
198 removed from the option `mh-indexer-choices' (closes SF #831276).
200 *** mh-msg-is-in-seq Update
202 Can now specify an alternate message number to "S s
203 (mh-msg-is-in-seq)" with a prefix argument.
205 ** New Variables in MH-E 7.4.80
207 Variables that have been added to MH-E that have not been discussed
208 elsewhere are listed here.
210 *** mail-citation-hook
212 Hook for modifying a citation just inserted in the mail buffer.
214 *** mh-alias-reloaded-hook
216 Invoked by `mh-alias-reload' after reloading aliases.
218 *** mh-auto-fields-prompt-flag
220 Non-nil means to prompt before sending if fields in
221 `mh-auto-fields-list' are inserted.
223 *** mh-default-folder-for-message-function
225 Function to select a default folder for refiling or `Fcc'.
229 Invoked on the forwarded letter by "f (mh-forward)".
231 *** mh-invisible-header-fields-default
233 List of hidden header fields. The header fields listed in this option
234 are hidden, although you can check off any field that you would like
235 to see. Header fields that you would like to hide that aren't listed
236 can be added to the `mh-invisible-header-fields' option (closes SF
239 The option `mh-visible-header-fields' has been deleted.
241 *** mh-junk-background
243 If on, spam programs are run in background. This used to be the
244 default behavior but this could overwhelm a system if many messages
245 were black- or whitelisted at once. The spam programs are now run in
246 the foreground, but this option can be used to put them back in the
249 *** mh-signature-separator-flag
251 Non-nil means a signature separator should be inserted. It is not
252 recommended that you change this option since various mail user
253 agents, including MH-E, use the separator to present the signature
254 differently, and to suppress the signature when replying or yanking a
259 Specifies the variant used by MH-E. The default setting of this option
260 is `Auto-detect' which means that MH-E will automatically choose the
261 first of nmh, MH, or GNU mailutils that it finds in the directories
262 listed in `mh-path', `mh-sys-path', and `exec-path'. If, for example,
263 you have both nmh and mailutils installed and `mh-variant-in-use' was
264 initialized to nmh but you want to use mailutils, then you can set
265 this option to `mailutils'.
267 When this variable is changed, MH-E resets `mh-progs', `mh-lib',
268 `mh-lib-progs', `mh-flists-present-flag', and `mh-variant-in-use'
271 If you've set these variables in your .emacs, it is strongly suggested
272 that you comment them out. The MH detection code has been completely
273 rewritten and it is very likely that you no longer to set them and
274 their setting may confuse other MH-E settings.
276 ** Variables Deleted in MH-E
278 Variables that have been removed from MH-E that have not been
279 discussed elsewhere are listed here.
281 *** mh-alias-system-aliases
283 System definitions should not be a user option.
285 *** mh-junk-mail-folder
287 Since this variable can accept values other than folder names, it was
288 renamed to `mh-junk-disposition' to more accurately reflect the content.
290 ** Bug Fixes in MH-E 7.4.80
292 Many bugs were fixed in this version that aren't listed below.
294 *** mh-extract-rejected-mail Can't Do MIME (and Other Formats)
296 Now handles qmail and exim bounces (addresses SF #404965).
298 *** mh-rmail Hangs in XEmacs
300 We've determined that MH-E is incompatible with some versions of
301 XEmacs (21.5.9-21.5.16). More recent versions work fine. If you think
302 our list is too broad, please let us know which version of XEmacs you
303 are using (closes SF #644321).
305 *** Inconsistent Prompts
307 Prompt formats are now consistent throughout the application (closes
310 *** Empty Shell Comments Confuse mh-mhn-directive-present-p
312 If you had a string that matched the regexp "^# $" in your draft, it
313 would cause an error. This has been fixed (closes SF #762458).
315 *** Quote Hashes When mhbuild Directives Used
317 A related bug, if you had empty shell comments but inserted your own
318 directives, you'd get another error from mhbuild. This has been fixed
319 by quoting the hash ("^# $") like this "##" before submitting to
320 mhbuild (closes SF #762464).
322 *** Inconsistent Usage in Scan Formatting Variables
334 used to contain strings. Although only the first character was read,
335 the entire string would be inserted which may have caused problems.
336 These variables have been converted to character constants so that
337 only a single character can be inserted into the scan line (closes SF
340 *** Bad Handling of Aliases That Conflict With Local User Names
342 If a user name existed both locally and in the aliases file, the local
343 user would be flashed, but the alias would be used when sending. This
344 has been fixed so that the user name that is flashed is the same as
345 the name that is sent (closes SF #772595).
347 *** Args out of range
349 In rare and non-reproducible circumstances, compilation sometimes
350 threw an "Args out of range" error. Nonetheless, this has been fixed
353 *** mh-forward hard-codes '-mime' Switch on nmh
355 Added new option `mh-compose-forward-as-mime-flag' that controls whether
356 messages are forwarded as MIME attachments (closes SF #827203).
358 *** Not Re-prompted to Sign After Pass Phrase Typo
360 If there were errors when sending a signed message (like getting the
361 pass phrase wrong), the MML markup remained in the draft buffer. The
362 draft buffer is now restored if there is an error (closes SF #839303).
364 *** Font-lock Gets Confused in MH-Letter Buffer
366 If a user manually moved the cursor to the end of the header field
367 separator line (by mouse click or keyboard navigation) and hit Enter
368 to start typing their message, any line in the body with a colon would
369 be fontified with a gray background. This has been fixed (closes SF
372 *** mh-refile-msg Fails to Suggest Folder for Empty Message
374 If you received a message with an empty body from someone who is
375 listed in your aliases file, "o (mh-refile-msg)" failed to suggest the
376 correct folder. This has been fixed (closes SF #917096).
378 *** Error Visiting Folder With no Unseen Messages
380 If you visited a folder without unseen messages and the option "flist:
381 -noshowzero" is present in your ~/.mh_profile, you'd get an error. This
382 has been fixed (closes SF #933954).
386 * Changes in MH-E 7.4.4
388 Version 7.4.4 addresses programmatic issues from the FSF and prepares
389 MH-E for inclusion into an impending GNU Emacs release (21.4). There
390 are no user-visible changes (unless you are using XEmacs on DOS or
391 don't have the cl package installed). Filenames are now unique in
392 their first 8 characters (DOS 8.3 requirement). The runtime dependency
393 on the cl package has been removed. Desktop saving and restoration
394 code moved here from desktop.el.
396 * Changes in MH-E 7.4.3
398 Version 7.4.3 fixes the problem where `mh-identity-list' was not getting
401 * Changes in MH-E 7.4.2
403 Version 7.4.2 fixes the accidental dependence on nmh (closes SF
406 * Changes in MH-E 7.4.1
408 Version 7.4.1 fixes the Makefile so it no longer tries to compile
411 * Changes in MH-E 7.4
413 Version 7.4 contains many new useful features including arbitrary MH
414 range handling, new draft features such as draft form editing, as well
415 as sequence propagation and manipulation. We've also fixed bugs and
416 added a handful of new variables.
418 ** New Features in MH-E 7.4
420 *** Add Arbitrary Ranges to MH-E UI
422 MH-E now handles any legal MH range (such as last:5 or 4 8 10-12)
423 wherever you're prompted for a message number or sequence (closes SF
426 *** Remove Prompting in mh-send
428 Brian Reid's original mhe didn't do prompting anywhere but used forms
429 instead. While we won't go that far, we eliminated prompting where a
430 form is already involved, such as in composing a message.
432 The new customization variable `mh-compose-prompt-flag' can be set to
433 t to get the original behavior (closes SF #745622).
435 *** Use TAB to Switch Fields in Header
437 When composing a message, TAB and SHIFT-TAB can be used to move
438 quickly between header fields. The new customization variable,
439 `mh-compose-skipped-header-fields', contains a list of header fields
440 that are skipped and truncated if they are too long (closes SF
443 *** Alias Completion in Composition Buffer
445 Aliases can be completed in the draft with "M-TAB
446 (mh-letter-complete)". Or, if the customization variable
447 `mh-compose-space-does-completion-flag' is set to t, then a "SPC
448 (mh-letter-complete-or-space)" with do the same thing. If
449 `mh-alias-flash-on-comma' is non-nil, ", (mh-letter-confirm-address)"
450 will show the alias expansion in the minibuffer (closes SF #745634).
452 *** Auto Fields Should be Inserted During Send
454 Fields that were inserted by the multiple personality code when the
455 draft was sent now insert the header fields when the draft is composed
456 to give you a chance to edit them (closes SF #747890).
458 *** mh-index-tick-messages
460 The command "F ' (mh-index-ticked-messages)" creates a buffer with all
461 messages ticked with "' (mh-toggle-tick)" in the folders listed in the
462 new customization variable `mh-index-ticked-messages-folders'. Chances
463 are that if you set `mh-index-new-messages-folders', you'll want to
464 set `mh-index-ticked-messages-folders' accordingly.
466 In addition, a general function, "F q (mh-index-sequenced-messages)"
467 has been provided that displays messages in the `mh-unseen-seq' in the
468 folders listed `mh-index-new-messages-folders', unless a prefix
469 argument is given, in which case you can provide both a list of
470 folders and a sequence (closes SF #718833).
474 If there is a region, "/ r (mh-narrow-to-range)" will only consider
475 those messages in the region. In addition, there is now a stack of
476 folder limits which can be popped with "/ w (mh-widen)". With a prefix
477 arg, all the restrictions are popped off of the stack (closes SF
480 *** Narrow to Ticked Sequence
482 The buffer can now be narrowed to ticked messages with "S '
483 (mh-narrow-to-tick)" (closes SF #732825).
485 *** Display Multiple Buttons for multipart/alternative
487 A new customizable variable,
488 `mh-display-buttons-for-alternatives-flag', was added to display
489 buttons for the alternatives. The default value is nil to retain the
490 current behavior (closes SF #741288).
492 *** Identity Menu Changes
494 A menu item has been added that inserts custom fields if the To or Cc
495 header fields match `mh-auto-fields-list'.
497 ** New Variables in MH-E 7.4
499 *** mh-alias-local-users-prefix
501 This string is prepended to the real names of users from the passwd
502 file. If nil, use the username string unmodified instead of the real
503 name from the gecos field of the passwd file.
505 *** mh-alias-passwd-gecos-comma-separator-flag
507 Non-nil means the gecos field in the passwd file uses comma as a
508 separator. Used to construct aliases for users in the passwd file."
510 *** mh-interpret-number-as-range-flag
512 Non-nil means interpret a number as a range. If the variable is
513 non-nil, and you use an integer, N, when asked for a range to scan,
514 then MH-E uses the range "last:N".
516 *** mh-kill-folder-suppress-prompt-hook
518 This new hook is invoked at the beginning of the `F k
519 (mh-kill-folder)' command. It is a list of functions to be called,
520 with no arguments, which should return a value of non-nil if you
521 should not be asked if you're sure that you want to remove the folder.
522 This is useful for folders that are easily regenerated.
524 The default value of `mh-index-p' suppresses the prompt on folders
525 generated by an index search.
527 WARNING: Use this hook with care. If there is a bug in your hook which
528 returns t on +inbox and you hit `F k' by accident in the +inbox
529 buffer, you will not be happy.
531 *** mh-refile-preserves-sequences-flag
533 Non-nil means that sequences are preserved when messages are refiled.
534 If this variable is non-nil and a message belonging to a sequence
535 other than cur or Previous-Sequence (see mh-profile 5) is refiled then
536 it is put in the same sequence in the destination folder. Additional
537 sequences that should not to be preserved can be specified by setting
538 `mh-unpropagated-sequences' appropriately.
540 *** mh-visible-header-fields
542 Customize this instead of `mh-visible-headers', which is now a defvar.
543 This was done to mimic the relationship between
544 `mh-invisible-header-fields' and `mh-invisible-fields'.
546 ** Variables Deleted in MH-E 7.4
548 *** mh-visible-headers
550 See the paragraph for `mh-visible-header-fields' above.
552 ** Bug Fixes in MH-E 7.4
554 *** Aliases Constantly Reloaded
556 The system aliases are not loaded as often as they were, so the
557 completion speed has been dramatically improved if your passwd file is
558 large (closes SF #693859).
560 *** Folders in MH-Index View Not Saved
562 When you perform a search to produce an MH-Index buffer, the folders
563 that contain the messages are shown. If the MH-Index buffer was
564 deleted, or Emacs was restarted and the corresponding folder
565 rescanned, the folder information would be lost. This has been fixed
566 by saving the information in a file called ".mhe_index" (closes SF
569 *** Ticking Messages in +mhe-index/new
571 If a new message in a buffer created by "F n" was ticked (with "'"),
572 the message would not be added to the tick sequence in the source
573 folder. This has been fixed so that any sequence changes in any index
574 folder (from within MH-E of course) are now reflected back to the
575 corresponding source folder (closes SF #709664).
577 *** Custom Vars Set by a Function
579 The default setting of customization variable `mh-summary-height' is
580 now `nil' which means MH-E will change the size dynamically according
581 to the size of the frame (closes SF #723267).
583 *** Folder Completion Slow
585 The first folder completion was very slow. This has been fixed (closes
588 *** Tick Sequence Persistent When Refiled
590 Sequences are now preserved when messages are refiled (closes SF
593 *** Auto-inserted Header Fields Inconsistent
595 For consistency, all automatically inserted header fields (such as
596 X-Mailer and X-Face) are added when the draft is first presented to
597 you. This also gives you a chance to edit or delete them if necessary
598 (closes SF #745624). Note that we would be distressed if you deleted
601 *** Toolbar Spec Error
603 The following message appeared when displaying a message in XEmacs:
605 Signaling: (error "Toolbar spec must be list or nil" )
607 This has been fixed (closes SF #745655).
609 *** mh-index-search Doesn't Find Short Acronyms
611 Swish typically ignores words with fewer than four letters, but will
612 still look for acronyms. Unfortunately, MH-E was downcasing the input
613 words which defeated this feature. This has been fixed (closes SF
618 * Changes in MH-E 7.3
620 This release includes the new features of an index view of unseen
621 messages in all folders, spam software support, relative folder
622 specification @ support, marking messages, recipient handling by
623 mh-default-folder-list, Face and X-Image-URL header field support, and
624 Fcc completion. Function arguments have been unified. Bugs have been
627 ** New Features in MH-E 7.3
629 *** Unified Function Arguments
631 Any function with MSG-OR-SEQ in its docstring uses the displayed
632 message by default for this argument. However, if a prefix argument is
633 provided, then the user is prompted for a message sequence. If the
634 variable `transient-mark-mode' is non-nil and the mark is active, then
635 the function operates on the messages in the selected region. In a
636 program, MSG-OR-SEQ can be a message number, a list of message
637 numbers, a region in a cons cell, or a sequence.
639 *** MH-Index View of Unseen Messages
641 Use "F n (mh-index-new-messages)" or Folder -> View New Messages menu
642 item to display messages in the `mh-unseen-seq' sequence in folders
643 specified by `mh-index-new-messages-folders'. With a prefix argument,
644 enter a space-separated list of folders, or nothing to search all
647 Like other MH-Index folders, use "v (mh-index-visit-folder)" if you
648 wish to visit the original folder with the unseen message. This is
649 usually not necessary since the original message is annotated if you
650 reply, deleted if you delete the message, or refiled if you refile the
651 message (closes SF #701756).
653 *** Spam Software Support
655 MH-E now supports several spam filters including Bogofilter,
656 SpamProbe, and SpamAssassin. Spam that is mistakenly considered to be
657 good mail can be reclassified as spam with "J b (mh-junk-blacklist)".
658 Conversely, good mail that is accidently considered to be spam can be
659 reclassified with "J w (mh-junk-whitelist)" (closes SF #669518).
661 If a message is blacklisted, and `mh-junk-mail-folder' is a string,
662 then the message is refiled to that folder. If this variable is nil,
663 the message is deleted. If a message is whitelisted, then the message
664 is refiled to `mh-inbox'.
666 To change the spam program being used, customize `mh-junk-program'.
667 This should only be necessary if you have multiple filters on your
668 system and MH-E picked the wrong one. These customization variables
669 are found in the new customization group `mh-junk'.
671 The documentation for the following functions describes what setup is
672 needed for the different spam fighting programs:
674 - `mh-bogofilter-blacklist'
675 - `mh-spamprobe-blacklist'
676 - `mh-spamassassin-blacklist'
678 *** Relative Folder Specification @ Supported
680 You can now use the relative folder marker @ in folder names (closes
685 Messages can now be highlighted with "' (mh-toggle-tick)", Sequence ->
686 Toggle Tick Mark menu item or the "Toggle tick mark" button. These
687 messages are added to the "tick" sequence, although this sequence can
688 be changed in `mh-tick-seq'. The highlighting effect can be modified
689 by customizing `mh-folder-tick-face' (closes SF #623367).
691 There is also a new keybinding "/ ' (mh-narrow-to-tick)" and menu item
692 Sequence -> Narrow to Tick Sequence to narrow the view to the
693 highlighted messages.
695 *** mh-default-folder-list Now Takes Recipients
697 If you wish to file a message based upon the recipient of a message
698 (such as a mailing list), you can now indicate that when filling out
699 the address in the `mh-default-folder-list' customization variable.
701 *** Face Header Field Supported
703 In addition to the X-Face header field, the Face header field, which
704 can display color images, is now supported. As a bonus, the external
705 xface-e21 library is no longer required.
707 *** X-Image-URL Support
709 Images specified in X-Image-URL header fields are now supported.
710 See the customization variable `mh-fetch-x-image-url' to enable this
715 Folders in Fcc fields in message drafts can now be completed with
718 ** New Variables in MH-E 7.3
720 Variables that have been added to MH-E that have not been discussed
721 elsewhere are listed here.
723 *** mh-auto-fields-list
725 Alist of addresses for which header lines are automatically inserted.
726 When a regular expression matches in the To or cc fields of a message,
727 the corresponding header field is automatically inserted in the
728 message header. It also allows the automatic setting of an identity
729 (using `mh-insert-identity') to set an alternate identity when sending
730 messages to a certain person or mailing list.
732 Since this is a more general use of `mh-insert-mail-followup-to-flag'
733 and `mh-insert-mail-followup-to-list', these variables have been removed.
735 *** mh-show-xface-face
737 Face for displaying the X-Face image.
739 *** mh-xemacs-toolbar-position
741 This customization variable allows the user to place the toolbar on
742 the four edges of the frame.
744 *** mh-xemacs-use-toolbar-flag
746 This customization variable is used to enable or disable the toolbar
749 ** Variables Deleted in MH-E 7.3
751 Variables that have been removed from MH-E that have not been
752 discussed elsewhere are listed here.
754 *** mh-decode-content-transfer-encoded-message-flag
756 No longer needed since the external program mimencode is no longer
759 *** mh-index-show-hook
761 This hook was never used, so it was removed.
763 *** mh-tool-bar-reply-3-buttons-flag
765 Obsolete. This functionality is present `mh-tool-bar-folder-buttons'.
767 ** Bug Fixes in MH-E 7.3
769 *** Can't Refile Message
771 Messages with invalid addresses were causing errors in ali which
772 prevented the refiling of messages. The ali error is now shown in the
773 "*MH-E Log*" buffer and refiling suggests the last folder used (closes
776 *** Empty Body Triggers Duped Header
778 If the body was empty the header would be treated like the body and
779 was therefore displayed twice. This has been fixed (closes SF
782 *** mml or mhl Directives Not Always Processed
784 The mml and mhl directives used to create body parts were not
785 processed if one re-edited a draft, or if they added the directives
786 manually. The directives are now always processed upon sending the
787 letter. You may still, of course, use "C-c C-m m (mh-mml-to-mime)" or
788 "C-c C-e (mh-edit-mhn)" to manually create the MIME body parts from
789 the directives and then send the draft.
791 *** mh-alias-grab-from-field Fails
793 MH-E was adding aliases with angle brackets around the address when
794 there wasn't a phrase (usually, the user's name), to go with it. This
795 caused ali to fail which caused problems in MH-E. This is probably a
796 bug in ali, but MH-E no longer inserts angle brackets around the
797 address unless there is a phrase, which avoids the problem (closes SF
802 MH-E is now fully supported under XEmacs and compiles without any
805 In particular, the following now work under XEmacs:
807 - X-Face, Face, and X-Image-URL header fields
808 - MH-E logo in mode line
809 - Emphasis (bold, italics, etc.)
813 *** Indexed Folders Should Respect mh-show-threads-flag
815 Indexed folders are now threaded if `mh-show-threads-flag' is non-nil
818 *** Threading Index View Loses Folder Info
820 This has been fixed (closes SF #709672).
822 *** No Undo Information When Re-editing Drafts
824 Undo is turned on in the draft buffer when using "e (mh-edit-again)"
827 *** Forwarded base64-encoded Messages Are Incorrectly Displayed
829 This has been fixed (closes SF #681518).
831 *** Append to *MH-E Log* Buffer
833 The last 100 lines of log messages are kept in the *MH-E Log* buffer.
834 Previously, the buffer was erased every time it was written (closes SF
835 #685476). In addition, many of the MH-E commands now send their output
836 into this buffer instead of a plethora of other special-purpose
839 *** mh-inc-folder Complains if No Mail and No Current Message
841 The function `mh-inc-folder' no longer calls `mh-show' if point is not
842 on a valid scan line. This keeps `mh-inc-folder' from complaining
845 *** Folder Normalization Strips Leading Slash
847 Leading "/" characters in folder names entered by the user were being
848 lost. This has been fixed (closes SF #676890).
850 *** Print Header Doesn't Show Message
852 When printing a sequence, the header simply indicated that a sequence,
853 but not which one, was being printed and did not show the message
854 number. This has been fixed. If more than one message is printed, a
855 page of the scan lines is printed and its header indicates the
856 sequence or message range. The pages with the actual messages all set
857 the header to the folder and message displayed on that page.
859 *** Aliases Constantly Reloaded
861 Empty lists are now handled properly (closes SF #693859).
863 *** Remove RCS Keywords
865 Removed RCS keywords per Emacs conventions (closes SF #680731).
867 *** Replace Mimencode
869 MH-E was enhanced to decode message based on charset and
870 Content-Transfer-Encoding. This eliminates the need for the external
871 program mimencode (closes SF #674857).
875 * Changes in MH-E 7.2
877 This release includes the new features of filing hints, hierarchical
878 file name completion, indexed search and pick integration, unification
879 between `mh-visit-folder' and the speedbar, a displayed message
880 indicator, buffer name organization, support for mairix indexed
881 search, and last but not least, the MH-E logo has been added to the
882 mode line. Code that handles sequences and message regions runs
883 faster. Bugs have been fixed.
885 ** New Features in MH-E 7.2
889 When you file a message, MH-E now looks for an alias corresponding to
890 the address of the sender and offers that as a default folder (closes
891 SF #657096). The new variable `mh-default-folder-prefix' can be used
892 to put these folders in a sub-folder. The new variable
893 `mh-default-folder-must-exist-flag' means to suppress the suggested
894 folder (thereby providing the previous folder used) if the folder
895 doesn't already exist. The new variable `mh-default-folder-list' can
896 be used to map additional addresses and folders.
898 *** Hierarchical File Name Completion
900 When you completed filenames in the past, you were presented with a
901 list of all your folders at all depths in the tree. Now you are
902 presented with only one level at a time (closes SF #664821).
903 As a result, the variables `mh-auto-folder-collect-flag' and
904 `mh-folder-list-change-hook' are obsolete.
906 *** Indexed Search and Pick Integration
908 The indexed and pick searches have been integrated (closes SF
909 #664816). Both "F s (mh-search-folder)" and "F i (mh-index-search)"
910 use the pick template for forming queries. To submit the query, use
911 "C-c C-c (mh-do-search)" which will use the query method you selected.
912 If you change your mind while forming the query, you can use "C-c C-i
913 (mh-index-do-search)" or "C-c C-p (mh-pick-do-search)" to submit the
914 query using the respective method.
916 Second, the results from a pick search are now saved in a sub-folder
917 of +mhe-index like an indexed search.
919 Third, `pick' is now a valid choice for `mh-index-program'.
921 *** mh-visit-folder Metamorphosis Continues
923 When visiting a folder from the speedbar, only the unseen messages are
924 shown if there are unseen messages. If there aren't any unseen
925 messages, all of the messages are shown if there are fewer than
926 `mh-large-folder' messages; otherwise, the user is prompted for the
927 range of messages to display. The "F v (mh-visit-folder)" command has
928 been modified to mimic this behavior. Use a prefix arg to force the
929 message range prompt.
931 *** Displayed Message Indicator
933 In graphical Emacs, the message that is shown is marked by a triangle
934 in the fringe. In textual Emacs, there is a ">" in the first column
937 *** Buffer Name Organization
939 All ephemeral buffer names start with " *mh" while all interesting
940 buffers start with "*MH-E ". The "*Folders*", "*Sequences*", and
941 "*Recipients*" buffers were therefore renamed to "*MH-E Folders*",
942 "*MH-E Sequences*" and "*MH-E Recipients*" respectively (programmers
943 should see mh-utils.el for the names of the new constants). Also, the
944 output of MH commands is saved in the "*MH-E Log*" buffer.
948 Add choices for `mairix' and `pick'.
950 *** Logo Displayed on Mode Line
952 ** New Variables in MH-E 7.2
954 The new variables have been discussed elsewhere.
956 ** Bug Fixes in MH-E 7.2
958 *** mh-decode-content-transfer-encoded-message
960 Messages that had been encoded with base64 were not decoded. This has
961 been fixed with this new function (closes SF #674190). As a result,
962 the variable `mh-decode-quoted-printable-flag' has been renamed to
963 `mh-decode-content-transfer-encoded-message-flag'.
967 Now restores previous window configuration (closes SF #664828).
971 MH-E was not using the charset defined in the content-type
972 header. This meant that mail in a different charset would not
973 be properly displayed. This has been fixed (closes SF #655123).
977 In XEmacs and Emacs20, this function would always prompt using "To: "
978 instead of using the command argument. This has been fixed (closes SF
983 Unseen messages are now shown in addition to new ones (closes SF
986 *** mh-scan-msg-overflow-regexp
988 Change the variable so that a space is always maintained in the
989 beginning of the scan line.
991 *** mh-swish-execute-search
993 The example configuration file in the docstring didn't show the
994 backslash in the FileRules filename. If the example had been used
995 literally by the user, no files would be indexed! This has been fixed
1000 The "T o (mh-thread-refile)" command did not provide refiling hints
1001 like `mh-refile-msg'. This has been fixed (closes SF #664829).
1003 *** mh-toggle-threads
1005 If the threaded view was modified and then toggled, the standard view
1006 may not have been accurate (as it contained a potentially old first
1007 message to last message range). This has been fixed (closes SF
1010 *** mh-tool-bar-show-set, mh-tool-bar-letter-set, mh-tool-bar-folder-set
1012 Clicking the customize and help buttons now deletes the other windows
1017 The "M-x mh-version" command displayed "Aliasfile: aliases". This has
1018 been fixed (closes SF #664467). See Buffer Name Organization above.
1022 * Changes in MH-E 7.1
1024 This release includes the new features of multiple identities and
1025 alias completion. In addition, indexed searching has been revamped.
1026 Various other features have been added and a few bugs were fixed.
1028 ** New Features in MH-E 7.1
1030 *** Multiple Identities
1032 MH-E now supports multiple identities (closes SF #628782). That means
1033 that you can have different From and Organization header fields (or
1034 any other header field of your choice) as well as different signatures
1035 depending on your context. Usually, the contexts are home and work.
1037 Add your identities to the variable `mh-identity-list' and set the
1038 default identity with the variable `mh-identity-default'. Your
1039 identity can be switched on the fly by using the Identity menu or by
1040 calling "M-x mh-insert-identity RET".
1042 This functionality can be customized within the mh-identity group.
1044 *** Alias Completion and Harvesting
1046 The contributed file mh-alias.el has been rewritten and incorporated
1049 By default, aliases are culled from the system files
1050 "/etc/nmh/MailAliases," "/usr/lib/mh/MailAliases," and "/etc/passwd"
1051 (see `mh-alias-system-aliases') and from your "AliasFile" MH profile
1052 component. These aliases are then used for completion in the
1053 minibuffer when entering addresses. Within the header of the message
1054 draft, "M-TAB (mh-letter-complete)" is used to do alias completion.
1056 The package also provides for alias creation based upon the From
1057 header field of the current message. Use the lasso button
1058 (mh-alias-grab-from-field).
1060 This functionality can be customized within the mh-alias group.
1062 *** Index Folder Updates
1064 The results of an index search "F i (mh-index-search)" are now stored
1065 in a bona fide folder so that you can refile messages and reply to
1066 messages directly from the result folder. This folder is a sub-folder
1067 of +mhe-index and the name is based upon the search string (closes SF
1070 If a prefix argument is given then the search in the current index
1073 The index folder lists the names of the source folders as before.
1074 However, instead of using RET on the name of the folder to visit the
1075 folder, use "v (mh-show-index-visit-folder)" anywhere within the
1076 results to visit that folder narrowed to the results of the search.
1077 Additional functions have been added to navigate including "TAB
1078 (mh-index-next-folder)", and "SHIFT-TAB (mh-index-previous-folder)."
1080 *** mh-visit-folder Interface Updated
1082 A change was made to the prompting of the message range. In general,
1083 you can use the same format for messages and sequences as you can in
1084 MH with a single exception: a single number means to scan that many
1085 messages, rather than scan that message number. This turns out to be
1086 much more useful than visiting a single message and is consistent with
1087 Gnus and the MH-E speedbar (closes SF #655891).
1089 If mh-visit-folder is called non-interactively and RANGE is nil then
1090 all messages are displayed. This behavior is now documented and
1091 provides backwards compatibility.
1093 *** Threading Improvements
1095 After incorporating new mail into a threaded folder, unseen messages
1096 can be spread about. Two new functions have been added to make it
1097 easier to find them: these are "M-n (mh-next-unread-msg)" and "M-p
1098 (mh-previous-unread-msg)" (closes SF #630328)
1100 Two new functions were added to delete and refile threads. They are "T
1101 d (mh-thread-delete)" and "T o (mh-thread-refile)" respectively
1102 (closes SF #630493).
1104 In addition, the key "k" used to be bound to the function
1105 `mh-delete-subject': it is now bound to
1106 `mh-show-delete-subject-or-thread'.
1108 New functions to navigate threads include "T u (mh-thread-ancestor)",
1109 which can jump to the root message of the current thread given an
1110 optional argument, "T n (mh-thread-next-sibling)", and "T p
1111 (mh-thread-previous-sibling)"
1113 *** Refiling of Messages in Region
1115 If mark is active and `transient-mark-mode' is enabled then all the
1116 messages in the region are refiled.
1120 If a signature cannot be identified, but there is a vCard attachment,
1121 then that vCard will be presented as a signature (closes SF #649216).
1123 *** New Info Added to mh-version
1125 Information about Gnus versions available at both compile time and run
1126 time has been added.
1128 ** New Variables in MH-E 7.1
1130 The defcustom groups were reorganized. Rather than iterate the
1131 specific changes here, you are invited to browse the groups with "M-x
1134 *** mh-alias-completion-ignore-case-flag
1136 Non-nil means don't consider case significant in MH alias completion.
1137 This is the default in plain MH, so it is the default here as well. It
1138 can be useful to set this to t if, for example, you use lowercase
1139 aliases for people and uppercase for mailing lists.
1141 *** mh-alias-expand-aliases-flag
1143 Non-nil means to expand aliases entered in the minibuffer. In other
1144 words, aliases entered in the minibuffer will be expanded to the full
1145 address in the message draft. By default, this expansion is not
1148 *** mh-alias-flash-on-comma
1150 Specify whether to flash the translation of the alias or warn if there
1151 isn't a translation of the alias.
1153 *** mh-alias-insert-file
1155 Filename to use to store new MH-E aliases. This variable can also be a
1156 list of filenames, in which case MH-E will prompt for one of them. If
1157 nil, the default, then MH-E will use the first file found in the
1158 "AliasFile" component of the MH profile.
1160 *** mh-alias-insertion-location
1162 Specifies where new aliases are entered in alias files. Options are
1163 sorted alphabetically (the default), at the top of the file or at the
1166 *** mh-alias-local-users
1168 If t, local users are completed in MH-E To: and Cc: prompts.
1170 If you set this variable to a string, it will be executed to generate
1171 a password file. A value of "ypcat passwd" is helpful if NIS is in
1174 *** mh-alias-system-aliases
1176 A list of system files from which to cull aliases. If these files are
1177 modified, they are automatically reread. This list need include only
1178 system aliases and the passwd file, since personal alias files listed
1179 in your "AliasFile" MH profile component are automatically included.
1181 *** mh-identity-default
1183 Default identity to use when `mh-letter-mode' is called.
1185 *** mh-identity-list
1187 List holding MH-E identity.
1189 *** mh-invisible-header-fields
1191 Simple user interface to change `mh-invisible-headers'.
1193 *** mh-letter-complete-function
1195 Function to call when completing outside of fields specific to
1196 aliases. By default, it is bound to 'ispell-complete-word.
1198 *** mh-show-threads-flag
1200 Non-nil means new folders start in threaded mode. Threading large
1201 number of messages can be time consuming. So if the flag is non-nil
1202 then threading will be done only if the number of messages being
1203 threaded is less than `mh-large-folder' (closes SF #646794).
1205 *** mh-tool-bar-folder-buttons
1207 Buttons to include in MH-E folder/show toolbar.
1209 *** mh-tool-bar-letter-buttons
1211 Buttons to include in MH-E letter toolbar.
1213 ** Bug Fixes in MH-E 7.1
1217 Call new function `mh-add-cur-notation' to undo the work of
1218 `mh-remove-cur-notation' if there was no new mail (closes SF #647681).
1222 No longer updates the default `mh-cmd-note' value. This resulted in
1223 the misplacement of the current mark when the message number width
1224 changed (closes SF #643701).
1228 * Changes in MH-E 7.0
1230 This is a major release which includes a lot of new features including
1231 improved MIME handling, speedbar folder browsing, and indexed
1232 searching. In this version, MH-E runs under XEmacs, passes checkdoc,
1233 and compiles clean under all supported platforms.
1235 The "passes checkdoc" feature above required changing the name of
1236 several user-visible variables. It is likely that this affects you.
1237 Please be sure to see the table at the end of these notes and rename
1238 your variables accordingly.
1240 MH-E has been written mh-e, Mh-e, MH-e and MH-E. We have decided that
1241 the proper term should be MH-E. Please try to use MH-E in your
1244 ** New Features in MH-E 7.0
1248 There is now support for the speedbar. Try "M-x speedbar" (closes SF
1251 Press the middle mouse button on the `+' icons to open a folder,
1252 middle mouse button on a folder name to open the folder. Folders with
1253 unseen messages are shown in bold, so this is a handy way to browse
1254 new messages that you have filed with procmail or slocal.
1256 See the new customization variable `mh-large-folder,' which controls
1257 when the speedbar asks for how many messages to scan when opening a
1258 large folder and `mh-speed-run-flists-flag' whose default value of t
1259 means to use the flists command to populate the count of unseen and
1260 total messages in each folder.
1264 Interoperability with swish++, swish, glimpse, and namazu has been
1265 added to enable lightening-fast searches of your mail. If none of
1266 these are present, grep is used. Try "F i (mh-index-search)".
1268 For more information, read the documentation for the functions
1269 `mh-swish++-execute-search,' `mh-swish-execute-search,'
1270 `mh-namazu-execute-search,' or `mh-glimpse-execute-search' depending
1271 on your preferred indexing program to see what kind of setup is needed
1272 to generate the index.
1276 Use "T t (mh-toggle-threads)" to view the threads in the folder. Use
1277 it again to return to a non-threaded view.
1281 Use "? (mh-help)" and "X ? (mh-prefix-help)," where X is a prefix
1282 character, for a brief synopsis in the minibuffer of frequently used
1283 commands. In the MH-Letter or MH-Pick buffers, use "C-c ? (mh-help)"
1284 (closes SF #493740).
1286 *** Folder Keymap Shared by Show Buffer
1288 You can now use the MH-Folder mode commands from the MH-Show buffer.
1289 Because of this, the MH-Show buffer is now read-only (closes SF
1290 #493749 and SF #527946) and you now have to use "M (mh-modify)" to
1295 You no longer have to modify your scan format if your folders have
1296 more than 9999 messages in them. If you've only modified your scan
1297 format file to allow for the wider message numbers, consider using the
1298 default behavior of MH-E and simplify your MH-E configuration
1299 considerably (closes SF #635791).
1301 To do this, you may have to remove your modifications of
1302 `mh-scan.*-regexp' and `mh-cmd-note' and your customization of
1303 `mh-scan-format-file'.
1305 You may still want the updated format files for running MH commands
1306 outside of MH-E; the default of `mh-scan-format-file' will cause them
1309 If you prefer fixed-width message numbers, set the new customization
1310 variable to nil , set this variable to
1311 nil and call `mh-set-cmd-note' with the width specified by the scan format in
1312 `mh-scan-format-file'. For example, the default width is 4, so you would use
1313 "(mh-set-cmd-note 4)" if `mh-scan-format-file' were nil.
1317 MH-E now displays the content of the X-Face header field in the From
1318 field. When sending a message, an X-Face field is appended to the
1319 header if it doesn't already exist and "~/.face" is present. See the
1320 new customization variables `mh-show-use-xface-flag' and `mh-x-face-file'
1321 (closes SF #480770).
1323 MH-E depends on the external x-face package found in
1324 ftp://ftp.jpl.org/pub/elisp/ to do this. The `uncompface' binary is
1325 also required to be in the execute PATH. It can be obtained from:
1326 http://freshmeat.net/redir/compface/1439/url_tgz/compface-1.4.tar.gz.
1328 It has also been observed that if you don't see the faces, you might
1329 have to do this (for unknown reasons):
1331 mv /usr/local/include/compface.h /usr/include/
1333 *** Graphical Smileys
1335 Smiley's are now converted to cute little images. See the new
1336 customization variable `mh-graphical-smileys-flag.'
1340 ASCII formatting is now converted to the appropriate font. For
1341 example, _underline_ is underlined, *bold* appears in bold, /italic/
1342 appears in italic, etc. See `gnus-emphasis-alist' for the whole list.
1343 See the new customization variables `mh-decode-mime' and
1344 `mh-graphical-emphasis-flag.'
1346 *** Attachment Handling
1348 Inline attachments are now displayed. Regular attachments appear as
1349 buttons in show buffer. Use "K TAB (mh-next-button)" or "K SHIFT-TAB
1350 (mh-prev-button)" to cycle through these buttons. Use "K v
1351 (mh-folder-toggle-mime-part)" to view, "K o
1352 (mh-folder-save-mime-part)" to save one part or "K-a
1353 (mh-save-mime-parts)" to save all parts, or "K i
1354 (mh-folder-inline-mime-part)" to view the attachment inline.
1356 See the new customization variable `mh-decode-mime' for additional
1357 information. Other customization variables that affect this new feature
1358 include `mh-store-mime-parts-default-directory' and
1359 `mh-display-buttons-for-inline-parts-flag'.
1361 HTML documents can be viewed inline if Gnus v5.10 and w3 or w3m lisp
1362 packages are present. Set the customization variable
1363 `mm-text-html-renderer' accordingly (closes SF #453352).
1365 *** Quoted-printable Handling
1367 Quoted-printable body parts are now decoded.
1369 *** More Choices for `mh-yank-from-start-of-msg'
1371 Historically, if this variable was t, the entire message, with full
1372 headers would be included and every line would begin with
1373 `mh-ins-buf-prefix.' This usage is deprecated in favor of the setting
1374 `supercite' below. The default has been changed to `attribution.' The
1375 following symbols are now understood:
1377 `body': yank the message minus the header.
1379 `supercite': include the entire message, with full headers. This also
1380 causes the invocation of `sc-cite-original' without the setting of
1381 `mail-citation-hook', now deprecated practice.
1383 `autosupercite': do as for `supercite' automatically when show buffer
1384 matches the message being replied-to.
1386 `attribution': yank the message minus the header and add a simple
1387 attribution line at the top.
1389 `autoattrib': do as for `attribution' automatically when show buffer
1390 matches the message being replied-to.
1392 There is a new customization variable called
1393 `mh-extract-from-attribution-verb' which is used for attribution which
1394 provides a method for setting a different language.
1396 *** Use Gnus mml Instead of mhn
1398 When inserting attachments into a message draft, Gnus mml directives
1399 are now used instead of mhn directives. One beneficial side-effect of
1400 this is that attachments can now appear inline as well as separate.
1402 The new customization variable `mh-compose-insertion' controls whether
1403 Gnus or mhn is used to insert MIME message directives in messages
1404 (default: 'gnus, if the mml library exists).
1406 *** Content-Type Now Obtained Automatically
1408 The value of the Content-Type no longer needs to be entered by the
1411 *** Attachments Automatically Included Upon Send
1413 You no longer have to run "C-c C-e (mh-edit-mhn)" before sending a
1414 message with attachments--this is done automatically when you send the
1415 message with "C-c C-c (mh-send-letter)". There is, however, a new key
1416 binding "C-c C-m m (mh-mml-to-mime)" which is analogous to "C-c C-e
1421 Messages that have been signed or encrypted with GPG are verified and
1422 decrypted automatically. To sign or encrypt a message, use "C-c RET
1423 C-s (mh-mml-secure-message-sign-pgpmime)" and "C-c C-m C-e
1424 (mh-mml-secure-message-encrypt-pgpmime)." You need Gnus version 5.10
1425 for this feature. These functions are provided by the pgg.el package.
1427 Users report "flashing" with the pgg.el package and prefer the gpg.el
1428 package instead. To use gpg.el instead of the pgg.el package you need:
1430 (setq mml2015-use 'gpg)
1432 To mimic automatic encryption in gpg.el, use:
1434 (setq mm-verify-option 'always)
1435 (setq mm-decrypt-option 'always)
1437 The venerable mailcrypt package is also an option. However, now that
1438 show buffers are read-only, mailcrypt version 3.5.6 and older fail
1439 when they attempt to decrypt the contents.
1441 *** Mail-Followup-To Header Field
1443 Support for this controversial field has been added because nmh
1444 supports it (closes SF #627035). If you want to add it to outgoing
1445 mail for selected mailing lists, add those mailing lists to the new
1446 customization variable `mh-insert-mail-followup-to-list.' If you think
1447 this field is evil, set the new customization variable
1448 `mh-insert-mail-followup-to-flag' to nil.
1452 If you update Gnus, you must recompile MH-E. Note that if you are
1453 running the stock version of MH-E that comes with Emacs or the MH-E
1454 package on a Debian GNU/Linux, this is done for you.
1456 ** New Variables in MH-E 7.0
1458 New customization variables not mentioned earlier include:
1460 *** mh-letter-insert-signature-hook
1462 Invoked at the beginning of the "C-c C-s (mh-insert-signature)"
1463 command. Can be used to determine which signature file to use based on
1464 message content. On return, if `mh-signature-file-name' is non-nil
1465 that file will be inserted at the current point in the buffer.
1467 *** mh-show-maximum-size
1469 Maximum size of message (in bytes) to display automatically. Provides
1470 an opportunity to skip over large messages which may be slow to load.
1471 Use a value of 0 to display all messages automatically regardless of
1472 size (closes SF #488696).
1474 *** mh-tool-bar-reply-3-buttons-flag
1476 Non-nil means use three buttons for reply commands in tool-bar. If you
1477 have room on your tool-bar because you are using a large font, you may
1478 set this variable to expand the single reply button into three buttons
1479 that won't lead to minibuffer prompt about who to reply to.
1481 ** Bug Fixes in MH-E 7.0
1483 *** mh-delete-msg, mh-refile-msg, mh-undo
1485 Mandrake Linux includes XEmacs initialization code that binds
1486 `transient-mark-mode' which causes problems in MH-E. These problems
1487 have been fixed (closes SF #541915).
1491 This would sometimes yield a read-only buffer. This has been fixed
1492 (closes SF #624283 and SF #625538).
1496 When using nmh, always specify -mime so as to preserve the original
1501 If you had narrowed to a sequence and then incorporated new mail,
1502 those new messages would not be present in your +inbox when you
1503 widened. This has been fixed (closes SF #489430, SF #489437, SF
1506 *** mh-insert-letter
1508 No longer uses mhl to include a message as this mangled the header and
1509 gave supercite fits (closes SF #629153).
1513 "M-q (fill-paragraph)" now fills quoted paragraphs (for example,
1514 starting with "> ") correctly (closes SF #489927).
1516 *** mh-next-undeleted-msg, mh-previous-undeleted-msg
1518 If there are no more undeleted messages the point remains at its
1519 original position and a message is produced (closes SF #494304).
1523 Now calls `mh-pick-mode-hook' as documented.
1525 *** mh-put-msg-in-seq
1527 Now puts all messages in region in sequence (closes SF #630324).
1529 *** mh-refile-msg, mh-write-msg-to-file
1531 These functions stomped on the variables that held the name of the
1532 last file and folder respectively for the other function. This has
1533 been fixed so that the last folder or file name is preserved (closes
1536 *** mh-region-to-sequence
1538 If the region in MH-Folder was set with "C-x h (mark-whole-buffer)",
1539 you couldn't perform operations on all of the messages as you would
1540 expect. This has been fixed (closes SF #621632).
1544 Performing an undo the first thing after replying would blank out the
1545 entire draft. Now just the insertion of the yanked message is undone
1546 leaving the header and signature intact for additional editing (closes
1551 Now calls `mh-show-mode-hook' as documented (closes SF #627222).
1553 *** mh-subject-thread-to-sequence
1555 Make 'subject sequence a real one, exported to MH. This means you can,
1556 for example, mh-forward it. But it also shows up with a mark in the
1557 scan output (closes SF #489445).
1561 The following bugs have also been closed:
1563 SF #495450: Folder buffer read-only after inc
1564 SF #489706: mh-page-msg bombs out
1565 SF #580772: mh-last-destination is overloaded
1567 *** Variables renamed to conform with Emacs coding conventions
1569 The coding conventions require that boolean variables end in -flag.
1570 The following two tables show which variables were affected (closes SF
1573 Customization Variables (defcustom)
1577 mh-auto-folder-collect mh-auto-folder-collect-flag
1578 mh-bury-show-buffer mh-bury-show-buffer-flag
1579 mh-clean-message-header mh-clean-message-header-flag
1580 mh-decode-quoted-printable mh-decode-quoted-printable-flag
1581 mh-delete-yanked-msg-window mh-delete-yanked-msg-window-flag
1582 mh-do-not-confirm mh-do-not-confirm-flag
1583 mh-highlight-citation-p mh-highlight-citation
1584 mh-insert-x-mailer-p mh-insert-x-mailer-flag
1585 mh-print-background mh-print-background-flag
1586 mh-recenter-summary-p mh-recenter-summary-flag
1587 mh-recursive-folders mh-recursive-folders-flag
1588 mh-reply-show-message-p mh-reply-show-message-flag
1589 mh-show-use-goto-addr mh-show-use-goto-addr-flag
1590 mh-update-sequences-after-mh-show mh-update-sequences-after-mh-show-flag
1592 Regular Variables (defvar)
1596 mh-mhn-compose-insert-p mh-mhn-compose-insert-flag
1597 mh-nmh-p mh-nmh-flag
1598 mh-page-to-next-msg-p mh-page-to-next-msg-flag
1602 * Changes in mh-e 6.1
1604 This is a minor release which includes a few bug fixes. The
1605 distribution now includes the ChangeLog.
1607 ** New Features in mh-e 6.1
1611 Unseen messages now displayed in bold.
1613 *** Viewing folders and sequences
1615 The folder and sequence listings that "F l (mh-list-folders)" and "S l
1616 (mh-list-sequences)" create are now displayed in view mode.
1618 ** Bug Fixes in mh-e 6.1
1620 *** mh-folder-unseen-seq-name
1622 Byte compilation failed when initializing this variable when the
1623 user's MH environment was not set up. This has been fixed (closes
1624 Debian #140232 and Debian #140817).
1628 When forwarding a sequence, the mode of the draft would not be set to
1629 MH-Letter correctly. This has been fixed (closes SF #489448).
1631 *** mh-insert-prefix-string
1633 Fixed to work under XEmacs. Thanks to Will Partain
1634 <partain at dcs.gla.ac.uk>.
1638 mh-quit now cleans up the buffers named `mh-temp-buffer,'
1639 'mh-temp-folders-buffer' and 'mh-temp-sequences-buffer.'
1642 * Changes in mh-e 6.0
1644 mh-e is now maintained at SourceForge (see
1645 http://mh-e.sourceforge.net/). This is where you need to go to obtain
1646 new versions of mh-e, report bugs and receive support.
1648 The maintainers have moved much of their personal configurations into
1649 the codebase, so you may find that you may be able to reduce your mh-e
1650 customizations as well.
1652 There are several incompatibilities in this version from older
1653 versions. Please read the following notes carefully for details. Pay
1654 particular attention to the key binding changes in the MH-Folder
1655 section. If you have customized your scan format, you will want to
1656 read about the new variable `mh-scan-format-file'.
1658 The manual could not be updated in time for this release. It will be
1659 updated in the near future. If the Preface in your manual indicates
1660 the older version (version 1.3, for mh-e version 5.0.2), please check
1661 the following page occasionally for an update:
1663 https://sourceforge.net/project/showfiles.php?group_id=13357
1666 ** New Features in mh-e 6.0
1670 mh-e now uses the customize feature of Emacs. Use "M-x customize-group
1671 mh RET" to customize mh-e.
1675 All mh-e modes now provide menus that contain most mh-e functions.
1679 All mh-e modes now have toolbar buttons for oft-used functions (Emacs 21).
1683 All mh-e buffers now have font-lock keywords. To use, either call
1684 (turn-on-font-lock) from the appropriate hook, or set
1685 `global-font-lock-mode' to t. To customize, use "M-x
1686 customize-apropos-faces ^mh RET".
1688 If you have customized your scan lines, you will have to update your
1689 scan regexps. The existing regexps were changed to extract a match so
1690 you will have to add appropriate grouping constructs to take advantage
1691 of the fontification. Your old settings will continue to work, but the
1692 folder will not be fontified. For example:
1694 (setq mh-good-msg-regexp "^\\(.....\\)[^D^]")
1696 You will most likely have to update the new variable
1697 `mh-scan-subject-regexp' as well. There is another new variable
1698 `mh-scan-date-regexp' which you may also find useful. Run "M-x apropos
1699 mh.*regexp" for a complete list.
1701 *** mail-user-agent support
1703 You can now set `mail-user-agent' to `mh-e-user-agent' so that packages
1704 that need to send mail will use mh-e (closes SF #406883, SF #470024).
1706 *** replgroupcomps support
1708 If you reply to `cc' or `all' and you use nmh, the nmh repl option
1709 -group will be used. This means that the file `replgroupcomps' will be
1710 used. If you have customized `replcomps', you will definitely want to
1711 either copy `$NMH_LIB/replgroupcomps' to your mail directory and modify
1712 it the same way that you modified your `replcomps' file, or simply
1713 copy your `replcomps' file to `replgroupcomps'.
1717 The variable `mh-summary-height' used to have a default of 4. It now
1718 varies from 4 to 10 depending on the height of the frame.
1720 Clicking the mouse on a message shows that message.
1722 Delete, refile and undo now operate on a region (but only if
1723 `transient-mark-mode' is non-nil).
1725 SPC (mh-page-msg) now displays the message if it is not already
1726 visible. If the bottom of a message is showing, SPC (mh-page-msg)
1727 moves to the next message (respecting the direction you are moving
1728 through the folder).
1730 The threading commands "T u (mh-next-unseen-subject-thread)",
1731 "T t (mh-toggle-subject-thread)", "T s (mh-narrow-to-subject-thread)",
1732 and "T k (mh-delete-subject-thread)" have been added. These functions
1733 do not offer threading in the true sense of the word, but do allow
1734 some manipulation by subject.
1736 Major, major keymap changes. This was done to free up movement
1737 commands in the buffer, and to provide for additional features, such
1738 as the threading commands. At the same time, better and more
1739 consistent mnemonics were realized that should make it easier to
1740 remember key bindings.
1742 Added new sub-keymaps for folder commands, sequence commands,
1743 extraction commands, and digest commands which begin with with F, S,
1744 X, and D, respectively. These sub-keymaps allowed some consistency
1745 (e.g., especially with l(ist) and k(ill)).
1747 Here are the actual changes and rationale:
1751 e - Deleted. Already have x. Now used by mh-edit-again.
1752 j - Deleted. Already have g.
1754 M-a e Better mnemonic. Matches rmail. Frees movement command.
1755 M-e E Better mnemonic. Consistent with e.
1756 - S Why not? mh-sort-folder.
1758 M-f Fv Frees movement command
1759 M-f Ff Alias (keep?)
1760 M-f Fo Alias (keep?)
1761 M-k Fk No reason but to keep with folder commands
1762 M-l Fl No reason but to keep with folder commands
1763 M-p Fp No reason but to keep with folder commands
1764 M-r Fr Frees movement command
1765 M-s Fs No reason but to keep with folder commands
1766 M-u Fu No reason but to keep with folder commands
1768 M-% Sd Better mnemonic
1769 M-# Sk Better mnemonic
1770 M-q Sl Better mnemonic
1771 C-xn Sn Frees up standard key binding
1772 % Sp Better mnemonic for putting a message in a sequence
1773 ? Ss Shows sequences that message is in
1774 C-xw Sw Frees up standard key binding
1776 M-n Xs Better mnemonic (extract shar)
1777 M-n Xu Better mnemonic (extract uuencode)
1779 M-SPC D SPC Frees mark command
1780 M-\177 D \177 No reason but to keep with digest commands
1781 M-b Db Frees movement command
1783 As the number of variables increases, it is becoming important to
1784 organize the mh-e namespace. Several variables having to do with the
1785 format of scan lines were renamed, as follows:
1789 mh-good-msg-regexp mh-scan-good-msg-regexp
1790 mh-deleted-msg-regexp mh-scan-deleted-msg-regexp
1791 mh-refiled-msg-regexp mh-scan-refiled-msg-regexp
1792 mh-valid-scan-line mh-scan-valid-regexp
1793 mh-cur-scan-msg-regexp mh-scan-cur-msg-number-regexp
1794 - mh-scan-cur-msg-regexp
1795 - mh-scan-rcpt-regexp
1796 - mh-scan-format-regexp
1797 mh-msg-number-regexp mh-scan-msg-number-regexp
1798 mh-msg-search-regexp mh-scan-msg-search-regexp
1802 While the MIME support is not complete, quoted-printable body parts
1805 Some MTAs quote From at the beginning of the line with a ">". The ">"
1806 is now removed in the display, but not on disk.
1810 New function "C-c C-o (mh-split-line)" splits lines in a draft
1811 preserving the fill prefix and indentation. This is useful when
1812 responding to several sentences in a single paragraph separately.
1814 "M-q (fill-paragraph)" can now be used on the message that is being
1815 replied to. The fill prefix such as "> " is preserved.
1817 You no longer have to run "C-c C-e (mh-edit-mhn)" manually as this is
1818 now done automatically when the message is sent.
1820 The X-Mailer header field is now added to messages as they are sent.
1822 "C-c C-m C-i (mh-mhn-compose-insertion)" now makes a pretty good guess
1823 at the type of file using the `file' command and no longer asks the
1824 user for the media type. If the necessary version of `file' is not
1825 available, the user is asked for the media type as before; however,
1826 the list of media types is now taken from the system mailcap if
1827 available. Failing that, the built-in list of types has been
1828 supplemented so in most cases the type you need should be present
1829 (closes SF #406883, #441179).
1831 ** New Variables in mh-e 6.0
1833 New variables not mentioned earlier include:
1835 *** mh-insert-x-mailer-p
1837 Default value of t means that an X-Mailer header field should be
1840 *** mh-reply-show-message-p
1842 The setting of this variable determines whether the MH show-buffer is
1843 displayed with the current message when using mh-reply without a prefix
1844 argument. Set it to nil if you already include the message
1845 automatically in your draft using "repl: -filter repl.filter" in
1848 *** mh-scan-format-file
1850 Specifies the format file to pass to the scan program. If t, the
1851 format string will be taken from the either `mh-scan-format-mh' or
1852 `mh-scan-format-nmh' depending on whether MH or nmh is in use. If nil,
1853 the default scan output will be used.
1855 If you customize the scan format, you may need to modify a few
1856 variables containing regexps that mh-e uses to identify specific
1857 portions of the output. Use `M-x apropos RET mh-scan.*regexp' to
1858 obtain a list of these variables.
1860 *** mh-scan-format-mh
1862 Scan format string for MH, provided to the scan program via the
1863 -format arg. This format is identical to the default except that
1864 additional hints for fontification have been added to the sixth
1867 *** mh-scan-format-nmh
1869 Scan format string for nmh, provided to the scan program via the
1870 -format arg. This format is identical to the default except that
1871 additional hints for fontification have been added to the sixth
1874 *** mh-show-use-goto-addr
1876 Non-nil means URLs and e-mail addresses are highlighted using
1877 goto-addr in MH-Show buffer.
1879 *** mh-letter-fill-column
1881 Fill column to use in `mh-letter-mode'. This is useful to make the
1882 lines a bit shorter to allow for quoting in replies.
1884 *** mh-folder-updated-hook
1886 Invoked when the actions in a folder (such as moves and deletes) are
1887 performed. Variables that are useful in this hook include
1888 `mh-delete-list' and `mh-refile-list' which can be used to see which
1889 changes are being made to current folder, `mh-current-folder'.
1891 *** mh-unseen-updated-hook
1893 Invoked after the unseen sequence has been updated. The variable
1894 `mh-seen-list' can be used to obtain the list of messages which will
1895 be removed from the unseen sequence
1897 ** Bug Fixes in mh-e 6.0
1899 *** mh-edit-again and mh-extract-rejected-mail
1901 Now insert a header separator (--------) which packages such as
1906 Now uses `mhparam' to set `mh-lib-progs' and `mh-lib'. Added more
1907 directories to `mh-progs' so that mh-e can autoconfigure in more
1908 environments. Chances are that you no longer have to set these
1909 variables, and if you do, you will only have to set `mh-progs'.
1910 Unless, of course, you are using an ancient version of MH that doesn't
1913 *** mh-folder-mode-map
1915 The DEL/<delete>/<backspace> change in Emacs 21 broke
1916 `mh-previous-page'. This has been fixed (closes SF #228907).
1920 If you had "forw: -mime" to your .mh_profile, forwarding a message
1923 Search failed: "^------- Forwarded Message"
1925 In addition, the Subject field was not filled in. This has been fixed
1926 (closes SF #223603).
1930 The user is now always prompted before this action; the variable
1931 `mh-do-not-confirm' is no longer consulted here. Therefore users who
1932 wanted to set `mh-do-not-confirm' but didn't because of the
1933 `mh-kill-folder' dependency may now do so.
1935 *** mh-make-folder-mode-line
1937 Properly deals with folders that do not have any lines in them. Prints
1938 "no msgs" instead of "0 msgs". Does not try to print a range when
1939 there are no messages.
1941 *** mh-mhn-compose-insertion
1943 Now gets the MIME type automatically (assuming the local file command
1944 supports the -i and -b options). If this use of the file command is
1945 not supported, the list of MIME types has been expanded to use the
1946 system's mailcap file.
1950 This variable (t when nmh is in use rather than MH) assumed that the
1951 string "nmh" is in `mh-lib-progs' or `mh-lib'. This has been fixed
1952 (closes SF #441776).
1956 No longer lets you specify an empty folder (closes SF #476824).
1958 *** mh-regenerate-headers
1960 Now suppresses "scan: bad message list" messages.
1964 This function was looking for `mhl' in the wrong place on nmh on
1965 Redhat LINUX 7.0. This has been fixed (closes SF #481128).
1969 Now updates `cur' sequence after a message is shown (closes SF #481772).
1973 Renamed variable and function to `mh-showing-mode' to conform with
1974 minor mode conventions. Added optional arg to function so it would
1975 behave like a normal minor mode: no or nil arg toggles mode, 0 arg
1976 turns off, non-nil turns on. This fixed the error that occurred when
1977 `desktop-create-buffer' recreated mh-e buffers because it was calling
1978 `mh-showing' with an arg.
1982 Fixed for nmh. Now displays mh-e version correctly. Cleaned up output
1983 and display `mh-progs', etc.
1987 Now attempts to stay on the same message number (closes SF #480922).
1989 No longer wipes out pending deletes and refiles without warning
1990 (closes SF #481036).
1993 * Changes in mh-e 5.0.2
1995 This version contains additional minor changes to integrate it with
1996 reporter.el (requires reporter.el version 3.1c or later) and Emacs
1997 19.30. The mh-goto-msg function is much faster, which also speeds up
1998 several other operations.
2001 * Changes in mh-e 5.0.1
2003 This version contains minor changes from mh-e 5.0 to integrate it with
2007 * User-visible changes to mh-e 5.0
2009 Note: This being a major release, there are many internal changes.
2010 This document lists only changes to the external interfaces of mh-e.
2012 When upgrading, you must either explicitly reload the new versions of
2013 all mh-e files that are already loaded or restart your Emacs.
2016 ** Major Changes and New Features in mh-e 5.0
2018 The emphasis for this release has been on consistency and
2019 documentation. Many documentation strings were enhanced. Documentation
2020 strings were changed to comments for internal functions and variables.
2022 *** There is now proper documentation in the form of a 75-page users
2023 manual. The Texinfo source is mh-e.texi; the formatted Info document
2026 *** There is a new command `mh-update-sequences', which updates MH's
2027 idea of what messages are in the Unseen sequence and what is the
2028 current folder and message. `mh-quit' calls it. While
2029 `mh-execute-commands' has always done this updating as a side effect,
2030 the new function is faster.
2032 *** The MH profile entry "Inbox:" is supported.
2034 *** If the show-buffer is modified, the user is queried before mh-e
2035 reuses the buffer to show a different message. This buffer is also
2036 auto-saved and backed up correctly.
2038 *** `mh-store-buffer' is significantly more robust. It now handles
2039 messages created by a wide variety of packaging software. The status
2040 message for `uudecode' includes the name of the file created. An error
2041 is signaled if the subprocess exits with a non-zero status.
2043 *** `mh-search-folder' behaves predictably, adding messages found to
2044 the `search' sequence. It correctly handles the case of no messages
2047 *** `mh-burst-digest' (`M-b') now only rescans the part of the folder
2048 affected by the burst. It is now much faster in a large folder.
2051 ** New Hooks and Customization Variables in mh-e 5.0
2053 *** `mh-default-folder-for-message-function': new name for the old
2054 `mh-msg-folder-hook', which wasn't a hook. The old name was confusing,
2055 leading people to think they could use `add-hook' with it, when
2056 actually `setq' is the correct way.
2058 *** `mh-sortm-args': When this variable is used has changed. Now
2059 `mh-sortm-args' is passed if there IS a prefix argument to
2060 `mh-sort-folder'. The assumption is that for arguments you normally
2061 want, you would specify them in an MH profile entry.
2063 *** `mh-mhn-args': new hook, a list of additional arguments to pass to
2064 the `mhn' program if `mh-edit-mhn' is given a prefix argument.
2066 *** `mh-edit-mhn-hook': new hook called by `mh-edit-mhn', the function
2067 that formats MIME messages.
2069 *** `mh-folder-list-change-hook': new hook, called whenever the cached
2070 list of folders, `mh-folder-list', is changed.
2072 *** `mh-find-path-hook': new hook, called when entering mh-e.
2074 *** `mh-repl-formfile': new variable, used to change the format file
2075 used by `mh-reply' from the default of "replcomps".
2077 *** New variables to customize the scan format and notating:
2078 `mh-note-deleted', `mh-note-refiled', `mh-note-seq', `mh-note-cur',
2079 `mh-note-copied', `mh-note-printed'.
2082 ** Key Binding Changes in mh-e 5.0
2084 *** `RET' runs `mh-show' for consistency with the Finder and Info. The
2085 old binding `.' still works, but `RET' is now the standard binding.
2087 *** `M-<' now runs `mh-first-msg' for consistency with `M->', which
2090 *** `C-c C-f C-d' in MH-Letter mode moves to a Dcc: header field.
2092 *** `C-c C-f C-r' in MH-Letter mode moves to a From: header field.
2094 *** `g' is now the standard binding for `mh-goto-msg'. The old binding
2098 ** Other Improvements and Changes to mh-e 5.0
2100 *** `mh-lpr-command-format' no longer passes the "-p" argument to
2101 `lpr' by default. The mail header typically has the date anyway.
2103 *** When prompting for a sequence name, if no sequences have been used
2104 yet, mh-e will offer the first sequence the current message is in.
2106 *** The patterns of more mailers are recognized by
2107 `mh-extract-rejected-mail'.
2109 *** `mh-insert-prefix-string' no longer wraps the call to the
2110 `mail-citation-hook' function in a `save-excursion' so the hook writer
2111 can choose whether to leave point at the beginning or the end of the
2114 *** `mh-write-msg-to-file': The prompt now refers to "message" or
2115 "message body" depending on which will be written. (This is controlled
2116 by a prefix argument.) The file defaults to the last-used file instead
2117 of supplying only the directory name.
2119 *** mh-e uses message ranges when running MH commands. Thus "rmm 1 2 3
2120 4 6" is now "rmm 1-4 6". This change makes it less likely to overflow
2121 system argument list limits, and it might be faster, too.
2124 ** Bug Fixes to mh-e 5.0
2126 *** mh-e's idea of the unseen sequence now stays in sync with MH's
2129 *** Functions that are supposed to find fields in the message header
2130 no longer look in the message body.
2132 *** mh-e would sometimes fail to remove the "%" from a scan line when
2133 the message was removed from a sequence if the message was also in the
2136 *** The variable `mh-inc-prog' is now correctly used in all places.
2138 *** `mh-pipe-msg' runs the process in the correct directory.
2140 *** A partially scanned folder will no longer lose the "/select"
2141 annotation when you execute marked deletes and refiles with `x'.
2144 * Changes to mh-e 4.0
2146 This file is automatically generated from news-mh-e.txinfo. Do not edit.
2148 [MH-E-ONEWS has been incorporated here and removed. news-mh-e.txinfo
2149 is no longer available.]
2151 Note: there are many internal changes to mh-e in this release. If you
2152 have the previous version loaded into your Emacs, you will probably not
2153 be able to load this version on top of it.
2155 ** New Features in mh-e 4.0
2157 *** Background folder collection. The first time you are prompted for
2158 a folder, you must wait while mh-e collects the names of all existing
2159 folders. Now however, if you abort, collecting will continue in the
2160 background, and you can do something else in Emacs until the
2161 collection completes. Normally, mh-e will begin collecting folders
2162 names in the background when you first load it; you can disable this
2163 feature by setting `mh-auto-folder-collect' to nil.
2165 *** There is support for composing MIME messages using the `mhn'
2166 program from MH 6.8. See the documentation string for mh-edit-mhn.
2167 (While composing a letter, type `C-h k C-c C-e'.) See also mhn(1).
2168 There is as yet no support for reading MIME messages.
2170 *** `mh-show', typically on `.', repositions to the start of the
2171 message if the message is already visible. It used to do nothing in
2174 *** The function `mh-unshar-msg' is renamed `mh-store-msg'. It now
2175 does uudecoding, too. Someday it should do MIME. It remembers the last
2176 directory you used and offers it as the default for next time.
2178 *** New function `mh-header-display', on `,', displays the message
2179 with all headers, including those normally not displayed. Type `.' to
2180 display the message normally again.
2182 *** New function `mh-list-sequences' lists the sequences in use in the
2185 *** New function `mh-version' displays version information about MH
2186 and mh-e. Please use the output in bug reports.
2188 *** `mh-quit' now burys the folder buffer and show buffer.
2191 ** New hooks and customization variables in mh-e 4.0
2193 *** `mh-pick-mode-hook': new hook called by new mode `mh-pick-mode'.
2194 The pick buffer didn't used to have its own mode. Another advantage of
2195 `mh-pick-mode' is that `C-h m' works in the pick buffer.
2197 *** `mail-citation-hook': new variable for supercite.
2199 *** `mh-refile-msg-hook': new hook called by `mh-refile-msg' (and
2200 `mh-refile-or-write-again' when refiling).
2202 *** `mh-msg-folder-hook': new hook used by `mh-refile-msg' and
2203 `mh-to-fcc' to provide a default folder for user prompt.
2205 *** `mh-show-hook': new hook called by `mh-show'.
2207 *** `mh-delete-msg-hook': new hook called by `mh-delete-msg'.
2209 *** `mh-show-mode-hook': new hook called by new mode `mh-show-mode'
2210 for `show-' buffers.
2212 *** `mh-comp-formfile': new variable so can customize `components'
2215 *** `mh-sortm-args': new variable, a list of extra arguments to be
2216 passed to sortm by `mh-sort-folder'. Give an argument to
2217 `mh-sort-folder' to suppress this behavior.
2219 *** `mh-send-prog': new variable so can customize name of `send'
2220 program in case of name conflicts.
2222 *** `mh-scan-prog': new variable so can customize name of `scan'
2223 program to generate custom effects.
2225 *** `mh-inc-prog': new variable so can customize name of `inc' program
2226 to do fancy management of incoming messages.
2228 *** `mh-forwarded-letter-subject': new function used by `mh-forward'
2229 to compute the Subject line of the new message. It is a small function
2230 which can be replaced by the user for customization. Uses the new
2231 variable `mh-forward-subject-format', which allows some simple
2232 customizations without rewriting even `mh-forwarded-letter-subject'.
2234 *** `mh-new-draft-cleaned-headers': new variable, header lines removed
2235 by `mh-edit-again' and `mh-extract-rejected-mail' before offering a
2236 message as a new draft.
2238 *** `mh-signature-file-name': new variable used by
2239 `mh-insert-signature' to so can customize name of the file to insert.
2241 *** `mh-read-address': new function called to read all To: and Cc:
2244 *** `mh-msg-folder-hook': new hook used by `mh-refile-msg' and
2245 `mh-to-fcc' to provide a default folder for user prompt.
2248 ** Key binding changes in mh-e 4.0
2250 *** `,' runs new function `mh-header-display'. It is like `.' but it
2251 displays *all* the headers.
2253 *** `M-#' runs the new function `mh-delete-seq'. One used to have to
2254 type `C-u M-%' to delete a sequence.
2256 *** `<' no longer does `mh-first-msg', but `M->' now does
2257 `mh-last-msg'. This allows first and last to be consistent (`>' was
2258 taken) and is more likely to be discovered by chance anyway.
2260 *** `M-d' runs `mh-redistribute', `r' runs `mh-reply' (on the theory
2261 that the more commonly used function should be easier to type, and the
2262 obscure action of redistributing can be harder to type).
2264 *** `M-o' changed to `C-o' (`mh-write-msg-to-file'). It was
2265 interfering with arrow keys for some people.
2267 *** `M-n' now runs `mh-store-msg' (formerly `mh-unshar-msg').
2269 *** `b' no longer runs `mh-quit'; use `q' instead. `b' may be used in
2270 a future version for something else.
2273 ** Minor improvements to mh-e 4.0
2275 *** The mh-e code is now divided into multiple Emacs Lisp files, so it
2276 starts up faster because Emacs doesn't have to load all of it at once.
2277 (This change also makes it easier for the maintainer to manage
2280 *** When searching for the directory containing the MH programs,
2281 search the user's PATH in addition to the built-in directories, to
2282 increase the chance of finding the MH programs.
2284 *** The subject for a forwarded message no longer has ugly square
2287 *** The name of the folder is no longer appears twice in the show
2290 *** When typing a folder name in the minibuffer, parent folders
2291 complete to the trailing slash (/), for easier typing of subfolders.
2293 *** The folder buffer mode name changed from `mh-e scan' or `mh-e
2294 show' to `MH-Folder', which makes the hook name easier to guess. Added
2295 `mh-showing' to `minor-mode-alist' so there is still an indication in
2296 the mode line of whether messages will be shown automatically.
2298 *** `mh-rename-seq' does completion on the old sequence name.
2300 *** If called by a user who has never used MH on this system before,
2301 mh-e runs the MH program `install-mh' to get them set up.
2303 *** Undo history for previous messages is not kept to avoid wasting
2306 *** The internal temp buffer used by mh-e has `buffer-offer-save'
2307 explicitly nil. This change benefits people who change the
2308 `buffer-offer-save' default.
2311 ** Bug fixes to mh-e 4.0
2313 *** `mh-to-field': don't bomb if no To: field.
2315 *** `mh-get-new-mail': restore annotations, e.g., cur, even if no new
2318 *** `mh-rename-seq': verify that the new seq name was accepted by
2319 `mark' before updating state.
2321 *** `mh-internal-seq': the Previous sequence is not notated, since it
2322 would notate everything scanned.
2324 *** `mh-read-draft': don't call `find-file-noselect' so an
2325 `auto-mode-alist' doesn't trigger `mh-letter-mode-hook' twice. Faster,
2328 *** `mh-show': If user moves onto a message that doesn't exist, don't
2329 leave the cursor in the show pane.
2331 *** `mh-delete-scan-msgs': use `equal', not `=', on the result of
2332 `mh-get-msg-num', since it may be nil.
2334 *** `mh-get-field': do anchored search so searching for `reply-to:'
2335 doesn't find `in-reply-to:'.
2337 *** `mh-widen': do nothing if not narrowed.
2339 *** `mh-clean-message-header': find end of headers even if no body.
2344 paragraph-separate: "[
\f]*$"
2347 arch-tag: f6696cad-eb1b-4c5f-8057-4e3954a98d18