(looking-back): New function to check for regular expression before point.
[emacs.git] / etc / MH-E-NEWS
blob415a7aabe8367822729c1f7248fcaa91d7211cf9
1 Copyright (C) 2003 Free Software Foundation, Inc.
2         
3 Copying and distribution of this file, with or without modification,
4 are permitted in any medium without royalty provided the copyright
5 notice and this notice are preserved.
8 * Changes in MH-E 7.3
10 This release includes the new features of an index view of unseen
11 messages in all folders, spam software support, relative folder
12 specification @ support, marking messages, recipient handling by
13 mh-default-folder-list, Face and X-Image-URL header field support, and
14 Fcc completion. Function arguments have been unified. Bugs have been
15 fixed.
17 ** New Features in MH-E 7.3
19 *** Unified Function Arguments
21 Any function with MSG-OR-SEQ in its docstring uses the displayed
22 message by default for this argument. However, if a prefix argument is
23 provided, then the user is prompted for a message sequence. If the
24 variable `transient-mark-mode' is non-nil and the mark is active, then
25 the function operates on the messages in the selected region. In a
26 program, MSG-OR-SEQ can be a message number, a list of message
27 numbers, a region in a cons cell, or a sequence.
29 *** MH-Index View of Unseen Messages
31 Use "F n (mh-index-new-messages)" or Folder -> View New Messages menu
32 item to display messages in the `mh-unseen-seq' sequence in folders
33 specified by `mh-index-new-messages-folders'. With a prefix argument,
34 enter a space-separated list of folders, or nothing to search all
35 folders.
37 Like other MH-Index folders, use "v (mh-index-visit-folder)" if you
38 wish to visit the original folder with the unseen message. This is
39 usually not necessary since the original message is annotated if you
40 reply, deleted if you delete the message, or refiled if you refile the
41 message (closes SF #701756).
43 *** Spam Software Support
45 MH-E now supports several spam filters including Bogofilter,
46 SpamProbe, and SpamAssassin. Spam that is mistakenly considered to be
47 good mail can be reclassified as spam with "J b (mh-junk-blacklist)".
48 Conversely, good mail that is accidently considered to be spam can be
49 reclassified with "J w (mh-junk-whitelist)" (closes SF #669518).
51 If a message is blacklisted, and `mh-junk-mail-folder' is a string,
52 then the message is refiled to that folder. If this variable is nil,
53 the message is deleted. If a message is whitelisted, then the message
54 is refiled to `mh-inbox'.
56 To change the spam program being used, customize `mh-junk-program'.
57 This should only be necessary if you have multiple filters on your
58 system and MH-E picked the wrong one. These customization variables
59 are found in the new customization group `mh-junk'.
61 The documentation for the following functions describes what setup is
62 needed for the different spam fighting programs:
64   - `mh-bogofilter-blacklist'
65   - `mh-spamprobe-blacklist'
66   - `mh-spamassassin-blacklist'
68 *** Relative Folder Specification @ Supported
70 You can now use the relative folder marker @ in folder names (closes
71 SF #666774).
73 *** Marking Messages
75 Messages can now be highlighted with "' (mh-toggle-tick)", Sequence ->
76 Toggle Tick Mark menu item or the "Toggle tick mark" button. These
77 messages are added to the "tick" sequence, although this sequence can
78 be changed in `mh-tick-seq'. The highlighting effect can be modified
79 by customizing `mh-folder-tick-face' (closes SF #623367).
81 There is also a new keybinding "/ ' (mh-narrow-to-tick)" and menu item
82 Sequence -> Narrow to Tick Sequence to narrow the view to the
83 highlighted messages.
85 *** mh-default-folder-list Now Takes Recipients
87 If you wish to file a message based upon the recipient of a message
88 (such as a mailing list), you can now indicate that when filling out
89 the address in the `mh-default-folder-list' customization variable.
91 *** Face Header Field Supported
93 In addition to the X-Face header field, the Face header field, which
94 can display color images, is now supported. As a bonus, the external
95 xface-e21 library is no longer required.
97 *** X-Image-URL Support
99 Images specified in X-Image-URL header fields are now supported.
100 See the customization variable `mh-fetch-x-image-url' to enable this
101 support.
103 *** Fcc Completion
105 Folders in Fcc fields in message drafts can now be completed with
106 M-TAB.
108 ** New Variables in MH-E 7.3
110 Variables that have been added to MH-E that have not been discussed
111 elsewhere are listed here.
113 *** mh-auto-fields-list
115 Alist of addresses for which header lines are automatically inserted.
116 When a regular expression matches in the To or cc fields of a message,
117 the corresponding header field is automatically inserted in the
118 message header. It also allows the automatic setting of an identity
119 (using `mh-insert-identity') to set an alternate identity when sending
120 messages to a certain person or mailing list.
122 Since this is a more general use of `mh-insert-mail-followup-to-flag'
123 and `mh-insert-mail-followup-to-list', these variables have been removed.
125 *** mh-show-xface-face
127 Face for displaying the X-Face image.
129 *** mh-xemacs-toolbar-position
131 This customization variable allows the user to place the toolbar on
132 the four edges of the frame.
134 *** mh-xemacs-use-toolbar-flag
136 This customization variable is used to enable or disable the toolbar
137 under XEmacs.
139 ** Variables Deleted in MH-E 7.3
141 Variables that have been removed from MH-E that have not been
142 discussed elsewhere are listed here.
144 *** mh-decode-content-transfer-encoded-message-flag
146 No longer needed since the external program mimencode is no longer
147 used.
149 *** mh-index-show-hook
151 This hook was never used, so it was removed.
153 *** mh-tool-bar-reply-3-buttons-flag
155 Obsolete. This functionality is present `mh-tool-bar-folder-buttons'.
157 ** Bug Fixes in MH-E 7.3
159 *** Can't Refile Message
161 Messages with invalid addresses were causing errors in ali which
162 prevented the refiling of messages. The ali error is now shown in the
163 "*MH-E Log*" buffer and refiling suggests the last folder used (closes
164 SF #680388).
166 *** Empty Body Triggers Duped Header
168 If the body was empty the header would be treated like the body and
169 was therefore displayed twice. This has been fixed (closes SF
170 #681162).
172 *** mml or mhl Directives Not Always Processed
174 The mml and mhl directives used to create body parts were not
175 processed if one re-edited a draft, or if they added the directives
176 manually. The directives are now always processed upon sending the
177 letter. You may still, of course, use "C-c C-m m (mh-mml-to-mime)" or
178 "C-c C-e (mh-edit-mhn)" to manually create the MIME body parts from
179 the directives and then send the draft.
181 *** mh-alias-grab-from-field Fails
183 MH-E was adding aliases with angle brackets around the address when
184 there wasn't a phrase (usually, the user's name), to go with it. This
185 caused ali to fail which caused problems in MH-E. This is probably a
186 bug in ali, but MH-E no longer inserts angle brackets around the
187 address unless there is a phrase, which avoids the problem (closes SF
188 #690216).
190 *** XEmacs Fixes
192 MH-E is now fully supported under XEmacs and compiles without any
193 warnings.
195 In particular, the following now work under XEmacs:
197 - X-Face, Face, and X-Image-URL header fields
198 - MH-E logo in mode line
199 - Emphasis (bold, italics, etc.)
200 - Smilies
201 - Toolbar
203 *** Indexed Folders Should Respect mh-show-threads-flag
205 Indexed folders are now threaded if `mh-show-threads-flag' is non-nil
206 (closes SF #709667).
208 *** Threading Index View Loses Folder Info
210 This has been fixed (closes SF #709672).
212 *** No Undo Information When Re-editing Drafts
214 Undo is turned on in the draft buffer when using "e (mh-edit-again)"
215 (closes SF #712777).
217 *** Forwarded base64-encoded Messages Are Incorrectly Displayed
219 This has been fixed (closes SF #681518).
221 *** Append to *MH-E Log* Buffer
223 The last 100 lines of log messages are kept in the *MH-E Log* buffer.
224 Previously, the buffer was erased every time it was written (closes SF
225 #685476). In addition, many of the MH-E commands now send their output
226 into this buffer instead of a plethora of other special-purpose
227 buffers.
229 *** mh-inc-folder Complains if No Mail and No Current Message
231 The function `mh-inc-folder' no longer calls `mh-show' if point is not
232 on a valid scan line. This keeps `mh-inc-folder' from complaining
233 (closes SF #678115).
235 *** Folder Normalization Strips Leading Slash
237 Leading "/" characters in folder names entered by the user were being
238 lost. This has been fixed (closes SF #676890).
240 *** Print Header Doesn't Show Message
242 When printing a sequence, the header simply indicated that a sequence,
243 but not which one, was being printed and did not show the message
244 number. This has been fixed. If more than one message is printed, a
245 page of the scan lines is printed and its header indicates the
246 sequence or message range. The pages with the actual messages all set
247 the header to the folder and message displayed on that page.
249 *** Aliases Constantly Reloaded
251 Empty lists are now handled properly (closes SF #693859).
253 *** Remove RCS Keywords
255 Removed RCS keywords per Emacs conventions (closes SF #680731).
257 *** Replace Mimencode
259 MH-E was enhanced to decode message based on charset and
260 Content-Transfer-Encoding. This eliminates the need for the external
261 program mimencode (closes SF #674857).
265 * Changes in MH-E 7.2
267 This release includes the new features of filing hints, hierarchical
268 file name completion, indexed search and pick integration, unification
269 between `mh-visit-folder' and the speedbar, a displayed message
270 indicator, buffer name organization, support for mairix indexed
271 search, and last but not least, the MH-E logo has been added to the
272 mode line. Code that handles sequences and message regions runs
273 faster. Bugs have been fixed.
275 ** New Features in MH-E 7.2
277 *** Filing Hints
279 When you file a message, MH-E now looks for an alias corresponding to
280 the address of the sender and offers that as a default folder (closes
281 SF #657096). The new variable `mh-default-folder-prefix' can be used
282 to put these folders in a sub-folder. The new variable
283 `mh-default-folder-must-exist-flag' means to suppress the suggested
284 folder (thereby providing the previous folder used) if the folder
285 doesn't already exist. The new variable `mh-default-folder-list' can
286 be used to map additional addresses and folders.
288 *** Hierarchical File Name Completion
290 When you completed filenames in the past, you were presented with a
291 list of all your folders at all depths in the tree. Now you are
292 presented with only one level at a time (closes SF #664821).
293 As a result, the variables `mh-auto-folder-collect-flag' and
294 `mh-folder-list-change-hook' are obsolete.
296 *** Indexed Search and Pick Integration
298 The indexed and pick searches have been integrated (closes SF
299 #664816). Both "F s (mh-search-folder)" and "F i (mh-index-search)"
300 use the pick template for forming queries. To submit the query, use
301 "C-c C-c (mh-do-search)" which will use the query method you selected.
302 If you change your mind while forming the query, you can use "C-c C-i
303 (mh-index-do-search)" or "C-c C-p (mh-pick-do-search)" to submit the
304 query using the respective method.
306 Second, the results from a pick search are now saved in a sub-folder
307 of +mhe-index like an indexed search.
309 Third, `pick' is now a valid choice for `mh-index-program'.
311 *** mh-visit-folder Metamorphosis Continues
313 When visiting a folder from the speedbar, only the unseen messages are
314 shown if there are unseen messages. If there aren't any unseen
315 messages, all of the messages are shown if there are fewer than
316 `mh-large-folder' messages; otherwise, the user is prompted for the
317 range of messages to display. The "F v (mh-visit-folder)" command has
318 been modified to mimic this behavior. Use a prefix arg to force the
319 message range prompt.
321 *** Displayed Message Indicator
323 In graphical Emacs, the message that is shown is marked by a triangle
324 in the fringe. In textual Emacs, there is a ">" in the first column
325 (closes SF #664824).
327 *** Buffer Name Organization
329 All ephemeral buffer names start with " *mh" while all interesting
330 buffers start with "*MH-E ". The "*Folders*", "*Sequences*", and
331 "*Recipients*" buffers were therefore renamed to "*MH-E Folders*",
332 "*MH-E Sequences*" and "*MH-E Recipients*" respectively (programmers
333 should see mh-utils.el for the names of the new constants). Also, the
334 output of MH commands is saved in the "*MH-E Log*" buffer.
336 *** mh-index-program
338 Add choices for `mairix' and `pick'.
340 *** Logo Displayed on Mode Line
342 ** New Variables in MH-E 7.2
344 The new variables have been discussed elsewhere.
346 ** Bug Fixes in MH-E 7.2
348 *** mh-decode-content-transfer-encoded-message
350 Messages that had been encoded with base64 were not decoded. This has
351 been fixed with this new function (closes SF #674190). As a result,
352 the variable `mh-decode-quoted-printable-flag' has been renamed to
353 `mh-decode-content-transfer-encoded-message-flag'.
355 *** mh-kill-folder
357 Now restores previous window configuration (closes SF #664828).
359 *** mh-mime-display
361 MH-E was not using the charset defined in the content-type
362 header. This meant that mail in a different charset would not
363 be properly displayed. This has been fixed (closes SF #655123).
365 *** mh-read-address
367 In XEmacs and Emacs20, this function would always prompt using "To: "
368 instead of using the command argument. This has been fixed (closes SF
369 #670913).
371 *** mh-rmail
373 Unseen messages are now shown in addition to new ones (closes SF
374 #667542).
376 *** mh-scan-msg-overflow-regexp
378 Change the variable so that a space is always maintained in the
379 beginning of the scan line.
381 *** mh-swish-execute-search
383 The example configuration file in the docstring didn't show the
384 backslash in the FileRules filename. If the example had been used
385 literally by the user, no files would be indexed! This has been fixed
386 (closes SF #665888).
388 *** mh-thread-refile
390 The "T o (mh-thread-refile)" command did not provide refiling hints
391 like `mh-refile-msg'. This has been fixed (closes SF #664829).
393 *** mh-toggle-threads
395 If the threaded view was modified and then toggled, the standard view
396 may not have been accurate (as it contained a potentially old first
397 message to last message range). This has been fixed (closes SF
398 #626117).
400 *** mh-tool-bar-show-set, mh-tool-bar-letter-set, mh-tool-bar-folder-set
402 Clicking the customize and help buttons now deletes the other windows
403 in the frame.
405 *** mh-version
407 The "M-x mh-version" command displayed "Aliasfile: aliases". This has
408 been fixed (closes SF #664467). See Buffer Name Organization above.
412 * Changes in MH-E 7.1
414 This release includes the new features of multiple identities and
415 alias completion. In addition, indexed searching has been revamped.
416 Various other features have been added and a few bugs were fixed.
418 ** New Features in MH-E 7.1
420 *** Multiple Identities
422 MH-E now supports multiple identities (closes SF #628782). That means
423 that you can have different From and Organization header fields (or
424 any other header field of your choice) as well as different signatures
425 depending on your context. Usually, the contexts are home and work.
427 Add your identities to the variable `mh-identity-list' and set the
428 default identity with the variable `mh-identity-default'. Your
429 identity can be switched on the fly by using the Identity menu or by
430 calling "M-x mh-insert-identity RET".
432 This functionality can be customized within the mh-identity group.
434 *** Alias Completion and Harvesting
436 The contributed file mh-alias.el has been rewritten and incorporated
437 into MH-E.
439 By default, aliases are culled from the system files
440 "/etc/nmh/MailAliases," "/usr/lib/mh/MailAliases," and "/etc/passwd"
441 (see `mh-alias-system-aliases') and from your "AliasFile" MH profile
442 component. These aliases are then used for completion in the
443 minibuffer when entering addresses. Within the header of the message
444 draft, "M-TAB (mh-letter-complete)" is used to do alias completion.
446 The package also provides for alias creation based upon the From
447 header field of the current message. Use the lasso button
448 (mh-alias-grab-from-field).
450 This functionality can be customized within the mh-alias group.
452 *** Index Folder Updates
454 The results of an index search "F i (mh-index-search)" are now stored
455 in a bona fide folder so that you can refile messages and reply to
456 messages directly from the result folder. This folder is a sub-folder
457 of +mhe-index and the name is based upon the search string (closes SF
458 #623321).
460 If a prefix argument is given then the search in the current index
461 buffer is redone.
463 The index folder lists the names of the source folders as before.
464 However, instead of using RET on the name of the folder to visit the
465 folder, use "v (mh-show-index-visit-folder)" anywhere within the
466 results to visit that folder narrowed to the results of the search.
467 Additional functions have been added to navigate including "TAB
468 (mh-index-next-folder)", and "SHIFT-TAB (mh-index-previous-folder)."
470 *** mh-visit-folder Interface Updated
472 A change was made to the prompting of the message range. In general,
473 you can use the same format for messages and sequences as you can in
474 MH with a single exception: a single number means to scan that many
475 messages, rather than scan that message number. This turns out to be
476 much more useful than visiting a single message and is consistent with
477 Gnus and the MH-E speedbar (closes SF #655891).
479 If mh-visit-folder is called non-interactively and RANGE is nil then
480 all messages are displayed. This behavior is now documented and
481 provides backwards compatibility.
483 *** Threading Improvements
485 After incorporating new mail into a threaded folder, unseen messages
486 can be spread about. Two new functions have been added to make it
487 easier to find them: these are "M-n (mh-next-unread-msg)" and "M-p
488 (mh-previous-unread-msg)" (closes SF #630328)
490 Two new functions were added to delete and refile threads. They are "T
491 d (mh-thread-delete)" and "T o (mh-thread-refile)" respectively
492 (closes SF #630493).
494 In addition, the key "k" used to be bound to the function
495 `mh-delete-subject': it is now bound to
496 `mh-show-delete-subject-or-thread'.
498 New functions to navigate threads include "T u (mh-thread-ancestor)",
499 which can jump to the root message of the current thread given an
500 optional argument, "T n (mh-thread-next-sibling)", and "T p
501 (mh-thread-previous-sibling)"
503 *** Refiling of Messages in Region
505 If mark is active and `transient-mark-mode' is enabled then all the
506 messages in the region are refiled.
508 *** vCard Handling
510 If a signature cannot be identified, but there is a vCard attachment,
511 then that vCard will be presented as a signature (closes SF #649216).
513 *** New Info Added to mh-version
515 Information about Gnus versions available at both compile time and run
516 time has been added.
518 ** New Variables in MH-E 7.1
520 The defcustom groups were reorganized. Rather than iterate the
521 specific changes here, you are invited to browse the groups with "M-x
522 mh-customize RET".
524 *** mh-alias-completion-ignore-case-flag
526 Non-nil means don't consider case significant in MH alias completion.
527 This is the default in plain MH, so it is the default here as well. It
528 can be useful to set this to t if, for example, you use lowercase
529 aliases for people and uppercase for mailing lists.
531 *** mh-alias-expand-aliases-flag
533 Non-nil means to expand aliases entered in the minibuffer. In other
534 words, aliases entered in the minibuffer will be expanded to the full
535 address in the message draft. By default, this expansion is not
536 performed.
538 *** mh-alias-flash-on-comma
540 Specify whether to flash the translation of the alias or warn if there
541 isn't a translation of the alias.
543 *** mh-alias-insert-file
545 Filename to use to store new MH-E aliases. This variable can also be a
546 list of filenames, in which case MH-E will prompt for one of them. If
547 nil, the default, then MH-E will use the first file found in the
548 "AliasFile" component of the MH profile.
550 *** mh-alias-insertion-location
552 Specifies where new aliases are entered in alias files. Options are
553 sorted alphabetically (the default), at the top of the file or at the
554 bottom.
556 *** mh-alias-local-users
558 If t, local users are completed in MH-E To: and Cc: prompts.
560 If you set this variable to a string, it will be executed to generate
561 a password file. A value of "ypcat passwd" is helpful if NIS is in
562 use.
564 *** mh-alias-system-aliases
566 A list of system files from which to cull aliases. If these files are
567 modified, they are automatically reread. This list need include only
568 system aliases and the passwd file, since personal alias files listed
569 in your "AliasFile" MH profile component are automatically included.
571 *** mh-identity-default
573 Default identity to use when `mh-letter-mode' is called.
575 *** mh-identity-list
577 List holding MH-E identity.
579 *** mh-invisible-header-fields
581 Simple user interface to change `mh-invisible-headers'.
583 *** mh-letter-complete-function
585 Function to call when completing outside of fields specific to
586 aliases. By default, it is bound to 'ispell-complete-word.
588 *** mh-show-threads-flag
590 Non-nil means new folders start in threaded mode. Threading large
591 number of messages can be time consuming. So if the flag is non-nil
592 then threading will be done only if the number of messages being
593 threaded is less than `mh-large-folder' (closes SF #646794).
595 *** mh-tool-bar-folder-buttons
597 Buttons to include in MH-E folder/show toolbar.
599 *** mh-tool-bar-letter-buttons
601 Buttons to include in MH-E letter toolbar.
603 ** Bug Fixes in MH-E 7.1
605 *** mh-get-new-mail
607 Call new function `mh-add-cur-notation' to undo the work of
608 `mh-remove-cur-notation' if there was no new mail (closes SF #647681).
610 *** mh-set-cmd-note
612 No longer updates the default `mh-cmd-note' value. This resulted in
613 the misplacement of the current mark when the message number width
614 changed (closes SF #643701).
618 * Changes in MH-E 7.0
620 This is a major release which includes a lot of new features including
621 improved MIME handling, speedbar folder browsing, and indexed
622 searching. In this version, MH-E runs under XEmacs, passes checkdoc,
623 and compiles clean under all supported platforms.
625 The "passes checkdoc" feature above required changing the name of
626 several user-visible variables. It is likely that this affects you.
627 Please be sure to see the table at the end of these notes and rename
628 your variables accordingly.
630 MH-E has been written mh-e, Mh-e, MH-e and MH-E. We have decided that
631 the proper term should be MH-E. Please try to use MH-E in your
632 writing.
634 ** New Features in MH-E 7.0
636 *** Speedbar
638 There is now support for the speedbar. Try "M-x speedbar" (closes SF
639 #503727).
641 Press the middle mouse button on the `+' icons to open a folder,
642 middle mouse button on a folder name to open the folder. Folders with
643 unseen messages are shown in bold, so this is a handy way to browse
644 new messages that you have filed with procmail or slocal.
646 See the new customization variable `mh-large-folder,' which controls
647 when the speedbar asks for how many messages to scan when opening a
648 large folder and `mh-speed-run-flists-flag' whose default value of t
649 means to use the flists command to populate the count of unseen and
650 total messages in each folder.
652 *** Indexed Search
654 Interoperability with swish++, swish, glimpse, and namazu has been
655 added to enable lightening-fast searches of your mail. If none of
656 these are present, grep is used. Try "F i (mh-index-search)".
658 For more information, read the documentation for the functions
659 `mh-swish++-execute-search,' `mh-swish-execute-search,'
660 `mh-namazu-execute-search,' or `mh-glimpse-execute-search' depending
661 on your preferred indexing program to see what kind of setup is needed
662 to generate the index.
664 *** Threading
666 Use "T t (mh-toggle-threads)" to view the threads in the folder. Use
667 it again to return to a non-threaded view.
669 *** Brief Help
671 Use "? (mh-help)" and "X ? (mh-prefix-help)," where X is a prefix
672 character, for a brief synopsis in the minibuffer of frequently used
673 commands. In the MH-Letter or MH-Pick buffers, use "C-c ? (mh-help)"
674 (closes SF #493740).
676 *** Folder Keymap Shared by Show Buffer
678 You can now use the MH-Folder mode commands from the MH-Show buffer.
679 Because of this, the MH-Show buffer is now read-only (closes SF
680 #493749 and SF #527946) and you now have to use "M (mh-modify)" to
681 edit a message.
683 *** Better Scanning
685 You no longer have to modify your scan format if your folders have
686 more than 9999 messages in them. If you've only modified your scan
687 format file to allow for the wider message numbers, consider using the
688 default behavior of MH-E and simplify your MH-E configuration
689 considerably (closes SF #635791).
691 To do this, you may have to remove your modifications of
692 `mh-scan.*-regexp' and `mh-cmd-note' and your customization of
693 `mh-scan-format-file'.
695 You may still want the updated format files for running MH commands
696 outside of MH-E; the default of `mh-scan-format-file' will cause them
697 to be ignored.
699 If you prefer fixed-width message numbers, set the new customization
700 variable to nil , set this variable to
701 nil and call `mh-set-cmd-note' with the width specified by the scan format in
702 `mh-scan-format-file'. For example, the default width is 4, so you would use
703 "(mh-set-cmd-note 4)" if `mh-scan-format-file' were nil.
705 *** X-Face
707 MH-E now displays the content of the X-Face header field in the From
708 field. When sending a message, an X-Face field is appended to the
709 header if it doesn't already exist and "~/.face" is present. See the
710 new customization variables `mh-show-use-xface-flag' and `mh-x-face-file'
711 (closes SF #480770).
713 MH-E depends on the external x-face package found in
714 ftp://ftp.jpl.org/pub/elisp/ to do this. The `uncompface' binary is
715 also required to be in the execute PATH. It can be obtained from:
716 http://freshmeat.net/redir/compface/1439/url_tgz/compface-1.4.tar.gz.
718 It has also been observed that if you don't see the faces, you might
719 have to do this (for unknown reasons):
721     mv /usr/local/include/compface.h /usr/include/
723 *** Graphical Smileys
725 Smiley's are now converted to cute little images. See the new
726 customization variable `mh-graphical-smileys-flag.'
728 *** Text Emphasis
730 ASCII formatting is now converted to the appropriate font. For
731 example, _underline_ is underlined, *bold* appears in bold, /italic/
732 appears in italic, etc. See `gnus-emphasis-alist' for the whole list.
733 See the new customization variables `mh-decode-mime' and
734 `mh-graphical-emphasis-flag.'
736 *** Attachment Handling
738 Inline attachments are now displayed. Regular attachments appear as
739 buttons in show buffer. Use "K TAB (mh-next-button)" or "K SHIFT-TAB
740 (mh-prev-button)" to cycle through these buttons. Use "K v
741 (mh-folder-toggle-mime-part)" to view, "K o
742 (mh-folder-save-mime-part)" to save one part or "K-a
743 (mh-save-mime-parts)" to save all parts, or "K i
744 (mh-folder-inline-mime-part)" to view the attachment inline.
746 See the new customization variable `mh-decode-mime' for additional
747 information. Other customization variables that affect this new feature
748 include `mh-store-mime-parts-default-directory' and
749 `mh-display-buttons-for-inline-parts-flag'.
751 HTML documents can be viewed inline if Gnus v5.10 and w3 or w3m lisp
752 packages are present. Set the customization variable
753 `mm-text-html-renderer' accordingly (closes SF #453352).
755 *** Quoted-printable Handling
757 Quoted-printable body parts are now decoded.
759 *** More Choices for `mh-yank-from-start-of-msg'
761 Historically, if this variable was t, the entire message, with full
762 headers would be included and every line would begin with
763 `mh-ins-buf-prefix.' This usage is deprecated in favor of the setting
764 `supercite' below. The default has been changed to `attribution.' The
765 following symbols are now understood:
767 `body': yank the message minus the header.
769 `supercite': include the entire message, with full headers. This also
770 causes the invocation of `sc-cite-original' without the setting of
771 `mail-citation-hook', now deprecated practice.
773 `autosupercite': do as for `supercite' automatically when show buffer
774 matches the message being replied-to.
776 `attribution': yank the message minus the header and add a simple
777 attribution line at the top.
779 `autoattrib': do as for `attribution' automatically when show buffer
780 matches the message being replied-to.
782 There is a new customization variable called
783 `mh-extract-from-attribution-verb' which is used for attribution which
784 provides a method for setting a different language.
786 *** Use Gnus mml Instead of mhn
788 When inserting attachments into a message draft, Gnus mml directives
789 are now used instead of mhn directives. One beneficial side-effect of
790 this is that attachments can now appear inline as well as separate.
792 The new customization variable `mh-compose-insertion' controls whether
793 Gnus or mhn is used to insert MIME message directives in messages
794 (default: 'gnus, if the mml library exists).
796 *** Content-Type Now Obtained Automatically
798 The value of the Content-Type no longer needs to be entered by the
799 user.
801 *** Attachments Automatically Included Upon Send
803 You no longer have to run "C-c C-e (mh-edit-mhn)" before sending a
804 message with attachments--this is done automatically when you send the
805 message with "C-c C-c (mh-send-letter)". There is, however, a new key
806 binding "C-c C-m m (mh-mml-to-mime)" which is analogous to "C-c C-e
807 (mh-edit-mhn)".
809 *** GPG Handling
811 Messages that have been signed or encrypted with GPG are verified and
812 decrypted automatically. To sign or encrypt a message, use "C-c RET
813 C-s (mh-mml-secure-message-sign-pgpmime)" and "C-c C-m C-e
814 (mh-mml-secure-message-encrypt-pgpmime)." You need Gnus version 5.10
815 for this feature. These functions are provided by the pgg.el package.
817 Users report "flashing" with the pgg.el package and prefer the gpg.el
818 package instead. To use gpg.el instead of the pgg.el package you need:
820   (setq mml2015-use 'gpg)
822 To mimic automatic encryption in gpg.el, use:
824   (setq mm-verify-option 'always)
825   (setq mm-decrypt-option 'always)
827 The venerable mailcrypt package is also an option. However, now that
828 show buffers are read-only, mailcrypt version 3.5.6 and older fail
829 when they attempt to decrypt the contents.
831 *** Mail-Followup-To Header Field
833 Support for this controversial field has been added because nmh
834 supports it (closes SF #627035). If you want to add it to outgoing
835 mail for selected mailing lists, add those mailing lists to the new
836 customization variable `mh-insert-mail-followup-to-list.' If you think
837 this field is evil, set the new customization variable
838 `mh-insert-mail-followup-to-flag' to nil.
840 *** Gnus Issues
842 If you update Gnus, you must recompile MH-E. Note that if you are
843 running the stock version of MH-E that comes with Emacs or the MH-E
844 package on a Debian GNU/Linux, this is done for you.
846 ** New Variables in MH-E 7.0
848 New customization variables not mentioned earlier include:
850 *** mh-letter-insert-signature-hook
852 Invoked at the beginning of the "C-c C-s (mh-insert-signature)"
853 command. Can be used to determine which signature file to use based on
854 message content. On return, if `mh-signature-file-name' is non-nil
855 that file will be inserted at the current point in the buffer.
857 *** mh-show-maximum-size
859 Maximum size of message (in bytes) to display automatically. Provides
860 an opportunity to skip over large messages which may be slow to load.
861 Use a value of 0 to display all messages automatically regardless of
862 size (closes SF #488696).
864 *** mh-tool-bar-reply-3-buttons-flag
866 Non-nil means use three buttons for reply commands in tool-bar. If you
867 have room on your tool-bar because you are using a large font, you may
868 set this variable to expand the single reply button into three buttons
869 that won't lead to minibuffer prompt about who to reply to.
871 ** Bug Fixes in MH-E 7.0
873 *** mh-delete-msg, mh-refile-msg, mh-undo
875 Mandrake Linux includes XEmacs initialization code that binds
876 `transient-mark-mode' which causes problems in MH-E. These problems
877 have been fixed (closes SF #541915).
879 *** mh-edit-again
881 This would sometimes yield a read-only buffer. This has been fixed
882 (closes SF #624283 and SF #625538).
884 *** mh-forward
886 When using nmh, always specify -mime so as to preserve the original
887 message(s).
889 *** mh-inc-folder
891 If you had narrowed to a sequence and then incorporated new mail,
892 those new messages would not be present in your +inbox when you
893 widened. This has been fixed (closes SF #489430, SF #489437, SF
894 #629233).
896 *** mh-insert-letter
898 No longer uses mhl to include a message as this mangled the header and
899 gave supercite fits (closes SF #629153).
901 *** mh-letter-mode
903 "M-q (fill-paragraph)" now fills quoted paragraphs (for example,
904 starting with "> ") correctly (closes SF #489927).
906 *** mh-next-undeleted-msg, mh-previous-undeleted-msg
908 If there are no more undeleted messages the point remains at its
909 original position and a message is produced (closes SF #494304).
911 *** mh-pick-mode
913 Now calls `mh-pick-mode-hook' as documented.
915 *** mh-put-msg-in-seq
917 Now puts all messages in region in sequence (closes SF #630324).
919 *** mh-refile-msg, mh-write-msg-to-file
921 These functions stomped on the variables that held the name of the
922 last file and folder respectively for the other function. This has
923 been fixed so that the last folder or file name is preserved (closes
924 SF #580772).
926 *** mh-region-to-sequence
928 If the region in MH-Folder was set with "C-x h (mark-whole-buffer)",
929 you couldn't perform operations on all of the messages as you would
930 expect. This has been fixed (closes SF #621632).
932 *** mh-reply
934 Performing an undo the first thing after replying would blank out the
935 entire draft. Now just the insertion of the yanked message is undone
936 leaving the header and signature intact for additional editing (closes
937 SF #623693).
939 *** mh-show-mode
941 Now calls `mh-show-mode-hook' as documented (closes SF #627222).
943 *** mh-subject-thread-to-sequence
945 Make 'subject sequence a real one, exported to MH. This means you can,
946 for example, mh-forward it. But it also shows up with a mark in the
947 scan output (closes SF #489445).
949 *** Other Bug Fixes
951 The following bugs have also been closed:
953 SF #495450: Folder buffer read-only after inc
954 SF #489706: mh-page-msg bombs out
955 SF #580772: mh-last-destination is overloaded
957 *** Variables renamed to conform with Emacs coding conventions
959 The coding conventions require that boolean variables end in -flag.
960 The following two tables show which variables were affected (closes SF
961 #627015).
963 Customization Variables (defcustom)
965 Old Name                               New Name
967 mh-auto-folder-collect                 mh-auto-folder-collect-flag
968 mh-bury-show-buffer                    mh-bury-show-buffer-flag
969 mh-clean-message-header                mh-clean-message-header-flag
970 mh-decode-quoted-printable             mh-decode-quoted-printable-flag
971 mh-delete-yanked-msg-window            mh-delete-yanked-msg-window-flag
972 mh-do-not-confirm                      mh-do-not-confirm-flag
973 mh-highlight-citation-p                mh-highlight-citation
974 mh-insert-x-mailer-p                   mh-insert-x-mailer-flag
975 mh-print-background                    mh-print-background-flag
976 mh-recenter-summary-p                  mh-recenter-summary-flag
977 mh-recursive-folders                   mh-recursive-folders-flag
978 mh-reply-show-message-p                mh-reply-show-message-flag
979 mh-show-use-goto-addr                  mh-show-use-goto-addr-flag
980 mh-update-sequences-after-mh-show      mh-update-sequences-after-mh-show-flag
982 Regular Variables (defvar)
984 Old Name                               New Name
986 mh-mhn-compose-insert-p                mh-mhn-compose-insert-flag
987 mh-nmh-p                               mh-nmh-flag
988 mh-page-to-next-msg-p                  mh-page-to-next-msg-flag
992 * Changes in mh-e 6.1
994 This is a minor release which includes a few bug fixes. The
995 distribution now includes the ChangeLog.
997 ** New Features in mh-e 6.1
999 *** Fontification
1001 Unseen messages now displayed in bold.
1003 *** Viewing folders and sequences
1005 The folder and sequence listings that "F l (mh-list-folders)" and "S l
1006 (mh-list-sequences)" create are now displayed in view mode.
1008 ** Bug Fixes in mh-e 6.1
1010 *** mh-folder-unseen-seq-name
1012 Byte compilation failed when initializing this variable when the
1013 user's MH environment was not set up. This has been fixed (closes
1014 Debian #140232 and Debian #140817).
1016 *** mh-forward
1018 When forwarding a sequence, the mode of the draft would not be set to
1019 MH-Letter correctly. This has been fixed (closes SF #489448).
1021 *** mh-insert-prefix-string
1023 Fixed to work under XEmacs. Thanks to Will Partain
1024 <partain at dcs.gla.ac.uk>.
1026 *** mh-quit
1028 mh-quit now cleans up the buffers named `mh-temp-buffer,'
1029 'mh-temp-folders-buffer' and 'mh-temp-sequences-buffer.'
1032 * Changes in mh-e 6.0
1034 mh-e is now maintained at SourceForge (see
1035 http://mh-e.sourceforge.net/). This is where you need to go to obtain
1036 new versions of mh-e, report bugs and receive support.
1038 The maintainers have moved much of their personal configurations into
1039 the codebase, so you may find that you may be able to reduce your mh-e
1040 customizations as well.
1042 There are several incompatibilities in this version from older
1043 versions. Please read the following notes carefully for details. Pay
1044 particular attention to the key binding changes in the MH-Folder
1045 section. If you have customized your scan format, you will want to
1046 read about the new variable `mh-scan-format-file'.
1048 The manual could not be updated in time for this release. It will be
1049 updated in the near future. If the Preface in your manual indicates
1050 the older version (version 1.3, for mh-e version 5.0.2), please check
1051 the following page occasionally for an update:
1053   https://sourceforge.net/project/showfiles.php?group_id=13357
1056 ** New Features in mh-e 6.0
1058 *** Customization
1060 mh-e now uses the customize feature of Emacs. Use "M-x customize-group
1061 mh RET" to customize mh-e.
1063 *** Menus
1065 All mh-e modes now provide menus that contain most mh-e functions.
1067 *** Toolbars
1069 All mh-e modes now have toolbar buttons for oft-used functions (Emacs 21).
1071 *** Fontification
1073 All mh-e buffers now have font-lock keywords. To use, either call
1074 (turn-on-font-lock) from the appropriate hook, or set
1075 `global-font-lock-mode' to t. To customize, use "M-x
1076 customize-apropos-faces ^mh RET".
1078 If you have customized your scan lines, you will have to update your
1079 scan regexps. The existing regexps were changed to extract a match so
1080 you will have to add appropriate grouping constructs to take advantage
1081 of the fontification. Your old settings will continue to work, but the
1082 folder will not be fontified. For example:
1084   (setq mh-good-msg-regexp  "^\\(.....\\)[^D^]")
1086 You will most likely have to update the new variable
1087 `mh-scan-subject-regexp' as well. There is another new variable
1088 `mh-scan-date-regexp' which you may also find useful. Run "M-x apropos
1089 mh.*regexp" for a complete list.
1091 *** mail-user-agent support
1093 You can now set `mail-user-agent' to `mh-e-user-agent' so that packages
1094 that need to send mail will use mh-e (closes SF #406883, SF #470024).
1096 *** replgroupcomps support
1098 If you reply to `cc' or `all' and you use nmh, the nmh repl option
1099 -group will be used. This means that the file `replgroupcomps' will be
1100 used. If you have customized `replcomps', you will definitely want to
1101 either copy `$NMH_LIB/replgroupcomps' to your mail directory and modify
1102 it the same way that you modified your `replcomps' file, or simply
1103 copy your `replcomps' file to `replgroupcomps'.
1105 *** MH-Folder mode
1107 The variable `mh-summary-height' used to have a default of 4. It now
1108 varies from 4 to 10 depending on the height of the frame.
1110 Clicking the mouse on a message shows that message.
1112 Delete, refile and undo now operate on a region (but only if
1113 `transient-mark-mode' is non-nil).
1115 SPC (mh-page-msg) now displays the message if it is not already
1116 visible. If the bottom of a message is showing, SPC (mh-page-msg)
1117 moves to the next message (respecting the direction you are moving
1118 through the folder).
1120 The threading commands "T u (mh-next-unseen-subject-thread)",
1121 "T t (mh-toggle-subject-thread)", "T s (mh-narrow-to-subject-thread)",
1122 and "T k (mh-delete-subject-thread)" have been added. These functions
1123 do not offer threading in the true sense of the word, but do allow
1124 some manipulation by subject.
1126 Major, major keymap changes. This was done to free up movement
1127 commands in the buffer, and to provide for additional features, such
1128 as the threading commands. At the same time, better and more
1129 consistent mnemonics were realized that should make it easier to
1130 remember key bindings.
1132 Added new sub-keymaps for folder commands, sequence commands,
1133 extraction commands, and digest commands which begin with with F, S,
1134 X, and D, respectively. These sub-keymaps allowed some consistency
1135 (e.g., especially with l(ist) and k(ill)).
1137 Here are the actual changes and rationale:
1139 Old     New     Rationale
1141 e       -       Deleted. Already have x. Now used by mh-edit-again.
1142 j       -       Deleted. Already have g.
1144 M-a     e       Better mnemonic. Matches rmail. Frees movement command.
1145 M-e     E       Better mnemonic. Consistent with e.
1146 -       S       Why not? mh-sort-folder.
1148 M-f     Fv      Frees movement command
1149 M-f     Ff      Alias (keep?)
1150 M-f     Fo      Alias (keep?)
1151 M-k     Fk      No reason but to keep with folder commands
1152 M-l     Fl      No reason but to keep with folder commands
1153 M-p     Fp      No reason but to keep with folder commands
1154 M-r     Fr      Frees movement command
1155 M-s     Fs      No reason but to keep with folder commands
1156 M-u     Fu      No reason but to keep with folder commands
1158 M-%     Sd      Better mnemonic
1159 M-#     Sk      Better mnemonic
1160 M-q     Sl      Better mnemonic
1161 C-xn    Sn      Frees up standard key binding
1162 %       Sp      Better mnemonic for putting a message in a sequence
1163 ?       Ss      Shows sequences that message is in
1164 C-xw    Sw      Frees up standard key binding
1166 M-n     Xs      Better mnemonic (extract shar)
1167 M-n     Xu      Better mnemonic (extract uuencode)
1169 M-SPC   D SPC   Frees mark command
1170 M-\177  D \177  No reason but to keep with digest commands
1171 M-b     Db      Frees movement command
1173 As the number of variables increases, it is becoming important to
1174 organize the mh-e namespace. Several variables having to do with the
1175 format of scan lines were renamed, as follows:
1177 Old                             New
1179 mh-good-msg-regexp              mh-scan-good-msg-regexp
1180 mh-deleted-msg-regexp           mh-scan-deleted-msg-regexp
1181 mh-refiled-msg-regexp           mh-scan-refiled-msg-regexp
1182 mh-valid-scan-line              mh-scan-valid-regexp
1183 mh-cur-scan-msg-regexp          mh-scan-cur-msg-number-regexp
1184 -                               mh-scan-cur-msg-regexp
1185 -                               mh-scan-rcpt-regexp
1186 -                               mh-scan-format-regexp
1187 mh-msg-number-regexp            mh-scan-msg-number-regexp
1188 mh-msg-search-regexp            mh-scan-msg-search-regexp
1190 *** MH-Show mode
1192 While the MIME support is not complete, quoted-printable body parts
1193 are now decoded.
1195 Some MTAs quote From at the beginning of the line with a ">". The ">"
1196 is now removed in the display, but not on disk.
1198 *** MH-Letter mode
1200 New function "C-c C-o (mh-split-line)" splits lines in a draft
1201 preserving the fill prefix and indentation. This is useful when
1202 responding to several sentences in a single paragraph separately.
1204 "M-q (fill-paragraph)" can now be used on the message that is being
1205 replied to. The fill prefix such as "> " is preserved.
1207 You no longer have to run "C-c C-e (mh-edit-mhn)" manually as this is
1208 now done automatically when the message is sent.
1210 The X-Mailer header field is now added to messages as they are sent.
1212 "C-c C-m C-i (mh-mhn-compose-insertion)" now makes a pretty good guess
1213 at the type of file using the `file' command and no longer asks the
1214 user for the media type. If the necessary version of `file' is not
1215 available, the user is asked for the media type as before; however,
1216 the list of media types is now taken from the system mailcap if
1217 available. Failing that, the built-in list of types has been
1218 supplemented so in most cases the type you need should be present
1219 (closes SF #406883, #441179).
1221 ** New Variables in mh-e 6.0
1223 New variables not mentioned earlier include:
1225 *** mh-insert-x-mailer-p
1227 Default value of t means that an X-Mailer header field should be
1228 added.
1230 *** mh-reply-show-message-p
1232 The setting of this variable determines whether the MH show-buffer is
1233 displayed with the current message when using mh-reply without a prefix
1234 argument. Set it to nil if you already include the message
1235 automatically in your draft using "repl: -filter repl.filter" in
1236 "~/.mh_profile."
1238 *** mh-scan-format-file
1240 Specifies the format file to pass to the scan program. If t, the
1241 format string will be taken from the either `mh-scan-format-mh' or
1242 `mh-scan-format-nmh' depending on whether MH or nmh is in use. If nil,
1243 the default scan output will be used.
1245 If you customize the scan format, you may need to modify a few
1246 variables containing regexps that mh-e uses to identify specific
1247 portions of the output. Use `M-x apropos RET mh-scan.*regexp' to
1248 obtain a list of these variables.
1250 *** mh-scan-format-mh
1252 Scan format string for MH, provided to the scan program via the
1253 -format arg. This format is identical to the default except that
1254 additional hints for fontification have been added to the sixth
1255 column.
1257 *** mh-scan-format-nmh
1259 Scan format string for nmh, provided to the scan program via the
1260 -format arg. This format is identical to the default except that
1261 additional hints for fontification have been added to the sixth
1262 column.
1264 *** mh-show-use-goto-addr
1266 Non-nil means URLs and e-mail addresses are highlighted using
1267 goto-addr in MH-Show buffer.
1269 *** mh-letter-fill-column
1271 Fill column to use in `mh-letter-mode'. This is useful to make the
1272 lines a bit shorter to allow for quoting in replies.
1274 *** mh-folder-updated-hook
1276 Invoked when the actions in a folder (such as moves and deletes) are
1277 performed. Variables that are useful in this hook include
1278 `mh-delete-list' and `mh-refile-list' which can be used to see which
1279 changes are being made to current folder, `mh-current-folder'.
1281 *** mh-unseen-updated-hook
1283 Invoked after the unseen sequence has been updated. The variable
1284 `mh-seen-list' can be used to obtain the list of messages which will
1285 be removed from the unseen sequence
1287 ** Bug Fixes in mh-e 6.0
1289 *** mh-edit-again and mh-extract-rejected-mail
1291 Now insert a header separator (--------) which packages such as
1292 mailcrypt expect.
1294 *** mh-find-progs
1296 Now uses `mhparam' to set `mh-lib-progs' and `mh-lib'. Added more
1297 directories to `mh-progs' so that mh-e can autoconfigure in more
1298 environments. Chances are that you no longer have to set these
1299 variables, and if you do, you will only have to set `mh-progs'.
1300 Unless, of course, you are using an ancient version of MH that doesn't
1301 have `mhparam'.
1303 *** mh-folder-mode-map
1305 The DEL/<delete>/<backspace> change in Emacs 21 broke
1306 `mh-previous-page'. This has been fixed (closes SF #228907).
1308 *** mh-forward
1310 If you had "forw: -mime" to your .mh_profile, forwarding a message
1311 resulted in:
1313   Search failed: "^------- Forwarded Message"
1315 In addition, the Subject field was not filled in. This has been fixed
1316 (closes SF #223603).
1318 *** mh-kill-folder
1320 The user is now always prompted before this action; the variable
1321 `mh-do-not-confirm' is no longer consulted here. Therefore users who
1322 wanted to set `mh-do-not-confirm' but didn't because of the
1323 `mh-kill-folder' dependency may now do so.
1325 *** mh-make-folder-mode-line
1327 Properly deals with folders that do not have any lines in them. Prints
1328 "no msgs" instead of "0 msgs". Does not try to print a range when
1329 there are no messages.
1331 *** mh-mhn-compose-insertion
1333 Now gets the MIME type automatically (assuming the local file command
1334 supports the -i and -b options). If this use of the file command is
1335 not supported, the list of MIME types has been expanded to use the
1336 system's mailcap file.
1338 *** mh-nmh-p
1340 This variable (t when nmh is in use rather than MH) assumed that the
1341 string "nmh" is in `mh-lib-progs' or `mh-lib'. This has been fixed
1342 (closes SF #441776).
1344 *** mh-refile-msg
1346 No longer lets you specify an empty folder (closes SF #476824).
1348 *** mh-regenerate-headers
1350 Now suppresses "scan: bad message list" messages.
1352 *** mh-print-msg
1354 This function was looking for `mhl' in the wrong place on nmh on
1355 Redhat LINUX 7.0. This has been fixed (closes SF #481128).
1357 *** mh-show
1359 Now updates `cur' sequence after a message is shown (closes SF #481772).
1361 *** mh-showing
1363 Renamed variable and function to `mh-showing-mode' to conform with
1364 minor mode conventions. Added optional arg to function so it would
1365 behave like a normal minor mode: no or nil arg toggles mode, 0 arg
1366 turns off, non-nil turns on. This fixed the error that occurred when
1367 `desktop-create-buffer' recreated mh-e buffers because it was calling
1368 `mh-showing' with an arg.
1370 *** mh-version
1372 Fixed for nmh. Now displays mh-e version correctly. Cleaned up output
1373 and display `mh-progs', etc.
1375 *** mh-widen
1377 Now attempts to stay on the same message number (closes SF #480922).
1379 No longer wipes out pending deletes and refiles without warning
1380 (closes SF #481036).
1383 * Changes in mh-e 5.0.2
1385 This version contains additional minor changes to integrate it with
1386 reporter.el (requires reporter.el version 3.1c or later) and Emacs
1387 19.30.  The mh-goto-msg function is much faster, which also speeds up
1388 several other operations.
1391 * Changes in mh-e 5.0.1
1393 This version contains minor changes from mh-e 5.0 to integrate it with
1394 Emacs 19.29.
1397 * User-visible changes to mh-e 5.0
1399 Note: This being a major release, there are many internal changes.
1400 This document lists only changes to the external interfaces of mh-e.
1402 When upgrading, you must either explicitly reload the new versions of
1403 all mh-e files that are already loaded or restart your Emacs.
1406 ** Major Changes and New Features in mh-e 5.0
1408 The emphasis for this release has been on consistency and
1409 documentation. Many documentation strings were enhanced. Documentation
1410 strings were changed to comments for internal functions and variables.
1412 *** There is now proper documentation in the form of a 75-page users
1413 manual. The Texinfo source is mh-e.texi; the formatted Info document
1414 is mh-e.info.
1416 *** There is a new command `mh-update-sequences', which updates MH's
1417 idea of what messages are in the Unseen sequence and what is the
1418 current folder and message. `mh-quit' calls it. While
1419 `mh-execute-commands' has always done this updating as a side effect,
1420 the new function is faster.
1422 *** The MH profile entry "Inbox:" is supported.
1424 *** If the show-buffer is modified, the user is queried before mh-e
1425 reuses the buffer to show a different message. This buffer is also
1426 auto-saved and backed up correctly.
1428 *** `mh-store-buffer' is significantly more robust. It now handles
1429 messages created by a wide variety of packaging software. The status
1430 message for `uudecode' includes the name of the file created. An error
1431 is signaled if the subprocess exits with a non-zero status.
1433 *** `mh-search-folder' behaves predictably, adding messages found to
1434 the `search' sequence. It correctly handles the case of no messages
1435 found.
1437 *** `mh-burst-digest' (`M-b') now only rescans the part of the folder
1438 affected by the burst. It is now much faster in a large folder.
1441 ** New Hooks and Customization Variables in mh-e 5.0
1443 *** `mh-default-folder-for-message-function': new name for the old
1444 `mh-msg-folder-hook', which wasn't a hook. The old name was confusing,
1445 leading people to think they could use `add-hook' with it, when
1446 actually `setq' is the correct way.
1448 *** `mh-sortm-args': When this variable is used has changed. Now
1449 `mh-sortm-args' is passed if there IS a prefix argument to
1450 `mh-sort-folder'. The assumption is that for arguments you normally
1451 want, you would specify them in an MH profile entry.
1453 *** `mh-mhn-args': new hook, a list of additional arguments to pass to
1454 the `mhn' program if `mh-edit-mhn' is given a prefix argument.
1456 *** `mh-edit-mhn-hook': new hook called by `mh-edit-mhn', the function
1457 that formats MIME messages.
1459 *** `mh-folder-list-change-hook': new hook, called whenever the cached
1460 list of folders, `mh-folder-list', is changed.
1462 *** `mh-find-path-hook': new hook, called when entering mh-e.
1464 *** `mh-repl-formfile': new variable, used to change the format file
1465 used by `mh-reply' from the default of "replcomps".
1467 *** New variables to customize the scan format and notating:
1468 `mh-note-deleted', `mh-note-refiled', `mh-note-seq', `mh-note-cur',
1469 `mh-note-copied', `mh-note-printed'.
1472 ** Key Binding Changes in mh-e 5.0
1474 *** `RET' runs `mh-show' for consistency with the Finder and Info. The
1475 old binding `.' still works, but `RET' is now the standard binding.
1477 *** `M-<' now runs `mh-first-msg' for consistency with `M->', which
1478 runs `mh-last-msg'.
1480 *** `C-c C-f C-d' in MH-Letter mode moves to a Dcc: header field.
1482 *** `C-c C-f C-r' in MH-Letter mode moves to a From: header field.
1484 *** `g' is now the standard binding for `mh-goto-msg'. The old binding
1485 `j' still works.
1488 ** Other Improvements and Changes to mh-e 5.0
1490 *** `mh-lpr-command-format' no longer passes the "-p" argument to
1491 `lpr' by default. The mail header typically has the date anyway.
1493 *** When prompting for a sequence name, if no sequences have been used
1494 yet, mh-e will offer the first sequence the current message is in.
1496 *** The patterns of more mailers are recognized by
1497 `mh-extract-rejected-mail'.
1499 *** `mh-insert-prefix-string' no longer wraps the call to the
1500 `mail-citation-hook' function in a `save-excursion' so the hook writer
1501 can choose whether to leave point at the beginning or the end of the
1502 yanked text.
1504 *** `mh-write-msg-to-file': The prompt now refers to "message" or
1505 "message body" depending on which will be written. (This is controlled
1506 by a prefix argument.) The file defaults to the last-used file instead
1507 of supplying only the directory name.
1509 *** mh-e uses message ranges when running MH commands. Thus "rmm 1 2 3
1510 4 6" is now "rmm 1-4 6". This change makes it less likely to overflow
1511 system argument list limits, and it might be faster, too.
1514 ** Bug Fixes to mh-e 5.0
1516 *** mh-e's idea of the unseen sequence now stays in sync with MH's
1517 better.
1519 *** Functions that are supposed to find fields in the message header
1520 no longer look in the message body.
1522 *** mh-e would sometimes fail to remove the "%" from a scan line when
1523 the message was removed from a sequence if the message was also in the
1524 Previous sequence.
1526 *** The variable `mh-inc-prog' is now correctly used in all places.
1528 *** `mh-pipe-msg' runs the process in the correct directory.
1530 *** A partially scanned folder will no longer lose the "/select"
1531 annotation when you execute marked deletes and refiles with `x'.
1534 * Changes to mh-e 4.0
1536 This file is automatically generated from news-mh-e.txinfo.  Do not edit.
1538 [MH-E-ONEWS has been incorporated here and removed. news-mh-e.txinfo
1539 is no longer available.]
1541 Note: there are many internal changes to mh-e in this release.  If you
1542 have the previous version loaded into your Emacs, you will probably not
1543 be able to load this version on top of it.
1545 ** New Features in mh-e 4.0
1547 *** Background folder collection. The first time you are prompted for
1548 a folder, you must wait while mh-e collects the names of all existing
1549 folders. Now however, if you abort, collecting will continue in the
1550 background, and you can do something else in Emacs until the
1551 collection completes. Normally, mh-e will begin collecting folders
1552 names in the background when you first load it; you can disable this
1553 feature by setting `mh-auto-folder-collect' to nil.
1555 *** There is support for composing MIME messages using the `mhn'
1556 program from MH 6.8. See the documentation string for mh-edit-mhn.
1557 (While composing a letter, type `C-h k C-c C-e'.) See also mhn(1).
1558 There is as yet no support for reading MIME messages.
1560 *** `mh-show', typically on `.', repositions to the start of the
1561 message if the message is already visible. It used to do nothing in
1562 this case.
1564 *** The function `mh-unshar-msg' is renamed `mh-store-msg'. It now
1565 does uudecoding, too. Someday it should do MIME. It remembers the last
1566 directory you used and offers it as the default for next time.
1568 *** New function `mh-header-display', on `,', displays the message
1569 with all headers, including those normally not displayed. Type `.' to
1570 display the message normally again.
1572 *** New function `mh-list-sequences' lists the sequences in use in the
1573 current folder.
1575 *** New function `mh-version' displays version information about MH
1576 and mh-e. Please use the output in bug reports.
1578 *** `mh-quit' now burys the folder buffer and show buffer.
1581 ** New hooks and customization variables in mh-e 4.0
1583 *** `mh-pick-mode-hook': new hook called by new mode `mh-pick-mode'.
1584 The pick buffer didn't used to have its own mode. Another advantage of
1585 `mh-pick-mode' is that `C-h m' works in the pick buffer.
1587 *** `mail-citation-hook': new variable for supercite.
1589 *** `mh-refile-msg-hook': new hook called by `mh-refile-msg' (and
1590 `mh-refile-or-write-again' when refiling).
1592 *** `mh-msg-folder-hook': new hook used by `mh-refile-msg' and
1593 `mh-to-fcc' to provide a default folder for user prompt.
1595 *** `mh-show-hook': new hook called by `mh-show'.
1597 *** `mh-delete-msg-hook': new hook called by `mh-delete-msg'.
1599 *** `mh-show-mode-hook': new hook called by new mode `mh-show-mode'
1600 for `show-' buffers.
1602 *** `mh-comp-formfile': new variable so can customize `components'
1603 file.
1605 *** `mh-sortm-args': new variable, a list of extra arguments to be
1606 passed to sortm by `mh-sort-folder'. Give an argument to
1607 `mh-sort-folder' to suppress this behavior.
1609 *** `mh-send-prog': new variable so can customize name of `send'
1610 program in case of name conflicts.
1612 *** `mh-scan-prog': new variable so can customize name of `scan'
1613 program to generate custom effects.
1615 *** `mh-inc-prog': new variable so can customize name of `inc' program
1616 to do fancy management of incoming messages.
1618 *** `mh-forwarded-letter-subject': new function used by `mh-forward'
1619 to compute the Subject line of the new message. It is a small function
1620 which can be replaced by the user for customization. Uses the new
1621 variable `mh-forward-subject-format', which allows some simple
1622 customizations without rewriting even `mh-forwarded-letter-subject'.
1624 *** `mh-new-draft-cleaned-headers': new variable, header lines removed
1625 by `mh-edit-again' and `mh-extract-rejected-mail' before offering a
1626 message as a new draft.
1628 *** `mh-signature-file-name': new variable used by
1629 `mh-insert-signature' to so can customize name of the file to insert.
1631 *** `mh-read-address': new function called to read all To: and Cc:
1632 addresses.
1634 *** `mh-msg-folder-hook': new hook used by `mh-refile-msg' and
1635 `mh-to-fcc' to provide a default folder for user prompt.
1638 ** Key binding changes in mh-e 4.0
1640 *** `,' runs new function `mh-header-display'. It is like `.' but it
1641 displays *all* the headers.
1643 *** `M-#' runs the new function `mh-delete-seq'. One used to have to
1644 type `C-u M-%' to delete a sequence.
1646 *** `<' no longer does `mh-first-msg', but `M->' now does
1647 `mh-last-msg'. This allows first and last to be consistent (`>' was
1648 taken) and is more likely to be discovered by chance anyway.
1650 *** `M-d' runs `mh-redistribute', `r' runs `mh-reply' (on the theory
1651 that the more commonly used function should be easier to type, and the
1652 obscure action of redistributing can be harder to type).
1654 *** `M-o' changed to `C-o' (`mh-write-msg-to-file'). It was
1655 interfering with arrow keys for some people.
1657 *** `M-n' now runs `mh-store-msg' (formerly `mh-unshar-msg').
1659 *** `b' no longer runs `mh-quit'; use `q' instead. `b' may be used in
1660 a future version for something else.
1663 ** Minor improvements to mh-e 4.0
1665 *** The mh-e code is now divided into multiple Emacs Lisp files, so it
1666 starts up faster because Emacs doesn't have to load all of it at once.
1667 (This change also makes it easier for the maintainer to manage
1668 things.)
1670 *** When searching for the directory containing the MH programs,
1671 search the user's PATH in addition to the built-in directories, to
1672 increase the chance of finding the MH programs.
1674 *** The subject for a forwarded message no longer has ugly square
1675 brackets around it.
1677 *** The name of the folder is no longer appears twice in the show
1678 buffer mode line.
1680 *** When typing a folder name in the minibuffer, parent folders
1681 complete to the trailing slash (/), for easier typing of subfolders.
1683 *** The folder buffer mode name changed from `mh-e scan' or `mh-e
1684 show' to `MH-Folder', which makes the hook name easier to guess. Added
1685 `mh-showing' to `minor-mode-alist' so there is still an indication in
1686 the mode line of whether messages will be shown automatically.
1688 *** `mh-rename-seq' does completion on the old sequence name.
1690 *** If called by a user who has never used MH on this system before,
1691 mh-e runs the MH program `install-mh' to get them set up.
1693 *** Undo history for previous messages is not kept to avoid wasting
1694 memory.
1696 *** The internal temp buffer used by mh-e has `buffer-offer-save'
1697 explicitly nil. This change benefits people who change the
1698 `buffer-offer-save' default.
1701 ** Bug fixes to mh-e 4.0
1703 *** `mh-to-field': don't bomb if no To: field.
1705 *** `mh-get-new-mail': restore annotations, e.g., cur, even if no new
1706 mail.
1708 *** `mh-rename-seq': verify that the new seq name was accepted by
1709 `mark' before updating state.
1711 *** `mh-internal-seq': the Previous sequence is not notated, since it
1712 would notate everything scanned.
1714 *** `mh-read-draft': don't call `find-file-noselect' so an
1715 `auto-mode-alist' doesn't trigger `mh-letter-mode-hook' twice. Faster,
1716 too.
1718 *** `mh-show': If user moves onto a message that doesn't exist, don't
1719 leave the cursor in the show pane.
1721 *** `mh-delete-scan-msgs': use `equal', not `=', on the result of
1722 `mh-get-msg-num', since it may be nil.
1724 *** `mh-get-field': do anchored search so searching for `reply-to:'
1725 doesn't find `in-reply-to:'.
1727 *** `mh-widen': do nothing if not narrowed.
1729 *** `mh-clean-message-header': find end of headers even if no body.
1732 Local variables:
1733 mode: outline
1734 paragraph-separate: "[  \f]*$"
1735 end: