(set-buffer-file-coding-system): New arg NOMODIFY.
[emacs.git] / etc / MH-E-NEWS
blobf82bf4cb045680b26f55d7354930a4eeaa177f99
1 * COPYRIGHT
3 Copyright (C) 2003, 2004 Free Software Foundation, Inc.
4         
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.
9 * Changes in MH-E 7.82
11 Version 7.82 continues to address the saga surrounding the use of CL
12 macros in CVS Emacs and fixes the auto-detection of vanilla MH (SF
13 #1014781).
15 * Changes in MH-E 7.81
17 Version 7.81 fixes a `wrong-type-argument' argument error that
18 sometimes occurred when processing the Message-ID, adds the ";
19 (mh-toggle-mh-decode-mime-flag)" command, and uses ":default" instead
20 of "default" in `mh-identity-handlers' to avoid problems with
21 "Default:" as a user defined field. If you have modified
22 `mh-identity-handlers' in your .emacs, you'll need to rename "default"
23 to ":default". This release also corrects the release numbering; the
24 previous version number was intended to be 7.80.
26 * Changes in MH-E 7.4.80
28 Version 7.4.80 now supports GNU mailutils, S/MIME, picons,
29 which-func-mode, has an improved interface for hiding header fields,
30 improves upon the MH variant detection, and contains many bug fixes.
31 Those of you familiar with the GNU version numbering schemes will
32 recognize this as an alpha release. This does not reflect on the
33 quality of this release which is as high as it has always been.
34 Although we are not ready to release 8.0, we want you to have access
35 to the work that has been hiding in CVS. At the same time we want to
36 make it clear that there are incompatible changes with previous
37 versions.
39 We are planning to release the long-awaited manual update synchronized
40 with version 8.0. We are using documentation from the manual in the
41 docstrings which is hoped to make "C-h f (describe-function)" really
42 useful and create a seamless experience when switching back and forth
43 between the manual and the docstrings. This has been done in about
44 half of the variables and functions in this version.
46 The writing of the manual has revealed a few inconsistencies in the
47 software whose fixes have resulted in incompatible changes, and there
48 may well be more. So, unlike version 7 which was chock full of new
49 features, version 8's strengths will include complete documentation
50 and higher quality.
52 ** New Features in MH-E 7.4.80
54 *** GNU mailutils Support
56 MH-E now supports GNU mailutils 0.4 and higher versions.
58 *** S/MIME Support
60 MH-E now supports S/MIME using Gnus 5.10.6 or higher.
62 *** Picon Support
64 In addition to the other methods of displaying an icon for the sender
65 of a message, MH-E can now display images from a picon directory. The
66 directory search path is found in the `mh-picon-directory-list'
67 variable. More documentation is found in the "facedb" sections in the
68 xfaces man page. [NOTE: need to make mh-picon-directory-list an option
69 and add xfaces facedb documentation to it.]
71 *** X-Image-URL Updates
73 Now support the use of `curl' and `fetch' as alternatives to `wget' to
74 obtain the image. The display of images are controlled with the
75 `mh-show-use-xface-flag' option while the `mh-fetch-x-image-url'
76 option controls how the images are fetched.
78 WARNING: There are security concerns with this feature. Please read
79 the documentation for these options carefully before changing the
80 default.
82 *** Updates to mh-identity-list
84 Note that the field names found in `mh-identity-list' that refer to
85 the fields in `mh-identity-handlers' have changed in an incompatible
86 way from 7.4.4. In general, the symbolic names now have a ":" prefix
87 to avoid collisions with header fields. Before starting Emacs, edit
88 your .emacs and insert ":" before "signature" if you have defined it.
90 You can change your attribution in replies with the new "Attribution
91 Verb" field, and you can set your default GPG user ID with the "GPG
92 key ID" field.
94 Signatures can now be read from the `mh-signature-file-name' variable,
95 or come from a function, in addition to a named file. If you write
96 your own function, variables that you can use include
97 `mh-signature-separator-regexp', `mh-signature-separator',
98 and `mh-signature-separator-p'.
100 The handling of these fields has been moved into a new
101 `mh-identity-handlers' option, an alist of fields (strings) and
102 handlers (functions). Strings are lowercase. Use ":signature" for
103 Signature and ":pgg-default-user-id" for GPG Key ID. The function
104 associated with the string "default" is used if no other functions are
105 appropriate. For this reason, don't name a header field "Default".
107 If you point your signature at a vCard file with a vcf suffix, then it
108 will be incorporated as a vCard body part (closes SF #802723).
110 *** Catchup Command
112 There is a new "F c (mh-catchup)" command that marks all unread
113 messages in the current folder as read.
115 *** Change Content-Type Renderer on the Fly in MH-Show Buffer
117 This has been implemented by adding the key binding "K e
118 (mh-display-with-external-viewer)". For inline text/html parts,
119 buttons aren't displayed by default. In that case use "K t
120 (mh-toggle-mime-buttons)" to display the button before viewing it with
121 an external browser (closes SF #839318).
123 *** Use which-func-mode to Display Folder in Index Mode
125 Turning on `which-func-mode' displays the folder name of the message
126 under the cursor in index folders (closes SF #855520).
128 *** Render Signature and vCard in Italics
130 This has been implemented.  Use `mh-show-signature-face' to customize
131 the face used (closes SF #802722).
133 *** New Print Map
135 There is now a keymap for the printing functions whose prefix is "P".
136 The command "l (mh-print-msg)" has been replaced with "P l". Other new
137 functions in this keymap include:
139     P A         mh-ps-print-toggle-mime
140     P C         mh-ps-print-toggle-color
141     P F         mh-ps-print-toggle-faces
142     P M         mh-ps-print-toggle-mime
143     P f         mh-ps-print-msg-file
144     P l         mh-print-msg
145     P p         mh-ps-print-msg
146     P s         mh-ps-print-msg-show
148 *** Draft Buffer Keymap Changes
150 The keymap in the draft buffer has been modified slightly. The old
151 anonymous ftp and tar composition commands have been reinstated and
152 letter signing and encrypting keymaps have been added.
154 The type of signing or encryption has been generalized so the method
155 is now an option rather than a part of the function's name. The option
156 is `mh-mml-method-default' and choices include PGP (MIME), PGP,
157 S/MIME, or none.
159 Key             7.4.4                   7.4.80
161 C-c RET C-e     mh-mml-secure-message-encrypt-pgpmime
162                                         mh-mml-secure-message-encrypt
163 C-c RET C-s     mh-mml-secure-message-sign-pgpmime
164                                         -
165 C-c RET C-g     -                       mh-mhn-compose-anon-ftp
166 C-c RET C-n     -                       mh-mml-unsecure-message
167 C-c RET C-s     -                       mh-mml-secure-message-sign
168 C-c RET C-t     -                       mh-mhn-compose-external-compressed-tar
169 C-c RET C-s     mh-mml-secure-message-sign-pgpmime
170                                         mh-mml-secure-message-sign
171 C-c RET C-x     -                       mh-mhn-compose-external-type
172 C-c RET e       mh-mml-secure-message-encrypt-pgpmime
173                                         Prefix Command
174 C-c RET e e     -                       mh-mml-secure-message-encrypt
175 C-c RET e s     -                       mh-mml-secure-message-signencrypt
176 C-c RET g       -                       mh-mhn-compose-anon-ftp
177 C-c RET n       -                       mh-mml-unsecure-message
178 C-c RET s       mh-mml-secure-message-sign-pgpmime
179                                         Prefix Command
180 C-c RET s e     -                       mh-mml-secure-message-signencrypt
181 C-c RET s s     -                       mh-mml-secure-message-sign
182 C-c RET t       -                       mh-mhn-compose-external-compressed-tar
183 C-c RET x       -                       mh-mhn-compose-external-type
185 *** Speedbar: Highlight Folders With Unseen
187 The speedbar now renders the folders with unseen messages in boldface
188 which makes them easier to identify (closes SF #623369).
190 *** Quick Key Help
192 The "? (mh-help)" function now displays the help in its own buffer
193 called *MH-E Help* (closes SF #493740 and SF #656631).
195 *** New Startup File mh-e-autoloads.el
197 If you are installing MH-E yourself, then you can replace any
198 autoloads you may have with "(require 'mh-e-autoloads.el)". See the
199 README for details.
201 *** Glimpse Support Removed
203 Since glimpse isn't free, we cannot mention it. Glimpse has been
204 removed from the option `mh-indexer-choices' (closes SF #831276).
206 *** mh-msg-is-in-seq Update
208 Can now specify an alternate message number to "S s
209 (mh-msg-is-in-seq)" with a prefix argument.
211 ** New Variables in MH-E 7.4.80
213 Variables that have been added to MH-E that have not been discussed
214 elsewhere are listed here.
216 *** mail-citation-hook
218 Hook for modifying a citation just inserted in the mail buffer.
220 *** mh-alias-reloaded-hook
222 Invoked by `mh-alias-reload' after reloading aliases.
224 *** mh-auto-fields-prompt-flag
226 Non-nil means to prompt before sending if fields in
227 `mh-auto-fields-list' are inserted.
229 *** mh-default-folder-for-message-function
231 Function to select a default folder for refiling or `Fcc'.
233 *** mh-forward-hook
235 Invoked on the forwarded letter by "f (mh-forward)".
237 *** mh-invisible-header-fields-default
239 List of hidden header fields. The header fields listed in this option
240 are hidden, although you can check off any field that you would like
241 to see. Header fields that you would like to hide that aren't listed
242 can be added to the `mh-invisible-header-fields' option (closes SF
243 #752045).
245 The option `mh-visible-header-fields' has been deleted.
247 *** mh-junk-background
249 If on, spam programs are run in background. This used to be the
250 default behavior but this could overwhelm a system if many messages
251 were black- or whitelisted at once. The spam programs are now run in
252 the foreground, but this option can be used to put them back in the
253 background.
255 *** mh-signature-separator-flag
257 Non-nil means a signature separator should be inserted. It is not
258 recommended that you change this option since various mail user
259 agents, including MH-E, use the separator to present the signature
260 differently, and to suppress the signature when replying or yanking a
261 letter into a draft.
263 *** mh-variant
265 Specifies the variant used by MH-E. The default setting of this option
266 is `Auto-detect' which means that MH-E will automatically choose the
267 first of nmh, MH, or GNU mailutils that it finds in the directories
268 listed in `mh-path', `mh-sys-path', and `exec-path'. If, for example,
269 you have both nmh and mailutils installed and `mh-variant-in-use' was
270 initialized to nmh but you want to use mailutils, then you can set
271 this option to `mailutils'.
273 When this variable is changed, MH-E resets `mh-progs', `mh-lib',
274 `mh-lib-progs', `mh-flists-present-flag', and `mh-variant-in-use'
275 accordingly.
277 If you've set these variables in your .emacs, it is strongly suggested
278 that you comment them out. The MH detection code has been completely
279 rewritten and it is very likely that you no longer to set them and
280 their setting may confuse other MH-E settings.
282 ** Variables Deleted in MH-E
284 Variables that have been removed from MH-E that have not been
285 discussed elsewhere are listed here.
287 *** mh-alias-system-aliases
289 System definitions should not be a user option.
291 *** mh-junk-mail-folder
293 Since this variable can accept values other than folder names, it was
294 renamed to `mh-junk-disposition' to more accurately reflect the content.
296 ** Bug Fixes in MH-E 7.4.80
298 Many bugs were fixed in this version that aren't listed below.
300 *** mh-extract-rejected-mail Can't Do MIME (and Other Formats)
302 Now handles qmail and exim bounces (addresses SF #404965).
304 *** mh-rmail Hangs in XEmacs
306 We've determined that MH-E is incompatible with some versions of
307 XEmacs (21.5.9-21.5.16). More recent versions work fine. If you think
308 our list is too broad, please let us know which version of XEmacs you
309 are using (closes SF #644321).
311 *** Inconsistent Prompts
313 Prompt formats are now consistent throughout the application (closes
314 SF #730470).
316 *** Empty Shell Comments Confuse mh-mhn-directive-present-p
318 If you had a string that matched the regexp "^# $" in your draft, it
319 would cause an error. This has been fixed (closes SF #762458).
321 *** Quote Hashes When mhbuild Directives Used
323 A related bug, if you had empty shell comments but inserted your own
324 directives, you'd get another error from mhbuild. This has been fixed
325 by quoting the hash ("^# $") like this "##" before submitting to
326 mhbuild (closes SF #762464).
328 *** Inconsistent Usage in Scan Formatting Variables
330 The variables:
332     mh-note-cur
333     mh-note-deleted
334     mh-note-dist
335     mh-note-forw
336     mh-note-refiled
337     mh-note-repl
338     mh-note-seq
340 used to contain strings. Although only the first character was read,
341 the entire string would be inserted which may have caused problems.
342 These variables have been converted to character constants so that
343 only a single character can be inserted into the scan line (closes SF
344 #770772).
346 *** Bad Handling of Aliases That Conflict With Local User Names
348 If a user name existed both locally and in the aliases file, the local
349 user would be flashed, but the alias would be used when sending. This
350 has been fixed so that the user name that is flashed is the same as
351 the name that is sent (closes SF #772595).
353 *** Args out of range
355 In rare and non-reproducible circumstances, compilation sometimes
356 threw an "Args out of range" error. Nonetheless, this has been fixed
357 (closes SF #806577).
359 *** mh-forward hard-codes '-mime' Switch on nmh
361 Added new option `mh-compose-forward-as-mime-flag' that controls whether
362 messages are forwarded as MIME attachments (closes SF #827203).
364 *** Not Re-prompted to Sign After Pass Phrase Typo
366 If there were errors when sending a signed message (like getting the
367 pass phrase wrong), the MML markup remained in the draft buffer. The
368 draft buffer is now restored if there is an error (closes SF #839303).
370 *** Font-lock Gets Confused in MH-Letter Buffer
372 If a user manually moved the cursor to the end of the header field
373 separator line (by mouse click or keyboard navigation) and hit Enter
374 to start typing their message, any line in the body with a colon would
375 be fontified with a gray background. This has been fixed (closes SF
376 #855479).
378 *** mh-refile-msg Fails to Suggest Folder for Empty Message
380 If you received a message with an empty body from someone who is
381 listed in your aliases file, "o (mh-refile-msg)" failed to suggest the
382 correct folder. This has been fixed (closes SF #917096).
384 *** Error Visiting Folder With no Unseen Messages
386 If you visited a folder without unseen messages and the option "flist:
387 -noshowzero" is present in your ~/.mh_profile, you'd get an error. This
388 has been fixed (closes SF #933954).
392 * Changes in MH-E 7.4.4
394 Version 7.4.4 addresses programmatic issues from the FSF and prepares
395 MH-E for inclusion into an impending GNU Emacs release (21.4). There
396 are no user-visible changes (unless you are using XEmacs on DOS or
397 don't have the cl package installed). Filenames are now unique in
398 their first 8 characters (DOS 8.3 requirement). The runtime dependency
399 on the cl package has been removed. Desktop saving and restoration
400 code moved here from desktop.el.
402 * Changes in MH-E 7.4.3
404 Version 7.4.3 fixes the problem where `mh-identity-list' was not getting
405 set from .emacs.
407 * Changes in MH-E 7.4.2
409 Version 7.4.2 fixes the accidental dependence on nmh (closes SF
410 #791021).
412 * Changes in MH-E 7.4.1
414 Version 7.4.1 fixes the Makefile so it no longer tries to compile
415 mh-unit.el.
417 * Changes in MH-E 7.4
419 Version 7.4 contains many new useful features including arbitrary MH
420 range handling, new draft features such as draft form editing, as well
421 as sequence propagation and manipulation. We've also fixed bugs and
422 added a handful of new variables.
424 ** New Features in MH-E 7.4
426 *** Add Arbitrary Ranges to MH-E UI
428 MH-E now handles any legal MH range (such as last:5 or 4 8 10-12)
429 wherever you're prompted for a message number or sequence (closes SF
430 #728638).
432 *** Remove Prompting in mh-send
434 Brian Reid's original mhe didn't do prompting anywhere but used forms
435 instead. While we won't go that far, we eliminated prompting where a
436 form is already involved, such as in composing a message.
438 The new customization variable `mh-compose-prompt-flag' can be set to
439 t to get the original behavior (closes SF #745622).
441 *** Use TAB to Switch Fields in Header
443 When composing a message, TAB and SHIFT-TAB can be used to move
444 quickly between header fields. The new customization variable,
445 `mh-compose-skipped-header-fields', contains a list of header fields
446 that are skipped and truncated if they are too long (closes SF
447 #745627).
449 *** Alias Completion in Composition Buffer
451 Aliases can be completed in the draft with "M-TAB
452 (mh-letter-complete)". Or, if the customization variable
453 `mh-compose-space-does-completion-flag' is set to t, then a "SPC
454 (mh-letter-complete-or-space)" with do the same thing. If
455 `mh-alias-flash-on-comma' is non-nil, ", (mh-letter-confirm-address)"
456 will show the alias expansion in the minibuffer (closes SF #745634).
458 *** Auto Fields Should be Inserted During Send
460 Fields that were inserted by the multiple personality code when the
461 draft was sent now insert the header fields when the draft is composed
462 to give you a chance to edit them (closes SF #747890).
464 *** mh-index-tick-messages
466 The command "F ' (mh-index-ticked-messages)" creates a buffer with all
467 messages ticked with "' (mh-toggle-tick)" in the folders listed in the
468 new customization variable `mh-index-ticked-messages-folders'. Chances
469 are that if you set `mh-index-new-messages-folders', you'll want to
470 set `mh-index-ticked-messages-folders' accordingly.
472 In addition, a general function, "F q (mh-index-sequenced-messages)"
473 has been provided that displays messages in the `mh-unseen-seq' in the
474 folders listed `mh-index-new-messages-folders', unless a prefix
475 argument is given, in which case you can provide both a list of
476 folders and a sequence (closes SF #718833).
478 *** Narrow to Region
480 If there is a region, "/ r (mh-narrow-to-range)" will only consider
481 those messages in the region. In addition, there is now a stack of
482 folder limits which can be popped with "/ w (mh-widen)". With a prefix
483 arg, all the restrictions are popped off of the stack (closes SF
484 #732823).
486 *** Narrow to Ticked Sequence
488 The buffer can now be narrowed to ticked messages with "S '
489 (mh-narrow-to-tick)" (closes SF #732825).
491 *** Display Multiple Buttons for multipart/alternative
493 A new customizable variable,
494 `mh-display-buttons-for-alternatives-flag', was added to display
495 buttons for the alternatives. The default value is nil to retain the
496 current behavior (closes SF #741288).
498 *** Identity Menu Changes
500 A menu item has been added that inserts custom fields if the To or Cc
501 header fields match `mh-auto-fields-list'.
503 ** New Variables in MH-E 7.4
505 *** mh-alias-local-users-prefix
507 This string is prepended to the real names of users from the passwd
508 file. If nil, use the username string unmodified instead of the real
509 name from the gecos field of the passwd file.
511 *** mh-alias-passwd-gecos-comma-separator-flag
513 Non-nil means the gecos field in the passwd file uses comma as a
514 separator. Used to construct aliases for users in the passwd file."
516 *** mh-interpret-number-as-range-flag
518 Non-nil means interpret a number as a range. If the variable is
519 non-nil, and you use an integer, N, when asked for a range to scan,
520 then MH-E uses the range "last:N".
522 *** mh-kill-folder-suppress-prompt-hook
524 This new hook is invoked at the beginning of the `F k
525 (mh-kill-folder)' command. It is a list of functions to be called,
526 with no arguments, which should return a value of non-nil if you
527 should not be asked if you're sure that you want to remove the folder.
528 This is useful for folders that are easily regenerated.
530 The default value of `mh-index-p' suppresses the prompt on folders
531 generated by an index search.
533 WARNING: Use this hook with care. If there is a bug in your hook which
534 returns t on +inbox and you hit `F k' by accident in the +inbox
535 buffer, you will not be happy.
537 *** mh-refile-preserves-sequences-flag
539 Non-nil means that sequences are preserved when messages are refiled.
540 If this variable is non-nil and a message belonging to a sequence
541 other than cur or Previous-Sequence (see mh-profile 5) is refiled then
542 it is put in the same sequence in the destination folder. Additional
543 sequences that should not to be preserved can be specified by setting
544 `mh-unpropagated-sequences' appropriately.
546 *** mh-visible-header-fields
548 Customize this instead of `mh-visible-headers', which is now a defvar.
549 This was done to mimic the relationship between
550 `mh-invisible-header-fields' and `mh-invisible-fields'.
552 ** Variables Deleted in MH-E 7.4
554 *** mh-visible-headers
556 See the paragraph for `mh-visible-header-fields' above.
558 ** Bug Fixes in MH-E 7.4
560 *** Aliases Constantly Reloaded
562 The system aliases are not loaded as often as they were, so the
563 completion speed has been dramatically improved if your passwd file is
564 large (closes SF #693859).
566 *** Folders in MH-Index View Not Saved
568 When you perform a search to produce an MH-Index buffer, the folders
569 that contain the messages are shown. If the MH-Index buffer was
570 deleted, or Emacs was restarted and the corresponding folder
571 rescanned, the folder information would be lost. This has been fixed
572 by saving the information in a file called ".mhe_index" (closes SF
573 #701762).
575 *** Ticking Messages in +mhe-index/new
577 If a new message in a buffer created by "F n" was ticked (with "'"),
578 the message would not be added to the tick sequence in the source
579 folder. This has been fixed so that any sequence changes in any index
580 folder (from within MH-E of course) are now reflected back to the
581 corresponding source folder (closes SF #709664).
583 *** Custom Vars Set by a Function
585 The default setting of customization variable `mh-summary-height' is
586 now `nil' which means MH-E will change the size dynamically according
587 to the size of the frame (closes SF #723267).
589 *** Folder Completion Slow
591 The first folder completion was very slow. This has been fixed (closes
592 SF #730426).
594 *** Tick Sequence Persistent When Refiled
596 Sequences are now preserved when messages are refiled (closes SF
597 #737128).
599 *** Auto-inserted Header Fields Inconsistent
601 For consistency, all automatically inserted header fields (such as
602 X-Mailer and X-Face) are added when the draft is first presented to
603 you. This also gives you a chance to edit or delete them if necessary
604 (closes SF #745624). Note that we would be distressed if you deleted
605 the X-Mailer field.
607 *** Toolbar Spec Error
609 The following message appeared when displaying a message in XEmacs:
611   Signaling: (error "Toolbar spec must be list or nil" )
613 This has been fixed (closes SF #745655).
615 *** mh-index-search Doesn't Find Short Acronyms
617 Swish typically ignores words with fewer than four letters, but will
618 still look for acronyms. Unfortunately, MH-E was downcasing the input
619 words which defeated this feature. This has been fixed (closes SF
620 #755718).
624 * Changes in MH-E 7.3
626 This release includes the new features of an index view of unseen
627 messages in all folders, spam software support, relative folder
628 specification @ support, marking messages, recipient handling by
629 mh-default-folder-list, Face and X-Image-URL header field support, and
630 Fcc completion. Function arguments have been unified. Bugs have been
631 fixed.
633 ** New Features in MH-E 7.3
635 *** Unified Function Arguments
637 Any function with MSG-OR-SEQ in its docstring uses the displayed
638 message by default for this argument. However, if a prefix argument is
639 provided, then the user is prompted for a message sequence. If the
640 variable `transient-mark-mode' is non-nil and the mark is active, then
641 the function operates on the messages in the selected region. In a
642 program, MSG-OR-SEQ can be a message number, a list of message
643 numbers, a region in a cons cell, or a sequence.
645 *** MH-Index View of Unseen Messages
647 Use "F n (mh-index-new-messages)" or Folder -> View New Messages menu
648 item to display messages in the `mh-unseen-seq' sequence in folders
649 specified by `mh-index-new-messages-folders'. With a prefix argument,
650 enter a space-separated list of folders, or nothing to search all
651 folders.
653 Like other MH-Index folders, use "v (mh-index-visit-folder)" if you
654 wish to visit the original folder with the unseen message. This is
655 usually not necessary since the original message is annotated if you
656 reply, deleted if you delete the message, or refiled if you refile the
657 message (closes SF #701756).
659 *** Spam Software Support
661 MH-E now supports several spam filters including Bogofilter,
662 SpamProbe, and SpamAssassin. Spam that is mistakenly considered to be
663 good mail can be reclassified as spam with "J b (mh-junk-blacklist)".
664 Conversely, good mail that is accidently considered to be spam can be
665 reclassified with "J w (mh-junk-whitelist)" (closes SF #669518).
667 If a message is blacklisted, and `mh-junk-mail-folder' is a string,
668 then the message is refiled to that folder. If this variable is nil,
669 the message is deleted. If a message is whitelisted, then the message
670 is refiled to `mh-inbox'.
672 To change the spam program being used, customize `mh-junk-program'.
673 This should only be necessary if you have multiple filters on your
674 system and MH-E picked the wrong one. These customization variables
675 are found in the new customization group `mh-junk'.
677 The documentation for the following functions describes what setup is
678 needed for the different spam fighting programs:
680   - `mh-bogofilter-blacklist'
681   - `mh-spamprobe-blacklist'
682   - `mh-spamassassin-blacklist'
684 *** Relative Folder Specification @ Supported
686 You can now use the relative folder marker @ in folder names (closes
687 SF #666774).
689 *** Marking Messages
691 Messages can now be highlighted with "' (mh-toggle-tick)", Sequence ->
692 Toggle Tick Mark menu item or the "Toggle tick mark" button. These
693 messages are added to the "tick" sequence, although this sequence can
694 be changed in `mh-tick-seq'. The highlighting effect can be modified
695 by customizing `mh-folder-tick-face' (closes SF #623367).
697 There is also a new keybinding "/ ' (mh-narrow-to-tick)" and menu item
698 Sequence -> Narrow to Tick Sequence to narrow the view to the
699 highlighted messages.
701 *** mh-default-folder-list Now Takes Recipients
703 If you wish to file a message based upon the recipient of a message
704 (such as a mailing list), you can now indicate that when filling out
705 the address in the `mh-default-folder-list' customization variable.
707 *** Face Header Field Supported
709 In addition to the X-Face header field, the Face header field, which
710 can display color images, is now supported. As a bonus, the external
711 xface-e21 library is no longer required.
713 *** X-Image-URL Support
715 Images specified in X-Image-URL header fields are now supported.
716 See the customization variable `mh-fetch-x-image-url' to enable this
717 support.
719 *** Fcc Completion
721 Folders in Fcc fields in message drafts can now be completed with
722 M-TAB.
724 ** New Variables in MH-E 7.3
726 Variables that have been added to MH-E that have not been discussed
727 elsewhere are listed here.
729 *** mh-auto-fields-list
731 Alist of addresses for which header lines are automatically inserted.
732 When a regular expression matches in the To or cc fields of a message,
733 the corresponding header field is automatically inserted in the
734 message header. It also allows the automatic setting of an identity
735 (using `mh-insert-identity') to set an alternate identity when sending
736 messages to a certain person or mailing list.
738 Since this is a more general use of `mh-insert-mail-followup-to-flag'
739 and `mh-insert-mail-followup-to-list', these variables have been removed.
741 *** mh-show-xface-face
743 Face for displaying the X-Face image.
745 *** mh-xemacs-toolbar-position
747 This customization variable allows the user to place the toolbar on
748 the four edges of the frame.
750 *** mh-xemacs-use-toolbar-flag
752 This customization variable is used to enable or disable the toolbar
753 under XEmacs.
755 ** Variables Deleted in MH-E 7.3
757 Variables that have been removed from MH-E that have not been
758 discussed elsewhere are listed here.
760 *** mh-decode-content-transfer-encoded-message-flag
762 No longer needed since the external program mimencode is no longer
763 used.
765 *** mh-index-show-hook
767 This hook was never used, so it was removed.
769 *** mh-tool-bar-reply-3-buttons-flag
771 Obsolete. This functionality is present `mh-tool-bar-folder-buttons'.
773 ** Bug Fixes in MH-E 7.3
775 *** Can't Refile Message
777 Messages with invalid addresses were causing errors in ali which
778 prevented the refiling of messages. The ali error is now shown in the
779 "*MH-E Log*" buffer and refiling suggests the last folder used (closes
780 SF #680388).
782 *** Empty Body Triggers Duped Header
784 If the body was empty the header would be treated like the body and
785 was therefore displayed twice. This has been fixed (closes SF
786 #681162).
788 *** mml or mhl Directives Not Always Processed
790 The mml and mhl directives used to create body parts were not
791 processed if one re-edited a draft, or if they added the directives
792 manually. The directives are now always processed upon sending the
793 letter. You may still, of course, use "C-c C-m m (mh-mml-to-mime)" or
794 "C-c C-e (mh-edit-mhn)" to manually create the MIME body parts from
795 the directives and then send the draft.
797 *** mh-alias-grab-from-field Fails
799 MH-E was adding aliases with angle brackets around the address when
800 there wasn't a phrase (usually, the user's name), to go with it. This
801 caused ali to fail which caused problems in MH-E. This is probably a
802 bug in ali, but MH-E no longer inserts angle brackets around the
803 address unless there is a phrase, which avoids the problem (closes SF
804 #690216).
806 *** XEmacs Fixes
808 MH-E is now fully supported under XEmacs and compiles without any
809 warnings.
811 In particular, the following now work under XEmacs:
813 - X-Face, Face, and X-Image-URL header fields
814 - MH-E logo in mode line
815 - Emphasis (bold, italics, etc.)
816 - Smilies
817 - Toolbar
819 *** Indexed Folders Should Respect mh-show-threads-flag
821 Indexed folders are now threaded if `mh-show-threads-flag' is non-nil
822 (closes SF #709667).
824 *** Threading Index View Loses Folder Info
826 This has been fixed (closes SF #709672).
828 *** No Undo Information When Re-editing Drafts
830 Undo is turned on in the draft buffer when using "e (mh-edit-again)"
831 (closes SF #712777).
833 *** Forwarded base64-encoded Messages Are Incorrectly Displayed
835 This has been fixed (closes SF #681518).
837 *** Append to *MH-E Log* Buffer
839 The last 100 lines of log messages are kept in the *MH-E Log* buffer.
840 Previously, the buffer was erased every time it was written (closes SF
841 #685476). In addition, many of the MH-E commands now send their output
842 into this buffer instead of a plethora of other special-purpose
843 buffers.
845 *** mh-inc-folder Complains if No Mail and No Current Message
847 The function `mh-inc-folder' no longer calls `mh-show' if point is not
848 on a valid scan line. This keeps `mh-inc-folder' from complaining
849 (closes SF #678115).
851 *** Folder Normalization Strips Leading Slash
853 Leading "/" characters in folder names entered by the user were being
854 lost. This has been fixed (closes SF #676890).
856 *** Print Header Doesn't Show Message
858 When printing a sequence, the header simply indicated that a sequence,
859 but not which one, was being printed and did not show the message
860 number. This has been fixed. If more than one message is printed, a
861 page of the scan lines is printed and its header indicates the
862 sequence or message range. The pages with the actual messages all set
863 the header to the folder and message displayed on that page.
865 *** Aliases Constantly Reloaded
867 Empty lists are now handled properly (closes SF #693859).
869 *** Remove RCS Keywords
871 Removed RCS keywords per Emacs conventions (closes SF #680731).
873 *** Replace Mimencode
875 MH-E was enhanced to decode message based on charset and
876 Content-Transfer-Encoding. This eliminates the need for the external
877 program mimencode (closes SF #674857).
881 * Changes in MH-E 7.2
883 This release includes the new features of filing hints, hierarchical
884 file name completion, indexed search and pick integration, unification
885 between `mh-visit-folder' and the speedbar, a displayed message
886 indicator, buffer name organization, support for mairix indexed
887 search, and last but not least, the MH-E logo has been added to the
888 mode line. Code that handles sequences and message regions runs
889 faster. Bugs have been fixed.
891 ** New Features in MH-E 7.2
893 *** Filing Hints
895 When you file a message, MH-E now looks for an alias corresponding to
896 the address of the sender and offers that as a default folder (closes
897 SF #657096). The new variable `mh-default-folder-prefix' can be used
898 to put these folders in a sub-folder. The new variable
899 `mh-default-folder-must-exist-flag' means to suppress the suggested
900 folder (thereby providing the previous folder used) if the folder
901 doesn't already exist. The new variable `mh-default-folder-list' can
902 be used to map additional addresses and folders.
904 *** Hierarchical File Name Completion
906 When you completed filenames in the past, you were presented with a
907 list of all your folders at all depths in the tree. Now you are
908 presented with only one level at a time (closes SF #664821).
909 As a result, the variables `mh-auto-folder-collect-flag' and
910 `mh-folder-list-change-hook' are obsolete.
912 *** Indexed Search and Pick Integration
914 The indexed and pick searches have been integrated (closes SF
915 #664816). Both "F s (mh-search-folder)" and "F i (mh-index-search)"
916 use the pick template for forming queries. To submit the query, use
917 "C-c C-c (mh-do-search)" which will use the query method you selected.
918 If you change your mind while forming the query, you can use "C-c C-i
919 (mh-index-do-search)" or "C-c C-p (mh-pick-do-search)" to submit the
920 query using the respective method.
922 Second, the results from a pick search are now saved in a sub-folder
923 of +mhe-index like an indexed search.
925 Third, `pick' is now a valid choice for `mh-index-program'.
927 *** mh-visit-folder Metamorphosis Continues
929 When visiting a folder from the speedbar, only the unseen messages are
930 shown if there are unseen messages. If there aren't any unseen
931 messages, all of the messages are shown if there are fewer than
932 `mh-large-folder' messages; otherwise, the user is prompted for the
933 range of messages to display. The "F v (mh-visit-folder)" command has
934 been modified to mimic this behavior. Use a prefix arg to force the
935 message range prompt.
937 *** Displayed Message Indicator
939 In graphical Emacs, the message that is shown is marked by a triangle
940 in the fringe. In textual Emacs, there is a ">" in the first column
941 (closes SF #664824).
943 *** Buffer Name Organization
945 All ephemeral buffer names start with " *mh" while all interesting
946 buffers start with "*MH-E ". The "*Folders*", "*Sequences*", and
947 "*Recipients*" buffers were therefore renamed to "*MH-E Folders*",
948 "*MH-E Sequences*" and "*MH-E Recipients*" respectively (programmers
949 should see mh-utils.el for the names of the new constants). Also, the
950 output of MH commands is saved in the "*MH-E Log*" buffer.
952 *** mh-index-program
954 Add choices for `mairix' and `pick'.
956 *** Logo Displayed on Mode Line
958 ** New Variables in MH-E 7.2
960 The new variables have been discussed elsewhere.
962 ** Bug Fixes in MH-E 7.2
964 *** mh-decode-content-transfer-encoded-message
966 Messages that had been encoded with base64 were not decoded. This has
967 been fixed with this new function (closes SF #674190). As a result,
968 the variable `mh-decode-quoted-printable-flag' has been renamed to
969 `mh-decode-content-transfer-encoded-message-flag'.
971 *** mh-kill-folder
973 Now restores previous window configuration (closes SF #664828).
975 *** mh-mime-display
977 MH-E was not using the charset defined in the content-type
978 header. This meant that mail in a different charset would not
979 be properly displayed. This has been fixed (closes SF #655123).
981 *** mh-read-address
983 In XEmacs and Emacs20, this function would always prompt using "To: "
984 instead of using the command argument. This has been fixed (closes SF
985 #670913).
987 *** mh-rmail
989 Unseen messages are now shown in addition to new ones (closes SF
990 #667542).
992 *** mh-scan-msg-overflow-regexp
994 Change the variable so that a space is always maintained in the
995 beginning of the scan line.
997 *** mh-swish-execute-search
999 The example configuration file in the docstring didn't show the
1000 backslash in the FileRules filename. If the example had been used
1001 literally by the user, no files would be indexed! This has been fixed
1002 (closes SF #665888).
1004 *** mh-thread-refile
1006 The "T o (mh-thread-refile)" command did not provide refiling hints
1007 like `mh-refile-msg'. This has been fixed (closes SF #664829).
1009 *** mh-toggle-threads
1011 If the threaded view was modified and then toggled, the standard view
1012 may not have been accurate (as it contained a potentially old first
1013 message to last message range). This has been fixed (closes SF
1014 #626117).
1016 *** mh-tool-bar-show-set, mh-tool-bar-letter-set, mh-tool-bar-folder-set
1018 Clicking the customize and help buttons now deletes the other windows
1019 in the frame.
1021 *** mh-version
1023 The "M-x mh-version" command displayed "Aliasfile: aliases". This has
1024 been fixed (closes SF #664467). See Buffer Name Organization above.
1028 * Changes in MH-E 7.1
1030 This release includes the new features of multiple identities and
1031 alias completion. In addition, indexed searching has been revamped.
1032 Various other features have been added and a few bugs were fixed.
1034 ** New Features in MH-E 7.1
1036 *** Multiple Identities
1038 MH-E now supports multiple identities (closes SF #628782). That means
1039 that you can have different From and Organization header fields (or
1040 any other header field of your choice) as well as different signatures
1041 depending on your context. Usually, the contexts are home and work.
1043 Add your identities to the variable `mh-identity-list' and set the
1044 default identity with the variable `mh-identity-default'. Your
1045 identity can be switched on the fly by using the Identity menu or by
1046 calling "M-x mh-insert-identity RET".
1048 This functionality can be customized within the mh-identity group.
1050 *** Alias Completion and Harvesting
1052 The contributed file mh-alias.el has been rewritten and incorporated
1053 into MH-E.
1055 By default, aliases are culled from the system files
1056 "/etc/nmh/MailAliases," "/usr/lib/mh/MailAliases," and "/etc/passwd"
1057 (see `mh-alias-system-aliases') and from your "AliasFile" MH profile
1058 component. These aliases are then used for completion in the
1059 minibuffer when entering addresses. Within the header of the message
1060 draft, "M-TAB (mh-letter-complete)" is used to do alias completion.
1062 The package also provides for alias creation based upon the From
1063 header field of the current message. Use the lasso button
1064 (mh-alias-grab-from-field).
1066 This functionality can be customized within the mh-alias group.
1068 *** Index Folder Updates
1070 The results of an index search "F i (mh-index-search)" are now stored
1071 in a bona fide folder so that you can refile messages and reply to
1072 messages directly from the result folder. This folder is a sub-folder
1073 of +mhe-index and the name is based upon the search string (closes SF
1074 #623321).
1076 If a prefix argument is given then the search in the current index
1077 buffer is redone.
1079 The index folder lists the names of the source folders as before.
1080 However, instead of using RET on the name of the folder to visit the
1081 folder, use "v (mh-show-index-visit-folder)" anywhere within the
1082 results to visit that folder narrowed to the results of the search.
1083 Additional functions have been added to navigate including "TAB
1084 (mh-index-next-folder)", and "SHIFT-TAB (mh-index-previous-folder)."
1086 *** mh-visit-folder Interface Updated
1088 A change was made to the prompting of the message range. In general,
1089 you can use the same format for messages and sequences as you can in
1090 MH with a single exception: a single number means to scan that many
1091 messages, rather than scan that message number. This turns out to be
1092 much more useful than visiting a single message and is consistent with
1093 Gnus and the MH-E speedbar (closes SF #655891).
1095 If mh-visit-folder is called non-interactively and RANGE is nil then
1096 all messages are displayed. This behavior is now documented and
1097 provides backwards compatibility.
1099 *** Threading Improvements
1101 After incorporating new mail into a threaded folder, unseen messages
1102 can be spread about. Two new functions have been added to make it
1103 easier to find them: these are "M-n (mh-next-unread-msg)" and "M-p
1104 (mh-previous-unread-msg)" (closes SF #630328)
1106 Two new functions were added to delete and refile threads. They are "T
1107 d (mh-thread-delete)" and "T o (mh-thread-refile)" respectively
1108 (closes SF #630493).
1110 In addition, the key "k" used to be bound to the function
1111 `mh-delete-subject': it is now bound to
1112 `mh-show-delete-subject-or-thread'.
1114 New functions to navigate threads include "T u (mh-thread-ancestor)",
1115 which can jump to the root message of the current thread given an
1116 optional argument, "T n (mh-thread-next-sibling)", and "T p
1117 (mh-thread-previous-sibling)"
1119 *** Refiling of Messages in Region
1121 If mark is active and `transient-mark-mode' is enabled then all the
1122 messages in the region are refiled.
1124 *** vCard Handling
1126 If a signature cannot be identified, but there is a vCard attachment,
1127 then that vCard will be presented as a signature (closes SF #649216).
1129 *** New Info Added to mh-version
1131 Information about Gnus versions available at both compile time and run
1132 time has been added.
1134 ** New Variables in MH-E 7.1
1136 The defcustom groups were reorganized. Rather than iterate the
1137 specific changes here, you are invited to browse the groups with "M-x
1138 mh-customize RET".
1140 *** mh-alias-completion-ignore-case-flag
1142 Non-nil means don't consider case significant in MH alias completion.
1143 This is the default in plain MH, so it is the default here as well. It
1144 can be useful to set this to t if, for example, you use lowercase
1145 aliases for people and uppercase for mailing lists.
1147 *** mh-alias-expand-aliases-flag
1149 Non-nil means to expand aliases entered in the minibuffer. In other
1150 words, aliases entered in the minibuffer will be expanded to the full
1151 address in the message draft. By default, this expansion is not
1152 performed.
1154 *** mh-alias-flash-on-comma
1156 Specify whether to flash the translation of the alias or warn if there
1157 isn't a translation of the alias.
1159 *** mh-alias-insert-file
1161 Filename to use to store new MH-E aliases. This variable can also be a
1162 list of filenames, in which case MH-E will prompt for one of them. If
1163 nil, the default, then MH-E will use the first file found in the
1164 "AliasFile" component of the MH profile.
1166 *** mh-alias-insertion-location
1168 Specifies where new aliases are entered in alias files. Options are
1169 sorted alphabetically (the default), at the top of the file or at the
1170 bottom.
1172 *** mh-alias-local-users
1174 If t, local users are completed in MH-E To: and Cc: prompts.
1176 If you set this variable to a string, it will be executed to generate
1177 a password file. A value of "ypcat passwd" is helpful if NIS is in
1178 use.
1180 *** mh-alias-system-aliases
1182 A list of system files from which to cull aliases. If these files are
1183 modified, they are automatically reread. This list need include only
1184 system aliases and the passwd file, since personal alias files listed
1185 in your "AliasFile" MH profile component are automatically included.
1187 *** mh-identity-default
1189 Default identity to use when `mh-letter-mode' is called.
1191 *** mh-identity-list
1193 List holding MH-E identity.
1195 *** mh-invisible-header-fields
1197 Simple user interface to change `mh-invisible-headers'.
1199 *** mh-letter-complete-function
1201 Function to call when completing outside of fields specific to
1202 aliases. By default, it is bound to 'ispell-complete-word.
1204 *** mh-show-threads-flag
1206 Non-nil means new folders start in threaded mode. Threading large
1207 number of messages can be time consuming. So if the flag is non-nil
1208 then threading will be done only if the number of messages being
1209 threaded is less than `mh-large-folder' (closes SF #646794).
1211 *** mh-tool-bar-folder-buttons
1213 Buttons to include in MH-E folder/show toolbar.
1215 *** mh-tool-bar-letter-buttons
1217 Buttons to include in MH-E letter toolbar.
1219 ** Bug Fixes in MH-E 7.1
1221 *** mh-get-new-mail
1223 Call new function `mh-add-cur-notation' to undo the work of
1224 `mh-remove-cur-notation' if there was no new mail (closes SF #647681).
1226 *** mh-set-cmd-note
1228 No longer updates the default `mh-cmd-note' value. This resulted in
1229 the misplacement of the current mark when the message number width
1230 changed (closes SF #643701).
1234 * Changes in MH-E 7.0
1236 This is a major release which includes a lot of new features including
1237 improved MIME handling, speedbar folder browsing, and indexed
1238 searching. In this version, MH-E runs under XEmacs, passes checkdoc,
1239 and compiles clean under all supported platforms.
1241 The "passes checkdoc" feature above required changing the name of
1242 several user-visible variables. It is likely that this affects you.
1243 Please be sure to see the table at the end of these notes and rename
1244 your variables accordingly.
1246 MH-E has been written mh-e, Mh-e, MH-e and MH-E. We have decided that
1247 the proper term should be MH-E. Please try to use MH-E in your
1248 writing.
1250 ** New Features in MH-E 7.0
1252 *** Speedbar
1254 There is now support for the speedbar. Try "M-x speedbar" (closes SF
1255 #503727).
1257 Press the middle mouse button on the `+' icons to open a folder,
1258 middle mouse button on a folder name to open the folder. Folders with
1259 unseen messages are shown in bold, so this is a handy way to browse
1260 new messages that you have filed with procmail or slocal.
1262 See the new customization variable `mh-large-folder,' which controls
1263 when the speedbar asks for how many messages to scan when opening a
1264 large folder and `mh-speed-run-flists-flag' whose default value of t
1265 means to use the flists command to populate the count of unseen and
1266 total messages in each folder.
1268 *** Indexed Search
1270 Interoperability with swish++, swish, glimpse, and namazu has been
1271 added to enable lightening-fast searches of your mail. If none of
1272 these are present, grep is used. Try "F i (mh-index-search)".
1274 For more information, read the documentation for the functions
1275 `mh-swish++-execute-search,' `mh-swish-execute-search,'
1276 `mh-namazu-execute-search,' or `mh-glimpse-execute-search' depending
1277 on your preferred indexing program to see what kind of setup is needed
1278 to generate the index.
1280 *** Threading
1282 Use "T t (mh-toggle-threads)" to view the threads in the folder. Use
1283 it again to return to a non-threaded view.
1285 *** Brief Help
1287 Use "? (mh-help)" and "X ? (mh-prefix-help)," where X is a prefix
1288 character, for a brief synopsis in the minibuffer of frequently used
1289 commands. In the MH-Letter or MH-Pick buffers, use "C-c ? (mh-help)"
1290 (closes SF #493740).
1292 *** Folder Keymap Shared by Show Buffer
1294 You can now use the MH-Folder mode commands from the MH-Show buffer.
1295 Because of this, the MH-Show buffer is now read-only (closes SF
1296 #493749 and SF #527946) and you now have to use "M (mh-modify)" to
1297 edit a message.
1299 *** Better Scanning
1301 You no longer have to modify your scan format if your folders have
1302 more than 9999 messages in them. If you've only modified your scan
1303 format file to allow for the wider message numbers, consider using the
1304 default behavior of MH-E and simplify your MH-E configuration
1305 considerably (closes SF #635791).
1307 To do this, you may have to remove your modifications of
1308 `mh-scan.*-regexp' and `mh-cmd-note' and your customization of
1309 `mh-scan-format-file'.
1311 You may still want the updated format files for running MH commands
1312 outside of MH-E; the default of `mh-scan-format-file' will cause them
1313 to be ignored.
1315 If you prefer fixed-width message numbers, set the new customization
1316 variable to nil , set this variable to
1317 nil and call `mh-set-cmd-note' with the width specified by the scan format in
1318 `mh-scan-format-file'. For example, the default width is 4, so you would use
1319 "(mh-set-cmd-note 4)" if `mh-scan-format-file' were nil.
1321 *** X-Face
1323 MH-E now displays the content of the X-Face header field in the From
1324 field. When sending a message, an X-Face field is appended to the
1325 header if it doesn't already exist and "~/.face" is present. See the
1326 new customization variables `mh-show-use-xface-flag' and `mh-x-face-file'
1327 (closes SF #480770).
1329 MH-E depends on the external x-face package found in
1330 ftp://ftp.jpl.org/pub/elisp/ to do this. The `uncompface' binary is
1331 also required to be in the execute PATH. It can be obtained from:
1332 http://freshmeat.net/redir/compface/1439/url_tgz/compface-1.4.tar.gz.
1334 It has also been observed that if you don't see the faces, you might
1335 have to do this (for unknown reasons):
1337     mv /usr/local/include/compface.h /usr/include/
1339 *** Graphical Smileys
1341 Smiley's are now converted to cute little images. See the new
1342 customization variable `mh-graphical-smileys-flag.'
1344 *** Text Emphasis
1346 ASCII formatting is now converted to the appropriate font. For
1347 example, _underline_ is underlined, *bold* appears in bold, /italic/
1348 appears in italic, etc. See `gnus-emphasis-alist' for the whole list.
1349 See the new customization variables `mh-decode-mime' and
1350 `mh-graphical-emphasis-flag.'
1352 *** Attachment Handling
1354 Inline attachments are now displayed. Regular attachments appear as
1355 buttons in show buffer. Use "K TAB (mh-next-button)" or "K SHIFT-TAB
1356 (mh-prev-button)" to cycle through these buttons. Use "K v
1357 (mh-folder-toggle-mime-part)" to view, "K o
1358 (mh-folder-save-mime-part)" to save one part or "K-a
1359 (mh-save-mime-parts)" to save all parts, or "K i
1360 (mh-folder-inline-mime-part)" to view the attachment inline.
1362 See the new customization variable `mh-decode-mime' for additional
1363 information. Other customization variables that affect this new feature
1364 include `mh-store-mime-parts-default-directory' and
1365 `mh-display-buttons-for-inline-parts-flag'.
1367 HTML documents can be viewed inline if Gnus v5.10 and w3 or w3m lisp
1368 packages are present. Set the customization variable
1369 `mm-text-html-renderer' accordingly (closes SF #453352).
1371 *** Quoted-printable Handling
1373 Quoted-printable body parts are now decoded.
1375 *** More Choices for `mh-yank-from-start-of-msg'
1377 Historically, if this variable was t, the entire message, with full
1378 headers would be included and every line would begin with
1379 `mh-ins-buf-prefix.' This usage is deprecated in favor of the setting
1380 `supercite' below. The default has been changed to `attribution.' The
1381 following symbols are now understood:
1383 `body': yank the message minus the header.
1385 `supercite': include the entire message, with full headers. This also
1386 causes the invocation of `sc-cite-original' without the setting of
1387 `mail-citation-hook', now deprecated practice.
1389 `autosupercite': do as for `supercite' automatically when show buffer
1390 matches the message being replied-to.
1392 `attribution': yank the message minus the header and add a simple
1393 attribution line at the top.
1395 `autoattrib': do as for `attribution' automatically when show buffer
1396 matches the message being replied-to.
1398 There is a new customization variable called
1399 `mh-extract-from-attribution-verb' which is used for attribution which
1400 provides a method for setting a different language.
1402 *** Use Gnus mml Instead of mhn
1404 When inserting attachments into a message draft, Gnus mml directives
1405 are now used instead of mhn directives. One beneficial side-effect of
1406 this is that attachments can now appear inline as well as separate.
1408 The new customization variable `mh-compose-insertion' controls whether
1409 Gnus or mhn is used to insert MIME message directives in messages
1410 (default: 'gnus, if the mml library exists).
1412 *** Content-Type Now Obtained Automatically
1414 The value of the Content-Type no longer needs to be entered by the
1415 user.
1417 *** Attachments Automatically Included Upon Send
1419 You no longer have to run "C-c C-e (mh-edit-mhn)" before sending a
1420 message with attachments--this is done automatically when you send the
1421 message with "C-c C-c (mh-send-letter)". There is, however, a new key
1422 binding "C-c C-m m (mh-mml-to-mime)" which is analogous to "C-c C-e
1423 (mh-edit-mhn)".
1425 *** GPG Handling
1427 Messages that have been signed or encrypted with GPG are verified and
1428 decrypted automatically. To sign or encrypt a message, use "C-c RET
1429 C-s (mh-mml-secure-message-sign-pgpmime)" and "C-c C-m C-e
1430 (mh-mml-secure-message-encrypt-pgpmime)." You need Gnus version 5.10
1431 for this feature. These functions are provided by the pgg.el package.
1433 Users report "flashing" with the pgg.el package and prefer the gpg.el
1434 package instead. To use gpg.el instead of the pgg.el package you need:
1436   (setq mml2015-use 'gpg)
1438 To mimic automatic encryption in gpg.el, use:
1440   (setq mm-verify-option 'always)
1441   (setq mm-decrypt-option 'always)
1443 The venerable mailcrypt package is also an option. However, now that
1444 show buffers are read-only, mailcrypt version 3.5.6 and older fail
1445 when they attempt to decrypt the contents.
1447 *** Mail-Followup-To Header Field
1449 Support for this controversial field has been added because nmh
1450 supports it (closes SF #627035). If you want to add it to outgoing
1451 mail for selected mailing lists, add those mailing lists to the new
1452 customization variable `mh-insert-mail-followup-to-list.' If you think
1453 this field is evil, set the new customization variable
1454 `mh-insert-mail-followup-to-flag' to nil.
1456 *** Gnus Issues
1458 If you update Gnus, you must recompile MH-E. Note that if you are
1459 running the stock version of MH-E that comes with Emacs or the MH-E
1460 package on a Debian GNU/Linux, this is done for you.
1462 ** New Variables in MH-E 7.0
1464 New customization variables not mentioned earlier include:
1466 *** mh-letter-insert-signature-hook
1468 Invoked at the beginning of the "C-c C-s (mh-insert-signature)"
1469 command. Can be used to determine which signature file to use based on
1470 message content. On return, if `mh-signature-file-name' is non-nil
1471 that file will be inserted at the current point in the buffer.
1473 *** mh-show-maximum-size
1475 Maximum size of message (in bytes) to display automatically. Provides
1476 an opportunity to skip over large messages which may be slow to load.
1477 Use a value of 0 to display all messages automatically regardless of
1478 size (closes SF #488696).
1480 *** mh-tool-bar-reply-3-buttons-flag
1482 Non-nil means use three buttons for reply commands in tool-bar. If you
1483 have room on your tool-bar because you are using a large font, you may
1484 set this variable to expand the single reply button into three buttons
1485 that won't lead to minibuffer prompt about who to reply to.
1487 ** Bug Fixes in MH-E 7.0
1489 *** mh-delete-msg, mh-refile-msg, mh-undo
1491 Mandrake Linux includes XEmacs initialization code that binds
1492 `transient-mark-mode' which causes problems in MH-E. These problems
1493 have been fixed (closes SF #541915).
1495 *** mh-edit-again
1497 This would sometimes yield a read-only buffer. This has been fixed
1498 (closes SF #624283 and SF #625538).
1500 *** mh-forward
1502 When using nmh, always specify -mime so as to preserve the original
1503 message(s).
1505 *** mh-inc-folder
1507 If you had narrowed to a sequence and then incorporated new mail,
1508 those new messages would not be present in your +inbox when you
1509 widened. This has been fixed (closes SF #489430, SF #489437, SF
1510 #629233).
1512 *** mh-insert-letter
1514 No longer uses mhl to include a message as this mangled the header and
1515 gave supercite fits (closes SF #629153).
1517 *** mh-letter-mode
1519 "M-q (fill-paragraph)" now fills quoted paragraphs (for example,
1520 starting with "> ") correctly (closes SF #489927).
1522 *** mh-next-undeleted-msg, mh-previous-undeleted-msg
1524 If there are no more undeleted messages the point remains at its
1525 original position and a message is produced (closes SF #494304).
1527 *** mh-pick-mode
1529 Now calls `mh-pick-mode-hook' as documented.
1531 *** mh-put-msg-in-seq
1533 Now puts all messages in region in sequence (closes SF #630324).
1535 *** mh-refile-msg, mh-write-msg-to-file
1537 These functions stomped on the variables that held the name of the
1538 last file and folder respectively for the other function. This has
1539 been fixed so that the last folder or file name is preserved (closes
1540 SF #580772).
1542 *** mh-region-to-sequence
1544 If the region in MH-Folder was set with "C-x h (mark-whole-buffer)",
1545 you couldn't perform operations on all of the messages as you would
1546 expect. This has been fixed (closes SF #621632).
1548 *** mh-reply
1550 Performing an undo the first thing after replying would blank out the
1551 entire draft. Now just the insertion of the yanked message is undone
1552 leaving the header and signature intact for additional editing (closes
1553 SF #623693).
1555 *** mh-show-mode
1557 Now calls `mh-show-mode-hook' as documented (closes SF #627222).
1559 *** mh-subject-thread-to-sequence
1561 Make 'subject sequence a real one, exported to MH. This means you can,
1562 for example, mh-forward it. But it also shows up with a mark in the
1563 scan output (closes SF #489445).
1565 *** Other Bug Fixes
1567 The following bugs have also been closed:
1569 SF #495450: Folder buffer read-only after inc
1570 SF #489706: mh-page-msg bombs out
1571 SF #580772: mh-last-destination is overloaded
1573 *** Variables renamed to conform with Emacs coding conventions
1575 The coding conventions require that boolean variables end in -flag.
1576 The following two tables show which variables were affected (closes SF
1577 #627015).
1579 Customization Variables (defcustom)
1581 Old Name                               New Name
1583 mh-auto-folder-collect                 mh-auto-folder-collect-flag
1584 mh-bury-show-buffer                    mh-bury-show-buffer-flag
1585 mh-clean-message-header                mh-clean-message-header-flag
1586 mh-decode-quoted-printable             mh-decode-quoted-printable-flag
1587 mh-delete-yanked-msg-window            mh-delete-yanked-msg-window-flag
1588 mh-do-not-confirm                      mh-do-not-confirm-flag
1589 mh-highlight-citation-p                mh-highlight-citation
1590 mh-insert-x-mailer-p                   mh-insert-x-mailer-flag
1591 mh-print-background                    mh-print-background-flag
1592 mh-recenter-summary-p                  mh-recenter-summary-flag
1593 mh-recursive-folders                   mh-recursive-folders-flag
1594 mh-reply-show-message-p                mh-reply-show-message-flag
1595 mh-show-use-goto-addr                  mh-show-use-goto-addr-flag
1596 mh-update-sequences-after-mh-show      mh-update-sequences-after-mh-show-flag
1598 Regular Variables (defvar)
1600 Old Name                               New Name
1602 mh-mhn-compose-insert-p                mh-mhn-compose-insert-flag
1603 mh-nmh-p                               mh-nmh-flag
1604 mh-page-to-next-msg-p                  mh-page-to-next-msg-flag
1608 * Changes in mh-e 6.1
1610 This is a minor release which includes a few bug fixes. The
1611 distribution now includes the ChangeLog.
1613 ** New Features in mh-e 6.1
1615 *** Fontification
1617 Unseen messages now displayed in bold.
1619 *** Viewing folders and sequences
1621 The folder and sequence listings that "F l (mh-list-folders)" and "S l
1622 (mh-list-sequences)" create are now displayed in view mode.
1624 ** Bug Fixes in mh-e 6.1
1626 *** mh-folder-unseen-seq-name
1628 Byte compilation failed when initializing this variable when the
1629 user's MH environment was not set up. This has been fixed (closes
1630 Debian #140232 and Debian #140817).
1632 *** mh-forward
1634 When forwarding a sequence, the mode of the draft would not be set to
1635 MH-Letter correctly. This has been fixed (closes SF #489448).
1637 *** mh-insert-prefix-string
1639 Fixed to work under XEmacs. Thanks to Will Partain
1640 <partain at dcs.gla.ac.uk>.
1642 *** mh-quit
1644 mh-quit now cleans up the buffers named `mh-temp-buffer,'
1645 'mh-temp-folders-buffer' and 'mh-temp-sequences-buffer.'
1648 * Changes in mh-e 6.0
1650 mh-e is now maintained at SourceForge (see
1651 http://mh-e.sourceforge.net/). This is where you need to go to obtain
1652 new versions of mh-e, report bugs and receive support.
1654 The maintainers have moved much of their personal configurations into
1655 the codebase, so you may find that you may be able to reduce your mh-e
1656 customizations as well.
1658 There are several incompatibilities in this version from older
1659 versions. Please read the following notes carefully for details. Pay
1660 particular attention to the key binding changes in the MH-Folder
1661 section. If you have customized your scan format, you will want to
1662 read about the new variable `mh-scan-format-file'.
1664 The manual could not be updated in time for this release. It will be
1665 updated in the near future. If the Preface in your manual indicates
1666 the older version (version 1.3, for mh-e version 5.0.2), please check
1667 the following page occasionally for an update:
1669   https://sourceforge.net/project/showfiles.php?group_id=13357
1672 ** New Features in mh-e 6.0
1674 *** Customization
1676 mh-e now uses the customize feature of Emacs. Use "M-x customize-group
1677 mh RET" to customize mh-e.
1679 *** Menus
1681 All mh-e modes now provide menus that contain most mh-e functions.
1683 *** Toolbars
1685 All mh-e modes now have toolbar buttons for oft-used functions (Emacs 21).
1687 *** Fontification
1689 All mh-e buffers now have font-lock keywords. To use, either call
1690 (turn-on-font-lock) from the appropriate hook, or set
1691 `global-font-lock-mode' to t. To customize, use "M-x
1692 customize-apropos-faces ^mh RET".
1694 If you have customized your scan lines, you will have to update your
1695 scan regexps. The existing regexps were changed to extract a match so
1696 you will have to add appropriate grouping constructs to take advantage
1697 of the fontification. Your old settings will continue to work, but the
1698 folder will not be fontified. For example:
1700   (setq mh-good-msg-regexp  "^\\(.....\\)[^D^]")
1702 You will most likely have to update the new variable
1703 `mh-scan-subject-regexp' as well. There is another new variable
1704 `mh-scan-date-regexp' which you may also find useful. Run "M-x apropos
1705 mh.*regexp" for a complete list.
1707 *** mail-user-agent support
1709 You can now set `mail-user-agent' to `mh-e-user-agent' so that packages
1710 that need to send mail will use mh-e (closes SF #406883, SF #470024).
1712 *** replgroupcomps support
1714 If you reply to `cc' or `all' and you use nmh, the nmh repl option
1715 -group will be used. This means that the file `replgroupcomps' will be
1716 used. If you have customized `replcomps', you will definitely want to
1717 either copy `$NMH_LIB/replgroupcomps' to your mail directory and modify
1718 it the same way that you modified your `replcomps' file, or simply
1719 copy your `replcomps' file to `replgroupcomps'.
1721 *** MH-Folder mode
1723 The variable `mh-summary-height' used to have a default of 4. It now
1724 varies from 4 to 10 depending on the height of the frame.
1726 Clicking the mouse on a message shows that message.
1728 Delete, refile and undo now operate on a region (but only if
1729 `transient-mark-mode' is non-nil).
1731 SPC (mh-page-msg) now displays the message if it is not already
1732 visible. If the bottom of a message is showing, SPC (mh-page-msg)
1733 moves to the next message (respecting the direction you are moving
1734 through the folder).
1736 The threading commands "T u (mh-next-unseen-subject-thread)",
1737 "T t (mh-toggle-subject-thread)", "T s (mh-narrow-to-subject-thread)",
1738 and "T k (mh-delete-subject-thread)" have been added. These functions
1739 do not offer threading in the true sense of the word, but do allow
1740 some manipulation by subject.
1742 Major, major keymap changes. This was done to free up movement
1743 commands in the buffer, and to provide for additional features, such
1744 as the threading commands. At the same time, better and more
1745 consistent mnemonics were realized that should make it easier to
1746 remember key bindings.
1748 Added new sub-keymaps for folder commands, sequence commands,
1749 extraction commands, and digest commands which begin with with F, S,
1750 X, and D, respectively. These sub-keymaps allowed some consistency
1751 (e.g., especially with l(ist) and k(ill)).
1753 Here are the actual changes and rationale:
1755 Old     New     Rationale
1757 e       -       Deleted. Already have x. Now used by mh-edit-again.
1758 j       -       Deleted. Already have g.
1760 M-a     e       Better mnemonic. Matches rmail. Frees movement command.
1761 M-e     E       Better mnemonic. Consistent with e.
1762 -       S       Why not? mh-sort-folder.
1764 M-f     Fv      Frees movement command
1765 M-f     Ff      Alias (keep?)
1766 M-f     Fo      Alias (keep?)
1767 M-k     Fk      No reason but to keep with folder commands
1768 M-l     Fl      No reason but to keep with folder commands
1769 M-p     Fp      No reason but to keep with folder commands
1770 M-r     Fr      Frees movement command
1771 M-s     Fs      No reason but to keep with folder commands
1772 M-u     Fu      No reason but to keep with folder commands
1774 M-%     Sd      Better mnemonic
1775 M-#     Sk      Better mnemonic
1776 M-q     Sl      Better mnemonic
1777 C-xn    Sn      Frees up standard key binding
1778 %       Sp      Better mnemonic for putting a message in a sequence
1779 ?       Ss      Shows sequences that message is in
1780 C-xw    Sw      Frees up standard key binding
1782 M-n     Xs      Better mnemonic (extract shar)
1783 M-n     Xu      Better mnemonic (extract uuencode)
1785 M-SPC   D SPC   Frees mark command
1786 M-\177  D \177  No reason but to keep with digest commands
1787 M-b     Db      Frees movement command
1789 As the number of variables increases, it is becoming important to
1790 organize the mh-e namespace. Several variables having to do with the
1791 format of scan lines were renamed, as follows:
1793 Old                             New
1795 mh-good-msg-regexp              mh-scan-good-msg-regexp
1796 mh-deleted-msg-regexp           mh-scan-deleted-msg-regexp
1797 mh-refiled-msg-regexp           mh-scan-refiled-msg-regexp
1798 mh-valid-scan-line              mh-scan-valid-regexp
1799 mh-cur-scan-msg-regexp          mh-scan-cur-msg-number-regexp
1800 -                               mh-scan-cur-msg-regexp
1801 -                               mh-scan-rcpt-regexp
1802 -                               mh-scan-format-regexp
1803 mh-msg-number-regexp            mh-scan-msg-number-regexp
1804 mh-msg-search-regexp            mh-scan-msg-search-regexp
1806 *** MH-Show mode
1808 While the MIME support is not complete, quoted-printable body parts
1809 are now decoded.
1811 Some MTAs quote From at the beginning of the line with a ">". The ">"
1812 is now removed in the display, but not on disk.
1814 *** MH-Letter mode
1816 New function "C-c C-o (mh-split-line)" splits lines in a draft
1817 preserving the fill prefix and indentation. This is useful when
1818 responding to several sentences in a single paragraph separately.
1820 "M-q (fill-paragraph)" can now be used on the message that is being
1821 replied to. The fill prefix such as "> " is preserved.
1823 You no longer have to run "C-c C-e (mh-edit-mhn)" manually as this is
1824 now done automatically when the message is sent.
1826 The X-Mailer header field is now added to messages as they are sent.
1828 "C-c C-m C-i (mh-mhn-compose-insertion)" now makes a pretty good guess
1829 at the type of file using the `file' command and no longer asks the
1830 user for the media type. If the necessary version of `file' is not
1831 available, the user is asked for the media type as before; however,
1832 the list of media types is now taken from the system mailcap if
1833 available. Failing that, the built-in list of types has been
1834 supplemented so in most cases the type you need should be present
1835 (closes SF #406883, #441179).
1837 ** New Variables in mh-e 6.0
1839 New variables not mentioned earlier include:
1841 *** mh-insert-x-mailer-p
1843 Default value of t means that an X-Mailer header field should be
1844 added.
1846 *** mh-reply-show-message-p
1848 The setting of this variable determines whether the MH show-buffer is
1849 displayed with the current message when using mh-reply without a prefix
1850 argument. Set it to nil if you already include the message
1851 automatically in your draft using "repl: -filter repl.filter" in
1852 "~/.mh_profile."
1854 *** mh-scan-format-file
1856 Specifies the format file to pass to the scan program. If t, the
1857 format string will be taken from the either `mh-scan-format-mh' or
1858 `mh-scan-format-nmh' depending on whether MH or nmh is in use. If nil,
1859 the default scan output will be used.
1861 If you customize the scan format, you may need to modify a few
1862 variables containing regexps that mh-e uses to identify specific
1863 portions of the output. Use `M-x apropos RET mh-scan.*regexp' to
1864 obtain a list of these variables.
1866 *** mh-scan-format-mh
1868 Scan format string for MH, provided to the scan program via the
1869 -format arg. This format is identical to the default except that
1870 additional hints for fontification have been added to the sixth
1871 column.
1873 *** mh-scan-format-nmh
1875 Scan format string for nmh, provided to the scan program via the
1876 -format arg. This format is identical to the default except that
1877 additional hints for fontification have been added to the sixth
1878 column.
1880 *** mh-show-use-goto-addr
1882 Non-nil means URLs and e-mail addresses are highlighted using
1883 goto-addr in MH-Show buffer.
1885 *** mh-letter-fill-column
1887 Fill column to use in `mh-letter-mode'. This is useful to make the
1888 lines a bit shorter to allow for quoting in replies.
1890 *** mh-folder-updated-hook
1892 Invoked when the actions in a folder (such as moves and deletes) are
1893 performed. Variables that are useful in this hook include
1894 `mh-delete-list' and `mh-refile-list' which can be used to see which
1895 changes are being made to current folder, `mh-current-folder'.
1897 *** mh-unseen-updated-hook
1899 Invoked after the unseen sequence has been updated. The variable
1900 `mh-seen-list' can be used to obtain the list of messages which will
1901 be removed from the unseen sequence
1903 ** Bug Fixes in mh-e 6.0
1905 *** mh-edit-again and mh-extract-rejected-mail
1907 Now insert a header separator (--------) which packages such as
1908 mailcrypt expect.
1910 *** mh-find-progs
1912 Now uses `mhparam' to set `mh-lib-progs' and `mh-lib'. Added more
1913 directories to `mh-progs' so that mh-e can autoconfigure in more
1914 environments. Chances are that you no longer have to set these
1915 variables, and if you do, you will only have to set `mh-progs'.
1916 Unless, of course, you are using an ancient version of MH that doesn't
1917 have `mhparam'.
1919 *** mh-folder-mode-map
1921 The DEL/<delete>/<backspace> change in Emacs 21 broke
1922 `mh-previous-page'. This has been fixed (closes SF #228907).
1924 *** mh-forward
1926 If you had "forw: -mime" to your .mh_profile, forwarding a message
1927 resulted in:
1929   Search failed: "^------- Forwarded Message"
1931 In addition, the Subject field was not filled in. This has been fixed
1932 (closes SF #223603).
1934 *** mh-kill-folder
1936 The user is now always prompted before this action; the variable
1937 `mh-do-not-confirm' is no longer consulted here. Therefore users who
1938 wanted to set `mh-do-not-confirm' but didn't because of the
1939 `mh-kill-folder' dependency may now do so.
1941 *** mh-make-folder-mode-line
1943 Properly deals with folders that do not have any lines in them. Prints
1944 "no msgs" instead of "0 msgs". Does not try to print a range when
1945 there are no messages.
1947 *** mh-mhn-compose-insertion
1949 Now gets the MIME type automatically (assuming the local file command
1950 supports the -i and -b options). If this use of the file command is
1951 not supported, the list of MIME types has been expanded to use the
1952 system's mailcap file.
1954 *** mh-nmh-p
1956 This variable (t when nmh is in use rather than MH) assumed that the
1957 string "nmh" is in `mh-lib-progs' or `mh-lib'. This has been fixed
1958 (closes SF #441776).
1960 *** mh-refile-msg
1962 No longer lets you specify an empty folder (closes SF #476824).
1964 *** mh-regenerate-headers
1966 Now suppresses "scan: bad message list" messages.
1968 *** mh-print-msg
1970 This function was looking for `mhl' in the wrong place on nmh on
1971 Redhat LINUX 7.0. This has been fixed (closes SF #481128).
1973 *** mh-show
1975 Now updates `cur' sequence after a message is shown (closes SF #481772).
1977 *** mh-showing
1979 Renamed variable and function to `mh-showing-mode' to conform with
1980 minor mode conventions. Added optional arg to function so it would
1981 behave like a normal minor mode: no or nil arg toggles mode, 0 arg
1982 turns off, non-nil turns on. This fixed the error that occurred when
1983 `desktop-create-buffer' recreated mh-e buffers because it was calling
1984 `mh-showing' with an arg.
1986 *** mh-version
1988 Fixed for nmh. Now displays mh-e version correctly. Cleaned up output
1989 and display `mh-progs', etc.
1991 *** mh-widen
1993 Now attempts to stay on the same message number (closes SF #480922).
1995 No longer wipes out pending deletes and refiles without warning
1996 (closes SF #481036).
1999 * Changes in mh-e 5.0.2
2001 This version contains additional minor changes to integrate it with
2002 reporter.el (requires reporter.el version 3.1c or later) and Emacs
2003 19.30.  The mh-goto-msg function is much faster, which also speeds up
2004 several other operations.
2007 * Changes in mh-e 5.0.1
2009 This version contains minor changes from mh-e 5.0 to integrate it with
2010 Emacs 19.29.
2013 * User-visible changes to mh-e 5.0
2015 Note: This being a major release, there are many internal changes.
2016 This document lists only changes to the external interfaces of mh-e.
2018 When upgrading, you must either explicitly reload the new versions of
2019 all mh-e files that are already loaded or restart your Emacs.
2022 ** Major Changes and New Features in mh-e 5.0
2024 The emphasis for this release has been on consistency and
2025 documentation. Many documentation strings were enhanced. Documentation
2026 strings were changed to comments for internal functions and variables.
2028 *** There is now proper documentation in the form of a 75-page users
2029 manual. The Texinfo source is mh-e.texi; the formatted Info document
2030 is mh-e.info.
2032 *** There is a new command `mh-update-sequences', which updates MH's
2033 idea of what messages are in the Unseen sequence and what is the
2034 current folder and message. `mh-quit' calls it. While
2035 `mh-execute-commands' has always done this updating as a side effect,
2036 the new function is faster.
2038 *** The MH profile entry "Inbox:" is supported.
2040 *** If the show-buffer is modified, the user is queried before mh-e
2041 reuses the buffer to show a different message. This buffer is also
2042 auto-saved and backed up correctly.
2044 *** `mh-store-buffer' is significantly more robust. It now handles
2045 messages created by a wide variety of packaging software. The status
2046 message for `uudecode' includes the name of the file created. An error
2047 is signaled if the subprocess exits with a non-zero status.
2049 *** `mh-search-folder' behaves predictably, adding messages found to
2050 the `search' sequence. It correctly handles the case of no messages
2051 found.
2053 *** `mh-burst-digest' (`M-b') now only rescans the part of the folder
2054 affected by the burst. It is now much faster in a large folder.
2057 ** New Hooks and Customization Variables in mh-e 5.0
2059 *** `mh-default-folder-for-message-function': new name for the old
2060 `mh-msg-folder-hook', which wasn't a hook. The old name was confusing,
2061 leading people to think they could use `add-hook' with it, when
2062 actually `setq' is the correct way.
2064 *** `mh-sortm-args': When this variable is used has changed. Now
2065 `mh-sortm-args' is passed if there IS a prefix argument to
2066 `mh-sort-folder'. The assumption is that for arguments you normally
2067 want, you would specify them in an MH profile entry.
2069 *** `mh-mhn-args': new hook, a list of additional arguments to pass to
2070 the `mhn' program if `mh-edit-mhn' is given a prefix argument.
2072 *** `mh-edit-mhn-hook': new hook called by `mh-edit-mhn', the function
2073 that formats MIME messages.
2075 *** `mh-folder-list-change-hook': new hook, called whenever the cached
2076 list of folders, `mh-folder-list', is changed.
2078 *** `mh-find-path-hook': new hook, called when entering mh-e.
2080 *** `mh-repl-formfile': new variable, used to change the format file
2081 used by `mh-reply' from the default of "replcomps".
2083 *** New variables to customize the scan format and notating:
2084 `mh-note-deleted', `mh-note-refiled', `mh-note-seq', `mh-note-cur',
2085 `mh-note-copied', `mh-note-printed'.
2088 ** Key Binding Changes in mh-e 5.0
2090 *** `RET' runs `mh-show' for consistency with the Finder and Info. The
2091 old binding `.' still works, but `RET' is now the standard binding.
2093 *** `M-<' now runs `mh-first-msg' for consistency with `M->', which
2094 runs `mh-last-msg'.
2096 *** `C-c C-f C-d' in MH-Letter mode moves to a Dcc: header field.
2098 *** `C-c C-f C-r' in MH-Letter mode moves to a From: header field.
2100 *** `g' is now the standard binding for `mh-goto-msg'. The old binding
2101 `j' still works.
2104 ** Other Improvements and Changes to mh-e 5.0
2106 *** `mh-lpr-command-format' no longer passes the "-p" argument to
2107 `lpr' by default. The mail header typically has the date anyway.
2109 *** When prompting for a sequence name, if no sequences have been used
2110 yet, mh-e will offer the first sequence the current message is in.
2112 *** The patterns of more mailers are recognized by
2113 `mh-extract-rejected-mail'.
2115 *** `mh-insert-prefix-string' no longer wraps the call to the
2116 `mail-citation-hook' function in a `save-excursion' so the hook writer
2117 can choose whether to leave point at the beginning or the end of the
2118 yanked text.
2120 *** `mh-write-msg-to-file': The prompt now refers to "message" or
2121 "message body" depending on which will be written. (This is controlled
2122 by a prefix argument.) The file defaults to the last-used file instead
2123 of supplying only the directory name.
2125 *** mh-e uses message ranges when running MH commands. Thus "rmm 1 2 3
2126 4 6" is now "rmm 1-4 6". This change makes it less likely to overflow
2127 system argument list limits, and it might be faster, too.
2130 ** Bug Fixes to mh-e 5.0
2132 *** mh-e's idea of the unseen sequence now stays in sync with MH's
2133 better.
2135 *** Functions that are supposed to find fields in the message header
2136 no longer look in the message body.
2138 *** mh-e would sometimes fail to remove the "%" from a scan line when
2139 the message was removed from a sequence if the message was also in the
2140 Previous sequence.
2142 *** The variable `mh-inc-prog' is now correctly used in all places.
2144 *** `mh-pipe-msg' runs the process in the correct directory.
2146 *** A partially scanned folder will no longer lose the "/select"
2147 annotation when you execute marked deletes and refiles with `x'.
2150 * Changes to mh-e 4.0
2152 This file is automatically generated from news-mh-e.txinfo.  Do not edit.
2154 [MH-E-ONEWS has been incorporated here and removed. news-mh-e.txinfo
2155 is no longer available.]
2157 Note: there are many internal changes to mh-e in this release.  If you
2158 have the previous version loaded into your Emacs, you will probably not
2159 be able to load this version on top of it.
2161 ** New Features in mh-e 4.0
2163 *** Background folder collection. The first time you are prompted for
2164 a folder, you must wait while mh-e collects the names of all existing
2165 folders. Now however, if you abort, collecting will continue in the
2166 background, and you can do something else in Emacs until the
2167 collection completes. Normally, mh-e will begin collecting folders
2168 names in the background when you first load it; you can disable this
2169 feature by setting `mh-auto-folder-collect' to nil.
2171 *** There is support for composing MIME messages using the `mhn'
2172 program from MH 6.8. See the documentation string for mh-edit-mhn.
2173 (While composing a letter, type `C-h k C-c C-e'.) See also mhn(1).
2174 There is as yet no support for reading MIME messages.
2176 *** `mh-show', typically on `.', repositions to the start of the
2177 message if the message is already visible. It used to do nothing in
2178 this case.
2180 *** The function `mh-unshar-msg' is renamed `mh-store-msg'. It now
2181 does uudecoding, too. Someday it should do MIME. It remembers the last
2182 directory you used and offers it as the default for next time.
2184 *** New function `mh-header-display', on `,', displays the message
2185 with all headers, including those normally not displayed. Type `.' to
2186 display the message normally again.
2188 *** New function `mh-list-sequences' lists the sequences in use in the
2189 current folder.
2191 *** New function `mh-version' displays version information about MH
2192 and mh-e. Please use the output in bug reports.
2194 *** `mh-quit' now burys the folder buffer and show buffer.
2197 ** New hooks and customization variables in mh-e 4.0
2199 *** `mh-pick-mode-hook': new hook called by new mode `mh-pick-mode'.
2200 The pick buffer didn't used to have its own mode. Another advantage of
2201 `mh-pick-mode' is that `C-h m' works in the pick buffer.
2203 *** `mail-citation-hook': new variable for supercite.
2205 *** `mh-refile-msg-hook': new hook called by `mh-refile-msg' (and
2206 `mh-refile-or-write-again' when refiling).
2208 *** `mh-msg-folder-hook': new hook used by `mh-refile-msg' and
2209 `mh-to-fcc' to provide a default folder for user prompt.
2211 *** `mh-show-hook': new hook called by `mh-show'.
2213 *** `mh-delete-msg-hook': new hook called by `mh-delete-msg'.
2215 *** `mh-show-mode-hook': new hook called by new mode `mh-show-mode'
2216 for `show-' buffers.
2218 *** `mh-comp-formfile': new variable so can customize `components'
2219 file.
2221 *** `mh-sortm-args': new variable, a list of extra arguments to be
2222 passed to sortm by `mh-sort-folder'. Give an argument to
2223 `mh-sort-folder' to suppress this behavior.
2225 *** `mh-send-prog': new variable so can customize name of `send'
2226 program in case of name conflicts.
2228 *** `mh-scan-prog': new variable so can customize name of `scan'
2229 program to generate custom effects.
2231 *** `mh-inc-prog': new variable so can customize name of `inc' program
2232 to do fancy management of incoming messages.
2234 *** `mh-forwarded-letter-subject': new function used by `mh-forward'
2235 to compute the Subject line of the new message. It is a small function
2236 which can be replaced by the user for customization. Uses the new
2237 variable `mh-forward-subject-format', which allows some simple
2238 customizations without rewriting even `mh-forwarded-letter-subject'.
2240 *** `mh-new-draft-cleaned-headers': new variable, header lines removed
2241 by `mh-edit-again' and `mh-extract-rejected-mail' before offering a
2242 message as a new draft.
2244 *** `mh-signature-file-name': new variable used by
2245 `mh-insert-signature' to so can customize name of the file to insert.
2247 *** `mh-read-address': new function called to read all To: and Cc:
2248 addresses.
2250 *** `mh-msg-folder-hook': new hook used by `mh-refile-msg' and
2251 `mh-to-fcc' to provide a default folder for user prompt.
2254 ** Key binding changes in mh-e 4.0
2256 *** `,' runs new function `mh-header-display'. It is like `.' but it
2257 displays *all* the headers.
2259 *** `M-#' runs the new function `mh-delete-seq'. One used to have to
2260 type `C-u M-%' to delete a sequence.
2262 *** `<' no longer does `mh-first-msg', but `M->' now does
2263 `mh-last-msg'. This allows first and last to be consistent (`>' was
2264 taken) and is more likely to be discovered by chance anyway.
2266 *** `M-d' runs `mh-redistribute', `r' runs `mh-reply' (on the theory
2267 that the more commonly used function should be easier to type, and the
2268 obscure action of redistributing can be harder to type).
2270 *** `M-o' changed to `C-o' (`mh-write-msg-to-file'). It was
2271 interfering with arrow keys for some people.
2273 *** `M-n' now runs `mh-store-msg' (formerly `mh-unshar-msg').
2275 *** `b' no longer runs `mh-quit'; use `q' instead. `b' may be used in
2276 a future version for something else.
2279 ** Minor improvements to mh-e 4.0
2281 *** The mh-e code is now divided into multiple Emacs Lisp files, so it
2282 starts up faster because Emacs doesn't have to load all of it at once.
2283 (This change also makes it easier for the maintainer to manage
2284 things.)
2286 *** When searching for the directory containing the MH programs,
2287 search the user's PATH in addition to the built-in directories, to
2288 increase the chance of finding the MH programs.
2290 *** The subject for a forwarded message no longer has ugly square
2291 brackets around it.
2293 *** The name of the folder is no longer appears twice in the show
2294 buffer mode line.
2296 *** When typing a folder name in the minibuffer, parent folders
2297 complete to the trailing slash (/), for easier typing of subfolders.
2299 *** The folder buffer mode name changed from `mh-e scan' or `mh-e
2300 show' to `MH-Folder', which makes the hook name easier to guess. Added
2301 `mh-showing' to `minor-mode-alist' so there is still an indication in
2302 the mode line of whether messages will be shown automatically.
2304 *** `mh-rename-seq' does completion on the old sequence name.
2306 *** If called by a user who has never used MH on this system before,
2307 mh-e runs the MH program `install-mh' to get them set up.
2309 *** Undo history for previous messages is not kept to avoid wasting
2310 memory.
2312 *** The internal temp buffer used by mh-e has `buffer-offer-save'
2313 explicitly nil. This change benefits people who change the
2314 `buffer-offer-save' default.
2317 ** Bug fixes to mh-e 4.0
2319 *** `mh-to-field': don't bomb if no To: field.
2321 *** `mh-get-new-mail': restore annotations, e.g., cur, even if no new
2322 mail.
2324 *** `mh-rename-seq': verify that the new seq name was accepted by
2325 `mark' before updating state.
2327 *** `mh-internal-seq': the Previous sequence is not notated, since it
2328 would notate everything scanned.
2330 *** `mh-read-draft': don't call `find-file-noselect' so an
2331 `auto-mode-alist' doesn't trigger `mh-letter-mode-hook' twice. Faster,
2332 too.
2334 *** `mh-show': If user moves onto a message that doesn't exist, don't
2335 leave the cursor in the show pane.
2337 *** `mh-delete-scan-msgs': use `equal', not `=', on the result of
2338 `mh-get-msg-num', since it may be nil.
2340 *** `mh-get-field': do anchored search so searching for `reply-to:'
2341 doesn't find `in-reply-to:'.
2343 *** `mh-widen': do nothing if not narrowed.
2345 *** `mh-clean-message-header': find end of headers even if no body.
2348 Local variables:
2349 mode: outline
2350 paragraph-separate: "[  \f]*$"
2351 end:
2353 arch-tag: f6696cad-eb1b-4c5f-8057-4e3954a98d18