]> code.delx.au - gnu-emacs/blob - etc/MH-E-NEWS
Fixed typo.
[gnu-emacs] / etc / MH-E-NEWS
1 * COPYRIGHT
2
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.
8
9 * Changes in MH-E 7.82
10
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).
14
15 * Changes in MH-E 7.81
16
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.
25
26 * Changes in MH-E 7.4.80
27
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.
38
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.
45
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.
51
52 ** New Features in MH-E 7.4.80
53
54 *** GNU mailutils Support
55
56 MH-E now supports GNU mailutils 0.4 and higher versions.
57
58 *** S/MIME Support
59
60 MH-E now supports S/MIME using Gnus 5.10.6 or higher.
61
62 *** Picon Support
63
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.]
70
71 *** X-Image-URL Updates
72
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.
77
78 WARNING: There are security concerns with this feature. Please read
79 the documentation for these options carefully before changing the
80 default.
81
82 *** Updates to mh-identity-list
83
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.
89
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.
93
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'.
99
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".
106
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).
109
110 *** Catchup Command
111
112 There is a new "F c (mh-catchup)" command that marks all unread
113 messages in the current folder as read.
114
115 *** Change Content-Type Renderer on the Fly in MH-Show Buffer
116
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).
122
123 *** Use which-func-mode to Display Folder in Index Mode
124
125 Turning on `which-func-mode' displays the folder name of the message
126 under the cursor in index folders (closes SF #855520).
127
128 *** Render Signature and vCard in Italics
129
130 This has been implemented. Use `mh-show-signature-face' to customize
131 the face used (closes SF #802722).
132
133 *** New Print Map
134
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:
138
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
147
148 *** Draft Buffer Keymap Changes
149
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.
153
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.
158
159 Key 7.4.4 7.4.80
160
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
184
185 *** Speedbar: Highlight Folders With Unseen
186
187 The speedbar now renders the folders with unseen messages in boldface
188 which makes them easier to identify (closes SF #623369).
189
190 *** Quick Key Help
191
192 The "? (mh-help)" function now displays the help in its own buffer
193 called *MH-E Help* (closes SF #493740 and SF #656631).
194
195 *** New Startup File mh-e-autoloads.el
196
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.
200
201 *** Glimpse Support Removed
202
203 Since glimpse isn't free, we cannot mention it. Glimpse has been
204 removed from the option `mh-indexer-choices' (closes SF #831276).
205
206 *** mh-msg-is-in-seq Update
207
208 Can now specify an alternate message number to "S s
209 (mh-msg-is-in-seq)" with a prefix argument.
210
211 ** New Variables in MH-E 7.4.80
212
213 Variables that have been added to MH-E that have not been discussed
214 elsewhere are listed here.
215
216 *** mail-citation-hook
217
218 Hook for modifying a citation just inserted in the mail buffer.
219
220 *** mh-alias-reloaded-hook
221
222 Invoked by `mh-alias-reload' after reloading aliases.
223
224 *** mh-auto-fields-prompt-flag
225
226 Non-nil means to prompt before sending if fields in
227 `mh-auto-fields-list' are inserted.
228
229 *** mh-default-folder-for-message-function
230
231 Function to select a default folder for refiling or `Fcc'.
232
233 *** mh-forward-hook
234
235 Invoked on the forwarded letter by "f (mh-forward)".
236
237 *** mh-invisible-header-fields-default
238
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).
244
245 The option `mh-visible-header-fields' has been deleted.
246
247 *** mh-junk-background
248
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.
254
255 *** mh-signature-separator-flag
256
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.
262
263 *** mh-variant
264
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'.
272
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.
276
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.
281
282 ** Variables Deleted in MH-E
283
284 Variables that have been removed from MH-E that have not been
285 discussed elsewhere are listed here.
286
287 *** mh-alias-system-aliases
288
289 System definitions should not be a user option.
290
291 *** mh-junk-mail-folder
292
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.
295
296 ** Bug Fixes in MH-E 7.4.80
297
298 Many bugs were fixed in this version that aren't listed below.
299
300 *** mh-extract-rejected-mail Can't Do MIME (and Other Formats)
301
302 Now handles qmail and exim bounces (addresses SF #404965).
303
304 *** mh-rmail Hangs in XEmacs
305
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).
310
311 *** Inconsistent Prompts
312
313 Prompt formats are now consistent throughout the application (closes
314 SF #730470).
315
316 *** Empty Shell Comments Confuse mh-mhn-directive-present-p
317
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).
320
321 *** Quote Hashes When mhbuild Directives Used
322
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).
327
328 *** Inconsistent Usage in Scan Formatting Variables
329
330 The variables:
331
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
339
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).
345
346 *** Bad Handling of Aliases That Conflict With Local User Names
347
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).
352
353 *** Args out of range
354
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).
358
359 *** mh-forward hard-codes '-mime' Switch on nmh
360
361 Added new option `mh-compose-forward-as-mime-flag' that controls whether
362 messages are forwarded as MIME attachments (closes SF #827203).
363
364 *** Not Re-prompted to Sign After Pass Phrase Typo
365
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).
369
370 *** Font-lock Gets Confused in MH-Letter Buffer
371
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).
377
378 *** mh-refile-msg Fails to Suggest Folder for Empty Message
379
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).
383
384 *** Error Visiting Folder With no Unseen Messages
385
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).
389
390 \f
391
392 * Changes in MH-E 7.4.4
393
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.
401
402 * Changes in MH-E 7.4.3
403
404 Version 7.4.3 fixes the problem where `mh-identity-list' was not getting
405 set from .emacs.
406
407 * Changes in MH-E 7.4.2
408
409 Version 7.4.2 fixes the accidental dependence on nmh (closes SF
410 #791021).
411
412 * Changes in MH-E 7.4.1
413
414 Version 7.4.1 fixes the Makefile so it no longer tries to compile
415 mh-unit.el.
416
417 * Changes in MH-E 7.4
418
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.
423
424 ** New Features in MH-E 7.4
425
426 *** Add Arbitrary Ranges to MH-E UI
427
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).
431
432 *** Remove Prompting in mh-send
433
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.
437
438 The new customization variable `mh-compose-prompt-flag' can be set to
439 t to get the original behavior (closes SF #745622).
440
441 *** Use TAB to Switch Fields in Header
442
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).
448
449 *** Alias Completion in Composition Buffer
450
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).
457
458 *** Auto Fields Should be Inserted During Send
459
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).
463
464 *** mh-index-tick-messages
465
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.
471
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).
477
478 *** Narrow to Region
479
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).
485
486 *** Narrow to Ticked Sequence
487
488 The buffer can now be narrowed to ticked messages with "S '
489 (mh-narrow-to-tick)" (closes SF #732825).
490
491 *** Display Multiple Buttons for multipart/alternative
492
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).
497
498 *** Identity Menu Changes
499
500 A menu item has been added that inserts custom fields if the To or Cc
501 header fields match `mh-auto-fields-list'.
502
503 ** New Variables in MH-E 7.4
504
505 *** mh-alias-local-users-prefix
506
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.
510
511 *** mh-alias-passwd-gecos-comma-separator-flag
512
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."
515
516 *** mh-interpret-number-as-range-flag
517
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".
521
522 *** mh-kill-folder-suppress-prompt-hook
523
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.
529
530 The default value of `mh-index-p' suppresses the prompt on folders
531 generated by an index search.
532
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.
536
537 *** mh-refile-preserves-sequences-flag
538
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.
545
546 *** mh-visible-header-fields
547
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'.
551
552 ** Variables Deleted in MH-E 7.4
553
554 *** mh-visible-headers
555
556 See the paragraph for `mh-visible-header-fields' above.
557
558 ** Bug Fixes in MH-E 7.4
559
560 *** Aliases Constantly Reloaded
561
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).
565
566 *** Folders in MH-Index View Not Saved
567
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).
574
575 *** Ticking Messages in +mhe-index/new
576
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).
582
583 *** Custom Vars Set by a Function
584
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).
588
589 *** Folder Completion Slow
590
591 The first folder completion was very slow. This has been fixed (closes
592 SF #730426).
593
594 *** Tick Sequence Persistent When Refiled
595
596 Sequences are now preserved when messages are refiled (closes SF
597 #737128).
598
599 *** Auto-inserted Header Fields Inconsistent
600
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.
606
607 *** Toolbar Spec Error
608
609 The following message appeared when displaying a message in XEmacs:
610
611 Signaling: (error "Toolbar spec must be list or nil" )
612
613 This has been fixed (closes SF #745655).
614
615 *** mh-index-search Doesn't Find Short Acronyms
616
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).
621
622 \f
623
624 * Changes in MH-E 7.3
625
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.
632
633 ** New Features in MH-E 7.3
634
635 *** Unified Function Arguments
636
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.
644
645 *** MH-Index View of Unseen Messages
646
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.
652
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).
658
659 *** Spam Software Support
660
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).
666
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'.
671
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'.
676
677 The documentation for the following functions describes what setup is
678 needed for the different spam fighting programs:
679
680 - `mh-bogofilter-blacklist'
681 - `mh-spamprobe-blacklist'
682 - `mh-spamassassin-blacklist'
683
684 *** Relative Folder Specification @ Supported
685
686 You can now use the relative folder marker @ in folder names (closes
687 SF #666774).
688
689 *** Marking Messages
690
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).
696
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.
700
701 *** mh-default-folder-list Now Takes Recipients
702
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.
706
707 *** Face Header Field Supported
708
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.
712
713 *** X-Image-URL Support
714
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.
718
719 *** Fcc Completion
720
721 Folders in Fcc fields in message drafts can now be completed with
722 M-TAB.
723
724 ** New Variables in MH-E 7.3
725
726 Variables that have been added to MH-E that have not been discussed
727 elsewhere are listed here.
728
729 *** mh-auto-fields-list
730
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.
737
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.
740
741 *** mh-show-xface-face
742
743 Face for displaying the X-Face image.
744
745 *** mh-xemacs-toolbar-position
746
747 This customization variable allows the user to place the toolbar on
748 the four edges of the frame.
749
750 *** mh-xemacs-use-toolbar-flag
751
752 This customization variable is used to enable or disable the toolbar
753 under XEmacs.
754
755 ** Variables Deleted in MH-E 7.3
756
757 Variables that have been removed from MH-E that have not been
758 discussed elsewhere are listed here.
759
760 *** mh-decode-content-transfer-encoded-message-flag
761
762 No longer needed since the external program mimencode is no longer
763 used.
764
765 *** mh-index-show-hook
766
767 This hook was never used, so it was removed.
768
769 *** mh-tool-bar-reply-3-buttons-flag
770
771 Obsolete. This functionality is present `mh-tool-bar-folder-buttons'.
772
773 ** Bug Fixes in MH-E 7.3
774
775 *** Can't Refile Message
776
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).
781
782 *** Empty Body Triggers Duped Header
783
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).
787
788 *** mml or mhl Directives Not Always Processed
789
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.
796
797 *** mh-alias-grab-from-field Fails
798
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).
805
806 *** XEmacs Fixes
807
808 MH-E is now fully supported under XEmacs and compiles without any
809 warnings.
810
811 In particular, the following now work under XEmacs:
812
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
818
819 *** Indexed Folders Should Respect mh-show-threads-flag
820
821 Indexed folders are now threaded if `mh-show-threads-flag' is non-nil
822 (closes SF #709667).
823
824 *** Threading Index View Loses Folder Info
825
826 This has been fixed (closes SF #709672).
827
828 *** No Undo Information When Re-editing Drafts
829
830 Undo is turned on in the draft buffer when using "e (mh-edit-again)"
831 (closes SF #712777).
832
833 *** Forwarded base64-encoded Messages Are Incorrectly Displayed
834
835 This has been fixed (closes SF #681518).
836
837 *** Append to *MH-E Log* Buffer
838
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.
844
845 *** mh-inc-folder Complains if No Mail and No Current Message
846
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).
850
851 *** Folder Normalization Strips Leading Slash
852
853 Leading "/" characters in folder names entered by the user were being
854 lost. This has been fixed (closes SF #676890).
855
856 *** Print Header Doesn't Show Message
857
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.
864
865 *** Aliases Constantly Reloaded
866
867 Empty lists are now handled properly (closes SF #693859).
868
869 *** Remove RCS Keywords
870
871 Removed RCS keywords per Emacs conventions (closes SF #680731).
872
873 *** Replace Mimencode
874
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).
878
879 \f
880
881 * Changes in MH-E 7.2
882
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.
890
891 ** New Features in MH-E 7.2
892
893 *** Filing Hints
894
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.
903
904 *** Hierarchical File Name Completion
905
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.
911
912 *** Indexed Search and Pick Integration
913
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.
921
922 Second, the results from a pick search are now saved in a sub-folder
923 of +mhe-index like an indexed search.
924
925 Third, `pick' is now a valid choice for `mh-index-program'.
926
927 *** mh-visit-folder Metamorphosis Continues
928
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.
936
937 *** Displayed Message Indicator
938
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).
942
943 *** Buffer Name Organization
944
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.
951
952 *** mh-index-program
953
954 Add choices for `mairix' and `pick'.
955
956 *** Logo Displayed on Mode Line
957
958 ** New Variables in MH-E 7.2
959
960 The new variables have been discussed elsewhere.
961
962 ** Bug Fixes in MH-E 7.2
963
964 *** mh-decode-content-transfer-encoded-message
965
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'.
970
971 *** mh-kill-folder
972
973 Now restores previous window configuration (closes SF #664828).
974
975 *** mh-mime-display
976
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).
980
981 *** mh-read-address
982
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).
986
987 *** mh-rmail
988
989 Unseen messages are now shown in addition to new ones (closes SF
990 #667542).
991
992 *** mh-scan-msg-overflow-regexp
993
994 Change the variable so that a space is always maintained in the
995 beginning of the scan line.
996
997 *** mh-swish-execute-search
998
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).
1003
1004 *** mh-thread-refile
1005
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).
1008
1009 *** mh-toggle-threads
1010
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).
1015
1016 *** mh-tool-bar-show-set, mh-tool-bar-letter-set, mh-tool-bar-folder-set
1017
1018 Clicking the customize and help buttons now deletes the other windows
1019 in the frame.
1020
1021 *** mh-version
1022
1023 The "M-x mh-version" command displayed "Aliasfile: aliases". This has
1024 been fixed (closes SF #664467). See Buffer Name Organization above.
1025
1026 \f
1027
1028 * Changes in MH-E 7.1
1029
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.
1033
1034 ** New Features in MH-E 7.1
1035
1036 *** Multiple Identities
1037
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.
1042
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".
1047
1048 This functionality can be customized within the mh-identity group.
1049
1050 *** Alias Completion and Harvesting
1051
1052 The contributed file mh-alias.el has been rewritten and incorporated
1053 into MH-E.
1054
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.
1061
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).
1065
1066 This functionality can be customized within the mh-alias group.
1067
1068 *** Index Folder Updates
1069
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).
1075
1076 If a prefix argument is given then the search in the current index
1077 buffer is redone.
1078
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)."
1085
1086 *** mh-visit-folder Interface Updated
1087
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).
1094
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.
1098
1099 *** Threading Improvements
1100
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)
1105
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).
1109
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'.
1113
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)"
1118
1119 *** Refiling of Messages in Region
1120
1121 If mark is active and `transient-mark-mode' is enabled then all the
1122 messages in the region are refiled.
1123
1124 *** vCard Handling
1125
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).
1128
1129 *** New Info Added to mh-version
1130
1131 Information about Gnus versions available at both compile time and run
1132 time has been added.
1133
1134 ** New Variables in MH-E 7.1
1135
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".
1139
1140 *** mh-alias-completion-ignore-case-flag
1141
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.
1146
1147 *** mh-alias-expand-aliases-flag
1148
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.
1153
1154 *** mh-alias-flash-on-comma
1155
1156 Specify whether to flash the translation of the alias or warn if there
1157 isn't a translation of the alias.
1158
1159 *** mh-alias-insert-file
1160
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.
1165
1166 *** mh-alias-insertion-location
1167
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.
1171
1172 *** mh-alias-local-users
1173
1174 If t, local users are completed in MH-E To: and Cc: prompts.
1175
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.
1179
1180 *** mh-alias-system-aliases
1181
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.
1186
1187 *** mh-identity-default
1188
1189 Default identity to use when `mh-letter-mode' is called.
1190
1191 *** mh-identity-list
1192
1193 List holding MH-E identity.
1194
1195 *** mh-invisible-header-fields
1196
1197 Simple user interface to change `mh-invisible-headers'.
1198
1199 *** mh-letter-complete-function
1200
1201 Function to call when completing outside of fields specific to
1202 aliases. By default, it is bound to 'ispell-complete-word.
1203
1204 *** mh-show-threads-flag
1205
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).
1210
1211 *** mh-tool-bar-folder-buttons
1212
1213 Buttons to include in MH-E folder/show toolbar.
1214
1215 *** mh-tool-bar-letter-buttons
1216
1217 Buttons to include in MH-E letter toolbar.
1218
1219 ** Bug Fixes in MH-E 7.1
1220
1221 *** mh-get-new-mail
1222
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).
1225
1226 *** mh-set-cmd-note
1227
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).
1231
1232 \f
1233
1234 * Changes in MH-E 7.0
1235
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.
1240
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.
1245
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.
1249
1250 ** New Features in MH-E 7.0
1251
1252 *** Speedbar
1253
1254 There is now support for the speedbar. Try "M-x speedbar" (closes SF
1255 #503727).
1256
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.
1261
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.
1267
1268 *** Indexed Search
1269
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)".
1273
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.
1279
1280 *** Threading
1281
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.
1284
1285 *** Brief Help
1286
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).
1291
1292 *** Folder Keymap Shared by Show Buffer
1293
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.
1298
1299 *** Better Scanning
1300
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).
1306
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'.
1310
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.
1314
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.
1320
1321 *** X-Face
1322
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).
1328
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.
1333
1334 It has also been observed that if you don't see the faces, you might
1335 have to do this (for unknown reasons):
1336
1337 mv /usr/local/include/compface.h /usr/include/
1338
1339 *** Graphical Smileys
1340
1341 Smiley's are now converted to cute little images. See the new
1342 customization variable `mh-graphical-smileys-flag.'
1343
1344 *** Text Emphasis
1345
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.'
1351
1352 *** Attachment Handling
1353
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.
1361
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'.
1366
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).
1370
1371 *** Quoted-printable Handling
1372
1373 Quoted-printable body parts are now decoded.
1374
1375 *** More Choices for `mh-yank-from-start-of-msg'
1376
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:
1382
1383 `body': yank the message minus the header.
1384
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.
1388
1389 `autosupercite': do as for `supercite' automatically when show buffer
1390 matches the message being replied-to.
1391
1392 `attribution': yank the message minus the header and add a simple
1393 attribution line at the top.
1394
1395 `autoattrib': do as for `attribution' automatically when show buffer
1396 matches the message being replied-to.
1397
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.
1401
1402 *** Use Gnus mml Instead of mhn
1403
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.
1407
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).
1411
1412 *** Content-Type Now Obtained Automatically
1413
1414 The value of the Content-Type no longer needs to be entered by the
1415 user.
1416
1417 *** Attachments Automatically Included Upon Send
1418
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)".
1424
1425 *** GPG Handling
1426
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.
1432
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:
1435
1436 (setq mml2015-use 'gpg)
1437
1438 To mimic automatic encryption in gpg.el, use:
1439
1440 (setq mm-verify-option 'always)
1441 (setq mm-decrypt-option 'always)
1442
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.
1446
1447 *** Mail-Followup-To Header Field
1448
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.
1455
1456 *** Gnus Issues
1457
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.
1461
1462 ** New Variables in MH-E 7.0
1463
1464 New customization variables not mentioned earlier include:
1465
1466 *** mh-letter-insert-signature-hook
1467
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.
1472
1473 *** mh-show-maximum-size
1474
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).
1479
1480 *** mh-tool-bar-reply-3-buttons-flag
1481
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.
1486
1487 ** Bug Fixes in MH-E 7.0
1488
1489 *** mh-delete-msg, mh-refile-msg, mh-undo
1490
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).
1494
1495 *** mh-edit-again
1496
1497 This would sometimes yield a read-only buffer. This has been fixed
1498 (closes SF #624283 and SF #625538).
1499
1500 *** mh-forward
1501
1502 When using nmh, always specify -mime so as to preserve the original
1503 message(s).
1504
1505 *** mh-inc-folder
1506
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).
1511
1512 *** mh-insert-letter
1513
1514 No longer uses mhl to include a message as this mangled the header and
1515 gave supercite fits (closes SF #629153).
1516
1517 *** mh-letter-mode
1518
1519 "M-q (fill-paragraph)" now fills quoted paragraphs (for example,
1520 starting with "> ") correctly (closes SF #489927).
1521
1522 *** mh-next-undeleted-msg, mh-previous-undeleted-msg
1523
1524 If there are no more undeleted messages the point remains at its
1525 original position and a message is produced (closes SF #494304).
1526
1527 *** mh-pick-mode
1528
1529 Now calls `mh-pick-mode-hook' as documented.
1530
1531 *** mh-put-msg-in-seq
1532
1533 Now puts all messages in region in sequence (closes SF #630324).
1534
1535 *** mh-refile-msg, mh-write-msg-to-file
1536
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).
1541
1542 *** mh-region-to-sequence
1543
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).
1547
1548 *** mh-reply
1549
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).
1554
1555 *** mh-show-mode
1556
1557 Now calls `mh-show-mode-hook' as documented (closes SF #627222).
1558
1559 *** mh-subject-thread-to-sequence
1560
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).
1564
1565 *** Other Bug Fixes
1566
1567 The following bugs have also been closed:
1568
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
1572
1573 *** Variables renamed to conform with Emacs coding conventions
1574
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).
1578
1579 Customization Variables (defcustom)
1580
1581 Old Name New Name
1582
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
1597
1598 Regular Variables (defvar)
1599
1600 Old Name New Name
1601
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
1605
1606 \f
1607
1608 * Changes in mh-e 6.1
1609
1610 This is a minor release which includes a few bug fixes. The
1611 distribution now includes the ChangeLog.
1612
1613 ** New Features in mh-e 6.1
1614
1615 *** Fontification
1616
1617 Unseen messages now displayed in bold.
1618
1619 *** Viewing folders and sequences
1620
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.
1623
1624 ** Bug Fixes in mh-e 6.1
1625
1626 *** mh-folder-unseen-seq-name
1627
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).
1631
1632 *** mh-forward
1633
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).
1636
1637 *** mh-insert-prefix-string
1638
1639 Fixed to work under XEmacs. Thanks to Will Partain
1640 <partain at dcs.gla.ac.uk>.
1641
1642 *** mh-quit
1643
1644 mh-quit now cleans up the buffers named `mh-temp-buffer,'
1645 'mh-temp-folders-buffer' and 'mh-temp-sequences-buffer.'
1646
1647 \f
1648 * Changes in mh-e 6.0
1649
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.
1653
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.
1657
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'.
1663
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:
1668
1669 https://sourceforge.net/project/showfiles.php?group_id=13357
1670
1671
1672 ** New Features in mh-e 6.0
1673
1674 *** Customization
1675
1676 mh-e now uses the customize feature of Emacs. Use "M-x customize-group
1677 mh RET" to customize mh-e.
1678
1679 *** Menus
1680
1681 All mh-e modes now provide menus that contain most mh-e functions.
1682
1683 *** Toolbars
1684
1685 All mh-e modes now have toolbar buttons for oft-used functions (Emacs 21).
1686
1687 *** Fontification
1688
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".
1693
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:
1699
1700 (setq mh-good-msg-regexp "^\\(.....\\)[^D^]")
1701
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.
1706
1707 *** mail-user-agent support
1708
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).
1711
1712 *** replgroupcomps support
1713
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'.
1720
1721 *** MH-Folder mode
1722
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.
1725
1726 Clicking the mouse on a message shows that message.
1727
1728 Delete, refile and undo now operate on a region (but only if
1729 `transient-mark-mode' is non-nil).
1730
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).
1735
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.
1741
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.
1747
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)).
1752
1753 Here are the actual changes and rationale:
1754
1755 Old New Rationale
1756
1757 e - Deleted. Already have x. Now used by mh-edit-again.
1758 j - Deleted. Already have g.
1759
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.
1763
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
1773
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
1781
1782 M-n Xs Better mnemonic (extract shar)
1783 M-n Xu Better mnemonic (extract uuencode)
1784
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
1788
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:
1792
1793 Old New
1794
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
1805
1806 *** MH-Show mode
1807
1808 While the MIME support is not complete, quoted-printable body parts
1809 are now decoded.
1810
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.
1813
1814 *** MH-Letter mode
1815
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.
1819
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.
1822
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.
1825
1826 The X-Mailer header field is now added to messages as they are sent.
1827
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).
1836
1837 ** New Variables in mh-e 6.0
1838
1839 New variables not mentioned earlier include:
1840
1841 *** mh-insert-x-mailer-p
1842
1843 Default value of t means that an X-Mailer header field should be
1844 added.
1845
1846 *** mh-reply-show-message-p
1847
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."
1853
1854 *** mh-scan-format-file
1855
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.
1860
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.
1865
1866 *** mh-scan-format-mh
1867
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.
1872
1873 *** mh-scan-format-nmh
1874
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.
1879
1880 *** mh-show-use-goto-addr
1881
1882 Non-nil means URLs and e-mail addresses are highlighted using
1883 goto-addr in MH-Show buffer.
1884
1885 *** mh-letter-fill-column
1886
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.
1889
1890 *** mh-folder-updated-hook
1891
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'.
1896
1897 *** mh-unseen-updated-hook
1898
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
1902
1903 ** Bug Fixes in mh-e 6.0
1904
1905 *** mh-edit-again and mh-extract-rejected-mail
1906
1907 Now insert a header separator (--------) which packages such as
1908 mailcrypt expect.
1909
1910 *** mh-find-progs
1911
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'.
1918
1919 *** mh-folder-mode-map
1920
1921 The DEL/<delete>/<backspace> change in Emacs 21 broke
1922 `mh-previous-page'. This has been fixed (closes SF #228907).
1923
1924 *** mh-forward
1925
1926 If you had "forw: -mime" to your .mh_profile, forwarding a message
1927 resulted in:
1928
1929 Search failed: "^------- Forwarded Message"
1930
1931 In addition, the Subject field was not filled in. This has been fixed
1932 (closes SF #223603).
1933
1934 *** mh-kill-folder
1935
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.
1940
1941 *** mh-make-folder-mode-line
1942
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.
1946
1947 *** mh-mhn-compose-insertion
1948
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.
1953
1954 *** mh-nmh-p
1955
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).
1959
1960 *** mh-refile-msg
1961
1962 No longer lets you specify an empty folder (closes SF #476824).
1963
1964 *** mh-regenerate-headers
1965
1966 Now suppresses "scan: bad message list" messages.
1967
1968 *** mh-print-msg
1969
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).
1972
1973 *** mh-show
1974
1975 Now updates `cur' sequence after a message is shown (closes SF #481772).
1976
1977 *** mh-showing
1978
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.
1985
1986 *** mh-version
1987
1988 Fixed for nmh. Now displays mh-e version correctly. Cleaned up output
1989 and display `mh-progs', etc.
1990
1991 *** mh-widen
1992
1993 Now attempts to stay on the same message number (closes SF #480922).
1994
1995 No longer wipes out pending deletes and refiles without warning
1996 (closes SF #481036).
1997
1998 \f
1999 * Changes in mh-e 5.0.2
2000
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.
2005
2006 \f
2007 * Changes in mh-e 5.0.1
2008
2009 This version contains minor changes from mh-e 5.0 to integrate it with
2010 Emacs 19.29.
2011
2012 \f
2013 * User-visible changes to mh-e 5.0
2014
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.
2017
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.
2020
2021
2022 ** Major Changes and New Features in mh-e 5.0
2023
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.
2027
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.
2031
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.
2037
2038 *** The MH profile entry "Inbox:" is supported.
2039
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.
2043
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.
2048
2049 *** `mh-search-folder' behaves predictably, adding messages found to
2050 the `search' sequence. It correctly handles the case of no messages
2051 found.
2052
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.
2055
2056
2057 ** New Hooks and Customization Variables in mh-e 5.0
2058
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.
2063
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.
2068
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.
2071
2072 *** `mh-edit-mhn-hook': new hook called by `mh-edit-mhn', the function
2073 that formats MIME messages.
2074
2075 *** `mh-folder-list-change-hook': new hook, called whenever the cached
2076 list of folders, `mh-folder-list', is changed.
2077
2078 *** `mh-find-path-hook': new hook, called when entering mh-e.
2079
2080 *** `mh-repl-formfile': new variable, used to change the format file
2081 used by `mh-reply' from the default of "replcomps".
2082
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'.
2086
2087
2088 ** Key Binding Changes in mh-e 5.0
2089
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.
2092
2093 *** `M-<' now runs `mh-first-msg' for consistency with `M->', which
2094 runs `mh-last-msg'.
2095
2096 *** `C-c C-f C-d' in MH-Letter mode moves to a Dcc: header field.
2097
2098 *** `C-c C-f C-r' in MH-Letter mode moves to a From: header field.
2099
2100 *** `g' is now the standard binding for `mh-goto-msg'. The old binding
2101 `j' still works.
2102
2103
2104 ** Other Improvements and Changes to mh-e 5.0
2105
2106 *** `mh-lpr-command-format' no longer passes the "-p" argument to
2107 `lpr' by default. The mail header typically has the date anyway.
2108
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.
2111
2112 *** The patterns of more mailers are recognized by
2113 `mh-extract-rejected-mail'.
2114
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.
2119
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.
2124
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.
2128
2129
2130 ** Bug Fixes to mh-e 5.0
2131
2132 *** mh-e's idea of the unseen sequence now stays in sync with MH's
2133 better.
2134
2135 *** Functions that are supposed to find fields in the message header
2136 no longer look in the message body.
2137
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.
2141
2142 *** The variable `mh-inc-prog' is now correctly used in all places.
2143
2144 *** `mh-pipe-msg' runs the process in the correct directory.
2145
2146 *** A partially scanned folder will no longer lose the "/select"
2147 annotation when you execute marked deletes and refiles with `x'.
2148
2149 \f
2150 * Changes to mh-e 4.0
2151
2152 This file is automatically generated from news-mh-e.txinfo. Do not edit.
2153
2154 [MH-E-ONEWS has been incorporated here and removed. news-mh-e.txinfo
2155 is no longer available.]
2156
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.
2160
2161 ** New Features in mh-e 4.0
2162
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.
2170
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.
2175
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.
2179
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.
2183
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.
2187
2188 *** New function `mh-list-sequences' lists the sequences in use in the
2189 current folder.
2190
2191 *** New function `mh-version' displays version information about MH
2192 and mh-e. Please use the output in bug reports.
2193
2194 *** `mh-quit' now burys the folder buffer and show buffer.
2195
2196
2197 ** New hooks and customization variables in mh-e 4.0
2198
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.
2202
2203 *** `mail-citation-hook': new variable for supercite.
2204
2205 *** `mh-refile-msg-hook': new hook called by `mh-refile-msg' (and
2206 `mh-refile-or-write-again' when refiling).
2207
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.
2210
2211 *** `mh-show-hook': new hook called by `mh-show'.
2212
2213 *** `mh-delete-msg-hook': new hook called by `mh-delete-msg'.
2214
2215 *** `mh-show-mode-hook': new hook called by new mode `mh-show-mode'
2216 for `show-' buffers.
2217
2218 *** `mh-comp-formfile': new variable so can customize `components'
2219 file.
2220
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.
2224
2225 *** `mh-send-prog': new variable so can customize name of `send'
2226 program in case of name conflicts.
2227
2228 *** `mh-scan-prog': new variable so can customize name of `scan'
2229 program to generate custom effects.
2230
2231 *** `mh-inc-prog': new variable so can customize name of `inc' program
2232 to do fancy management of incoming messages.
2233
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'.
2239
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.
2243
2244 *** `mh-signature-file-name': new variable used by
2245 `mh-insert-signature' to so can customize name of the file to insert.
2246
2247 *** `mh-read-address': new function called to read all To: and Cc:
2248 addresses.
2249
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.
2252
2253
2254 ** Key binding changes in mh-e 4.0
2255
2256 *** `,' runs new function `mh-header-display'. It is like `.' but it
2257 displays *all* the headers.
2258
2259 *** `M-#' runs the new function `mh-delete-seq'. One used to have to
2260 type `C-u M-%' to delete a sequence.
2261
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.
2265
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).
2269
2270 *** `M-o' changed to `C-o' (`mh-write-msg-to-file'). It was
2271 interfering with arrow keys for some people.
2272
2273 *** `M-n' now runs `mh-store-msg' (formerly `mh-unshar-msg').
2274
2275 *** `b' no longer runs `mh-quit'; use `q' instead. `b' may be used in
2276 a future version for something else.
2277
2278
2279 ** Minor improvements to mh-e 4.0
2280
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.)
2285
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.
2289
2290 *** The subject for a forwarded message no longer has ugly square
2291 brackets around it.
2292
2293 *** The name of the folder is no longer appears twice in the show
2294 buffer mode line.
2295
2296 *** When typing a folder name in the minibuffer, parent folders
2297 complete to the trailing slash (/), for easier typing of subfolders.
2298
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.
2303
2304 *** `mh-rename-seq' does completion on the old sequence name.
2305
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.
2308
2309 *** Undo history for previous messages is not kept to avoid wasting
2310 memory.
2311
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.
2315
2316
2317 ** Bug fixes to mh-e 4.0
2318
2319 *** `mh-to-field': don't bomb if no To: field.
2320
2321 *** `mh-get-new-mail': restore annotations, e.g., cur, even if no new
2322 mail.
2323
2324 *** `mh-rename-seq': verify that the new seq name was accepted by
2325 `mark' before updating state.
2326
2327 *** `mh-internal-seq': the Previous sequence is not notated, since it
2328 would notate everything scanned.
2329
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.
2333
2334 *** `mh-show': If user moves onto a message that doesn't exist, don't
2335 leave the cursor in the show pane.
2336
2337 *** `mh-delete-scan-msgs': use `equal', not `=', on the result of
2338 `mh-get-msg-num', since it may be nil.
2339
2340 *** `mh-get-field': do anchored search so searching for `reply-to:'
2341 doesn't find `in-reply-to:'.
2342
2343 *** `mh-widen': do nothing if not narrowed.
2344
2345 *** `mh-clean-message-header': find end of headers even if no body.
2346
2347 \f
2348 Local variables:
2349 mode: outline
2350 paragraph-separate: "[ \f]*$"
2351 end:
2352
2353 arch-tag: f6696cad-eb1b-4c5f-8057-4e3954a98d18