1 2005-09-30 Bill Wohler <wohler@newt.com>
3 * mh-customize.el (mh-refile-msg, mh-tool-bar-reply-from)
4 (mh-tool-bar-reply-to, mh-tool-bar-reply-all)
5 (mh-alias-grab-from-field, mh-pack-folder): Image files moved to
6 etc/images/mail so added "mail/" prefix.
7 (mh-reply): Ditto. Also renamed reply2.* to reply.*.
8 (mh-rescan-folder): Ditto. Renamed image file to refresh.* since
9 it can be used in the general sense. Does not have "mail/"
12 2005-09-29 Bill Wohler <wohler@newt.com>
14 Merged in changes from CVS Emacs including:
16 * mh-mime.el (mh-compose-forward, mh-mhn-compose-forw):
17 * mh-comp.el (mh-insert-letter):
18 * mh-utils.el (mh-prompt-for-folder):
19 Follow convention for reading with the minibuffer. Emilio C. Lopes
20 <eclig@gmx.net> 2005-09-24.
22 2005-09-26 Bill Wohler <wohler@newt.com>
24 * mh-e.el (desktop-buffer-mode-handlers): Only add to this list if
25 the variable exists. Not present pre-version 22.
27 Merged in changes from CVS Emacs including:
29 * mh-print.el (mh-ps-print-msg-show): Fix misplaced parenthesis in
30 previous change. Juanma Barranquero <lekktu@gmail.com> 2005-09-19
32 * mh-alias.el (mh-alias-ali): Fix `message' call: first arg
33 should be a format spec.
35 * mh-print.el (mh-ps-spool-buffer, mh-ps-spool-a-msg)
36 (mh-ps-print-msg, mh-ps-print-msg-show): Ditto.
38 * mh-mime.el (mh-toggle-mh-decode-mime-flag): Ditto.
40 * mh-index.el (mh-index-sequenced-messages): Ditto.
42 * mh-e.el (mh-refile-or-write-again, mh-page-msg): Ditto.
44 * mh-junk.el (mh-junk-blacklist, mh-junk-whitelist)
45 (mh-spamassassin-blacklist, mh-spamassassin-whitelist): Ditto. D
46 Goel <deego@gnufans.org> 2005-09-18.
48 * mh-customize.el: Do not use face-alias compatibility for
49 faces that did not appear in the previous Emacs release. Dan
50 Nicolaescu <dann@ics.uci.edu> 2005-08-15.
52 * mh-e.el: Add handler to desktop-buffer-mode-handlers.
53 (mh-restore-desktop-buffer): Remove autoload cookie.
54 (mh-folder-mode): Add autoload cookie. Lars Hansen
55 <larsh@soem.dk> 2005-08-10.
57 Update FSF's address in GPL notices Lute Kamstra <lute@gnu.org>
60 * mh-customize.el (mh-folder-body-face, mh-folder-cur-msg-face)
61 (mh-folder-cur-msg-number-face): New backward-compatibility
62 aliases for renamed faces. Lute Kamstra <lute@gnu.org> 2005-06-17.
64 * mh-customize.el (mh-folder-body, mh-folder-cur-msg)
65 (mh-folder-cur-msg-number, mh-folder-date, mh-folder-followup)
66 (mh-folder-msg-number, mh-folder-refiled, mh-folder-subject)
67 (mh-folder-tick, mh-folder-to, mh-index-folder)
68 (mh-letter-header-field, mh-show-cc, mh-show-date)
69 (mh-show-header, mh-show-pgg-good, mh-show-pgg-unknown)
70 (mh-show-pgg-bad, mh-show-signature, mh-show-to, mh-show-from)
71 (mh-show-xface, mh-speedbar-folder, mh-speedbar-selected-folder)
72 (mh-speedbar-folder-with-unseen-messages)
73 (mh-speedbar-selected-folder-with-unseen-messages)
74 (mh-folder-msg-number, mh-folder-subject, mh-folder-followup)
75 (mh-folder-subject): Remove "-face" suffix from face names.
76 (mh-folder-body, mh-folder-cur-msg, mh-folder-cur-msg-number)
77 (mh-folder-date-face, mh-folder-followup-face)
78 (mh-folder-msg-number-face, mh-folder-refiled-face)
79 (mh-folder-subject-face, mh-folder-tick-face, mh-folder-to-face)
80 (mh-index-folder-face, mh-letter-header-field-face)
81 (mh-show-cc-face, mh-show-date-face, mh-show-header-face)
82 (mh-show-pgg-good-face, mh-show-pgg-unknown-face)
83 (mh-show-pgg-bad-face, mh-show-signature-face, mh-show-to-face)
84 (mh-show-from-face, mh-show-xface-face, mh-speedbar-folder-face)
85 (mh-speedbar-selected-folder-face)
86 (mh-speedbar-folder-with-unseen-messages-face)
87 (mh-speedbar-selected-folder-with-unseen-messages-face):
88 New backward-compatibility aliases for renamed faces.
89 (mh-folder-body-face, mh-folder-cur-msg-face)
90 (mh-folder-cur-msg-number-face, mh-folder-date-face)
91 (mh-folder-followup-face, mh-folder-msg-number-face)
92 (mh-folder-deleted-face, mh-folder-refiled-face)
93 (mh-folder-subject-face, mh-folder-address-face)
94 (mh-folder-scan-format-face, mh-folder-to-face)
95 (mh-index-folder-face, mh-show-cc-face, mh-show-date-face)
96 (mh-show-header-face, mh-show-pgg-good-face)
97 (mh-show-pgg-unknown-face, mh-show-pgg-bad-face)
98 (mh-show-to-face, mh-show-from-face, mh-show-subject-face)
99 (mh-speedbar-folder-with-unseen-messages)
100 (mh-speedbar-selected-folder-with-unseen-messages):
101 Use renamed MH-E faces.
103 * mh-utils.el (mh-letter-font-lock-keywords)
104 (mh-face-display-function): Use renamed MH-E faces.
105 * mh-speed.el (mh-folder-speedbar-buttons)
106 (mh-speed-update-current-folder, mh-speed-normal-face)
107 (mh-speed-bold-face, mh-speed-add-buttons)
108 (mh-speed-invalidate-map): Likewise.
109 * mh-mime.el (mh-signature-highlight): Likewise. Miles Bader
110 <miles@gnu.org> 2005-06-17.
112 * mh-comp.el (mh-send-sub):
113 * mh-identity.el (mh-identity-field-handler):
114 * mh-mime.el (mh-secure-message):
115 Don't use `format' on `error' arguments. Juanma
116 Barranquero <lekktu@gmail.com> 2005-06-16.
118 * mh-mime.el (mh-secure-message): Follow error conventions.
119 Juanma Barranquero <lekktu@gmail.com> 2005-06-14.
121 2005-09-24 Bill Wohler <wohler@newt.com>
123 * mh-unit.el (mh-unit): Changed lm-verify test to Emacs 22.
125 2005-09-22 Bill Wohler <wohler@newt.com>
127 * Makefile: Incorporated ideas from Clemens Fruhwirth to
128 generalize mh-loaddefs.el to make it work for both GNU Emacs and
130 (EMACS_OPTIONS, XEMACS_OPTIONS): Use double-dash for all long
132 (EMACS_LOADDEFS_COOKIE): New variable for generate-autoload-cookie
133 setting. Obsoletes XEMACS_LOADDEFS_COOKIE.
134 (EMACS_EXPORT_MH_LOADDEFS): New variable for GNU Emacs commands to
135 rebuild mh-loaddefs.el.
136 (XEMACS_EXPORT_MH_LOADDEFS): New variable for XEmacs commands to
137 rebuild mh-loaddefs.el. Obsoletes XEMACS_LOADDEFS_FILE and
138 XEMACS_LOADDEFS_PKG_NAME.
139 (MH-E-LOADDEFS-SRC): New variable which is set to $(MH-E-SRC) on
140 GNU Emacs, and adds $(MH-E-XEMACS-SRC) on XEmacs.
141 (all): Modify EMACS_EXPORT_MH_LOADDEFS and MH-E-LOADDEFS-SRC on
143 (mh-loaddefs.el): Now depends on $(MH-E-LOADDEFS-SRC) and has
144 generic compile command that works on both GNU Emacs XEmacs.
145 (xemacs): Depend on autoloads instead of deleted loaddefs-xemacs.
146 (loaddefs-xemacs): Deleted.
148 2005-08-10 Lars Hansen <larsh@soem.dk>
150 * mh-e.el: Add handler to desktop-buffer-mode-handlers.
151 (mh-restore-desktop-buffer): Remove autoload cookie.
152 (mh-folder-mode): Add autoload cookie.
154 2005-07-19 Bill Wohler <wohler@newt.com>
156 * README (INSTALL): Added info for Mac users.
158 2005-07-16 Satyaki Das <satyaki@theforce.stanford.edu>
160 * mh-comp.el (mh-font-lock-field-data): Fix a bug where the
161 function would return t but match-data was being set to nil
162 (closes SF #1241017).
164 2005-07-12 Jeffrey C Honig <jch@honig.net>
166 * mh-customize.el (mh-invisible-header-fields-internal)
167 (mh-invisible-header-fields-internal): Add Received-SPF header and
168 X-Gmail- prefixes seen from Gmail.
170 2005-06-08 Peter S Galbraith <psg@debian.org>
172 * mh-comp.el (mh-insert-auto-fields): Insert identity regardless of
173 whether one was already set, since if one used a default identity
174 it would never be overridden (closes SF #1204506).
176 2005-06-02 Bill Wohler <wohler@newt.com>
178 * mh-customize.el (mh-customize): Use customization group mh-e.
180 * mh-init.el (mh-path): Use customization group mh-e. Thanks to
181 Peter Whaite for these patches (closes SF #1213716).
183 2005-06-01 Bill Wohler <wohler@newt.com>
185 * mh-mime.el (mh-compose-forward): Only use mh-sent-from-msg as a
186 default message if it's a number (as is done elsewhere).
187 Otherwise, an error is thrown if this function is called from a
188 draft created by mh-forward since this variable is a list. Also
189 added a space after the "Messages [%s]:" prompt.
191 2005-05-30 Jeffrey C Honig <jch@honig.net>
193 * mh-mime.el (mh-compose-forward): Allow insertion of multiple
194 forwarded messages by range (including sequences). For the sent
195 folder the default message presented is the sent message. For
196 other folders, the default message is "cur", if it exists.
198 2005-05-28 Bill Wohler <wohler@newt.com>
200 * mh-e.el (Version, mh-version): Added +cvs to version.
202 2005-05-28 Bill Wohler <wohler@newt.com>
204 Released MH-E version 7.84.
206 * MH-E-NEWS, README: Updated for release 7.84.
208 * mh-e.el (Version, mh-version): Updated for release 7.84.
210 2005-05-28 Bill Wohler <wohler@newt.com>
212 * mh-e.el, mh-comp.el: Don't autoload Info-goto-node. It's not
213 used, and if it were, the code should use the info function
216 Use full year in copyright notices (for example, 2005, not 05).
218 * Makefile (mh-loaddefs.el, mh-e-autoloads.el): Added 2005 to
221 * mh-inc.el: Use three ;;; to precede Local Variables to be
222 consistent with other files. Will have to ask Stefan Monnier why
225 * README: This version of MH-E to appear in GNU Emacs 22.1, not
228 * ChangeLog: The * in a ChangeLog entry must only be used before a
231 Fixed compilation warnings in CVS Emacs. This included using
232 "public" functions instead of "private" ones (info instead of
233 Info-goto-node, view-mode-enter instead of view-mode), and
234 removing a customization group that didn't have a parent group. In
235 addition, string-to-int was recently deprecated; use
236 string-to-number instead.
238 * mh-customize.el (Info-goto-node): Deleted autoload.
239 (mh-e): Deleted mh group. Use single mh-e group instead.
240 (mh-tool-bar-folder-help, mh-tool-bar-letter-help): Use info
241 instead of Info-goto-node.
243 * mh-e.el (mh-read-msg-list): string-to-int deprecated; use
246 * mh-funcs.el (mh-list-folders): Use view-mode-enter instead of
249 * mh-seq.el (mh-list-sequences): Use view-mode-enter instead of
252 * mh-utils.el (mh-get-msg-num): string-to-int deprecated; use
255 Merged in changes from CVS Emacs including:
257 * mh-utils.el (mh-show-mode):
258 * mh-pick.el (mh-pick-mode): Remove spurious run-hooks. Lute
259 Kamstra <lute@gnu.org> 2005-05-26.
261 2005-05-25 Bill Wohler <wohler@newt.com>
263 Merged in changes from CVS Emacs including:
265 * mh-customize.el (mh-speedbar-selected-folder-face): Special case
266 high number of colors displays. Dan Nicolaescu <dann@ics.uci.edu>
269 * mh-e.el, mh-identity.el, mh-mime.el: Replace `legal' with
270 `valid'. Replace `illegal' with `invalid'. Werner Lemberg
271 <wl@gnu.org> 2005-03-25.
273 * mh-inc.el (mh-inc-spool-list): Correctly declare the external
274 var. Stefan <monnier@iro.umontreal.ca> 2004-09-07.
276 2005-05-18 Bill Wohler <wohler@newt.com>
278 * mh-comp.el (mh-reply): Mention use of mh-repl-group-formfile in
281 2005-05-05 Bill Wohler <wohler@newt.com>
283 * mh-e.el (Version, mh-version): Added +cvs to release number.
285 2005-05-05 Bill Wohler <wohler@newt.com>
287 Released MH-E version 7.83.
289 * MH-E-NEWS, README: Updated for release 7.83.
291 * mh-e.el (Version, mh-version): Updated for release 7.83.
293 2005-05-05 Bill Wohler <wohler@newt.com>
295 * README: To appear in Emacs 21.5, since 21.4 was released (but
296 without the latest MH-E).
298 * release-utils (usage): Added --variable-changes.
300 2005-05-04 Bill Wohler <wohler@newt.com>
302 * mh-customize.el (*-face): Made docstrings consistent.
304 * mh-seq.el (mh-pick-args-list): Extracted function for turning
305 string of pick arguments to list. Fixed list so that multi-word
306 arguments were put in a single string (closes SF #1122655).
307 (mh-edit-pick-expr): Use it.
309 * mh-unit.el (mh-unit): Since 21.4 snuck out but didn't contain
310 updated lm-verify, don't run lm-verify on versions before 21.5.
311 (mh-unit-test-pick-args-list): Added.
313 * mh-customize.el (mh-yank-from-start-of-msg): Use headline
314 capitalization. Changed wording of some choices to be more consistent.
315 (mh-invisible-header-fields-internal): Added fields from usa.net.
317 2005-04-24 Satyaki Das <satyaki@theforce.stanford.edu>
319 * mh-mime.el (mh-mime-security-button-face): New function which
320 determines the face to use to colorize encrypted or signed emails.
321 (mh-insert-mime-security-button): Modified to colorize the button
322 differently based on whether the signature was valid or not,
323 whether the decryption was successful or not, etc.
325 * mh-customize.el (mh-show-pgg-good-face)
326 (mh-show-pgg-unknown-face, mh-show-pgg-bad-face): Faces added to
327 highlight buttons introduced for encrpted or signed MIME parts.
329 2005-03-19 Bill Wohler <wohler@newt.com>
331 * mh-customize.el (mh-mml-method-default): Sorted alphabetically.
332 (mh-insert-x-mailer-flag, mh-reply-show-message-flag): Moved from
333 mh-letter group to mh-sending-mail group. The writing of the
334 documentation revealed that these options were misplaced.
336 2005-03-17 Bill Wohler <wohler@newt.com>
338 * mh-customize.el (mh-junk-background): Put in alphabetical order.
340 (mh-junk-program): Use double-quotes on non-symbols.
342 * mh-pick.el (mh-search-folder): Synced docstrings with manual.
344 * mh-index.el (mh-index-search, mh-pick-execute-search)
345 (mh-grep-execute-search, mh-mairix-execute-search)
346 (mh-swish-execute-search, mh-swish++-execute-search)
347 (mh-namazu-execute-search): Synced docstrings with manual. Note
348 that I'm now grabbing the output of an Info buffer which is why
349 the indents on the examples has changed a bit. If we all use that
350 methodology in the future, we shouldn't produce as many gratuitous
351 diffs. I also noticed that `grep' and `search' became links to
352 unrelated things, so let's use double-quotes for quoting
353 non-symbols in the docstrings.
355 * mh-customize.el (mh-index-new-messages-folders)
356 (mh-index-ticked-messages-folders): Synced docstrings with manual.
358 2005-02-16 Satyaki Das <satyaki@theforce.stanford.edu>
360 * mh-index.el (mh-swish-execute-search): Simplify the indexing
361 recipe for swish. Thanks to Eric Jensen for the suggestion.
363 2005-02-11 Satyaki Das <satyaki@theforce.stanford.edu>
365 * mh-index.el (mh-swish-execute-search)
366 (mh-swish++-execute-search): Make the indexing recipes better.
367 (mh-swish-next-result): The indexer might find matches in files
368 that aren't messages. Make the function handle that case
371 2005-02-07 Bill Wohler <wohler@newt.com>
373 * mh-customize.el (mh-inc-prog, mh-inc-spool-list): Synced
374 docstrings with manual.
376 2005-02-06 Bill Wohler <wohler@newt.com>
378 * mh-junk.el (mh-spamassassin-blacklist): Removed trailing
381 * mh-e.el (mh-refile-or-write-again): Checkdoc fix.
383 * mh-identity.el (mh-identity-list-set)
384 (mh-identity-field-handler, mh-identity-handler-gpg-identity)
385 (mh-identity-handler-signature)
386 (mh-identity-handler-attribution-verb)
387 (mh-identity-handler-default, mh-identity-handler-top): Docstring
390 * mh-customize.el (mh-identity-list, mh-auto-fields-list)
391 (mh-identity-default, mh-identity-handlers): Synced docstrings
394 2005-02-03 Bill Wohler <wohler@newt.com>
396 * mh-xemacs.el (define-behavior 'mh): Moved Ben's code here from
397 mh-e.el and added standard documentation.
399 * mh-e.el: Received patch from Ben Wing <ben@666.com> to add
400 define-behavior on XEmacs.
402 2005-01-28 Jeffrey C Honig <jch@honig.net>
404 * mh-customize.el (mh-invisible-header-fields-internal): Added
405 X-Evolution header added by Evolution mai client.
407 2005-01-18 Bill Wohler <wohler@newt.com>
409 * mh-customize.el (mh-invisible-header-fields-internal): Added
410 DomainKey-Signature (http://antispam.yahoo.com/domainkeys/).
411 There's a Comment field that goes with it, but I thought it was
414 2005-01-06 Bill Wohler <wohler@newt.com>
416 * mh-junk.el (mh-spamassassin-blacklist): Fixed typo to fix an
417 error when junking spamassassin mail when mh-junk-background is
420 2004-12-25 Satyaki Das <satyaki@theforce.stanford.edu>
422 * mh-utils.el (mh-show-unquote-From): Make the buffer writable
423 before trying to change it (closes SF #1089870).
425 * mh-comp.el (mh-complete-word): Fix a typo in a variable
426 name (closes SF #1089870)
428 2004-11-28 Jeffrey C Honig <jch@honig.net>
430 * mh-comp.el (mh-complete-word): Kill the *Completions* buffer in
431 any cases where we belive we are done with it. Not perfect, but
432 better than just leaving it around.
434 2004-11-08 Satyaki Das <satyaki@theforce.stanford.edu>
436 * mh-acros.el (mh-funcall-if-exists): In XEmacs, presence of a
437 function at compile time doesn't guarantee its existence at run
438 time. So make the macro handle that situation better.
440 2004-11-05 Satyaki Das <satyaki@theforce.stanford.edu>
442 * mh-acros.el (advice): Load advice, since it isn't loaded in
443 XEmacs causing compilation problems.
445 2004-10-24 Satyaki Das <satyaki@theforce.stanford.edu>
447 * mh-index.el (mh-mairix-execute-search)
448 (mh-mairix-regexp-builder): Update the interface to mairix so that
449 it will work with versions of mairix 0.12 and later.
451 * mh-funcs.el (mh-rmf-daemon): Avoid using
452 beginning-of-buffer since it clobbers the mark and it was pointed
453 out on the Emacs developers list to be the wrong thing to do.
455 * mh-e.el (mh-inc-folder): Only remove the window on the show
456 buffer. This means if the user has BBDB enabled then the window
457 displaying BBDB information isn't clobbered.
458 (mh-refile-or-write-again): Don't use the function
459 interactive-p. There was a long thread on the Emacs developers
460 list where it was pointed out that it is incorrect to use this
461 function most of the time.
463 * mh-comp.el (autoload): Don't set auto-mode-alist. This could
464 screw things up for users that don't use MH-E (closes SF #1032353).
466 2004-10-13 Satyaki Das <satyaki@theforce.stanford.edu>
468 * mh-e.el (mh-refile-or-write-again): Generalize the function to
469 work on a range of messages (closes SF #1046330).
471 2004-09-02 Satyaki Das <satyaki@theforce.stanford.edu>
473 * mh-e.el (mh-process-commands): The concurrent execution of mark
474 and refile can cause problems since both the commands change the
475 current folder. This change avoids that by getting rid of the
476 concurrency. Another change covers the corner case where we refile
477 messages to a previously empty folder. Before the modification
478 sequences weren't preserved even if the appropriate flag was
479 set. That is no longer the case.
481 2004-08-26 Satyaki Das <satyaki@theforce.stanford.edu>
483 * mh-e.el (mh-get-new-mail): Also, update the unseen sequence from
484 disk. Otherwise, the new messages aren't highlighted.
486 * mh-seq.el (mh-thread-inc): Fix a bug which appears when inc is
487 run in a narrowed folder. The user sequence notation was getting
488 lost. The change fixes that.
490 * mh-e.el (mh-get-new-mail): Make inc more efficient by reusing
491 the existing user sequence notation and deleted/refiled notation.
493 2004-08-24 Bill Wohler <wohler@newt.com>
495 * mh-e.el (Version, mh-version): Added +cvs to release number.
497 2004-08-24 Bill Wohler <wohler@newt.com>
499 Released MH-E version 7.82.
501 * MH-E-NEWS, README: Updated for release 7.82.
503 * mh-e.el (Version, mh-version): Updated for release 7.82.
505 2004-08-24 Bill Wohler <wohler@newt.com>
507 * mh-init.el (mh-variant-set): Change MH to mh as that's what is
508 emitted by `mh-variant-mh-info' (closes SF #1014781).
509 (mh-variant-p): Add mu-mh to docstring.
511 2004-08-23 Satyaki Das <satyaki@theforce.stanford.edu>
513 * mh-acros.el (mh-require-cl): Remove unneeded autoloads.
514 (require): Add an advice to the function so that at compile time
515 the uncompiled file is loaded. This avoids compilation problems
516 when built in the Emacs tree.
518 * mh-mime.el (mh-identity-pgg-default-user-id): Defvar the
519 variable, to avoid compiler warnings.
521 * mh-e.el (mh-seq): Load mh-seq since functions defined there are
522 used here. Without this, the state mh-seq.elc would be loaded.
524 * mh-customize.el (mh-init, mh-identity): Load mh-init and
525 mh-identity at compile time manually, before the corresponding
526 stale elc files get autoloaded.
528 2004-08-21 Bill Wohler <wohler@newt.com>
530 * mh-e.el (Version, mh-version): Add +cvs to release number.
532 2004-08-21 Bill Wohler <wohler@newt.com>
534 Released MH-E version 7.81.
536 * MH-E-NEWS, README: Updated for release 7.81.
538 * mh-e.el (Version, mh-version): Updated for release 7.81.
540 2004-08-21 Bill Wohler <wohler@newt.com>
542 * release-utils (variable_changes): Check for checked-out
543 directory before proceeding. Remove temporary files.
544 Rename --variable-update flag to --variable-changes.
546 2004-08-16 Mark D. Baushke <mdb@gnu.org>
548 * mh-mime.el (mh-toggle-mh-decode-mime-flag: New function.
549 * mh-e.el (mh-help-messages): Add [;] help string for it.
550 (mh-folder-mode-map): Add ";" key binding for it.
552 2004-08-15 Satyaki Das <satyaki@theforce.stanford.edu>
554 * mh-acros.el (mh-defstruct): Distinguishing structures created
555 by mh-defstruct just based on the number of fields is not
556 sufficient, since both the mh-thread-message and
557 mh-thread-container structures have the same length.
559 2004-08-15 Mark D. Baushke <mdb@gnu.org>
561 * mh-customize.el (mh-identity-handlers): Use ":default" instead of
562 "default" to avoid problems with "Default:" as a user defined field.
563 * mh-identity.el (mh-identity-field-handler): Ditto.
565 2004-08-15 Bill Wohler <wohler@newt.com>
567 * mh-e.el (Version, mh-version): Added +cvs to release number.
569 2004-08-15 Bill Wohler <wohler@newt.com>
571 Released MH-E version 7.4.80.
573 * MH-E-NEWS, README: Updated for release 7.4.80.
575 * mh-e.el (Version, mh-version): Updated for release 7.4.80.
577 2004-08-15 Bill Wohler <wohler@newt.com>
579 * mh-funcs.el, mh-gnus.el, mh-inc.el, mh-init.el, mh-junk.el,
580 mh-pick.el, mh-print.el, mh-xemacs.el: Added 2004 to Copyright.
582 * mh-acros.el, mh-alias.el: Checkdoc fixes.
584 2004-08-12 Satyaki Das <satyaki@theforce.stanford.edu>
586 * mh-acros.el (cl): Load cl in this file. That is all right, since
587 this file is only used at compile time, and so cl doesn't get
588 loaded at run time. This avoids problems with stale *.elc files
589 present in the Emacs source tree during compilation.
590 (mh-defstruct): Modify it to make it more CL like and in the
591 process simplify it a bit. This makes the argument list of the
592 constructor compatible with the previous version, thereby avoiding
593 a compilation error when an old version of mh-seq.elc is present.
595 * mh-seq.el (mh-thread-id-container, mh-thread-get-message)
596 (mh-thread-get-message-container): Revert back to the CL style
597 of using keyword arguments, since the mh-defstruct now produces
598 code compatible to such usage.
600 2004-08-11 Satyaki Das <satyaki@theforce.stanford.edu>
602 * mh-acros.el (mh-defstruct, mh-require-cl): Checkdoc fixes.
604 * mh-utils.el (message-tokenize-header, message-fetch-field): Add
606 (mh-folder-completing-read): Make the folder completion look
607 better with CVS Emacs.
609 * mh-init.el (mh-variant-set): Remove dead code.
611 2004-08-11 Bill Wohler <wohler@newt.com>
613 * *.el: Use the following at the top of each file which seems to
614 do a good job of suppressing compilation warnings in 21.3 and CVS
615 Emacs (21.4). This replaces (require 'cl) or (require
616 'utils) (mh-require-cl) calls:
618 (eval-when-compile (require 'mh-acros))
621 2004-08-10 Bill Wohler <wohler@newt.com>
623 * release-utils (DESCRIPTION): Added one.
624 (FILES, SEE ALSO, VERSION): Deleted empty and incorrect sections.
626 * mh-e.el (mh-colors-available-p): Call x-display-color-cells with
627 mh-funcall-if-exists since it no longer seems to be defined in
630 2004-08-10 Satyaki Das <satyaki@theforce.stanford.edu>
632 * mh-speed.el (mh-process-kill-without-query, mh-speed-flists):
633 Avoid a compiler warning in versions of Emacs where
634 process-kill-without-query is a deprecated function.
636 * mh-seq.el (mh-thread-message, mh-thread-container): Use
637 mh-defstruct instead of defstruct.
638 (mh-thread-id-container, mh-thread-get-message-container)
639 (mh-thread-get-message): Use the slightly different structure
640 constructor function.
642 * mh-acros.el (mh-defstruct): New macro which is a partial
643 replacement of the defstruct in CL.
644 (no-byte-compile): Don't compile the file since it isn't loaded at
645 run time, so efficiency isn't an issue.
647 * mh-utils.el (mh-buffer-data): Use mh-defstruct instead of
650 2004-08-09 Satyaki Das <satyaki@theforce.stanford.edu>
652 * mh-funcs.el, mh-junk.el, mh-print.el: Use mh-require-cl to avoid
653 compilation warnings in Emacs-21.3.
655 * mh-acros.el (mh-require-cl): Add autoloads of CL functions used.
657 2004-08-09 Bill Wohler <wohler@newt.com>
659 * mh-customize.el (mh-show-use-xface-flag): Mention that `fetch' and
660 `curl' are supported as well.
662 2004-08-08 Bill Wohler <wohler@newt.com>
664 * mh-xemacs.el (mh-xemacs-has-toolbar-flag): Checkdoc fixes.
666 * mh-mime.el (mh-display-with-external-viewer): Checkdoc fixes.
668 * mh-identity.el (mh-identity-attribution-verb-end): Stripped
669 trailing space; checkdoc fixes.
671 * mh-e.el (mh-restore-desktop-buffer): Checkdoc fixes.
673 * mh-customize.el (mh-inc-spool-list)
674 (mh-compose-forward-as-mime-flag, defcustom): Stripped trailing
675 space; checkdoc fixes.
677 * mh-comp.el (mh-reply): Stripped trailing space.
679 * mh-unit.el (mh-unit-files): Added mh-acros.el and mh-gnus.el.
680 (mh-unit): Don't lm-verify pre-21.4. Save buffers before killing
681 since we might have done some editing.
683 * import-emacs: Deleted. Functionality subsumed by release-utils.
685 * release-utils: New script. Performs import-emacs functionality
686 and displays new and deleted options.
688 * Makefile (import-emacs): Call release-utils instead of
691 * mh-funcs.el (mh-undo-folder): Removed deprecated `ignore'
694 * mh-e.el (mh-scan-date-regexp): Deleted as Peter claims it is
696 (mh-folder-font-lock-keywords): Removed reference to deleted
697 variable `mh-scan-date-regexp'.
699 * mh-customize.el (mh-auto-fields-prompt-flag): Made reference to
700 `mh-auto-fields-lists'.
701 (mh-forward-hook): Fixed docstring typo.
703 2004-08-07 Bill Wohler <wohler@newt.com>
705 * mh-acros.el: New file. Currently holds macros needed by
706 mh-customize.el but is planned to hold all macros to avoid
707 dependency problems when compiling.
709 * mh-utils.el (mh-xemacs-flag): Defined in mh-customize.el now.
710 (mh-require-cl, mh-do-in-gnu-emacs, mh-do-in-xemacs)
711 (mh-funcall-if-exists, mh-make-local-hook, mh-mark-active-p):
712 Moved to new file mh-acros.el.
714 * mh-customize.el: Require mh-acros and cl only when compiling and
715 mh-loaddefs at runtime instead of mh-utils.
716 (mh-xemacs-flag): Define it here instead of mh-utils.el.
718 * Makefile (MH-E-SRC): Added mh-acros.el.
720 * mh-gnus.el (default-enable-multibyte-characters): Don't define
721 any more. It doesn't seem to be needed.
723 * mh-customize.el (mh-junk-background): New variable. If on, spam
724 programs are run in background. Running in foreground can be slow.
725 Defaults to nil to spare machines with little memory.
727 * mh-junk.el (mh-spamassassin-blacklist, mh-bogofilter-blacklist)
728 (mh-bogofilter-whitelist, mh-spamprobe-blacklist)
729 (mh-spamprobe-whitelist): Use new option mh-junk-background.
731 2004-07-25 Satyaki Das <satyaki@theforce.stanford.edu>
733 * mh-utils.el (mh-folder-completing-read): In recent CVS Emacs,
734 the first letter of the possible choices in the completion buffer
735 is highlighted. The change is needed for this feature to work
736 during folder name completion. This is not entirely sufficient,
737 since the leading "+" in folder names is still mishandled. A patch
738 is required in Emacs itself to address that.
740 2004-07-22 Mark D. Baushke <mdb@gnu.org>
742 * mh-e.el (recursive-load-depth-limit): Move
743 recursive-load-depth-limit code to ...
744 * mh-utils.el (recursive-load-depth-limit): ... here to avoid
745 problems compiling mh-utils.el and mh-alias.el with gnus-5.10.6
746 under emacs-21.1. Use eval-and-compile instead of eval-when.
748 2004-07-20 Bill Wohler <wohler@newt.com>
750 * mh-customize.el (mh-invisible-header-fields-internal): Added
751 header fields emitted by T-Mobile picture phones (X-Mms-*, and
752 commented out X-Operator field saying it's like X-Mailer).
754 2004-07-12 Bill Wohler <wohler@newt.com>
756 * mh-gnus.el: Set local variables indent-tabs-mode and
757 sentence-end-double-space to nil.
759 * mh-customize.el: Checkpoint from option docstring updates and
760 manual synchronization from last summer. For the options listed
761 below, docstring was usually completely rewritten. Use "on"
762 instead of "t" in docstring to match what is seen in customization
763 buffer. Use headline capitalization. Standardize on "Auto-detect"
764 text when option has that capibility.
765 (mh): Since we work on more than one type of Emacs, use Emacs
766 instead of GNU Emacs. Prefer GNU mailutils over GNU Mailutils.
767 (mh-variant): s/Autodetect at startup/Auto-detect/.
768 (mh-alias-insertion-location): s/Sorted
769 alphabetically/Alphabetical/. s/At the top of file/Top/. s/At the
770 bottom of file/Bottom/.
771 (mh-alias-local-users-prefix): s/Use login instead of real
773 (mh-identity-list): Sorted values by fields, attribution,
775 (mh-auto-fields-list): Missing quote.
776 (mh-compose-insertion): s/Use Gnus/Gnus/. s/Use mhn/mhn/.
777 (mh-compose-space-does-completion-flag): s/SPACE/<SPC>/.
778 (mh-extract-from-attribution-verb): Since we have French, added
780 (mh-letter-complete-function): Mention default in docstring.
781 (mh-invisible-header-fields-internal): Added X-ELNK-Trace from
783 (mh-alias-flash-on-comma, mh-alias-insert-file)
784 (mh-alias-passwd-gecos-comma-separator-flag)
785 (mh-recenter-summary-flag, mh-default-folder-for-message-function)
786 (mh-default-folder-must-exist-flag, mh-index-program)
787 (mh-index-ticked-messages-folders, mh-ins-buf-prefix)
788 (mh-delete-yanked-msg-window-flag, mh-identity-default): See
791 * mh-init.el (mh-variant-set, mh-sys-path, mh-variant-mu-mh-info):
792 Prefer GNU mailutils over GNU Mailutils MH.
794 * mh-comp.el (sc-cite-original, mh-smail, mh-smail-batch)
795 (mh-edit-again, mh-extract-rejected-mail, mh-forward)
796 (mh-smail-other-window, mh-reply, mh-send, mh-send-other-window):
797 Use `mh-send' instead of \\[mh-send]] since links in the docstring
798 are more useful than a key sequence in these cases. Use "See also"
799 instead of "See also documentation for".
801 Merged in 7.4.4 changes, described below.
803 * mh-e.el (Version, mh-version): Set to 7.4.4+cvs.
805 2004-07-10 Bill Wohler <wohler@newt.com>
807 Released MH-E version 7.4.4.
809 * MH-E-NEWS, README: Updated for release 7.4.4.
811 * mh-e.el (Version, mh-version): Updated for release 7.4.4.
813 This patch release contains the following patches:
815 * mh-xemacs.el: New file from concatenation of mh-xemacs-compat.el
816 and mh-xemacs-icons.el which were removed since their names
817 exceeded DOS 8+3 limits.
820 (mh-e-autoloads.el): Add target to make `mh-e-autoloads.el', a
821 file containg usual entry commands into MH-E to be used for users
822 installing MH-E separately from Emacs.
823 (XEMACS_LOADDEFS_FILE): New. Used to generate mh-loaddefs.el
825 (XEMACS_LOADDEFS_COOKIE): Ditto.
826 (XEMACS_LOADDEFS_PKG_NAME): Ditto.
827 (XEMACS_OPTIONS): Add '-no-autoloads' to give a cleaner build
829 (MH-E-SRC): Moved mh-xemacs.el to new variable MH-E-XEMACS-SRC.
830 (MH-E-XEMACS-SRC): New variable to hold XEmacs source files.
831 (MH-E-XEMACS-OBJ): New variable to hold XEmacs object files.
832 (clean): Moved XEmacs-specific code to clean-xemacs.
833 (xemacs): Added clean-xemacs prerequisite. Moved down to XEmacs
834 section of file. Add target to build mh-loaddefs.el in XEmacs.
835 (loaddefs-xemacs): New rule to build mh-loaddefs.el in XEmacs.
836 (clean-xemacs): New target to remove XEmacs-specific files.
837 (compile-xemacs): New. It allows for the '-no-autoloads' option
838 and byte-compiles all the source files with a single instance of
840 (dist): Added $(MH-E-XEMACS-SRC) to tarball.
841 (AUTO_PRELOADS): Removed, in favor of 'AUTOLOAD_PACKAGE_NAME' and
843 (AUTOLOAD_PACKAGE_NAME): New.
844 (AUTOLOAD_FILE): New.
845 (all): Don't set $EMACS_HOME if building with XEmacs.
846 (xemacs): Use 'compile-xemacs' instead of 'compile'.
847 (auto-autoloads.elc): Use new $AUTOLOAD_* vars and allow for
849 (custom-load.elc): Allow for '-no-autoloads'.
851 * mh-e.el: Don't require mh-xemacs-compat which no longer exists.
852 The XEmacs stuff gets required by mh-customize.el which is
853 required by mh-utils.el which is required by mh-e.el. This all
854 happens before mh-xemacs-compat was required, so all should be
856 (mh-restore-desktop-buffer): Move from desktop.el. Add Parameters.
857 (mh-restore-desktop-buffer): Delete with-no-warnings.
858 (mh-folder-mode): Bind desktop-save-buffer to t.
859 (Courtesy Lars Hansen).
861 * mh-alias.el (mh-assoc-ignore-case): New macro to use
862 assoc-string when available (Emacs 21.4+); assoc-ignore-case
864 (mh-alias-reload, mh-alias-expand,
865 mh-alias-minibuffer-confirm-address): Use it.
867 * mh-seq.el: Added mh-autoload to mh-read-seq-default.
869 * mh-utils.el (mh-require-cl): The Emacs coding conventions
870 require that the cl package not be required at runtime. However,
871 the cl package in versions of Emacs prior to 21.4 left cl routines
872 in their macro expansions. Use mh-require-cl to provide the cl
873 routines in the best way possible (closes SF #930012).
874 (require 'mouse): To shush compiler.
876 Use new function mh-require-cl throughout.
878 Add arch taglines (courtesy Miles Bader).
880 * mh-unit.el (mh-unit-files): Replaced mh-xemacs-compat.el and
881 mh-xemacs-icons.el with mh-xemacs.el.
883 * import-emacs: Also grab the ChangeLog.
885 * *.pbm: Regenerated using GIMP to be consistent with other Emacs
887 1. Edit .xpm image in GIMP.
888 2. Image > Mode > Indexed. Check Use Black/White Palette and No
890 3. File > Save As file.xbm.
891 4. Run xbmtopbm < file.xbm > file.pbm.
892 Thanks to jan.h.d@swipnet.se for the help.
894 2004-07-07 Stephen Gildea <gildea@stop.mail-abuse.org>
896 * mh-customize.el (mh-invisible-header-fields-internal):
897 Add X-Greylist, X-Source*, and X-WebTV-Signature.
898 Replace specific X-Spam-* headers with general pattern.
900 2004-06-15 Bill Wohler <wohler@newt.com>
902 * README: Vladimir Ivanovic reports that mh-rmail works with
903 XEmacs 21.5.17, so updated requirements text accordingly (closes
906 2004-05-12 Satyaki Das <satyaki@theforce.stanford.edu>
908 * mh-utils.el (mh-mail-header-end): Replace call to
909 rfc822-goto-eoh with something that allows From_ lines in the mail
912 2004-04-26 Lars Hansen <larsh@math.ku.dk>
914 * mh-e.el (mh-folder-mode): Bind desktop-save-buffer to t.
916 2004-04-22 Lars Hansen <larsh@math.ku.dk>
918 * mh-e.el (mh-restore-desktop-buffer): Delete with-no-warnings.
920 2004-04-21 Lars Hansen <larsh@math.ku.dk>
922 * mh-e.el (mh-restore-desktop-buffer): Move from desktop.el.
925 2004-04-14 Bill Wohler <wohler@newt.com>
927 * mh-utils.el (mh-show-mouse): s/EVENT/event/. Thanks to John Paul
928 Wallington <jpw@gnu.org> for pointing this out.
930 2004-04-12 Satyaki Das <satyaki@theforce.stanford.edu>
932 * mh-e.el (mh-folder-size-flist): Add -showzero option so that the
933 parsing code doesn't get confused by the presence of -noshowzero
934 in the user's .mh_profile (closes SF #933954).
936 2004-04-07 Satyaki Das <satyaki@theforce.stanford.edu>
938 * mh-mime.el (mh-insert-mime-button)
939 (mh-insert-mime-security-button): Add evaporate property to
940 overlays used in MIME part buttons. This avoids problems with
943 2004-03-16 Satyaki Das <satyaki@theforce.stanford.edu>
945 * mh-e.el (mh-folder-from-address): Go to the end of buffer if the
946 re-search-forward fails (closes SF #917096).
948 2004-02-02 Satyaki Das <satyaki@theforce.stanford.edu>
950 * mh-customize.el (mh-compose-forward-as-mime-flag): New user
951 customizable variable that controls whether messages are forwarded
952 as MIME attachments (closes SF #827203).
954 * mh-comp.el (mh-forward): Call forw with -mime option only if
955 mh-compose-forward-as-mime-flag is non-nil.
957 2003-12-26 Jeffrey C Honig <jch@honig.net>
959 * mh-junk.el (mh-junk-blacklist, mh-junk-whitelist)
960 (mh-spamassassin-blacklist, mh-spamassassin-blacklist)
961 (mh-spamassassin-blacklist, mh-spamassassin-whitelist)
962 (mh-spamassassin-whitelist, mh-bogofilter-blacklist)
963 (mh-spamprobe-blacklist): Add progress messages. Change "Couldn't"
964 to "Unable" in error messages. Run bogofilter and spamprobe in
965 the foreground to prevent a large number of processes from
968 2003-12-25 Satyaki Das <satyaki@theforce.stanford.edu>
970 * mh-e.el (mh-prompt-for-refile-folder): Marking the whole folder
971 and then refiling all messages throws an error, since this
972 function expects point to be on a valid scan line. The change
973 relaxes this requirement, thereby avoiding the above problem.
975 2003-12-14 Satyaki Das <satyaki@theforce.stanford.edu>
977 * mh-comp.el (mh-ascii-buffer-p): New function that checks if a
978 buffer is entirely composed of ASCII.
979 (mh-send-letter): Encode the draft if it contains non-ASCII
982 2003-12-12 Satyaki Das <satyaki@theforce.stanford.edu>
984 * mh-customize.el (mh-invisible-headers): Keep only unique fields
985 in list of header fields to hide. This avoids problems in XEmacs.
987 2003-12-10 Satyaki Das <satyaki@theforce.stanford.edu>
989 * mh-seq.el (mh-thread-print-scan-lines): The imenu index was not
990 getting created for threaded index buffers. The change fixes this.
992 * mh-index.el (mh-index-insert-folder-headers): Always create the
994 (mh-index-create-imenu-index): Set which-func-mode to t. If
995 which-function-mode is turned on after the folder buffer has been
996 prepared, display of the folder info was being inhibited. The
999 2003-12-09 Satyaki Das <satyakid@stanford.edu>
1001 * mh-comp.el (mh-letter-mode): Setup mh-mail-header-separator
1002 based on draft contents.
1003 (mh-letter-mode, mh-letter-mail-header-end-marker)
1004 (mh-letter-header-end): Remove use of the variable
1005 mh-letter-mail-header-end-marker. Instead use
1006 mh-mail-header-separator. This avoids problems in font locking
1007 draft buffers (closes SF #855479).
1009 2003-12-09 Satyaki Das <satyakid@stanford.edu>
1011 * mh-index.el (mh-index-insert-folder-headers): Modified so that
1012 imenu--index-alist is updated.
1013 (mh-index-create-imenu-index): New function that generates an
1014 index usable by imenu. This adds which-func-mode support to index
1015 folders (closes SF #855520).
1017 * mh-e.el (which-func, which-func-modes): Tell which-func that
1018 mh-folder-mode supports it.
1019 (mh-folder-mode): Add support for imenu.
1021 2003-11-22 Peter S Galbraith <psg@debian.org>
1023 * Makefile: renamed mh-startup.el to mh-e-autoloads.el
1025 * README: renamed mh-startup.el to mh-e-autoloads.el
1027 * .cvsignore: Added mh-e-autoloads.el
1029 2003-11-18 Bill Wohler <wohler@newt.com>
1031 Released MH-E version 7.4.3.
1033 * MH-E-NEWS, README: Updated for release 7.4.3.
1035 * mh-e.el (Version, mh-version): Updated for release 7.4.3.
1037 This patch release contains the following two patches:
1039 * mh-identity.el (mh-identity-make-menu): Removed condition on
1040 mh-auto-fields-list. Use it to enable or disable menu item
1043 * mh-customize.el (mh-identity-list): Removed defvar and moved
1044 defcustom before mh-auto-fields-list so that defvar wouldn't
1045 clobber user's customization settings.
1047 2003-11-17 Jeffrey C Honig <jch@honig.net>
1049 * mh-print.el (mh-print-msg): Do not print a message on deprecated
1050 usage, the bindings have been removed.
1052 * mh-e.el (mh-folder-mode-map): Remove "l" binding for
1055 * mh-utils.el (mh-show-mode-map): Remove "l" binding for
1058 2003-11-16 Satyaki Das <satyakid@stanford.edu>
1060 * mh-comp.el (mh-beginning-of-word): Use the function
1061 mh-mail-abbrev-make-syntax-table instead of the function
1062 mail-abbrev-make-syntax-table.
1064 * mh-gnus.el (mh-mail-abbrev-make-syntax-table): Add a wrapper
1065 function that calls mail-abbrev-make-syntax-table if available.
1066 This is needed so that MH-E built with CVS Emacs will work with
1067 released versions of Emacs21 and vice versa.
1069 2003-11-14 Peter S Galbraith <psg@debian.org>
1071 * mh-customize.el (mh-invisible-header-fields-internal): Add
1072 "X-NAI-Spam-" and "X-Spam-Report:".
1074 2003-11-14 Mark D. Baushke <mdb@gnu.org>
1076 * mh-customize.el (mh-invisible-header-fields-internal):
1077 Add X-AntiAbuse and X-MailScanner.
1078 (Patch from Stephen Gildea.)
1080 2003-11-13 Peter S Galbraith <psg@debian.org>
1082 * mh-identity.el (mh-identity-handler-attribution-verb): New
1083 function. A new Identity handler for the attribution verb (e.g.
1084 "wrote:") to allow for different identities to use different
1086 (mh-identity-insert-attribution-verb): New function. Insert the
1087 attribution verb, placing special markers so it can be deleted and
1089 (mh-identity-attribution-verb-start): New variable. Holds the
1090 marker for the start of the attribution verb.
1091 (mh-identity-attribution-verb-end): New variable. Holds the
1092 marker for the end of the attribution verb.
1094 * mh-customize.el (mh-identity-handlers): Add new
1095 ":attribution-verb" tag for the attribution-verb handler.
1096 (mh-identity-list): Idem.
1098 * mh-comp.el (mh-yank-cur-msg): Insert attribution verb using
1099 mh-identity-insert-attribution-verb.
1100 (mh-extract-from-attribution): Extract only the name from the From
1101 line, without appending `mh-extract-from-attribution-verb' since
1102 markers need to be inserted around that now.
1104 2003-11-12 Bill Wohler <wohler@newt.com>
1106 * mh-e.el (mh-rmail, mh-nmail): Well, actually, we run in both GNU
1107 Emacs and XEmacs, so removed the "GNU" in the docstrings unless
1108 one is strictly talking about GNU Emacs.
1110 * mh-comp.el (mh-smail, mh-smail-batch, mh-smail-other-window):
1113 2003-11-11 Bill Wohler <wohler@newt.com>
1115 * mh-customize.el (mh-customize): Minor docstring change.
1116 (mh, mh-e): The short description for MH-E is: The GNU Emacs
1117 Interface to the MH Mail System. Therefore, updated docstrings
1120 * mh-comp.el (mh-smail, mh-smail-batch, mh-smail-other-window):
1123 * mh-e.el (mh-rmail, mh-nmail): Ditto.
1125 2003-11-10 Satyaki Das <satyakid@stanford.edu>
1127 * mh-mime.el (mh-mml-to-mime): In case errors happen in
1128 mml-to-mime, restore contents of the draft buffer (closes SF
1131 2003-11-07 Bill Wohler <wohler@newt.com>
1133 * mh-customize.el (mh-letter-mode-hook): Moved to mh-sending-mail
1134 group (where it is now documented in the manual).
1135 (mh-pick-mode-hook): Moved to mh-index group (where it is now
1136 documented in the manual).
1138 * mh-loaddefs.el: Deleted per our discussion on mh-e-devel. No
1139 more conflicts! No more check-ins! Anyone pulling CVS MH-E is
1140 expected to compile. This file shall be added to the tarball so
1141 that users of the distribution are not.
1143 2003-11-07 Mark D. Baushke <mdb@gnu.org>
1145 * mh-loaddefs.el: Regenerated.
1147 * mh-customize.el (mh-forward-hook): Define new hook.
1148 * mh-comp.el (mh-forward): Use it.
1150 2003-11-07 Satyaki Das <satyakid@stanford.edu>
1152 * mh-loaddefs.el: Regenerated.
1154 * mh-utils.el (mh-show-toggle-mime-buttons)
1155 (mh-show-display-with-external-viewer): New interactive functions
1156 callable from the show buffer.
1157 (mh-show-mime-map): Add bindings for "K t" and "K e".
1158 (mh-show-msg): Propagate change to
1159 mh-display-buttons-for-inline-parts-flag to the show buffer.
1161 * mh-mime.el (mh-display-with-external-viewer): New interactive
1162 function to display MIME parts with external viewer (closes SF
1165 * mh-e.el (mh-folder-mode): Make the variable
1166 mh-display-buttons-for-inline-parts-flag buffer-local so that
1167 display of MIME buttons can be toggled.
1168 (mh-toggle-mime-buttons): New interactive function to toggle
1169 display of MIME buttons.
1170 (mh-mime-map): Modified to add bindings for "K t" and "K e".
1172 2003-11-04 Steve Youngs <sryoungs@bigpond.net.au>
1174 * Makefile (XEMACS_LOADDEFS_FILE): New. Used to generate
1175 mh-loaddefs.el in XEmacs.
1176 (XEMACS_LOADDEFS_COOKIE): Ditto.
1177 (XEMACS_LOADDEFS_PKG_NAME): Ditto.
1178 (xemacs): Add target to build mh-loaddefs.el in XEmacs.
1179 (clean-xemacs): Remove `mh-loaddefs.el*'.
1180 (loaddefs-xemacs): New rule to build mh-loaddefs.el in XEmacs.
1182 2003-11-02 Peter S Galbraith <psg@debian.org>
1184 * mh-init.el (mh-variant-set-variant): Reset `mh-x-mailer-string'
1185 when we select an MH variant.
1187 2003-11-02 Jeffrey C Honig <jch@honig.net>
1189 * mh-loaddefs.el: Regenerated.
1191 * mh-funcs.el (mh-print-msg): Move to mh-print.el.
1193 * mh-e.el (mh-folder-mode-map): Add mh-print-msg ("l") back, it
1194 will print a message that this usage is deprecated.
1196 * mh-print.el (require, mh-ps-print-msg, mh-ps-print-msg-file):
1197 Require mh-funcs for mh-note-printed. PS print functions were not
1198 setting the printed notation. Move mh-print-msg here for
1199 consistency. Print message if mh-print-msg invoked via deprecated
1202 2003-11-01 Peter S Galbraith <psg@debian.org>
1204 * Makefile: Add target to make `mh-startup.el', a file containg
1205 usual entry commands into MH-E to be used for users installing
1206 MH-E separately from Emacs.
1208 * README: Document the above for users.
1210 2003-10-29 Jeffrey C Honig <jch@honig.net>
1212 * mh-utils.el (mh-show-ps-print-map): Add "?" and "l" to
1213 mh-show-ps-print-map.
1215 * mh-e.el (mh-ps-print-map, mh-help-messages): Add "?" and "l" to
1216 mh-ps-print-map. Add "l" to help message.
1218 2003-10-27 Bill Wohler <wohler@newt.com>
1220 * Makefile (MH-E-SRC): Moved mh-xemacs.el to new variable
1222 (MH-E-XEMACS-SRC): New variable to hold XEmacs source files.
1223 (MH-E-XEMACS-OBJ): New variable to hold XEmacs object files.
1224 (clean): Moved XEmacs-specific code to clean-xemacs.
1225 (xemacs): Added clean-xemacs prerequisite. Moved down to
1226 XEmacs section of file.
1227 (clean-xemacs): New target to remove XEmacs-specific files.
1228 (compile-xemacs): Added $(MH-E-XEMACS-SRC) prerequisite.
1229 (dist): Added $(MH-E-XEMACS-SRC) to tarball.
1231 2003-10-27 Satyaki Das <satyakid@stanford.edu>
1233 * mh-loaddefs.el: Regenerated.
1235 * mh-index.el (mh-indexer-choices): Remove option for the non-free
1236 glimpse indexer (closes SF #831276).
1237 (mh-glimpse-binary, mh-glimpse-directory)
1238 (mh-glimpse-execute-search, mh-glimpse-next-result): Functions
1239 and variables to implement glimpse support are removed.
1241 * mh-customize.el (mh-index-program): Remove option for glimpse.
1243 2003-10-24 Satyaki Das <satyakid@stanford.edu>
1245 * mh-customize.el: Remove top-level test for toolbar enabled
1246 XEmacs since it is not needed.
1247 (mh-tool-bar-define): Add test for XEmacs toolbar in the functions
1248 mh-toolbar-init, mh-tool-bar-letter-buttons-set and
1249 mh-tool-bar-folder-buttons-set. This enables proper compilation
1250 irrespective of whether the XEmacs was built with toolbar support
1253 * mh-comp.el (mh-letter-mode): Remove conditional since it is not
1256 * mh-e.el (mh-folder-mode): Same as above.
1258 * mh-utils.el (mh-show-mode): Same as above.
1260 * mh-xemacs.el (mh-xemacs-icon-map): Remove condition on toolbar
1261 presence since we want the build to work if XEmacs without
1262 toolbars is used during compilation.
1264 2003-10-23 Bill Wohler <wohler@newt.com>
1266 * mh-customize.el: The Great Reorganization. Sorted groups
1267 alphabetically. Aligned variables in customization groups with
1268 manual sections. Group docstrings changed to match manual chapter
1271 2003-10-22 Satyaki Das <satyakid@stanford.edu>
1273 * mh-speed.el (timer): Avoid compiler warning in XEmacs.
1275 2003-10-22 Steve Youngs <sryoungs@bigpond.net.au>
1277 * Makefile (XEMACS_OPTIONS): Add '-no-autoloads' to give a cleaner
1279 (AUTO_PRELOADS): Removed, in favor of 'AUTOLOAD_PACKAGE_NAME' and
1281 (AUTOLOAD_PACKAGE_NAME): New.
1282 (AUTOLOAD_FILE): New.
1283 (all): Don't set $EMACS_HOME if building with XEmacs.
1284 (xemacs): Use 'compile-xemacs' instead of 'compile'.
1285 (auto-autoloads.elc): Use new $AUTOLOAD_* vars and allow for
1287 (custom-load.elc): Allow for '-no-autoloads'.
1288 (compile-xemacs): New. It allows for the '-no-autoloads' option
1289 and byte-compiles all the source files with a single instance of
1292 * mh-e.el (mh-folder-mode): Only load the toolbar in XEmacs if
1293 toolbar support is available.
1295 * mh-comp.el (mh-letter-mode): Only load the toolbar in XEmacs if
1296 toolbar support is available.
1298 * mh-customize.el: Require 'mh-xemacs' at toplevel when
1299 'mh-xemacs-flag' is non-nil.
1300 Wrap all the toolbar code in a test that is true if using
1301 GNU/Emacs or a toolbar-enabled XEmacs.
1303 * mh-print.el (mh-ps-spool-a-msg): Comment out
1304 `clean-message-header-flag' because it isn't used anywhere.
1306 * mh-utils.el (mh-show-mode): Only load the toolbar in XEmacs if
1307 toolbar support is available.
1309 * mh-xemacs.el: Autoload `regexp-opt', `customize-group',
1310 `view-mode', `with-electric-help', `pp', `sort-numeric-fields',
1311 `reverse-region', and `goto-address' at compile time.
1312 (mh-xemacs-has-toolbar-flag): New. This is non-nil when XEmacs
1313 has toolbar support.
1314 (mh-xemacs-toolbar-*-icon): Use it.
1316 2003-10-21 Mark D. Baushke <mdb@gnu.org>
1318 * mh-identity.el (mh-identity-field-handler): Fields that begin
1319 with ":" must have an mh-identity-handler defined or the user
1322 2003-10-17 Peter S Galbraith <psg@debian.org>
1324 * mh-customize.el (mh-identity-list): This change affects users!
1325 The keyword "signature" becomes ":signature". The recently added
1326 keyword "pgg-default-user-id" becomes ":pgg-default-user-id".
1327 (mh-auto-fields-list): The keyword "Identity" becomes ":identity".
1328 (mh-identity-handlers): Idem for signature and pgg-default-user-id.
1330 * mh-comp.el (mh-insert-auto-fields): Idem for Identity.
1332 2003-10-17 Peter S Galbraith <psg@debian.org>
1334 * mh-xemacs.el: Add eval-and-compile call to (load "toolbar" t t) to
1335 make sure `toolbar-make-button-list' is defined. We can't use
1336 require because Emacs doesn't have this library.
1338 2003-10-16 Bill Wohler <wohler@newt.com>
1340 * mh-customize.el (mh-signature-file-name)
1341 (mh-letter-insert-signature-hook): Merge docstring with manual.
1343 * mh-comp.el (mh-file-is-vcard-p): Checkdoc fix.
1344 (mh-insert-signature): Merge docstring with manual.
1346 * mh-customize.el (mh-junk): Changed manual link in defgroup from
1347 Customizing mh-e to Junk.
1348 (mh-junk-function-alist): Moved SpamAssassin to first in list on
1349 the hunch that it is the most popular and should be chosen if
1350 other anti-spam programs exist.
1351 (mh-junk-mail-folder): Since the variable can accept values other
1352 than folder names, renamed to mh-junk-disposition to more
1353 accurately reflect the content. Merge docstring with manual.
1354 (mh-junk-program): Moved SpamAssassin to the top of the menu for
1355 the same reason presented in mh-junk-function-alist. Also, fixed
1356 case of spam programs to match official usage. Merge docstring
1359 * mh-junk.el (mh-junk-blacklist):
1360 s/mh-junk-mail-folder/mh-junk-disposition/. Merge docstring with
1362 (mh-junk-whitelist): Merge docstring with manual.
1363 (mh-bogofilter-blacklist): No longer suggest using automatic
1364 classification so use -s instead of -Ns.
1365 (mh-bogofilter-whitelist): No longer suggest using automatic
1366 classification so use -n instead of -Sn.
1367 (mh-spamassassin-blacklist, mh-spamassassin-whitelist): Merge
1368 docstring with manual. Moved spamassassin functions to top of file
1369 so functions appear in same order that they are presented in menu.
1371 2003-10-09 Peter S Galbraith <psg@debian.org>
1373 * mh-customize.el (mail-citation-hook): Moved from mh-comp.el and
1374 made into a defcustom.
1376 2003-10-09 Satyaki Das <satyakid@stanford.edu>
1378 * mh-loaddefs.el: Regenerated.
1380 * mh-comp.el (mh-get-header-field): Add autoload cookie.
1382 * mh-utils.el (mh-show-ps-print-toggle-mime)
1383 (mh-show-ps-print-toggle-color, mh-show-ps-print-toggle-faces)
1384 (mh-show-ps-print-msg-file, mh-show-ps-print-msg)
1385 (mh-show-ps-print-msg-show): New interactive functions callable
1386 from the show buffer.
1387 (mh-show-ps-print-map): New key map for printing.
1389 * mh-e.el (mh-folder-mode-map): Remove key binding for
1391 (mh-ps-print-map): Add new key map for printing.
1393 * Makefile (MH-E-SRC): Add mh-print.el.
1395 2003-10-07 Satyaki Das <satyakid@stanford.edu>
1397 * mh-utils.el (mh-x-image-url-fetch-image): In XEmacs,
1398 make-temp-file is not present. So to avoid security problems, use
1399 a temporary file in the user's home directory. This avoids issues
1400 in creating files in a world-writable directory.
1402 * mh-mime.el (mh-signature-highlight): In Emacs, arrange for the
1403 overlay to be freed when it is no longer needed. Also, implement
1404 signature highlighting in XEmacs.
1406 2003-10-05 Satyaki Das <satyakid@stanford.edu>
1408 * mh-mime.el (mh-mime-display, mh-mm-inline-message): Respect the
1409 value of `mm-verify-option' and `mm-decrypt-option'.
1410 (mh-mime-display-security): Rearrange code a bit to avoid too many
1411 new lines being inserted when message verification/decryption is
1412 carried out while the message is being read. Also use the
1413 point-m{in|ax}-marker functions to make the function easier to read.
1414 (mh-mime-security-press-button): Extend the function so that the
1415 user can verify/decrypt messages while reading them.
1417 * mh-gnus.el (mm-possibly-verify-or-decrypt): Added to avoid
1418 compiler warning with old Gnus.
1420 * mh-utils.el (mh-x-image-url-sane-p): New function which checks
1421 if the URL in X-Image-URL is something we can handle.
1422 (mh-x-image-url-display): Don't display image if the URL looks
1425 2003-10-04 Mark D. Baushke <mdb@gnu.org>
1427 * mh-comp.el (mh-letter-menu): Simplify menu heading.
1429 2003-10-03 Mark D. Baushke <mdb@gnu.org>
1431 * mh-mime.el (mh-mml-query-cryptographic-method): Avoid
1432 revisionist history and still provide a good default.
1434 * mh-comp.el (mh-letter-menu): Remove the Disable Security
1435 parenthetical comment.
1437 * mh-loaddefs.el: Regenerated.
1439 * mh-customize.el (mh-mml-method-default): What method should be
1440 used in secure directives.
1442 * mh-mime.el (mh-secure-message): New function used to generate
1443 the mml security tags.
1444 (mh-mml-unsecure-message): New wrapper function around
1445 mml-unsecure-messages.
1446 (mh-mml-secure-message-sign-pgpmime): Remove function.
1447 (mh-mml-secure-message-encrypt-pgpmime): Ditto.
1448 (mh-mml-cryptographic-method-history): New variable.
1449 (mh-mml-query-cryptographic-method): New function.
1450 (mh-mml-secure-message-encrypt): Ditto.
1451 (mh-mml-secure-message-signencrypt): Ditto.
1452 (mh-mml-secure-message-sign): Ditto.
1454 * mh-comp.el (mh-letter-menu, mh-letter-mode-help-messages)
1455 (mh-letter-mode-map): Update to use new functions.
1457 2003-09-26 Satyaki Das <satyakid@stanford.edu>
1459 * mh-seq.el (mh-interactive-range): The function has been
1460 extended so that it now takes a default result to return if no
1461 interactive prefix arg is given and no region is active.
1463 * mh-e.el (mh-add-sequence-notation): If transient-mark-mode is
1464 on, then the active region is deactivated based on whether a user
1465 sequence or a internal sequence is being notated. The change
1466 removes this inconsistency.
1467 (mh-catchup, mh-folder-map): A new interactive function to mark
1468 messages as read has been added and bound to "F c" in the folder
1471 * mh-utils.el (mh-show-catchup, mh-show-folder-map): New
1472 interactive function callable from show mode buffers has been
1475 2003-09-24 Bill Wohler <wohler@newt.com>
1477 * mh-customize.el (mh-clean-message-header-flag)
1478 (mh-invisible-header-fields-default, mh-invisible-header-fields):
1479 Merge docstring with manual.
1481 2003-09-24 Mark D. Baushke <mdb@gnu.org>
1483 * mh-junk.el (mh-junk-blacklist): Junked messages should be put
1484 into the mh-seen-list to avoid propagating the unseen sequence
1485 into the spam folder.
1487 * mh-loaddefs.el: Regenerated.
1489 * mh-mime.el (mh-mml-secure-message-sign-pgpmime): Add an optional
1490 dontsign argument to remove an existing secure message directive.
1491 Update the docstring -- this function does not allow for
1492 encrypt/sign, just sign directives.
1494 * mh-mime.el (mh-mml-secure-message-sign-pgpmime): Use
1495 mml-insert-tag directly to provide a sender if
1496 mh-identity-pgg-default-user-id is set.
1497 (mh-mml-secure-message-encrypt-pgpmime): Use mml-insert-tag
1498 directly to provide a sender if this message is to be both signed
1499 and encrypted and mh-identity-pgg-default-user-id is set.
1501 2003-09-23 Bill Wohler <wohler@newt.com>
1503 * mh-alias.el (Commentary): Removed as it is now in the manual.
1504 (mh-alias-system-aliases): Moved here from mh-customize.el. By
1505 definition, "system" definitions are not user-visible, and user
1506 filenames are in the Aliasfile: profile component, so this
1507 variable really shouldn't be a defcustom.
1508 (mh-alias-tstamp, mh-alias-filenames, mh-alias-reload)
1509 (mh-alias-add-alias, mh-alias-grab-from-field)
1510 (mh-alias-add-address-under-point, mh-alias-apropos): Merge
1511 docstring with manual.
1512 (mh-alias-reload-maybe): Minor comment update.
1513 (mh-alias-insert-file): Merge docstring with manual. Removed
1514 "[press TAB]" from prompt since users should know about completion
1515 and space can be used as well.
1516 (mh-alias-for-from-p): No longer returns a surprising result (t if
1517 there was **not** an alias for the From field) if the From header
1518 field is missing. This function now returns what you would expect
1519 a function of this name to return. Renamed from
1520 mh-alias-from-has-no-alias-p since negatives in the function name
1521 make logic harder to follow.
1522 (mh-alias-add-alias-to-file): Merge docstring with manual.
1523 Improved verbiage of prompt. Aliases are now inserted "[b]efore"
1524 or "[a]fter" the existing alias instead of "[i]nsert" or
1525 "[a]ppend." Note how the new usage flows better.
1527 * mh-customize.el (mh-alias): Changed manual link in defgroup from
1528 Customizing mh-e to Aliases.
1529 (mh-alias-grab-from-field button): mh-alias-from-has-no-alias-p
1530 renamed to mh-alias-for-from-p and no longer returns surprising
1531 value if there isn't a From field. Therefore, enable button if
1532 there is a From header field and mh-alias-for-from-p returns nil.
1533 (mh-letter-complete-function)
1534 (mh-alias-completion-ignore-case-flag, mh-alias-flash-on-comma)
1535 (mh-alias-insert-file, mh-alias-insertion-location)
1536 (mh-alias-local-users, mh-alias-local-users-prefix)
1537 (mh-alias-passwd-gecos-comma-separator-flag): Merge docstring with
1539 (mh-alias-system-aliases): Moved to mh-alias.el.
1541 * mh-comp.el (mh-letter-complete-function-alist): Removed comment
1542 about making this customizable since I didn't think it seemed
1543 appropriate in the manual.
1544 (mh-letter-complete): Merge docstring with manual.
1546 2003-09-23 Satyaki Das <satyakid@stanford.edu>
1548 * mh-speed.el (mh-speed-flists): When exiting emacs, don't ask if
1549 the flists process should be killed.
1551 * mh-e.el (mh-folder-message-menu): Enable undo menu entry only
1552 if something can be undone.
1554 * mh-customize.el (undo): Enable undo button only if something
1557 2003-09-22 Peter S Galbraith <psg@debian.org>
1559 * mh-customize.el (mh-identity-handlers): New defcustom. Alist of
1560 Handler functions for mh-identity (downcased) fields.
1561 (mh-identity-list): Add support for pgg-default-user-id.
1563 * mh-identity.el (mh-insert-identity): Modified to use
1564 `mh-identity-handlers', adding hacking flexibility for those who
1566 (mh-identity-field-handler): New function. Return the handler for
1567 a FIELD or nil if none set. The field name is downcased.
1568 (mh-identity-handler-gpg-identity): New function; handler for pgg
1569 pgp identities. It sets a buffer-local value for
1570 `mh-pgg-default-user-id' which must be handled by mh-send-letter.
1571 (mh-identity-pgg-default-user-id): New buffer-local variable to
1572 hold the requested key ID.
1573 (mh-identity-handler-signature): New function; handler t insert
1574 and remove signature files.
1575 (mh-identity-handler-default): New function; the default handler
1576 to insert or remove generic field.
1577 (mh-identity-handler-top): Insert a field at the top of the
1579 (mh-identity-handler-bottom): Insert a field at the bottom of the
1581 (mh-header-field-delete): Make more robust wrt the field having a
1582 trailing colon or not.
1583 (mh-identity-make-menu): Add a "Customize Identities" menu entry.
1585 * mh-loaddefs.el: Regenerated.
1587 2003-09-21 Peter S Galbraith <psg@debian.org>
1589 * mh-init.el (mh-variant-set): Bug fix for mh-variant long names
1590 with version numbers.
1592 * mh-e.el (mh-scan-format): patch from Sergey Poznyakoff.
1593 GNU mailutils now supports the %(decode) format
1595 2003-09-20 Satyaki Das <satyakid@stanford.edu>
1597 * mh-gnus.el (mh-mm-text-html-renderer): New function to query
1598 which HTML renderer is being used by Gnus.
1600 * mh-mime.el (mh-signature-highlight): Renderers used to display
1601 HTML parts garble the signature separator in various ways. The
1602 function has been modified to take that into account.
1603 (mh-mime-display-single, mh-mm-display-part): Pass the new
1604 optional argument to `mh-signature-highlight'.
1606 2003-09-19 Mark D. Baushke <mdb@gnu.org>
1608 * mh-mime.el (mh-have-file-command, mh-file-mime-type): Made an
1609 mh-autoload as they are used in mh-comp.el.
1611 * mh-loaddefs.el: Regenerated.
1613 2003-09-18 Peter S Galbraith <psg@debian.org>
1615 * mh-comp.el (mh-insert-fields): Make sure field has a colon.
1617 2003-09-18 Satyaki Das <satyakid@stanford.edu>
1619 * mh-seq.el (mh-toggle-tick): Don't hardcode the name of the tick
1620 sequencence in the function. This would have caused improper
1621 highlighting of the tick sequence if the user had changed its
1624 2003-09-15 Satyaki Das <satyakid@stanford.edu>
1626 * mh-e.el (mh-folder-message-menu): Fix a little bug which shows
1627 up as a problem during compilation (closes SF #806577).
1629 2003-09-15 Mark D. Baushke <mdb@gnu.org>
1631 * mh-customize.el (mh-invisible-header-fields-internal): Added
1632 a new field for GNU mailutils per Sergey Poznyakoff.
1634 2003-09-09 Satyaki Das <satyakid@stanford.edu>
1636 * mh-utils.el (vcard): Unconditionally load vcard.el, if
1637 available, so that vcards are always inlined.
1639 2003-09-09 Peter S Galbraith <psg@debian.org>
1641 * mh-mime.el (mh-file-mime-type-substitutions): Add entry to
1642 convert text/plain .vcf files to text/x-vcard.
1643 (mh-mime-content-types): Add text/x-vcard.
1645 2003-09-09 Bill Wohler <wohler@newt.com>
1647 * mh-comp.el (mh-rejected-letter-start): Added strings for qmail
1648 and exim (addresses SF #404965).
1650 2003-09-09 Satyaki Das <satyakid@stanford.edu>
1652 * mh-gnus.el (mm-inline-text-vcard): Make vcard display work with
1653 Gnus-5.9. The extra file vcard.el is still needed.
1655 * mh-mime.el (mh-signature-highlight): New function that
1656 highlights message signatures.
1657 (mh-mm-display-part, mh-mime-display-single): Highlight signatures
1658 using `mh-signature-highlight' (closes SF #802722). More work is
1660 (mh-mime-display): Highlight signature in non-MIME email too.
1662 * mh-customize.el (mh-show-signature-face): New face used to
1663 display message signature.
1665 2003-09-08 Peter S Galbraith <psg@debian.org>
1667 * mh-e.el (mh-version): Do something sensible when
1668 mh-variant-in-use is undefined.
1669 * mh-junk.el (mh-spamassassin-blacklist)
1670 (mh-spamassassin-whitelist): Change options to be compatible with
1671 old version of spamassassin (V2.20).
1673 2003-09-07 Mark D. Baushke <mdb@gnu.org>
1675 * mh-mime.el (mh-access-types): Per RFC 2049, the "afs"
1676 access-type for message/external-body has been removed.
1677 Update the comments to reference the current MIME RFCs
1678 2045, 2046 and 2049 rather than the obsolete RFC 1521.
1680 2003-09-05 Peter S Galbraith <psg@debian.org>
1682 * mh-e.el (mh-version): Bumped version number to 7.4.2+cvs.
1684 2003-09-04 Satyaki Das <satyakid@stanford.edu>
1686 * mh-utils.el (mh-picon-directory-list, mh-picon-directory): The
1687 mh-picon-directory-list variable supersedes mh-picon-directory.
1688 (mh-picon-existing-directory-list): New variable that contains
1689 the list of picon directories that actually exist.
1690 (mh-picon-set-directory-list): New function to update
1691 mh-picon-existing-directory-list from mh-picon-directory-list.
1692 (mh-picon-get-image): The function has been modified to search a
1693 list of possible picon source directories. The regexp to extract
1694 the username from the email address has been made smarter so that
1695 it can recognize email addresses of the form user+random@foo.net
1696 and extract "user" from there.
1697 (mh-picon-file-contents): The file type recognition code has been
1698 moved from mh-picon-get-image into this function.
1699 (mh-picon-generate-path): The function has been generalized so
1700 that searching multiple paths is now feasible.
1702 * mh-pick.el, mh-e.el: Checkdoc fixes.
1704 2003-09-02 Satyaki Das <satyakid@stanford.edu>
1706 * mh-identity.el (eval-when): It seems that the mh-comp-loaded
1707 code isn't required any more.
1709 2003-08-30 Satyaki Das <satyakid@stanford.edu>
1711 * mh-init.el (mh-variant-set): Replace `error' with `message' so
1712 that Emacs CVS will compile without errors if no MH variant is
1715 2003-08-29 Satyaki Das <satyakid@stanford.edu>
1717 * mh-init.el (mh-variant-set): Add interactive spec to the
1720 * mh-mime.el (mh-mhn-compose-external-type): Optional arguments
1721 are prompted for only if prefix arg is given.
1723 2003-08-29 Mark D. Baushke <mdb@gnu.org>
1725 * mh-mime.el (mh-mhn-compose-external-type): Modified to be
1726 interactive and prompts for many of the fields. Made an
1728 (mh-access-types): New table derived from RFC2017, RFC1521 and
1729 RFC1738, used in a completing-read in
1730 mh-mhn-compose-external-type.
1732 * mh-loaddefs.el: Regenerated.
1734 2003-08-26 Satyaki Das <satyakid@stanford.edu>
1736 * mh-utils.el (mh-picon-image-types, mh-picon-get-image): Avoid
1738 (mh-sub-folders-actual): Parsing of the output from folders has
1739 been modified, so that it also works for MH (closes SF #792300).
1741 * mh-junk.el (mh-spamassassin-whitelist): Avoid calling
1742 ietf-drums-parse-address if it isn't present.
1743 (mh-spamassassin-identify-spammers): Avoid use of puthash so that
1744 Emacs20 doesn't complain.
1746 * mh-e.el (mh-colors-available-p): Wrap call to
1747 display-color-cells in a mh-funcall-if-exists to avoid compiler
1750 2003-08-25 Satyaki Das <satyakid@stanford.edu>
1752 * mh-e.el (mh-colors-available-flag, mh-folder-mode): New
1753 variable to track if colors are available and it is set
1754 appropriately in mh-folder-mode.
1755 (mh-colors-available-p, mh-colors-in-use-p): Two functions to
1756 check whether colors are available and if they are actually being
1758 (mh-add-sequence-notation): Just changing a scan line doesn't
1759 make font-lock refontify the line in Emacs20. So explicitly
1760 refontify the scan line in such a situation.
1761 (mh-internal-seq): If colors aren't being used then treat the
1762 tick sequence like a normal user sequence.
1764 * mh-seq.el (mh-put-msg-in-seq): Do font-lock highlighting after
1765 the messages have been added to the sequence.
1766 (mh-toggle-tick): Modified so that highlighting of the ticked
1767 messages will be properly done. If font-lock isn't being used or
1768 if colors aren't supported by the Emacs where MH-E is running,
1769 then the `%' character is used to annotate ticked messages.
1771 * mh-utils.el (mh-picon-image-types): Since Emacs20 doesn't have
1772 image-type-available-p, wrap calls to that function in
1774 (mh-add-msgs-to-seq): Do the font-lock highlighting after the
1775 messages have been added.
1777 2003-08-24 Bill Wohler <wohler@newt.com>
1779 * Makefile (MH-E-SRC): Replaced mh-xemacs-compat.el and
1780 mh-xemacs-icons.el with mh-xemacs.el.
1782 * mh-e.el: Don't require mh-xemacs-compat which no longer exists.
1783 The XEmacs stuff gets required by mh-customize.el which is
1784 required by mh-utils.el which is required by mh-e.el. This all
1785 happens before mh-xemacs-compat was required, so all should be
1788 * mh-unit.el (mh-unit-files): Replaced mh-xemacs-compat.el and
1789 mh-xemacs-icons.el with mh-xemacs.el.
1791 * mh-xemacs.el: New file from concatenation of mh-xemacs-compat.el
1792 and mh-xemacs-icons.el which were removed since their names
1793 exceeded DOS 8+3 limits.
1795 * mh-customize.el (mh-compose-skipped-header-fields): Use
1796 uppercase for field names.
1798 2003-08-21 Bill Wohler <wohler@newt.com>
1800 * mh-customize.el (mh-sequences): Introduced new customization
1801 group for sequences.
1802 (mh-refile-preserves-sequences-flag, mh-tick-seq)
1803 (mh-update-sequences-after-mh-show-flag): Moved option from
1804 mh-folder to mh-sequences group. Synced docstring with manual.
1805 (mh-index-ticked-messages-folders): Since mh-tick-seq is
1806 customizable, use it instead of tick in the docstring.
1808 * mh-index.el (mh-index-ticked-messages): Since mh-tick-seq is
1809 customizable, use it instead of tick in the docstring.
1811 * mh-seq.el (mh-msg-is-in-seq): Can now specify an alternate
1812 message number with a prefix argument.
1813 (mh-narrow-to-tick): Since mh-tick-seq is customizable, use it
1814 instead of tick in the docstring. Also, use mh-tick-seq instead of
1815 tick in warning message.
1817 2003-08-20 Peter S Galbraith <psg@debian.org>
1819 * mh-customize.el: setq mh-variant to 'none when byte-compiling,
1820 since we don't care what MH variant (if any) is on the system at
1823 * mh-init.el (mh-variant-set): Don't probe for MH variant when
1824 mh-variant is set to'none (during byte-compilation).
1826 2003-08-19 Peter S Galbraith <psg@debian.org>
1828 * mh-pick.el (mh-pick-single-dash): New defconst. Search
1829 components that are supported by single-dash option in
1831 (mh-pick-regexp-builder): Use `mh-pick-single-dash' and adapt
1832 patch from Sergey Poznyakoff.
1834 * mh-comp.el (mh-reply): mu-mh supports `repl -group', thanks to
1837 * mh-init.el: checkdoc fixes.
1839 2003-08-19 Bill Wohler <wohler@newt.com>
1841 * mh-seq.el (mh-edit-pick-expr): Renamed from mh-read-pick-regexp
1842 since the new name is more indicative of what the function does.
1843 Prompt now says "Pick expression" instead of "Pick regexp".
1844 (mh-narrow-to-subject): Rewrote function to behave like other
1846 (mh-narrow-to-header-field, mh-narrow-to-range)
1847 (mh-narrow-to-tick): s/regexp/pick-expr/.
1848 (mh-widen, mh-narrow-to-from, mh-narrow-to-cc, mh-narrow-to-to):
1849 Synced docstrings with manual
1851 2003-08-19 Bill Wohler <wohler@newt.com>
1853 Released MH-E version 7.4.2.
1855 * MH-E-NEWS, README: Updated for release 7.4.2.
1857 * mh-e.el (Version, mh-version): Updated for release 7.4.2.
1859 * mh-e.el (mh-folder-size, mh-folder-size-folder)
1860 (mh-folder-size-flist): If flist is not present use folder to find
1861 the number of messages in the folder. Also the .mh_sequences file
1862 is read to find the number of unseen messages (patch from 1.349
1863 and branched for 7.4.2, closes SF #791021).
1865 * mh-utils.el (mh-flists-present-flag, mh-find-progs): Introduce a
1866 new variable to test for the presence of the flists program and
1867 set it in mh-find-progs.
1868 (mh-collect-folder-names): Use folders instead of flists. One
1869 advantage is that folders is available on MH while flists is not.
1870 Another is that if an explicit -sequence argument isn't given and
1871 Unseen-Sequence profile is not present then flists croaks while
1873 (mh-collect-folder-names-filter): Don't consider folder names that
1874 start with a `.' character. This is needed since the folders
1875 command doesn't filter them out like flists does.
1876 (patches from 1.307 and 1.309 and branched for 7.4.2, closes SF
1879 2003-08-18 Bill Wohler <wohler@newt.com>
1881 * mh-index.el (mh-index-sequenced-messages)
1882 (mh-index-new-messages, mh-index-ticked-messages): Updated
1883 docstrings from manual (closes SF #718833).
1885 * mh-customize.el (mh-variant): Checkdoc fix.
1886 (mh-index-new-messages-folders): Don't mention defvar in
1887 docstring, use `+inbox' instead.
1888 (mh-index-ticked-messages-folders): Don't mention defvar in
1889 docstring, use `tick' instead.
1891 * mh-comp.el (mh-repl-group-formfile): Checkdoc fix.
1893 2003-08-18 Peter S Galbraith <psg@debian.org>
1895 * mh-init.el (mh-variant-set, mh-sys-path, mh-variant-info): Add
1896 support for GNU mailutils.
1897 (mh-variant-mu-mh-info): New function to detect mu-mh and return
1898 info about it for `mh-variants'.
1900 * mh-e.el (mh-regenerate-headers): mu-mh has different error
1901 message for a invalid message list.
1903 2003-08-18 Peter S Galbraith <psg@debian.org>
1905 * mh-customize.el (mh-e): New defgroup. Sort of an alias for the
1906 'mh group that a user might be more likely to find.
1908 2003-08-18 Bill Wohler <wohler@newt.com>
1910 * mh-comp.el (mh-insert-auto-fields-done-local): Docstring tweak.
1911 (mh-compose-and-send-mail): Do not call mh-insert-auto-fields.
1912 This should be done only once in mh-send-letter.
1914 2003-08-18 Peter S Galbraith <psg@debian.org>
1916 * mh-comp.el (mh-letter-mode): Call `mh-find-path unconditionally,
1917 like elsewehere in MH-E.
1919 * mh-utils.el (mh-find-path): Run setup code only if
1920 `mh-find-path-run' is nil such that this is only done once.
1921 Also remove the `setq' for `read-mail-command' and `mail-user-agent'.
1923 2003-08-18 Peter S Galbraith <psg@debian.org>
1925 * mh-e.el: require 'mh-utils first
1927 * mh-customize.el (mh-variant): defcustom moved here.
1929 * mh-init.el (mh-variants): Made an mh-autoload.
1931 2003-08-18 Peter S Galbraith <psg@debian.org>
1933 * Makefile (MH-E-SRC): Added mh-init.el to MH-E-SRC.
1935 * mh-utils.el (mh-find-progs): Deleted. Make obsolete by mh-init.el.
1936 (mh-find-path): Call `mh-variants' instead of now obsolete
1938 (mh-path-search): Deleted. Was only used by `mh-find-progs'.
1940 * mh-e.el: require mh-init.el.
1941 (mh-version): Use simpler `mh-variant-in-use'.
1942 (mh-scan-format): Use (mh-variant-p 'nmh) instead of mh-nmh-flag.
1944 * mh-comp.el (mh-insert-x-mailer): Use simpler `mh-variant-in-use'.
1946 * mh-utils.el (mh-progs, mh-lib, mh-lib-progs)
1947 (mh-flists-present-flag): Moved to mh-init.el.
1948 (mh-nmh-flag): Deleted. Use (mh-variant-p 'nmh) instead.
1950 * mh-comp.el (mh-repl-group-formfile, mh-forward, mh-reply)
1951 (mh-send-letter): Use (mh-variant-p 'nmh) instead of mh-nmh-flag.
1953 * mh-mime.el (mh-edit-mhn, mh-mime-save-parts): Use (mh-variant-p
1954 'nmh) instead of mh-nmh-flag.
1956 2003-08-16 Bill Wohler <wohler@newt.com>
1958 * mh-customize.el (mh-folder-selection): New group to hold
1959 variables described in Folder Selection section in manual.
1960 (mh-default-folder-list, mh-default-folder-must-exist-flag,
1961 mh-default-folder-prefix): Moved to mh-folder-selection group.
1962 Updated docstrings per manual update.
1963 (mh-default-folder-for-message-function): New defcustom. Was a
1964 defvar in mh-utils.el. Updated docstring per manual update.
1966 * mh-utils.el (mh-default-folder-for-message-function): Moved to
1969 * mh-e.el (mh-folder-from-address, mh-prompt-for-refile-folder):
1970 Updated docstrings per manual update.
1972 * mh-unit.el (mh-unit-files): Added mh-init.el.
1974 2003-08-16 Peter S Galbraith <psg@debian.org>
1976 * mh-init.el: New file. Code to initialize the MH-E back-end.
1978 (mh-variant): New defcustom. Users may customize `mh-variant' to
1979 switch between available variants.
1980 (mh-variants): Available MH variants are described in this variable.
1981 (mh-variant-in-use, mh-variant-p): Developers may check which
1982 variant is currently in use with the variable `mh-variant-in-use'
1983 or the function `mh-variant-p'.
1985 2003-08-15 Bill Wohler <wohler@newt.com>
1987 * mh-customize.el (mh-auto-fields-list): The manual uses Fcc
1988 instead of fcc, so I've changed the user-visible text
1989 accordingly. I've left the const alone for backwards
1992 2003-08-14 Bill Wohler <wohler@newt.com>
1994 * mh-identity.el (mh-insert-identity): Changed signature deletion
1995 test to test for both markers, rather than testing to see if the
1996 start marker is bound. Since the start marker is defined in this
1997 file, it should always be bound. Suggestion by Satyaki.
1999 * mh-comp.el (mh-send-letter): Go to the top of the draft so that
2000 the user can see which header fields have been inserted. I think
2001 this is more important than leaving point alone or going to the
2002 end to see the signature since Mail-Followup-To or Bcc or cc could
2003 have some deleterious effects.
2005 * mh-customize.el (mh-auto-fields-prompt-flag): New variable.
2006 Non-nil means to prompt before sending if fields inserted.
2008 * mh-comp.el (mh-insert-auto-fields): Now return t if fields
2009 inserted; otherwise nil.
2010 (mh-send-letter): Deleted obsolete documentation about adding
2011 X-Mailer and X-Face. Prompt before sending if auto fields added
2012 and mh-auto-fields-prompt-flag is t.
2014 * mh-customize.el (mh-identity-list): Allow signature to come from
2015 mh-signature-file-name. In this case, the "signature" value is set
2016 to nil. This might not be the best implementation. Suggestions
2019 * mh-identity.el (mh-insert-identity): Now that the signature can
2020 be a nil value, moved test higher up in cond so that the test for
2021 a nil value would not be executed first prevening signature
2022 handling. Handle nil signature value by calling
2023 mh-insert-signature with no arguments which means to use
2024 mh-signature-file-name.
2026 * mh-comp.el (mh-insert-signature): Changed text of message if no
2029 * mh-customize.el (mh-identity-list): Changed "Signature" constant
2030 back to "signature" so it *won't* be backwards-incompatible any
2031 more. I discovered one could use the :tag keyword to get headline
2032 captalization in the menu.
2034 * mh-identity.el (mh-insert-identity): Ditto.
2036 * mh-identity.el (mh-identity-make-menu): Always build menu.
2037 Always create Insert Auto Fields menu item. Just don't enable it
2038 if mh-auto-fields-list is nil. Enable radio buttons always. Make
2039 None a radio button choice with the other identities.
2041 * mh-comp.el (mh-letter-menu): Removed cond on fboundp
2042 'easy-menu-define. We don't do this elsewhere.
2044 2003-08-13 Bill Wohler <wohler@newt.com>
2046 * mh-identity.el (mh-identity-make-menu, mh-insert-identity): Use
2047 headline capitalization in menu items. Even the internal names are
2048 exposed in the customize interface, so they need to be uppercase
2050 (mh-insert-identity): Rather than goto-char to
2051 mh-identity-signature-start before deleting, simply pass it to
2052 delete-region. When setting markers, use point-min-marker and
2053 point-max-marker instead of moving point. Set marker type of
2054 mh-identity-signature-start to t to fix a bug where changing
2055 identity deleted user's text.
2057 * mh-customize.el (mh-identity-list, mh-auto-fields-list):
2058 Reworked docstring. Use headline capitalization. Commented out
2059 implementation details for later deletion or resurrection upon
2060 popular demand. N.B. If your mh-identity-list contains "signature"
2061 then you will need to either edit your .emacs file manually, or
2062 delete your existing "signature" which will become a regular field
2063 with this change and create a new signature. I figured I could get
2064 away with this since 8.0 is a major release, and coinciding with
2065 the manual update will be a MAJOR release. I apologize profusely
2066 that I didn't catch this before it was released.
2067 (mh-identity-default): Use headline capitalization in example.
2069 2003-08-12 Jeffrey C Honig <jch@honig.net>
2071 * mh-customize.el (mh-alias-reloaded-hook): Define
2072 `mh-alias-reloaded-hook'.
2074 * mh-alias.el (mh-alias-reload): Run `mh-alias-reloaded-hook'
2075 after reloading the aliases.
2077 2003-08-12 Mark D. Baushke <mdb@gnu.org>
2079 * mh-comp.el (mh-insert-signature): Use functionp to avoid
2080 the possibility of doing a funcall on a void function.
2082 2003-08-12 Bill Wohler <wohler@newt.com>
2084 * mh-customize.el (mh-identity): Point group manual link to new
2086 (mh-signature-separator-flag): New variable which can be used to
2087 suppress the output of the signature separator.
2089 * mh-comp.el (mh-insert-signature): Use
2090 mh-signature-separator-flag.
2092 * mh-identity.el (mh-insert-identity): If the identity's signature
2093 file didn't exist, an fboundp error was thrown. This was fixed by
2094 removing signature tests that were redundant and out of date with
2095 the tests in mh-insert-signature. Removed second signature
2096 condition as it is now handled in the first signature condition.
2098 2003-08-12 Peter S Galbraith <psg@debian.org>
2100 * mh-identity.el (mh-insert-identity): Don't insert new lines on
2103 * mh-comp.el (mh-insert-signature): Make sure signature file is
2104 readable before trying to insert it.
2106 2003-08-11 Bill Wohler <wohler@newt.com>
2108 * mh-comp.el (mh-insert-signature): Unconditionally insert a
2109 newline so that signatures are inserted consistently, and so that
2110 there isn't any text after the cursor so that the user can start
2111 typing his message immediately. Use new variable and function
2112 mh-signature-separator and mh-signature-separator-p.
2114 * mh-customize.el (mh-delete-yanked-msg-window-flag): Checkdoc
2116 (mh-signature-file-name): Updated docstring now that this variable
2117 can be a function. Added cross-references to
2118 mh-signature-separator, mh-signature-separator-regexp, and
2119 mh-signature-separator-p which might be used in such functions.
2121 * mh-identity.el (mh-insert-identity): Don't include signature if
2122 signature separator already present. Useful when running
2125 * mh-mime.el (mh-inline-vcard-p): Use mh-signature-separator-p.
2127 * mh-utils.el (mh-signature-separator-regexp): New variable
2128 containing "^-- $" which should be used when looking for the
2129 signature separator.
2130 (mh-signature-separator): New variable containing "-- \n" which
2131 should be used when inserting the signature separator.
2132 (mh-signature-separator-p): New function that returns non-nil if
2133 mh-signature-separator-regexp is found in the buffer.
2135 2003-08-09 Satyaki Das <satyakid@stanford.edu>
2137 * mh-utils.el (mh-x-image-scaling-function): Variable that
2138 contains function used to scale images. Possible choices are
2139 mh-x-image-scale-with-convert and mh-x-image-scale-with-pnm.
2140 (mh-convert-executable): Removed.
2141 (mh-x-image-scale-with-pnm, mh-x-image-scale-with-convert): New
2142 functions that scale images using pnm tools or ImageMagick.
2143 (mh-x-image-scale-and-display, mh-x-image-url-display): Use
2144 mh-x-image-scaling-function instead of mh-convert-executable.
2146 2003-08-08 Peter S Galbraith <psg@debian.org>
2148 * mh-comp.el (mh-insert-signature): Bug fix. Handle case of nil
2149 `mh-signature-file-name' and hooks correctly.
2151 * mh-identity.el (mh-insert-identity): Refactor to use
2154 * mh-comp.el (mh-signature-separator-p): Removed.
2156 * mh-comp.el (mh-insert-signature): Merge MIME awareness from
2157 mh-insert-identity into this command. Allow
2158 `mh-signature-file-name' to be a function to call. See if "-- "
2159 needs to be inserted only after hooks have run.
2161 2003-08-07 Bill Wohler <wohler@newt.com>
2163 * mh-customize.el (mh-compose-skipped-header-fields): Added
2165 (mh-autoload): Removed cookies. They aren't necessary in
2166 mh-e.el, mh-utils.el, or mh-customize.el.
2168 * mh-e.el (mh-autoload): Removed cookies. They aren't necessary in
2169 mh-e.el, mh-utils.el, or mh-customize.el.
2171 * mh-identity.el (mh-insert-identity): Made regexp for signature
2172 separator more explicit. Hmmm, maybe we should create
2173 mh-signature-separator-regexp...
2175 * mh-index.el (mh-replace-string): Moved to mh-utils.el.
2177 * mh-utils.el (mh-replace-string): Moved here from mh-index.el.
2178 (mh-autoload): Removed cookies. They aren't necessary in mh-e.el,
2179 mh-utils.el, or mh-customize.el.
2181 * mh-comp.el (mh-insert-signature): Added file argument to insert
2182 a file other than mh-signature-file-name. Insert signature
2183 separator, unless file already contains one.
2185 2003-08-06 Satyaki Das <satyakid@stanford.edu>
2187 * mh-e.el (mh-folder-size, mh-folder-size-folder)
2188 (mh-folder-size-flist): If flist is not present use folder to
2189 find the number of messages in the folder. Also the .mh_sequences
2190 file is read to find the number of unseen messages.
2192 * mh-utils.el (mh-flists-present-flag, mh-find-progs): Introduce
2193 a new variable to test for the presence of the flists program and
2194 set it in mh-find-progs.
2196 2003-08-06 Peter S Galbraith <psg@debian.org>
2198 * mh-customize.el: Change the order of `mh-identity-list' and
2199 `mh-auto-fields-list' and remove byte-compilation defvar for
2200 `mh-identity-list'. This fixes a customization bug for
2201 `mh-identity-list', where it wasn't set correctly.
2203 * mh-identity.el (mh-identity-make-menu): mh-auto-fields-list may
2204 not be bound yet when initially loaded.
2206 2003-08-06 Bill Wohler <wohler@newt.com>
2208 * mh-alias.el (mh-alias-add-address-under-point): Removed trailing
2209 period from messages. The conventions say that errors should not
2210 end with a period and that "Foo...done" messages should not end in
2211 a period, but they aren't explicit about messages in general.
2212 Given what the conventions *do* say, and because most of our
2213 messages don't end with a period, let's just say that messages in
2214 general don't end in a period, just like error messages.
2216 * mh-comp.el (mh-extract-rejected-mail, mh-letter-mode-message):
2219 * mh-e.el (mh-refile-a-msg): Ditto.
2221 * mh-funcs.el (mh-undo-folder): Ditto.
2223 * mh-mime.el (mh-mime-save-parts): Ditto.
2225 * mh-seq.el (mh-subject-to-sequence-unthreaded)
2226 (mh-narrow-to-subject, mh-delete-subject): Ditto.
2228 * mh-index.el (mh-index-sequenced-messages)
2229 (mh-index-new-messages, mh-index-ticked-messages): Discovered that
2230 in general we should only use question marks in yes-or-no-p or
2231 y-or-n-p prompts, but not in other prompts that use
2232 completing-read and offer defaults. In these cases, use colons
2233 instead (closes SF #730470).
2235 * mh-mime.el (mh-mime-save-parts): Ditto.
2237 * mh-utils.el (mh-prompt-for-folder): Ditto.
2239 * mh-alias.el (mh-alias-apropos): Multiple messages are usually
2240 shown one at a time rather than appended. Send output to
2241 mh-aliases-buffer instead of *Help*.
2242 (mh-alias-local-users): Checkdoc fix.
2244 * mh-funcs.el (mh-undo-folder): Removed commented-out code since
2245 its deadline had expired.
2247 * mh-utils.el (mh-aliases-buffer): New buffer name, used in
2250 2003-08-06 Satyaki Das <satyakid@stanford.edu>
2252 * mh-utils.el (mh-x-image-url-cache-canonicalize): Make this
2253 function work for XEmacs too.
2254 (mh-collect-folder-names): Use folders instead of flists. One
2255 advantage is that folders is available on MH while flists is not.
2256 Another is that if an explicit -sequence argument isn't given and
2257 Unseen-Sequence profile is not present then flists croaks while
2259 (mh-collect-folder-names-filter): Don't consider folder names that
2260 start with a `.' character. This is needed since the folders
2261 command doesn't filter them out like flists does.
2263 * mh-index.el (mh-replace-string): Add autoload for it.
2265 2003-08-05 Satyaki Das <satyakid@stanford.edu>
2267 * mh-mime.el (mh-compose-forward, mh-mhn-compose-forw)
2268 (mh-mml-forward-message): The variable mh-sent-from-msg can be a
2269 list. So check that the value is really a number before using it
2272 * mh-comp.el (mh-insert-letter): Same as above.
2274 * mh-utils.el (mh-picon-get-image): Make the code that finds the
2275 address of the sender more robust.
2276 (mh-face-display-function): Make it work with XEmacs.
2277 (mh-picon-image-types): A new variable that stores what image
2280 2003-08-05 Satyaki Das <satyakid@stanford.edu>
2282 * mh-customize.el (mh-tool-bar-define): Make the save button such
2283 that is activated only if the buffer needs to saved.
2285 * mh-utils.el (mh-face-display-function, mh-picon-get-image): Some
2286 domains, for instance cs.cmu.edu, don't have xpm files. So we need
2287 to search for all three files. The change does that.
2288 (mh-picon-file-contents): A utility function to return the
2289 contents of a file as a string.
2290 (mh-picon-get-image): Write it as a loop to make it simpler.
2291 (mh-x-image-set-download-state): Make the link simpler.
2293 2003-08-04 Satyaki Das <satyakid@stanford.edu>
2295 * mh-utils.el (mh-x-image-url-display): Don't bother to try to
2296 download image if we don't have the necessary tools to display
2298 (mh-face-display-function): Add preliminary support for "domain"
2300 (mh-picon-get-image, mh-picon-generate-path): Functions to find
2301 best match for domain in the From header field.
2303 * mh-e.el (mh-previous-unread-msg): If some of the messages in the
2304 unseen sequence are not present in the folder buffer then calling
2305 this function gets stuck and can't skip over them. The change
2307 (mh-next-unread-msg): Same as above.
2309 2003-08-04 Bill Wohler <wohler@newt.com>
2311 * mh-utils.el (mh-show-mode): Added cross reference to
2312 mh-folder-mode in docstring (closes SF #728638). Added
2313 \\{mh-show-mode-map} to show keymap.
2315 * mh-e.el (mh-folder-mode): Added information about ranges to
2316 docstring (closes SF #728638).
2318 * mh-speed.el (mh-speed-refresh): New function that calls
2319 mh-speed-flists and mh-invalidate-map.
2320 (mh-folder-speedbar-key-map): Replaced keybindings for
2321 mh-speed-invalidate-map and mh-speed-flists with a single binding
2322 for mh-speed-refresh.
2323 (mh-folder-speedbar-menu-items): Replaced menu items for Run
2324 Flists and Invalidate Cached Folders with the single menu item
2325 Refresh Speedbar in order to simplify the UI.
2327 * mh-customize.el (mh-fetch-x-image-url): Added DOS as another
2328 reason not to set this to t.
2330 2003-08-04 Satyaki Das <satyakid@stanford.edu>
2332 * mh-e.el (mh-scan-folder): Handle ranges from user input properly.
2334 2003-08-03 Satyaki Das <satyakid@stanford.edu>
2336 * mh-utils.el (mh-find-msg-get-num): Removed. If threading isn't
2337 present, the messages are sorted by index. So `mh-goto-msg' was
2338 implemented as a binary search and this function was used in that
2339 implementation. So this isn't needed any more.
2340 (mh-msg-search-pat): Removed. Before the advent of message
2341 threading, this function was used to generate a regexp used to
2342 search for a particular message. It isn't used anymore. The
2343 variable `mh-scan-msg-number-regexp' should be updated and used in
2344 `mh-goto-msg' instead of hardcoding the regexp in the code. Then
2345 we might be able to better support other scan line formats in the
2348 * mh-seq.el (mh-map-to-seq-msgs, mh-notate-seq): Removed. These
2349 functions were used to notate user sequences. But calling
2350 `mh-goto-msg' inside of a loop is inefficient. So the sequence
2351 notation code was rewritten thereby making these functions
2353 (mh-copy-line-to-point): Removed. This function was used in the
2354 implementation the now removed function `mh-copy-seq-to-point'.
2355 That function was problematic and was replaced by the less general
2356 `mh-copy-seq-to-eob'. This makes `mh-copy-line-to-point'
2358 (mh-region-to-msg-list): Removed since this is a special case of
2359 the more general `mh-range-to-msg-list'.
2361 * mh-loaddefs.el: Regenerated.
2363 2003-08-03 Jeffrey C Honig <jch@honig.net>
2365 * mh-customize.el (mh-invisible-header-fields-default): Added
2366 several new fields to hide. Sorted the list with sort-lines.
2368 2003-08-03 Peter S Galbraith <psg@debian.org>
2370 * mh-customize.el (mh-invisible-headers): Variable renamed to
2371 `mh-invisible-header-fields-compiled'.
2372 (mh-invisible-headers): Implement above change.
2374 * mh-utils.el (mh-display-msg): Idem.
2376 * mh-mime.el (mh-mm-inline-message): Idem.
2378 * mh-comp.el (mh-insert-letter): Idem.
2380 2003-08-03 Bill Wohler <wohler@newt.com>
2382 * mh-speed.el (mh-folder-speedbar-menu-items): Added separator
2383 between standard and MH-E menu items. Use headline capitalization
2386 * mh-utils.el (mh-temp-fetch-buffer): New constant to hold
2387 buffer name for wget output.
2388 (mh-x-image-url-fetch-image): Use mh-temp-fetch-buffer instead
2389 of hard-coded buffer name. Use make-temp-file to avoid race
2390 conditions and subsequent security issues raised in make-temp-name
2393 2003-08-03 Satyaki Das <satyakid@stanford.edu>
2395 * mh-utils.el (mh-wget-executable, mh-wget-choice, mh-wget-option)
2396 (mh-x-image-url-fetch-image): Support the use of `curl' and
2397 `fetch' as alternatives to `wget'.
2398 (mh-wget-choice): Change order of search.
2399 (mh-x-image-url-fetch-image): Rename buffer.
2401 2003-08-03 Satyaki Das <satyakid@stanford.edu>
2403 * mh-utils.el (mh-x-image-set-download-state)
2404 (mh-x-image-get-download-state): Specially named symbolic links
2405 are used to keep track of whether a X-Image-URL header field needs
2406 to downloaded the next time it is seen. These functions get and
2407 set the symlinks appropriately.
2408 (mh-x-image-url-fetch-image): Simplified since the query has been
2409 moved to `mh-x-image-url-display'. Also if wget isn't present then
2410 try again next time since the user might install wget before
2412 (mh-x-image-scale-and-display): Handle absence of the `convert'
2413 program better. If it isn't present then we will try to display
2414 the image the next time it is encountered. Also use the -geometry
2415 option to convert since the -resize option isn't present in older
2417 (mh-x-image-url-display): Move all the code that decides whether
2418 an X-Image-URL header field will be fetched in this function. Also
2419 remember the user's decision so that if the image couldn't be
2420 fetched the first time, we will try to fetch it later on without
2423 2003-08-02 Peter S Galbraith <psg@debian.org>
2425 * mh-alias.el (mh-alias-local-users): Exclude all aliases already
2426 in mh-alias-alist from `ali' (closes SF #772595).
2428 2003-08-01 Satyaki Das <satyakid@stanford.edu>
2430 * mh-utils.el (mh-x-image-display, mh-x-image-url-display): Avoid
2431 a race. The X-Image-URL is displayed asynchronously. Suppose a
2432 message with a image is shown with `mh-show'. If a different
2433 message is displayed before the image can be fetched, then the new
2434 message will have the image displayed. With this change the race
2435 is less likely to happen.
2437 2003-08-01 Peter S Galbraith <psg@debian.org>
2439 * mh-inc.el (mh-inc-spool-map): Fix what `mh-inc-spool-map-help'
2440 must look like as a fake `mh-help-messages' in order to work
2441 correctly in mh-help.
2443 2003-07-31 Bill Wohler <wohler@newt.com>
2445 * mh-inc.el (mh-inc-spool-map): Use mh-help instead of
2446 mh-ephem-message in order to display help in its own buffer
2447 instead of minibuffer.
2449 * mh-utils.el (mh-help-buffer): New variable to hold the name of
2450 the MH-E help buffer name.
2452 * mh-funcs.el (mh-help, mh-prefix-help): Use with-electric-help to
2453 display help messages. I observed a friend with a vision
2454 disability and the 5 seconds the help appeared on the screen was
2455 not long enough for him to lock on it. I've therefore changed the
2456 help function to display the help in its own buffer called *MH-E
2457 Help* (closes SF #493740 and SF #656631).
2459 * mh-customize.el (mh-fetch-x-image-url): Changed default from nil
2460 to 'ask. Updated docstring from manual.
2461 (mh-invisible-header-fields-internal): Added X-Image-URL.
2462 (mh-show-use-xface-flag): Updated docstring from manual.
2463 (mh-x-face-file): Ditto.
2465 * mh-mime.el (mh-mhn-compose-external-type): Don't insert the
2466 directory parameter if it's nil. The mhbuild man page indicates
2467 that this parameter is optional, so this should be fine.
2469 * mh-comp.el (mh-letter-mode-map): Added keybindings for
2470 mh-mhn-compose-anon-ftp and
2471 mh-mhn-compose-external-compressed-tar.
2472 (mh-letter-menu): Uncommented menu items for same.
2474 2003-07-30 Satyaki Das <satyakid@stanford.edu>
2476 * mh-loaddefs.el: Regenerated.
2478 * mh-pick.el (mh-do-pick-search): Removed since the function
2479 `mh-pick-do-search' performs the same action as this function.
2481 * mh-index.el (mh-index-update-unseen): Removed since the
2482 generalized sequence synchronization code that keeps sequences in
2483 index folders in sync with the sequences in the source folders
2484 makes this function redundant.
2486 * mh-e.el (mh-folder-unseen-seq-name, mh-folder-unseen-seq-list):
2487 Removed. These two functions were used in the unseen sequence
2488 highlighting before the sequence highlighting code was
2489 generalized. In any event calls to the function
2490 `mh-folder-unseen-seq-name' can be replaced by the variable
2491 `mh-unseen-seq' and calls to `mh-folder-unseen-seq-list' can be
2492 replaced with (cdr (assoc mh-unseen-seq mh-seq-list)).
2493 (mh-unmark-all-headers): Removed since this function has been
2494 superseded by mh-remove-all-notation.
2495 (mh-map-over-seqs): Removed since we now have the generalized
2496 iteration over message ranges (the `mh-iterate-on-range' macro)
2497 that can be used instead.
2498 (mh-notate-if-in-one-seq): Removed. This function was used for
2499 changing the `%' notation for user sequences. It can't be used for
2500 that purpose any more, since we have a different scheme now.
2502 * mh-unit.el (mh-unit-tests): Removed since it isn't needed any
2504 (mh-unit): Run all function that start with the string
2507 2003-07-30 Bill Wohler <wohler@newt.com>
2509 * mh-customize.el (mh-invisible-header-fields): Checkdoc fix.
2511 * mh-utils.el (mh-x-image-url-cache-canonicalize): Shortened using
2512 example in files.el:make-backup-file-name-1.
2513 (mh-face-display-function): Added X-Image-URL to docstring.
2515 * mh-unit.el (mh-unit-x-image-url-cache-canonicalize): New
2516 function to test mh-x-image-url-cache-canonicalize since it lent
2517 itself well to unit testing. Had to start somewhere!
2518 (mh-unit-equal): New function that throws an error if RESULT
2519 doesn't equal EXPECTED.
2520 (mh-unit): Call mh-unit-x-image-url-cache-canonicalize.
2522 2003-07-29 Satyaki Das <satyakid@stanford.edu>
2524 * mh-unit.el (mh-unit-update-call-graph): Make the function work
2525 better with dotted lists, that is lists of the form (a b c . d)
2526 where `d' isn't nil. With this we are able to avoid marking some
2527 functions as unused even though they are actually used in alists.
2529 2003-07-28 Peter S Galbraith <psg@debian.org>
2531 * mh-comp.el (mh-insert-letter): Remove `mh-visible-headers'
2534 * mh-mime.el (mh-mm-inline-message): Same.
2536 * mh-utils.el (mh-display-msg): Same.
2537 (mh-clean-msg-header): Make a note of above change.
2539 * mh-customize.el (mh-invisible-header-fields-internal): Renamed
2540 from prior `mh-invisible-header-fields-default'.
2541 (mh-invisible-header-fields-default): Renamed from prior
2542 `mh-invisible-header-fields-default-override'.
2543 (mh-invisible-header-fields): Renamed from prior
2544 `mh-invisible-header-fields-user'.
2545 (mh-visible-headers): Removed! We use invisible fields only now.
2546 (mh-visible-header-fields): Removed!
2548 2003-07-28 Peter S Galbraith <psg@debian.org>
2550 * mh-customize.el (mh-invisible-header-fields-default): Added 3
2553 2003-07-28 Satyaki Das <satyakid@stanford.edu>
2555 * mh-utils.el (mh-show): Add an extra argument to the function so
2556 that interactive use will always force redisplay of the message.
2558 * mh-mime.el (mh-mime-display, mh-mm-inline-message): Bind the
2559 variables `mm-verify-option' and `mm-decrypt-option' so that
2560 verification and decryption of mail can happen without any
2561 additional tinkering.
2563 2003-07-25 Peter S Galbraith <psg@debian.org>
2565 * mh-customize.el (mh-invisible-header-fields-default): New defvar
2566 holding default fields to hide. This replaces the old
2567 `mh-invisible-header-fields' defcustom.
2568 (mh-invisible-header-fields-user): New defcustom. Users add
2569 fields to suppress that we didn't include in
2570 `mh-invisible-header-fields-default'. This could be named simply
2571 `mh-invisible-header-fields' and it wouldn't really break anything
2572 for users who have customized it to a long list now redundant with
2573 `mh-invisible-header-fields-default'.
2574 (mh-invisible-header-fields-default-override): New defcustom.
2575 Users check off the fields they want displayed from what we
2576 included in `mh-invisible-header-fields-default'.
2577 (mh-invisible-headers): Function adapted to new variables.
2579 2003-07-25 Satyaki Das <satyakid@stanford.edu>
2581 * mh-e.el (mh-inc-folder): If the user is in a different folder
2582 displaying a message and runs mh-inc-folder, then the folder
2583 changes to +inbox but the show window continues to display the
2584 message in the old folder. The change fixes this.
2585 (mh-visit-folder): Make the handling of the show window similar to
2586 that of mh-inc-folder.
2588 2003-07-24 Satyaki Das <satyakid@stanford.edu>
2590 * mh-e.el (mh-folder-message-menu, mh-folder-folder-menu): Use the
2591 predicate mh-outstanding-commands-p instead of its exapansion.
2592 Also use the same label in both menus.
2593 (mh-outstanding-commands-p): Generalized so that it will work in
2594 mh-show-mode buffers as well.
2596 * mh-customize.el (mh-tool-bar-define): Enable tool-bar button for
2597 mh-execute-commands only if there are pending deletes or refiles.
2599 2003-07-19 Satyaki Das <satyakid@stanford.edu>
2601 * mh-utils.el (mh-show-msg): If a unseen message is first marked
2602 for deletion/refiling and then displayed, the bold highlighting
2603 does not go away. This change fixes that.
2605 * mh-seq.el (mh-msg-is-in-seq): Fix a bug in the function. If any
2606 message was marked for refiling, then the function would have you
2607 believe that every message in the folder is being refiled.
2609 2003-07-17 Bill Wohler <wohler@newt.com>
2611 * mh-e.el: Removed email address for Stephen Gildea's in Change
2612 Log at his request (damn spammers). Removed other email addresses
2613 while I was at it since the SourceForge URL should be sufficient
2614 contact information.
2616 (mh-scan-format-*mh): Fixed typo in comment above these variables.
2617 These variables are used if mh-scan-format-file is t, not nil.
2618 Also mh-scan-format-file is no longer "above" (courtesy Stephen
2621 2003-07-17 Satyaki Das <satyakid@stanford.edu>
2623 * mh-mime.el (mh-mhn-quote-unescaped-sharp): New function that
2624 quotes `#' characters in the first column that aren't part of a
2626 (mh-mhn-directive-present-p): Generalized to allow the function
2627 to search for MHN directives in a part of the buffer.
2628 (mh-edit-mhn): Quote unescaped `#' characters in the draft (closes
2631 2003-07-16 Satyaki Das <satyakid@stanford.edu>
2633 * mh-alias.el (mh-alias-read-address-map): If
2634 mh-alias-flash-on-comma is nil when mh-alias is loaded, then
2635 setting mh-alias-flash-on-comma to t later on doesn't turn on
2636 address completion display till Emacs is restarted. The change
2639 2003-07-15 Bill Wohler <wohler@newt.com>
2641 * mh-utils.el (mh-cmd-note): Cleaned up docstring (changed phrase
2642 to sentences). Moved to Scan Line Formats section.
2643 (mh-scan-msg-number-regexp)
2644 (mh-scan-msg-overflow-regexp, mh-scan-msg-format-regexp)
2645 (mh-scan-msg-format-string, mh-scan-msg-search-regexp): Cleaned up
2646 docstrings (changed phrases to sentences).
2647 (mh-note-seq): Cleaned up docstring (changed phrase to sentences).
2648 Also, this variable is now a character and not a string. Moved to
2649 Scan Line Formats section.
2651 * mh-funcs.el (mh-note-copied, mh-note-printed): Cleaned up
2652 docstrings (changed phrases to sentences). Also, these variables
2653 are now characters and not strings.
2655 * mh-e.el (mh-scan-format-mh, mh-scan-format-nmh): Filled. I was
2656 hoping to quote the hint `t' but checkdoc wouldn't let me.
2657 (mh-note-deleted, mh-note-refiled, mh-note-cur): Moved to Scan
2658 Line Formats section.
2659 (mh-scan-good-msg-regexp, mh-scan-deleted-msg-regexp)
2660 (mh-scan-refiled-msg-regexp, mh-scan-valid-regexp)
2661 (mh-scan-cur-msg-number-regexp, mh-scan-date-regexp)
2662 (mh-scan-rcpt-regexp, mh-scan-body-regexp)
2663 (mh-scan-subject-regexp, mh-scan-format-regexp): Cleaned
2664 up docstrings (changed phrases to sentences).
2665 (mh-scan-cur-msg-regexp): Marked this variable as obsolete; it
2666 should be removed for 8.0.
2668 * mh-comp.el (mh-note-repl, mh-note-forw, mh-note-dist): Cleaned
2669 up docstrings (changed phrases to sentences). Also, these
2670 variables are now characters and not strings.
2672 2003-07-15 Satyaki Das <satyakid@stanford.edu>
2674 * mh-index.el (mh-index-update-single-msg)
2675 (mh-index-create-sequences): Handle the situation where there are
2676 copies of the exact same message correctly.
2678 2003-07-15 Satyaki Das <satyakid@stanford.edu>
2680 * mh-seq.el (mh-thread-update-scan-line-map): Modified since
2681 notation is already a character.
2683 * mh-utils.el (mh-note-seq): Convert from string to character.
2684 (mh-notate): Modified since characters are used to notate instead
2685 of strings of length one.
2687 * mh-comp.el (mh-note-repl, mh-note-forw, mh-note-dist): Convert
2688 from string to characters.
2690 * mh-e.el (mh-note-deleted, mh-note-refiled, mh-note-cur): Same as
2691 above (closes SF #770772).
2692 (mh-unmark-all-headers): Modified since mh-note-* variables are
2694 (mh-remove-sequence-notation): The mh-notate function remembers
2695 the previous notation. Before the change to the mh-note-*
2696 variables, mh-notate would only remember the change if a string
2697 was used to notate the message. Now mh-notate is always called
2698 with a character notation. So the deletion has to take place
2701 2003-06-28 Bill Wohler <wohler@newt.com>
2703 * mh-mime.el (mh-mhn-directive-present-p): If shell comments are
2704 present that have a space after the # but no content, then this
2705 function would throw an error. This has been fixed (closes SF
2708 2003-06-27 Satyaki Das <satyakid@stanford.edu>
2710 * mh-index.el (mh-index-search): Use the new and improved
2711 mh-index-new-folder.
2712 (mh-index-new-folder): Improved so that redoing the same search
2713 will reuse the old index folder.
2714 (mh-index-folder-search-regexp): New function which that extracts
2715 out the search expression that produced the index folder.
2717 2003-06-24 Bill Wohler <wohler@newt.com>
2719 * mh-e.el (Version, mh-version): Set to 7.4.1+cvs.
2721 2003-06-25 Bill Wohler <wohler@newt.com>
2723 Released MH-E version 7.4.1.
2725 * MH-E-NEWS, README: Updated for release 7.4.1.
2727 * mh-e.el (Version, mh-version): Updated for release 7.4.1.
2729 2003-06-25 Bill Wohler <wohler@newt.com>
2731 * mh-unit.el (require 'cl): Added. Needed when compiling
2734 * Makefile (clean): Now a double-colon rule. Added a second clean
2735 target to remove mh-unit.elc.
2736 (compile): Removed mh-unit.elc.
2737 (mh-unit.elc): New target used to compile mh-unit.
2739 2003-06-24 Bill Wohler <wohler@newt.com>
2741 * mh-e.el (Version, mh-version): Set to 7.4+cvs.
2743 2003-06-24 Bill Wohler <wohler@newt.com>
2745 Released MH-E version 7.4.
2747 * MH-E-NEWS, README: Updated for release 7.4.
2749 * mh-e.el (Version, mh-version): Updated for release 7.4.
2751 2003-06-24 Bill Wohler <wohler@newt.com>
2753 * mh-alias.el (mh-alias-gecos-name, mh-alias-local-users)
2754 (mh-alias-suggest-alias): s/gcos/gecos. The original acronym was
2755 GECOS but was later renamed to GCOS (see
2756 http://info.astrian.net/jargon/terms/g/GCOS.html). But the term
2757 really needs to match the field named pw_gecos in struct passwd in
2760 * mh-customize.el (mh-letter-faces): New group to house
2761 mh-letter-header-field-face.
2762 (mh-interpret-number-as-range-flag)
2763 (mh-kill-folder-suppress-prompt-hook): Use "you" instead of "the
2764 user" to make text more friendly.
2765 (mh-index-ticked-messages-folders, mh-visible-headers)
2766 (mh-visible-header-fields): Alphabetized.
2767 (mh-alias-passwd-gcos-comma-separator-flag): Alphabetized and
2769 (mh-alias-local-users-prefix): Fixed docstring. Prefixes are
2770 prepended, not appended. Additional checkdoc fix.
2771 (mh-letter-header-field-face): Set group to new group
2772 mh-letter-faces and moved option into this group.
2774 * mh-index.el (mh-index-sequenced-messages): Improved wording of
2775 docstring and mentioned use of prefix argument.
2777 * mh-seq.el (mh-widen): Made docstring more accurate (hopefully!).
2779 2003-06-18 Satyaki Das <satyakid@stanford.edu>
2781 * mh-index.el (mh-replace-string): Modified to preserve case of
2783 (mh-index-parse-search-regexp): Preserve case of search terms.
2784 This is needed to take advantage of the acronym indexing in
2785 swish++ (closes SF #755718).
2787 2003-06-13 Satyaki Das <satyakid@stanford.edu>
2789 * mh-utils.el (mh-show-index-sequenced-messages): Interactive
2790 function callable from the show buffer.
2791 (mh-show-folder-map): Add key binding for "F q".
2793 * mh-e.el (mh-folder-map): Same as above.
2795 * mh-index.el (mh-index-sequenced-messages): Add interactive spec
2796 to the function (closes SF #718833).
2798 2003-06-13 Bill Wohler <wohler@newt.com>
2800 * mh-index.el (mh-flists-execute): Needed to expand mhpath too.
2802 2003-06-12 Satyaki Das <satyakid@stanford.edu>
2804 * mh-index.el (mh-flists-execute): Modified so that flists
2805 present in mh-progs is called.
2807 2003-06-07 Jeffrey C Honig <jch@honig.net>
2809 * mh-comp.el (mh-forward, mh-forward): Use (mh-mail-header-end) to
2810 find the end of headers instead of doing an re-search-forward
2811 based on mh-mail-header-separator.
2813 2003-06-06 Satyaki Das <satyakid@stanford.edu>
2815 * mh-comp.el (mh-letter-toggle-header-field-display): Make the
2816 function callable from the show buffer. This means that the
2817 buffer is temporarily made writable and the modification status
2818 of the buffer restored to the original value.
2820 2003-06-06 Peter S Galbraith <psg@debian.org>
2822 * mh-utils.el (mh-address-mail-regexp): Bug fix! It wasn't a true
2823 copy of the goto-addr variable. My modification only recognized
2824 addresses with one dot after the @. Sorry about that.
2826 2003-06-05 Satyaki Das <satyakid@stanford.edu>
2828 * mh-utils.el (mh-replace-in-string): Move comment into doc
2829 string to satisfy checkdoc.
2831 * mh-alias.el (mh-alias-apropos): Checkdoc fix.
2833 2003-06-05 Bill Wohler <wohler@newt.com>
2835 * mh-customize.el (mh-identity-list): Fixed typo in docstring.
2837 2003-06-05 Peter S Galbraith <psg@debian.org>
2839 * mh-comp.el (mh-letter-complete-function-alist): Add bcc an reply-to.
2841 2003-06-04 Peter S Galbraith <psg@debian.org>
2843 * mh-comp.el (mh-letter-complete-function-alist): Add dcc.
2845 2003-06-03 Peter S Galbraith <psg@debian.org>
2847 * mh-utils.el (mh-replace-in-string): New function name instead of
2848 `dired-replace-in-string'.
2849 * mh-alias.el (mh-alias-gcos-name): Use it.
2851 * mh-alias.el (mh-alias-apropos): New command. Show all aliases
2852 that match REGEXP either in name or content.
2854 * mh-alias.el (mh-alias-suggest-alias): Add no-comma-swap optional
2856 (mh-alias-canonicalize-suggestion): Change a comma to a period in
2858 (mh-alias-local-users): Call `mh-alias-suggest-alias' with
2859 `no-comma-swap' arg set to t.
2861 * mh-alias.el (mh-alias-local-users): Fix case of nil
2862 `mh-alias-passwd-gcos-comma-separator-flag'.
2864 * mh-alias.el (mh-alias-gcos-name): Fix for case of empty gcos
2866 (mh-alias-local-users): Fix same.
2868 * mh-alias.el (mh-alias-canonicalize-suggestion): Replace use by
2869 verbose `replace-regexp' by a looped `replace-match'
2871 2003-06-02 Peter S Galbraith <psg@debian.org>
2873 * mh-utils.el (dired-replace-in-string): Bind if not already
2874 defined. Borrowed from dired.el
2876 * mh-alias.el (mh-alias-gcos-name): switch to using
2877 dired-replace-in-string.
2879 2003-06-02 Satyaki Das <satyakid@stanford.edu>
2881 * mh-utils.el (mh-letter-font-lock-keywords): Fontify header
2882 fields in the draft buffer that aren't skipped when navigating
2883 with TAB (or S-TAB).
2885 * mh-customize.el (mh-clean-message-header-flag)
2886 (mh-invisible-headers, mh-invisible-header-fields)
2887 (mh-alias-passwd-gcos-comma-separator-flag): Checkdoc fix.
2888 (mh-letter-header-field-face): New face to fontify the header
2891 * mh-comp.el (mh-insert-auto-fields-done-local): Checkdoc fix.
2892 (mh-letter-mode, mh-letter-mail-header-end-marker): Remember the
2893 end of the message header in a marker. This is used to fontify the
2895 (mh-font-lock-field-data, mh-letter-header-end): Functions used
2896 to fontify message header fields.
2898 * mh-alias.el (mh-alias-gcos-name): Checkdoc fix.
2900 2003-06-02 Peter S Galbraith <psg@debian.org>
2902 * mh-alias.el (mh-alias-gcos-name): New function. Return a usable
2903 address string from a GCOS-NAME and USERNAME.
2904 (mh-alias-local-users): Use it.
2906 * mh-customize.el (mh-alias-passwd-gcos-comma-separator-flag): New
2907 defcustom. Whether the gcos field in the passwd file uses comma as
2910 * mh-customize.el (mh-alias-local-users-prefix): New
2911 defcustom. String to append to the real names of users from the
2912 passwd file. If nil, use the username string unmodified instead of
2913 the real name from the gcos field of the passwd file.
2915 * mh-alias.el (mh-alias-local-users): Use it to generate aliases
2916 which by default are now the real name prefixed by "local."
2918 2003-06-01 Peter S Galbraith <psg@debian.org>
2920 * mh-comp.el (mh-modify-header-field): Bug fix. Calling with
2921 a value that was already inserted causes it to get inserted a
2922 second time. I have wrapped the value around \b word delimiters.
2923 Hope there are no side effects for other code.
2925 * mh-comp.el (mh-insert-auto-fields): Attempt regardless of
2926 `mh-insert-auto-fields-done-local' flag in interactive use.
2928 * mh-comp.el (mh-insert-auto-fields-done-local): Keep track of
2929 whether `mh-insert-auto-fields' was called in a buffer.
2930 (mh-insert-auto-fields): Set it and use it. Also, don't enter an
2931 identity if one was already entered manually.
2932 (mh-send-letter): Call `mh-insert-auto-fields' again when sending
2934 (mh-compose-and-send-mail): Call `mh-insert-auto-fields' _after_
2935 `mh-letter-mode' so `mh-identity-local' doesn't get cleared by the
2938 2003-06-01 Satyaki Das <satyakid@stanford.edu>
2940 * mh-loaddefs.el: Regenerated.
2942 * mh-seq.el (mh-thread-parse-scan-line): The value of
2943 mh-scan-field-from-start-offset was hardcoded in one place. The
2946 * mh-utils.el (mh-show-mode): Setup mh-show-mode to display
2947 elipsis for truncated header fields and to skip over them quickly.
2948 (mh-clean-msg-header): Make another pass over the message header
2949 fields truncating long headers.
2951 * mh-comp.el (mh-letter-complete): Remove unnecessary autoload.
2952 (mh-letter-toggle-header-field-display): Take into account that
2953 an empty line can also end the message header. The function was
2954 originally written with the draft buffer in mind.
2956 2003-06-01 Mark D. Baushke <mdb@gnu.org>
2958 * mh-comp.el (mh-letter-mode-map): Do not steal C-t. Use C-c C-t
2959 for the mh-letter-toggle-header-field-display command.
2961 2003-05-31 Peter S Galbraith <psg@debian.org>
2963 * mh-customize.el (mh-visible-headers): Changed to a defvar that
2964 will be set using new `mh-visible-headers' function using
2965 `mh-visible-header-fields' as input.
2966 (mh-visible-headers): New function, described above.
2967 (mh-visible-header-fields): New defcustom. The UI to set
2968 `mh-visible-headers'.
2969 (mh-invisible-header-fields-set): Deleted. Code merged into
2970 defcustom since it's so short.
2972 2003-05-31 Satyaki Das <satyakid@stanford.edu>
2974 * mh-comp.el (mh-letter-toggle-header-field-display): Extended to
2975 truncate headers if they are too long.
2976 (mh-letter-truncate-header-field): Make code that would be
2977 duplicated into a function.
2978 (mh-letter-hide-all-skipped-fields): Modified so that fields that
2979 are important are hidden if they are too long.
2981 2003-05-31 Satyaki Das <satyakid@stanford.edu>
2983 * mh-utils.el ("tool-bar"): Since tool-bar isn't available on
2984 XEmacs, requiring it causes problems. So load it instead.
2985 (mh-do-at-event-location): New macro to do stuff at location of
2986 events. This has been refactored out of mh-push-button.
2988 * mh-mime.el (mh-push-button): Simplified since it now uses the
2989 mh-do-at-event-location macro.
2991 * mh-comp.el (mh-hidden-header-keymap): Keymap to make mouse
2992 clicks on header toggle its display.
2993 (mh-letter-toggle-header-field-display-button): Interactive
2994 function to toggle header display when mouse button is clicked.
2996 2003-05-31 Peter S Galbraith <psg@debian.org>
2998 * mh-e.el (mh-folder-mode): Remove conditional on tool-bar-mode.
3000 * mh-comp.el (mh-letter-mode): Same.
3002 * mh-utils.el (mh-show-mode): Same.
3004 2003-05-30 Satyaki Das <satyakid@stanford.edu>
3006 * mh-utils.el (tool-bar): Load tool-bar explicitly. This avoids
3007 problems with incorrect initialization of tool-bar-map otherwise.
3009 2003-05-30 Peter S Galbraith <psg@mixed.dyndns.org>
3011 * mh-comp.el (mh-modify-header-field): Minor fix of spaces for
3012 when an entry already existed.
3013 (mh-insert-auto-fields): Make interactive. Add optional `quiet'
3014 arg for use when called systematically on every buffer. Won't be
3015 used interactively for more verbose output.
3016 (mh-letter-mode-map): Add \C-c\M-d keybinding for
3017 mh-insert-auto-fields.
3019 * mh-identity.el (mh-identity-make-menu): Add a menu entry in
3020 Identity menu for mh-insert-auto-fields.
3022 * mh-customize.el (mh-invisible-header-fields): Add entries for
3023 `Envelope-to' and `X-Original-To'.
3025 2003-05-30 Satyaki Das <satyakid@stanford.edu>
3027 * mh-comp.el (mh-letter-mode): Skip over invisible text quickly.
3029 2003-05-30 Satyaki Das <satyakid@stanford.edu>
3031 * mh-comp.el (mh-letter-mode): Use text properties to achieve
3032 invisibility. This is more portable and the same code can be used
3033 for all Emacs versions.
3034 (mh-letter-toggle-header-field-display): Rewritten to use text
3036 (mh-dead-overlay-p, mh-letter-hidden-header-fields)): Removed.
3038 2003-05-29 Satyaki Das <satyakid@stanford.edu>
3040 * mh-comp.el (mh-letter-hidden-header-fields, mh-letter-mode): Add
3041 a hash table, initialized it in mh-letter-mode, to remember the
3042 overlays introduced to hide long headers fields.
3043 (mh-insert-x-mailer): checkdoc fix.
3044 (mh-compose-and-send-mail): Hide unimportant message header
3046 (mh-letter-header-field-regexp, mh-letter-header-field-at-point)
3047 (mh-letter-next-header-field, mh-letter-previous-header-field):
3048 Add a variable that contains the header-field name regexp and use
3049 it instead of the regexp directly.
3050 (mh-letter-toggle-header-field-display, mh-letter-mode-map): Add
3051 new key binding in mh-letter-mode that toggles display of long
3052 header fields, in mh-letter-mode.
3053 (mh-dead-overlay-p): A predicate which checks if a given header
3054 field has an active overlay hiding it.
3055 (mh-letter-hide-all-skipped-fields): New function that shortens
3056 uninteresting headers.
3058 2003-05-29 Eric Ding <ericding@acorn.bethesda.net>
3060 * mh-comp.el (mh-letter-next-header-field-or-indent): Call
3061 indent-relative rather than indent-for-tab-command.
3063 2003-05-29 Satyaki Das <satyakid@stanford.edu>
3065 * mh-comp.el (mh-letter-complete-or-space): The meaning of the
3066 customizable variable was reversed. Also make the doc string more
3069 2003-05-28 Satyaki Das <satyakid@stanford.edu>
3071 * mh-customize.el (mh-compose-skipped-header-fields): New
3072 customizable variable that lists headers that are skipped.
3073 (mh-compose-space-does-completion-flag): Option to do completion
3074 with space (closes SF #745634).
3076 * mh-comp.el (mh-insert-x-mailer): Check the value of
3077 mh-insert-x-mailer-flag in this function instead of in its caller.
3078 (mh-compose-and-send-mail, mh-send-letter): Insert X-Mailer and
3079 X-Face headers when the draft is first presented to the user
3080 instead of when the mail is sent (closes SF #745624).
3081 (mh-letter-complete-or-space): Allow for this key binding to be
3083 (mh-letter-next-header-field): Fix a problem with multiline header
3085 (mh-letter-next-header-field, mh-letter-previous-header-field):
3086 Make these functions skip unwanted header fields.
3087 (mh-letter-skipped-header-field-p): New predicate that checks if a
3088 header field is to be skipped.
3090 * mh-seq.el (mh-thread-inc): Inc'ing email in threaded mode was
3091 causing duplication of the current notation. The change fixes that.
3093 2003-05-28 Satyaki Das <satyakid@stanford.edu>
3095 * mh-comp.el (mh-beginning-of-word): Generalize it to skip
3096 arbitrary number of words.
3097 (mh-letter-complete-or-space): New interactive function that
3098 allows space character to be used for completion.
3099 (mh-letter-mode-map): Add key binding to allow space to be used
3102 2003-05-27 Satyaki Das <satyakid@stanford.edu>
3104 * mh-customize.el (mh-compose-prompt-flag): Customizable variable
3105 that controls whether the user is prompted when composing a draft.
3106 It replaces mh-dont-prompt-for-address-flag (closes SF #745622).
3108 * mh-comp.el (mh-letter-next-header-field): If the point is in
3109 the header field name, then go the start of the header field
3110 instead of the next field.
3111 (mh-interactive-read-address, mh-interactive-read-string)
3112 (mh-letter-adjust-point): Use mh-compose-prompt-flag instead of
3113 mh-dont-prompt-for-address-flag.
3115 2003-05-27 Satyaki Das <satyakid@stanford.edu>
3117 * mh-customize.el (mh-tool-bar-define): Fix incorrect usage of
3118 set-specifier (closes SF #745655). Also the button enabling code
3119 interacts poorly with font-lock in XEmacs. So disable that.
3121 2003-05-26 Satyaki Das <satyakid@stanford.edu>
3123 * mh-e.el (mh-folder-from-address): The function
3124 message-fetch-field expects that the buffer is narrowed to the
3125 mail header. The change makes sure that this is indeed the case.
3127 * mh-mime.el (mh-add-missing-mime-version-header)
3128 (mh-decode-message-body): Same as above.
3130 2003-05-25 Satyaki Das <satyakid@stanford.edu>
3132 * mh-alias.el (mh-alias-minibuffer-confirm-address): Modified to
3133 use mh-beginning-of-word.
3135 * mh-comp.el (mh-letter-confirm-address): Calling
3136 mh-alias-reload-maybe can be expensive. So do it only if we really
3139 2003-05-25 Satyaki Das <satyakid@stanford.edu>
3141 * mh-loaddefs.el: Regenerated.
3143 * mh-comp.el (mh-letter-confirm-address): Load aliases if not yet
3146 * mh-alias.el (mh-alias-reload-maybe): Autoload it since it is
3149 2003-05-24 Satyaki Das <satyakid@stanford.edu>
3151 * mh-comp.el (mh-letter-skip-leading-whitespace-in-header-field):
3152 New function to skip leading space and tab characters when placing
3153 point in a header field.
3154 (mh-letter-next-header-field, mh-letter-previous-header-field):
3155 Skip leading whitespace when using TAB to navigate to header
3157 (mh-letter-confirm-address): New interactive function that
3158 displays the last expansion of the last alias when "," is typed.
3159 (mh-letter-mode-map): Add key binding for "," (closes SF #745634).
3161 2003-05-23 Satyaki Das <satyakid@stanford.edu>
3163 * mh-comp.el (mh-edit-again, mh-forward, mh-send)
3164 (mh-send-other-window, mh-send-sub): Modified so that if
3165 mh-dont-prompt-for-address-flag is non-nil, then MH-E won't prompt
3166 for addresses to send mail to and instead directly jump to the
3167 draft (closes SF #745622).
3168 (mh-letter-complete-function-alist): An alist that is used to
3169 decide which completion function to use in which header. This
3170 variable should probably be customizable.
3171 (mh-letter-complete): Now uses mh-letter-complete-function-alist.
3172 (mh-letter-header-field-at-point, mh-letter-next-header-field)
3173 (mh-letter-next-header-field-or-indent)
3174 (mh-letter-previous-header-field): Commands for easier navigation
3176 (mh-dont-prompt-for-address-flag): Variable which controls
3177 whether MH-E prompts for addresses.
3178 (mh-interactive-read-address, mh-interactive-read-string): Two
3179 functions to ask user for input depending on the value of the
3181 (mh-letter-adjust-point): New function that sets point to the
3183 (mh-letter-mode-map): Add key bindings for TAB and S-TAB (closes
3186 2003-05-23 Satyaki Das <satyakid@stanford.edu>
3188 * mh-loaddefs.el: Regenerated.
3190 * mh-comp.el (mh-complete-word): New function which is
3191 approximately equivalent to mail-abbrev-complete-alias.
3192 (mh-beginning-of-word): Refactor repeated code into its own
3194 (mh-folder-expand-at-point): Make Fcc completion work in XEmacs
3195 by not using mail-abbrev-complete-alias.
3197 * mh-alias.el (mh-alias-letter-expand-alias): Make alias
3198 expansion work in XEmacs. Replace the use of the function
3199 mail-abbrev-complete-alias, which isn't present in XEmacs.
3201 * mh-mime.el (mh-mml-to-mime): If a MIME message is created
3202 immediately after starting MH-E then invoking mh-mml-to-mime
3203 causes an error because "message" isn't being loaded. The change
3204 works around this problem.
3205 (mh-mime-maybe-display-alternatives): Give better indication of
3206 which MIME parts are alternatives.
3208 2003-05-22 Satyaki Das <satyakid@stanford.edu>
3210 * mh-e.el (mh-add-sequence-notation, mh-remove-sequence-notation):
3211 Just delete and add the same character in the scan line to make
3212 font-lock refontify it. The previous trick of removing all text
3213 properties didn't work in XEmacs.
3215 * mh-seq.el (mh-put-msg-in-seq): Complain if the user tries to
3216 create an invalid MH sequence.
3218 * mh-mime.el (mh-mime-display-alternative): Modified to
3219 optionally display alternatives as buttons.
3220 (mh-mime-maybe-display-alternatives): New function which displays
3221 alternative MIME parts as buttons.
3222 (mh-mime-save-part): Initially mh-mime-save-parts-directory is
3223 nil and calling file-name-as-directory with nil arg leads to an
3224 error. So fall back on the default-directory in that case.
3226 * mh-customize.el (mh-display-buttons-for-alternatives-flag): New
3227 customizable variable that controls display of the alternative
3228 MIME parts (closes SF #741288).
3230 2003-05-22 Peter S Galbraith <psg@debian.org>
3232 * mh-customize.el (mh-invisible-header-fields): Commented out
3233 "User-Agent:". It's similar to X-Mailer, so display it.
3235 2003-05-21 Satyaki Das <satyakid@stanford.edu>
3237 * mh-customize.el (mh-tool-bar-define): Add an optional argument
3238 to the button description that can dynamically enable/disable
3240 (mh-tool-bar-define): The alias grabbing button is disabled if the
3241 current message doesn't have a From header or if the sender is
3242 already in the user's alias. This functionality was inadvertently
3243 lost when the Emacs/XEmacs toolbar unification took place.
3245 2003-05-20 Satyaki Das <satyakid@stanford.edu>
3247 * mh-unit.el (mh-unit-construct-call-graph): Be more aggressive
3248 and flag interactive functions that aren't autoloaded or have no
3250 (mh-unit-interactive-function-p): Remove now unused function.
3251 (mh-unit, mh-unit-construct-call-graph): Replace mh-files with
3254 2003-05-20 Bill Wohler <wohler@newt.com>
3256 * mh-unit.el (mh-prune-trailing-spaces): Renamed to
3257 mh-unit-prune-trailing-spaces to clean up the namespace.
3258 (mh-files): Renamed to mh-unit-files. Ditto.
3259 (mh-unit): Checkdoc fix.
3261 * mh-index.el (mh-index-p): Added autoload cookie since mh-index-p
3262 is used by mh-customize.el. This calls for another mh-unit test
3263 that looks for mh-autoloads for functions that are no longer used
3266 * mh-loaddefs.el: Regenerated.
3268 2003-05-20 Satyaki Das <satyakid@stanford.edu>
3270 * mh-unit.el (mh-unit-construct-call-graph): Factor out the code
3271 to read the lisp files to a separate function. Also change it to
3272 construct a function call-graph. Autoloaded functions are taken
3274 (mh-unit-find-all-used-functions, mh-unit-called-functions)
3275 (mh-unit-find-all-unused-functions): Find all unused functions by
3276 computing a fixed point starting from the set of top level
3278 (mh-unit-analyze-block): Removed.
3279 (mh-unit-update-call-graph): mh-unit-functions-called was renamed
3280 with modifications to update the function call graph.
3282 2003-05-19 Satyaki Das <satyakid@stanford.edu>
3284 * mh-loaddefs.el: Regenerated.
3286 * mh-utils.el (mh-notate): Modified to keep track of notation
3287 that was replaced when sequence notation is added. Thus when the
3288 sequence is deleted, the original notation is recovered.
3289 (mh-add-msgs-to-seq): Modified to work with the new sequence
3292 * mh-seq.el (mh-delete-seq, mh-put-msg-in-seq): Simplified since
3293 we don't need to handle tick and unseen sequences specially any
3295 (mh-narrow-to-seq): Don't need to call mh-notate-user-sequences
3296 since mh-copy-seq-to-eob already does that.
3297 (mh-widen): Remove sequence notation, so that notation when
3298 messages are replied to aren't lost.
3299 (mh-copy-seq-to-eob): Simplified with the use of
3300 mh-iterate-on-range.
3301 (mh-thread-inc): This function doesn't need to notate user
3302 sequences since its callers already do that.
3303 (mh-thread-parse-scan-line): Simplified since mh-note-seq doesn't
3304 appear in scan lines it is given as arguments.
3305 (mh-thread-update-scan-line-map): Remove the test, since its
3306 caller already does the required check.
3307 (mh-thread-folder): Simplified by the use of mh-iterate-on-range.
3308 (mh-tick-add-overlay, mh-tick-remove-overlay, mh-notate-tick):
3309 These functions aren't needed any more, since overlays aren't used
3310 any more. Also overlays aren't portable to XEmacs, so nasty
3311 conditional code that used overlays in Emacs and extents in XEmacs
3312 have been eliminated.
3313 (mh-toggle-tick): Generalize it to work on a range of messages
3314 like the other interactive messages.
3316 * mh-funcs.el (mh-undo-folder): Use mh-remove-all-notation
3317 instead of mh-unmark-all-headers.
3319 * mh-e.el (mh-folder-font-lock-keywords): The entry for unseen
3320 sequence highlighting is now done by the macro.
3321 (mh-generate-sequence-font-lock): New macro to highlight any
3322 arbitrary sequence. This macro is invoked twice to get the
3323 highlighting for unseen and tick sequences.
3324 (mh-sequence-notation-history, mh-folder-mode): New variable that
3325 keeps track of the old notation when a message is notated with
3327 (mh-regenerate-headers, mh-get-new-mail): Add appropriate calls to
3328 mh-notate-user-sequences and mh-remove-all-notation.
3329 (mh-unmark-all-headers): Add comment that this function shouldn't
3331 (mh-add-sequence-notation, mh-remove-sequence-notation): New
3332 functions to notate message with mh-note-seq and to remove it.
3333 (mh-remove-all-notation): Simplified to use mh-iterate-on-range.
3334 (mh-process-commands): Use mh-remove-all-notation instead of
3335 mh-unmark-all-headers.
3336 (mh-notate-user-sequences, mh-delete-msg-from-seq): Simplified
3337 since the tick and unseen sequences don't need special handling
3339 (mh-internal-seq): Make it possible to dynamically change what
3340 sequences are treated as internal (internal means font lock is
3341 used to highlight the sequence).
3342 (mh-clear-text-properties): Removed since it isn't needed
3345 2003-05-19 Satyaki Das <satyakid@stanford.edu>
3347 * mh-unit.el (mh-unit-analyze-block, mh-unit-interactive-function-p)
3348 (mh-unit-find-all-unused-functions): Change argument name bl to
3351 2003-05-19 Satyaki Das <satyakid@stanford.edu>
3353 * mh-unit.el (mh-unit-find-all-unused-functions): New interactive
3354 function to find all unused functions in MH-E.
3355 (mh-unit-analyze-block, mh-unit-interactive-function-p)
3356 (mh-unit-functions-called): Functions used by
3357 mh-unit-find-all-unused-functions do its job.
3359 * Makefile (compile): Byte-compile mh-unit.el, since the analysis
3360 to find unused code runs faster when compiled.
3362 2003-05-18 Satyaki Das <satyakid@stanford.edu>
3364 * mh-loaddefs.el: Regenerated.
3366 * mh-seq.el (mh-notate-deleted-and-refiled): Add autoload
3367 declaration since this function is used in mh-index.el.
3369 * mh-e.el, mh-customize.el, mh-utils.el: Adjust require/provide
3370 statements so that mh-e.el isn't loaded twice.
3372 2003-05-15 Satyaki Das <satyakid@stanford.edu>
3374 * mh-utils.el (mh-defun-show-buffer): Arrange for the current
3375 line in the folder buffer to be highlighted even when we are in
3378 2003-05-14 Satyaki Das <satyakid@stanford.edu>
3380 * mh-seq.el (mh-read-range): Allow this to work on invalid
3381 sequences that only MH-E knows about.
3383 * mh-index.el (mh-create-sequence-map, mh-index-add-to-sequence)
3384 (mh-index-delete-from-sequence): Don't consider sequences that
3385 aren't valid MH sequences.
3387 * mh-e.el (mh-valid-seq-p): New predicate to check if a symbol
3388 could be a MH sequence.
3389 (mh-undefine-sequence, mh-define-sequence): Don't execute "mark"
3390 unless the sequence name is a valid MH sequence.
3392 * mh-utils.el (mh-exec-cmd): In case an error happens in the
3393 call-process and non-strings are present in ARGS, then the error
3394 message isn't properly displayed. The change fixes this.
3396 2003-05-14 Peter S Galbraith <psg@debian.org>
3398 * mh-mime.el (mh-mime-save-part): Bug Fix: Make sure
3399 `mm-default-directory' gets a trailing "/" if
3400 `mh-mime-save-parts-directory' doesn't have one. Otherwise the
3401 default in the prompt of `mh-mm-save-part' will be wrong. Perhaps
3402 `mh-mm-save-part' needs to do this check itself.
3404 2003-05-14 Satyaki Das <satyakid@stanford.edu>
3406 * mh-index.el (mh-unpropagated-sequences): New function and
3407 variable to keep track of sequences that shouldn't be propagated.
3408 (mh-create-sequence-map, mh-index-add-to-sequence)
3409 (mh-index-delete-from-sequence): Use mh-unpropagated-sequences to
3410 stop changes to some sequences being reflected back to the source
3413 2003-05-13 Satyaki Das <satyakid@stanford.edu>
3415 * mh-loaddefs.el: Regenerated.
3417 * mh-e.el (mh-process-commands): Preserve sequences when messages
3418 are refiled (closes SF #737128).
3420 * mh-index.el (mh-create-sequence-map)
3421 (mh-index-create-sequences): Refactor code that is reused into a
3424 * mh-customize.el (mh-refile-preserves-sequences-flag): New
3425 customizable flag that controls whether sequences are preserved
3426 when messages are refiled.
3428 2003-05-13 Eric Ding <ericding@alum.mit.edu>
3430 * mh-e.el (mh-scan-format): The argument for scan format files
3431 should be -form, not -format.
3433 2003-05-13 Satyaki Das <satyakid@stanford.edu>
3435 * mh-seq.el (mh-widen): The scan line map stack was not being
3436 properly updated when ALL-FLAG is non-nil. The change fixes that.
3438 * mh-e.el (mh-reset-threads-and-narrowing): The change resets the
3439 scan line map stack.
3441 2003-05-12 Satyaki Das <satyakid@stanford.edu>
3443 * mh-loaddefs.el: Regenerated.
3445 * mh-seq.el (mh-thread-scan-line-map-stack)
3446 (mh-thread-old-scan-line-map): Instead of the old scan line map,
3447 now we need to maintain a stack of scan line maps.
3448 (mh-narrow-to-seq): Modified so that multiple level of narrowings
3449 can be done. We now maintain a stack of old views instead of
3450 hiding the old scan lines. This makes it possible to have
3451 multiple levels of narrowings.
3452 (mh-widen): A optional prefix arg was added to allow undoing all
3454 (mh-read-seq-default, mh-read-range): Don't use
3455 mh-narrowed-to-seq, since it doesn't exist any more.
3456 (mh-thread-initialize-hash, mh-thread-initialize): The
3457 mh-thread-initialize function has been refactored.
3458 (mh-thread-update-scan-line-map): Maintain notations in the stack
3460 (mh-notate-tick, mh-toggle-tick): Simplified, since we don't have
3461 mh-narrowed-to-seq any more. This means there is a slight loss of
3462 functionality. Earlier if we narrowed to the tick sequence the
3463 ticked messages weren't highlighted. This feature isn't present
3466 * mh-e.el (mh-execute-commands, mh-reset-threads-and-narrowing)
3467 (mh-folder-sequence-menu, mh-get-new-mail): Use
3468 mh-folder-view-stack instead of the now removed
3470 (mh-narrowed-to-seq, mh-tick-seq-changed-when-narrowed-flag):
3471 These variables have been removed.
3472 (mh-folder-view-stack): New variable to keep track of a stack of
3474 (mh-execute-commands, mh-get-new-mail): Add extra argument to
3475 mh-widen so that all narrowings are undone.
3477 * Makefile (MH-E-SRC, MH-E-OTHERS): Move mh-gnus.el from MH-E-SRC
3478 to MH-E-OTHERS so that it isn't byte compiled.
3480 2003-05-10 Satyaki Das <satyakid@stanford.edu>
3482 * mh-seq.el (mh-read-seq): Improve the function a bit by adding
3483 history to the sequence prompt.
3485 2003-05-09 Satyaki Das <satyakid@stanford.edu>
3487 * mh-gnus.el: New file that won't be byte-compiled. From now on
3488 having different Gnus versions at run-time and compile-time won't
3489 cause errors in MH-E.
3491 * mh-mime.el (mh-small-show-buffer-p, mh-display-smileys)
3492 (mh-display-emphasis): Handle all legal values of
3493 font-lock-maximum-size. The existing code assumed didn't consider
3494 the case where it could be an alist.
3495 (mh-small-image-p): Simplified, so that aliasing XEmacs functions
3496 in Emacs isn't necessary any more.
3497 (mh-mm-display-part): Remove unnecessary call to fboundp. The
3498 mh-funcall-if-exists does that for us any way.
3499 (mh-defun-compat, gnus-local-map-property, mm-merge-handles)
3500 (mm-set-handle-multipart-parameter, mm-readable-p)
3501 (mm-long-lines-p, mm-keep-viewer-alive-p, mm-destroy-parts)
3502 (mh-mm-save-part, mm-handle-multipart-ctl-parameter): These
3503 compatibility functions have been moved to mh-gnus.el.
3505 * Makefile (MH-E-SRC): Add mh-gnus.el.
3507 * mh-seq.el (mh-narrow-to-header-field)
3508 (mh-current-message-header-field): Checkdoc fixes.
3510 * mh-e.el (mh-undefine-sequence): Since mh-coalesce-msg-list
3511 returns a list, apply is needed.
3513 2003-05-09 Noel Cragg <noel@red-bean.com> (tiny change)
3515 * mh-junk.el (mh-spamassassin-blacklist): Separate "--local" and
3516 "--no-rebuild" arguments to call-process.
3517 [Patch committed by satyaki]
3519 2003-05-08 Satyaki Das <satyakid@stanford.edu>
3521 * mh-seq.el (mh-translate-range): Take into account different
3522 semantics of split-string in Emacs and XEmacs.
3523 (mh-read-pick-regexp, mh-narrow-to-from, mh-narrow-to-cc)
3524 (mh-narrow-to-to, mh-narrow-to-header-field)
3525 (mh-current-message-header-field, mh-narrow-to-range): New
3526 narrowing functions that can select messages based on different
3529 * mh-utils.el (mh-show-limit-map): Add new narrowing functions
3530 callable from the show buffer.
3532 * mh-e.el (mh-help-messages): Add help text for new functions.
3533 (mh-limit-map): Add new narrowing functions (closes SF #732823).
3535 2003-05-07 Satyaki Das <satyakid@stanford.edu>
3537 * mh-utils.el (mh-collect-folder-names): Use mh-exec-daemon to
3538 run flists. This means we don't have to remember to expand the MH
3539 executable in the mh-progs path.
3540 (mh-exec-cmd-daemon): Return the new process object produced.
3542 2003-05-06 Satyaki Das <satyakid@stanford.edu>
3544 * mh-e.el (mh-folder-font-lock-unseen): Use mh-seq-list to do
3545 unseen sequence highlighting instead of reading the .mh_sequences
3546 file from disk every time.
3548 2003-05-05 Satyaki Das <satyakid@stanford.edu>
3550 * mh-utils.el (mh-show-sequence-map): Add key binding for S'
3551 (closes SF #732825).
3553 * mh-e.el (mh-sequence-map): Ditto.
3554 (mh-help-messages): Updated for S'.
3556 2003-05-04 Satyaki Das <satyakid@stanford.edu>
3558 * mh-index.el (mh-index-write-data): The with-temp-buffer macro
3559 is a bit better than write-file, so use that instead.
3561 2003-05-03 Satyaki Das <satyakid@stanford.edu>
3563 * mh-index.el (mh-index-update-maps, mh-index-search)
3564 (mh-index-sequenced-messages): Write index data to disk. This
3565 allows us to recover index folder information if Emacs is
3566 restarted, or the index folder is visited after the buffer has
3567 been killed (closes SF #701762).
3568 (mh-index-write-data, mh-index-read-data)
3569 (mh-index-write-hashtable, mh-index-read-hashtable): Functions to
3570 store and read index data information to disk.
3571 (mh-index-insert-folder-headers, mh-index-group-by-folder): We
3572 can no longer use object identity to compare strings, since they
3573 might have been read back from disk.
3575 * mh-e.el (mh-index-data-file): New variable that stores the name
3576 of the file that keeps track of index folder data.
3577 (mh-make-folder): Read index folder data if available.
3579 * mh-utils.el (mh-show, mh-summary-height, mh-modify): Make
3582 * mh-seq.el (mh-tick-add-overlay): Rearrange code to make code
3585 * mh-loaddefs.el: Regenerated.
3587 2003-05-02 Satyaki Das <satyakid@stanford.edu>
3589 * mh-seq.el (mh-tick-add-overlay): If a message with a short scan
3590 line is ticked, then the highlighting didn't extend to the right
3591 margin. This change fixes that.
3593 2003-05-01 Bill Wohler <wohler@newt.com>
3595 * mh-e.el (mh-help-messages): Added brackets around / and
3596 downcased limit to be consistent with other commands with
3597 punctuation keybindings. Don't document aliases.
3599 2003-05-01 Satyaki Das <satyakid@stanford.edu>
3601 * mh-loaddefs.el: Regenerated.
3603 * mh-seq.el (mh-read-range): Fix comment.
3605 2003-04-30 Mark D. Baushke <mdb@gnu.org>
3607 * mh-e.el (mh-help-messages): Better documentation for the F map.
3609 2003-04-30 Satyaki Das <satyakid@stanford.edu>
3611 * mh-utils.el (mh-find-path): Cache folder names so that
3612 folder name completion is always fast.
3613 (mh-flists-partial-line, mh-flists-process): Variables used for
3614 pre-caching folder names.
3615 (mh-collect-folder-names, mh-collect-folder-names-filter)
3616 (mh-populate-sub-folders-cache): Functions to pre-cache folder
3618 (mh-exec-cmd): Produce more info in *MH-E Log*.
3620 * mh-index.el (mh-index-search): Call the correct function.
3621 (mh-index-sequenced-messages): If folders is nil, then all mail
3622 is searched. The change restores that.
3624 2003-04-30 Peter S Galbraith <psg@debian.org>
3626 * mh-customize.el (mh-summary-height): Move variable integer out
3627 of defcustom, and instead specify that `nil' means to calculate
3628 that size dynamically. Fixes SF #723267.
3630 * mh-utils.el (mh-summary-height): New function. Return ideal
3631 mh-summary-height value for current frame height.
3632 (mh-show-msg): Use it.
3634 2003-04-30 Mark D. Baushke <mdb@gnu.org>
3636 * mh-index.el (mh-index-ticked-messages): Fix prompt and
3638 (mh-index-new-messages): Ditto.
3640 * mh-loaddefs.el: Regenerated.
3642 * mh-index.el (mh-index-sequenced-messages): Renamed from
3643 mh-index-new-messages with minor argument change.
3644 (mh-index-new-messages): Implement by calling
3645 mh-index-sequenced-messages with the appropriate arguments.
3646 (mh-index-ticked-messages): New function. Does the same thing as
3647 mh-index-new-messages, but on its own set of folders and using the
3648 mh-tick-seq instead of mh-unseen-seq.
3650 * mh-e.el (mh-folder-map): Add "F'" to the map for
3651 mh-index-ticked-messages.
3652 (mh-help-messages): Replace broken [t]hread with [n]ew messages.
3654 * mh-customize.el (mh-index-ticked-messages-folders): New user
3655 customizable flag that controls the folders to be searched by
3656 mh-index-ticked-messages.
3658 * mh-utils.el (mh-show-index-ticked-messages): Wrapper for
3659 mh-index-ticked-messages.
3660 (mh-show-folder-map): Add "F'" to the map for
3661 mh-index-ticked-messages.
3663 2003-04-30 Satyaki Das <satyakid@stanford.edu>
3665 * mh-index.el (mh-index-search): The old cur in the source folder
3666 might not exist. This could cause mh-exec-cmd to fail. So don't
3667 add an error message in that case.
3669 2003-04-29 Satyaki Das <satyakid@stanford.edu>
3671 * mh-e.el (mh-folder-from-address): Modified to allow multiple
3672 Cc: headers to work properly.
3673 (mh-inc-folder, mh-visit-folder): Fix an off by one error.
3675 * mh-utils.el (mh-notate): Update the scan line map. This fixes a
3676 tiny bug. In threaded view, if a message is replied to then the
3677 message is notated with a "-". Now if inc is done then the "-"
3678 added is lost. The change fixes this.
3680 * mh-seq.el (mh-translate-range): Use the correct function.
3681 (mh-thread-update-scan-line-map): New function that updates the
3682 scan line map when a message is notated.
3684 2003-04-28 Satyaki Das <satyakid@stanford.edu>
3686 * mh-index.el (mh-index-parse-search-regexp): Avoid compiler
3687 warning in GNU Emacs 21.3.
3689 * mh-seq.el (mh-widen): Ditto.
3691 2003-04-28 Satyaki Das <satyakid@stanford.edu>
3693 * mh-customize.el (mh-interpret-number-as-range-flag): New user
3694 customizable flag that controls whether a single number, N is
3695 interpreted as the range last:N.
3697 * mh-seq.el (mh-read-range): Generalize it for use when reading
3699 (mh-interactive-range): Modified to use the new mh-read-range.
3701 * mh-speed.el (mh-speed-view): Use mh-read-range instead of the
3702 now removed mh-read-msg-range function.
3704 * mh-funcs.el (mh-pack-folder): Ditto.
3706 * mh-e.el (mh-rescan-folder, mh-visit-folder): Ditto.
3707 (mh-read-msg-range): Removed.
3709 * mh-loaddefs.el: Regenerated
3711 2003-04-27 Satyaki Das <satyakid@stanford.edu>
3713 * mh-loaddefs.el: Regenerated.
3715 * mh-seq.el (mh-range-completion-function): Fix checkdoc warning.
3716 (mh-iterate-on-range): Mention that the macro can iterate over a
3717 MH message range too.
3719 2003-04-27 Bill Wohler <wohler@newt.com>
3721 * mh-unit.el (mh-unit): As it turns out, lm-crack-copyright has
3722 been updated to handle multiple-line copyrights in 21.3, so
3723 updated code to run lm-verify only if user has 21.3 or greater.
3724 Delete buffers after use, unless user already had buffer open.
3726 2003-04-27 Satyaki Das <satyakid@stanford.edu>
3728 * mh-loaddefs.el: Regenerated.
3730 * mh-index.el (mh-index-search): The MH command "refile" changes
3731 cur. The change restores cur in source folders.
3732 (mh-index-new-messages): Use the appropriate arguments for
3735 * mh-seq.el (mh-read-seq-default, mh-read-seq): Restore these
3736 functions to just read sequence names.
3737 (mh-range-seq-names, mh-range-history, mh-range-completion-map)
3738 (mh-range-completion-function, mh-read-range): New function which
3739 reads MH range with completion and history.
3740 (mh-interactive-range): Use mh-read-range instead of
3741 mh-read-seq-default.
3742 (mh-put-msg-in-seq): Change documentation about MH message range.
3744 * mh-junk.el (mh-junk-blacklist, mh-junk-whitelist): Change
3745 documentation about MH message range.
3747 * mh-funcs.el (mh-copy-msg, mh-print-msg): Ditto.
3749 * mh-e.el (mh-delete-msg, mh-delete-msg-no-motion)
3750 (mh-refile-msg, mh-undo, mh-delete-msg-from-seq): Ditto.
3752 * mh-comp.el (mh-forward): Ditto.
3754 2003-04-26 Satyaki Das <satyakid@stanford.edu>
3756 * mh-comp.el, mh-e.el, mh-funcs.el, mh-junk.el, mh-seq.el:
3757 Replace msg-or-seq with range everywhere.
3759 * mh-loaddefs.el: Regenerated.
3761 2003-04-25 Satyaki Das <satyakid@stanford.edu>
3763 * mh-e.el (mh-index-sequence-search-flag, mh-folder-mode): New
3764 local variable to remember that a folder buffer contains results
3765 from a sequence search. This is needed so that "C-u F i" will work
3767 (mh-visit-folder): Create sequences in the index folder.
3768 (mh-process-commands, mh-delete-msg-from-seq): If speedbar is on
3769 then update the speedbar message counts immediately.
3770 (mh-delete-msg-from-seq): Make the code faster by calling "mark"
3771 just once. Also update source folder sequence if messages are
3772 being deleted from a sequence in an index folder.
3773 (mh-undefine-sequence): Simplified to remove the speedbar updating
3774 code. Also DTRT and don't change any sequence when called with an
3775 empty list of messages.
3776 (mh-refile-msg, mh-delete-msg): Move to next message only if the
3777 current message has been deleted or refiled, as the case may be.
3779 * mh-utils.el (mh-show-msg): Update the message counts in the
3780 speedbar, if it is on, immediately.
3781 (mh-speed-flists-active-p, mh-speed-flists-inhibit-flag): A new
3782 flag has been added which inhibits updating of the speedbar. This
3783 is used to avoid needless speedbar updates when
3784 mh-execute-commands is called in index folders.
3786 * mh-speed.el (mh-speed-flists): Extended so that multiple
3787 folders can be given as arguments. Also the code that kept track
3788 of the current folder, needed since flists adds an extra ?+ char
3789 at the end of the current folder name, wasn't entirely correct.
3790 That has also been fixed.
3792 * mh-seq.el (mh-delete-seq, mh-put-msg-in-seq): Modified so that
3793 sequence in source folder is updated if we delete a sequence in an
3795 (mh-read-seq, mh-read-seq-default, mh-translate-range)
3796 (mh-interactive-msg-or-seq): The mh-interactive-msg-or-seq
3797 function can read in an arbitrary MH message range.
3798 (mh-iterate-on-msg-or-seq): The macro has been extended to work on
3800 (mh-subject-to-sequence, mh-subject-to-sequence-unthreaded)
3801 (mh-subject-to-sequence-threaded, mh-thread-find-msg-subject): Fix
3802 the mh-subject-to-sequence function so that it will work in
3803 threaded folders too.
3804 (mh-tick-add-overlay): Fix a leak of overlays.
3805 (mh-toggle-tick): Ticking, or unticking, messages in the index
3806 folder is propagated to the source folders (closes SF #709664).
3808 * mh-index.el (mh-flists-results-folder, mh-flists-sequence)
3809 (mh-flists-called-flag): New variables to implement searching for
3810 arbitrary sequences.
3811 (mh-index-generate-pretty-name): Updated so that folder names are
3812 generated for flists search that can take any sequence name.
3813 (mh-index-search): Since sequences are now properly maintained the
3814 unseen-flag argument isn't needed and hence removed. Also redoing
3815 a sequence search with "C-u F i" is handled correctly. Finally
3816 the speedbar is updated to reflect the new index folder created.
3817 (mh-index-create-sequences): New function that creates sequences
3818 in the index folder.
3819 (mh-index-matching-source-msgs, mh-index-execute-commands):
3820 Improved so that scan lines for refiled/deleted messages are
3821 removed from the source folders as well.
3822 (mh-index-add-to-sequence, mh-index-delete-from-sequence): New
3823 functions to update sequences in source folder to reflect changes
3825 (mh-index-quote-for-shell): A utility function to that quotes
3826 characters with special meaning to /bin/sh.
3827 (mh-flists-execute, mh-index-new-messages): Updated to search for
3828 arbitrary sequences (closes SF #718833).
3830 * mh-loaddefs.el: Regenerated.
3832 2003-04-25 Bill Wohler <wohler@newt.com>
3834 * mh-customize.el (mh-kill-folder-suppress-prompt-hook): New hook
3835 used by mh-kill-folder to suppress the prompt.
3837 * mh-funcs.el (mh-kill-folder): Suppress prompt not if
3838 mh-index-data is non-nil, but if any functions in
3839 mh-kill-folder-suppress-prompt-hook return non-nil.
3841 * mh-index.el (mh-index-p): New function with returns non-nil if
3842 the current folder was generated by an index search for use by
3843 mh-kill-folder-suppress-prompt-hook
3845 * mh-unit.el (mh-unit): Commented out lm-verify step until code
3846 updated to handle split Copyright lines.
3848 * mh-e.el (mh-version): Set to 7.3+cvs.
3850 2003-04-24 Bill Wohler <wohler@newt.com>
3852 Released MH-E version 7.3.
3854 * MH-E-NEWS, README: Updated for release 7.3.
3856 * mh-e.el (Version, mh-version): Updated for release 7.3.
3858 2003-04-24 Satyaki Das <satyakid@stanford.edu>
3860 * mh-xemacs-compat.el (mh-utils): Require mh-utils at compile
3861 time, since the mh-do-in-xemacs macro is used.
3863 * mh-inc.el (cl): Require cl at compile time since we are using
3864 the loop and setf macros.
3866 2003-04-24 Satyaki Das <satyakid@stanford.edu>
3868 * mh-unit.el (mh-files): Fix the list of files to check.
3870 2003-04-24 Bill Wohler <wohler@newt.com>
3872 * ChangeLog: Appended copyright to end of file.
3874 * Makefile: Added copyright and license.
3876 * README: Added copyright.
3878 * import-emacs: Changed copyright from Newt Software to Bill
3879 Wohler and use license from mh-e.el, except that this file is
3880 a part of MH-E, not GNU Emacs.
3882 * mh-alias.el: Updated copyright so that it doesn't wrap upon
3883 advice from Richard Stallman who said to use two-digit years when
3884 they are surrounded by 4-digit years that are in the same century
3885 and to break up copyrights on multiple lines.
3886 * mh-comp.el: Ditto.
3888 * mh-funcs.el: Ditto.
3889 * mh-identity.el: Ditto.
3890 * mh-mime.el: Ditto.
3892 * mh-utils.el: Ditto.
3893 * mh-xemacs-compat.el: Ditto.
3895 * mh-unit.el: New file. Unit tests for MH-E. This version merely
3896 runs checkdoc and lm-verify which is useful before releasing the
3897 software. It can and should be expanded to do real unit tests.
3899 2003-04-22 Mark D. Baushke <mdb@gnu.org>
3901 * mh-alias.el: Update Copyright.
3902 * mh-comp.el: Ditto.
3903 * mh-customize.el: Ditto.
3905 * mh-funcs.el: Ditto.
3906 * mh-identity.el: Ditto.
3907 * mh-index.el: Ditto.
3908 * mh-mime.el: Ditto.
3909 * mh-pick.el: Ditto.
3911 * mh-speed.el: Ditto.
3912 * mh-utils.el: Ditto.
3913 * mh-xemacs-compat.el: Ditto.
3915 2003-04-22 Satyaki Das <satyaki@theforce.stanford.edu>
3917 * mh-utils.el (mh-normalize-folder-name): Make the completion
3918 code work properly with XEmacs. This change is neeeded since
3919 split-string behaves differently in XEmacs than it does in GNU
3921 (mh-exec-cmd-error): Add a comment, so that we change it later on.
3923 2003-04-18 Steve Youngs <youngs@xemacs.org>
3925 * mh-xemacs-icons.el (mh-xemacs-icons): Provide 'mh-xemacs-icons'
3926 not 'mh-xemacs-toolbar'.
3928 * mh-xemacs-compat.el (mh-xemacs-toolbar): Remove require, it's
3929 now called 'mh-xemacs-icons' and it is required from
3932 * mh-customize.el: Require 'mh-xemacs-icons' instead of
3933 'mh-xemacs-toolbar'.
3935 2003-04-17 Peter S Galbraith <psg@debian.org>
3937 * mh-xemacs-icons.el: New file (renamed from mh-xemacs-toolbar.el).
3940 * mh-xemacs-toolbar.el: Deleted.
3942 * Makefile: Incorporate the file renaming.
3944 2003-04-15 Bill Wohler <wohler@newt.com>
3946 * mh-comp.el (mh-forward): Pass a list of messages into
3947 mh-compose-and-send-mail instead of msg-or-seq.
3948 (mh-annotate-msg): The previous version called
3949 mh-iterate-on-msg-or-seq in the letter buffer. The new version
3950 simply adds the ability to operate on message lists. Thanks to
3951 Satyaki for the fix and suggestion for passing a list from
3954 2003-04-14 Bill Wohler <wohler@newt.com>
3956 * mh-comp.el (mh-annotate-msg): Updated to handle msg-or-seq for
3957 mh-forward was passing a msg-or-seq to mh-compose-and-send-mail
3958 which in turn passed the msg-or-seq to mh-annotate-msg. In
3959 particular, forwarding a region failed. Note that the msgs
3960 argument in much of mh-comp.el should really be converted to
3961 msg-or-seq accordingly. But not now, unless something is broken as
3962 was the case here. We can revamp after the release.
3964 2003-04-13 Bill Wohler <wohler@newt.com>
3966 * mh-funcs.el (mh-kill-folder): Added space after prompt to give
3967 the (yes or no) bit a little elbow room.
3969 * mh-xemacs-toolbar.el: Removing a copyright is a no-no.
3970 Reinstated Steve's copyright.
3972 2003-04-12 Satyaki Das <satyaki@theforce.stanford.edu>
3974 * mh-utils.el (mh-do-in-gnu-emacs, mh-do-in-xemacs): Add
3975 indentation hooks for the macros.
3977 2003-04-11 Bill Wohler <wohler@newt.com>
3979 * mh-alias.el, mh-comp.el, mh-customize.el, mh-funcs.el,
3980 mh-identity.el, mh-inc.el, mh-index.el, mh-junk.el, mh-utils.el:
3981 Merged in changes from CVS GNU Emacs. These included the removal
3982 of trailing whitespace.
3984 * mh-customize.el: The "anti-entropy" check-in. Moved groups
3985 around slightly to reflect commentary. Moved defcustoms around
3986 to preserve alphabetization. Big diff, little content.
3987 (mh-xemacs-use-toolbar-flag): Doc fix.
3988 (mh-xemacs-toolbar-position): Fixed typo in docstring.
3989 (mh-default-folder-list): Updated docstring to reflect new Check
3990 Recipient tag. Also, set type of Address to regexp.
3991 (mh-x-mailer-string): Moved to mh-comp.el where it is used.
3993 * mh-comp.el (mh-x-mailer-string): Moved here from customize.el.
3994 Not quite sure how it got to mh-customize.el in the first place.
3996 * mh-e.el (mh-folder-folder-menu): Added Folder -> View New
3999 * mh-utils.el (mh-show-folder-menu): Ditto.
4001 * mh-inc.el: Added Change Log comment (lm-verify fix).
4003 * mh-index.el (mh-index-search): Added documentation about prefix
4004 argument for users, in addition to documentation for programmers.
4006 * mh-mime.el (mh-edit-mhn, mh-edit-mhn, mh-mml-to-mime): Docstring
4007 fixes germaine to the change whereby we now check for MIME
4008 directives before sending.
4010 * mh-xemacs-toolbar.el: Fixed copyright. Added Change Log comment.
4011 (lm-verify fix). Added standard MH-E local variables. Removed
4014 2003-04-11 Satyaki Das <satyaki@theforce.stanford.edu>
4016 * mh-seq.el (mh-iterate-on-msg-or-seq): Add a missed comma.
4018 2003-04-10 Satyaki Das <satyaki@theforce.stanford.edu>
4020 * mh-index.el (mh-index-visit-folder): Prompt before reusing
4021 existing folder buffer.
4023 * mh-xemacs-toolbar.el (require): Require mh-utils at compile
4024 time to avoid compilation error when doing "make bootstrap" in
4027 * mh-inc.el (mh-inc-spool-list): Declare it so that a compile
4028 time warning is avoided when doing "make bootstrap" in CVS Emacs.
4030 2003-04-10 Peter S Galbraith <psg@debian.org>
4032 * mh-inc.el (mh-inc-spool-generator): Changed to a defun instead
4033 of a defmacro, applying Satyaki's patch.
4034 (mh-inc-spool-def-key): same.
4035 (mh-inc-spool-make): same.
4037 * mh-utils.el: define-key "I" in mh-show-mode-map for
4040 * mh-comp.el (mh-modify-header-field): Remove debug message.
4042 2003-04-10 Peter S Galbraith <psg@debian.org>
4044 * mh-inc.el (mh-inc-spool-map-help): Default to nil.
4045 (mh-inc-spool-map): Make "?" key display message when
4046 `mh-inc-spool-map-help' is nil (instead of mh-inc-spool-map-help
4047 containing the message).
4049 * mh-e.el: require mh-inc.el
4050 * mh-e.el: define-key "I" in mh-folder-mode-map for mh-inc-spool-map.
4051 (mh-help-messages): Add help string for "I" key.
4053 2003-04-09 Peter S Galbraith <psg@debian.org>
4055 * mh-inc.el: New file. New feature to `inc' mail from various
4056 spool files into different folders.
4058 * mh-loaddefs.el: Regenerate for mh-inc's mh-inc-spool-list-set.
4060 * Makefile (MH-E-IMG): Add highlight icon.
4061 (MH-E-SRC): Add mh-inc.el file.
4063 * mh-customize.el (mh-inc-spool-list): New variable for new
4064 feature to `inc' mail from various spool files into different
4067 2003-04-09 Satyaki Das <satyaki@theforce.stanford.edu>
4069 * mh-utils.el (mh-mail-delivery-buffer): Add a defconst for
4070 mh-mail-delivery-buffer.
4072 * mh-comp.el (mh-send-letter): Use mh-mail-delivery-buffer.
4074 * mh-mime.el (mh-small-image-p): Add mh-funcall-if-exists to
4075 avoid compiler warning in GNU Emacs.
4077 2003-04-08 Satyaki Das <satyaki@theforce.stanford.edu>
4079 * mh-mime.el (mh-small-image-p): Make the function slightly more
4080 error-resistant in XEmacs.
4082 * mh-seq.el (mh-narrow-to-seq, mh-widen): Update tool-bar-map in
4083 the show buffer if needed. This allows us to display the widen
4084 button in the show buffer only when the folder is narrowed.
4086 * mh-customize.el (mh-tool-bar-define): Changed so that a
4087 separate tool-bar-map is used in show-mode when folder is
4088 narrowed to a sequence.
4090 2003-04-08 Satyaki Das <satyaki@theforce.stanford.edu>
4092 * mh-seq.el (mh-iterate-on-msg-or-seq): Reinstate the use of
4093 make-symbol since using gensym causes compiler warnings in CVS
4096 2003-04-08 Bill Wohler <wohler@newt.com>
4098 * mh-comp.el (mh-forward): Function didn't handle a region of
4099 messages. Use new function mh-msg-or-seq-to-msg-list to get a list
4100 of messages in all circumstances. Also, use mh-coalesce-msg-list
4101 on message list before submitting to forw since this should always
4102 be done when calling a program to reduce the chance of exceeding
4103 command-line limits.
4105 * mh-seq.el (mh-iterate-on-msg-or-seq): Backed out previous
4106 change. A nil msg-or-seq should mean no messages, and Satyaki is
4107 going to use gensym instead of make-symbol.
4108 (mh-msg-or-seq-to-msg-list): New function to convert a msg-or-seq
4109 to a list of message numbers.
4111 * mh-e.el (mh-coalesce-msg-list): Touched up the docstring a
4114 * mh-funcs.el (mh-print-msg): Can now print regions, message
4115 lists, sequences and, of course, single messages. This version
4116 works a little differently from the old version. Instead of
4117 calling mhl | lpr once on all messages, mhl | lpr is called once
4118 per message in order to put each message's number in the header.
4119 Thanks to Satyaki for some code and ideas.
4121 * mh-seq.el (mh-iterate-on-msg-or-seq): The argument msg-or-seq
4122 can now be nil which means the current message. Make local symbols
4123 so that local variables don't step on user's symbols (the msgs
4126 2003-04-06 Bill Wohler <wohler@newt.com>
4128 * mh-comp.el (mh-forward): Updated docstrings to indicate that a
4129 list of messages is acceptable as well.
4131 * mh-e.el (mh-delete-msg, mh-delete-msg-no-motion, mh-refile-msg)
4132 (mh-undo, mh-notate-user-sequences, mh-delete-msg-from-seq): Ditto.
4134 * mh-funcs.el (mh-copy-msg, mh-print-msg): Ditto.
4136 * mh-junk.el (mh-junk-blacklist, mh-junk-whitelist): Ditto.
4138 * mh-seq.el (mh-put-msg-in-seq, mh-iterate-on-msg-or-seq)
4139 (mh-interactive-msg-or-seq): Ditto.
4141 2003-04-06 Satyaki Das <satyaki@theforce.stanford.edu>
4143 * mh-junk.el (mh-junk-blacklist, mh-junk-whitelist): Call
4144 mh-refile-a-msg and mh-delete-a-msg with nil as the message
4145 number since that is more efficient.
4147 * mh-seq.el (mh-iterate-on-msg-or-seq): Extended so that it will
4148 handle lists of messages numbers as well.
4149 (mh-put-msg-in-seq): Use mh-iterate-on-msg-or-seq to simplify the
4152 * mh-funcs.el (mh-copy-msg): Same as above.
4154 * mh-e.el (mh-refile-msg): Make it more efficient. Using nil in
4155 mh-refile-a-msg avoids needing to re-search-forward to that
4157 (mh-undo): Fix typo in interactive spec.
4158 (mh-notate-user-sequences): Generalize the function to take a
4159 msg-or-seq as argument.
4160 (mh-delete-msg-from-seq): Extend the function so that it is now
4161 able to subtract messages belonging in one sequence from another.
4162 (mh-undo): Unify the region and sequence handling. The message
4163 number branch of the function does extra stuff, so we can't merge
4166 2003-04-06 Bill Wohler <wohler@newt.com>
4168 * mh-comp.el (mh-forward): Use mh-interactive-msg-or-seq. Inserted
4169 consistent verbiage in docstring for msg-or-seq.
4170 (mh-reply): Don't mention default in opening line in all
4173 * mh-e.el (mh-delete-msg, mh-refile-msg)
4174 (mh-undo, mh-delete-msg-from-seq): Use mh-interactive-msg-or-seq.
4175 Inserted consistent verbiage in docstring for msg-or-seq. In
4176 mh-delete-msg-from-seq, renamed msg-or-region to msg-or-seq.
4178 * mh-funcs.el (mh-copy-msg, mh-print-msg): Use
4179 mh-interactive-msg-or-seq. Inserted consistent verbiage in
4180 docstring for msg-or-seq.
4182 * mh-junk.el (mh-junk-blacklist, mh-junk-whitelist): Inserted
4183 consistent verbiage in docstring for msg-or-seq.
4185 * mh-seq.el (mh-msg-is-in-seq): Don't mention default in opening
4186 line in all docstrings.
4187 (mh-put-msg-in-seq): Use mh-interactive-msg-or-seq. Inserted
4188 consistent verbiage in docstring for msg-or-seq.
4190 * mh-e.el (mh-delete-msg, mh-delete-msg-no-motion, mh-refile-msg):
4191 Rewritten to use new mh-interactive-msg-or-seq function and
4192 mh-iterate-on-msg-or-seq macro. mh-delete-msg-no-motion gained the
4193 ability to operate on regions.
4195 * mh-junk.el (mh-junk-blacklist, mh-junk-whitelist): Rewritten to
4196 use new mh-interactive-msg-or-seq function and
4197 mh-iterate-on-msg-or-seq macro thereby gaining the ability to
4198 operate on sequences or regions.
4200 * mh-seq.el (mh-iterate-on-msg-or-seq): New macro to execute code
4201 on a message, a region of messages, or a sequence. This macro
4202 should be in all functions that operate on messages to provide a
4204 (mh-interactive-msg-or-seq): New function used in interactive
4205 calls to obtain a message number, region, or sequence. This
4206 function should be in all functions that operate on messages to
4207 provide a uniform interface.
4209 * mh-utils.el (with-mh-folder-updating, mh-in-show-buffer): Use
4210 'defun lisp-indent-hook property instead of 1 to fix indentation
4213 2003-04-05 Peter S Galbraith <psg@debian.org>
4215 * mh-loaddefs.el: Regenerated.
4216 * mh-funcs.el (mh-ephem-message): autoload.
4218 2003-04-04 Peter S Galbraith <psg@debian.org>
4220 * mh-e.el (mh-folder-from-address): Minor Fix. Wrong ending of
4223 2003-04-04 Satyaki Das <satyaki@theforce.stanford.edu>
4225 * mh-mime.el (mh-mml-directive-present-p): The regexp has been
4226 modified to recognize directives to encrypt/sign messages.
4228 2003-04-03 Mark D. Baushke <mdb@gnu.org>
4230 * mh-e.el (mh-folder-from-address): E-mail messages missing the
4231 To: field, but which have a Cc: field should also be handled.
4233 2003-04-03 Bill Wohler <wohler@newt.com>
4235 * mh-e.el (mh-inc-folder): Modified the prompt text to read
4238 * mh-comp.el (mh-forward): Deleted local variable `compose'.
4239 Deleted obsolete setting of mh-{mmh|mml}-compose-insert-flag.
4240 (mh-letter-menu): Use mh-{mmh|mml}-directive-present-p instead of
4241 obsolete. mh-{mmh|mml}-compose-insert-flag.
4242 (mh-letter-mode): Deleted obsolete setting of
4243 mh-{mmh|mml}-compose-insert-flag.
4244 (mh-send-letter): This function now automatically runs the
4245 directive-to-MIME conversion if any directives are detected,
4246 rather than relying on the unreliable
4247 mh-{mmh|mml}-compose-insert-flag variables. Updated docstring
4250 * mh-identity.el (mh-insert-identity): Use
4251 mh-{mmh|mml}-directive-present-p instead of obsolete.
4252 mh-{mmh|mml}-compose-insert-flag.
4254 * mh-loaddefs.el: Regenerated.
4256 * mh-mime.el (mh-mhn-compose-type, mh-mhn-compose-external-type)
4257 (mh-mhn-compose-forw, mh-edit-mhn, mh-mml-to-mime)
4258 (mh-mml-forward-message, mh-mml-attach-file)
4259 (mh-mml-secure-message-sign-pgpmime)
4260 (mh-mml-secure-message-encrypt-pgpmime): Deleted obsolete setting
4261 of mh-{mmh|mml}-compose-insert-flag.
4262 (mh-mml-directive-present-p): Checkdoc fix.
4264 * mh-utils.el (mh-mhn-compose-insert-flag,
4265 mh-mml-compose-insert-flag): Deleted. Replaced by
4266 mh-{mhn|mml}-directive-present-p.
4268 2003-04-03 Mark D. Baushke <mdb@gnu.org>
4270 * mh-e.el (mh-folder-from-address): Fix minor problem with To:
4273 * mh-e.el (mh-folder-from-address): Bugfix match ?+ character not
4276 2003-04-03 Peter S Galbraith <psg@debian.org>
4278 * mh-e.el (mh-inc-folder): Add second optional argument for the
4279 folder to inc new mail into instead of mh-inbox.
4281 2003-04-03 Peter S Galbraith <psg@debian.org>
4283 * mh-e.el (mh-folder-from-address): The first match found in
4284 `mh-default-folder-list' is used.
4286 * mh-customize.el (mh-default-folder-list): Tweak docs
4288 2003-04-03 Satyaki Das <satyaki@theforce.stanford.edu>
4290 * mh-loaddefs.el: Regenerated.
4292 * mh-mime.el (mh-mhn-directive-present-p): New function to test if
4293 a MHN directive is present in the current buffer.
4294 (mh-mml-directive-present-p): New function to test if a MML
4295 directive is present in the current buffer.
4297 * mh-comp.el (mh-letter-mode): Originally this function checked if
4298 a #forw directive was present and set mh-mhn-compose-insert-flag
4299 to t. The modification generalizes this test so that one of the
4300 variables mh-{mml|mhn}-compose-insert-flag will get set if we have
4301 any sort of MHN or MML directive is already present.
4303 * mh-seq.el (tool-bar-map): Add a defvar to avoid compiler
4304 warnings in CVS version of GNU Emacs.
4306 * mh-utils.el (tool-bar-map): Same as above.
4308 * mh-e.el (tool-bar-map): same as above.
4310 2003-04-02 Satyaki Das <satyaki@theforce.stanford.edu>
4312 * mh-xemacs-toolbar.el (mh-xemacs-toolbar-toggle-tick-icon):
4313 Change color to match mh-folder-tick-face.
4315 * highlight.xpm: Same as above.
4317 2003-04-02 Peter S Galbraith <psg@debian.org>
4319 * mh-e.el (mh-folder-from-address): Check `mh-default-folder-list'
4320 for cases against the recipient instead of the originator.
4322 * mh-customize.el (mh-default-folder-list): Add extra boolean flag
4323 to conditionally check the recipient address instead of the
4326 2003-04-02 Peter S Galbraith <psg@debian.org>
4328 * mh-customize.el (mh-folder-tick-face): Change tick highlight
4329 face to a background yellow-green, as suggested by Bill.
4331 2003-04-01 Peter S Galbraith <psg@debian.org>
4333 * highlight.xpm: New icon for mh-toggle-tick.
4335 * mh-xemacs-toolbar.el (mh-xemacs-icon-map): Add tool-bar entry
4337 (mh-xemacs-toolbar-toggle-tick-icon): New constant.
4339 * mh-customize.el: Add tool-bar entry for mh-toggle-tick.
4341 2003-03-31 Satyaki Das <satyaki@theforce.stanford.edu>
4343 * mh-loaddefs.el: Regenerated.
4345 * mh-utils.el (mh-show-narrow-to-tick, mh-show-limit-map)
4346 (mh-show-sequence-menu): Add new interactive function
4347 mh-show-narrow-to-tick callable from the show buffer and arrange
4348 for a key binding and a menu entry.
4350 * mh-seq.el (mh-narrow-to-tick): New interactive function that
4351 narrows to the tick sequence.
4353 * mh-e.el (mh-folder-sequence-menu, mh-limit-map): Arrange for a
4354 key binding and a menu entry for mh-narrow-to-tick.
4356 * mh-comp.el (mh-letter-mode): Enable undo since we could be
4357 reusing a show buffer where undo is disabled (closes SF #712777).
4359 2003-03-31 Peter S Galbraith <psg@debian.org>
4361 * mh-e.el (mh-folder-sequence-menu): Add entry for mh-toggle-tick.
4363 * mh-utils.el (mh-show-sequence-menu): Add entry for
4364 mh-show-toggle-tick.
4366 2003-03-28 Satyaki Das <satyaki@theforce.stanford.edu>
4368 * mh-seq.el (mh-delete-seq): If the tick sequence is killed with
4369 "S k" then the highlighting wasn't getting removed. The change
4372 2003-03-27 Satyaki Das <satyaki@theforce.stanford.edu>
4374 * mh-e.el (mh-notate-user-sequences): Extend it so that only the
4375 messages in a part of the folder are notated.
4376 (mh-delete-msg-from-seq): Extend it so that it will delete all
4377 messages in the marked region.
4378 (mh-delete-a-msg-from-seq): New function that deletes a single
4379 message from a sequence.
4380 (mh-clear-text-properties): If there is a ticked unseen message
4381 and the message is removed from the unseen list with "S d" then
4382 unticking the message doesn't change the highlight. This change
4385 2003-03-27 Peter S Galbraith <psg@debian.org>
4387 * mh-xemacs-toolbar.el (mh-xemacs-toolbar-*-icon): Use original
4388 24x24 icons, changing background only.
4390 2003-03-27 Satyaki Das <satyaki@theforce.stanford.edu>
4392 * mh-junk.el (mh-spamassassin-identify-spammers): Remove unused
4393 variable buffer-exists.
4394 (mh-spamassassin-identify-spammers): Remove unused variable user.
4396 * mh-customize.el (mh-junk-choose): Tweak it to remove XEmacs
4399 2003-03-26 Satyaki Das <satyaki@theforce.stanford.edu>
4401 * mh-seq.el (mh-thread-print-scan-lines): Handling of a boundary
4402 condition when messages from the last source folder had been
4403 removed was incorrect. This caused a folder header to appear
4404 without any messages listed under it. This change fixes this.
4405 (mh-thread-forget-message): Remove the entry from the scan line
4406 table as well. This is needed for proper display of threaded view
4409 2003-03-26 Bill Wohler <wohler@newt.com>
4411 * Makefile, README, import-emacs, mh-alias.el, mh-comp.el,
4412 mh-customize.el, mh-e.el, mh-funcs.el, mh-identity.el,
4413 mh-index.el, mh-loaddefs.el, mh-mime.el, mh-pick.el, mh-seq.el,
4414 mh-speed.el, mh-utils.el, mh-xemacs-compat.el,
4415 mh-xemacs-toolbar.el: Removed RCS keywords per Emacs conventions
4416 (closes SF #680731).
4418 2003-03-26 Satyaki Das <satyaki@theforce.stanford.edu>
4420 * mh-index.el: Fix commentary to mention that mairix is supported
4423 * mh-loaddefs.el: Regenerated.
4425 * mh-utils.el (mh-show-junk-blacklist, mh-show-junk-whitelist):
4426 Interactive functions callable from the show buffer.
4427 (mh-show-junk-map): Key bindings in show mode.
4429 * mh-e.el (mh-junk-map): Key bindings to call spam program.
4430 (mh-help-messages): Update help text.
4432 * mh-customize.el (mh-junk): New customization group for spam
4434 (mh-junk-choice, mh-junk-function-alist, mh-junk-choose):
4435 Functions and variables that decide which junk program is used.
4436 (mh-junk-program, mh-junk-mail-folder): User customizable
4437 variables that control the choice of spam program and the action
4438 performed on received spam.
4440 * Makefile (MH-E-SRC): Add mh-junk.el.
4442 2003-03-26 Satyaki Das <satyaki@theforce.stanford.edu>
4444 * mh-loaddefs.el: Regenerated.
4446 * mh-utils.el (mh-show-toggle-tick, mh-show-mode-map): New
4447 interactive function callable from the show buffer and a key
4450 * mh-seq.el (mh-delete-seq): Remove highlight from tick sequence.
4451 (mh-put-msg-in-seq): Disable adding messages to tick sequence.
4452 (mh-widen): Reset mh-tick-seq-changed-when-narrowed-flag.
4453 (mh-tick-add-overlay, mh-tick-remove-overlay, mh-notate-tick)
4454 (mh-toggle-tick): New functions to highlight/unhighlight tick
4455 sequence and the interactive function that is used to toggle
4458 * mh-e.el (mh-tick-seq-changed-when-narrowed-flag): New variable
4459 that remembers if we are narrowed to the tick sequence. In that
4460 case the highlighting isn't shown, since it adds no extra info.
4461 (mh-folder-mode): Initialize mh-tick-seq-changed-when-narrowed-flag.
4462 (mh-notate-user-sequences): Notate the tick sequence.
4463 (mh-internal-seq): Treat mh-tick-seq like an internal sequence.
4464 (mh-delete-msg-from-seq): Don't allow deletion from tick sequence.
4465 (mh-folder-mode-map): Add key binding for "'"
4467 * mh-customize.el (mh-tick-seq, mh-folder-tick-face): New
4468 customizable variables that contain the name of the tick sequence
4469 and the face to use to highlight it.
4471 2003-03-25 Satyaki Das <satyaki@theforce.stanford.edu>
4473 * mh-loaddefs.el: Regenerated.
4475 * mh-seq.el (mh-thread-print-scan-lines): New function which
4476 prints out thread tree. It maintains the original folder info if
4477 the folder was created by index search (closes SF #709672).
4478 (mh-copy-seq-to-eob, mh-thread-inc, mh-thread-folder): Use
4479 factored out function mh-thread-print-scan-lines.
4480 (mh-toggle-threads): Since threading is allowed in index folders
4481 there can be lines in the folder which aren't valid message scan
4482 lines. So it is OK for mh-get-msg-num to fail once in a while.
4484 * mh-index.el (mh-index-update-maps): Make the parsing of messages
4485 that need to be annotated with the X-MHE-Checksum header more robust.
4486 If the search yielded no results then an error was being produced.
4487 (mh-index-search): Enable automatic threading of index folders if
4488 mh-show-threads-flag is non-nil (closes SF #709667).
4489 (mh-index-next-folder): Relax error checking since index folder
4490 can be threaded while the source folder info is visible.
4491 (mh-index-group-by-folder): New function that is used in
4492 mh-thread-folder to keep source folder info visible during
4495 2003-03-25 Bill Wohler <wohler@newt.com>
4497 * mh-loaddefs.el: Regenerated.
4499 * mh-customize.el (mh-index-new-messages-folders): New variable
4500 that controls which folders "F n (mh-index-new-messages)"
4501 accesses. Was mh-flists-search-folders.
4503 * mh-index.el (mh-flists-search-folders): Still used internally,
4504 but users now use new option mh-index-new-messages-folders.
4505 Removed documentation since to avoid duplication with
4506 mh-index-new-messages-folders.
4507 (mh-flists-recursive-search-flag): Deleted. Use
4508 mh-recursive-folders-flag instead.
4509 (mh-flists-execute): Updated docs to specify which global
4510 variables are used. Use mh-recursive-folders-flag instead of
4511 mh-flists-recursive-search-flag.
4512 (mh-index-new-messages): Edited doc, and refer to new option
4513 mh-index-new-messages-folders. Ditto within code. Don't need to
4514 prepend + to folder name as flists does that for us. Use
4516 2003-03-24 Satyaki Das <satyaki@theforce.stanford.edu>
4518 * mh-e.el (mh-refile-msg): Add optional argument that controls
4519 whether mh-last-destination-folder is updated or not.
4521 2003-03-22 Satyaki Das <satyaki@theforce.stanford.edu>
4523 * mh-customize.el (mh-tool-bar-define): Fix a problem in the
4524 XEmacs version which caused the show mode toolbar to have the
4525 buttons in the reverse order. Also the add-hooks are no longer
4526 needed since mh-toolbar-init is called in the appropriate modes.
4528 * mh-comp.el (mh-letter-mode): Call mh-toolbar-init in XEmacs to
4531 * mh-utils.el (mh-show-mode): Same as above.
4533 * mh-e.el (mh-folder-mode): Same as above.
4535 2003-03-21 Satyaki Das <satyaki@theforce.stanford.edu>
4537 * mh-utils.el (mh-exec-cmd-env-daemon): New function which
4538 executes a command asynchronously with its own environment.
4540 * mh-comp.el (mh-redistribute): The function has been modified so
4541 that /bin/sh isn't used to run send. It has also been refactored
4542 so that the same code isn't repeated.
4544 2003-03-21 Bill Wohler <wohler@newt.com>
4546 * mh-customize.el (mh-invisible-header-fields): Added X-Bogosity
4549 2003-03-21 Satyaki Das <satyaki@theforce.stanford.edu>
4551 * mh-loaddefs.el: Regenerated.
4553 * mh-xemacs-toolbar.el: Remove the code since that gets generated
4554 when mh-tool-bar-define is expanded.
4555 (mh-xemacs-icon-map): An alist to map GNU Emacs icon names to the
4556 actual icons to be used in XEmacs. This is used in
4559 * mh-customize.el (mh-toolbar): Use this group in XEmacs as well.
4560 (mh-tool-bar-item-*): All these constants have been removed since
4561 they aren't needed in the new scheme.
4562 (mh-tool-bar-reply-3-buttons-flag): This variable has been
4564 (mh-tool-bar-search-function): This is now used in XEmacs as well.
4565 (mh-tool-bar-folder-set, mh-tool-bar-folder-buttons-set)
4566 (mh-tool-bar-letter-buttons-set, mh-tool-bar-show-set)
4567 (mh-tool-bar-letter-set): These functions aren't defined at the
4569 (mh-tool-bar-reply-generator): A macro to generate the required
4570 functions for the three reply buttons.
4571 (mh-tool-bar-search, mh-tool-bar-customize)
4572 (mh-tool-bar-folder-help, mh-tool-bar-letter-help)
4573 (mh-tool-bar-reply-from, mh-show-tool-bar-reply-from)
4574 (mh-tool-bar-reply-to, mh-show-tool-bar-reply-to)
4575 (mh-tool-bar-reply-all, mh-show-tool-bar-reply-all): New
4576 interactive functions that are called when tool bar buttons are
4578 (mh-xemacs-use-toolbar-flag, mh-xemacs-toolbar-position):
4579 Additional customizable variables that are present only for
4581 (mh-tool-bar-define): A macro that generates the required code
4582 for GNU Emacs and XEmacs tool bar.
4583 (mh-tool-bar-define): Define the MH-E tool bar.
4585 2003-03-17 Satyaki Das <satyaki@theforce.stanford.edu>
4587 * mh-seq.el (mh-notate-cur): Notate current message only if it
4588 hasn't been marked for deletion or refiling.
4590 2003-03-15 Bill Wohler <wohler@newt.com>
4592 * mh-customize.el (mh-invisible-header-fields): Added
4593 X-Spam-Checker-Version.
4594 (mh-auto-fields-list): checkdoc fix.
4596 2003-03-12 Satyaki Das <satyaki@theforce.stanford.edu>
4598 * mh-index.el (mh-index-new-messages): If the destination folder
4599 where the unseen messages are supposed to be copied to was
4600 already present, but MH-E doesn't have it open, then a new folder
4601 was being created. The change fixes this.
4602 (mh-index-update-unseen, mh-flists-recursive-search-flag): Fix
4605 * mh-loaddefs.el: Regenerated.
4607 2003-03-11 Satyaki Das <satyaki@theforce.stanford.edu>
4609 * mh-index.el (mh-flists-results-folder): Subfolder under
4610 +mhe-index where the results of the flists call is put.
4611 (mh-index-generate-pretty-name): Make sure that normal index
4612 searching will never use the folder reserved for the flists
4614 (mh-index-search): Add an extra parameter that marks all the
4615 messages in the index folder to the unseen sequence.
4616 (mh-index-update-unseen): Function to keep unseen sequence of
4617 index folder synced with the actual folders from where the
4618 messages were copied. This works only if the unseen messages are
4619 displayed with mh-show. Killing the unseen sequence in the index
4620 folder or adding/removing messages to it doesn't change the
4621 unseen sequence in the source folders yet.
4622 (mh-flists-search-folders): Variable that decides the folders on
4623 which flists is run.
4624 (mh-flists-recursive-search-flag): If non-nil, flists is passed
4625 the -recurse option.
4626 (mh-flists-execute): Function which uses /bin/sh to execute
4627 flists and then print out the list of message files that match.
4628 (mh-index-new-messages): New interactive function which searches
4629 for messages in the unseen sequence (closes SF #701756).
4631 * mh-utils.el (mh-show-folder-map): Add binding for
4632 mh-index-new-messages.
4633 (mh-show-msg): Update the unseen sequence in the source folder.
4635 * mh-e.el (mh-folder-font-lock-unseen): The function assumes that
4636 the end of buffer is reached when there isn't a valid scan line
4637 on the current line. This doesn't work in the index folder since
4638 we have lines containing the folder name and empty lines in
4639 between the actual scan lines. The modification removes this
4641 (mh-folder-map): Add key binding for "Fn"
4643 * mh-seq.el (mh-iterate-on-messages-in-region): If the point is
4644 not at the beginning of the line, then the first message in the
4645 region would be missed. The fix avoids this.
4647 * mh-mime.el (mh-inline-vcard-p): Don't try to inline vcards if
4648 we don't have the right libraries.
4650 2003-03-10 Satyaki Das <satyaki@theforce.stanford.edu>
4652 * mh-e.el (mh-next-undeleted-msg, mh-previous-undeleted-msg)
4653 (mh-next-msg): Add optional argument wait-after-complaining-flag.
4654 If non-nil and there are no undeleted messages after (or before)
4655 the current one, then pause for a second after printing out the
4657 (mh-refile-or-write-again): Modify call to mh-next-msg to use the
4658 wait-after-complaining-flag.
4660 2003-03-10 Satyaki Das <satyaki@theforce.stanford.edu>
4662 * mh-e.el (mh-refile-or-write-again): If mh-next-msg fails to find
4663 a message to go to it prints out a diagnostic, which overwrites
4664 the diagnostic about the folder the message was refiled to. The
4667 2003-03-09 Satyaki Das <satyaki@theforce.stanford.edu>
4669 * mh-seq.el (mh-widen, mh-narrow-to-seq): Update
4670 mh-narrowed-to-seq before notating sequences. This is a bit
4671 helpful for mh-tick.el.
4672 (mh-put-msg-in-seq): Fix a minor bug. No internal sequence should
4673 be notated -- the original code was doing the right thing only for
4674 the "unseen" sequence.
4676 * mh-index.el (mh-index-choose): Add autoload cookie for
4677 mh-index-choose. This is needed for GNU Emacs 20.5.
4679 * mh-loaddefs.el: Regenerated.
4681 2003-03-09 Bill Wohler <wohler@newt.com>
4683 * mh-mime.el (mh-display-smileys): This function originally had a
4684 test to see if font-lock-maximum-size was bound, but this was
4685 recently removed. The test was put in for a reason; if
4686 font-lock-maximum-size isn't bound, void-variable errors would
4687 ensue. I put the bound test back in.
4689 2003-03-08 Steve Youngs <youngs@xemacs.org>
4691 * mh-mime.el (mh-mime-security-button-map): Use 'mh-push-button'
4694 2003-03-07 Satyaki Das <satyaki@theforce.stanford.edu>
4696 * mh-xemacs-toolbar.el: Declare a whole bunch of stuff for GNU
4697 Emacs, so that we don't get so many compiler warnings. Also
4698 surround calls to set-specifier and toolbar-make-button-list with
4699 mh-funcall-if-exists. Maybe GNU Emacs shouldn't try to compile
4700 this file in the first place.
4702 * mh-xemacs-compat.el (mh-modeline-glyph): Declare it within
4703 mh-do-in-xemacs to avoid compiler warning in GNU Emacs.
4704 (mh-xemacs-push-button): Removed.
4706 * mh-mime.el (mh-mime-button-map): Use the generalized
4707 mh-push-button function.
4708 (mh-push-button): Enhance it so that it works on XEmacs too.
4710 2003-03-08 Steve Youngs <youngs@xemacs.org>
4712 * mh-xemacs-compat.el (mh-modeline-logo): New constant holding the
4714 (mh-modeline-glyph): Use it.
4716 2003-03-08 Steve Youngs <youngs@xemacs.org>
4718 * mh-xemacs-toolbar.el: New file that defines and displays a
4721 * mh-xemacs-compat.el (mh-xemacs-toolbar): Require it here.
4723 * Makefile (MH-E-SRC): Add mh-xemacs-toolbar.el.
4725 * mh-customize.el (mh-toolbar):
4726 (mh-tool-bar-letter-buttons):
4727 (mh-tool-bar-letter-buttons-set):
4728 (mh-tool-bar-folder-buttons):
4729 (mh-tool-bar-folder-buttons-set):
4730 (mh-tool-bar-search-function):
4731 (mh-tool-bar-reply-3-buttons-flag):
4732 (mh-tool-bar-item-inc):
4733 (mh-tool-bar-item-save-mime):
4734 (mh-tool-bar-item-prev-msg):
4735 (mh-tool-bar-item-page-msg):
4736 (mh-tool-bar-item-next-msg):
4737 (mh-tool-bar-item-delete):
4738 (mh-tool-bar-item-refile):
4739 (mh-tool-bar-item-undo):
4740 (mh-tool-bar-item-perform):
4741 (mh-tool-bar-item-toggle-show):
4742 (mh-tool-bar-item-reply-from):
4743 (mh-tool-bar-item-reply-to):
4744 (mh-tool-bar-item-reply-all):
4745 (mh-tool-bar-item-reply):
4746 (mh-tool-bar-item-alias):
4747 (mh-tool-bar-item-compose):
4748 (mh-tool-bar-item-rescan):
4749 (mh-tool-bar-item-repack):
4750 (mh-tool-bar-item-search):
4751 (mh-tool-bar-item-visit):
4752 (mh-tool-bar-item-prefs):
4753 (mh-tool-bar-item-help):
4754 (mh-tool-bar-item-widen):
4755 (mh-tool-bar-item-send):
4756 (mh-tool-bar-item-attach):
4757 (mh-tool-bar-item-spell):
4758 (mh-tool-bar-item-save):
4759 (mh-tool-bar-item-undo-op):
4760 (mh-tool-bar-item-kill):
4761 (mh-tool-bar-item-copy):
4762 (mh-tool-bar-item-paste):
4763 (mh-tool-bar-item-kill-draft):
4764 (mh-tool-bar-item-comp-prefs):
4765 The MH-E toolbar for XEmacs is defined differently from the
4766 GNU/Emacs version, so only define these if we're in GNU/Emacs.
4767 XEmacs doesn't need to see them and it's always good to cut down
4770 2003-03-08 Steve Youngs <youngs@xemacs.org>
4772 * mh-mime.el (mh-mime-button-map): Bind the 2nd mouse button to
4773 `mh-xemacs-push-button' in XEmacs.
4774 (mh-mime-security-button-map): Ditto.
4776 * mh-xemacs-compat.el: Shush the byte-compiler.
4777 (mh-xemacs-push-button): New function to make MIME buttons work in
4780 2003-03-08 Steve Youngs <youngs@xemacs.org>
4782 * mh-mime.el (mh-display-emphasis): Don't test
4783 `font-lock-maximum-size' to see if it is bound, just test for a
4784 non-nil value. This variable can have a nil value which makes it
4785 bound and dividing nil by 8 throws an error.
4786 This fixes a bug in MH-E under XEmacs when
4787 `font-lock-maximum-size' is nil that prevented article emphasis
4788 and smiley display which in turn was causing the "Flush changes in
4789 article x y/n" errors.
4790 (mh-display-smileys): Ditto.
4792 2003-03-08 Steve Youngs <youngs@xemacs.org>
4794 * mh-utils.el (mh-logo-display): Display logo in XEmacs as well.
4796 * mh-xemacs-compat.el (mh-modeline-glyph): New. The MH-E modeline
4799 2003-03-06 Satyaki Das <satyaki@theforce.stanford.edu>
4801 * mh-utils.el (mh-allow-root-folder-flag): New global variable
4802 that decides if "+" is an acceptable folder name.
4803 (mh-folder-completion-function): Refine the test for existing
4804 folders to take mh-allow-root-folder-flag into account.
4805 (mh-folder-completing-read, mh-prompt-for-folder): Use the
4806 allow-root-folder-flag argument of mh-prompt-for-folder and add a
4807 similar argument to mh-folder-completing-read.
4808 (mh-exec-cmd-error): Make the function nicer by using
4809 process-environment to pass the environment variable assignments.
4811 2003-03-05 Satyaki Das <satyaki@theforce.stanford.edu>
4813 * mh-mime.el (mh-push-button): Preserve point in the show buffer
4814 if the mouse is used to expand/contract a button.
4816 * mh-customize.el (mh-x-face-file): Mention X-Image-URL in
4819 * mh-comp.el (mh-insert-x-face): Modified to allow insertion of
4820 X-Image-URL header field.
4822 2003-03-04 Satyaki Das <satyaki@theforce.stanford.edu>
4824 * mh-utils.el (mh-face-display-function): Modified to facilitate
4825 display of X-Image-URL images.
4826 (mh-find-path): Initialize X-Image-URL cache directory.
4827 (mh-x-image-url-cache-canonicalize, mh-x-image-url-fetch-image)
4828 (mh-x-image-scale-and-display, mh-x-image-url-display)
4829 (mh-x-image-display): New functions for X-Image-URL image display
4830 and cache management.
4832 * mh-customize.el (mh-show-use-xface-flag): Add info about
4833 requirements for X-Image-URL display.
4834 (mh-fetch-x-image-url): New customizable variable that controls
4835 fetching of X-Image-URL.
4837 2003-03-04 Satyaki Das <satyaki@theforce.stanford.edu>
4839 * mh-utils.el (mh-make-local-hook): New macro which works around
4840 API changes in add-hook. Version of GNU Emacs before 21.1 and
4841 XEmacs require a call to make-local-hook and just the LOCAL
4842 argument of add-hook is not sufficient.
4843 (mh-show-mode): Make kill-buffer-hook buffer local.
4845 * mh-e.el (mh-folder-mode): Same as above.
4847 * mh-comp.el (mh-compose-and-send-mail): Same as above.
4849 2003-03-02 Satyaki Das <satyaki@theforce.stanford.edu>
4851 * mh-mime.el (mh-push-button): Clicking on a MIME button used to
4852 cause the window with the show buffer to be selected. With this
4853 change the selected window doesn't change.
4855 2003-03-01 Satyaki Das <satyaki@theforce.stanford.edu>
4857 * mh-speed.el (mh-speed-flists): Avoid a potential race condition.
4858 When flists is called manually, or when an unseen message is read,
4859 mh-speed-partial-line was not reinitialized.
4861 * mh-e.el (mh-visit-folder): If mh-visit-folder is used to visit
4862 the folder currently being visited (effectively doing a rescan)
4863 then mh-previous-window-config is erroneously set. The change
4866 * mh-customize.el (mh-index-show-hook): Remove unused variable.
4868 2003-02-28 Satyaki Das <satyaki@theforce.stanford.edu>
4870 * mh-e.el (mh-scan-folder): Call mh-reset-threads-and-narrowing
4871 only after the user has replied to question. This avoids premature
4872 clearing of the folder.
4873 (mh-rescan-folder, mh-visit-folder): Remove calls to
4874 mh-reset-threads-and-narrowing since it is now called in
4875 mh-scan-folder anyway.
4877 * mh-funcs.el (mh-sort-folder): Same as above.
4879 2003-02-26 Satyaki Das <satyaki@theforce.stanford.edu>
4881 * mh-alias.el (mh-alias-alist): Change initial value to a symbol,
4882 so that it is different from the empty list, which could also
4883 mean that there are no aliases.
4884 (mh-alias-reload-maybe): Change test so that empty alist of
4885 aliases is properly handled (closes SF #693859).
4887 2003-02-25 Satyaki Das <satyaki@theforce.stanford.edu>
4889 * mh-mime.el (mh-decode-message-header): The message header could
4890 be encoded, for instance the author's name could contain
4891 characters not in ASCII. This function will decode such header
4893 (mh-mm-inline-message): Use mh-decode-message-header.
4895 * mh-utils.el (mh-display-msg): Use mh-decode-message-header.
4896 (mh-message-number-width): Use mh-scan-prog instead of "scan".
4898 * mh-loaddefs.el: Regenerated.
4900 2003-02-24 Satyaki Das <satyaki@theforce.stanford.edu>
4902 * mh-utils.el (mh-truncate-log-buffer): Refine it so that the
4903 function will do the right thing even if called from a buffer
4904 other than mh-log-buffer.
4906 2003-02-22 Peter S Galbraith <psg@debian.org>
4908 * mh-alias.el (mh-alias-add-alias): Really fix SF #690216.
4909 This functions needs to strip brackets on standalone addresses as
4912 2003-02-21 Satyaki Das <satyaki@theforce.stanford.edu>
4914 * mh-xemacs-compat.el (replace-regexp-in-string): Remove the
4915 definition since it isn't used any more.
4917 2003-02-20 Peter S Galbraith <psg@debian.org>
4919 * mh-alias.el (mh-alias-which-file-has-alias): Bug fix. Needed to
4920 specify `noerror' on search.
4922 * mh-alias.el (mh-alias-suggest-alias): Add condition for input
4923 string being an email address in brackets. We need to strip out
4924 the brackets. (closes SF #690216)
4926 2003-02-20 Satyaki Das <satyaki@theforce.stanford.edu>
4928 * mh-pick.el (mh-search-folder): The function was setting the
4929 global value of the variables mh-current-folder and
4930 mh-previous-window-config. This can lead to problems in code which
4931 assumes that these variables are nil when we aren't in a folder
4932 buffer. So make the variables local before setting them.
4934 2003-02-19 Satyaki Das <satyaki@theforce.stanford.edu>
4936 * mh-mime.el (mh-mime-display): All the MIME display code has been
4937 wrapped in a condition-case so that if something goes wrong, the
4938 raw message will be displayed.
4940 * mh-funcs.el (mh-undo-folder): Comment out call to sit-for that
4943 * mh-e.el (mh-scan-folder): Messages marked for deletion or
4944 refiling weren't getting annotated properly. The change fixes
4946 (mh-process-or-undo-commands): Change prompt to reflect what
4947 really happens in the code.
4949 2003-02-18 Satyaki Das <satyaki@theforce.stanford.edu>
4951 * mh-comp.el (mh-folder-expand-at-point): The function
4952 mail-abbrev-complete-alias often returns nil. This had the
4953 unfortunate consequence of always causing an error. The change
4956 * mh-alias.el (mh-alias-canonicalize-suggestion): New function
4957 which obviates the our need replace-regexp-in-string.
4958 (mh-alias-suggest-alias): Use mh-alias-canonicalize-suggestion to
4959 eliminate calls to replace-regexp-in-string. This avoids problems
4962 * mh-utils.el (mh-notate): Handle the case when nil is passed as
4963 notation gracefully.
4964 (mh-speed-flists-active-p): New function that returns non-nil if
4965 flists is being used in the speedbar to update message counts.
4967 * mh-seq.el (mh-put-msg-in-seq): Fix a bug which made it
4968 impossible to add messages to the unseen sequence. Also adding
4969 messages to the unseen sequence will now update the speedbar
4970 message counts immediately.
4972 * mh-e.el (mh-get-new-mail, mh-process-commands)
4973 (mh-undefine-sequence): Update speedbar message counts, if the
4974 speedbar is active and is displaying message counts.
4975 (mh-delete-msg-from-seq): In addition to updating message counts,
4976 unhighlight the message so that interactively removing messages
4977 from the unseen sequence makes the bold highlight of unseen
4978 messages in the scan buffer go away.
4979 (mh-clear-text-properties): New function that removes all text
4980 properties from the current scan line.
4982 2003-02-15 Satyaki Das <satyaki@theforce.stanford.edu>
4984 * mh-utils.el (mh-face-display-function): Wrap call of
4985 insert-image in mh-funcall-if-exists. This avoids a compiler
4988 * mh-speed.el (mh-speed-flists): Weaken test a bit to avoid
4989 compiler warning in Emacs20.
4990 (mh-speedbar-change-expand-button-char): Wrap call of
4991 speedbar-insert-image-button-maybe in mh-funcall-if-exists. This
4992 function isn't present in the speedbar that ships with Emacs20, so
4993 calling it there causes an error.
4995 * mh-seq.el (mh-msg-is-in-seq): Adjust loop call a bit to avoid
4996 compiler warning in XEmacs. The XEmacs compiler should be improved
4997 so that such spurious warnings from builtin macros are suppressed.
4999 * mh-index.el (mh-index-search): Same as above.
5001 * mh-e.el (tool-bar-mode): The declaration is needed for Emacs20
5004 * mh-comp.el (mailabbrev): Try loading it any way. Some day XEmacs
5005 will get it and then MH-E will just use it.
5006 (tool-bar-mode, tool-bar-map): These declarations are needed for
5008 (mh-mail-abbrev-make-syntax-table, mh-folder-expand-at-point):
5009 Remove mh-mail-abbrev-make-syntax-table since mh-funcall-if-exists
5010 can be used instead.
5012 * mh-alias.el (require): Avoid autoloading functions that may not
5014 (mh-read-address, mh-alias-letter-expand-alias): Rewrite using
5015 mh-funcall-if-exists.
5017 2003-02-15 Satyaki Das <satyaki@theforce.stanford.edu>
5019 * mh-loaddefs.el: Regenerated.
5021 * mh-speed.el (mh-folder-speedbar-buttons, mh-speed-add-buttons)
5022 (mh-speed-toggle): Reuse markers instead of creating more of them.
5023 (mh-speed-flists-folder, mh-speed-flists): Add optional folder
5024 argument to mh-speed-flists so that message counts are updated
5025 only for that one folder.
5026 (mh-speed-parse-flists-output): If no change in counts then avoid
5029 * mh-index.el (mh-index-execute): Rewritten to use a temporary
5030 buffer that is not left behind.
5032 * mh-funcs.el (mh-store-buffer): Use mh-log-buffer instead of the
5033 special purpose *Store Output* buffer.
5035 2003-02-14 Satyaki Das <satyaki@theforce.stanford.edu>
5037 * mh-customize.el (mh-show-xface-face): Make it always be black
5038 foreground on a white background (the reverse of that can make
5039 some X-Face images look creepy).
5041 * mh-utils.el (mh-truncate-log-buffer): Modify the function to
5042 return the current size of mh-log-buffer. Also we are now a bit
5043 more careful in adding separators between consecutive messages.
5044 (mh-exec-cmd): Fix a bug where the log buffer would be
5045 displayed even if no error happened in the current command but
5046 the log buffer had messages from a previous error.
5048 * mh-mime.el (mh-mime-save-parts): Use mh-log-buffer to show
5051 * mh-alias.el (mh-alias-local-users): Add a space between parens.
5053 2003-02-14 Steve Youngs <youngs@xemacs.org>
5055 * mh-utils.el (mh-face-display-function): Call
5056 `x-face-xmas-wl-display-x-face' using `mh-funcall-if-exists'.
5058 * mh-xemacs-compat.el (replace-regexp-in-string): New.
5060 2003-02-13 Satyaki Das <satyaki@theforce.stanford.edu>
5062 * mh-utils.el (mh-log-buffer-lines): New variable that keeps
5063 track of the number of lines to keep in mh-log-buffer.
5064 (mh-truncate-log-buffer): New function that is used to make sure
5065 that the log buffer doesn't grow to unbounded size.
5066 (mh-exec-cmd, mh-exec-cmd-daemon, mh-handle-process-error): Use
5067 mh-truncate-log-buffer instead of erase-buffer to keep some
5068 number of previous log messages around (closes SF #685476).
5070 2003-02-13 Satyaki Das <satyaki@theforce.stanford.edu>
5072 * mh-e.el (tool-bar-mode): Declare it in XEmacs.
5073 (mh-folder-mode): Use mh-funcall-if-exists to call hl-line-mode.
5075 * mh-utils.el (mh-funcall-if-exists): New macro that calls a
5076 function only if it exists.
5077 (mh-logo-display, mh-defun-show-buffer): Use mh-funcall-if-exists
5078 to call the functions find-image and deactivate-mark.
5080 * mh-mime.el (mh-mime-cleanup, mh-small-image-p)
5081 (mh-mm-display-part): Use mh-funcall-if-exists to call the
5082 functions image-size and remove-images.
5084 * mh-comp.el (tool-bar-map, tool-bar-mode): Declare the variables
5086 (mh-folder-expand-at-point): Use mh-funcall-if-exists to call
5087 mail-abbrev-complete-alias if it exists.
5089 * mh-alias.el (mh-read-address): Use mh-funcall-if-exists for
5090 future extensibility.
5092 2003-02-13 Satyaki Das <satyaki@theforce.stanford.edu>
5094 * mh-utils.el (mh-logo-display): The function find-image is
5095 present only in GNU Emacs.
5096 (mh-defun-show-buffer): The function deactivate-mark is present
5098 (default-enable-multibyte-characters): Declare it in XEmacs to
5099 avoid compiler warning.
5100 (mh-face-display-function): Avoid inserting space if there isn't
5101 any Face or X-Face header field to display.
5103 * mh-seq.el (mh-thread-last-ancestor): Move declaration of
5104 variable before its first use to silence XEmacs warning.
5106 * mh-mime.el (default-enable-multibyte-characters, dots, type):
5107 Declare these in XEmacs to remove compiler warnings in XEmacs.
5108 (mh-mime-cleanup, mh-mm-display-part): Call remove-images only in
5110 (mh-small-image-p): Call image-size only in GNU Emacs.
5112 * mh-index.el (mh-mairix-next-result): Fix a bug where a quote
5114 (mh-swish++-regexp-builder): Remove the unused binding meta.
5116 * mh-e.el (mh-folder-size): Pass on an extra value to remove
5118 (mh-folder-mode): Surround calls to hl-line-mode and
5119 tool-bar-mode with mh-do-in-gnu-emacs since these functions
5120 aren't present in XEmacs.
5122 * mh-customize.el (mh-tool-bar-show-set, mh-tool-bar-letter-set)
5123 (mh-tool-bar-folder-set): These functions call tool-bar-*
5124 functions which are present only in GNU Emacs. So surround them
5125 with mh-do-in-gnu-emacs.
5127 * mh-comp.el (mh-letter-mode, mh-folder-expand-at-point): Only
5128 call these functions in GNU Emacs.
5129 (mail-abbrevs): Declare it in XEmacs.
5131 * mh-alias.el (mh-read-address): Call completing-read-multiple
5133 (mail-abbrevs): Declare it in XEmacs.
5134 (mh-alias-add-alias-to-file): Remove unused code.
5136 2003-02-14 Ville Skyttä <scop@xemacs.org>
5138 * mh-comp.el: Add autoloaded auto-mode-alist association.
5140 2003-02-13 Satyaki Das <satyaki@theforce.stanford.edu>
5142 * mh-utils.el (mh-face-display-function): Make the XEmacs part a
5145 2003-02-14 Steve Youngs <youngs@xemacs.org>
5147 * mh-customize.el (mh-show-xface-face): XEmacs doesn't have the
5148 ':inherit' keyword for defface, rewrite with sane defaults.
5150 * mh-utils.el (mh-face-display-function): Fix bug that was
5151 corrupting xface images when displayed with XEmacs' internal
5152 xface image support. Also make XEmacs honor 'mh-show-xface-face'
5153 when using internal xface image support.
5155 2003-02-12 Peter S Galbraith <psg@debian.org>
5157 * mh-comp.el (mh-modify-header-field): New function. To header
5158 FIELD add VALUE. If OVERWRITE-FLAG is non-nil then the old value,
5159 if present, is discarded. This is more flexible than before.
5160 (mh-insert-auto-fields): Use it. This and the new function are a
5161 courtesy of Satyaki. Thanks!
5163 * mh-customize.el (mh-auto-fields-list): Doc tweaks suggested by
5166 2003-02-12 Satyaki Das <satyaki@theforce.stanford.edu>
5168 * mh-comp.el (mh-folder-expand-at-point): Tweak the error
5169 message. Completion in the Fcc header field is only supported in
5172 2003-02-12 Peter S Galbraith <psg@debian.org>
5174 * mh-customize.el (mh-auto-fields-list): Reorder after
5175 `mh-identity-list' since it needs it to be defined. Move to
5176 mh-identity customization group.
5178 2003-02-11 Peter S Galbraith <psg@debian.org>
5180 * mh-customize.el (mh-insert-mail-followup-to-flag): Removed.
5182 (mh-insert-mail-followup-to-list): Removed. Obsolete. Use
5183 `mh-auto-fields-list' instead, which is a more general solution.
5184 (mh-auto-fields-list): New defcustom. Alist of addresses for
5185 which header lines are automatically inserted. Replaces
5186 `mh-insert-mail-followup-to-list'.
5188 * mh-comp.el (mh-insert-mail-followup-to): Removed. Obsolete.
5189 (mh-insert-auto-fields): New function. Insert custom fields if To
5190 or Cc match `mh-auto-fields-list', replacing
5191 mh-insert-mail-followup-to with a more general solution.
5192 (mh-compose-and-send-mail): Call mh-insert-auto-fields instead of
5193 mh-insert-mail-followup-to. Also don't call mh-insert-identity to
5194 insert default setting if mh-insert-auto-fields inserted an
5197 2003-02-11 Satyaki Das <satyaki@theforce.stanford.edu>
5199 * mh-utils.el (mh-show-xface-function): Try to load the external
5200 x-face library only if XEmacs doesn't have xface support.
5201 (mh-face-display-function): Renamed. Also handle various
5202 permutations of x-face and xface support in XEmacs better.
5204 * mh-customize.el (mh-show-use-xface-flag): Any emacs whose
5205 major version is greater than or equal to 21 supports display of
5206 X-Face and Face header fields.
5208 2003-02-11 Satyaki Das <satyaki@theforce.stanford.edu>
5210 * mh-utils.el (mh-do-in-gnu-emacs, mh-do-in-xemacs): Macros that
5211 execute code only in GNU Emacs and XEmacs respectively.
5212 (mh-emacs21-face-display-function): Refactor to make it slightly
5213 nicer. Get rid of compiler warnings in GNU Emacs by using the
5214 above macros. Also check for presence of xface feature (in XEmacs
5215 specific code) before trying to display X-Face header field image.
5217 2003-02-11 Steve Youngs <youngs@xemacs.org>
5219 * mh-customize.el (mh-show-use-xface-flag): If using XEmacs and
5220 can't find the external x-face pkg still enable X-Face images if
5221 feature 'xface is present.
5222 Update the doc string.
5224 * mh-utils.el (mh-emacs21-face-display-function): Make it work in
5226 (mh-show-xface-function): If using XEmacs without xface support,
5227 use x-face.el pkg. If using XEmacs with xface support, or Emacs
5228 21, use mh-emacs21-face-display-function.
5230 2003-02-11 Mark D. Baushke <mdb@gnu.org>
5232 * mh-customize.el (mh-invisible-header-fields): Add
5233 "X-Notes-Item:" which is generated by Lotus Notes Domino. See
5234 URL<http://www-12.lotus.com/ldd/doc/domino_notes/Rnext/help6_admin.nsf
5235 /f4b82fbb75e942a6852566ac0037f284/5eda03c647f879c285256c1d00396051
5236 ?OpenDocument&Highlight=0,x-notes-item> for details on how Domino
5237 users may disable (restore the default) generation of these headers.
5239 2003-02-10 Satyaki Das <satyaki@theforce.stanford.edu>
5241 * mh-comp.el (mh-folder-expand-at-point): Add function doc string
5242 and produce a nicer error message for Emacs versions that lack
5243 mail-abbrev-complete-alias.
5245 * mh-utils.el (mh-handle-process-error): Check doc fix.
5247 * mh-e.el (mh-folder-from-address): Same as above.
5249 2003-02-10 Peter S Galbraith <psg@debian.org>
5251 * mh-comp.el: require mailabbrev, except in XEmacs.
5252 (mh-mail-abbrev-make-syntax-table): New defmacro to call
5253 mail-abbrev-make-syntax-table introduced in Emacs21.
5254 (mh-folder-expand-at-point): Handle nested folders.
5255 All of the above was written by Satyaki. I just applied the patch
5258 2003-02-09 Satyaki Das <satyaki@theforce.stanford.edu>
5260 * mh-comp.el: Fixes to keep the byte compiler happy.
5262 * mh-customize.el (mh-invisible-header-fields): Modified to
5263 remove space after ":" in header field names.
5265 2003-02-09 Peter S Galbraith <psg@mixed.dyndns.org>
5267 * mh-comp.el (mh-letter-complete): Add completion for fcc lines.
5268 (mh-folder-expand-at-point): Do completion at point for folder
5269 name. Like `mh-alias-letter-expand-alias' for aliases, it doesn't
5270 work on XEmacs because it relies on `mail-abbrev-complete-alias'
5271 to do completion. Maybe Steve could update XEmacs' mailabbrev.el?
5273 2003-02-09 Peter S Galbraith <psg@debian.org>
5275 * mh-customize.el (mh-invisible-header-fields): Remove trailing
5276 space in "X-Face: " and "Face: " entries since those line often
5279 2003-02-08 Satyaki Das <satyaki@theforce.stanford.edu>
5281 * mh-utils.el (mh-emacs21-face-display-function): Use
5282 mh-show-xface-face to colorize X-Face image.
5284 * mh-customize.el (mh-invisible-header-fields): Add extra headers
5286 (mh-show-xface-face): Allow customization of the X-Face colors.
5288 2003-02-07 Satyaki Das <satyaki@theforce.stanford.edu>
5290 * mh-utils.el (mh-uncompface-executable, mh-uncompface): Remember
5291 the path of the uncompface executable so that we don't need to
5292 search for it every time.
5293 (mh-emacs21-face-display-function): If more than one X-Face (or
5294 Face) header field was present then the fields would get
5295 concatenated, leading to garbled output. The change only displays
5298 * mh-customize.el (mh-x-face-file): Change documentation since it
5299 can now be used to insert a Face header field.
5301 * mh-comp.el (mh-insert-x-face): Generalized to allow insertion
5302 of Face header field.
5304 2003-02-06 Bill Wohler <wohler@newt.com>
5306 * mh-utils.el (mh-emacs21-face-display-function): Updated
5307 docstring. It is a common mistake to refer to a header field as a
5308 header. The term header refers to the entire header while the term
5309 header field refers to a single field.
5311 * mh-customize.el (mh-show-use-xface-flag): Ditto.
5313 2003-02-06 Satyaki Das <satyaki@theforce.stanford.edu>
5315 * mh-utils.el (mh-show-xface-function): Modified to use
5316 mh-emacs21-face-display-function if we are running GNU Emacs 21.
5317 (mh-face-to-png): New function to convert a Face header to a png
5319 (mh-uncompface): New function which converts an X-Face header to
5321 (mh-icontopbm): New function that does the job of icontopbm.
5322 (mh-emacs21-face-display-function): New function that displays
5323 Face/X-Face image in GNU Emacs 21.
5324 (mh-show-xface): Modified to test if we are running in X.
5325 Otherwise face display is suppressed.
5327 * mh-customize.el (mh-show-use-xface-flag): Tweak it, now that
5328 MH-E supports face display natively on Emacs 21. Also remove the
5329 check for window-system since it doesn't belong in a customizable
5332 2003-02-06 Satyaki Das <satyaki@theforce.stanford.edu>
5334 * mh-utils.el (sendmail): Require it so that XEmacs can find
5336 (mh-mail-header-end): A substitute for mail-header-end that
5337 doesn't widen the buffer. This is essential to avoid problems when
5338 dealing with nested messages.
5339 (mh-in-header-p, mh-letter-header-font-lock)
5340 (mh-header-field-font-lock, mh-show-font-lock-fontify-region)
5341 (mh-show-unquote-From): Use mh-mail-header-end instead of
5344 * mh-mime.el (mh-decode-message-body): same as above (closes SF
5347 * mh-comp.el (mh-yank-cur-msg): same as above.
5349 2003-02-05 Satyaki Das <satyaki@theforce.stanford.edu>
5351 * mh-utils.el (mh-display-msg): Call mh-show-mode before invisible
5352 headers are cleaned. This means that any surviving X-Face header
5353 can be removed unconditionally in mh-clean-msg-header.
5354 (mh-clean-msg-header): Since the function is now called with a
5355 read-only buffer, make the buffer temporarily writable.
5357 * mh-mime.el (mh-mm-inline-message): Do X-Face display before
5358 invisible headers are removed.
5360 * mh-customize.el (mh-invisible-headers): Simplified since the
5361 X-Face header isn't treated specially any more.
5362 (mh-invisible-header-fields): Add Face: and X-Face: to list of
5365 * mh-mime.el (mh-mime-display): If body is empty the headers would
5366 be treated like the body. The change fixes this (closes SF #681162).
5367 (mh-mime-display): This change really fixes the above problem.
5369 2003-02-04 Satyaki Das <satyaki@theforce.stanford.edu>
5371 * mh-utils.el (mh-current-folder-name): Global variable that
5372 keeps track of current folder.
5373 (mh-normalize-folder-name): Substitute @ with
5374 mh-current-folder-name (closes SF #666774).
5375 (mh-prompt-for-folder): Bind mh-current-folder-name. Also
5376 invalidate cache if we are visiting a folder that wasn't found in
5377 the sub-folder cache. This is an indication that folders may have
5378 been created outside of MH-E and so the cache may be stale.
5380 2003-02-03 Satyaki Das <satyaki@theforce.stanford.edu>
5382 * mh-utils.el (mh-decode-content-transfer-encoded-message): Removed.
5383 (mh-display-msg): Remove the use of the above function.
5384 (mh-normalize-folder-name): Leading "/" characters were being
5385 lost. The change fixes this (closes SF #676890).
5387 * mh-mime.el (mh-decode-message-body): New function, factored out
5388 from mh-mime-display and enhanced, to decode message based on
5389 charset and content-transfer-encoding. This eliminates the need
5390 for the external mimencode (closes SF #674857).
5391 (mh-mime-display): Use mh-decode-message-body.
5393 * mh-e.el (mh-header-display): Don't need the binding since the
5394 variable isn't present any more.
5395 (mh-inc-folder): Avoid calling mh-show if point is not on a valid
5396 scan line (closes SF #678115).
5399 (mh-decode-content-transfer-encoded-message-flag): Removed.
5401 2003-02-03 Bill Wohler <wohler@newt.com>
5403 * import-emacs: MH-E now has its own directory in Emacs.
5405 * mh-e.el (mh-version): Set to 7.2+cvs.
5407 2003-02-03 Bill Wohler <wohler@newt.com>
5409 Released MH-E version 7.2.
5411 * MH-E-NEWS, README: Updated for release 7.2.
5413 * mh-e.el (Version, mh-version): Updated for release 7.2.
5415 2003-02-03 Bill Wohler <wohler@newt.com>
5417 * Makefile (dist): mkdir needs to happen *before* files are
5420 * MH-E-NEWS: Fixed some awkward verbiage.
5422 2003-02-02 Bill Wohler <wohler@newt.com>
5424 * mh-customize.el (mh-invisible-headers): Surround regexp-opt
5425 expression in parens to avoid problems viewing certain messages.
5427 2003-01-30 Satyaki Das <satyaki@theforce.stanford.edu>
5429 * mh-speed.el (mh-speed-flists): Search for flists in mh-progs.
5430 The original was inadvertently searching for flists in the user's
5433 2003-01-27 Bill Wohler <wohler@newt.com>
5435 * mh-customize.el (mh-default-folder-must-exist-flag): Changed
5436 default to t according to the principle of least surprise.
5438 2003-01-26 Bill Wohler <wohler@newt.com>
5440 * mh-utils.el: Checkdoc fixes.
5442 * mh-pick.el (mh-do-search, mh-search-folder): Checkdoc fixes.
5444 * mh-loaddefs.el: Regenerated (lm-verify fixes).
5446 * mh-index.el (mh-mairix-next-result): Checkdoc fixes.
5448 * mh-alias.el: lm-verify fix.
5450 * Makefile (MH-E-SRC): Added ChangeLog, now that Emacs has a
5451 lisp/mh-e directory.
5452 (MH-E-ETC-ETC): Removed ChangeLog.
5453 (dist): Moved creation of mail directory next to copy of files
5454 into mail directory.
5455 (install-emacs): Copy $(MH-E-SRC) into new directory
5456 $(EMACS_HOME/lisp/mh-e.
5457 (MH-E-SRC): Moved ChangeLog into new variable MH-E-OTHERS and
5458 include MH-E-LOADDEFS there too.
5459 (mh-loaddefs.el): Added lines so that lm-verify passes.
5460 (dist, install-emacs): Use MH-E-OTHERS instead of MH-E-LOADDEFS.
5462 2003-01-26 Jeffrey C Honig <jch@honig.net>
5464 * mh-comp.el (mh-tidy-draft-buffer, mh-compose-and-send-mail):
5465 Rename mh-kill-draft-hook to mh-tidy-draft-buffer.
5467 2003-01-25 Jeffrey C Honig <jch@honig.net>
5469 * mh-utils.el (mh-exec-cmd, mh-exec-cmd-daemon)
5470 (mh-process-daemon): Use mh-log-buffer for the output of commands
5473 * mh-utils.el (mh-temp-folders-buffer): Sequences and folders
5474 lose the -temp from their buffer names as they are interesting to
5477 * mh-seq.el (mh-list-sequences): New name, mh-sequences-buffer as
5478 it is intended to be interesting to the user.
5480 * mh-funcs.el (mh-list-folders): New name, mh-folders-buffer as it
5481 is intended to be interesting to the user.
5483 * mh-comp.el (mh-check-whom, mh-compose-and-send-mail): Use
5484 mh-recipients-buffer constant. Add a kill buffer hook to delete
5485 the recipients buffer when a draft buffer is killed.
5487 2003-01-25 Satyaki Das <satyaki@theforce.stanford.edu>
5489 * mh-customize.el (mh-customize): New interactive argument
5490 deletes other windows.
5491 (mh-tool-bar-show-set, mh-tool-bar-letter-set)
5492 (mh-tool-bar-folder-set): Modified so that clicking the customize
5493 and help buttons deletes the other windows in the frame.
5495 * mh-mime.el (mh-mm-inline-message): Remove unused code.
5497 * mh-seq.el (mh-notate-deleted-and-refiled): Fix a small bug where
5498 the wrong notation was being used.
5499 (mh-toggle-threads): The function had a bug if you did the
5500 following starting from an unthreaded wide folder:
5501 (1) Create a sequence with S p
5502 (2) Narrow to new sequence with S n
5503 (3) Thread narrowed folder with T t
5504 (4) Kill sequence with S k
5505 (5) Unthread narrowed folder with T t
5506 At this point we would have an empty folder. The change fixes
5508 (mh-toggle-threads): Fix documentation.
5510 * mh-customize.el (mh-invisible-header-fields): Add
5511 X-MHE-Checksum to invisible headers.
5513 * mh-comp.el (mh-insert-x-mailer): Slightly more informative
5516 2003-01-24 Satyaki Das <satyaki@theforce.stanford.edu>
5518 * mh-e.el (mh-header-display): Modified so that quoted-printable
5519 or base64 encoded messages are left untouched.
5521 * mh-utils.el (mh-decode-content-transfer-encoded-message): Munge
5522 the Content-Transfer-Encoding header so that the MIME decoding
5523 routines of Gnus doesn't get confused.
5524 (mh-display-msg): Use insert-file-contents-literally so that
5525 display will work for non-ascii.
5527 * mh-mime.el (mh-mime-display): Use charset info to decode
5528 message file (closes SF #655123).
5530 2003-01-24 Bill Wohler <wohler@newt.com>
5532 * mh-alias.el (mh-alias-add-alias-to-file): Removed period from
5533 error message and added parens around error function.
5535 2003-01-24 Satyaki Das <satyaki@theforce.stanford.edu>
5537 * mh-customize.el (mh-decode-quoted-printable-flag): Removed.
5538 (mh-decode-content-transfer-encoded-message-flag): This replaces
5539 mh-decode-quoted-printable-flag.
5541 * mh-utils.el (mh-decode-content-transfer-encoded-message): New
5542 function which handles messages that are encoded as base64 or
5543 quoted-printable (closes SF #674190).
5544 (mh-decode-quoted-printable): Removed.
5545 (mh-display-msg): Use mh-decode-content-transfer-encoded-message
5546 instead of mh-decode-quoted-printable.
5548 2003-01-23 Satyaki Das <satyaki@theforce.stanford.edu>
5550 * mh-seq.el (mh-thread-generate-scan-lines): Fix a little bug
5551 that would occasionally cause angles ('<' and '>') to appear at
5554 2003-01-21 Satyaki Das <satyaki@theforce.stanford.edu>
5556 * mh-seq.el (mh-notate-cur): Enable overlay arrow display in text
5559 * mh-e.el (mh-folder-mode): Initialize overlay-arrow-string so
5560 that a '>' is displayed in text mode.
5562 2003-01-20 Satyaki Das <satyaki@theforce.stanford.edu>
5564 * mh-utils.el (mh-scan-msg-overflow-regexp): Change the variable
5565 so that a space is always maintained in the beginning of the scan
5568 * mh-seq.el (mh-notate-seq, mh-notate-cur): Make the functions
5569 faster by cutting down on the use of mh-goto-msg.
5570 (mh-toggle-threads): Add call to mh-notate-cur, since inserting
5571 the folder names in a search results folder screws up the
5572 location of the overlay arrow.
5574 * mh-index.el (mh-index-delete-folder-headers): Position the
5575 point on a message line if possible.
5577 * mh-funcs.el (mh-copy-msg): Use the mh-iterate macro to make the
5580 * mh-e.el (mh-scan-folder): Reuse mh-notate-deleted-and-refiled.
5582 * mh-loaddefs.el: Regenerated.
5584 * mh-utils.el (mh-add-msgs-to-seq): Add a new parameter that
5585 suppresses the annotation of the sequence since it is
5588 * mh-seq.el (mh-delete-seq): Speed up the part of the function
5589 that removes the sequence notation.
5590 (mh-put-msg-in-seq, mh-notate-deleted-and-refiled): Use
5591 mh-iterate-on-messages-in-region to make the function fasters when
5592 operating on regions. The key idea is to loop over the folder
5593 buffer exactly once and do all annotations. The existing algo
5594 would walk over the buffer multiple times thereby slowing things
5596 (mh-iterate-on-messages-in-region): Added an extra parameter which
5597 is bound to the message index as the loop is executed.
5598 (mh-region-to-msg-list, mh-thread-delete, mh-thread-refile): Use
5599 the new mh-iterate-on-messages-in-region macro.
5601 * mh-e.el (mh-delete-msg-no-motion, mh-refile-msg, mh-undo): Same
5603 (mh-notate-user-sequences): Change algorithm to make notating of
5604 user sequences fast.
5606 2003-01-19 Satyaki Das <satyaki@theforce.stanford.edu>
5608 * mh-logo.xpm: New image file that contains the MH-E logo.
5609 Change foreground color to the blue in the MH-E logo.
5611 * Makefile (MH-E-IMG): Add mh-logo.xpm to list of image files.
5613 * mh-utils.el (mh-show-buffer-mode-line-buffer-id): Adjust it to
5614 keep space in the beginning for the logo.
5615 (mh-logo-cache): New variable that caches the logo image file
5617 (mh-logo-display): Display the MH-E logo on the mode line.
5618 (mh-display-msg): Display logo in mh-show-mode.
5620 * mh-e.el (mh-make-folder-mode-line): Display logo in
5623 * mh-comp.el (mh-compose-and-send-mail): Display logo in
5626 * mh-loaddefs.el: Regenerated.
5628 * mh-seq.el (mh-iterate-on-messages-in-region): New macro to
5629 iterate on all messages in a region.
5630 (mh-region-to-msg-list): Simplified since it uses
5631 mh-iterate-on-messages-in-region now.
5633 * mh-e.el (mh-delete-msg, mh-refile-msg): Change interactive spec
5634 to pass the region that is to be deleted when appropriate.
5635 (mh-delete-msg-no-motion, mh-refile-msg, mh-undo): Operate on
5636 regions directly without creating the list of messages to be
5638 (mh-delete-a-msg, mh-refile-a-msg, mh-undo-msg): The msg
5639 parameter in these functions can now be nil. If so, the current
5640 message is deleted, refiled or undone respectively. Avoids the
5641 use of mh-goto-msg in this case and speeds up operations on
5642 regions quite a bit.
5644 2003-01-19 Peter S Galbraith <psg@debian.org>
5646 * mh-alias.el (mh-read-address): Bug Fix. In XEmacs and Emacs20,
5647 it would always prompt using "To: " instead of using the command
5648 argument (closes SF #670913).
5650 2003-01-19 Satyaki Das <satyaki@theforce.stanford.edu>
5652 * mh-utils.el (mh-folder-completion-function): If there is a
5653 +foo/bar folder and the user types foo//bar then the completion
5654 function would say a match happened without showing the
5655 normalized folder name. This change fixes that.
5657 2003-01-18 Satyaki Das <satyaki@theforce.stanford.edu>
5659 * mh-e.el (mh-rmail): Modified so that new and unseen messages
5660 are shown (closes SF #667542).
5662 2003-01-17 Satyaki Das <satyaki@theforce.stanford.edu>
5664 * mh-index.el (mh-index-generate-pretty-name): Generate nicer
5665 names. In particular all '-' characters are removed.
5667 2003-01-16 Satyaki Das <satyaki@theforce.stanford.edu>
5669 * mh-customize.el (mh-index-program): Documentation fix.
5671 * mh-loaddefs.el: Regenerated.
5673 * mh-customize.el (mh-index-program): Add choices for mairix and
5676 * mh-index.el (mh-indexer-choices): Add search interfaces for
5678 (mh-index-search): Add links for mairix and pick.
5679 (mh-index-pick-folder, mh-pick-binary): Variables needed to
5680 implement pick support.
5681 (mh-pick-execute-search, mh-pick-next-result): New functions to
5682 implement pick support.
5683 (mh-mairix-binary, mh-mairix-directory, mh-mairix-folder): New
5684 variables for mairix support.
5685 (mh-mairix-execute-search, mh-mairix-next-result)
5686 (mh-mairix-regexp-builder, mh-mairix-convert-to-sop*): New
5687 functions for mairix.
5689 * mh-funcs.el (mh-kill-folder): Move message to the end.
5691 * mh-e.el (mh-folder-mode): Make overlay-arrow-position and
5692 overlay-arrow-string local variables so that the arrow will
5693 remain even if some other folder is visited.
5694 (mh-remove-cur-notation, mh-remove-all-notation): The test isn't
5695 required any more since overlay-arrow-position is local.
5696 (mh-goto-cur-msg): Remove overlay arrow if current message
5699 * mh-seq.el (mh-notate-cur): Don't need to set
5700 overlay-arrow-string any more since it is local and has been set
5703 2003-01-15 Satyaki Das <satyaki@theforce.stanford.edu>
5705 * mh-speed.el (mh-speed-current-folder): Keep track of current
5706 folder when flists is called.
5707 (mh-speed-flists, mh-speed-parse-flists-output): Try to avoid
5708 ambiguity when folders are present with + at the end of the name.
5709 Unfortunately it can't always be avoided.
5711 * mh-e.el (mh-folder-size): Remove the unnecessary error check.
5712 (mh-parse-flist-output-line): Add extra argument which
5713 occasionally avoid problems with folder names that end with '+'.
5715 * mh-utils.el (mh-sub-folders-actual): Fix the folder name
5716 parsing so that it doesn't get confused by trailing '+' chars in
5719 2003-01-14 Satyaki Das <satyaki@theforce.stanford.edu>
5721 * mh-utils.el (mh-normalize-folder-name): Enhanced so that it can
5722 now handle ".." and "." correctly during folder name completion.
5723 (mh-normalize-folder-name): Avoid error in boundary condition
5724 where the folder string is empty.
5726 2003-01-14 Mark D. Baushke <mdb@gnu.org>
5728 * mh-e.el (mh-visit-folder): Pass `current-prefix-arg' to
5729 the `mh-read-msg-range' function as the optional
5732 2003-01-14 Satyaki Das <satyaki@theforce.stanford.edu>
5734 * mh-utils.el (mh-normalize-folder-name): New function that
5735 normalizes folder names.
5736 (mh-sub-folders): Use mh-normalize-folder-name. Also the function
5737 has been modified so that a trailing slash is only added if the
5738 folder potentially has subfolders.
5739 (mh-sub-folders-actual): Simplified since the folder has already
5740 been normalized in mh-sub-folders.
5741 (mh-remove-from-sub-folders-cache): Modified so that the cached
5742 results of two of the folders ancestors are invalidated.
5743 (mh-folder-completion-map): Ugly hack to make the error go away
5744 when minibuffer-complete-word is called.
5745 (mh-folder-completion-function): The completion function will now
5746 be more selective in adding '/' at the end of completed folder
5748 (mh-folder-completing-read): The folder name is normalized before
5749 return. The minibuffer-local-completion-map is shadowed to avoid
5750 error with SPC (bound to minibuffer-complete-word). We really
5751 need a better solution.
5753 2003-01-13 Bill Wohler <wohler@newt.com>
5755 * mh-seq.el: Edited comment and docstring text to conform with RFC
5756 2822 terminology. Message-ID is the header field. It contains a
5759 2003-01-13 Satyaki Das <satyaki@theforce.stanford.edu>
5761 * mh-utils.el (mh-sub-folders): Add an argument that returns
5762 sub-folders with a / character appended at the end.
5763 (mh-folder-completion-function): Modify the function so that one
5764 tab is now sufficient to complete the folder name and add a
5766 (mh-folder-completing-read): Remove the trailing / that the
5767 completion function now adds to the folder name. Also multiple /
5768 characters in the folder input are removed. So if the user inputs
5769 +foo///bar//baz///// then that will be converted to +foo/bar/baz.
5770 This will improve the performance of caching.
5772 * mh-seq.el (mh-notate-cur): Check that a valid current message
5773 exists before trying to notate (closes SF #667331).
5774 (mh-message-id-regexp): New variable to store regexp to recognize
5776 (mh-thread-generate): Use mh-message-id-regexp to filter out non
5777 message-id's from the References: header.
5779 2003-01-12 Satyaki Das <satyaki@theforce.stanford.edu>
5781 * mh-seq.el (mh-notate-cur): Disable overlay-arrow display if we
5782 aren't on a graphic display.
5784 2003-01-11 Satyaki Das <satyaki@theforce.stanford.edu>
5786 * mh-seq.el (mh-notate-cur): New function to notate the current
5787 message. The marker in the fringe is updated too.
5788 (mh-narrow-to-seq, mh-widen, mh-thread-inc, mh-thread-folder): Use
5789 the specialized function mh-notate-cur instead of mh-notate-seq.
5791 * mh-e.el (mh-arrow-marker): New buffer local variable to store
5792 the position where the marker in the fringe is going to be
5793 displayed (closes SF #664824).
5794 (mh-folder-mode): Create a marker for the fringe.
5795 (mh-update-sequences, mh-get-new-mail, mh-goto-cur-msg): Call the
5796 specialized function mh-notate-cur instead of mh-notate-seq or
5798 (mh-remove-cur-notation, mh-remove-all-notation): Reset the
5799 overlay-arrow-position if needed.
5801 * mh-loaddefs.el: Regenerated.
5803 2003-01-10 Satyaki Das <satyaki@theforce.stanford.edu>
5805 * mh-utils.el (mh-remove-from-sub-folders-cache): Modified so that
5806 creating nested folders doesn't produce inconsistent results.
5807 (mh-prompt-for-folder): Remove call of mh-folder-list-change-hook.
5809 * mh-funcs.el (mh-kill-folder): Don't ask for confirmation if
5810 called on a folder holding index search results. Also the now
5811 removed mh-folder-list-change-hook is called no more.
5813 * mh-customize.el (mh-auto-folder-collect-flag)
5814 (mh-folder-list-change-hook): Removed.
5816 * mh-loaddefs.el: Regenerated.
5818 2003-01-10 Bill Wohler <wohler@newt.com>
5820 * mh-customize.el (mh-default-folder-must-exist-flag): New
5821 variable to suppress suggested folder if the folder doesn't
5822 already exist (closes SF #657096).
5823 (mh-default-folder-list): New variable that
5824 holds mapping between an address and the desired folder for
5825 filing (closes SF #657096).
5826 (mh-default-folder-prefix, mh-default-folder-must-exist-flag): In
5827 docstring, refer to documentation for mh-prompt-for-refile-folder
5828 and mh-folder-from-address.
5829 (mh-highlight-citation-p, mh-compose-insertion)
5830 (mh-insert-mail-followup-to-list, mh-index-program)
5831 (mh-identity-default): Fixed case of tags.
5833 * mh-e.el (mh-folder-from-address): Use new variable
5834 mh-default-folder-must-exist-flag to return nil if this variable
5835 is t and the folder doesn't already exist. In addition, can now
5836 look up a default folder in the new variable
5837 mh-default-folder-list (closes SF #657096).
5838 (mh-prompt-for-refile-folder): In docstring, refer to
5839 documentation in mh-folder-from-address.
5841 * mh-index.el (mh-swish-execute-search): Changed \..* to \\..* in
5842 the FileRules filename in the sample config file. Otherwise, the
5843 users don't see the backslash at all, and no files are indexed!
5844 (closes SF #665888).
5846 2003-01-10 Satyaki Das <satyaki@theforce.stanford.edu>
5848 * mh-seq.el (mh-thread-folder): Get headers for exactly the
5849 messages that are present. If only messages 1-10 and 3800-3900
5850 are being shown then we will now scan exactly those messages and
5851 not the full range from 1-3900 as was being done earlier.
5852 (mh-toggle-threads): When converting from threaded to normal view
5853 only the messages present in the buffer are scanned. Earlier all
5854 messages from the minimum to the maximum would be scanned (closes
5857 * mh-pick.el (mh-search-folder): Fix typo.
5858 (mh-pick-do-search): Fix bug from cut and paste. Also set window
5861 * mh-utils.el (mh-prompt-for-folder): Add new argument to allow
5862 it to accept + as a folder name. This allows the user to search
5863 all folders when "Fs" is used.
5865 * mh-pick.el (mh-search-folder): Fix interactive spec of function.
5866 (mh-pick-do-search): Rewritten to call pick in one go. This will
5867 make adding pick as a default index search program easier. Also
5868 pick now accepts the same query syntax as the index search
5869 programs (closes SF #664816).
5870 (mh-next-pick-field): Removed.
5871 (mh-pick-parse-search-buffer): New function to parse the search
5873 (mh-pick-construct-regexp, mh-pick-regexp-builder): New function
5874 to produce a pick query from the parsed representation.
5876 * mh-index.el (mh-index-do-search): Refactor the search pattern
5877 parser into a new function and use that instead.
5879 * mh-loaddefs.el: Regenerated.
5881 2003-01-10 Satyaki Das <satyaki@theforce.stanford.edu>
5883 * mh-loaddefs.el: Regenerated.
5885 * mh-utils.el (mh-remove-from-sub-folders-cache)
5886 (mh-prompt-for-folder): Replace mh-update-sub-folders-cache with
5887 mh-remove-from-sub-folders-cache.
5888 (mh-exec-cmd-daemon): Mention set-process-filter in documentation.
5890 * mh-pick.el (mh-searching-function): New buffer local variable
5891 that keeps track of the default searching function to be used.
5892 (mh-pick-mode): Make mh-searching-function buffer local.
5893 (mh-search-folder): Set mh-searching-function to use pick.
5894 (mh-search-folder, mh-pick-menu, mh-pick-mode-help-messages)
5895 (mh-pick-mode, mh-do-pick-search, mh-pick-do-search): Rename
5896 mh-do-pick-search to mh-pick-do-search. But keep
5897 mh-do-pick-search as a deprecated function.
5898 (mh-do-search): New interactive function that performs the
5900 (mh-pick-mode-map): Update keymap.
5902 * mh-index.el (mh-index-search): Set mh-searching-function to do
5904 (mh-index-new-folder): Replace mh-update-sub-folders-cache with
5905 mh-remover-from-sub-folders-cache.
5907 * mh-funcs.el (mh-kill-folder): Same as above.
5909 * mh-index.el (mh-index-evaluate, mh-swish++-regexp-builder):
5912 * mh-customize.el: Fixes to make byte compiler in CVS Emacs
5915 2003-01-09 Bill Wohler <wohler@newt.com>
5917 * mh-e.el (mh-folder-from-address): New function that proposes the
5918 name of a folder with an alias for the address in the current message.
5919 (mh-prompt-for-refile-folder): Use it (closes SF #657096).
5921 * mh-customize.el (mh-default-folder-prefix): New variable used by
5922 mh-folder-from-address.
5923 (mh-invisible-header-fields): Edited docstring.
5925 * mh-alias.el (mh-alias-address-to-alias): Added ;;;###mh-autoload
5926 cookie (used by mh-folder-from-address in mh-e.el). Edited text in
5929 * mh-utils.el: Provided naming conventions for buffer and buffer
5931 (mh-temp-folders-buffer): Renamed buffer to " *mh-folders*".
5932 (mh-temp-sequences-buffer): Renamed buffer to " *mh-sequences*".
5933 (mh-info-buffer): Renamed from mh-temp-info-buffer.
5934 (mh-log-buffer): New buffer variable to hold name of "*MH-E Log*"
5935 buffer which is expected to be used for the output of MH commands.
5936 Perhaps we always create this buffer at initialization and append
5937 to it rather than erase it each time?
5939 * mh-e.el (mh-quit): Loop over all buffers and delete MH-E
5940 temporary and working buffers. As long as the buffer naming
5941 conventions are followed, new buffers will be automatically
5943 (mh-version): Renamed mh-temp-info-buffer to mh-info-buffer.
5945 * mh-comp.el (mh-insert-x-mailer): Renamed mh-temp-info-buffer to
5948 2003-01-09 Satyaki Das <satyaki@theforce.stanford.edu>
5950 * mh-e.el (mh-folder-size): If the user doesn't have a
5951 Unseen-Sequence definition in .mh_profile then an error was
5952 produced. This change fixes that.
5954 * mh-seq.el (mh-thread-generate): Replace the *mh-thread* buffer
5955 with a temporary buffer which is cleaned up when the function
5958 * mh-e.el (mh-prompt-for-refile-folder): New function which
5959 refactors out the intelligent folder guessing code from
5961 (mh-refile-msg): Use mh-prompt-for-refile-folder.
5963 * mh-seq.el (mh-thread-refile): Use mh-prompt-for-refile-folder to
5964 do the same intelligent destination folder guessing as
5965 mh-refile-msg (closes SF #664829).
5967 * mh-utils.el (mh-folder-list, mh-make-folder-list-process)
5968 (mh-folder-list-temp, mh-folder-list-partial-line)
5969 (mh-set-folder-list): Removed.
5970 (mh-sub-folders-cache, mh-sub-folders, mh-sub-folders-actual):
5971 Moved over from mh-speed.el to implement hierarchical completion.
5972 (mh-update-sub-folders-cache): Utility function called when
5973 new folders are created or folders are removed.
5974 (mh-folder-completion-function): New function is the folder name
5975 completion function used in completing-read.
5976 (mh-folder-completing-read): A thin wrapper function that is used
5977 instead of completing-read directly. In the future we might want
5978 to allow the user a customizable variable which will turn off
5979 folders based completion.
5980 (mh-prompt-for-folder): Use mh-folder-completing-read to read in
5981 the folder name with hierarchical completion (closes SF #664821).
5983 * mh-speed.el (mh-speed-folders, mh-speed-folders-cache)
5984 (mh-speed-folders-actual): Moved to mh-utils.el as mh-sub-folders,
5985 mh-sub-folders-cache and mh-sub-folders-actual respectively.
5986 (mh-speed-invalidate-map, mh-speed-invalidate-map)
5987 (mh-speed-add-folder): Use the new names.
5989 * mh-funcs.el (mh-kill-folder): Remove code that used to update
5990 mh-folder-list which is no longer present. Instead
5991 mh-update-sub-folders-cache is called.
5993 * mh-index.el (mh-index-new-folder): Same as above.
5995 2003-01-08 Satyaki Das <satyaki@theforce.stanford.edu>
5997 * mh-utils.el (mh-exec-cmd-daemon): An argument was added which
5998 controls what is done with the process output.
6000 * mh-funcs.el (mh-kill-folder): Use mh-previous-window-config to
6001 restore window configuration. Also the call to mh-exec-cmd-daemon
6002 only displays output if an error happened (closes SF #664828).
6003 (mh-rmf-daemon): Check rmf output and display it only if
6004 something went wrong.
6005 (mh-print-msg): Pass in nil argument to mh-exec-cmd-daemon.
6007 * mh-comp.el (mh-redistribute, mh-send-letter): Pass in nil
6008 argument to mh-exec-cmd-daemon so that the functions will behave
6011 * mh-pick.el (mh-search-folder): The current window config is
6013 (mh-make-pick-template): Make the message headers read-only.
6014 (mh-pick-mode-help-messages): Update help message.
6015 (mh-do-pick-search): Fix problem when buffer isn't showing any
6017 (mh-next-pick-field): Use buffer-substring-no-properties is
6019 (mh-pick-mode-map): Add key bindings (partially addresses
6022 * mh-index.el (mh-indexer-choices): Add a new field for each
6023 index program choice. If it is non-nil then it is the name of a
6024 function that given a lisp expression to search for generates a
6025 pattern that is acceptable to the search program.
6026 (mh-index-regexp-builder): New variable that stores the function
6027 to be used to convert from the lisp expression syntax to
6028 something that the search program understands.
6029 (mh-index-generate-pretty-name): Generalized so that it can take
6030 a list of strings as input.
6031 (mh-index-search): Modified so that if the configured program has
6032 a corresponding regexp-builder then a search buffer like pick
6033 search is produced. Otherwise the previous behavior is maintained.
6034 (mh-index-do-search): New interactive function that takes the
6035 contents of the search buffer, generates an appropriate query and
6036 produces the search results buffer by calling mh-index-search.
6037 (mh-replace-string, mh-index-parse-search-regexp)
6038 (mh-index-add-implicit-ops, mh-index-evaluate): New functions
6039 which parses the infix search expression that the user enters. A
6040 parse tree from which queries for different search programs can
6041 be produced is produced.
6042 (mh-swish++-regexp-builder, mh-swish++-print-regexp): Takes the
6043 internal form of the query and produces input suitable for
6046 * mh-loaddefs.el: Regenerated.
6048 2003-01-08 Bill Wohler <wohler@newt.com>
6050 * Makefile (emacs-logs): New target for viewing CVS Emacs logs.
6051 Useful to see if an Emacs developer has changed MH-E.
6053 * MH-E-NEWS: Fixed case of MH-E in the "Changes" title.
6055 * mh-utils.el (mh-temp-info-buffer): New variable to hold name of
6056 buffer that contains version info.
6058 * mh-e.el (mh-version): Use mh-temp-info-buffer instead of
6059 mh-temp-buffer since version information was getting clobbered by
6060 the aliasing code before it could be seen (closes SF #664467).
6061 (mh-quit): Delete mh-temp-info-buffer.
6063 * mh-comp.el (mh-insert-x-mailer): Use mh-temp-info-buffer to find
6064 version info instead of mh-temp-buffer. You kind of need this
6067 2003-01-07 Bill Wohler <wohler@newt.com>
6069 * mh-e.el (Version, mh-version): Set to 7.1+cvs.
6071 2003-01-07 Bill Wohler <wohler@newt.com>
6073 Released MH-E version 7.1.
6075 * MH-E-NEWS, README: Updated for release 7.1.
6077 * mh-e.el (Version, mh-version): Updated for release 7.1.
6079 2003-01-07 Bill Wohler <wohler@newt.com>
6081 * mh-customize.el (mh-auto-folder-collect-flag,
6082 mh-alias-system-aliases, mh-alias-insert-file): Edited docstrings.
6084 * Makefile (MH-E-IMG): Added alias.pbm and alias.xpm.
6086 * mh-alias.el (mh-alias-insert-file, mh-alias-add-alias): Fixed
6089 2003-01-07 Satyaki Das <satyaki@theforce.stanford.edu>
6091 * mh-utils.el (mh-search-from-end): New function that is used to
6092 replace our usage of the CL function search.
6093 (font-lock): The library is loaded to avoid compilation warning
6096 * mh-speed.el (mh-speed-goto-folder, mh-speed-add-folder)
6097 (mh-speed-extract-folder-name, mh-speed-invalidate-map): Use
6098 mh-search-from-end instead of search.
6100 * mh-seq.el (mh-thread-remove-parent-link): Use loop instead of
6102 (mh-thread-process-in-reply-to): Use mh-search-from-end instead
6105 * mh-index.el (mh-md5-parser): Fix name of function.
6106 (mh-index-update-single-msg, mh-index-update-maps): Avoid using
6107 destructuring-bind since Emacs-20.7 can't handle this particular
6109 (mh-namazu-next-result): Use mh-search-from-end instead of
6112 * mh-e.el (recursive-load-depth-limit): Add a defvar since CVS
6113 emacs which doesn't have the variable defined causes a compiler
6115 (mh-refile-a-msg): Rewritten to avoid using pushnew.
6116 (mh-undo-msg): Use loop instead of remove-if.
6118 * mh-comp.el (mh-show-buffer-message-number): Use
6119 mh-search-from-end instead of search.
6121 2003-01-01 Satyaki Das <satyaki@theforce.stanford.edu>
6123 * mh-e.el (mh-visit-folder): Modified so that if RANGE is nil then
6124 all messages are displayed. Documentation modified so that this is
6126 (mh-visit-folder): Really fix it this time.
6128 2003-01-01 Mark D. Baushke <mdb@gnu.org>
6130 * mh-alias.el (mh-alias-from-has-no-alias-p): Needs the
6131 mh-autoload comment or mh-customize may have problems finding the
6134 * mh-loaddefs.el: Regenerated.
6136 2002-12-28 Satyaki Das <satyaki@theforce.stanford.edu>
6138 * mh-index.el (mh-namazu-execute-search): Fix bug in documentation.
6140 2002-12-28 Bill Wohler <wohler@newt.com>
6142 * mh-comp.el (mh-letter-mode): Mention mh-compose-insertion
6143 variable in docstring, explain how to expand directives, and
6144 don't mention mh-mhn-compose-insertion which isn't used directly
6146 (mh-send-letter): Mention that X-Mailer and X-Face are inserted
6147 automatically so that a user isn't tempted to do so himself in
6148 mh-before-send-letter-hook.
6149 (mh-insert-letter): Use "variable" prefix for mh-invisible-headers
6150 now that we have both a function and a variable. Clarified
6153 2002-12-26 Satyaki Das <satyaki@theforce.stanford.edu>
6155 * mh-utils.el (mh-show-xface-function): Only load x-face-e21 if
6156 the emacs is not XEmacs.
6158 * mh-index.el (mh-index-new-folder): The folder created should
6159 always be added to mh-folder-list. Otherwise folder name
6160 completion doesn't find the new folder created.
6162 2002-12-24 Satyaki Das <satyaki@theforce.stanford.edu>
6164 * mh-customize.el (mh-clean-message-header-flag)
6165 (mh-visible-headers, mh-invisible-headers)
6166 (mh-invisible-header-fields-set): Reworded to satisfy checkdoc.
6168 * mh-loaddefs.el: Regenerated.
6170 * mh-e.el (mh-inc-folder, mh-visit-folder, mh-read-msg-range):
6171 Handle nil value of mh-large-folder properly.
6173 * mh-customize.el (mh-tool-bar-show-set, mh-tool-bar-letter-set)
6174 (mh-tool-bar-folder-set, mh-tool-bar-folder-buttons)
6175 (mh-invisible-headers, mh-invisible-header-fields-set): Checkdoc
6177 (mh-large-folder): Updated to allow for infinity. If
6178 mh-large-folder is nil then all folders are deemed small.
6180 2002-12-23 Satyaki Das <satyaki@theforce.stanford.edu>
6182 * mh-e.el (mh-inc-folder, mh-visit-folder): Emit a message if
6183 threading was suppressed because the number of messages exceed
6186 2002-12-23 Peter S Galbraith <psg@debian.org>
6188 * mh-utils.el (mh-invisible-headers): Deleted. Moved to
6191 * mh-customize.el (mh-invisible-header-fields): New
6192 defcustom. Simple user interface to change mh-invisible-headers.
6193 (mh-invisible-header-fields-set): New function called when
6194 mh-invisible-header-fields is set.
6195 (mh-invisible-headers): New function. Does the actual work of
6196 building the variable mh-invisible-headers from
6197 mh-invisible-header-fields.
6198 (mh-invisible-headers): defvar moved from mh-utils.el
6200 2002-12-22 Satyaki Das <satyaki@theforce.stanford.edu>
6202 * mh-speed.el (mh-speed-folder-size): Removed. Something very
6203 similar appears as mh-folder-size.
6204 (mh-speed-view): Simplified since the range selection logic has
6205 been moved to mh-read-msg-range.
6206 (mh-speed-parse-flists-output-line): Moved to mh-e.el as
6207 mh-parse-flist-output-line.
6209 * mh-funcs.el (mh-pack-folder): Use the new mh-read-msg-range.
6211 * mh-e.el (mh-rescan-folder): Use the new mh-read-msg-range.
6212 (mh-parse-flist-output-line): Moved from mh-speed.el where this
6213 function was called mh-speed-parse-flists-output-line.
6214 (mh-folder-size): Renamed from mh-speed-folder-size. The function
6215 has been made more general and can be called from any buffer and
6216 not just the speedbar buffer.
6217 (mh-visit-folder): Use the new mh-read-msg-range (addresses SF
6219 (mh-read-msg-range): Rewritten.
6221 2002-12-21 Satyaki Das <satyaki@theforce.stanford.edu>
6223 * mh-seq.el (mh-delete-subject-or-thread): New interactive
6224 function that intelligently deletes messages based on threading,
6225 if the folder is threaded, or on subject if folder isn't threaded.
6227 * mh-utils.el (mh-show-delete-subject-or-thread): New interactive
6228 function, callable from the show buffer, to intelligently delete
6229 messages based on threading info or subject.
6230 (mh-show-mode-map): Change binding of "k" to call
6231 mh-show-delete-subject-or-thread.
6233 * mh-e.el (mh-folder-mode-map): Change binding of "k" to call
6234 mh-delete-subject-or-thread.
6236 * mh-comp.el (mh-letter-mode-map): Add key binding for
6239 * mh-loaddefs.el: Regenerated.
6241 2002-12-21 Peter S Galbraith <psg@debian.org>
6243 * mh-customize.el (mh-tool-bar-letter-set): Bug fix. The
6244 `tool-bar-add-item-from-menu' items were broken. I can't use my
6247 2002-12-21 Peter S Galbraith <psg@debian.org>
6249 * mh-alias.el (mh-alias-insert-file): Bug fix. I never checked
6250 that an AliasFile entry existed in .mh_profile.
6252 2002-12-21 Peter S Galbraith <psg@debian.org>
6254 * mh-customize.el (mh-alias-insertion-location): New defustom.
6255 Specifies where new aliases are entered in alias files.
6257 * mh-alias.el (mh-alias-add-alias-to-file): Use it.
6259 2002-12-21 Peter S Galbraith <psg@debian.org>
6261 * mh-alias.el (mh-alias-add-alias-to-file): If ALIAS matches
6262 exactly, prompt to [i]nsert before old value or [a]ppend after it.
6263 (mh-alias-insert-file): Make sure we don't edit the passwd file.
6264 Add optional argument for alias; If ALIAS is specified and it
6265 already exists, try to return the file that contains it.
6266 (mh-alias-which-file-has-alias): New function. Return the name of
6267 writable file which defines ALIAS from list FILE-LIST.
6268 (mh-alias-add-alias): Remove prompts for case of alias already
6269 defined; done in mh-alias-add-alias-to-file.
6271 2002-12-21 Satyaki Das <satyaki@theforce.stanford.edu>
6273 * mh-speed.el (mh-speed-folders-actual): Fix bug in parsing of
6274 folder names that have spaces in them. The original function would
6275 truncate the folder name at the first space.
6276 (mh-speed-flists): Add -sequence option to flists. This guards
6277 against the user specifying something other than the unseen
6278 sequence in his .mh_profile.
6279 (mh-speed-parse-flists-output-line): New function that parses a
6280 single line in the output of flists to find the folder name and
6281 the counts of unseesn and total messages.
6282 (mh-speed-parse-flists-output): Fix parsing bug which truncates
6283 the folder names at the first space.
6285 * mh-index.el (mh-index-generate-pretty-name): New function which
6286 generates a nicer name for the search results. It trims white
6287 space at the beginning and end and replaces white space with
6288 underscores within the search regexp.
6289 (mh-index-search): Use mh-index-generate-pretty-name.
6291 * mh-loaddefs.el: Regenerated.
6293 2002-12-20 Satyaki Das <satyaki@theforce.stanford.edu>
6295 * mh-index.el (mh-index-new-folder): Add new folder to
6296 mh-folder-list to enable name completion.
6297 (mh-glimpse-execute-search, mh-swish-execute-search)
6298 (mh-swish++-execute-search): Fix documentation.
6300 * mh-seq.el (mh-thread-generate): Fixed a stupid bug where the wrong
6301 folder could get 'scan'ed when generating the threaded view.
6303 * mh-index.el (mh-index-search): If optional prefix arg is given
6304 then the search in the current index buffer is redone.
6305 (mh-glimpse-execute-search, mh-swish-execute-search)
6306 (mh-namazu-execute-search): Documentation fixes.
6308 * mh-e.el (mh-index-previous-search): New buffer local variable
6309 stores parameters of search that created the buffer.
6310 (mh-folder-mode): Make mh-index-previous-search buffer local.
6311 (mh-visit-folder): Tweak the function so that only a single window
6312 with the folder buffer is shown if mh-showing-mode is nil.
6314 * mh-loaddefs.el: Regenerated.
6316 2002-12-19 Peter S Galbraith <psg@debian.org>
6318 * mh-alias.el (mh-alias-add-alias): Bug fix.
6320 2002-12-19 Peter S Galbraith <psg@debian.org>
6322 * mh-alias.el (mh-alias-add-alias): New interactive command. Add
6323 ALIAS for ADDRESS in personal alias file.
6324 (mh-alias-grab-from-field): New interactive command. Add ALIAS for
6325 ADDRESS in personal alias file.
6326 (mh-alias-add-address-under-point): New interactive
6327 command. Insert an alias for email address under point.
6328 (mh-alias-suggest-alias): New function. Suggest an alias for STRING.
6329 (mh-alias-insert-file): New function. Return the alias file to
6330 write a new entry in.
6331 (mh-alias-address-to-alias): New function. Return the ADDRESS
6332 alias if defined, or nil.
6333 (mh-alias-from-has-no-alias-p): New function. Return t is From has
6334 no current alias set. Used as tool-bar button enable function.
6335 (mh-alias-add-alias-to-file): New function. Add ALIAS for ADDRESS
6336 in alias FILE without alias check or prompts.
6338 * alias.xpm, alias.pbm: New tool-bar icon for
6339 mh-alias-grab-from-field.
6341 * mh-e.el (mh-folder-line-matches-show-buffer-p): New function.
6342 Return t if the message under point in folder-mode is in the show
6345 * mh-utils.el (mh-goto-address-find-address-at-point): New
6346 function copied from goto-addr.el, which we don't want to
6347 force-load on users. Find e-mail address around or before point.
6348 (mh-address-mail-regexp): New defvar. A regular expression
6349 probably matching an e-mail address.
6351 * mh-customize.el (mh-alias-insert-file): New defcustom.
6352 Filename to use to store new MH-E aliases.
6353 (mh-tool-bar-folder-buttons): Enable mh-tool-bar-item-alias icon.
6355 * mh-comp.el (mh-extract-from-header-value): New function.
6356 Extract From: string from header.
6358 2002-12-19 Satyaki Das <satyaki@theforce.stanford.edu>
6360 * mh-index.el (mh-index-update-single-msg): New defvar controls
6361 max number of command line args.
6362 (mh-index-execute): New function which is to be used
6363 instead of xargs so that we don't give the shell too many command
6365 (mh-index-update-maps): Use mh-index-execute instead of xargs.
6366 (mh-index-search): Remove unused code. Also the first message in
6367 folder buffer is made current.
6369 2002-12-18 Peter S Galbraith <psg@debian.org>
6371 * mh-loaddefs.el: Regenerated.
6373 * mh-comp.el (mh-letter-tool-bar-map): Moved to mh-customize.el
6375 * mh-e.el (mh-folder-tool-bar-map): Moved to mh-customize.el
6377 * mh-utils.el (mh-get-msg-num): autoloaded.
6378 (mh-show-tool-bar-map): Moved to mh-customize.el
6380 * mh-customize.el (mh-tool-bar-item-*): 33 new defconsts for
6381 tool-bar setup and customization.
6382 (mh-tool-bar-folder-buttons-set): New function to setup the
6383 tool-bar after customization.
6384 (mh-tool-bar-folder-buttons): New defcustom to specify which icons
6385 appears in the tool-bar.
6386 (mh-tool-bar-letter-buttons-set): New function to setup the
6387 tool-bar after customization.
6388 (mh-tool-bar-letter-buttons): New defcustom to specify which icons
6389 appears in the tool-bar.
6390 (mh-tool-bar-show-set): New function to setup mh-letter-tool-bar-map.
6391 (mh-tool-bar-letter-set): New function to setup
6392 mh-letter-tool-bar-map.
6394 2002-12-18 Satyaki Das <satyaki@theforce.stanford.edu>
6396 * mh-e.el (mh-folder-mode-map): Change entries for "\t", "\M-\t"
6397 and backtab to call mh-index-next-folder and
6398 mh-index-previous-folder as appropriate.
6400 * mh-index.el (mh-index-next-folder, mh-index-previous-folder):
6401 New interactive functions which jumps to search results of next
6402 and previous folders respectively.
6404 * mh-loaddefs.el: Regenerated.
6406 * mh-index.el (mh-index-delete-folder-headers): Arrange for
6407 mh-goto-cur-msg to just go to the current message.
6409 * mh-e.el (mh-visit-folder): Since mh-scan-folder erases the whole
6410 buffer anyway, we don't need to delete the folder headers. Also
6411 index-data is non-nil only when the buffer folder doesn't exist.
6412 So we need to call mh-make-folder.
6413 (mh-folder-mode): Fix bug in that mh-index-checksum-origin-map was
6414 not being made buffer local!
6416 2002-12-17 Satyaki Das <satyaki@theforce.stanford.edu>
6418 * mh-e.el (mh-visit-folder): Fix bug.
6420 * mh-index.el (mh-md5sum-buffer): Buffer from which md5sum is run.
6421 (mh-index-folder-first, mh-index-folder-last)
6422 (mh-index-original-msg-list): Convenience macros aren't needed
6423 anymore since the data structure has been changed.
6424 (mh-index-update-single-msg): New function to update maps that
6425 relate MD5 checksums to actual messages and vice-versa for a
6427 (mh-index-update-maps): Do the above for all messages. If some
6428 messages don't have MD5 checksums, they are annotated with the
6430 (mh-index-search): Updated for the new version of mh-index-data.
6431 (mh-msg-exists-p): New function to test a message exists.
6432 (mh-index-insert-folder-headers): Updated for new mh-index-data.
6433 (mh-index-delete-folder-headers): New function used to eliminate
6434 original folder names from the buffer and make it look like a
6435 plain folder buffer. This is used from mh-process-commands.
6436 (mh-index-visit-folder): Use new version of mh-index-data.
6437 (mh-index-match-checksum): New function which checks if the
6438 X-MHE-Checksum header of a message matches.
6439 (mh-index-execute-commands): New function that rmm's the original
6440 messages. Then after mh-execute-commands executes it will seem
6441 that the original messages were executed upon. This completes the
6443 (mh-checksum-buffer): Renamed from mh-md5sum-buffer.
6444 (mh-checksum-cmd, mh-checksum-parser): New globals to allow
6445 different checksum programs to be used.
6446 (mh-checksum-choose): New functions to find a checksum program.
6447 (mh-openssl-parser, mh-md5sum-parser, mh-md5-parser): Functions to
6448 parse the output of md5, md5sum and openssl.
6449 (mh-index-update-maps): Use checksum parsing function.
6450 (mh-index-search): Set checksum choice. Add a call to recenter,
6451 otherwise the window point in the index buffer doesn't get set
6454 * mh-funcs.el (mh-pack-folder, mh-sort-folder): Enable these
6455 functions in folders created by index search.
6457 * mh-e.el (mh-index-msg-checksum-map)
6458 (mh-index-checksum-origin-map): New buffer local variables that
6459 keep track of message checksums (used to implement
6460 refiling/deletion for folders created by index folders).
6461 (mh-last-msg): Make the function behave like mh-first-msg.
6462 (mh-visit-folder): Add new optional argument which initializes
6463 folders created by mh-index-search.
6464 (mh-folder-mode): Make the variables mh-index-msg-checksum-map and
6465 mh-index-checksum-origin-map buffer local.
6466 (mh-process-commands): Call mh-index-execute-commands when called
6467 from an index search buffer. This will reflect the changes being
6468 made in the search folder to the original folders.
6470 * mh-loaddefs.el: Regenerated.
6472 2002-12-16 Satyaki Das <satyaki@theforce.stanford.edu>
6474 * mh-index.el (mh-index-insert-folder-headers): Fix a bug which
6475 caused the folder buffer to be marked as modified after rescanning
6478 2002-12-15 Satyaki Das <satyaki@theforce.stanford.edu>
6480 * mh-e.el (mh-visit-folder): The function should insert folder
6481 names if it is visiting a folder created by index search.
6483 * mh-index.el (mh-index-insert-folder-headers): The function now
6484 maintains the old value of buffer-modified-p and temporarily makes
6485 the buffer writable.
6487 * mh-utils.el (mh-show-index-visit-folder): New interactive
6488 function callable from show buffer that displays search results
6490 (mh-show-mode-map): Key binding for "v".
6492 * mh-speed.el: Fix credits.
6493 (mh-index-folder-speedbar-buttons)
6494 (mh-index-show-speedbar-buttons)
6495 (mh-index-folder-speedbar-key-map)
6496 (mh-index-show-speedbar-key-map)
6497 (mh-index-folder-speedbar-menu-items)
6498 (mh-index-show-speedbar-menu-items): Removed since the modes
6499 mh-index-folder-mode and mh-index-show-mode no longer exist.
6500 (mh-speed-extract-folder-name): Remove the bits about
6501 mh-index-folder-mode and mh-index-show-mode.
6503 * mh-seq.el (mh-copy-seq-to-eob): Updated to work properly with
6504 index search results.
6505 (mh-region-to-msg-list): Skip over non-scan lines.
6506 (mh-thread-inc, mh-thread-add-spaces, mh-thread-folder): Skip
6507 non-scan lines when populating mh-thread-scan-line-map.
6508 (mh-thread-folder, mh-toggle-threads): Move the check for buffer
6509 modification from mh-thread-folder to mh-toggle-threads.
6510 (mh-toggle-threads): When returning to unthreaded view insert the
6511 folder names if called from a index folder.
6513 * mh-index.el: Fix credits and update commentary.
6514 (font-lock-defaults, mh-index-buffer, mh-index-show-buffer)
6515 (mh-index-ma-x-msg-index, mh-index-other-buffer)
6516 (mh-index-matches, mh-index-previous-window-configuration)
6517 (mh-index-current-msg, mh-index-folder-mode-keymap)
6518 (mh-index-button-map, mh-index-folder-mode-help-messages): Remove
6519 eliminated variables.
6520 (mh-index-folder): New variable sets the MH folder under which the
6521 index searches are stored.
6522 (mh-index-folder-first, mh-index-folder-last)
6523 (mh-index-original-msg-list): Convenience macros used to pull data
6524 elements out of a list. If needed setf can be used to change them
6526 (mh-index-search): Rewritten to create real folders where all the
6527 normal folder operation. This partially fixes SF #623321 (refiles
6528 and deletes doesn't work on original messages).
6529 (mh-index-find-max-width, mh-index-search-again)
6530 (mh-index-insert-scan, mh-index-callback, mh-index-search)
6531 (mh-index-notate, mh-index-show, mh-index-header-display)
6532 (mh-index-next, mh-index-folder-mode, mh-index-show-mode):
6533 Functions, macros and modes removed.
6534 (mh-folder-exists-p): New function to check if a folder exists.
6535 (mh-index-new-folder): Generate a new folder name from a given
6536 base string that mimics the way emacs generates buffer names.
6537 (mh-index-insert-folder-headers): Insert folder names among the
6539 (mh-index-visit-folder): New interactive function to show the
6540 search results of one individual folder.
6541 (mh-swish++-execute-search): Update documentation.
6543 * mh-funcs.el (mh-pack-folder, mh-sort-folder): Disable these
6544 functions if index search results are being viewed.
6546 * mh-e.el (mh-folder-font-lock-keywords): Add highlight for
6548 (mh-index-data): New buffer local variable that will be used to
6549 store info about index search results.
6550 (mh-rescan-folder): Implement rescanning for index search results.
6551 (mh-folder-mode): Make mh-index-data buffer local.
6552 (mh-remove-all-notation): Modified to take into account not all
6553 lines in the folder buffer are normal scan lines.
6554 (mh-folder-mode-map): Add key binding for "v" to jump to original
6555 folder narrowed to search results.
6557 * mh-customize.el (mh-index-folder-face): Make it bold so that it
6558 will look like before.
6560 * mh-loaddefs.el: Regenerated.
6562 2002-12-12 Satyaki Das <satyaki@theforce.stanford.edu>
6564 * mh-seq.el (mh-map-to-seq-msgs): Modified so that it can be given
6565 a list of messages in addition to a sequence.
6566 (mh-region-to-sequence, mh-region-to-msg-list): The function
6567 mh-region-to-msg-list replaces mh-region-to-sequence. The new
6568 function avoids creating a dummy sequence in MH-E.
6569 (mh-thread-delete, mh-thread-refile, mh-put-msg-in-seq): Modified
6570 to use mh-region-to-msg-list.
6572 * mh-funcs.el (mh-copy-msg): Modified to use mh-region-to-msg-list.
6574 * mh-e.el (mh-delete-msg, mh-refile-msg, mh-undo): Modified to use
6575 mh-region-to-msg-list.
6577 * mh-comp.el (mh-forward): Modified to use mh-region-to-msg-list.
6578 The buffer-local variable mail-header-separator is no longer
6579 bound. This fixes a bug where the default value of
6580 mail-header-separator gets used if mh-forward is called in a fresh
6582 (mh-annotate-msg): Update this so that it will handle message
6584 (mh-insert-letter): Make the test stronger. Since %d is being used
6585 the argument better be an integer.
6587 * mh-loaddefs.el: Regenerated.
6589 2002-12-11 Satyaki Das <satyaki@theforce.stanford.edu>
6591 * mh-funcs.el (mh-copy-msg): Add support for transient-mark-mode.
6592 If mark is active and transient-mark-mode is enabled then all the
6593 messages in the region are copied.
6595 * mh-seq.el (mh-list-sequences): Use mh-coalesce-msg-list to print
6596 messages in sequence nicely. The prompt for the folder is removed
6597 (the current folder is always used) and the output is made nicer
6598 by not overflowing the screen width.
6600 * mh-loaddefs.el: Regenerated.
6602 2002-12-09 Satyaki Das <satyaki@theforce.stanford.edu>
6604 * mh-comp.el (mh-letter-complete): Checkdoc fix.
6606 * mh-seq.el (mh-thread-current-indentation-level): New function
6607 which returns the thread indentation level of current message.
6608 (mh-thread-next-sibling, mh-thread-previous-sibling): New
6609 interactive functions to jump to the next and previous siblings in
6610 thread tree respectively.
6611 (mh-thread-immediate-ancestor): New function to jump to ancestor
6612 of current message in thread tree.
6613 (mh-thread-ancestor): New interactive function to jump to
6614 immediate ancestor or to root message of current thread depending
6615 on optional argument.
6617 * mh-utils.el (mh-show-thread-ancestor)
6618 (mh-show-thread-next-sibling, mh-show-thread-previous-sibling):
6619 Interactive functions callable from the show buffer.
6620 (mh-show-thread-map): Bindings for Tu, Tp and Tn.
6622 * mh-e.el (mh-thread-map): Bindings for Tu, Tp and Tn.
6624 * mh-loaddefs.el: Regenerated.
6626 2002-12-09 Satyaki Das <satyaki@theforce.stanford.edu>
6628 * mh-seq.el (mh-region-to-sequence): Change name of region
6629 sequence created to 'mhe-region. This avoids any chance of
6630 collision with actual MH sequences.
6631 (mh-put-msg-in-seq, mh-thread-delete, mh-thread-refile): Change
6632 name of region sequence used to 'mhe-region. Also delete the
6633 'mhe-region sequence when done.
6635 * mh-e.el (mh-delete-msg, mh-refile-msg, mh-undo): Same as above.
6637 * mh-comp.el (mh-forward): Same as above.
6639 * mh-loaddefs.el: Regenerated.
6641 2002-12-08 Bill Wohler <wohler@newt.com>
6643 * mh-alias.el: Edited documentation. Broke up file into 2
6644 sections: Alias Loading and Alias Expansion. Made terminology
6645 consistent (replaced expand, substitute, and translate with
6647 (mh-alias-reload): Brought message in line with coding conventions
6648 and made more concise too.
6649 (mh-alias-translate): Renamed to mh-alias-expand.
6650 (mh-alias-substitute-aliases-flag): Renamed to
6651 mh-alias-expand-aliases-flag.
6652 (mh-alias-reload-local-users): Renamed to mh-alias-local-users.
6653 Now just returns an alist of local users rather than have
6655 (mh-alias-reload): Set timestamp at beginning of function to catch
6656 edge case when alias added just after ali runs. Changed logic to
6657 reflect return value of mh-alias-local-users.
6659 * mh-customize.el (mh-alias-substitute-aliases-flag): Renamed to
6660 mh-alias-expand-aliases-flag.
6661 (mh-alias-local-users): Fixed documentation.
6663 * mh-loaddefs.el: Regenerated
6665 2002-12-08 Satyaki Das <satyaki@theforce.stanford.edu>
6667 * mh-e.el (require): Load Gnus at compile time so that the
6668 constant gnus-version is defined when MH-E is being compiled.
6669 (mh-macro-expansion-time-gnus-version, mh-run-time-gnus-version):
6670 Use the constant gnus-version instead of the function gnus-version
6671 to find out about gnus version information.
6672 (gnus-version): Remove the autoload since it is not needed any
6675 2002-12-08 Bill Wohler <wohler@newt.com>
6677 * mh-e.el (mh-version): Moved compilation information in front of
6678 Emacs information. The idea is that you start at MH-E and move
6679 outwards. Show N/A if Gnus not compiled (be explicit). Matched
6680 coding style with other output statements. (Aside: not that
6681 efficiency matters here, but fewer calls to format have to be
6682 faster, right? ;-). Matched output style of old output to new
6683 statement--liked Satyaki's indentation better ;-).
6685 2002-12-08 Satyaki Das <satyaki@theforce.stanford.edu>
6687 * mh-e.el (gnus-version): Autoload the function for use in
6689 (mh-macro-expansion-time-gnus-version): New macro that finds the
6690 Gnus version at macro expansion time.
6691 (mh-run-time-gnus-version): New function to find the Gnus version
6693 (mh-version): Add information about Gnus versions available at
6694 compile time and run time.
6696 2002-12-07 Peter S Galbraith <psg@debian.org>
6698 * mh-alias.el (mh-alias-ali): Add optional argument. if USER is
6699 t, then assume ALIAS is an address and call ali with option -user.
6701 * mh-alias.el (mh-alias-filenames): if ARG is t, appends list of
6702 files from `mh-alias-system-aliases' to output list obtained from
6703 mhparam output user list only.
6704 (mh-alias-tstamp): Use it.
6706 2002-12-05 Satyaki Das <satyaki@theforce.stanford.edu>
6708 * mh-mime.el (mh-inline-vcard-p): A new function which decides if
6709 a vcard should be displayed inline.
6710 (mh-mime-display-single): Use mh-inline-vcard-p to display
6711 attached vcard as a signature if no other signature is present
6712 (this partially addresses SF #649216).
6714 2002-12-05 Peter S Galbraith <psg@debian.org>
6716 * mh-comp.el (mh-send-letter): Edits docs for mh-mml-to-mime
6717 getting run if variable `mh-mml-compose-insert-flag' is set.
6718 (mh-get-header-field): use buffer-substring-no-properties instead
6719 of buffer-substring.
6721 2002-12-04 Peter S Galbraith <psg@debian.org>
6723 * mh-loaddefs.el: Regenerated.
6725 * mh-customize.el (mh-customize): Add ;;;###mh-autoload tag.
6727 2002-12-04 Peter S Galbraith <psg@debian.org>
6729 * mh-loaddefs.el: Regenerated.
6731 * mh-comp.el (mh-letter-complete): New command to do alias or word
6732 completion in letter-mode.
6733 (mh-letter-mode-map): Add \M-\t binding for mh-letter-complete.
6735 * mh-alias.el (mh-alias-letter-mode-expand-alias-hook): Obsolete.
6736 Replaced by mh-letter-complete command.
6737 (mh-alias-reload-maybe): New function to rebuild alias table if
6739 (mh-alias-letter-expand-alias): No longer interactive. Use
6740 mh-letter-complete instead.
6742 2002-12-04 Peter S Galbraith <psg@debian.org>
6744 * mh-customize.el (mh-letter-complete-function): New defcustom.
6745 Function to call when completing outside of fields specified to
6748 * mh-alias.el (mh-alias-filenames):
6749 s/mh-mhparam-component/mh-profile-component/
6750 (mh-profile-component): Move to mh-utils.el and make interactive.
6751 (mh-read-address): Make it autoloaded.
6753 * mh-loaddefs.el: Regenerated.
6755 * mh-comp.el (mh-read-address): Removed. Replaced by mh-alias
6758 * mh-utils.el (mh-profile-component): Moved from mh-alias.el.
6760 2002-12-04 Satyaki Das <satyaki@theforce.stanford.edu>
6762 * mh-seq.el (mh-msg-is-in-seq): Formatting change.
6764 * mh-index.el (mh-index-insert-scan): Remove unused variable.
6766 2002-12-04 Bill Wohler <wohler@newt.com>
6768 * mh-loaddefs.el: Regenerated.
6770 * Makefile (MH-E-SRC): Moved mh-loaddefs.el into MH-E-LOADDEFS as
6771 this was causing a cycle.
6772 (MH-E-LOADDEFS): New variable to house mh-loaddefs.el.
6773 (emacs): Reintroduced autoloads.
6774 (autoloads): We're baaa-aack!
6775 (dist, install-emacs): Use MH-E-LOADDEFS.
6777 * mh-comp.el (mh-customize): Moved to mh-customize.el.
6779 * mh-customize.el (mh-customize): Moved here from mh-comp. Makes
6780 more sense, doesn't it?
6782 * mh-alias.el, mh-comp.el, mh-e.el, mh-index.el, mh-mime.el,
6783 mh-pick.el, mh-speed.el: Added mh-autoload cookie to all
6784 interactive functions.
6786 2002-12-04 Satyaki Das <satyaki@theforce.stanford.edu>
6788 * Makefile (world): Remove target.
6789 (mh-loaddefs.el): Add comment that only GNU Emacs can be used to
6790 regenerate mh-loaddefs.el.
6792 * mh-make.el: Removed.
6794 2002-12-04 Mark D. Baushke <mdb@gnu.org>
6796 * mh-e.el (recursive-load-depth-limit): Only modify the limit
6797 if it is an integer.
6799 2002-12-04 Peter S Galbraith <psg@debian.org>
6801 * mh-utils.el (mh-header-field-beginning): New function. Move to
6802 the beginning of the current header field.
6804 2002-12-04 Satyaki Das <satyaki@theforce.stanford.edu>
6806 * mh-make.el (mh-files): Read in the MH-E filenames from the
6807 environment variable where the Makefile puts it.
6808 (mh-generate-autoloads, step2): Simplified since we now have the
6809 complete file names.
6811 * Makefile (world): Pass the MH-E files into the script, so that
6812 the filenames don't need to be repeated in the script.
6814 2002-12-04 Bill Wohler <wohler@newt.com>
6816 * mh-loaddefs.el: New file. Check in automatically generated file
6817 and include in package for the benefit of those who don't want to
6820 * Makefile (MH-E-SRC): Added mh-loaddefs.el now that it is checked
6821 in and will be packaged.
6822 (emacs): Removed autoloads. Adding mh-loaddefs.el to MH-E-SRC is
6823 sufficient to build it.
6824 (compile): Depend on MH-E-SRC instead of MH-E-OBJ and pass $? into
6825 emacs so that Emacs is only invoked once to compile files. This
6826 speeds things up by a factor of 3. It would be nice to only pass
6827 those files that have been modified, but Emacs 21.4 will have
6828 batch-byte-compile-if-not-done which we might be able to copy into
6829 mh-make.el (or my proposed mh-e-dev.el which would be more
6831 (.SUFFIXES): Removed. Now that compile works directly on the
6832 sources, the implicit rule is obsolete.
6833 (autoloads): Deleted. See emacs change above.
6835 2002-12-03 Bill Wohler <wohler@newt.com>
6837 * Makefile (MH-E-SRC, emacs):
6839 2002-12-03 Satyaki Das <satyaki@theforce.stanford.edu>
6841 * mh-make.el (mh-emacs): Make failing condition more strict.
6842 (mh-loaddefs-end): Remove redundant statement.
6844 * Makefile (world): A little typo. The bug didn't seem to make any
6847 * mh-make.el: New script that compiles MH-E.
6848 (mh-loaddefs-beginning, mh-loaddefs-end): Don't save the autoloads
6849 file in between. Only save at the end.
6850 (mh-emacs-generate-autoloads, mh-xemacs-generate-autoloads)
6851 (mh-generate-autoloads): Replace the separate functions in Emacs
6852 and XEmacs with one that works in both variants. This simplifies
6854 (mh-generate-autoloads): doc fix.
6856 * Makefile (world): New target which works for both GNU Emacs and
6859 2002-12-03 Peter S Galbraith <psg@debian.org>
6861 * mh-alias.el (mh-mhparam-component): Don't raise error if call to
6864 * mh-alias.el (mh-alias-letter-expand-alias): Build alias table if
6865 not already available.
6867 2002-12-03 Bill Wohler <wohler@newt.com>
6869 * mh-customize.el (mh-show-threads-flag): Alphabetized.
6871 2002-12-03 Jeffrey C Honig <jch@honig.net>
6873 * Makefile: Moved .PHONY rule after all rule for compatibility
6874 with BSD/OS's old pmake.
6876 2002-12-03 Mark D. Baushke <mdb@gnu.org>
6878 * mh-e.el (mh-get-new-mail): Simplify no-new-mail test.
6879 (mh-add-cur-notation): Remove unnecessary function.
6881 2002-12-03 Peter S Galbraith <psg@debian.org>
6883 * mh-identity.el (mh-identity-make-menu): Check if
6884 'mh-letter-mode-map' is bound, since this code also gets run when
6885 mh-customize.el is loaded at startup.
6887 2002-12-03 Satyaki Das <satyaki@theforce.stanford.edu>
6889 * mh-customize.el (mh-show-threads-flag): New customizable
6890 variable which controls if new folders start of in threaded mode
6891 (closes SF #646794).
6893 * mh-e.el (mh-rescan-folder): Fix the function so that threading
6894 is preserved across rescans.
6895 (mh-visit-folder, mh-inc-folder): The folder is threaded if it was
6896 already threaded or if mh-show-threads-flag is non-nil and the
6897 number of scan lines is fewer than mh-large-folders (closes SF
6900 2002-12-02 Mark D. Baushke <mdb@gnu.org>
6902 * mh-e.el (mh-add-cur-notation): New function to mark the
6903 current message with the mh-note-cur character.
6904 (mh-get-new-mail): Use mh-add-cur-notation to undo the work of
6905 mh-remove-cur-notation if there was no new mail (closes SF #647681).
6907 * mh-e.el (mh-set-cmd-note): Do not update the default mh-cmd-note
6908 value (closes SF #643701).
6910 2002-12-02 Peter S Galbraith <psg@debian.org>
6912 * mh-alias.el (mh-alias-reload): Renamed from mh-alias-learn-aliases.
6913 (mh-alias-load-local-users): Renamed from mh-alias-learn-local-users.
6914 (mh-alias-passwd-alist): New variable, holding aliases extracted
6915 from the passwd file.
6916 (mh-alias-tstamp): New variable storing the timestamp for alias
6918 (mh-read-address, mh-alias-reload, mh-alias-reload-local-users):
6920 (mh-alias-minibuffer-confirm-address): Use mh-alias-translate.
6921 (mh-alias-translate): New function. Return translation for alias,
6922 checking if in blind or passwd list.
6923 (mh-alias-letter-expand-alias): Rewrite using
6924 mail-abbrev-complete-alias from mailabbrev.el.
6925 (mh-alias-expand-alias-map): New variable.
6926 (mh-alias-ali): New function. Return formatted string of
6927 translated ALIAS from ali.
6928 (mh-mhparam-component): New function. Return COMPONENT value from
6929 mhparam, or nil if unset.
6930 (mh-alias-filenames): New function. Provide list of alias
6931 filenames from mhparam, or nil if none are set.
6933 * mh-customize.el (mh-alias-display-blind-name-on-completion-flag):
6935 (mh-alias-timestamp): Renamed to mh-alias-system-aliases.
6937 2002-12-02 Bill Wohler <wohler@newt.com>
6939 * Makefile (mh-loaddefs.el): Suppress creation of backup file.
6941 2002-12-02 Mark D. Baushke <mdb@gnu.org>
6943 * Makefile (mh-loaddefs.el): Simplify rule.
6945 * Makefile (clean): Remove mh-loaddefs.el* for good measure.
6946 ($(MH-E-OBJ)): Depend on mh-loaddefs.el to compile these.
6947 (autoloads, mh-loaddefs.el): Revamp rules.
6948 (mh-loaddefs.el-tail, autoloads-gen): Remove rules.
6950 * mh-e.el (recursive-load-depth-limit): Do not try to
6951 bump the value unless the variable exists.
6953 * mh-e.el (recursive-load-depth-limit): Bump value of
6954 recursive-load-depth-limit to 50 to allow emacs 21.1 which
6955 normally has a default value of 10 to be able to compile MH-E.
6957 2002-12-02 Satyaki Das <satyaki@theforce.stanford.edu>
6959 * mh-funcs.el (mh-pack-folder, mh-sort-folder): Fix the functions
6960 so that threading is preserved (needed for SF #646794).
6962 * mh-identity.el (mh-identity-signature-start)
6963 (mh-identity-signature-end): Checkdoc fixes.
6965 * mh-e.el (mh-previous-unread-msg, mh-next-unread-msg): Checkdoc
6968 2002-12-01 Satyaki Das <satyaki@theforce.stanford.edu>
6970 * mh-identity.el (compile): Make mh-identity.el compile without
6973 * mh-e.el (mh-previous-unread-msg, mh-next-unread-msg): New
6974 interactive functions that go to next and previous unread
6975 messages (closes SF #630328).
6976 (mh-folder-mode-map): Add key bindings for M-n and M-p to
6979 * mh-utils.el (mh-show-next-unread-msg)
6980 (mh-show-previous-unread-msg): New interactive functions that go
6981 to the next and previous unread messages respectively. These are
6982 callable from the show buffer.
6983 (mh-show-mode-map): Add key bindings for M-n and M-p to
6986 2002-12-01 Bill Wohler <wohler@newt.com>
6988 * mh-mime.el (mh-defun-compat): Make it indent like a defun.
6990 * mh-index.el (mh-defun-index): Make it indent like a defun.
6992 * mh-customize.el: New file (closes SF #643722).
6994 * Makefile (MH-E-SRC): Added mh-customize.el (closes SF #643722).
6996 * mh-speed.el, mh-pick.el, mh-mime.el, mh-index.el, mh-e.el,
6997 mh-comp.el: Moved all defgroups, defcustoms, and deffaces to
6998 mh-customize.el (closes SF #643722).
7000 * mh-utils.el (mh-xemacs-flag): Moved here from below since
7001 needed by mh-customize.el.
7002 (mh-customize): Required. mh-invisible-headers)
7003 (mh-bury-show-buffer-flag, mhl-formfile):
7004 Moved all defgroups, defcustoms, and deffaces to mh-customize.el
7005 (closes SF #643722) .
7007 * mh-identity.el (mh-comp-loaded): New variable in a desperate
7008 attempt to prevent an infinite loop.
7009 (eval-when-compile): Was able to remove these defvars as they are
7010 now predefined in mh-loaddefs and mh-customize.
7011 (mh-identity-list-set): Added ;;;###mh-autoload cookie.
7012 Moved all defgroups, defcustoms, and deffaces to mh-customize.el
7013 (closes SF #643722).
7015 * mh-alias.el (mh-e): Require this, as it needs defcustoms, which
7016 is in mh-customize which is required by mh-utils which is required
7018 Moved all defgroups, defcustoms, and deffaces to mh-customize.el
7019 (closes SF #643722).
7021 2002-11-30 Satyaki Das <satyaki@theforce.stanford.edu>
7023 * mh-e.el (mh-thread-map): Add key bindings "Td" and "To" (closes
7025 (mh-help-messages): Update help message for prefix map.
7026 (mh-help-messages): Doc fix.
7027 (mh-help-messages): Really fix it.
7029 * mh-utils.el (mh-show-thread-delete, mh-show-thread-refile): New
7030 interactive functions corresponding to mh-thread-delete and
7031 mh-thread-refile callable from the show buffer.
7032 (mh-show-thread-map): Add key bindings for "Td" "To".
7034 * mh-seq.el (mh-narrow-to-seq, mh-put-msg-in-seq, mh-rename-seq)
7035 (mh-narrow-to-subject, mh-delete-subject, mh-toggle-threads): Add
7036 mh-autoload cookies.
7037 (mh-thread-find-children): New function which finds the region
7038 containing all children of a message.
7039 (mh-thread-delete): New interactive function that marks for
7040 deletion the current message and its children.
7041 (mh-thread-refile): New interactive function that marks for
7042 refiling the current message and its children.
7044 2002-11-30 Bill Wohler <wohler@newt.com>
7046 * mh-funcs.el, mh-identity.el, mh-index.el, mh-pick.el, mh-seq.el:
7047 Removed MH-E autoloads. These are now provided by mh-loaddefs.el.
7048 Added ;;;###mh-autoload tag to selected functions so that
7049 autoloads for those functions can be automatically created in
7050 mh-loaddefs.el (closes half of SF #643722).
7052 * mh-mime.el (mh-buffer-data): Moved to mh-utils where it is used.
7053 Added ;;;###mh-autoload tag to selected functions so that
7054 autoloads for those functions can be automatically created in
7055 mh-loaddefs.el (closes half of SF #643722)..
7057 * mh-utils.el (mh-loaddefs): Added require.
7058 (mh-buffer-data): Moved here from mh-mime.el as it is used in
7060 (mh-set-cmd-note): Moved to mh-e.el.
7061 Removed MH-E autoloads. These are now provided by mh-loaddefs.el.
7062 Added ;;;###mh-autoload tag to selected functions so that
7063 autoloads for those functions can be automatically created in
7064 mh-loaddefs.el (closes half of SF #643722)..
7066 * mh-e.el (mh-set-cmd-note): Moved here from mh-utils.el since it
7067 uses mh-scan-format-file which is defined here.
7068 Removed MH-E autoloads. These are now provided by mh-loaddefs.el.
7069 Added ;;;###mh-autoload tag to selected functions so that
7070 autoloads for those functions can be automatically created in
7071 mh-loaddefs.el (closes half of SF #643722)..
7073 * mh-comp.el, mh-speed.el (mh-utils): Removed require. mh-utils is
7074 provided via mh-e.el.
7075 Removed MH-E autoloads. These are now provided by mh-loaddefs.el.
7076 Added ;;;###mh-autoload tag to selected functions so that
7077 autoloads for those functions can be automatically created in
7078 mh-loaddefs.el (closes half of SF #643722)..
7080 * Makefile (emacs): Add dependency on autoloads.
7081 (clean): Remove mh-loaddefs.el too.
7082 (autoloads): New target. Builds mh-loaddefs.el.
7083 (mh-loaddefs.el): New target. Initializes mh-loaddefs.el.
7084 (mh-loaddefs.el-tail): New target. Appends to mh-loaddefs.el.
7085 (autoloads-gen): Runs batch-update-autoloads to populate
7086 mh-loaddefs.el (closes half of SF #643722)..
7087 (auto-autoloads.elc): Renamed from autoloads to be explicit about
7088 file that's created.
7089 (custom-load.elc): Ditto.
7091 2002-11-30 Satyaki Das <satyaki@theforce.stanford.edu>
7093 * mh-seq.el (mh-thread-last-ancestor): New variable which keeps
7094 track of oldest ancestor of last message. If due to narrowing the
7095 common ancestor of two messages is lost then one of them is
7096 promoted to be the parent of the other. This variable helps in
7098 (mh-thread-generate-scan-lines): Group messages which belong to
7099 the same thread tree, even if a common ancestor is no longer
7101 (mh-thread-folder, mh-copy-seq-to-eob, mh-thread-inc): Bind
7102 mh-thread-last-ancestor to nil when calling
7103 mh-thread-generate-scan-lines.
7105 * mh-mime.el (font-lock): Font-lock required at compile time to
7106 avoid warning about font-lock-maximum-size.
7107 (mh-display-smileys, mh-display-emphasis): Show graphical smileys
7108 and emphasis only if message isn't too large.
7110 * mh-e.el (mh-visit-folder): Revisiting a buried folder which has
7111 been threaded or narrowed confuses MH-E. Even though the folder is
7112 displayed as not threaded and not narrowed, MH-E still believes
7113 the folder is in the previous state. This can cause problems when
7114 trying to narrow/thread the folder. The change fixes this.
7116 * mh-mime.el (mh-mime-display-alternative): The setting of
7117 mh-display-buttons-for-inline-parts-flag was not being used when
7118 displaying one of the alternatives. This change fixes that.
7120 * mh-comp.el (mh-show-buffer-message-number): Replace subseq with
7122 (mh-filter-out-non-text): When filtering out MIME buttons from
7123 yanked text, the last line of the MIME part was getting lost. The
7124 fix avoids that and removes only the last new line instead.
7126 2002-11-29 Peter S Galbraith <psg@debian.org>
7128 * Makefile (MH-E-SRC): Add mh-alias.
7130 * mh-alias.el: Assign copyright to FSF instead of myself.
7131 (mh-read-address): Add support for emacs-21's
7132 completing-read-multiple to prompt for multiple entries.
7133 (mh-alias-PC-complete-address): Deleted.
7134 (mh-alias-learn-aliases): Use mh-exec-cmd-quiet instead of old kludge.
7135 (mh-alias-letter-mode-expand-alias-hook): Simplify.
7136 (mh-alias-hostname): Deleted.
7137 (mh-alias-substitute-aliases-flag): Change default to nil.
7138 (mh-alias-display-blind-name-on-completion-flag) Change default to
7140 (mh-alias-alist): Now holds alias values.
7141 (mh-alias-lowercase-alist): Deleted.
7142 (mh-alias-minibuffer-confirm-address, mh-alias-learn-aliases)
7143 (mh-alias-learn-local-users, mh-alias-letter-expand-alias): Use
7144 new mh-alias-alist instead of old mh-alias-lowercase-alist.
7146 * mh-alias.el: Moved from contrib/ directory. Now part of MH-E!
7148 * Makefile (MH-E-SRC): Add mh-identity.
7150 * mh-identity.el (mh-compose-and-send-mail, mh-insert-identity)
7151 (mh-identity-make-menu, mh-identity-default, mh-identity-menu):
7152 Moved to mh-comp.el.
7154 * mh-comp.el (mh-compose-and-send-mail): Add mh-identity support.
7155 (mh-insert-identity, mh-identity-make-menu, mh-identity-default)
7156 (mh-identity-menu): Added from mh-identity.el
7158 2002-11-29 Bill Wohler <wohler@newt.com>
7160 * mh-comp.el, mh-e.el, mh-funcs.el, mh-identity.el, mh-index.el,
7161 mh-mime.el, mh-pick.el, mh-seq.el, mh-speed.el, mh-utils.el:
7162 Ran indent-region, reformatted long lines, ran untabify.
7163 (indent-tabs-mode): Set file local variable to nil.
7165 2002-11-29 Bill Wohler <wohler@newt.com>
7167 Released MH-E version 7.0.
7169 * mh-e.el (Version, mh-version): Updated for release 7.0.
7171 * mh-comp.el (subseq, search): Require cl instead of autoloading
7172 these due to compilation warnings in CVS Emacs.
7174 2002-11-23 Bill Wohler <wohler@newt.com>
7176 * MH-E-NEWS: Emphasize the renaming of the variables at the top of
7179 2002-11-22 Satyaki Das <satyaki@theforce.stanford.edu>
7181 * mh-utils.el (mh-show-mode-map): Remove binding for RET since it
7182 is not needed and the binding is more useful to toggle display of
7185 * mh-mime.el (mh-mime-button-commands): Remove bindings for "i"
7186 and "o" from MIME buttons.
7187 (mh-insert-mime-button): Change comment to reflect change in
7190 2002-11-21 Bill Wohler <wohler@newt.com>
7192 Released MH-E version 6.1.91.
7194 * mh-e.el (Version, mh-version): Updated for release 6.1.91.
7196 * MH-E-NEWS: Inline HTML parts supported with Gnus 5.10, not 5.9.
7198 2002-11-21 Mark D. Baushke <mdb@gnu.org>
7200 * mh-comp.el (mh-letter-insert-signature-hook): This should be in
7201 customize-group mh-compose.
7203 2002-11-21 Satyaki Das <satyaki@theforce.stanford.edu>
7205 * mh-utils.el (load): Load mm-view.el here so that
7206 mm-inline-text-html would be defined if available.
7207 (mh-mm-inline-media-tests): If mm-inline-text-html is available
7208 then use it, otherwise fall back on using mm-inline-text (closes
7211 * mh-mime.el (load): Remove the load of mm-view here since it
7212 happens in mh-utils.el now.
7214 2002-11-15 Bill Wohler <wohler@newt.com>
7216 Released MH-E version 6.1.90.
7218 * README (Compile): New section. Users must now compile MH-E due
7219 to the vagaries of the various versions of gnus.
7221 * Makefile (MH-E-IMG): Added reply-all.pbm, reply-all.xpm,
7222 reply-from.pbm, reply-from.xpm, reply-to.pbm, reply-to.xpm.
7223 (MH-E-ETC-ETC): Added Makefile and README.
7224 (dist): Depend on all, so clean happens. Don't add .elc files to
7225 tarball as they are built upon installation now.
7227 2002-11-15 Satyaki Das <satyaki@theforce.stanford.edu>
7229 * mh-e.el (mh-process-commands): Fix a bug in mh-execute-commands.
7230 If called in threaded mode, cur was always getting set to the last
7231 message in the folder.
7233 2002-11-14 Bill Wohler <wohler@newt.com>
7235 * mh-e.el (Version, mh-version): Updated for release 6.1.90.
7237 * MH-E-NEWS, README: Updated for release 7.0.
7239 * mh-utils.el (mh-index-search): Added full docstring which new
7240 users will need before they run a search!
7241 (mh-swish++-execute-search, mh-swish-execute-search,
7242 mh-namazu-execute-search mh-glimpse-execute-search): Added
7243 autoloads with full docstrings for the same reason!
7245 * mh-e.el (mh-limit-map): Removed / / alias for
7246 mh-narrow-to-subject.
7248 * mh-utils.el (mh-show-thread-map): Removed / / alias for
7249 mh-show-narrow-to-subject.
7251 * mh-seq.el (mh-delete-subject): Checkdoc fix.
7253 * mh-e.el (mh-help-messages): Added / prefix character to help
7254 string. Tweaked / helpstring a little.
7256 2002-11-14 Mark D. Baushke <mdb@gnu.org>
7258 * mh-utils.el (mh-set-cmd-note): Fix nitpick by adding one to the
7259 width for cosmetic reasons.
7261 2002-11-14 Peter S Galbraith <psg@debian.org>
7263 * mh-identity.el (mh-insert-identity): Fix a few things undone by
7265 (mml-insert-tag): Add autoload.
7267 2002-11-13 Mark D. Baushke <mdb@gnu.org>
7269 * mh-identity.el (mh-insert-identity): A value of either nil or
7270 "" should cause the field to be removed.
7271 (mh-identity-list): Update the docstring.
7273 2002-11-13 Peter S Galbraith <psg@debian.org>
7275 * mh-e.el (mh-limit-map): New key map for limits (subject for now).
7276 * mh-utils.el (mh-show-limit-map): Same.
7278 * mh-seq.el (mh-delete-subject): Renamed from
7279 mh-delete-subject-sequence.
7280 (mh-narrow-to-subject): Renamed from mh-narrow-to-subject-sequence.
7281 (mh-next-unseen-subject-sequence): Removed. :-(
7283 * mh-seq.el: Use 'em.
7285 2002-11-13 Mark D. Baushke <mdb@gnu.org>
7287 * mh-e.el (mh-alt-show): New defalias for mh-show.
7288 (mh-alt-refile-msg): New defalias for mh-refile-msg.
7289 (mh-alt-send): New defalias for mh-send.
7290 (mh-folder-mode-map): Use mh-alt-show, mh-alt-refile-msg and
7291 mh-alt-send for the alias bindings.
7292 (mh-alt-visit-folder): New defalias for mh-visit-folder.
7293 (mh-folder-map): Use it.
7294 (mh-folder-message-menu): Revert previous change.
7296 2002-11-13 Peter S Galbraith <psg@debian.org>
7298 * mh-e.el (mh-folder-message-menu): Make key binding "o" appear in
7299 menu for mh-refile-msg.
7301 2002-11-13 Satyaki Das <satyaki@theforce.stanford.edu>
7303 * mh-seq.el (mh-thread-generate-scan-lines): In threaded view,
7304 scan lines of duplicate messages were too long. The change fixes
7307 2002-11-13 Bill Wohler <wohler@newt.com>
7309 * mh-utils.el (mh-adaptive-cmd-note-flag): Improved grammar in
7312 * mh-speed.el (mh-speed-run-flists-flag): While documenting this
7313 variable in the release notes, I was unsure what would happen if
7314 set to nil. So, I clarified the docstring and indicated
7315 implications of setting this variable to nil, and offered manual
7318 2002-11-13 Satyaki Das <satyaki@theforce.stanford.edu>
7320 * mh-index.el (mh-index-quit): Fix documentation and run
7321 mh-before-quit-hook and mh-quit-hook.
7323 2002-11-13 Bill Wohler <wohler@newt.com>
7325 * mh-utils.el (with-mh-folder-updating): Renamed local variable
7326 mh-save-modification-flag to save-modification-flag.
7328 2002-11-12 Bill Wohler <wohler@newt.com>
7330 * mh-index.el (mh-index-keymap): Renamed to
7331 mh-index-folder-mode-keymap to be a closer to the usual keymap
7332 naming convention. Since we want our own keymap and not inherit
7333 the one in mh-folder-mode, we need to use a suffix other than
7336 * mh-e.el (mh-folder-sequence-menu): s/Msg/Message.
7338 (mh-folder-message-menu): s/Msg/Message. Removed redundant refile
7340 (mh-folder-folder-menu): Aligned symbols.
7342 * mh-index.el (mh-index-folder-message-menu): s/Msg/Message.
7344 * mh-utils.el (mh-show-sequence-menu): s/Msg/Message.
7346 (mh-show-message-menu): s/Msg/Message. Removed redundant refile
7348 (mh-show-folder-menu): Aligned symbols.
7350 2002-11-12 Satyaki Das <satyaki@theforce.stanford.edu>
7352 * mh-index.el (mh-index-matches, mh-index-current-match): Remove
7353 these variables since they were only used for glimpse and grep.
7354 Now the functionality of all the indexing programs will be
7356 (mh-index-search, mh-index-insert-scan, mh-defun-index)
7357 (mh-index-show): Simplify functions since matches are no longer
7359 (mh-index-parse-match): Remove function.
7361 * mh-e.el (mh-scan-cmd-note-width, mh-scan-destination-width)
7362 (mh-scan-date-width, mh-scan-date-flag-width)
7363 (mh-scan-from-mbox-width, mh-scan-from-mbox-sep-width): New
7364 variables to keep track of the widths of the different fields in
7366 (mh-scan-field-from-start-offset, mh-scan-field-from-end-offset)
7367 (mh-scan-field-subject-start-offset): Offsets that are computed
7368 from the scan line widths.
7370 * mh-seq.el (mh-copy-seq-to-eob, mh-thread-inc)
7371 (mh-thread-parse-scan-line): Use new variables that remember the
7372 various offsets in place of integer constants.
7373 (mh-thread-generate-scan-lines): Space shouldn't be added here!
7375 2002-11-12 Bill Wohler <wohler@newt.com>
7377 * mh-e.el (mh-scan-format-mh, mh-scan-format-nmh): Noted that the
7378 first column is column number 0 and changed "sixth column" to
7379 "fifth column" accordingly.
7381 * mh-index.el (mh-index-folder-mode): Clarified method of replying
7382 in mode documentation.
7383 (mh-index-folder-tool-bar-map): s/mh-e/MH-E/.
7385 * mh-e.el (mh-generate-new-cmd-note): Try not to mention internal
7386 variable mh-cmd-note in docstrings.
7388 * mh-utils.el (mh-adaptive-cmd-note-flag): Set default value to t.
7389 Reworded docstring so it doesn't mention internal variable
7390 mh-cmd-note. Added information about using fixed-width message
7392 (mh-cmd-note): Mention mh-set-cmd-note in docstring. Also suggest
7393 that it is updated dynamically only if mh-scan-format-file is t.
7394 (mh-set-cmd-note): Grammer fix in docstring.
7395 (mh-cmd-note): Noted that the first column is column number 0.
7397 * mh-e.el (mh-scan-format-file): Added information about
7398 mh-set-cmd-note and mh-adaptive-cmd-note-flag to docstring.
7400 * mh-index.el (mh-index-keymap): Added bindings for i
7401 (mh-inc-folder), m (mh-send alias), and s (mh-send) since these
7402 appear to be supported and are found in the toolbar.
7403 (mh-index-folder-key-map): Ditto for f (mh-visit-folder alias), o
7404 (mh-visit-folder) alias, and v (mh-visit-folder).
7405 (mh-index-folder-mode-help-messages): Changes for above.
7406 (mh-index-folder-message-menu, mh-index-folder-folder-menu): New
7407 menus. I decided to delete the unavailable items since graying out
7408 implies that the user can do something to access them. In this
7409 case, that's not the case. Well, that's not entirely true--the
7410 user could write code for those functions ;-).
7411 (mh-index-folder-mode): Use new menus.
7413 * mh-utils.el (mh-prompt-for-folder): Added optional argument
7414 default-string which can be used in case the string for default
7415 isn't intuitive enough.
7417 * mh-index.el (mh-index-search): Made default prompt more
7418 intuitive (I hope!).
7420 2002-11-11 Peter S Galbraith <psg@debian.org>
7422 * mh-identity.el (mh-header-field-delete): Remove save-excursion.
7423 Strange that this worked for me before... Thanks to Jeff for the
7425 (mh-insert-identity): Numerous tweaks and fixes from Jeff who also
7426 adds a nicer-looking MIME header for signatures inserted after
7429 2002-11-11 Satyaki Das <satyaki@theforce.stanford.edu>
7431 * mh-seq.el (mh-thread-parse-scan-line): Generalize this function
7432 so that it can take a string containing the scan-line as argument
7433 in addition to using the line at point.
7434 (mh-thread-add-spaces): New function to pad each scan line to the
7435 appropriate length. This is called when mh-cmd-note is increased.
7437 * mh-e.el (mh-generate-new-cmd-note): Make this work on a threaded
7438 folder by using mh-thread-add-spaces to pad the pre-existing lines
7439 in mh-thread-scan-line-map appropriately.
7440 (mh-thread-add-spaces): Autoload from mh-seq.
7442 2002-11-11 Mark D. Baushke <mdb@gnu.org>
7444 * mh-index.el: Fix checkdoc nit.
7446 * mh-mime.el (mh-display-buttons-for-inline-parts-flag): Renamed
7447 from mh-display-buttons-for-inline-parts.
7448 (mh-mime-display-single): Use it.
7449 This addresses part of SF #627015.
7451 * mh-e.el (mh-print-background-flag): Renamed from
7452 mh-print-background.
7453 * mh-funcs.el (mh-print-msg): Use it.
7454 This addresses part of SF #627015.
7456 * mh-comp.el (mh-delete-yanked-msg-window-flag): Renamed from
7457 mh-delete-yanked-msg-window.
7458 (mh-yank-from-start-of-msg, mh-yank-cur-msg): Use it.
7459 This addresses part of SF #627015.
7461 * mh-utils.el (mh-update-sequences-after-mh-show-flag): Renamed
7462 from mh-update-sequences-after-mh-show.
7463 (mh-show-msg): Use it.
7464 This addresses part of SF #627015.
7466 * mh-utils.el (mh-decode-quoted-printable-flag): Renamed from
7467 mh-decode-quoted-printable.
7468 (mh-display-msg, mh-decode-quoted-printable-have-mimedecode):
7470 This addresses part of SF #627015.
7472 * mh-utils.el (mh-recursive-folders-flag): Renamed from
7473 mh-recursive-folders.
7474 (mh-make-folder-list-background): Use it.
7475 * mh-funcs.el (mh-list-folders): Ditto.
7476 This addresses part of SF #627015.
7478 * mh-utils.el (mh-auto-folder-collect-flag): Renamed from
7479 mh-auto-folder-collect.
7480 (mh-find-path): Use it.
7481 This addresses part of SF #627015.
7483 * mh-utils.el (mh-decode-mime-flag): Renamed from
7485 * mh-utils.el (mh-show-mode, mh-show-xface)
7486 (mh-decode-quoted-printable, mh-display-msg, mh-display-msg): Use it.
7487 * mh-mime.el (mh-graphical-smileys-flag)
7488 (mh-graphical-emphasis-flag): Ditto.
7489 * mh-index.el (mh-index-search, mh-index-show): Ditto.
7490 * mh-e.el (mh-header-display): Ditto.
7491 This addresses part of SF #627015.
7493 * mh-e.el (mh-make-folder-mode-line): Use save-window-excursion
7494 to get back to the current message.
7496 2002-11-10 Satyaki Das <satyaki@theforce.stanford.edu>
7498 * mh-index.el (mh-index-keymap, mh-index-page-msg)
7499 (mh-index-folder-tool-bar-map): Replace mh-index-scroll-up with
7501 (mh-index-keymap, mh-index-previous-page): Replace
7502 mh-index-scroll-down with mh-index-previous-page.
7504 2002-11-09 Satyaki Das <satyaki@theforce.stanford.edu>
7506 * mh-index.el (autoload/require): Load mh-mime when mh-index.el is
7507 loaded. This fixes the infinite load loop. I am not sure what the
7508 actual problem is. Also removed the nop requires/autoloads.
7509 (mh-defun-index): Use the right argument for mh-recenter.
7510 Otherwise it misbehaves for the default value of
7513 * mh-e.el (mh-goto-next-button): Fix infinite loop when S-Tab was
7514 used on first line of index folder buffer.
7516 2002-11-09 Peter S Galbraith <psg@debian.org>
7518 * mh-index.el (mh-index-folder-tool-bar-map): Tool-bar for
7520 (mh-index-folder-mode): Use it.
7521 (mh-index-keymap): Added mouse-2 binding, like in regular
7524 2002-11-08 Satyaki Das <satyaki@theforce.stanford.edu>
7526 * mh-index.el (mh-index-folder-mode): Fix doc string for major
7527 mode. It was pointing to the wrong keymap.
7528 (mh-index-show-mode): Fix doc string for mode. Also add mh-help
7531 * mh-comp.el (mh-forward, mh-yank-cur-msg): Use new macro
7532 mh-mark-active-p instead. This does the right thing for different
7534 (mh-yank-cur-msg): Add a space between sexprs.
7536 * mh-utils.el (mh-mark-active-p): New macro which papers over
7537 diffences between GNU Emacs and XEmacs. The variables mark-active
7538 and transient-mark-mode are used in GNU Emacs while zmacs-regions
7539 and region-active-p are used in XEmacs.
7541 * mh-seq.el (mh-put-msg-in-seq, mh-thread-ancestor-p): Use
7542 mh-mark-active-p as above.
7544 * mh-e.el (mh-delete-msg, mh-refile-msg, mh-undo): Use
7545 mh-mark-active-p as above.
7547 2002-11-06 Peter S Galbraith <psg@debian.org>
7549 * mh-comp.el (mh-yank-cur-msg): Fix for XEmacs. It didn't work
7550 with a selected region, and left the inserted text selected (in
7551 reverse video). I didn't use SF patch #402315 to implement this.
7553 2002-11-05 Peter S Galbraith <psg@debian.org>
7555 * mh-utils.el (mh-show-tool-bar-map): Change call to
7556 mh-tool-bar-search-command such that user can customize it for the
7559 * mh-e.el (mh-folder-tool-bar-map): Same.
7561 2002-11-05 Bill Wohler <wohler@newt.com>
7563 * mh-utils.el, mh-e.el (mh-tool-bar-search-function): Renamed from
7564 mh-tool-bar-search-command.
7566 * mh-index.el (mh-index-search): Backed out previous change to
7567 prompt. There ain't no folder named "all."
7569 * mh-utils.el (mh-tool-bar-search-command): Added mh-search-folder
7570 and mh-index-search to the docstring so that user can easily click
7571 on them for more information.
7573 * mh-pick.el (mh-search-folder): Mention that this function uses
7574 the MH pick command to give the user more information when
7575 choosing between mh-search-folder and mh-index-folder.
7577 * mh-index.el (mh-index-search): Edited the docstring. Direct the
7578 user to mh-index-program if necessary.
7579 (mh-index-program): Edited this docstring too. Viewing the help
7580 in a *Help* buffer really exposes grammatical flaws.
7582 2002-11-05 Peter S Galbraith <psg@debian.org>
7584 * mh-utils.el (mh-tool-bar-search-command): New defcustom to set
7585 what search function to use in tool-bar.
7586 (mh-show-tool-bar-map): Use it.
7588 * mh-e.el (mh-folder-tool-bar-map): Use it.
7590 2002-11-05 Bill Wohler <wohler@newt.com>
7592 * mh-index.el (mh-index-search): Changed default prompt from "+"
7593 to "all". mh-prompt-for-folder doesn't seem to mind.
7595 * mh-e.el (mh-folder-folder-menu): Added menu entry for
7598 * mh-utils.el (mh-show-folder-menu): Added menu entry for
7601 * mh-index.el: Added commentary on supported search engines and
7602 for getting started (initializing database).
7604 2002-11-04 Satyaki Das <satyaki@theforce.stanford.edu>
7606 * mh-index.el (mh-index-keymap, mh-index-folder-key-map): Move key
7607 binding of "i" to "Fi".
7608 (mh-index-folder-mode-help-messages): Change help message to
7609 reflect above change.
7611 2002-11-04 Bill Wohler <wohler@newt.com>
7613 * mh-index.el (mh-index-program, mh-indexer): Swapped names since
7614 the former seems like a better user variable name. If you've
7615 customized mh-indexer, be sure to toss it out and customize
7618 2002-11-04 Satyaki Das <satyaki@theforce.stanford.edu>
7620 * mh-index.el (mh-indexer-choices): Not having the quotes in the
7621 binary names is a bit nicer since that maintains uniformity with
7623 (mh-index-choose): Use symbol-value instead of eval. Eval should
7624 be avoided except when it can't be :-).
7626 2002-11-04 Bill Wohler <wohler@newt.com>
7628 * mh-index.el (mh-index-program): New variable to hold the name of
7629 the indexer that was found; use this instead of clobbering
7630 user-customizable variable mh-indexer.
7631 (mh-index-search): Use it. Added comments to keep others from
7632 doing what I had done (fortunately, I caught myself before
7634 (mh-index-choose): Set mh-index-program instead of mh-indexer.
7635 Update docstring to describe side-effects.
7637 * mh-index.el (mh-indexer): Added swish++ to docstring. Chances
7638 are good that if someone has both swish++ and swish, they want to
7639 use the much faster, much smaller swish, so move it up in the
7641 (mh-indexer-choices): Ditto for rationale for moving swish++ up in
7642 priority over swish. Also, use -binary symbols instead of
7643 hard-coding binary names. This allows package installers to
7644 customize the location of the binaries in site-lisp and still have
7645 the auto-detection code work. It also allows one to have alternate
7646 binary names (see mh-swish++-binary).
7647 (mh-index-search): Ditto (moving swish++ up).
7648 (mh-swish++-binary): Look for search++, then search. The rationale
7649 is that a package maintainer may rename search to search++ if
7650 search is already in use (e.g., Debian) so try it first.
7651 (mh-swish++-execute-search): Replaced Satyaki's path with dummy
7652 path in docstring. Also removed RecurseSubdirs since this is the
7653 default. Added comment that index might be named index++ on some
7654 systems (e.g., Debian).
7655 (mh-index-choose): Updated to work with new mh-indexer-choices.
7657 2002-11-04 Peter S Galbraith <psg@debian.org>
7659 * mh-identity.el (mh-identity-list-set): Don't call easy-menu-add
7660 here, since that adds the menu to the Customize buffer in XEmacs.
7662 2002-11-04 Peter S Galbraith <psg@debian.org>
7664 * mh-comp.el (mh-mhn-compose-insert-flag)
7665 (mh-mml-compose-insert-flag): Removed eval-when-compile defvar.
7667 * mh-mime.el (mh-mhn-compose-insert-flag)
7668 (mh-mml-compose-insert-flag): Move variables to mh-utils.el.
7669 Fixes mh-letter-menu for XEmacs.
7671 2002-11-04 Eric Ding <eding@rational.com>
7673 * mh-comp.el (mh-rejected-letter-start): add another string
7675 2002-11-04 Eric Ding <ericding@alum.mit.edu>
7677 * mh-comp.el (mh-rejected-letter-start): regexp-opt doesn't take
7678 regexps as args, only regular strings
7680 2002-11-04 Peter S Galbraith <psg@debian.org>
7682 * mh-comp.el (mh-insert-mail-followup-to): Don't modify a
7683 pre-existing M-F-T field. If a nmh replgroupcomps propagates a
7684 M-F-T field in a message reply, then we have to have it alone.
7686 2002-11-02 Bill Wohler <wohler@newt.com>
7688 * mh-comp.el, mh-e.el, mh-funcs.el, mh-identity.el, mh-index.el,
7689 mh-mime.el, mh-pick.el, mh-seq.el, mh-speed.el, mh-utils.el,
7690 mh-xemacs-compat.el: Added Local Variables section. Defined
7691 sentence-end-double-space to be nil so that those who might not
7692 buy my setting of this variable can at least run checkdoc without
7693 a whole lot of noise.
7695 2002-11-02 Peter S Galbraith <psg@debian.org>
7697 * mh-identity.el: New file. Multiple Identify support for MH-E.
7698 Used to easily set different fields such as From and Organization,
7699 as well as diffrent signature files. This file won't be included
7702 2002-11-02 Bill Wohler <wohler@newt.com>
7704 * mh-mime.el (mh-mm-save-part): New function to wrap mm-save-part
7705 from Gnus 5.10 to make it explicit which code has been
7707 (mh-mime-save-part): Call mh-mm-save-part instead of cut-n-pasted
7708 code from Gnus 5.10.
7710 2002-11-02 Peter S Galbraith <psg@debian.org>
7712 * mh-comp.el (mh-yank-from-start-of-msg): Edit docstring to
7713 mention related variables mh-reply-show-message-flag and
7714 mh-delete-yanked-msg-window.
7715 (mh-reply): Change the "Reply to whom" prompt.
7717 2002-11-01 Bill Wohler <wohler@newt.com>
7719 * mh-e.el (mh-show-hook): Moved to mh-utils.el where it is used.
7720 (mh-folder-list-change-hook): Converted this from defvar in other
7721 files to defcustom here. It is called, not documented as
7722 obsolete, and might as well be documented.
7723 (mh-inc-folder, mh-quit, mh-delete-a-msg, mh-refile-a-msg,
7724 mh-process-commands, mh-update-unseen): Added missing
7725 documentation about hook, or made verbiage about hook consistent
7726 throughout, even if the function isn't interactive.
7728 * mh-utils.el (mh-folder-list-change-hook): Moved defvar to mh-e
7729 and made it a defcustom.
7730 (mh-show-mode-hook): Put it back in (actually, it was in mh-e.el,
7731 but this is the place where it is called).
7732 (mh-show-hook): Moved here from mh-e.el since it's called here.
7733 (mh-show-mode): Call mh-show-mode-hook.
7734 (mh-show-mode, mh-show-msg, mh-find-path, mh-prompt-for-folder,
7735 mh-prompt-for-folder, mh-set-folder-list): Added missing
7736 documentation about hook, or made verbiage about hook consistent
7737 throughout, even if the function isn't interactive.
7739 * mh-comp.el (mh-send-letter): Made verbiage about hook consistent
7741 (mh-insert-prefix-string): Made docstring more descriptive of what
7744 * mh-funcs.el (mh-kill-folder): Added missing documentation about
7747 * mh-index.el (mh-index-show-hook): Moved defvar to defcustom.
7748 (mh-index-show): Made verbiage about hook consistent throughout.
7750 * mh-mime.el (mh-edit-mhn-hook): Moved defvar to defcustom.
7751 (mh-edit-mhn): Added missing documentation about hook.
7753 * mh-pick.el (mh-pick-mode): Made verbiage about hook consistent
7754 throughout. Call the damn hook.
7756 2002-11-01 Satyaki Das <satyaki@theforce.stanford.edu>
7758 * mh-comp.el (mh-insert-mail-followup-to-list): Fix typo so that
7759 it will look right in info.
7761 * mh-index.el (mh-index-search): Change argument name from
7762 new-buffer-p to new-buffer-flag.
7763 (mh-index-search-again, mh-index-search): New index-buffers were
7764 being named *mh-index*<2>, *m-index*<2><2> and so on. This problem
7766 (mh-index-scroll-up, mh-index-scroll-down): Scrolling in index
7767 show buffers (after the first one) was broken.
7768 (mh-index-quit): Bury show buffer instead of killing it. Killing
7769 it, without killing the corresponding folder buffer, can cause
7770 confusion with two folder buffers trying to display in the same
7773 * mh-seq.el (mh-thread-prune-containers): Rewritten without
7774 recursion. Also removed the top-level-p argument since it isn't
7776 (mh-thread-sort-containers): New function factored out from
7777 previous definition of mh-thread-prune-containers. It sorts
7778 message containers in ascending order wrt their message indices.
7779 (mh-thread-generate): Use new mh-thread-prune-containers.
7781 * mh-e.el (mh-remove-all-notation): Fix the test. It was testing
7784 2002-10-31 Bill Wohler <wohler@newt.com>
7786 * Makefile, README, import-emacs, mh-comp.el, mh-e.el,
7787 mh-funcs.el, mh-index.el, mh-mime.el, mh-pick.el, mh-seq.el,
7788 mh-speed.el, mh-utils.el: Replaced mh-e with MH-E.
7790 2002-10-31 Satyaki Das <satyaki@theforce.stanford.edu>
7792 * mh-seq.el (mh-thread-parse-scan-line): Modified to remove user
7793 sequence notation and leave notation for other things alone. This
7794 ensures that threading doesn't lose notations for replied-to
7797 * mh-e.el (mh-inc-folder): Remove call to mh-widen here and
7798 instead do it in mh-get-new-mail. This way the widening happens
7799 only if new mail is incorporated.
7800 (mh-generate-new-cmd-note): The function now returns the point
7801 from which the new messages start. This will allow threading to do
7803 (mh-get-new-mail): Always call mh-remove-cur-notation. Otherwise
7804 adaptive scan mode leaves two messages marked as current in
7805 certain cases. Fix indentation of if statement. If there are
7806 messages to be incorporated, the folder is widened. If mh-cmd-note
7807 changes set start-of-inc correctly.
7808 (mh-remove-all-notation): Change this function to only remove user
7809 sequence notation and leave notation for replied-to messages and
7810 similar notation alone. This means operations like narrowing to
7811 subject sequence and widening don't lose notations.
7813 2002-10-31 Bill Wohler <wohler@newt.com>
7815 * mh-comp.el (mh-insert-mail-followup-to-list): Fixed typo in
7816 docstring and other minor edits. Checkdoc removed trailing spaces.
7817 (mh-insert-signature): Checkdoc flagged docstring. Reverted to
7818 previous value. Added specific name of hook that is run.
7819 (mh-regexp-in-field-p, mh-insert-letter): Checkdoc removed
7822 2002-10-31 Jeffrey C Honig <jch@honig.net>
7824 * mh-e.el (mh-show-mode-hook): Remove the unused
7825 mh-show-mode-hook, mh-show-hook is the one that is used.
7827 * mh-utils.el (mh-show-mode): Change the documentation to refer to
7828 mh-show-hook instead of the unused mh-show-mode-hook.
7830 2002-10-31 Peter S Galbraith <psg@debian.org>
7832 * mh-comp.el (mh-insert-mail-followup-to-list): Set default to nil
7833 and include example in doc string.
7835 2002-10-31 Satyaki Das <satyaki@theforce.stanford.edu>
7837 * mh-index.el (mh-indexer): Add customization choice for swish++.
7838 (mh-indexer-choices): Add swish++ choice.
7839 (mh-index-search): Change doc to reflect addition of swish++ option.
7840 (mh-swish++-binary, mh-swish++-directory): New variables for
7842 (mh-swish++-execute-search): New function to execute swish++
7844 (mh-swish++-next-result): Function aliased to mh-swish-next-result
7845 since the result format of swish++ is the same as that of swish-e.
7846 (mh-index-search): Always overwrite window-configuration with new
7847 value. This is needed since we don't kill the index-buffer when
7848 quitting which means the window configuration wasn't getting set
7850 (mh-index-search-again): If index buffer is reused, reset the old
7851 window config to its original value.
7853 2002-10-30 Bill Wohler <wohler@newt.com>
7855 * Makefile (emacs, xemacs): New targets.
7856 (all): Use these targets instead of calling specific targets.
7857 (.PHONY): Added emacs, xemacs, autoloads, custom-loads. Broke up
7858 target and moved pieces into their own sections.
7860 2002-10-30 Peter S Galbraith <psg@debian.org>
7862 * mh-utils.el (mh-show-font-lock-keywords): Wrap an
7863 'eval-and-compile around its defvar, otherwise byte-compilation
7864 fails on `mh-show-font-lock-keywords-with-cite'.
7866 2002-10-29 Jeffrey C Honig <jch@honig.net>
7868 * mh-comp.el (mh-letter-insert-signature-hook)
7869 (mh-insert-signature): Add a hook to be called before inserting
7870 the signature. Do not attempt to insert the signature if
7871 mh-insert-signature-file-name is nil.
7873 2002-10-29 Peter S Galbraith <psg@debian.org>
7875 * mh-e.el (mh-inc-folder): Call mh-widen when mh-narrowed-to-seq
7876 (Closes SF #629233: inc in narrowed folder suboptimal)
7878 * mh-comp.el (mh-insert-letter): Stop using mhl to include a
7879 message before it mangles the header, and supercite fails
7880 (Closes SF #629153: mh-insert-letter uses mhl?).
7881 (mh-insert-prefix-string): Leave point at beginning instead of
7882 end, since that's what sc-cite-original does.
7883 (mh-yank-cur-msg): Adjust for mh-insert-prefix-string change.
7885 2002-10-30 Steve Youngs <youngs@xemacs.org>
7887 * mh-e.el (mh-folder-mode): Check for 'font-lock-auto-fontify'
7888 when in XEmacs so we don't do font-locking unconditionally.
7890 * mh-utils.el (mh-show-mode): Ditto.
7892 2002-10-29 Peter S Galbraith <psg@debian.org>
7894 * mh-e.el (mh-folder-refiled-face, mh-folder-cur-msg-number-face)
7895 (mh-folder-to-face, mh-folder-body-face): Define faces instead of
7896 copying them from font-lock faces. This mh-e will look the same
7897 in XEmacs as it does in Emacs.
7898 * mh-utils.el (mh-show-cc-face, mh-show-date-face)
7899 (mh-show-header-face): Ditto.
7901 2002-10-29 Jeffrey C Honig <jch@honig.net>
7903 * mh-comp.el (mh-send-letter): I meant to use
7904 mh-goto-header-field, not mh-get-header-field. The former returns
7905 nil if the header is not found and doesn't need a conditional.
7907 2002-10-29 Peter S Galbraith <psg@debian.org>
7909 * mh-comp.el (mh-forward): Bug fix. Change 'kill-line for a
7910 'delete-region, because I don't want that text yanked with C-y.
7912 * mh-seq.el (mh-put-msg-in-seq): Add support for selected
7913 region (Closes SF feature request #630324).
7915 2002-10-28 Satyaki Das <satyaki@theforce.stanford.edu>
7917 * mh-seq.el (mh-thread-prune-subject): Make the regexp a little
7918 general so that a subject of the form "Re[218]: howdy" would be
7921 * mh-mime.el (mh-mime-save-part): Copy function definition of
7922 mm-save-part from cvs gnus since that function is buggy in gnus
7923 that comes with emacs21.2.
7925 2002-10-28 Peter S Galbraith <psg@debian.org>
7927 * mh-e.el (mh-scan-subject-regexp): Add an expression to match an
7928 optional bracketed number after "Re", such as in "Re[2]:".
7929 (Patch by Satyaki; I checked it and applied).
7930 (mh-folder-font-lock-subject): Adapt to new mh-scan-subject-regexp.
7931 * mh-seq.el (mh-subject-to-sequence): Ditto.
7933 * mh-e.el (mh-folder-sequence-menu): Remove "Toggle Subject
7934 Thread" from menu. mh-toggle-threads is in the Folder menu.
7936 * mh-e.el (mh-folder-sequence-menu): Minor menu text edits.
7938 * mh-utils.el (mh-show-update-sequences): Added to
7939 mh-defun-show-buffer builds; needed for menu.
7940 (mh-show-sequence-menu, mh-show-message-menu)
7941 (mh-show-folder-menu): 3 new menus in mh-show-mode-map that mirror
7942 the menus used in mh-folder-mode.
7943 (mh-show-mode): easy-menu-add the 3 menus.
7945 2002-10-28 Satyaki Das <satyaki@theforce.stanford.edu>
7947 * mh-utils.el (mh-goto-msg): Fix the regexp to search so that we
7948 go to the right message. In a threaded folder message 2 may be
7949 present after 26 and the previous regexp would go to 26 when we
7950 really wanted to go to 2!
7952 * mh-seq.el (mh-widen): Add call to mh-recenter to make it like
7955 2002-10-28 Bill Wohler <wohler@newt.com>
7957 * mh-utils.el (mh-show-mime-save-parts): Deleted definition.
7958 (mh-show-mime-map, tool-bar-map): Use mh-mime-save-parts instead
7959 of mh-show-mime-save-parts.
7961 2002-10-28 Peter S Galbraith <psg@debian.org>
7963 * mh-comp.el (mh-letter-tool-bar-map): tool-bar-add-item key name
7965 * mh-utils.el (mh-show-tool-bar-map): Same.
7966 * mh-e.el (mh-folder-tool-bar-map, mh-folder-seq-tool-bar-map): Same
7968 2002-10-27 Satyaki Das <satyaki@theforce.stanford.edu>
7970 * mh-seq.el (mh-toggle-threads): Add call to mh-recenter to make
7971 its behavior like that of mh-narrow-to-seq.
7973 2002-10-27 Bill Wohler <wohler@newt.com>
7975 * mh-mime.el (mh-mime-save-parts): Renamed from
7976 mh-store-mime-parts for consistency with mh-mime-save-part. Fixed
7977 bug whereby mh-mime-save-parts-directory was not getting
7978 initialized properly from a string-valued
7979 mh-mime-save-parts-default-directory.
7980 (mh-mime-save-parts-default-directory): Ditto. Check your
7982 (mh-mime-save-parts-directory): Ditto.
7984 * mh-utils.el (mh-show-mime-save-parts): Renamed from
7985 mh-store-mime-parts.
7986 (mh-show-mime-map): Added keybinding "K a" for
7987 mh-show-mime-save-parts.
7989 * mh-e.el (mh-mime-save-parts) Renamed from mh-store-mime-parts.
7990 (mh-mime-map): Added keybinding "K a" for mh-mime-save-parts.
7991 (mh-help-messages): Added help for "K a".
7993 2002-10-27 Peter S Galbraith <psg@debian.org>
7995 * mh-comp.el (mh-search-addr-regexp, mh-regexp-in-field-p): Rename
7996 the first to the second (and recode a bit).
7997 (mh-insert-mail-followup-to): Use it.
7999 2002-10-27 Bill Wohler <wohler@newt.com>
8001 * mh-utils.el (mh-invisible-headers): Backed out change. Removed
8002 Mail-Followup-To due to objections from Peter and Mark.
8004 2002-10-27 Satyaki Das <satyaki@theforce.stanford.edu>
8006 * mh-seq.el (mh-msg-is-in-seq): Modified to show info about
8007 whether the message being queried about has been marked to be
8010 * mh-mime.el (mh-insert-mime-security-button): Make
8011 pressed-details a local.
8013 2002-10-27 Steve Youngs <youngs@xemacs.org>
8015 * .cvsignore: New file.
8017 2002-10-26 Steve Youngs <youngs@xemacs.org>
8019 * mh-seq.el (mh-notate-deleted-and-refiled): Don't bind local
8020 variable 'dest', it isn't used anywhere.
8022 * mh-pick.el (mh-do-pick-search): Don't bind local variable
8023 'finding-messages', it isn't used anywhere.
8025 * mh-utils.el: Byte-compiler warning suppression.
8026 (mh-gnus-article-highlight-citation): Rather than redefining
8027 'gnus-cite-face-list', just re-order it.
8028 (mh-show-mode): Force turning on font-lock in XEmacs.
8030 * mh-seq.el: Byte-compiler warning suppression.
8032 * mh-index.el: Byte-compiler warning suppression.
8034 * mh-comp.el: Byte-compiler warning suppression.
8036 * mh-xemacs-compat.el: Add defaliases for 'timerp' &
8037 'cancel-timer' to the equivalent 'itimer' functions.
8038 (rfc822): Require it for 'rfc822-goto-eoh'.
8039 Byte-compiler warning suppression.
8041 * mh-e.el (mh-folder-mode): Force turning on font-lock in XEmacs.
8042 (mh-toggle-threads): Remove duplicate autoload.
8043 Byte-compiler warning suppression.
8044 (mh-folder-unseen-seq-list): Use 'with-temp-buffer' to fix a bug
8045 in XEmacs when font-lock is on.
8046 (mh-folder-unseen-seq-name): Ditto.
8048 2002-10-27 Mark D. Baushke <mdb@gnu.org>
8050 * Makefile: Reorganize to allow for building also compiling for
8051 XEmacs too. Sanitize so that it will work using least-common
8052 denominator versions of 'make'. Tested using GNU make, Solaris make,
8054 (all): Use recursive invocation based on the emacs or xemacs
8055 executable passed on the 'make EMACS=xemacs' command line.
8056 (XEMACS_OPTIONS): The incantation to be passed to an xemacs editor
8057 to compile things properly.
8058 (AUTO_PRELOADS): Magic XEmacs glue.
8061 (custom-loads): Ditto.
8063 2002-10-26 Satyaki Das <satyaki@theforce.stanford.edu>
8065 * mh-e.el (mh-last-msg): Add call to mh-recenter.
8067 2002-10-26 Peter S Galbraith <psg@debia.org>
8069 * mh-comp.el (mh-search-addr-regexp, mh-re-search-to-cc): Remove
8070 `mh-re-search-to-cc' in favor of more generalized new function
8071 `mh-search-addr-regexp'.
8072 (mh-insert-mail-followup-to): Use it.
8074 2002-10-26 Satyaki Das <satyaki@theforce.stanford.edu>
8076 * mh-seq.el (mh-copy-seq-to-eob): Avoid rethreading when the
8077 folder is already threaded. This is more efficient and also avoids
8078 problems when the folder is widened.
8079 (mh-thread-inc): Don't try to restore the point to original
8080 location since mh-inc-folder from where this is called changes
8081 point location after calling this function.
8083 * mh-e.el (mh-make-folder-mode-line): Fix a small bug where the
8086 2002-10-26 Peter S Galbraith <psg@debian.org>
8088 * mh-comp.el (mh-insert-mail-followup-to): Fix for new defcustom.
8090 2002-10-26 Satyaki Das <satyaki@theforce.stanford.edu>
8092 * mh-seq.el (mh-notate-deleted-and-refiled): Remove unused binding
8093 of dest. The problem was pointed out by Steve as well.
8095 * mh-e.el (mh-toggle-threads): Remove duplicate autoload as
8096 pointed out by Steve.
8098 2002-10-26 Bill Wohler <wohler@newt.com>
8100 * mh-utils.el (mh-invisible-headers): Added Mail-Followup-To.
8102 2002-10-26 Peter S Galbraith <psg@debian.org>
8104 * mh-comp.el (mh-insert-mail-followup-to-list): Change defvar to
8107 2002-10-25 Satyaki Das <satyaki@theforce.stanford.edu>
8109 * mh-e.el (mh-remove-all-notation): New function that removes all
8112 * mh-seq.el (mh-narrow-to-seq): When hiding the original folder
8113 remove all notation. This avoids stale notation hanging around.
8114 Also changes in show buffer and position in folder buffer are
8115 avoided if possible.
8116 (mh-widen): When widening the scan-lines are notated based on the
8117 current state of the folder. This means any changes made when the
8118 folder was narrowed are shown consistently.
8119 (mh-notate-deleted-and-refiled): Update the documentation.
8120 (mh-thread-parse-scan-line): For some reason the ASCII value of
8121 the space character was being used here. This is fixed.
8122 (mh-thread-inc, mh-toggle-threads): Avoid change of point in
8123 folder and message being displayed in shown buffer.
8125 * mh-utils.el (mh-recenter): Rewrite mh-recenter to show fewer
8126 blank lines when point is towards the end of the folder buffer.
8128 2002-10-25 Peter S Galbraith <psg@debian.org>
8130 * mh-comp.el (mh-insert-mail-followup-to-flag): New boolean
8131 defcustom to append a Mail-Followup-To field to the header. The
8132 insertion is done if the To: or Cc: fields matches an entry in
8133 `mh-insert-mail-followup-to-list'."
8134 (mh-insert-mail-followup-to-list): New defvar. List of addresses
8135 for which a Mail-Followup-To field is inserted.
8136 (mh-re-search-to-cc): New function. Search for REGEXP in To: and
8138 (mh-insert-mail-followup-to): New function. Insert
8139 Mail-Followup-To: if To or Cc match `mh-insert-mail-followup-to-list'.
8140 (mh-compose-and-send-mail): Call mh-insert-mail-followup-to if
8141 mh-insert-mail-followup-to-flag is true.
8143 2002-10-25 Mark D. Baushke <mdb@gnu.org>
8145 * mh-utils.el (mh-show-maximum-size): New variable to control
8146 the display of large messages.
8147 (mh-display-msg): Use it (Closes SF #488696).
8149 * mh-seq.el (mh-toggle-threads): Checkdoc fix.
8151 * mh-e.el (mh-reset-threads-and-narrowing): Checkdoc fix.
8153 * mh-comp.el (mh-insert-x-mailer-flag): Renamed from
8154 mh-insert-x-mailer-p. Update docstring.
8155 (mh-send-letter): Use it.
8156 (mh-reply-show-message-flag): Renamed from
8157 mh-reply-show-message-p. Update docstring.
8159 This addresses part of SF #627015.
8161 * mh-e.el (mh-recenter-summary-flag): Renamed from
8162 mh-recenter-summary-p. Update docstring.
8163 (mh-set-scan-mode): Use it.
8164 This addresses part of SF #627015.
8166 2002-10-25 Satyaki Das <satyaki@theforce.stanford.edu>
8168 * mh-e.el (mh-reset-threads-and-narrowing): New function which
8169 resets all thread and narrowing state to completely unthreaded and
8170 widened state. As a side effect, the folder buffer is erased.
8171 (mh-rescan-folder): Reset threads and narrowing state.
8173 * mh-funcs.el (mh-pack-folder-1): Reset threads and narrowing state.
8175 * mh-seq.el (mh-copy-seq-to-eob): Change mh-view-ops after
8176 threading is over so that if user aborts threading, it doesn't
8177 leave mh-e in an inconsistent state.
8178 (mh-toggle-threads): Use mh-scan-folder to populate the folder
8179 buffer instead of mh-rescan-folder which resets threading and
8182 2002-10-24 Bill Wohler <wohler@newt.com>
8184 * mh-e is completely checkdoc clean now.
8186 * mh-utils.el (mh-clean-message-header-flag): Renamed from
8187 mh-clean-message-header.
8188 (mh-bury-show-buffer-flag): Renamed from mh-bury-show-buffer.
8189 (mh-show-use-goto-addr-flag): Renamed from mh-show-use-goto-addr.
8190 This addresses part of SF #627015.
8192 * mh-mime.el (mh-clean-message-header-flag): Renamed from
8193 mh-clean-message-header.
8194 Checkdoc fixes. This addresses part of SF #627015.
8196 * mh-index.el (mh-clean-message-header-flag): Renamed from
8197 mh-clean-message-header. This addresses part of SF #627015.
8199 * mh-funcs.el (mh-do-not-confirm-flag): Renamed from
8200 mh-do-not-confirm. This addresses part of SF #627015.
8202 * mh-e.el (mh-do-not-confirm-flag): Renamed from
8204 (mh-clean-message-header-flag): Renamed from
8205 mh-clean-message-header.
8206 This addresses part of SF #627015.
8208 * mh-comp.el: checkdoc fixes.
8210 2002-10-24 Satyaki Das <satyaki@theforce.stanford.edu>
8212 * mh-seq.el (mh-copy-seq-to-eob): Rewritten to scan the headers
8213 fresh instead of yanking from buffer. This is needed to get
8214 correct threading in copied sequence.
8215 (mh-thread-inc, mh-thread-update-scan-line-map)
8216 (mh-thread-parse-scan-line): Eliminate the use, and hence the
8217 definition of, the kludgy mh-thread-update-scan-line-map. Instead
8218 the functions mh-notate-deleted-and-refiled and
8219 mh-notate-user-sequences are used to get the message marks right.
8220 (mh-thread-generate-scan-lines): Updated to allow the thread tree
8221 to be used in a narrowed folder buffer.
8222 (mh-thread-folder, mh-toggle-threads): Remove
8223 mh-folder-threaded-view-flag.
8224 (mh-thread-old-scan-line-map): New buffer-local variable that
8225 remembers the original scan-line map so that the sequence thread,
8226 narrow, widen will work.
8227 (mh-narrow-to-seq, mh-widen): Remember the scan-line map when
8228 narrowing and restore it when widening.
8230 * mh-e.el (mh-folder-threaded-view-flag, mh-folder-folder-menu)
8231 (mh-regenerate-headers, mh-get-new-mail)
8232 (mh-make-folder-mode-line, mh-process-commands)
8233 (mh-delete-scan-msgs): Remove mh-folder-threaded-view-flag.
8234 Instead (memq 'unthread mh-view-ops) is used to test if the folder
8237 * mh-mime.el (mh-display-emphasis): Shadow article-goto-body here
8238 since we want to do emphasis on the whole of the region and not
8239 just after the first blank line.
8240 (mh-mm-display-part): When displaying a text part show smilies and
8243 * mh-index.el (mh-index-insert-scan): Attempt to keep number of
8244 args to scan small if there are lots of adjacent matches.
8245 (mh-index-quit): Bury index-buffer on quit instead of killing it.
8246 This behavior is more like that of mh-quit.
8248 * mh-seq.el (mh-widen): If folder was threaded after narrowing
8249 then make mh-widen undo the threading instead of erroring out.
8251 2002-10-24 Peter S Galbraith <psg@debian.org>
8253 * mh-seq.el (mh-toggle-threads): Add a cond (as suggested by
8254 Satyaki) to properly unthread a narrowed-to-sequence.
8256 * mh-seq.el (mh-thread-generate-scan-lines): Fix threading
8257 breakage from partial switch to mh-container-real-child-flag and
8260 * mh-comp.el (mh-yank-cur-msg): Bug fix: specify
8261 (eq t mh-yank-from-start-of-msg) when that's what we want.
8263 2002-10-24 Mark D. Baushke <mdb@gnu.org>
8265 * mh-seq.el (mh-thread-prune-subject): Renamed subject-pruned-p as
8266 subject-pruned-flag.
8267 (mh-thread-inc): Renamed old-buffer-modified-p as
8268 old-buffer-modified-flag.
8269 (mh-thread-generate-scan-lines): Renamed dupl-p as dupl-flag.
8270 This addresses part of SF #627015.
8272 * mh-index.el (mh-index-advance): Renamed backward-p
8273 local variable as backward-flag.
8274 (mh-index-next-button): Renamed backward-p
8275 argument as backward-flag.
8276 (mh-index-show): Renamed display-headers-p argument as
8277 display-headers-flag.
8278 This addresses part of SF #627015.
8280 * mh-e.el (mh-scan-format, mh-version): Use mh-nmh-flag.
8281 (mh-folder-mime-action): Renamed include-security-p
8282 argument as include-security-flag.
8283 (mh-goto-next-button, mh-next-button): Renamed backward-p
8284 argument as backward-flag.
8285 (mh-get-new-mail): Renamed new-mail-p local variable as
8287 (mh-goto-cur-msg): Renamed minimal-changes-p argument as
8288 minimal-changes-flag.
8289 (redraw-needed-flag): Renamed redraw-needed-p local variable as
8291 (mh-seq-containing-msg): Renamed include-internal-p argument as
8292 include-internal-flag.
8293 (mh-page-msg): Use mh-page-to-next-msg-flag.
8294 This addresses part of SF #627015.
8296 * mh-mime.el (mh-mhn-compose-insert-flag): Renamed from
8297 mh-mhn-compose-insert-p. Make it buffer-local.
8298 (mh-mhn-compose-type, mh-mhn-compose-external-type,
8299 mh-mhn-compose-forw, mh-edit-mhn): Use mh-mhn-compose-insert-flag.
8300 (mh-mml-to-mime, mh-mml-secure-message-encrypt-pgpmime,
8301 mh-mime-display-part, mh-mime-display-single): Use
8302 mh-gnus-pgp-support-flag renamed from mh-gnus-pgp-support-p.
8303 (mh-mime-display-single): Renamed small-image-p local
8304 variable as small-image-flag.
8305 (mh-mime-inline-part): Renamed local variable inserted-p as
8307 (mh-mime-inline-part): Renamed local variable displayed-p as
8309 This addresses part of SF #627015.
8311 * mh-comp.el (mh-letter-menu, mh-letter-mode, mh-send-letter):
8312 mh-mhn-compose-insert-flag.
8313 (mh-repl-group-formfile, mh-forward): Use mh-nmh-flag
8314 renamed from mh-nmh-p.
8315 (mh-reply, mh-insert-x-mailer, mh-send-letter): Use mh-nmh-flag.
8316 (mh-letter-mode-map): Use mh-gnus-pgp-support-flag renamed from
8317 mh-gnus-pgp-support-p.
8318 (mh-mml-secure-message-sign-pgpmime): Use
8319 mh-gnus-pgp-support-flag.
8320 This addresses part of SF #627015.
8322 * mh-utils.el (mh-page-to-next-msg-flag): Renamed from
8323 mh-page-to-next-msg-p.
8324 (mh-show-msg): Use mh-page-to-next-msg-flag.
8325 (mh-gnus-pgp-support-flag): Renamed from
8326 mh-gnus-pgp-support-p.
8327 (mh-show-font-lock-fontify-region): Fix docstring per checkdoc.
8328 (with-mh-folder-updating): Renamed argument
8329 save-modification-flag-p as mh-save-modification-flag.
8330 (mh-prompt-for-folder): Renamed new-file-p local
8331 variable as new-file-flag.
8332 This addresses part of SF #627015.
8334 2002-10-24 Mark D. Baushke <mdb@gnu.org>
8336 * mh-comp.el (mh-forward): Fix mh-mml-compose-insert-p reference
8337 in last commit to be mh-mml-compose-insert-flag.
8338 (mh-mml-compose-insert-flag): Move defvar to fix compiler warning.
8340 2002-10-24 Jeffrey C Honig <jch@honig.net>
8342 * mh-comp.el (mh-forward): Add support for transient-mark mode.
8343 When using nmh, always specify -mime so as to preserve the
8344 original message(s). If mh-compose-insertion is 'gnus, convert
8345 the mhbuild format forwarding directives into MML.
8347 2002-10-24 Eric Ding <ericding@alum.mit.edu>
8349 * mh-comp.el (mh-send-letter): Fix for earlier change that added
8350 "-mime" for bcc'ed MIME mail; still doesn't work with nmh 1.0, but
8351 at least no longer triggered for every outgoing message!
8353 2002-10-24 Peter S Galbraith <psg@debian.org>
8355 * mh-comp.el (mh-yank-cur-msg): Fix selected regions for supercite
8358 * mh-comp.el (mh-yank-cur-msg): Fix for supercite. Someone played
8359 with the point and mark setting prior to the call to
8360 'mh-insert-prefix-string and that broke supercite. I put comments
8361 to make it obvious to future coders why those settings exists.
8362 Note that supercite is still broken when a region is selected in
8363 the show buffer. Presumably it's been like that for a long time.
8364 We need to insert the header as well as the selected region oin
8365 that case. I'll submit an SF bug.
8367 2002-10-24 Jeffrey C Honig <jch@honig.net>
8369 * mh-comp.el (mh-yank-from-start-of-msg, mh-reply): Use -noformat
8370 flag to reply when 'autosupercite or 'autoattrib are specified to
8371 prevent duplicate cites of the body of a message.
8373 2002-10-23 Satyaki Das <satyaki@theforce.stanford.edu>
8375 * mh-utils.el (font-lock-default-fontify-region): Add autoload to
8376 avoid compiler warning.
8378 2002-10-23 Peter S Galbraith <psg@debian.org>
8380 * mh-comp.el (mh-letter-mode): set fill-paragraph-function to our
8381 own 'mh-fill-paragraph-function instead of simply
8382 'mail-mode-fill-paragraph (because it doesn't handle a non-nil
8383 fill-prefix correctly).
8384 (mh-fill-paragraph-function): New function for mh-letter-mode
8385 fill-paragraph-function in order to handle non-nil fill-prefix.
8386 Call sendmail's mail-mode-fill-paragraph if in the mail header,
8387 else call default fill-paragraph with fill-prefix set to nil.
8390 * mh-comp.el (mh-letter-mode): Let's use font-lock even if gnus is
8391 used in show-mode. The reason is that gnus uses static text
8392 properties which are not appropriate for a buffer that will be
8393 edited. So the choice here is either fontify the citations and
8394 header or the header only.
8396 * mh-utils.el (mh-show-font-lock-fontify-region): Limit font-lock
8397 in mh-show-mode to the header. Used when mh-highlight-citation-p
8398 is set to gnus, leaving the body to be dealt with by gnus
8399 highlighting. This fixes gnus text emphasis in mh-show-mode.
8400 (mh-show-mode): In font-lock-defaults, set
8401 font-lock-fontify-region-function to mh-show-font-lock-fontify-region.
8403 2002-10-23 Bill Wohler <wohler@newt.com>
8405 * mh-mime.el (mh-mml-attach-file): Prompt for disposition should
8406 be Disposition, not Content-Type. The Content-Type has been
8407 determined automatically.
8409 2002-10-23 Mark D. Baushke <mdb@gnu.org>
8412 s/mh-adaptive-cmd-note/mh-adaptive-cmd-note-flag/
8413 s/mh-show-use-xface/mh-show-use-xface-flag/
8414 s/mh-tool-bar-reply-3-buttons/mh-tool-bar-reply-3-buttons-flag/
8415 This addresses part of SF #627015.
8418 s/mh-mml-compose-insert-p/mh-mml-compose-insert-flag/
8419 s/mh-xemacs-p/mh-xemacs-flag/
8420 (mh-letter-menu): Use mh-mml-compose-insert-flag.
8421 (mh-insert-x-mailer): Use mh-xemacs-flag.
8422 (mh-mml-compose-insert-flag): Renamed from
8423 mh-mml-compose-insert-p.
8424 (mh-send-letter): Use mh-mml-compose-insert-flag.
8425 This addresses part of SF #627015.
8428 s/mh-folder-threaded-view-p/mh-folder-threaded-view-flag/
8429 s/mh-adaptive-cmd-note/mh-adaptive-cmd-note-flag/
8430 s/mh-xemacs-p/mh-xemacs-flag/
8431 (mh-folder-threaded-view-flag): Renamed from
8432 mh-folder-threaded-view-p. Make it buffer local.
8433 (mh-folder-tool-bar-map): Use mh-tool-bar-reply-3-buttons-flag.
8434 (mh-remove-xemacs-horizontal-scrollbar): Use mh-xemacs-flag.
8435 (mh-make-folder, mh-regenerate-headers, mh-get-new-mail): Use
8436 mh-adaptive-cmd-note-flag.
8437 (mh-folder-folder-menu, mh-regenerate-headers, mh-get-new-mail,
8438 mh-make-folder-mode-line, mh-process-commands,
8439 mh-delete-scan-msgs): Use mh-folder-threaded-view-flag.
8440 This addresses part of SF #627015.
8443 s/mh-adaptive-cmd-note/mh-adaptive-cmd-note-flag/
8444 (mh-index-search): Use mh-adaptive-cmd-note-flag.
8445 This addresses part of SF #627015.
8448 s/mh-mml-compose-insert-p/mh-mml-compose-insert-flag/
8449 s/mh-xemacs-p/mh-xemacs-flag/
8450 (mh-mml-compose-insert-flag): Renamed from
8451 mh-mml-compose-insert-p. Make it buffer local.
8452 (mh-mml-attach-file, mh-mml-secure-message-sign-pgpmime,
8453 mh-mml-secure-message-encrypt-pgpmime): Use it.
8454 (gnus-local-map-property): Use mh-xemacs-flag.
8455 This addresses part of SF #627015.
8458 s/mh-folder-threaded-view-p/mh-folder-threaded-view-flag/
8459 (mh-thread-generate, mh-thread-folder, mh-toggle-threads): Use
8460 mh-folder-threaded-view-flag.
8461 This addresses part of SF #627015.
8464 s/mh-speed-run-flists-p/mh-speed-run-flists-flag/
8465 s/mh-speed-refresh-p/mh-speed-refresh-flag/
8466 (mh-speed-run-flists-flag): Renamed from mh-speed-run-flists-p.
8467 (mh-folder-speedbar-buttons): Use it.
8468 (mh-speed-refresh-flag): Renamed from mh-speed-refresh-p.
8469 (mh-speed-update-current-folder, mh-speed-invalidate-map,
8470 mh-speed-add-folder): Use it.
8471 This addresses part of SF #627015.
8474 s/mh-xemacs-p/mh-xemacs-flag/
8475 s/mh-tool-bar-reply-3-buttons/mh-tool-bar-reply-3-buttons-flag/
8476 s/mh-show-use-xface/mh-show-use-xface-flag/
8477 (mh-xemacs-flag): Renamed from mh-xemacs-p.
8478 (mh-show-xface-function): Use it.
8479 (mh-tool-bar-reply-3-buttons-flag): Renamed from
8480 mh-tool-bar-reply-3-buttons.
8481 (mh-show-tool-bar-map): Use it.
8482 (mh-adaptive-cmd-note-flag): Renamed from mh-adaptive-cmd-note.
8483 (mh-cmd-note): Use it in description.
8484 (mh-show-use-xface-flag): Renamed from mh-show-use-xface. Use
8486 (mh-show-xface): Use mh-show-use-xface-flag.
8487 This addresses part of SF #627015.
8489 2002-10-23 Bill Wohler <wohler@newt.com>
8491 * Makefile (all): Rather than have to run "make clean all" all the
8492 time, make the default target do a clean so all you have to say is
8495 * mh-e.el (mh-folder-map): Moved "t (mh-toggle-threads)" to T
8498 2002-10-22 Satyaki Das <satyaki@theforce.stanford.edu>
8500 * mh-index.el (mh-indexer-choices, mh-swish-binary): The
8501 executable swish-e can be used to search (just like swish-search).
8502 However the Makefile in swish-e-2.2.2 doesn't install
8503 swish-search. So it is preferable to use swish-e.
8505 2002-10-22 Bill Wohler <wohler@newt.com>
8507 * mh-comp.el (mh-letter-mode-map): Added aliases for keybindings.
8508 For example, you now have "C-c C-m C-i" in addition to "C-c C-m
8511 2002-10-22 Mark D. Baushke <mdb@gnu.org>
8513 * mh-mime.el (mh-graphical-smileys-flag): Renamed from
8514 mh-graphical-smileys-p.
8515 (mh-display-smileys): Use it.
8516 (mh-graphical-emphasis-flag): Renamed from mh-graphical-emphasis-p.
8517 (mh-display-emphasis): Use it. This addresses part of SF #627015.
8519 2002-10-22 Satyaki Das <satyaki@theforce.stanford.edu>
8521 * mh-mime.el (mh-insert-mime-security-button): A message is
8522 produced if PGP decryption/verification fails. This addresses
8525 2002-10-21 Bill Wohler <wohler@newt.com>
8527 * mh-seq.el (mh-widen): Checkdoc removed the period in the error.
8528 The info node (elisp) Coding Conventions says: "An error message
8529 should start with a capital letter but should not end with a
8532 * mh-e.el, mh-utils.el (mh-tool-bar-reply-3-buttons): Moved
8533 defcustom to mh-utils because I got an error about a nil value for
8534 mh-tool-bar-reply-3-buttons when I fired up mh-rmail.
8536 * mh-comp.el, mh-funcs.el, mh-mime.el, mh-pick.el: Moved (provide)
8537 to the end of the file to be consistent with most other files (see
8538 additional rationale in mh-e.el description below).
8540 * mh-e.el: Had to remove eval-when-compile from the (require 'cl)
8541 here too (because the remove-if generated a warning in CVS Emacs).
8542 Moved (provide) to the end of the file to be consistent with most
8543 other files. My guess is that this is good to keep a feature from
8544 being "provided" if the file craps out while being loaded.
8546 2002-10-21 Satyaki Das <satyaki@theforce.stanford.edu>
8548 * mh-utils.el (mh-reply, Info-goto-node): Add autoloads to avoid
8550 (mh-tool-bar-reply-3-buttons): Add defvar to avoid compiler
8553 * mh-seq.el (mh-narrow-to-seq): Remember that a narrowing has
8555 (mh-valid-view-change-operation-p): New function that checks if
8556 the widening or unthreading that we are about to perform is
8558 (mh-widen): Check if widening is applicable.
8559 (mh-thread-inc, mh-thread-folder): Use delete-region instead of
8560 erase-buffer. This means if the buffer is narrowed then the hidden
8561 parts aren't removed. This allows widening of the folder later on.
8562 (mh-toggle-threads): Maintain mh-view-ops.
8564 * mh-e.el (mh-view-ops, mh-folder-mode): New buffer-local variable
8565 that keeps track of the sequence in which threading and narrowing
8566 of the folder buffer has been carried out. This is needed so that
8567 narrowing followed by threading (or vice versa) behaves in a
8569 (mh-regenerate-headers): Use delete-region instead of
8571 (mh-make-folder-mode-line): Change mh-first-msg-num and
8572 mh-last-msg-num conservatively. This might show a larger range in
8573 the mode-line but allows the unthreading to not miss messages
8576 2002-10-21 Bill Wohler <wohler@newt.com>
8578 * mh-mime.el (mh-graphical-emphasis-p): Added _underline_ to the
8579 docstring, as well as the source of the strings,
8580 gnus-emphasis-alist.
8581 (mh-graphical-emphasis-p, mh-graphical-smileys-p): Set the default
8584 2002-10-21 Peter S Galbraith <psg@debian.org>
8586 * mh-utils.el (mh-show-mode): Invoke new toolbar.
8587 (mh-show-tool-bar-map): New tool-bar for mh-show-mode, similar to
8590 2002-10-21 Satyaki Das <satyaki@theforce.stanford.edu>
8592 * mh-utils.el (mh-display-msg): Call the smiley display function
8593 after the call to mh-show-mode. This is needed since mh-show-mode
8594 kills all buffer-local variables and resets the variable that
8595 controls display of graphical smileys.
8597 2002-10-21 Bill Wohler <wohler@newt.com>
8599 * mh-e.el (mh-folder-mime-action): Change mime to MIME in message.
8601 * mh-comp.el (mh-mml-to-mime autoload): Ditto.
8603 2002-10-21 Mark D. Baushke <mdb@gnu.org>
8605 * mh-mime.el (smiley-region): Use load for a non-fatal dependency
8606 on the smiley library.
8608 2002-10-21 Jeffrey C Honig <jch@honig.net>
8610 * mh-comp.el (mh-forward): Search for a blank line as well as
8611 mail-header-separator.
8612 (mh-letter-mode): Search for a blank line as well as
8613 mail-header-separator.
8614 (mh-send-letter): The default BCC encapsulation will make a MIME
8615 message unreadable. If we are running nmh and the letter contains
8616 a Bcc: and a Content-Type: field, add the -mime switch to the
8619 2002-10-21 Peter S Galbraith <psg@debian.org>
8621 * mh-utils.el: Add a mh-defun-show-buffer call to define
8622 mh-show-pack-folder.
8624 2002-10-21 Peter S Galbraith <psg@debian.org>
8626 * mh-mime.el (mh-store-mime-parts): Simplify code a bit.
8628 * mh-e.el (mh-help-messages): Update help message for changed
8631 2002-10-21 Satyaki Das <satyaki@theforce.stanford.edu>
8633 * mh-speed.el (mh-speed-invalidate-map): Invalidate
8634 mh-speed-folders-cache before it is used by mh-speed-folders. Also
8635 fix indentation of if statement.
8636 (mh-speed-folder-size): The folder name should be extracted from
8637 the speedbar buffer and not from the temp buffer has was happening
8639 (mh-speed-folder-size): Harden the function some more. It
8640 shouldn't produce errors any more unless flist really didn't work.
8642 2002-10-21 Bill Wohler <wohler@newt.com>
8644 * mh-seq.el (mh-put-msg-in-seq): Formatting only. The reason I was
8645 in there is because I was trying to use mh-put-msg-in-seq and
8646 mh-msg-is-in-seq non-interactively and found that although the
8647 docstring says it uses the current message by default, I got
8648 errors if I passed in nil for the message. Is this expected, or is
8649 this a bug? I suppose the fix would be to make the arguments
8650 optional, right? This would cause the arguments in
8651 mh-put-msg-in-seq to be reversed, however. Might be a backwards
8652 compatibility problem.
8654 * mh-speed.el (mh-speed-view): Convert default size to string
8655 before passing it to read-string. This was done because XEmacs
8656 can't handle a numeric value for the default.
8658 2002-10-20 Satyaki Das <satyaki@theforce.stanford.edu>
8660 * mh-utils.el (mh-show-mode-map, mh-show-folder-map)
8661 (mh-show-sequence-map, mh-show-thread-map, mh-show-extract-map)
8662 (mh-show-digest-map, mh-show-mime-map): Interactive functions
8663 callable in show buffer are now prefixed with mh-show.
8665 * mh-seq.el (mh-notate-deleted-and-refiled): Take into account the
8666 changes to mh-refile-list and the removal of the 'deleted
8668 (mh-toggle-threads): Changing from threaded to normal view doesn't
8669 try to push out message refiles and deletions to MH.
8671 * mh-e.el (mh-rescan-folder, mh-scan-folder): Add a new optional
8672 argument to both functions that prevents them from carrying out
8673 pending refiles and deletes.
8674 (mh-undo): Remove dead code.
8675 (mh-delete-a-msg, mh-undo-msg): Get rid of the 'deleted sequence.
8676 The same information is present in mh-delete-list any way.
8677 (mh-refile-a-msg, mh-undo-msg, mh-process-commands): Change the
8678 semantics of mh-refile-list to make it self-contained. This
8679 variable now contains a list of lists. The first element of each
8680 sublist is the destination folder name. The remaining elements are
8681 the messages that are to be refiled to the destination folder.
8682 (mh-toggle-threads, mh-folder-folder-menu): Use mh-toggle-threads
8683 instead of mh-thread-folder.
8685 2002-10-20 Peter S Galbraith <psg@debian.org>
8687 * mh-mime.el (mh-store-mime-parts): Bug fix? Make this command
8688 work when in the show buffer, and not just in the folder buffer
8689 pointing to a message.
8691 2002-10-20 Peter S Galbraith <psg@debian.org>
8693 * mh-seq.el (mh-narrow-to-subject-sequence): Renamed from
8694 mh-narrow-to-subject-thread.
8695 (mh-subject-to-sequence): Renamed from mh-subject-thread-to-sequence.
8696 (mh-delete-subject-sequence): Renamed from mh-delete-subject-thread.
8697 (mh-next-unseen-subject-sequence): Renamed from
8698 mh-next-unseen-subject-thread.
8699 (mh-toggle-subject-thread): Removed. :-(
8701 * mh-e.el: s/subject-thread/subject-sequence/
8702 (mh-thread-map): Bind mh-widen to "w".
8704 * mh-utils.el: s/subject-thread/subject-sequence/
8705 (mh-show-thread-map): Bind mh-widen to "w".
8707 2002-10-20 Satyaki Das <satyaki@theforce.stanford.edu>
8709 * mh-seq.el (mh-thread-folder): This function is no longer
8710 interactive. The mh-toggle-threads is the interactive function
8711 that gets called by the user. Also the already computed values in
8712 mh-first-msg-num and mh-last-msg-num are used instead of
8713 recomputing the first and last message indices in the current
8715 (mh-toggle-threads): New interactive function that toggles
8716 threaded view of the folder.
8718 * mh-utils.el (mh-letter-toggle-threads): New interactive function
8719 which toggles thread view from show buffer. This function replaces
8720 mh-letter-thread-folder.
8721 (mh-show-folder-map): Use mh-letter-toggle-threads instead of
8722 mh-letter-thread-folder.
8724 * mh-e.el (mh-folder-map): Use mh-toggle-threads instead of
8727 2002-10-20 Bill Wohler <wohler@newt.com>
8729 * mh-e.el (mh-scan-folder): Formatting only.
8730 (mh-goto-cur-msg): Removed call to mh-last-msg in those cases
8731 where there isn't a current message. Since I've started using the
8732 speedbar to read my mh-e mail, I've had to use M-< every time to
8733 go to the beginning of the new messages. Very annoying! Thus, if
8734 there isn't a current message, the cursor is left alone, which
8735 sounds like the right thing to do anyway.
8737 2002-10-19 Peter S Galbraith <psg@debian.org>
8739 * mh-seq.el (mh-subject-thread-to-sequence): Bug fix. After
8740 making the 'subject sequence real, I now have to delete it globally.
8742 * mh-seq.el (mh-toggle-subject-thread): Make toggle back to full
8743 scan exactly mh-widen (removed moving to current message).
8745 * mh-seq.el (mh-subject-thread-to-sequence): Make 'subject
8746 sequence a real one, exported to MH. This means you can, for
8747 example, mh-forward it. But it also shows up with a mark in the
8748 scan output. (Closes SF #489445).
8750 2002-10-19 Bill Wohler <wohler@newt.com>
8752 * mh-speed.el (mh-speed-view): If there weren't any unseen
8753 messages, and you specified a string (a sequence like "last") when
8754 prompted for the number of messages to display, you got an error.
8755 This has been fixed.
8757 2002-10-19 Mark D. Baushke <mdb@gnu.org>
8759 * mh-e.el (mh-last-destination-folder): Destination of last refile
8761 (mh-last-destination-write): Destination of last write command.
8762 (mh-refile-msg): Use 'mh-last-destination-folder and update both it
8763 and 'mh-last-destination.
8764 (mh-write-msg-to-file): Use 'mh-last-destination-write and update
8765 both it and 'mh-last-destination (Closes SF #580772).
8767 2002-10-19 Bill Wohler <wohler@newt.com>
8769 * mh-comp.el (mh-yank-from-start-of-msg): Changed default to
8771 (mh-letter-mode-map): Removed commented-out keybindings as well as
8772 alias "C-c C-m a (mh-compose-insertion)." Prefer "C-c C-m i."
8774 * mh-utils.el: Removed autoload of help. It no longer appears to
8775 be necessary in cvs Emacs (21.4).
8777 2002-10-18 Bill Wohler <wohler@newt.com>
8779 * mh-e.el (mh-execute-commands): Doc fix.
8780 (mh-compat-write-file-hook): Renamed to
8781 mh-write-file-functions-compat.
8782 (mh-folder-mode): Add mh-write-file-functions-compat instead of
8783 mh-compat-write-file-hook
8785 2002-10-18 Peter S Galbraith <psg@debian.org>
8787 * mh-utils.el (mh-invisible-headers-show-xface): Killed this
8789 (mh-invisible-headers): Use 'mh-show-use-xface instead of
8790 'mh-invisible-headers-show-xface to determine whether to render
8791 the X-Face header line visible or not.
8793 2002-10-18 Satyaki Das <satyaki@theforce.stanford.edu>
8795 * mh-e.el (mh-compat-write-file-hook, mh-folder-mode): Use the new
8796 macro mh-compat-write-file-hook to use write-file-functions for
8797 Emacs 21.4 and local-write-file-hooks for older versions.
8799 2002-10-18 Mark D. Baushke <mdb@gnu.org>
8801 * mh-utils.el (mh-invisible-headers): Add more anti-spam headers.
8803 2002-10-18 Peter S Galbraith <psg@debian.org>
8805 * mh-mime.el (mh-mml-forward-message): mml-attach-file constructs
8806 a malformed composition if the description string is empty, so
8807 test for that and call mml-attach-file without that argument if
8808 it's an empty string (closes SF #625168).
8810 2002-10-17 Satyaki Das <satyaki@theforce.stanford.edu>
8812 * mh-index.el (mh-index-keymap): Removed extra binding of " ".
8813 (mh-index-folder-mode-help-messages): Made the cheat sheet entry
8814 of quit like the others.
8815 (mh-index-search): If space was pressed in the index buffer before
8816 a search result has been shown with ".", the old show buffer would
8817 be scrolled. This is confusing since the index and show buffer
8818 contents are contradictory. Killing the show buffer here avoids
8820 (mh-index-configure-windows): Refine the window configuration
8821 logic. Avoid the two window view unless there is a message being
8822 displayed in the show buffer.
8823 (mh-index-scroll-up): Rewrite this function. The old version had a
8824 bizarre problem where the show buffer wouldn't be scrolled if the
8825 speedbar was present.
8826 (mh-index-scroll-down): Rewritten because of similar reason as
8829 2002-10-17 Peter S Galbraith <psg@debian.org>
8831 * mh-comp.el (mh-reply): Add an undo boundary in the undo list
8832 before calling 'mh-yank-cur-msg (closes SF #623693).
8834 2002-10-17 Satyaki Das <satyaki@theforce.stanford.edu>
8836 * mh-e.el (mh-folder-mode): Use local-write-file-hooks instead of
8837 write-file-hooks. This is required for XEmacs and also the right
8838 thing according to GNU Emacs21 documentation.
8840 2002-10-16 Satyaki Das <satyaki@theforce.stanford.edu>
8842 * mh-seq.el (mh-thread-generate): Get threading to work correctly
8843 on partial folders. The fix here disregards messages that aren't
8844 already present in the buffer.
8845 (mh-thread-folder): When querying scan about thread info try to
8846 avoid asking about messages that aren't present in the folder
8847 buffer. A more efficient fix would be to ask scan about just the
8848 messages that are present instead of a range of messages. However
8849 that runs the risk of sending long command lines to scan. Another
8850 change was to populate the mh-scan-line-map early so that the
8851 change in mh-thread-generate would work.
8852 (mh-thread-generate-scan-lines): In case duplicates are present
8853 make one of them the pseudo parent of the rest. This makes it look
8854 prettier if there are multiple duplicates at top level.
8856 * mh-comp.el (mh-edit-again): If a buffer in show-mode is being
8857 reused then reinsert message file. This should fix SF #624283.
8859 * mh-mime.el (mh-mm-display-part): Make sure mh-display-part is
8860 always called when we want to remove the displayed MIME part.
8862 2002-10-16 Bill Wohler <wohler@newt.com>
8864 * mh-speed.el (mh-speed-folder-size): checkdoc fix.
8865 (mh-speed-view): Tweaked output to mirror gnus verbiage. Offer
8866 to view number of messages in folder rather than mh-large-folder.
8867 Replaced (intern mh-unseen-seq) with mh-unseen-seq since the
8868 former was generating errors.
8870 2002-10-15 Satyaki Das <satyaki@theforce.stanford.edu>
8872 * mh-speed.el (mh-large-folder): New customizable variable to
8873 control mh-e's perception of large folders.
8874 (mh-speed-folder-size): New function which computes the size of
8875 folder on current line.
8876 (mh-speed-view): Modified to handle large folders. If the folder
8877 being clicked has unseen messages then only those messages are
8878 shown. Otherwise if number of messages in folder is larger than
8879 mh-large-folders then the user is asked for the number of messages
8880 to be shown. If the folder satisfies neither of the above cases
8881 then it is displayed in its entirety
8883 2002-10-15 Bill Wohler <wohler@newt.com>
8885 * mh-index.el (mh-index-keymap): Use gnus-define-keys. Sorted.
8886 Noticed that there were two key bindings for SPACE...
8888 * mh-speed.el (mh-folder-speedbar-key-map): Ditto (except for the
8891 Completed help in other modes:
8893 * mh-utils.el (mh-xemacs-p): Fixed doc.
8894 (mh-show-mode-map, mh-show-folder-map, mh-show-sequence-map)
8895 (mh-show-thread-map, mh-show-extract-map): Added binding for
8898 * mh-pick.el (mh-search-folder): Added startup help message.
8899 (mh-pick-mode-help-messages): New variable that contains help
8900 messages for pick buffer.
8901 (mh-pick-mode): Set local buffer variable mh-help-messages to
8902 mh-pick-mode-help-messages.
8904 * mh-index.el (mh-index-keymap): Added binding for mh-help.
8905 (mh-index-folder-mode-help-messages): New variable that contains
8906 help messages for MH Index buffer.
8907 (mh-index-folder-mode): Set local buffer variable mh-help-messages
8908 to mh-index-mode-help-messages.
8910 * mh-funcs.el (mh-help, mh-prefix-help): Call
8911 substitute-command-keys on the help messages.
8913 * mh-e.el (mh-help-messages): Added ,. Ran C-M-q.
8914 (mh-help): This autoload doc is now used for more than just the
8915 MH-Folder, so drop that specific text.
8917 * mh-comp.el (mh-edit-again, mh-extract-rejected-mail)
8918 (mh-forward, mh-reply, mh-send-sub): Call mh-letter-mode-message
8919 to display a help message at startup.
8920 (mh-letter-mode): Set local buffer variable mh-help-messages to
8921 mh-letter-mode-help-messages.
8922 (mh-letter-mode-help-messages): New variable with help messages
8923 for the MH-Letter buffer.
8924 (mh-letter-mode-message): New function that displays a startup
8926 (mh-letter-mode-map): Added binding for mh-help. Sorted.
8928 2002-10-15 Satyaki Das <satyaki@theforce.stanford.edu>
8930 * mh-speed.el (mh-speedbar-selected-folder-with-unseen-messages-face)
8931 (mh-speedbar-folder-face, mh-speedbar-selected-folder-face)
8932 (mh-speedbar-folder-with-unseen-messages-face): New faces for mh-e
8934 (mh-folder-speedbar-buttons, mh-speed-update-current-folder)
8935 (mh-speed-add-buttons): Use the new faces.
8936 (mh-speed-normal-face, mh-speed-bold-face): Functions to convert
8937 to bold face and back to normal face.
8938 (mh-speed-set-face): Removed.
8939 (mh-speed-highlight): Modified to allow it to be used instead of
8940 mh-speed-set-face. Also changes were made to fontify folders with
8942 (mh-speed-parse-flists-output, mh-speed-parse-flists-output)
8943 (mh-speed-invalidate-map): Use mh-speed-highlight instead of
8946 2002-10-15 Bill Wohler <wohler@newt.com>
8948 * mh-mime.el, mh-seq.el, mh-speed.el, mh-utils.el: It appears that
8949 the cl package has been restructured in 21.4 in such a way that
8950 the use of eval-when-compile no longer suppresses warnings when
8951 compiling so that (require 'cl) must be called directly (maybe
8952 this is a bug in 21.4 ;-). Thus the autoloads of cl are no longer
8953 needed. Now compiles clean under 21.4.
8955 * mh-e.el (mh-folder-mode): The use of local-write-file-hooks is
8956 deprecated in Emacs 21.4, so use add-hook write-file-functions (or
8957 write-file-hook for older versions) with the LOCAL argument
8958 instead. Now compiles clean under 21.4.
8960 * mh-comp.el (mh-yank-cur-msg): Push a mark at the opposite end of
8961 the included text to make it easy to jump or delete to the other
8962 end of the included text.
8964 2002-10-15 Satyaki Das <satyaki@theforce.stanford.edu>
8966 * mh-comp.el (mh-insert-prefix-string): Remove the erroneous use
8967 of set-mark and other related functions.
8969 2002-10-14 Bill Wohler <wohler@newt.com>
8971 * mh-comp.el (mh-yank-from-start-of-msg): Fixed documentation. It
8972 isn't ignored if there is a region. It is still used for the
8974 (mh-yank-cur-msg): Removed unnecessary push-mark when snarfing the
8975 entire message. Move the cursor to the end of the snarfed message
8976 if there is a region. In this case, push a mark so user can pop to
8977 the beginning of the snarfed fragment.
8978 (mh-insert-prefix-string): This calls set-mark which I find
8979 suspect since I found that my last user mark was deleted after
8980 yanking a message. Added a comment to this effect. Will probably
8983 * README (Installed, Supported versions): To appear in GNU Emacs
8984 21.3; supported on Emacs 21, 20.7 and XEmacs 21.
8986 * mh-funcs.el (mh-concat-list): Deleted. Use mapconcat instead.
8987 (mh-help, mh-prefix-help): Use mapconcat instead of mh-concat-list.
8988 (mh-ephem-message): Use "%s" in message.
8990 * mh-funcs.el (mh-concat-list): New function to concatenate a list
8991 of strings into a single string. I would have thought elisp
8992 already contained a function like this, but I couldn't find it.
8993 (mh-ephem-message): New function to display a message in the
8994 minibuffer ephemerally. minibuffer-message seemed like the right
8995 function, but it writes to the current buffer oddly enough.
8996 (mh-help, mh-prefix-help): New functions to display command
8997 cheat sheets in the minibuffer (closes SF #493740). It would be
8998 nice to refactor these two into a single function if possible.
9000 * mh-e.el (mh-folder-mode-map, mh-folder-map, mh-sequence-map)
9001 (mh-thread-map, mh-extract-map): Added ? keybinding for `mh-help'
9002 and `mh-prefix-help' (closes SF #493740).
9003 (mh-help-messages): New variable to hold various help messages.
9004 (mh-help, mh-prefix-help): Autoload from mh-funcs.el.
9006 2002-10-13 Bill Wohler <wohler@newt.com>
9008 * mh-index.el (mh-glimpse-directory, mh-swish-directory,
9009 mh-namazu-directory): New variables that hold the name of the
9010 configuration and indexing directory. All are now hidden `.'
9013 * mh-e.el, mh-funcs.el, mh-index.el, mh-mime.el, mh-pick.el,
9014 mh-seq.el, mh-xemacs-compat.el (Docstrings): Converted comments to
9015 docstrings, reworded some docstrings to conform to Emacs
9016 documentation conventions, and eliminated all checkdoc warnings
9017 (except for -flag, which we'll fix after 6.2 is released).
9019 2002-10-13 Satyaki Das <satyaki@theforce.stanford.edu>
9021 * mh-index.el (mh-swish-next-result): Fix a bug in a corner case
9022 where the lack of a trailing "/" caused the function to wrongly
9023 filter out correct hits. This should fix SF #622679.
9025 2002-10-12 Steve Youngs <youngs@xemacs.org>
9027 * mh-utils.el (mh-xemacs-p): Simplify it, don't test for
9028 'defvaralias' and don't use 'running-xemacs'.
9030 2002-10-11 Bill Wohler <wohler@newt.com>
9032 * mh-comp.el: (Docstrings): Eliminated all checkdoc warnings by
9033 converting comments to docstrings and rewording some docstrings to
9034 conform to Emacs documentation conventions.
9036 2002-10-11 Steve Youngs <youngs@xemacs.org>
9038 * mh-utils.el (mh-xemacs-p): New.
9039 (mh-show-use-xface): Use it.
9040 (mh-show-xface-function): Ditto.
9042 * mh-e.el (toplevel): Ditto.
9043 (mh-remove-xemacs-horizontal-scrollbar): Ditto.
9044 (mh-folder-mode-map): Ditto.
9046 * mh-comp.el (mh-insert-x-mailer): Ditto.
9048 * mh-mime.el (gnus-local-map-property): Ditto.
9049 (mh-mml-to-mime): Move (require 'mh-utils) to toplevel.
9050 (mh-prompt-for-folder): Autoloading this not needed because
9051 mh-utils is now required at toplevel.
9052 (mh-show-xface): Ditto.
9053 (mh-show-addr): Ditto.
9055 2002-10-11 Bill Wohler <wohler@newt.com>
9057 * Makefile (EMACS_HOME): Set default to $(TOP)/../emacs so it
9060 * mh-utils.el (mh-invisible-headers): Added various spam header
9062 (mh-path-search): Removed argument `func-p' and related code. It
9063 was not documented and no one used it.
9064 (Docstrings): Converted comments to docstrings, reworded some
9065 docstrings to conform to Emacs documentation conventions, and
9066 basically eliminated all checkdoc warnings (except for -flag
9069 2002-10-11 Satyaki Das <satyaki@theforce.stanford.edu>
9071 * mh-seq.el (mh-thread-generate): Kill dead code.
9073 2002-10-10 Satyaki Das <satyaki@theforce.stanford.edu>
9075 * mh-seq.el (mh-region-to-sequence): Don't include point-max in
9076 region (closes SF #621632).
9078 * mh-utils.el (mh-defun-show-buffer): Fix call of
9079 frame-first-window to work with XEmacs. Also avoid warning about
9080 cur-buffe-name in XEmacs.
9081 (mh-modify, mh-goto-msg): Remove dead code.
9083 * mh-speed.el (mh-speed-toggle, mh-speed-add-buttons): Remove dead
9086 * mh-seq.el (mh-subject-thread-to-sequence, mh-thread-get-message,
9087 mh-thread-generate, mh-thread-folder): Remove dead code.
9089 * mh-mime.el (mh-mm-inline-message): Remove dead code.
9091 * mh-index.el (mh-index-search): Remove dead code.
9093 * mh-comp.el (mh-open-line): Remove dead code.
9095 * mh-e.el (mh-folder-mode): Use the macro
9096 mh-remove-xemacs-horizontal-scrollbar to avoid compiler-warning in
9098 (mh-remove-xemacs-horizontal-scrollbar): New macro to avoid
9101 2002-10-10 Mark D. Baushke <mdb@gnu.org>
9103 * Makefile (EMACS_OPTIONS): New macro for command-line compile
9105 (EMACS): Allow the user to specify which emacs command to use for
9107 (COMPILE_COMMAND): Combine the compile command with its options.
9108 (.el.elc): Use the new $(COMPILE_COMMAND).
9110 2002-10-10 Mark D. Baushke <mdb@gnu.org>
9112 * mh-speed.el (mh-speed-select-attached-frame): Define a new
9113 compatibility macro for getting to the attached-frame.
9114 (mh-speed-update-current-folder): Use it.
9116 2002-10-10 Mark D. Baushke <mdb@gnu.org>
9118 * mh-speed.el (mh-speed-update-current-folder): Use
9119 'dframe-select-attached-frame if we are in a newer speedbar
9120 version that no longer supports the 'speedbar-attached-frame
9123 2002-10-10 Steve Youngs <youngs@xemacs.org>
9125 * mh-speed.el (mh-speed-update-current-folder): Use
9126 'dframe-select-attached-frame' if we're in XEmacs.
9128 * mh-e.el (mh-folder-mode): Remove the horizontal scrollbar from
9129 the MH-Folder buffer if we're in XEmacs.
9131 2002-10-09 Satyaki Das <satyaki@theforce.stanford.edu>
9133 * mh-utils.el (mh-show-xface-function): New global that stores
9134 what function needs to be called to display X-Face.
9135 (mh-show-xface): Rewritten to avoid compiler warning.
9137 2002-10-09 Peter S Galbraith <psg@debian.org>
9139 * mh-utils.el (mh-exchange-point-and-mark-preserving-active-mark):
9140 Simplify code for all emacsen to avoid byte-compilation warnings.
9142 2002-10-09 Satyaki Das <satyaki@theforce.stanford.edu>
9144 * mh-mime.el (mh-mm-display-part): If a sub-part of the current
9145 part is an inline image then clicking the button keeps the image
9146 around. The change fixes this bug.
9148 2002-10-09 Peter S Galbraith <psg@debian.org>
9150 * mh-utils.el (mh-exec-cmd-output): Use new function
9151 'mh-exchange-point-and-mark-preserving-active-mark instead of
9152 'exchange-point-and-mark. Fixes a bug in emacs20 and XEmacs21.
9153 (mh-exchange-point-and-mark-preserving-active-mark): New function.
9154 Does like 'exchange-point-and-mark but doesn't activate the mark.
9156 * mh-comp.el (mh-letter-menu): Allow access to "Pull in All
9157 Compositions" menu entries when edits have really occurred.
9158 Works with "forw: -mime" mh_profile entry, so this fixes a bug.
9160 * mh-mime.el (mh-mime-inline-part, mh-mm-display-part): Use
9161 line-beginning-position and line-end-position instead of
9162 point-at-bol and point-at-eol XEmacs functions.
9163 * mh-xemacs-compat.el: Added line-end-position and
9164 line-beginning-position compatibility aliases.
9166 2002-10-08 Mark D. Baushke <mdb@gnu.org>
9168 * mh-utils.el (mh-scan-msg-format-regexp): The regexp to find
9170 (mh-scan-msg-format-string): Format to be used with the current
9171 maximum width of message number for the folder in the
9172 `mh-update-scan-format' function.
9173 (mh-update-scan-format): Use `mh-scan-msg-format-regexp' for greater
9174 flexibility. The message number is no longer anchored to the
9175 beginning of the `mh-scan-format-nmh' or `mh-scan-format-mh' format
9176 strings. The `mh-update-scan-format' allows for using zero-filled
9179 2002-10-08 Peter S Galbraith <psg@debian.org>
9181 * mh-e.el (mh-folder-folder-menu): Add entry for "Thread Folder".
9183 2002-10-07 Satyaki Das <satyaki@theforce.stanford.edu>
9185 * mh-seq.el (mh-thread-generate): Use mh-progs to get path to mh
9188 * mh-speed.el (mh-speed-flists): Use mh-progs to get path to mh
9190 (mh-speed-folders-actual): Same as above.
9192 2002-10-05 Steve Youngs <youngs@xemacs.org>
9194 * mh-comp.el (mh-yank-from-start-of-msg): Make default setting 't'
9197 * mh-xemacs-compat.el (match-string-no-properties): Rewrite as a
9198 defsubst using 'buffer-substring-no-properties' so we don't grab
9200 (rfc822-goto-eoh): Removed. This exists in the XEmacs mail-lib
9202 (mail-header-end): Ditto.
9203 (mail-mode-fill-paragraph): Ditto.
9205 2002-10-05 Satyaki Das <satyaki@theforce.stanford.edu>
9207 * mh-speed.el (mh-speed-invalidate-map): When called interactively
9208 the function will clear mh-speed-folders-cache.
9210 2002-10-02 Satyaki Das <satyaki@theforce.stanford.edu>
9212 * mh-mime.el (mh-insert-mime-button): Rewrite without using
9215 2002-10-01 Satyaki Das <satyaki@theforce.stanford.edu>
9217 * mh-mime.el (mh-file-mime-type-substitutions): Reorder code to
9218 avoid compiler warning.
9220 2002-10-01 Bill Wohler <wohler@newt.com>
9222 * Makefile (MH-E-ETC): Moved ChangeLog into MH-E-ETC-ETC since it
9223 shouldn't get installed in Emacs.
9224 (install-emacs): Install MH-E-IMG into Emacs' lisp/toolbar and
9225 MH-E-IMG2 into Emacs' lisp/mail.
9227 2002-10-01 Peter S Galbraith <psg@debian.org>
9229 * mh-e.el (mh-tool-bar-reply-3-buttons): New customization.
9230 Non-nil means use three buttons for reply commands in tool-bar.
9231 If you have room on your tool-bar because you are using a large
9232 font, you may set this variable to expand the single reply
9233 button into three buttons that won't lead to minibuffer prompt
9234 about who to reply to.
9235 (mh-folder-tool-bar-map): Use mh-tool-bar-reply-3-buttons to
9236 decide how many buttons to use for replying.
9238 * mh-mime.el (mh-file-mime-type-substitutions)
9239 (mh-file-mime-type-substitute): Fix typos and doc strings.
9241 2002-09-30 Peter S Galbraith <psg@debian.org>
9243 * mh-mime.el (mh-file-mime-type): Run Content-Type string returned
9244 by file command through mh-file-mime-type-substitute (see below).
9245 (mh-file-mime-type-substitute): Possibly change Content-Type
9246 string using mh-file-mime-type-substitutions variable. This is
9247 mostly because all MS-Office file are seen as application/msword
9248 by the file command.
9249 (mh-file-mime-type-substitutions): New variable. Defines
9250 substitutions to make for Content-Type returned from file command.
9252 2002-09-27 Bill Wohler <wohler@newt.com>
9254 * README: Moved Id to end of file since it broke outline mode at
9257 * import-emacs (release): Renamed "mainline" tag to
9258 "emacs-mainline" to correspond with existing CVS tag.
9259 (EMACS_HOME): Fixed typo in docstring.
9261 * mh-utils.el (mh-folder-name-p, mh-defun-show-buffer): Lowercase
9262 NIL and T in docstring.
9263 (mh-update-scan-format): Fixed typo.
9265 * mh-comp.el, mh-e.el, mh-pick.el, mh-utils.el: Updated from CVS
9266 Emacs. The only new thing appears to be to downcase NIL and T in
9269 2002-09-26 Satyaki Das <satyaki@theforce.stanford.edu>
9271 * mh-seq.el (mh-thread-generate): The threading code will now be
9272 more resistant to corruption of messages. Before the change any
9273 corruption of message x would cause all messages with indices
9274 higher than x to be neglected when threading!
9276 2002-09-23 Peter S Galbraith <psg@debian.org>
9278 * mh-mime.el (mh-store-mime-parts): Don't store value into
9279 user-customizable variable mh-store-mime-parts-default-directory
9280 and use mh-store-mime-parts-directory instead.
9282 2002-09-20 Satyaki Das <satyaki@theforce.stanford.edu>
9284 * mh-seq.el (mh-thread-prune-subject): Use regular expressions to
9285 make the subject pruning behave the way it is specified in the
9288 * mh-speed.el (mh-speed-folders-actual): Don't use pop when we
9289 are not going to use the first element. This avoids a compilation
9290 warning with cvs emacs.
9292 2002-09-19 Satyaki Das <satyaki@theforce.stanford.edu>
9294 * mh-utils.el (mh-display-msg): Put the call to
9295 set-buffer-modified after mh-show-mode. This is needed for CVS
9296 emacs since calling mh-show-mode marks the buffer as modified if
9299 2002-09-17 Peter S Galbraith <psg@debian.org>
9301 * mh-mime.el (mh-store-mime-parts-default-directory): Renamed from
9302 mh-store-mime-parts-directory.
9303 (mh-store-mime-parts-directory): Renamed from
9304 mh-store-mime-parts-directory-default.
9306 2002-09-16 Peter S Galbraith <psg@debian.org>
9308 * mh-comp.el (mail-citation-hook): Doc tweaks suggested by Bill.
9310 2002-09-08 Satyaki Das <satyaki@theforce.stanford.edu>
9312 * mh-e.el (autoloads): Reorder autoload of mh-reply to avoid
9315 2002-09-03 Peter S Galbraith <psg@debian.org>
9317 * mh-mime.el (mh-store-mime-parts-directory): New defcustom.
9318 Default directory to use for mh-store-mime-parts.
9319 (mh-store-mime-parts): New Command. Store the MIME parts of the
9321 (mh-store-mime-parts-directory-default): New internal working
9322 variable. Default to use for mh-store-mime-parts-directory, set
9325 * mh-e.el (mh-folder-seq-tool-bar-map): Add mh-store-mime-parts to
9328 2002-08-22 Satyaki Das <satyaki@theforce.stanford.edu>
9330 * mh-seq.el (mh-thread-generate-scan-lines): In threaded view,
9331 complete scan lines are printed for all messages (not just the
9332 ones at the top of a thread).
9334 * mh-index.el (mh-index-insert-scan): Replace use of kill-line
9335 since that pollutes the kill-ring.
9337 * mh-comp.el (autoloads): Add autoloads for search and subseq to
9338 get rid of compiler warnings.
9340 2002-08-19 Peter S Galbraith <psg@debian.org>
9342 * reply-to.xpm, reply-to.pbm, reply-from.xpm, reply-from.pbm,
9343 * reply-all.xpm, reply-all.pbm: New icons for various reply methods.
9344 * mh-e.el (mh-folder-tool-bar-map): Split reply button into three
9345 that won't prompt for "from", "to" and "all".
9346 * mh-comp.el (mh-reply): Put variable reply-to in the interactive
9347 list since it's specified on the command line for the new toolbar.
9349 * mh-comp.el (mail-citation-hook): Tweak docs concerning
9350 historical usage for supercite.
9351 (mh-yank-from-start-of-msg): Add settings 'supercite and
9352 'autosupercite. Rename 'automatic to 'autoattrib.
9353 (mh-insert-prefix-string): Invoke sc-cite-original if
9354 mh-yank-from-start-of-msg is et to 'supercite or 'autosupercite.
9356 2002-08-17 Satyaki Das <satyaki@theforce.stanford.edu>
9358 * mh-comp.el (compilation-fix): Reorder defvars to avoid warnings
9361 2002-08-17 Peter S Galbraith <psg@debian.org>
9363 * mh-comp.el (mh-yank-from-start-of-msg): Add 'automatic choice.
9364 Do as for `attribution' automatically when show buffer matches the
9365 message being replied-to.
9366 (mh-reply): Call 'mh-yank-cur-msg when mh-yank-from-start-of-msg
9367 is set to 'automatic and show buffer matches message number being
9369 (mh-show-buffer-message-number): New helper function to get the
9370 message number of the current show-buffer.
9371 (mh-yank-cur-msg): Handle 'automatic choice the same as 'attribution.
9372 (mh-yank-cur-msg): Bug fix. It would bail on error if
9373 mh-show-buffer didn't exists.
9375 2002-08-16 Peter S Galbraith <psg@debian.org>
9377 * mh-comp.el (mh-insert-x-mailer): It wrongly assumed that Emacs
9378 was used even when XEmacs was used. Fixed so X-Mailer header is
9379 more exact about what we are using.
9381 2002-08-15 Peter S Galbraith <psg@debian.org>
9383 * mh-e.el (mh-version): Change CVS version number to 6.1+cvs just
9384 so X-Mailer header is more exact about what we are using.
9386 * mh-mime.el (mh-mhn-compose-insertion, mh-mhn-compose-anon-ftp,
9387 mh-mml-attach-file):
9388 "Jeffrey P. Morgenthaler" <jpmorgen@congee.gsfc.nasa.go> reported
9389 that "require" in emacs 20.3 doesn't handle 3 arguments. We
9390 use "load" at the top of file elsewhere anyway to handle such a
9391 case of non-essential loading, so switch to that here.
9393 2002-08-06 Satyaki Das <satyaki@theforce.stanford.edu>
9395 * mh-funcs.el (autoload): Add autoload for mh-speed-invalidate-map.
9397 * mh-speed.el (mh-speed-add-folder): New function to make the
9398 speedbar aware of new folders when they are created by mh-e.
9400 * mh-utils.el (mh-prompt-for-folder): Use mh-speed-add-folder to
9401 tell speedbar that new folder is being created. Also use folder
9402 instead of mkdir to create new folders.
9404 2002-08-01 Peter S Galbraith <psg@debian.org>
9406 * mh-utils.el (mh-decode-quoted-printable): Conditionalize the
9407 limit of search for quoted-printable. If we're using mm-decode
9408 for MIME decoding, it's possible that `mimedecode' could mess our
9409 message, so we only run a full search for quoted-printable parts
9410 when not using gnus' mm-decode. When using mm-decode, mimedecode
9411 can still help by handling the case of the whole message being
9412 quoted-printable as opposed to only a part.
9414 2002-07-31 Peter S Galbraith <psg@debian.org>
9416 * mh-comp.el (mh-compose-insertion): Moved from mh-mime.el because
9417 the pulldown menu were broken in XEmacs21 from this variable being
9420 2002-07-28 Mark D. Baushke <mdb@gnu.org>
9422 * mh-utils.el (mh-show-mode): Use the default paragraph-start
9423 rather than the inherited text-mode value.
9425 2002-07-28 Satyaki Das <satyaki@theforce.stanford.edu>
9427 * mh-seq.el (mh-thread-duplicates): New hash table to track
9429 (mh-thread-get-message): Remove debug code.
9430 (mh-thread-canonicalize-id): Modified to handle messages without
9431 message-id header. Such messages are given distinct copies of the
9432 empty string as message-id.
9433 (mh-thread-generate): The function was inadvertently rebuilding
9434 the thread tree when message refiles and message deletes are
9435 processed. The change here fixes that. Also code has been added to
9436 keep track of duplicate message-id's.
9437 (mh-thread-generate-scan-lines): Modified to print scan lines for
9438 duplicate messages (that is messages with the same message-id).
9439 (mh-thread-forget-message): Modified to maintain
9440 mh-thread-duplicates.
9442 2002-07-22 Satyaki Das <satyaki@theforce.stanford.edu>
9444 * mh-speed.el (mh-speed-parse-flists-output): Use delete-region
9445 instead of kill-region. Otherwise the kill ring gets polluted.
9447 2002-07-16 Satyaki Das <satyaki@theforce.stanford.edu>
9449 * mh-seq.el (mh-thread-update-scan-line-map): New function to
9450 refresh the stale scan lines.
9451 (mh-thread-inc): Update old scan lines when mh-thread-inc is
9452 called. Otherwise notations for deleted and refiled messages get
9453 lost and the folder display gets out of sync with real mh-e state.
9455 * mh-mime.el (mh-mm-display-part): Call Gnus citation highlight
9456 code when text part is displayed. Otherwise buttonized text parts
9457 aren't correctly fontified when they are displayed.
9459 2002-07-15 Mark D. Baushke <mdb@gnu.org>
9461 * mh-utils.el (mm-decode): Use load for the Non-fatal depencency
9462 on the mm-decode library.
9463 * mh-mime.el (mm-decode, mm-uu, mm-view): Use load for the
9464 Non-fatal depencencies on the mm-decode, mm-uu and mm-view
9467 2002-07-15 Satyaki Das <satyaki@theforce.stanford.edu>
9469 * mh-utils.el (mh-require, mh-autoload): Remove these macros.
9470 (mh-decode-mime): Initialized to t iff the mm-decode library is
9471 present in the load-path.
9472 * mh-mime.el (mh-require): Don't use it anymore.
9474 2002-07-15 Mark D. Baushke <mdb@gnu.org>
9476 * mh-utils.el (mh-update-scan-format): Rewrite for compatibility
9477 with XEmacs as replace-match appears not to have identical
9478 functionality with GNU Emacs.
9479 (mh-scan-msg-format-regexp): Deleted. This regexp is now hardcoded
9480 into the mh-update-scan-format function.
9482 2002-07-12 Satyaki Das <satyaki@theforce.stanford.edu>
9484 * mh-seq.el: Add message threading code.
9486 * mh-utils.el (mh-letter-thread-folder): New interactive function
9487 that allows switching to threaded view from show buffer.
9488 (mh-show-folder-map): Bound "F t" to call mh-letter-thread-folder.
9489 (mh-goto-msg): Replace the function to not assume that messages
9490 are sorted in the folder buffer.
9492 * mh-e.el (mh-folder-threaded-view-p): New buffer local variable
9493 in the folder buffer that records whether threaded view is being
9495 (mh-scan-subject-regexp, mh-scan-format-regexp): Get font lock
9496 working for threaded view as well.
9497 (mh-regenerate-headers): Reset mh-folder-threaded-view-p to nil.
9498 (mh-get-new-mail, mh-process-commands): Do incremental threading
9499 if folder is in threaded view.
9500 (mh-delete-scan-msgs): Update thread tables if folder is in
9502 (mh-folder-map): Add "F t" as key binding for mh-thread-folder
9504 * mh-comp.el (mh-yank-cur-msg): Bug fix. mh-show-buffer is only
9505 has a meaningful value in the folder buffer.
9507 2002-07-11 Peter S Galbraith <psg@debian.org>
9509 * mh-comp.el (mh-yank-cur-msg): Run only if mh-show-buffer
9510 actually exists (otherwise a back-traceable error occurred).
9512 * mh-utils.el (mh-find-progs): Run PATH search only when mh-progs,
9513 mh-lib and mh-lib-progs are not all already set. This allows the
9514 user to set them using a simple setq prior to loading mh-e. This
9515 is useful for implementation of mh-e on w32. Note that many
9516 commands still call mh-find-path which also parses the mh_profile
9517 file (that may still fail on w32), so this is still done often.
9518 But it lets us change the mh_profile file and have mh-e see the
9519 changed file without exiting emacs and starting over so I left
9522 2002-07-04 Satyaki Das <satyaki@theforce.stanford.edu>
9524 * mh-index.el (mh-index-show): Fixed a bug in mh-index-show which
9525 caused it to lose track of point when called from show buffer.
9527 2002-07-04 Mark D. Baushke <mdb@gnu.org>
9529 * Makefile: Add more information and common methods to allow both
9530 GNU make and Berkeley make to properly build everything.
9532 2002-07-04 Satyaki Das <satyaki@theforce.stanford.edu>
9534 * mh-mime.el (mh-push-button): Bug fix for mime display with
9535 mouse. Select show window before executing the mime display
9538 2002-07-01 Mark D. Baushke <mdb@gnu.org>
9540 * Makefile: Use a conditional variable assignment operator rather
9541 than ifndef to let Makefile be used by both GNU make and Berkeley
9542 make (or similar versions of make). This does not help Solaris
9543 /usr/ccs/bin/make, but Solaris make has problems with the ifndef
9546 2002-07-01 Satyaki Das <satyaki@theforce.stanford.edu>
9548 * mh-index.el (mh-index-search): Check for mh-decode-mime before
9549 adding mh-mime-cleanup to kill-buffer-hook.
9551 * mh-mime.el (mm-destroy-parts): Add definition for old emacs.
9553 2002-06-30 Mark D. Baushke <mdb@gnu.org>
9555 * mh-utils.el (mh-update-scan-format): Add documentation string.
9556 (mh-scan-msg-format-regexp): Update the regexp to find %(msg).
9557 (mh-set-cmd-note): When mh-scan-format-file is not t, dynamic
9558 update of mh-cmd-note is wrong. Do not assume that
9559 mh-scan-format-nmh and mh-scan-format-mh can be kept in lock-step
9560 with mh-cmd-note via mh-set-cmd-note. The mh-scan-format function
9561 is now where the updated mh-cmd-note value is put into the scan
9564 * mh-e.el (mh-generate-new-cmd-note): Add documentation string.
9565 (mh-scan-format): Use mh-update-scan-format to get updated copies
9566 of mh-scan-format-nmh and mh-scan-format-mh to avoid format skew.
9567 (mh-get-new-mail): Do not try to adapt mh-cmd-note unless
9568 mh-scan-format-file is equal to t.
9569 (mh-scan-format-nmh): No longer buffer local.
9570 (mh-scan-format-mh): No longer buffer local.
9572 2002-06-30 Satyaki Das <satyaki@theforce.stanford.edu>
9574 * mh-index.el (mh-index-max-msg-index): New variable to keep track
9575 of max message index among search results. If mh-adaptive-cmd-note
9576 is non-nil this is used to compute the width of the index field.
9577 (mh-index-search): Keep track of max index seen while parsing the
9578 search results and set it if mh-adaptive-cmd-note is non-nil.
9579 (mh-index-find-max-width): New function to find the required width
9580 of the message index field.
9581 (mh-defun-index): Binding buffer local variables is bad, so don't
9583 (mh-index-show): New argument display-headers-p decides whether
9584 the message is displayed in raw form or not.
9585 (mh-index-header-display): New interactive function bound to ","
9586 which shows the message in raw form.
9587 (mh-index-keymap): Add appropriate bindings for backtab and ",".
9588 (read-from-string): Add ignore-errors around it so that the code
9589 doesn't die when it gets unexpected input.
9591 2002-06-29 Satyaki Das <satyaki@theforce.stanford.edu>
9593 * mh-index.el (mh-count-windows): This function works around the
9594 lack of the window-list builtin function in emacs20.
9596 2002-06-29 Mark D. Baushke <mdb@gnu.org>
9598 * mh-utils.el (mh-message-number-width): New function to scan
9599 the last message of a folder and return its width.
9600 (mh-adaptive-cmd-note): New variable, if Non-nil indicates that
9601 mh-set-cmd-note should be called with the message width for the
9603 (mh-cmd-note): Update documentation.
9604 (mh-update-scan-format): Helper function for updating the
9605 mh-scan-format-nmh and mh-scan-format-mh variables.
9606 (mh-scan-msg-overflow-regexp): New variable to help find problem
9607 messages after an inc.
9608 (mh-scan-msg-format-regexp): New variable to find the old message
9609 width in one of the mh-scan-format-nmh or mh-scan-format-mh
9611 (mh-set-default-cmd-note): Replaced by mh-set-cmd-note.
9612 (mh-set-cmd-note): New function to replace update mh-cmd-note
9615 * mh-e.el (mh-regenerate-headers): If mh-adaptive-cmd-note is
9616 non-nil, use mh-set-cmd-note on empty folder buffers.
9617 (mh-make-folder): Ditto.
9618 (mh-generate-new-cmd-note): New function to adapt the mh-cmd-note
9619 to fit when mh-get-new-mail gets message number truncation.
9620 (mh-get-new-mail): Maybe use mh-generate-new-cmd-note if
9621 mh-adaptive-cmd-note is Non-nil.
9623 2002-06-29 Satyaki Das <satyaki@theforce.stanford.edu>
9625 * mh-speed.el (mh-speed-view): The display gets confused if the
9626 cursor is in the show buffer when mh-speed-view is called. This is
9629 2002-06-27 Satyaki Das <satyaki@theforce.stanford.edu>
9631 * mh-e.el (mh-next-undeleted-msg): Get rid of optional arg
9632 reverse-p. If there are no more undeleted messages the point
9633 remains at its original position and a message is produced (closes
9635 (mh-previous-undeleted-msg): Change similar to
9636 mh-next-undeleted-msg.
9637 (mh-next-msg, mh-refile-msg, mh-delete-msg): Backout previous
9639 (mh-folder-map): Bind "S-tab" and "K S-tab" to mh-prev-button.
9641 * mh-utils.el (mh-show-mode-map): Bind "S-tab" and "K S-tab" to
9642 mh-letter-prev-button.
9644 * mh-mime.el (gnus-newsgroup-name): Initialize it to nil, so that
9645 mm-uu-dissect doesn't cause error.
9647 2002-06-27 Mark D. Baushke <mdb@gnu.org>
9649 * mh-utils.el (mh-cmd-note): Make buffer-local. Changes to this
9650 variable should be made via the new mh-set-default-cmd-note
9652 (mh-set-default-cmd-note): New function to setq-default the
9653 mh-cmd-note, mh-scan-format-mh and mh-scan-format-nmh values to
9656 * mh-e.el (mh-scan-format-mh): Make buffer-local.
9657 (mh-scan-format-nmh): Ditto.
9658 (mh-scan-good-msg-regexp): Use a more general regular expression
9659 so that the width of message numbers, mh-cmd-note, may vary.
9660 (mh-scan-deleted-msg-regexp): Ditto.
9661 (mh-scan-refiled-msg-regexp): Ditto.
9662 (mh-scan-cur-msg-number-regexp): Ditto.
9663 (mh-scan-cur-msg-regexp): Ditto.
9664 (mh-scan-subject-regexp): Ditto.
9666 2002-06-26 Satyaki Das <satyaki@theforce.stanford.edu>
9668 * mh-speed.el: Speedbar support code.
9670 * Makefile: Add mh-speed.el to MH-E-SRC.
9672 * mh-utils.el (mh-prompt-for-folder): Add speedbar hook if
9673 speedbar is being used.
9675 * mh-funcs.el (mh-kill-folder): Add speedbar hook if speedbar is
9678 * mh-e.el (speedbar-autoloads): Autoload speedbar initialization
9679 functions so that speedbar can find them.
9681 2002-06-25 Satyaki Das <satyaki@theforce.stanford.edu>
9683 * mh-index.el (mh-grep-execute-search, mh-grep-next-result): Allow
9684 grep to be used to search mail.
9685 (mh-index-font-lock-keywords): Modified to avoid bug when using
9688 * mh-e.el (mh-delete-msg, mh-refile-msg): Modify so that if no
9689 undeleted (or unrefiled) message exists in the current movement
9690 direction then try to find an undeleted (or unrefiled) message in
9691 the opposite direction instead.
9692 (mh-next-undeleted-msg): Added a new optional argument. If non-nil
9693 search for undeleted message backwards if none exists in the
9695 (mh-previous-undeleted-msg): Added an optional argument. If
9696 non-nil search for undeleted message in the forward direction if
9697 none exists in the backward direction.
9698 (mh-next-msg): Optional argument to change direction if undeleted
9699 messages are not found in the current direction.
9701 * mh-index.el (mh-cmd-note): Use mh-cmd-note instead of hardcoding
9702 the index field size to 4.
9704 * mh-utils.el (mh-show-addr, mh-show-xface): New functions added
9705 to do xface display and goto-addr interface to allow reuse by the
9707 (mh-show-mode): Use mh-show-addr and mh-show-xface. Only add
9708 mh-mime-cleanup to kill-buffer-hook if mime decoding is enabled.
9709 (mh-modify): Use mh-letter-mode instead of mh-show-mode when
9712 * mh-mime.el (mh-mm-inline-message): Arrange for xface and
9713 highlighting to work in forwarded messages.
9715 2002-06-23 Peter S Galbraith <psg@debian.org>
9717 * mh-comp.el (mh-yank-from-start-of-msg): Add 'attribution' option
9718 to add an attribution line in mh-yank-cur-msg.
9719 (mh-extract-from-attribution-verb): Verb to use for attribution
9720 when a message is yanked by mh-yank-cur-msg. Provides a method
9721 for setting a different language.
9722 (mh-yank-cur-msg): Add support for 'attribution' option.
9723 (mh-extract-from-attribution): Function to get the attribution
9724 line, or the sender from the From: line in the current show buffer.
9726 2002-06-20 Satyaki Das <satyaki@theforce.stanford.edu>
9728 * mh-index.el (mh-index-show): mh-display-msg was not being called
9729 in the show buffer. This causes weird results on some mime messages.
9731 * mh-mime.el (gnus-newsgroup-charset): Defvar to avoid error in
9732 pgp messages if gnus hasn't been used yet.
9734 * mh-comp.el (mh-letter-mode-map): Typo fix.
9736 2002-06-19 Satyaki Das <satyaki@theforce.stanford.edu>
9738 * mh-mime.el (mh-mml-secure-message-encrypt-pgpmime): Typo fix.
9739 (compiler-warnings): Add autoloads to remove compiler warnings.
9741 * mh-index.el (autoload-fixes): Fix autoload forms.
9743 2002-06-18 Satyaki Das <satyaki@theforce.stanford.edu>
9745 * mh-comp.el (mh-letter-mode-map): Change binding of "\C-c\C-ma"
9746 to mh-compose-insertion. Remove duplicate binding for "C-c\C-mf".
9747 (compiler-warnings): Add defvar to remove compiler-warning.
9749 2002-06-18 Peter S Galbraith <psg@debian.org>
9751 * mh-comp.el (mh-letter-menu): Conditionalize GPG function on
9752 mh-gnus-pgp-support-p.
9754 * mh-mime.el (mh-mml-forward-message): s/subseq/substring/.
9755 (mh-compose-forward): cut&paste typo: s/messages/message/.
9756 (mml-minibuffer-read-file): autoload added.
9757 (mml-minibuffer-read-description): autoload added.
9758 (mml-insert-empty-tag): autoload added.
9759 (mh-mml-secure-message-sign-pgpmime): Check mh-gnus-pgp-support-p.
9760 (mh-mml-secure-message-encrypt-pgpmime): Check mh-gnus-pgp-support-p.
9762 2002-06-17 Peter S Galbraith <psg@debian.org>
9764 * mh-utils.el (mh-show-use-xface): Check for availability of
9765 `uncompface' executable on system.
9767 * mh-mime.el (mh-compose-forward): New front end for both
9768 mh-mml-forward-message and mh-mhn-compose-forw.
9769 (mh-compose-insertion): New front end for both mh-mml-attach-file
9770 and mh-mhn-compose-insertion.
9771 (mh-mml-to-mime): New function. Compose mime message from mml
9773 (mh-mml-forward-message): New function. Forward a message as
9775 (mh-mml-attach-file): New function. Attach a file to the outgoing
9777 (mh-mml-compose-insert-p): New variable. Buffer-local variable to
9778 know whether MIME insertion was done. Triggers an automatic call
9779 to `mh-mml-to-mime' in `mh-send-letter'.
9780 (mh-mml-secure-message-sign-pgpmime): New function.
9781 Front end to mml-secure-message-sign-pgpmime.
9782 (mh-mml-secure-message-encrypt-pgpmime): New function.
9783 Front end to mml-secure-message-encrypt-pgpmime.
9785 * mh-comp.el (mh-send-letter): automatic call to `mh-mml-to-mime'
9786 if mh-mml-compose-insert-p is set.
9787 (mh-letter-mode-map): Add keys for new mh-mime functions above.
9788 * mh-comp.el: Added autoloads for new mh-mime functions above.
9790 2002-06-17 Peter S Galbraith <psg@debian.org>
9792 * mh-utils.el (mh-show-use-xface): new defcustom to determine
9793 whether to call external package x-face to display the x-face.
9794 (mh-invisible-headers-show-xface): variable now defaults to value
9795 of mh-show-use-xface.
9796 (mh-show-mode): When mh-show-use-xface is t, invoke
9797 external package x-face to display the x-face.
9799 2002-06-15 Satyaki Das <satyaki@theforce.stanford.edu>
9801 * mh-e.el (mh-prev-button): New interactive function which moves
9802 point to the previous mime button in the show buffer.
9803 (mh-folder-mode-map): Bind M-TAB and K M-TAB to mh-prev-button.
9805 * mh-utils.el (mh-show-mode-map): Bind M-TAB and K M-TAB to call
9806 mh-letter-prev-button (which is analogous to mh-prev-button).
9807 (mh-gnus-pgp-support-p): New global variable to replace the
9808 variable mh-recent-gnus-p. The name better describes what it is
9811 * mh-mime.el (mh-mime-display-part, mh-mime-display-single): Use
9812 mh-gnus-pgp-support-p instead of mh-recent-gnus-p.
9814 2002-06-12 Satyaki Das <satyaki@theforce.stanford.edu>
9816 * mh-mime.el (mh-display-buttons-for-inline-parts): New
9817 customizable variable. When non-nil inline parts have are
9818 displayed with a button (that is initially expanded).
9819 (mh-maybe-insert-newline): The function has been removed.
9820 (mh-mime-display-single): Add code to display buttons for inline
9821 parts. Reduce the insertion of extra newlines between inline parts
9822 and also for pgp signature parts.
9823 (mh-mm-display-part): The function has been rewritten and cleaned
9824 up. There was a bug which could change the show buffer if the user
9825 pressed C-g while a mime part was being displayed has been fixed.
9826 (mh-press-button, mh-push-button): Use unwind-protect to make sure
9827 that set-buffer-modified-p is always called after mime display.
9828 (mh-mime-inline-part): The behavior of the function has been
9829 changed so that it toggles the display of the raw bytes.
9830 (mh-mime-display-security): Remove the display of too many
9832 (documentation): Remove most check-doc warnings.
9834 * mh-comp.el (mh-filter-out-non-text): Updated since whitespace
9835 added around mime buttons have changed.
9837 2002-06-10 Satyaki Das <satyaki@theforce.stanford.edu>
9839 * mh-index.el (mh-index-last-search, mh-index-search): The default
9840 prompt in mh-index-search has been removed since currently there
9841 is no good way of reading "+" with mh-prompt-for-folder.
9842 (mh-index-folder-mode, mh-index-show-mode): New major modes
9843 derived from mh-folder-mode and mh-show-mode respectively. They
9844 use a restricted keymap compared to the parent modes.
9845 (mh-index-folder-face): New customizable face to display folder
9846 names in the index buffer.
9847 (documentation): Change two spaces after period back to one.
9849 2002-06-08 Satyaki Das <satyaki@theforce.stanford.edu>
9851 * mh-e.el (mh-folder-toggle-mime-part): New interactive function
9852 to control mime display from folder buffer.
9853 (mh-folder-inline-mime-part): New interactive function to inline
9854 raw mime part from folder buffer.
9855 (mh-folder-save-mime-part): New interactive function to save mime
9856 part from folder buffer.
9857 (mh-folder-mode-map): Add keybindings for "K v", "K o", "K i" and
9858 "K \t" to mh-folder-mode-map.
9859 (mh-goto-next-button): Modified to allow searching for next button
9860 that satisfies some condition.
9861 (mh-folder-mime-action): Support function for
9862 mh-folder-save-mime-part, mh-folder-inline-mime-part and
9863 mh-folder-toggle-mime-part.
9865 * mh-utils.el (mh-show-mode-map): Modify keymap to add appropriate
9866 bindings for "K v", "K o", "K i" and "K \t".
9868 * mh-index.el (documentation): Fix docs according to checkdoc
9871 2002-06-07 Satyaki Das <satyaki@theforce.stanford.edu>
9873 * mh-seq.el, mh-funcs.el (Compiler): Remove (require 'view) and
9874 instead add defvar for view-exit-action.
9876 2002-06-06 Satyaki Das <satyaki@theforce.stanford.edu>
9878 * mh-comp.el (mh-insert-x-face): If transient-mark-mode is enabled
9879 the call to mark returns error. So avoid using mark.
9881 * mh-index.el: Support for new interactive function
9884 * mh-e.el (mh-next-button, mh-goto-next-button): Refactor
9885 mh-next-button so that the code may be reused by mh-index.el.
9886 (mh-folder-map): Add key "F i" to call mh-index-search.
9888 * mh-utils.el (mh-recent-gnus-p): Fix documentation.
9889 (mh-msg-folder, mh-display-msg): The new function mh-msg-folder
9890 maps a MH folder name to the buffer displaying it. In normal
9891 operation the two names are identical but they are different in a
9892 folder buffer generated by index search. Minor modification to
9893 mh-display-msg to use mh-msg-folder to enable mh-index-search to
9895 (mh-show-mode-map): Add key "F i" to call mh-index-search.
9897 * Makefile: Add mh-index.el
9899 2002-06-05 Peter S Galbraith <psg@debian.org>
9901 * mh-e.el (mh-folder-message-menu): Add an entry for mh-modify.
9903 2002-05-31 Satyaki Das <satyaki@theforce.stanford.edu>
9905 * mh-utils.el (mh-decode-quoted-printable): Only decode if the
9906 whole message is encoded. So restrict the search for the
9907 content-transfer-encoding header to the headers of the message
9910 * mh-mime.el (mh-mime-display-alternative): Make sure that point
9911 is moved after mm-display-part is called.
9913 2002-05-29 Satyaki Das <satyaki@theforce.stanford.edu>
9915 * mh-mime.el (mh-mime-display-single): Fix the logic that
9916 determines when an attachment is buttonized. For inline parts that
9917 can't be displayed a button is now created.
9919 2002-05-29 Satyaki Das <satyaki@theforce.stanford.edu>
9921 * mh-e.el (mh-regenerate-headers): Fix an error in which the
9922 mh-mode-line-annotation was not being set properly.
9924 * mh-mime.el, mh-utils.el (compilation): Macros mh-require and
9925 mh-autoload are used to make sure that emacs20 doesn't croak when
9926 it tries to load non-existent mm-* files.
9927 (mh-decode-mime): Make it default to nil for Emacs major version
9930 2002-05-28 Satyaki Das <satyaki@theforce.stanford.edu>
9932 * mh-e.el (mh-regenerate-headers): Generalize the function to
9933 handle multiple ranges.
9935 2002-05-25 Satyaki Das <satyaki@theforce.stanford.edu>
9937 * Makefile, mh-comp.el, mh-e.el, mh-funcs.el, mh-seq.el, mh-utils.el:
9938 Reduce use of eval-when-compile so that load-path is
9939 not changed if lisp files are loaded without compilation.
9941 * mh-e.el (mh-next-button, mh-folder-mode-map): New interactive
9942 function to advance point to next MIME button. It is bound to TAB.
9944 * mh-utils.el (mh-letter-next-button, mh-show-mode-map): New
9945 interactive function mh-letter-next-button has been added to
9946 advance point to the next MIME button. It is bound to TAB.
9948 * mh-mime.el (comments): Added some comments.
9950 2002-05-24 Satyaki Das <satyaki@theforce.stanford.edu>
9952 * mh-mime.el (compilation): Replace (eval-when-compile ...) by
9953 (eval-when (compile) ...) to remove a bug when mh-e is loaded
9954 without compilation.
9956 2002-05-23 Satyaki Das <satyaki@theforce.stanford.edu>
9958 * mh-comp.el (compilation): Some code was rearranged to avoid
9961 * mh-e.el (compilation): Code rearrangement and extra autoloads to
9962 remove compiler warnings.
9963 (mh-quit): Add call to mh-destroy-postponed-handles to remove
9964 handles that are associated with external viewers. Also fixed a
9965 bug that I accidentally introduced by adding an extra line when
9966 cut and pasting my changes.
9968 * mh-funcs.el (compilation): Code rearrangement to remove compiler
9971 * mh-mime.el (compilation): Code rearrangement to remove compiler
9973 (mh-defun-compat): New macro to define to useful functions that
9974 aren't present in old Gnus.
9975 (mh-destroy-postponed-handles): New function to cleanup handles
9976 that are associated with external viewers.
9977 (mh-handle-set-external-undisplayer): New function to replace
9978 mm-handle-set-external-undisplayer. It associates handles for
9979 external viewers with the folder buffer. These are released when
9980 the user quits the folder.
9981 (mh-mime-display, mh-press-button, mh-push-button): Hook in
9982 mh-handle-set-external-undisplayer.
9983 (mh-maybe-insert-newline): New function to avoid inserting too
9984 many newlines between mime parts.
9985 (mh-mm-display-part): Workaround for Gnus bug which causes new
9986 lines to be inserted when images are shown inline.
9987 (mh-mime-display-security): Cut down on newlines inserted.
9989 * mh-pick.el (compilation): Code rearrangement to remove compiler
9992 * mh-seq.el (compilation): Code rearrangement to remove compiler
9994 (comments): Remove @SD from comments.
9996 * mh-utils.el (compilation): Slight code rearrangement.
9997 (mh-defun-show-buffer): Fix documentation so that the first line
9998 is not too long as was the case earlier. Use
9999 mh-previous-window-config to remember where the cursor should
10000 return functions like mh-reply.
10001 (mh-display-msg): Initialize handles data-structure for the folder
10002 buffer so that postponed handles can be added to it.
10003 (mh-add-msgs-to-seq): Always keep messages in the sequences
10004 sorted. This removes some unexpected behavior when working with
10005 sequences that go out of sync with the corresponding MH sequences.
10006 (mh-canonicalize-sequence): New function to sort and remove
10007 duplicates from mh-e sequence.
10009 2002-05-21 Satyaki Das <satyaki@theforce.stanford.edu>
10011 * mh-utils.el (require): Load mm-decode.el here so that
10012 mm-inline-media-tests is properly initialized.
10014 * mh-comp.el (mh-yank-cur-msg): Don't try to remove the displayed
10015 mime parts when yanking the message. This also fixes the problem
10016 of regions not being respected during the yank.
10018 2002-05-20 Satyaki Das <satyaki@theforce.stanford.edu>
10020 * mh-utils.el (compiler-warnings): Some code was rearranged to
10021 remove all compiler warnings.
10022 (mh-decode-mime): New defcustom to control whether
10023 mime attachments are shown using Gnus.
10024 (mh-globals-hash): New global variable which maps a given buffer
10025 to the corresponding mime data structures.
10026 (mh-recent-gnus-p): New global variable which checks if Gnus is
10027 recent enough so that PGP/GPG encrypted messages can be handled.
10028 (mh-mm-inline-media-tests): Tests to determine whether a mime part
10029 can be shown inline.
10030 (mh-gnus-article-highlight-citation): Shadow the Gnus function,
10031 gnus-article-add-button before gnus-article-highlight-citation is
10032 called. This prevents the insertion of useless buttons in the
10034 (mh-show-mode): Don't set font-lock-support-mode to nil. Modify
10035 kill-buffer-hook to call mh-mime-cleanup.
10036 (mh-modify): Only the edit buffer is shown.
10037 (mh-display-msg): Add call to mh-mime-display, mh-display-smileys,
10038 mh-display-emphasis when mh-decode-mime is non-nil.
10040 * mh-mime.el (mh-buffer-data): New structure to keep track of
10041 per-buffer mime information.
10042 (compiler-warnings): Some code was rearranged to get rid of all
10044 (mh-graphical-smileys-p): New defcustom which controls whether
10045 graphical smileys are shown.
10046 (mh-graphical-emphasis-p): New defcustom for graphical emphasis.
10047 (mh-max-inline-image-width, mh-max-inline-image-height): New
10048 defcustoms for inlining image.
10049 (gnus-local-map-property, mm-merge-handles): Copy utility
10050 functions for use with version of Gnus that ships with Emacs21.1.
10051 (mh-mime-cleanup): New function to free mime data-structures.
10052 (mh-add-missing-mime-version-header): New function to add missing
10053 Mime-Version header if a Content-Type header exists.
10054 (mh-display-smileys): New function to show graphical smileys.
10055 (mh-display-emphasis): New function to show graphical emphasis.
10056 (new-globals): New variables mh-mime-button-* and
10057 mh-mime-security-* were added to control mime buttons.
10058 (mh-mime-display): New function to display mime messages. The
10059 functions mh-mime-display-part, mh-mime-display-alternative,
10060 mh-mime-display-mixed, mh-mime-part-index, mh-small-image-p,
10061 mh-mime-display-single, mh-insert-mime-button, mh-mm-display-part,
10062 mh-press-button, mh-push-button, mh-mime-save-part,
10063 mh-mime-inline-part, mh-widget-press-button, mh-mm-inline-message,
10064 mh-mime-display-security, mh-mime-security-show-details,
10065 mh-mime-security-press-button and mh-insert-mime-security-button
10066 were added to support mh-mime-display.
10068 * mh-e.el (mh-header-display): Bind mh-decode-mime to nil when
10069 mh-show-msg is called, so that mime isn't decoded when headers are
10071 (mh-quit): The show buffer is killed instead of invalidating and
10074 * mh-comp.el (mh-yank-cur-msg): Filter out the mime buttons from
10075 the yanked message.
10076 (mh-filter-out-non-text): New function to filter out attachments
10077 from message being yanked.
10079 2002-05-20 Bill Wohler <Bill.Wohler@openwave.com>
10081 * mh-utils.el (mh-invisible-headers-show-xface): First sentence of
10082 docstring was not entirely on first line so was truncated in
10083 customize and help buffers. Reworded so first sentence could fit
10084 within 80 columns per checkdoc recommendation.
10085 (mh-defun-show-buffer): Reworded per checkdoc recommendations.
10086 Removed @SD while I was in there.
10088 2002-05-18 Satyaki Das <satyaki@theforce.stanford.edu>
10090 * mh-seq.el (mh-narrow-to-seq): This function now removes the
10091 current message notation in the folder. Otherwise, two current
10092 message notations may be present after mh-widen is called. Also
10093 mh-copy-seq-to-eob is called instead of mh-copy-seq-to-point since
10094 the latter has a bug.
10095 (mh-copy-seq-to-point): This function has a tricky problem. It
10096 calls mh-map-to-seq-msgs which uses mh-goto-msg. mh-goto-msg
10097 assumes that the folder is sorted (since it uses binary
10098 search). The assumption isn't true, so it may not copy all the
10099 messages. Since this function is not used any more it has been
10101 (mh-copy-seq-to-eob): This function is a specialized (and
10102 hopefully correct) replacement for mh-copy-seq-to-point.
10104 2002-05-17 Satyaki Das <satyaki@theforce.stanford.edu>
10106 * mh-utils.el (mh-gnus-article-highlight-citation): Workaround for
10107 problem caused by low value of recursive-load-depth-limit in
10108 Emacs21.1 and CVS version of Gnus.
10109 (mh-show-mode-map): New keymap variable to facilitate use of
10110 summary commands from the show buffer.
10111 (mh-show-folder-buffer): New local variable which keeps track of
10112 the folder-buffer corresponding to the message being shown.
10113 (mh-defun-show-buffer): New macro to convert interactive functions
10114 callable in the summary buffer to interactive functions callable
10115 in the show buffer.
10116 (mh-show-mode): Make buffer read-only and use mh-show-mode-map as
10117 keymap (closes SF #527946).
10118 (mh-modify): New interactive function to edit a message in-place.
10120 * mh-e.el (mh-goto-cur-msg): Add an optional argument,
10121 minimal-changes-p. If non-nil, the function will just change
10122 the point to current message and do not change folder display.
10123 (mh-folder-mode-map): Make "M" call mh-modify.
10125 2002-05-07 Peter S Galbraith <psg@debian.org>
10127 * mh-utils.el (mh-invisible-headers-show-xface): New defcustom
10128 variable. If non-nil, the X-Face header line will be excluded from
10129 the variable `mh-invisible-headers'. Set this when using a
10130 package such as x-face-el to display X-Face icons in mh-show-mode.
10131 This variable's setting will eventually be set automatically when
10132 mh-e does its own X-Face decoding (or this variable will be replaced
10133 by one telling mh-e to decode the X-Face). We may not ship the
10134 next release with this variable.
10136 2002-05-07 Peter S Galbraith <psg@debian.org>
10138 * mh-comp.el (mh-x-face-file): New defcustom variable. File name
10139 containing the encoded X-Face string to insert in outgoing mail.
10140 (mh-insert-x-face): New function. Appends an X-Face field to the
10141 header, but only if it doesn't already exist and if 'mh-x-face-file'
10142 is non-nil and points to an existing file.
10143 (mh-send-letter): Invoke mh-insert-x-face.
10145 2002-04-29 Mike Kupfer <m.kupfer@acm.org>
10147 * mh-e.el (mh-delete-msg, mh-refile-msg, mh-undo): Check
10148 whether XEmacs region is actually active (needed at least for 21.1).
10149 [Patch committed by psg]
10151 2002-04-29 Mike Kupfer <m.kupfer@acm.org>
10153 * mh-utils.el (mh-prompt-for-folder): Remove "default" argument
10154 from completing-read as XEmacs-21.1 doesn't have it (21.4 does
10155 however) and using the argument adds no functionality.
10156 [Patch committed by psg]
10158 2002-04-11 Peter S Galbraith <psg@debian.org>
10160 * mh-e.el (mh-delete-msg, mh-refile-msg, mh-undo): Add support for
10161 XEmacs to act on selected region when active.
10163 2002-04-10 Peter S Galbraith <psg@debian.org>
10165 * mh-e.el (mh-delete-msg, mh-refile-msg, mh-undo): XEmacs fix; Add
10166 check to see if mark-active is bound, because Mandrake Linux include
10167 XEmacs initialization code that binds transient-mark-mode. This
10168 fix gets around a problem in Mandrake only. It wasn't a problem
10169 on XEmacs generally. Fixes SF #541915.
10171 2002-04-08 Bill Wohler <wohler@newt.com>
10173 Released mh-e version 6.1.
10175 * mh-e.el (mh-folder-unseen-seq-name): Use "mhparam -component
10176 Unseen-Sequence" command and "Unseen-Sequence: \\(.*\\)$" regexp
10177 to increase robustness.
10178 (mh-folder-unseen-seq-list): Use `expand-file-name' as
10179 `mh-expand-file-name' isn't needed and the former saves function
10181 (Version, mh-version): Updated for release 6.1.
10183 2002-04-08 Peter S Galbraith <psg@debian.org>
10185 * mh-e.el (mh-folder-unseen-seq-list): Specify mh-progs path in
10186 call to mark command. Fixes a bug in which unseen messages
10187 weren't highlighted if "mark" wasn't in the path.
10189 2002-04-07 Bill Wohler <wohler@newt.com>
10191 * MH-E-NEWS: Updated for release 6.1.
10193 * README: Updated for release 6.1. Updated verbiage about reading
10196 * mh-comp.el, mh-e.el, mh-funcs.el, mh-mime.el, mh-seq.el,
10197 mh-utils.el, mh-xemacs-compat.el: Updated copyright in files
10198 modified this year.
10200 * mh-xemacs-compat.el: Put Author field back in, but set to FSF.
10202 * mh-comp.el, mh-funcs.el, mh-mime.el, mh-seq.el,
10203 mh-utils.el: Fixed all checkdoc errors, except for no
10204 documentation, and documentation in comments. Also removed the-
10205 prefix from certain local variables.
10207 * mh-e.el: Fixed all checkdoc errors, except for no documentation,
10208 and documentation in comments. Also removed the- prefix from
10209 certain local variables.
10210 (mh-folder-unseen-seq-name): Refactored to make default sequence
10211 name more explicit and to handle undefined Unseen-Sequence MH
10212 profile entry better.
10214 2002-04-02 Peter S Galbraith <psg@debian.org>
10216 * mh-e.el: 'defvar mh-folder-unseen-seq-name' called a function to
10217 set its value, and this happens also on byte-compilation (where
10218 it can fail if the user's MH environment is not setup correctly).
10219 I now set the value of mh-folder-unseen-seq-name at runtime when I
10220 first need it. This should fix Debian bugs
10221 http://bugs.debian.org/140232 and http://bugs.debian.org/140817
10223 2002-03-25 Peter S Galbraith <psg@debian.org>
10225 * mh-utils.el: remove "(require 'mh-e)" since mh-utils.el should
10226 be at the bottom of the dependency tree.
10227 * mh-e.el (mh-folder-unseen-seq-name): Make sure mh-progs is set
10228 and use it as path to mhparam command in call-process.
10230 2002-01-23 Peter S Galbraith <psg@debian.org>
10232 * mh-e.el (mh-folder-font-lock-keywords): Add call to
10233 mh-folder-font-lock-unseen to fontify unseen messages in bold.
10234 (mh-folder-unseen-seq-name): Provide name of unseen sequence from
10235 mhparam. Used as default for variable of same name.
10236 (mh-folder-unseen-seq-list): Returns a list of unseen messages
10237 numbers for current folder.
10238 (mh-folder-unseen-seq-cache): Cache variable to hold list of
10239 unseen message numbers while font-lock iterates. This variable is
10241 (mh-folder-font-lock-unseen): Returns unseen message lines to
10242 font-lock one by one.
10244 2002-01-15 Peter S Galbraith <psg@debian.org>
10246 * mh-comp.el (mh-insert-prefix-string): Wrap a
10247 "(let ((zmacs-regions nil))" around (mark) so it works in XEmacs.
10248 Bug reported and fix suggested by Will Partain <partain@dcs.gla.ac.uk>
10249 Indeed, this is how it appears in XEmacs-21's mh-comp.el.
10251 2001-12-16 Jeffrey C Honig <jch@honig.net>
10253 * mh-comp.el (mh-forward): Move the assignment to `fwd-msg-file'
10254 to before the assignment to `draft' as the later changes buffers
10255 and invalidates `mh-seq-list' (which is used in a function called
10256 by (mh-seq-to-msgs)). Resolves SF #489448.
10258 * mh-utils.el: Add defcustoms for `mh-temp-folders-buffer' and
10259 `mh-temp-sequences-buffer'.
10261 * mh-e.el (mh-quit): If they exist, kill 'mh-temp-buffer,
10262 'mh-temp-folders-buffer and 'mh-temp-sequences-buffer when
10265 * mh-funcs.el (mh-list-folders): Use `mh-temp-folders-buffer'
10266 (a defcustom initialized to "*Folders*") for folder listing. Put
10267 into view mode and set it up to kill the buffer when exiting view
10270 * mh-seq.el (mh-list-sequences): Use `mh-temp-sequences-buffer'
10271 (a defcustom initialized to "*Sequences") for sequences listing.
10272 Put into view mode and set it up to kill the buffer when exiting
10275 2001-12-16 Bill Wohler <wohler@newt.com>
10277 Released mh-e version 6.0.
10279 * MH-E-NEWS: Be a little more specific about incompatible changes.
10280 Added info about outdated manual.
10281 Removed variables in mh-scan regexp table that did not exist in
10283 Added helpful documentation about finding relevant variables
10284 containing regexps to mh-scan-format-file's description.
10286 * mh-e.el (mh-scan-format-file): Added information about getting a
10287 list of regexp variables that you'll need to change if you
10288 customize your scan's output.
10289 (mh-folder-mode): Added documentation about `mh-scan-format-file'
10290 for those users who modify their scan formats.
10292 * README: New file. Describes packages and provides simple
10293 installation instructions.
10295 * Makefile (clean, dist, install-emacs): Replaced $(RM) with rm
10296 -rf (closes SF #488661).
10298 2001-12-14 Bill Wohler <wohler@newt.com>
10300 Released mh-e version 5.0.93.
10302 * Makefile (MH-E-SRC): Added mh-xemacs-compat.el.
10303 (MH-E-IMG): Added .pbm images for all. Removed mail_ prefix from
10305 (MH-E-IMG2): New variable to hold images in mail sub-directory.
10306 (dist): Updated target to make mail sub-directory and copy
10307 MH-E-IMG2 images there.
10309 * mh-xemacs-compat.el: Modified docs per GNU coding conventions.
10311 * mh-e.el: Reorganized variables having to do with the scan line.
10312 Moved some random variables that were interspersed out of the
10313 middle. Moved `mh-scan-format-file' first and let the variables
10316 As the number of variables increases, it is becoming important to
10317 organize the mh-e namespace. Several variables having to do with
10318 the format of scan lines were renamed, as follows:
10319 (mh-good-msg-regexp): Renamed to mh-scan-good-msg-regexp.
10320 (mh-deleted-msg-regexp): Renamed to mh-scan-deleted-msg-regexp.
10321 (mh-refiled-msg-regexp): Renamed to mh-scan-refiled-msg-regexp.
10322 (mh-valid-scan-line): Renamed to mh-scan-valid-regexp.
10323 (mh-cur-msg-number-regexp): Renamed to mh-scan-cur-msg-number-regexp.
10324 (mh-cur-msg-line-regexp): Renamed to mh-scan-cur-msg-regexp.
10325 (mh-scan-rcpt-addr-regexp): Renamed to mh-scan-rcpt-regexp.
10326 (mh-scan.font-lock-regexp): Renamed to mh-scan-format-regexp.
10327 (mh-folder-scan-font-lock-face): Renamed to
10328 mh-folder-scan-format-face.
10329 (mh-folder-cur-msg-line-face): Renamed to mh-folder-cur-msg-face).
10331 2001-12-13 Bill Wohler <wohler@newt.com>
10333 * mh-utils.el (mh-msg-number-regexp): Renamed to
10334 mh-scan-msg-number-regexp.
10335 (mh-msg-search-regexp): Renamed to mh-scan-msg-search-regexp.
10337 * Corrected typos, quoted variables in doc strings, and made minor
10338 wording changes in docs.
10340 2001-12-13 Peter S Galbraith <psg@debian.org>
10342 * mh-xemacs-compat.el: defalias 'match-string-no-properties to
10343 'match-string for XEmacs. I've seen a better function for this
10344 that actually removes text properties, but this will do for now.
10346 * mh-utils.el (mh-decode-quoted-printable): deactivate-mark not
10349 * mh-xemacs-compat.el: GNU Emacs Functions needed by XEmacs.
10351 * mh-e.el: (require 'mh-xemacs-compat) when running XEmacs.
10353 2001-12-12 Peter S Galbraith <psg@debian.org>
10355 * mh-comp.el (mh-send-letter): function local-variable-p needs two
10356 arguments in XEmacs.
10357 (mh-send-letter): sendmail-coding-system not bound in XEmacs.
10358 (mh-send-letter): default-buffer-file-coding-system not bound in
10361 * mh-e.el (mh-delete-msg, mh-refile-msg, mh-undo):
10362 transient-mark-mode not bound in XEmacs. The feature of
10363 operations made on all messages in the selected range when
10364 transient-mark-mode is on doesn't work in XEmacs.
10366 * mh-e.el, mh-utils.el: Conditionalize calls to
10367 'add-to-list 'facemenu-unlisted-faces for XEmacs.
10369 2001-12-11 Jeffrey C Honig <jch@honig.net>
10371 * mh-e.el (mh-scan-format): Add `mh-scan-format-file' variable to
10372 specify the scan format string or file to use. Define formats for
10373 MH and nmh that are compatible with the standard format, but
10374 provide hints for font-lock. Define (mh-scan-format) for use by
10375 (mh-regenerate-headers) and (mh-get-new-mail) to specify the args
10376 necessary to inform the scan program which scan format string or
10379 2001-12-07 Peter S Galbraith <psg@debian.org>
10381 * mh-e.el (scan.font-lock): New format file documented in comments.
10382 (mh-scan.font-lock-regexp): Adapted to new format.
10383 (mh-folder-font-lock-keywords): Use new format.
10385 * mh-e.el (page-down.xpm): Icon renamed from nextpage.
10387 * mh-utils.el (mh-decode-quoted-printable): Bug fix. Better check
10388 on what actually is a quoted-printable attachment.
10390 2001-12-06 Eric Ding <ericding@alum.mit.edu>
10392 * mh-mime.el (mh-mhn-compose-insertion, mh-mhn-compose-anon-ftp):
10393 require mailcap.el here rather than using autoload at top of
10395 (mh-file-mime-type): get rid of unused variables (why were they
10396 there to begin with?)
10398 2001-12-06 Peter S Galbraith <psg@debian.org>
10400 * mh-e.el (mh-cur-msg-number-regexp, mh-cur-msg-line-regexp):
10401 mh-cur-scan-msg-regexp splits into these two variables.
10402 The whole-line fontification is disabled, but easily restored by a
10403 user (although it could be a defcustom with choices DISABLED or
10404 the correct regexp?)
10405 (mh-folder-cur-msg-line-face): mh-folder-current-msg-face renamed
10407 (mh-folder-cur-msg-number-face): mh-folder-current-face renamed to
10410 * cabinet.xpm: Revert to rescan icon name.
10411 * mh-e.el (mh-folder-tool-bar-map): s/cabinet/rescan/
10413 * mh-e.el (mh-folder-font-lock-keywords): Reorder and tweak such
10414 that current message line highlight doesn't mess up other highlights.
10416 2001-12-05 Eric Ding <ericding@alum.mit.edu>
10418 * mh-utils.el (mh-show-from-face): Change mh-show-from-face to
10419 cyan on dark backgrounds; through a series of changes, it had
10420 become the same color as mh-show-subject-face!
10422 2001-12-05 Bill Wohler <Bill.Wohler@openwave.com>
10424 * mh-e.el, mh-utils.el: Fixed typos in face definitions, and made
10425 a couple of small doc string tweaks while I was in there. Peter,
10426 if you don't agree, let me know and I'll back them out. I thought
10427 the "mh-e" in the text was redundant since the variables start
10428 with "mh"; I was also thinking ahead to how the documentation may
10431 2001-12-05 Peter S Galbraith <psg@debian.org>
10433 * mh-e.el (mh-cur-scan-msg-regexp): Match 0 is the whole line.
10434 (mh-folder-current-msg-face): New face with only a background
10435 settings, used in font-lock for the current message.
10436 (mh-folder-font-lock-keywords): Use mh-folder-current-msg-face for
10437 mh-cur-scan-msg-regexp.
10439 * mh-utils.el (mh-show-from-face): Use red3 instead of red for
10440 light backgrounds. It's not as bright on the eyes.
10441 (mh-show-subject-face): copy from mh-folder-subject-face instead.
10442 Makes the look consistent with folder-mode.
10444 * mh-e.el (mh-folder-subject-face): Moved to mh-utils since we
10445 need it to copy to mh-show-subject-face.
10447 2001-12-05 Bill Wohler <wohler@newt.com>
10449 * mh-e.el (mh-folder-mode-map): Moved `mh-extract-rejected-mail'
10450 from "a" to "E". Better mnemonic, nicer to folks used to using a
10453 2001-12-04 Bill Wohler <wohler@newt.com>
10455 * mh-e.el (mh-folder-map): Added "S" for `mh-sort-folder'.
10457 2001-12-04 Peter S Galbraith <psg@debian.org>
10459 * mh-e.el (mh-folder-subject-face et al.): Yet another attempt at
10460 colors for folder-mode. Still themed, but fewer and darker
10461 colors (Blame Eric this time!). I'll get to underlining tomorrow
10464 * mh-e.el (mh-folder-tool-bar-map): Renamed all icons so they
10465 don't have the word mail in them. Also generated a pbm format of
10466 each icon for users without XPM support conpiled into Emacs.
10468 2001-12-04 Eric Ding <ericding@alum.mit.edu>
10470 * mh-utils.el (mh-show-font-lock-keywords): Use
10471 mh-header-subject-font-lock instead of regexp for subject headers,
10472 which may go multiple lines.
10473 (mh-header-subject-font-lock): New function.
10474 Fix typos (hightlight -> highlight).
10476 2001-12-04 Eric Ding <ericding@alum.mit.edu>
10478 * mh-e.el: changes to face colors on dark backgrounds.
10479 (mh-folder-followup-face): change to LightGoldenRod.
10480 (mh-folder-date-face): change to snow3.
10481 (mh-folder-msg-number-face): change to snow4.
10483 2001-12-04 Bill Wohler <wohler@newt.com>
10485 Released mh-e version 5.0.92.
10487 * mh-utils.el (gnus-cite-face-list)
10488 (mh-gnus-article-highlight-citation): Don't autoload. Revert to
10489 requiring in `mh-gnus-article-highlight-citation' as before. With
10490 the autoloads, if you ran mh-e before gnus, you'd get an undefined
10491 gnus variable when viewing an article in gnus. Go figure.
10493 2001-12-03 Bill Wohler <wohler@newt.com>
10495 Released mh-e version 5.0.91.
10497 * MH-E-NEWS: Removed info about bumping up `max-specpdl-size' now
10498 that workaround has been implemented.
10500 * Makefile (MH-E-OBJ): New variable to hold .elc files.
10501 (all): Just compile.
10502 (clean): New target that blows away MH-E-OBJ.
10503 (dist): Added $(MH-E-OBJ) to tarball.
10505 Attempt to quiet compilation errors to a dull roar.
10507 * mh-e.el: Require easymenu, added autoload of info.
10508 (mh-smail, mh-smail-other-window): Comment says these were needed
10511 * mh-utils.el: Don't require sendmail, but require mh-e.
10512 Moved autoloads to top of file, and autoload gnus-cite and
10515 * mh-pick.el: Require easymenu. Remove cond on
10516 `easy-menu-define'--it exists.
10518 * mh-mime.el: Autoload mailcap.
10520 * mh-comp.el: Require mh-e and easymenu, moved autoloads to top of
10523 * Makefile (EMACS): New constant to hold emacs calling sequence.
10524 (install): Renamed to install-emacs.
10525 (compile): New target to compile all files.
10526 (dist): Make dependent on compile.
10527 (import): Renamed to import-emacs.
10528 (%.elc): New implicit rule to compile elisp files.
10530 * mh-e.el (mh-thread-map): Added "Td" for
10531 mh-delete-subject-thread.
10533 2001-12-03 Peter S Galbraith <psg@debian.org>
10535 * mh-e.el (mh-folder-tool-bar-map): Change tooltip for exec icon.
10537 * mh-e.el (mh-folder-subject-face): Change to IndianRed1.
10538 (mh-folder-followup-face): Change to IndianRed.
10539 (mh-folder-deleted-face): Use sedate face instead of bright one.
10541 2001-12-03 Bill Wohler <wohler@newt.com>
10543 * mh-utils.el (mh-invisible-headers): Increase size of
10544 `max-specpdl-size' locally to work around insufficient default.
10545 (mh-invisible-headers): Added X-Info and X-VSMLoop (NTMail).
10547 2001-12-03 Jeffrey C Honig <jch@honig.net>
10549 * mh-utils.el (mh-find-progs): Searches should not stop if the
10550 strings are not found, there is error detection at the end of the
10551 routine (closes SF #488231).
10553 2001-12-02 Bill Wohler <wohler@newt.com>
10555 * MH-E-NEWS: Added info about bumping up `max-specpdl-size'.
10557 * Makefile (MH-E-IMG): New variable that contains images used by
10558 mh-e. Add these files to release.
10560 * MH-E-NEWS: Second draft of mh-e 6.0 (was 5.1) release notes.
10562 * mh-e.el (mh-folder-updated-hook): Reworded to avoid ambiguity.
10563 Is the hook called when you type `d' or when you type `x'?
10564 (mh-unseen-updated-hook): Reworded to be consistent with
10565 `mh-folder-updated-hook.'
10567 * mh-utils.el (mh-recenter): Accepted Gerd's change which is
10568 evaluated at compile time.
10570 2001-12-02 Bill Wohler <wohler@newt.com>
10572 * mh-e.el Major, major keymap changes. The specific changes are
10573 listed below, but view the sources, or use "C-h m" in MH Folder
10574 mode for the complete list.
10576 Use of sub-keymaps inspired by gnus. The changes tripped me up at
10577 first too, but after about 5 minutes of shock (which is to be
10578 expected, I've been using the old keybindings for 16 years), I
10579 honestly found the new bindings to be nice indeed. It will also
10580 provide flexibility to allow for future functionality. I hate to
10581 do this on the eve of the beta release, but you asked for it! It's
10582 likely I'll have to pull an Eric and back this change out, but if
10583 we can live with pink subjects, this can't be so bad ;-).
10584 Question: will the users revolt? If they do, I suppose we can
10585 release 6.0.1 the next day ;-).
10586 (mh-folder-map, mh-sequence-map, mh-extract-map, mh-digest-map):
10587 New keymaps which start with F, S, X, and D, respectively. The
10588 mhstore commands can go in the mh-extract-map eventually.
10589 (mh-thread-map): Renamed from mh-folder-thread-map.
10591 Keymap changes and rationale. The sub-keymaps allowed some
10592 consistency (e.g., esp. with l(ist) and k(ill).
10594 e Deleted. Already have x. Now used by mh-edit-again.
10595 a Deleted. Already have r. Now used by mh-extract-rej..
10596 j Deleted. Already have g.
10598 M-a -> e Better mnemonic. Matches rmail. Frees movement cmd.
10599 M-e -> a Try `a'gain!
10601 M-f -> Fv Frees movement command
10602 M-f -> Ff Alias (keep?)
10603 M-f -> Fo Alias (keep?)
10604 M-k -> Fk No reason but to keep with folder commands
10605 M-l -> Fl No reason but to keep with folder commands
10606 M-p -> Fp No reason but to keep with folder commands
10607 M-r -> Fr Frees movement command
10608 M-s -> Fs No reason but to keep with folder commands
10609 M-u -> Fu No reason but to keep with folder commands
10611 M-% -> Sd Better mnemonic
10612 M-# -> Sk Better mnemonic
10613 M-q -> Sl Better mnemonic
10614 C-xn -> Sn Frees up standard key binding
10615 % -> Sp Better mnemonic for putting a message in a sequence
10616 ? -> Ss Shows sequences that message is in
10617 C-xw -> Sw Frees up standard key binding
10619 M-n -> Xs Better mnemonic (shar)
10620 M-n -> Xu Better mnemonic (uuencode)
10622 M-SPC -> DSPC Frees mark command
10623 M-\177 -> D\177 No reason but to keep with digest commands
10624 M-b -> Db Frees movement command
10626 2001-12-01 Bill Wohler <wohler@newt.com>
10628 * mh-e.el: Use gnus style of keymaps. Now requires gnus-util.
10629 (mh-folder-thread-map): New map, created by gnus-define-keys.
10630 Reached when typing T in mh-folder-mode-map. Moved threading
10631 functions to this new keymap so we can use dired again.
10632 (mh-folder-mode-map): Defined by gnus-define-keys. Otherwise than
10633 the new threading functions, no changes to the UI were made at
10634 this point--saving that for the next check-in.
10636 * mh-pick.el (mh-pick-mode-map): Use gnus-define-keys. Now
10637 requires gnus-util.
10639 * mh-comp.el (mh-letter-mode-map): Use gnus-define-keys. Now
10640 requires gnus-util.
10642 2001-12-01 Jeffrey C Honig <jch@honig.net>
10644 * mh-e.el: Update the documentation for the regexps used by
10645 `mh-folder-font-lock-keywords' to specify how many parenthesized
10646 expressions they are expected to have and what those expressions
10647 are expected to match.
10649 2001-12-01 Bill Wohler <wohler@newt.com>
10651 * mh-e.el (mh-folder-mode): Removed iteration of key bindings,
10652 \\{mh-folder-mode-map} suffices. Removed variable documentation
10653 also as this is already out of date and a maintenance hassle.
10654 Reference new mh customization group instead.
10656 * mh-comp.el (mh-letter-mode): Ditto. Also added new information
10657 about MIME directives getting processed automatically if inserted
10660 * mh-pick.el (mh-pick-mode): Edited documentation so it reads like
10663 * mh-e.el (mh-compat-quit): Deleted obsolete and unused function.
10664 Comment in this function said that `b' shouldn't be used for
10665 burst-digest, as it is used for `back' in info, less, and rn. But
10666 what does `back' mean in MH Folder? I suppose if you visit a
10667 folder, you would go `back' to the original folder. Hmmm, I guess
10668 we'll leave the `b' binding alone for now.
10670 * mh-utils.el: Moved some of the variable comments to the first
10671 column so they wouldn't wrap in such an ugly fashion.
10672 (mh-showing-mode): Renamed variable and function from mh-showing
10673 to conform with minor mode conventions. Added optional arg to
10674 function so it would behave like a normal minor mode: no or nil
10675 arg toggles mode, 0 arg turns off, non-nil turns on. It also turns
10676 out that desktop-create-buffer would barf when recreating mh-e
10677 buffers because it was calling mh-show with an arg.
10678 (mh-show-mode): Use define-derived-mode to simplify definition a
10680 (mh-set-mode-name): Deprecated by use of define-derived-mode.
10683 * mh-pick.el (mh-pick-mode): Use define-derived-mode to simplify
10684 definition a *lot*.
10686 * mh-e.el (mh-scan-prog): Removed message about "Buffer local" as
10687 this message will appear in a future version of Emacs.
10688 (mh-inc-folder): mh-showing renamed to mh-show-mode and made a
10690 (mh-folder-mode): Use define-derived-mode to simplify definition a
10693 * import-emacs (release): Change `(none)' to `mainline' so import
10694 doesn't choke after running `cvs up -A' on Emacs.
10695 (COPYING): Moved from $EMACS_HOME/etc to $EMACS_HOME.
10696 (cvs update): Whoops! Forgot the second join (-jemacs).
10697 make import works fine again.
10699 2001-11-30 Peter S Galbraith <psg@debian.org>
10701 * mh-e.el (mh-folder-font-lock-keywords): Change order of
10702 font-lock patterns such that subject body text doesn't get date
10705 * mh-e.el (mh-scan-subject-regexp): Bug fix. Remove a dot.
10706 scan.font-lock users have to setq it separately.
10708 2001-11-30 Eric Ding <ericding@alum.mit.edu>
10710 * mh-utils.el (mh-clean-msg-header): Go back to using
10711 mh-delete-line. Using invisible text property is nicer in some
10712 ways, but winds up with somewhat mysterious behavior should user
10713 kill/yank stuff from the header (i.e., text gets yanked invisibly
10714 and won't be seen by user until file is reloaded).
10716 2001-11-29 Bill Wohler <wohler@newt.com>
10718 * mh-e.el (mh-page-msg): Use mh-next-direction to page in the
10721 2001-11-29 Jeffrey C Honig <jch@honig.net>
10723 * mh-e.el (mh-scan-folder): Fix logic to not attempt to go to
10724 the current message if there are no messages in the folder.
10726 2001-11-29 Peter S Galbraith <psg@debian.org>
10728 * mh-e.el (mh-folder-font-lock-subject): New fontifier function
10729 for subject lines in folder-mode.
10730 (mh-scan-followup-regexp): Deleted obsolete regexp. Use
10731 mh-scan-subject-regexp instead.
10732 (mh-folder-font-lock-keywords): Use mh-folder-font-lock-subject
10733 instead of obsolete mh-scan-followup-regexp variable.
10734 (mh-folder-date-face, mh-folder-msg-number-face):
10735 (mh-folder-subject-face, mh-folder-followup-face):
10736 Now defined as proper faces instead of copied from font-lock
10739 * mh-mime.el (mh-media-type-regexp): New variable. Regexp matching
10740 valid media types used in MIME attachment compositions.
10741 (mh-file-mime-type): Use mh-media-type-regexp instead of
10742 hard-wiring its value.
10744 * mh-utils.el (mh-show-unquote-From): New function to unquote
10745 "^>From" in mh-show-mode (not saved to disk).
10746 (mh-show-mode): Call mh-show-unquote-From.
10748 2001-11-29 Eric Ding <ericding@alum.mit.edu>
10750 * mh-utils.el (mh-clean-msg-header): Use mh-make-line-invisible
10751 rather than mh-delete-line.
10752 (mh-make-line-invisible): New function to make line(s) invisible
10753 rather than deleting line(s). Optional argument specifies number
10754 of lines to delete.
10755 (mh-show-msg): screen-height has been deprecated; use no more.
10756 (mh-notate): screen-width has been deprecated; use no more.
10758 2001-11-29 Jeffrey C Honig <jch@honig.net>
10760 * mh-utils.el (mh-find-progs): Change mh-find-progs to rely on
10761 the existence of mhparam. The location of mhparam is used to find
10762 `mh-progs'. It uses the libdir and etcdir to find the
10763 `mh-lib-progs' and `mh-lib' directories. If etcdir doesn't return
10764 anything we assume `mh-lib-progs' is the same as `mh-lib' and that
10765 we are using MH instead of nmh.
10767 2001-11-29 Peter S Galbraith <psg@debian.org>
10769 * mh-e.el (mh-scan.font-lock-regexp): Change docs to reflect that
10770 second paren expression is the user match.
10771 (mh-folder-font-lock-keywords): Change from 1st to 2nd parenthesized
10772 expression to match user name, after Jeffrey's change to the regexps.
10774 2001-11-29 Bill Wohler <Bill.Wohler@openwave.com>
10776 * mh-utils.el (mh-clean-message-header): Default is now t.
10777 (mh-invisible-headers): Padded out to contain all the headers that
10778 the mh-e developers don't like to see (closes SF #415759).
10780 2001-11-28 Bill Wohler <Bill.Wohler@openwave.com>
10782 * mh-comp.el (mh-rejected-letter-start): Added MIME MDN. While
10783 this allows mh-extract-rejected-mail to strip the start of the
10784 MDN, there is still a closing MIME marker at the end. This should
10785 be cleaned up eventually.
10787 2001-11-28 Peter S Galbraith <psg@debian.org>
10789 * mh-e.el (mh-folder-seq-tool-bar-map): New tool-bar used for
10790 folder-mode when narrowed to sequence.
10791 * mh-seq.el (mh-narrow-to-seq): Set tool-bar to
10792 mh-folder-seq-tool-bar-map.
10793 (mh-widen): Set tool-bar to mh-folder-tool-bar-map.
10794 * widen.xpm: New icon used in mh-folder-seq-tool-bar-map.
10796 * mh-mime.el (mh-file-mime-type): Much better check on validity of
10799 * mh-e.el (mh-scan-subject-regexp): New regexp variable for
10800 subject string in folder mode. Used to extract subject sequence,
10801 and will be used for font-lock soon.
10802 * mh-seq.el (mh-subject-thread-to-sequence): More robust code by
10803 using mh-scan-subject-regexp, allows users with non-standard
10804 scan format to use subject sequences.
10806 * mh-comp.el (mh-letter-fill-column): Fill column to use in
10807 mh-letter-mode. (Yes, I'm doing this in spite of what Bill said;
10808 Someone can always undo it later)
10809 (mh-letter-mode): setq fill-column to mh-letter-fill-column.
10811 2001-11-28 Bill Wohler <wohler@newt.com>
10813 * mh-e.el (mh-page-msg): The first time the end of page is hit,
10814 set mh-page-to-next-msg-p to t. The second time the end of page is
10815 hit, go to the next message.
10817 * mh-utils.el (mh-show-msg): Initialize mh-page-to-next-msg-p to
10820 2001-11-27 Bill Wohler <wohler@newt.com>
10822 * mh-mime.el (mh-mime-content-types): Updated list of types to
10823 contain types used by mh-e developers, but not including types not
10825 http://www.isi.edu/in-notes/iana/assignments/media-types/media-types.
10827 2001-11-27 Peter S Galbraith <psg@debian.org>
10829 * mh-seq.el (mh-subject-thread-to-sequence) New function placing
10830 all messages with similar subject line into a sequence named
10832 (mh-narrow-to-subject-thread): New command to narrow to all
10833 messages with similar subject line into a sequence named 'subject.
10834 (mh-toggle-subject-thread): New command to toggle between a new
10835 'subject sequence or the wide view of a folder.
10836 (mh-delete-subject-thread): New command to delete all following
10837 messages with similar subject lines (leaving preceding ones
10839 (mh-next-unseen-subject-thread): New command to create and move to
10840 a new subject thread created from the next unseen message as a
10842 * mh-e.el (mh-folder-message-menu): New menu entries for subject
10844 (mh-folder-mode-map): New keybindings for subject threads.
10845 (mh-lessp): New function to sort messages.
10847 * mh-utils.el (mh-show-font-lock-keywords): and various
10848 faces... scoped within eval-after-load "font-lock" to avoid
10849 requiring font-lock to use its faces.
10850 * mh-e.el (mh-folder-font-lock-keywords): Same.
10852 2001-11-27 Jeffrey C Honig <jch@honig.net>
10854 * mh-mime.el (mh-file-mime-type): Use mh-temp-buffer instead of
10857 * mh-comp.el (mh-insert-x-mailer): Kill mh-temp-buffer after use.
10859 2001-11-26 Eric Ding <ericding@alum.mit.edu>
10861 * mh-utils.el: revert to using external mimedecode to decode
10862 MIME quoted-printable parts
10864 2001-11-26 Jeffrey C Honig <jch@honig.net>
10866 * mh-e.el (mh-process-commands): Added mh-folder-updated-hook.
10867 * mh-e.el (mh-update-unseen): Added mh-unseen-updated-hook.
10869 2001-11-26 Peter S Galbraith <psg@debian.org>
10871 * mh-mime.el (mh-file-mime-type): Make sure output from file
10872 command is known to mailcap file, otherwise prompt the user.
10873 (mh-mime-content-types): Add "image/png" type.
10875 * mh-e.el (mh-folder-font-lock-keywords): Use a bunch of new
10876 mh-folder-*-face faces.
10877 * mh-utils.el (mh-show-font-lock-keywords): Use a bunch of new
10878 mh-show-*-face faces.
10880 * mh-utils.el (mh-letter-header-font-lock): Bug fix. Fix infinite
10881 loop in emacs20 font-locking.
10882 (mh-header-field-font-lock): Preventive fix with similar change.
10884 * mh-comp.el (mh-reply-show-message-p): Typo. diplayed -> displayed.
10887 * mh-e.el (mh-folder-tool-bar-map): Bug fix. I had
10888 mh-repack-folder instead of mh-pack-folder.
10890 2001-11-26 Bill Wohler <wohler@phone.com>
10893 Updated header for consistency and to conform with (elisp)Library
10895 (mh-do-not-confirm): Updated documentation string to reflect
10896 reality (e.g., is no longer used by mh-kill-folder and is used by
10897 more functions than just mh-undo-folder).
10898 (mh-page-msg): Now shows the next undeleted message if looking at the
10899 bottom of the current message.
10900 (mh-process-or-undo-commands): Fixed indentation.
10903 (mh-mhn-compose-insertion, mh-mhn-compose-anon-ftp): If MIME type
10904 cannot be determined with file command, use mailcap-mime-types (if
10905 available) to provide list for completing read.
10907 * MH-E-NEWS: First draft of mh-e 5.1 release notes.
10909 2001-11-26 Eric Ding <ericding@alum.mit.edu>
10911 * mh-utils.el (mh-decode-quoted-printable): Implement
10912 quoted-printable decoding in elisp (starting with code copied
10914 (mh-decode-quoted-printable-region): Move (require 'hexl) outside
10916 (mh-decode-quoted-printable): give user a choice between using
10917 internal code or external program to decode quoted-printable
10918 content. Resurrect code that calls external mimedecode program.
10920 2001-11-25 Peter S Galbraith <psg@debian.org>
10922 * mh-utils.el (mh-highlight-citation-p): New variable to determine
10923 whether to highlight citations in message body with gnus,
10924 font-lock or not at all.
10925 (mh-show-font-lock-keywords): removed citations from keywords.
10926 (mh-show-font-lock-keywords-with-cite): New variable, equivalent
10927 to prior mh-show-font-lock-keywords.
10928 (mh-gnus-article-highlight-citation): hook into gnus for
10929 multi-level citation highlighting.
10930 (mh-show-mode): Use either mh-show-font-lock-keywords or
10931 mh-show-font-lock-keywords-with-cite, depending on value of
10932 mh-highlight-citation-p, and possibly call
10933 mh-gnus-article-highlight-citation.
10934 * mh-comp.el (mh-letter-mode): Same as for mh-show-mode above.
10936 2001-11-25 Jeffrey C Honig <jch@honig.net>
10938 * mh-comp.el (mh-redistribute): Added mh-redist-background
10939 variable to cause mh-redistribute to run the redist command in the
10940 background. This causes the transaction log to be visible, like
10943 2001-11-25 Peter S Galbraith <psg@debian.org>
10945 * mh-e.el (mh-inc-folder): 'inc' finishes by displaying the first
10946 new message if already showing messages.
10948 2001-11-22 Peter S Galbraith <psg@debian.org>
10950 * mh-utils.el (mh-prompt-for-folder): Exit with error if no folder
10951 specified, otherwise mh-refile-msg may try to create a folder with
10952 empty name, and this creates problems; even mh-undo can't handle
10953 it (Closes SF #476824).
10955 * mh-comp.el (mh-letter-tool-bar-map): Info button needed to
10956 require 'info. Also tweaked help texts.
10957 (mh-letter-menu): Use headline capitalization (Closes SF #483203).
10958 * mh-e.el (mh-folder-tool-bar-map): Same as above.
10959 (mh-folder-folder-menu, mh-folder-message-menu):
10960 (mh-folder-sequence-menu): Same as above.
10961 * mh-pick.el (mh-pick-menu): Same as above.
10963 2001-11-21 Peter S Galbraith <psg@debian.org>
10965 * mh-comp.el (mh-reply-show-message-p): The setting of this
10966 variable determines whether the MH show-buffer is displayed with
10967 the current message when using mh-reply without a prefix argument.
10968 Set it to nil if you already include the message automatically in
10969 your draft using "repl: -filter repl.filter" in your ~/.mh_profile
10971 (mh-reply): Don't show message in other window if
10972 mh-reply-show-message-p is nil.
10974 * mh-e.el (mh-folder-tool-bar-map): Add mail_exec.xpm icon for
10975 mh-execute-commands.
10977 * mh-utils.el (mh-show-mouse): New function to click on a message
10978 in folder-mode and show that message.
10979 * mh-e.el (mh-folder-mode-map): Bind mh-show-mouse to mouse-2.
10981 * mh-e.el (mh-page-msg): Show buffer first if not displayed,
10982 instead of simply complaining there's no other window.
10984 * mh-e.el (mh-folder-tool-bar-map): New tool-bar for folder mode!
10985 (mh-folder-mode): Setup tool-bar.
10987 * mh-mime.el (mh-have-file-command): try to non-fatally load
10988 executable.el because emacs20 doesn't autoload it.
10989 * mh-utils.el (load "executable" t t): Idem.
10991 * mh-utils.el (mh-clean-msg-header): Bug fix. locally bind
10992 after-change-functions to nil, working around a strange font-lock
10993 bug in emacs20 when (add-hook 'mh-show-mode-hook 'turn-on-font-lock)
10996 * mh-comp.el (require 'sendmail): Moved from mh-comp.el to
10997 mh-utils.el because it is needed in reading mail too.
10998 (mh-header-field-end, mh-in-header-p): Moved to mh-utils.el
10999 because they are needed by mh-show-mode's font-lock code.
11000 Unfortunately, this splits the field related code into two files.
11001 Perhaps it should all go into mh-utils?
11003 2001-11-20 Eric Ding <ericding@alum.mit.edu>
11005 * mh-utils.el (mh-show-from-face): Fix typo in defface
11007 2001-11-20 Bill Wohler <wohler@newt.com>
11009 * mh-utils.el (mh-mail-header-separator): Set to -------- as
11010 defined by MH (components, and replcomps files). This variable
11011 cannot be a regexp since it is used as an argument to insert and
11012 is passed through regexp-quote before being used. The previous
11013 value broke a lot of code, including mailcrypt.
11015 * mh-comp.el (mh-letter-mode, mh-send-letter): Insert X-Mailer
11016 header field from mh-send-letter.
11017 (mh-edit-again, mh-extract-rejected-mail): Call
11018 mh-insert-header-separator to ensure that there is a separator.
11019 Packages such as mailcrypt depend on it.
11020 (mh-insert-header-separator): New function to insert
11021 mh-mail-header-separator if it doesn't exist.
11023 2001-11-20 Peter S Galbraith <psg@debian.org>
11025 * mh-comp.el (mh-letter-mode): Make font-lock-defaults a local variable
11026 * mh-e.el (mh-folder-mode): Same.
11027 * mh-utils.el (mh-show-mode): Same.
11029 * mh-e.el (mh-scan-msg-num-regexp): Delete variable and replace
11030 with mh-good-msg-regexp.
11032 * mh-utils.el (mh-mail-header-separator): Bug fix. Moved from
11033 mh-comp.el to mh-utils.el (which mh-comp.el loads).
11035 * mh-comp.el (mh-in-header-p): Recycle sendmail.el code (as
11036 suggested by Bill).
11037 * mh-utils.el (mh-letter-header-font-lock): Use mh-in-header-p.
11039 * mh-comp.el (mh-letter-tool-bar-map): tool-bar customize button goes
11040 to customizing mh-compose group.
11042 * mh-utils.el (mh-show-mode): font-lock bug fix. Locally set
11043 font-lock-support-mode to nil.
11044 (mh-letter-header-font-lock, mh-header-field-font-lock): font-lock
11045 bug fix. Don't return match beyond font-lock search limit.
11047 * mh-comp.el (mh-letter-mode): Emacs20 bug fix. tool-bar-mode is
11048 not a bound variable.
11050 2001-11-19 Peter S Galbraith <psg@debian.org>
11052 * mh-comp.el (mh-letter-tool-bar-map): tool-bar help button goes
11053 to 'Draft Editing' info node.
11055 * mh-utils.el (mh-show-from-face, mh-show-to-face): New faces used
11057 (mh-header-to-font-lock, mh-header-cc-font-lock)
11058 (mh-header-field-font-lock): New helper function returning whole
11059 header field arguments to font-lock.
11060 (mh-show-font-lock-keywords): Heavily modified using the above.
11062 * mh-e.el (mh-scan-msg-num-regexp): Regexp matching the message
11063 number in scan lines.
11064 (mh-scan-date-regexp): Regexp matching a valid date in scan lines.
11065 (mh-scan-rcpt-addr-regexp): Regexp specifying the recipient in
11066 scan lines for messages we sent.
11067 (mh-scan-followup-regexp): Regexp matching a followup subject
11068 line, starting with Re:
11069 (mh-scan-body-regexp):
11070 Regexp matching the message body beginning displayed in scan lines.
11071 (mh-scan.font-lock-regexp): Regexp matching output of the
11072 optional scan.font-lock format file.
11073 (mh-folder-font-lock-keywords): New font-lock for folder-mode that
11074 uses the above regexps.
11076 2001-11-19 chad brown <y@mit.edu>
11078 * mh-comp.el (mh-letter-tool-bar-map): made both references to
11079 mh-letter-tool-bar-map conditional on tool-bar-mode, instead of
11082 2001-11-19 Bill Wohler <wohler@newt.com>
11084 * mh-comp.el (mh-position-on-field): Move to the end of the header
11085 if the field is not present. This function was documented to do
11086 this, but wasn't doing so.
11087 (mh-insert-x-mailer): Simplified by using existing
11088 mh-goto-header-field and mh-insert-fields functions. Now that
11089 mh-insert-fields is used to insert X-Mailer header field, no
11090 longer need to include X-Mailer in mh-x-mailer-string.
11092 2001-11-18 Peter S Galbraith <psg@debian.org>
11094 * mh-comp.el (mh-letter-tool-bar-map): New version of
11095 mh-letter-mode tool-bar. Changed order of buttons; made customize
11096 and info buttons specific to mh-e.
11098 * mh-e.el (mh-folder-font-lock-keywords): New font-lock regexp
11099 uses variables mh-deleted-msg-regexp, mh-refiled-msg-regexp and
11100 mh-cur-scan-msg-regexp, so will better adapt to non-default scan
11101 formats. Also, lines marked for refiling are now fontified.
11103 2001-11-18 Bill Wohler <wohler@newt.com>
11105 * mh-utils.el (mh-show-mode): Added local variable
11106 mail-header-separator which is initialized to
11107 mh-mail-header-separator.
11109 * mh-comp.el (mh-mail-header-separator): Updated to include ^$.
11110 Needed when running mh-edit-again, since by then the separator is
11111 gone. Added documentation saying one should use
11112 mail-header-separator and initialize it from
11113 mh-mail-header-separator.
11114 (mh-forward): Initialize mail-header-separator since
11115 mh-letter-mode hasn't kicked in yet (which does initialize
11116 mail-header-separator).
11117 (mh-letter-mode): Initialize mail-header-separator from
11118 mh-mail-header-separator, not hard-coded string.
11120 * mh-comp.el (mh-insert-x-mailer-p): New variable to control
11121 whether X-Mailer string is inserted. Default: t.
11122 (mh-x-mailer-string): New variable that caches actual X-Mailer
11124 (mh-letter-mode): Call mh-insert-x-mailer if mh-insert-x-mailer-p
11126 (mh-insert-x-mailer): New function that inserts X-Mailer header
11129 2001-11-17 Peter S Galbraith <psg@debian.org>
11131 * mh-utils.el (mh-letter-header-font-lock): New function to return
11132 the entire mail header to font-lock for sedate font-locking.
11133 (mh-show-font-lock-keywords): Modified to fontify whole lines and use
11134 mh-letter-header-font-lock above to fontify whole header.
11136 2001-11-17 Bill Wohler <wohler@newt.com>
11138 * mh-comp.el (mail-header-separator): Added ^ and $ to make more
11140 (mh-forward, mh-letter-mode): Replaced hard-coded string with
11141 mail-header-separator.
11143 2001-11-16 Bill Wohler <wohler@newt.com>
11145 * mh-e.el (mh-e-RCS-id): Renamed to mh-version.
11146 (mh-version): The variable: Set to a number instead of Id since
11147 the Id didn't have the mh-e version number, and both Emacs and
11148 gnus do it this way too.
11149 (mh-version): The function: Fixed for nmh. Now displays mh-e
11150 version correctly. Cleaned up output and display mh-progs, etc.
11151 (Closes SF #405620.)
11153 2001-11-15 Peter S Galbraith <psg@debian.org>
11155 * mh-comp.el (mh-letter-tool-bar-map): New tool-bar support for
11156 mh-letter-mode in emacs21. Uses icons from gnus/message.el.
11157 * mh-comp.el (mh-letter-mode): Add buffer-local binding of
11158 tool-bar-map to mh-letter-tool-bar-map.
11160 2001-11-15 Peter S Galbraith <psg@debian.org>
11162 * mh-mime.el (mh-have-file-command): Add check for existence of
11163 executable-find command, which Jeffrey didn't exist in emacs-20.4.
11164 * mh-utils.el (mh-decode-quoted-printable-have-mimedecode): same
11166 * mh-mime.el (mh-file-mime-type): Bug Fix. Some versions of
11167 'file' output a string like "file: Using regular magic file..."
11168 to stderr, so discard stderr when using call-process with 'file'.
11170 2001-11-14 Peter S Galbraith <psg@debian.org>
11172 * mh-mime.el (mh-have-file-command): Check if 'file' command on
11173 system accepts arguments -i -b before accepting it for our use.
11175 2001-11-14 Peter S Galbraith <psg@debian.org>
11177 * mh-utils.el (mh-find-progs): Use expand-file-name instead of
11178 concatenating together strings into a path.
11180 2001-11-14 Peter S Galbraith <psg@debian.org>
11182 * mh-e.el (mh-folder-sequence-menu): Enable mh-widen in sequence
11183 menu only when mh-narrowed-to-seq is t.
11185 2001-11-14 Peter S Galbraith <psg@debian.org>
11187 * mh-mime.el (mh-have-file-command): Use 'executable-find' instead
11188 of more complicated and error-prone call-process to which command.
11189 * mh-utils.el (mh-decode-quoted-printable-have-mimedecode): Same
11192 2001-11-14 Jeffrey C Honig <jch@honig.net>
11194 * mh-e.el (mh-make-folder-mode-line): Bug fix. Properly deal with
11195 folders that do not have any lines in them. Print "no msgs"
11196 instead of "0 msgs". Do not try to print a range when there are
11198 * mh-e.el (mh-regenerate-headers): Bug fix. Catch and remove the
11199 "scan: band message list" message.
11201 2001-11-13 Jeffrey C Honig <jch@honig.net>
11203 * mh-utils.el (mh-find-progs): Bug fix. Add "mh/etc" to the
11204 subdirectories to search for "components". On BSD/OS, nmh is in
11205 "/usr/contrib/mh/*".
11207 2001-11-13 Peter S Galbraith <psg@debian.org>
11209 * mh-comp.el (mh-letter-mode): Bug fix. Load mh-mime before
11210 setting mh-mhn-compose-insert-p (when looking at a "forw: -mime"
11211 message containing a MIME composition) such that the variable is
11212 properly declared as buffer-local.
11214 2001-11-12 Bill Wohler <wohler@newt.com>
11216 * mh-funcs.el (mh-print-msg): mhl is in the mh-lib-progs
11217 directory, not mh-lib (closes SF #481128).
11219 2001-11-12 Peter S Galbraith <psg@debian.org>
11221 * mh-seq.el (mh-widen): Bug fix (closes SF #481036).
11222 In a sequence with pending deletes and refiles, running mh-widen
11223 would wipe out their notations, even though the sequences are still
11224 defined. Fixed by calling a new function,
11225 mh-notate-deleted-and-refiled. Also changed the coping of
11226 mh-goto-msg-num since it didn't work consistently.
11227 * mh-seq.el (mh-notate-deleted-and-refiled): New functions written
11228 to fix above mh-widen bug. It's a first cut, we may want to clear
11229 all notations first, and notate the current-message sequence and
11230 user sequences. Time will tell.
11232 2001-11-12 Peter S Galbraith <psg@debian.org>
11234 * mh-seq.el (mh-widen): Make it attempt to stay on the same
11235 message number (closes SF bug #480922).
11237 2001-11-11 Bill Wohler <wohler@newt.com>
11239 * import-emacs: New shell script to import Emacs changes to mh-e.
11241 * Makefile (import): New target to import Emacs changes.
11243 2001-11-09 Peter S Galbraith <psg@debian.org>
11245 * mh-mime.el (mh-file-mime-type): Bug fix. Change regexp to
11246 extract mime type from 'file -i' command output.
11248 2001-11-08 Peter S Galbraith <psg@debian.org>
11250 * mh-utils.el (mh-update-sequences-after-mh-show):
11251 New customizable variable telling whether to run
11252 mh-update-sequences in mh-show-mode. Default is t.
11253 * mh-utils.el (mh-show-msg): Run mh-update-sequences when
11254 mh-update-sequences-after-mh-show is set.
11256 2001-11-08 Peter S Galbraith <psg@debian.org>
11258 * mh-utils.el (mh-decode-quoted-printable-have-mimedecode):
11259 New variable telling whether command 'mimedecode' is on system.
11260 (http://www.freesoft.org/CIE/FAQ/mimedeco.c)
11261 * mh-utils.el (mh-decode-quoted-printable):
11262 New customizable variable telling whether to run mimedecode on
11263 MIME message containing quoted-printable parts. mimedecode will
11264 only alter quoted-printable parts, leaving others intact, and the
11265 resulting message is still fully MIME.
11266 * mh-utils.el (mh-decode-quoted-printable): New function to run
11267 mimedecode on the current buffer.
11268 * mh-utils.el (mh-display-msg): Conditionally call
11269 mh-decode-quoted-printable function if mh-decode-quoted-printable
11270 variable is set, to view messages containing quoted-printable
11271 characters into 8-bit.
11273 2001-11-08 Peter S Galbraith <psg@debian.org>
11275 * mh-comp.el (mh-letter-mode): Set mh-mhn-compose-insert-p if
11276 looking at a "forw: -mime" message containing a MIME composition.
11277 * mh-mime.el (mh-file-mime-type): Bug fix. Failed on files like
11278 "~/.mh_profile" because of shell construct. Wrapped filename with
11280 * mh-comp.el (mh-letter-mode-map): C-cC-o keybinding in
11281 mh-letter-mode-map for mh-open-line.
11283 2001-11-07 Peter S Galbraith <psg@debian.org>
11285 * mh-comp.el (mh-open-line): New user function to split open a line
11286 when editing a reply with included text.
11287 * mh-comp.el (mh-current-fill-prefix): New function used by
11288 mh-open-line to get the fill-prefix on the current line.
11289 * mh-comp.el: Add mh-open-line to mh-letter-mode menubar.
11291 2001-11-06 Peter S Galbraith <psg@debian.org>
11293 * mh-seq.el (mh-region-to-sequence): New function, creating a
11294 sequence named 'region containing the message list in the selected
11296 * mh-e.el (mh-delete-msg): Mark messages in region for deletion if
11297 mark is active and in transient-mark-mode.
11298 * mh-e.el (mh-refile-msg): Mark messages in region for refiling if
11299 mark is active and in transient-mark-mode.
11300 * mh-e.el (mh-undo): Undo message marks for refile or deletion if
11301 region if mark is active and in transient-mark-mode.
11303 2001-11-06 Peter S Galbraith <psg@debian.org>
11305 * mh-comp.el (mh-letter-mode): Use sendmail.el's fill-paragraph.
11306 Copy its settings for paragraph-start, paragraph-separate,
11307 fill-paragraph-function, adaptive-fill-regexp and
11308 adaptive-fill-first-line-regexp. This make M-q (fill-paragraph)
11311 2001-11-05 Peter S Galbraith <psg@debian.org>
11313 * mh-funcs.el (mh-kill-folder): Remove mh-do-not-confirm condition
11314 and always prompt the user for such a drastic step. Also change
11315 the prompt a bit to clarify it.
11317 2001-11-04 Peter S Galbraith <psg@debian.org>
11319 * mh-mime.el (mh-mhn-compose-insert-p): New buffer-local variable
11320 to tell when a MIME insertion was done in a letter.
11321 * mh-mime.el (mh-mhn-compose-type): Set mh-mhn-compose-insert-p.
11322 * mh-mime.el (mh-mhn-compose-external-type):
11323 Set mh-mhn-compose-insert-p.
11324 * mh-mime.el (mh-mhn-compose-forw): Set mh-mhn-compose-insert-p.
11325 * mh-mime.el (mh-edit-mhn): Clear mh-mhn-compose-insert-p.
11326 * mh-comp.el (mh-send-letter): Run mh-edit-mhn when
11327 mh-mhn-compose-insert-p is set.
11329 2001-11-03 Peter S Galbraith <psg@debian.org>
11331 * mh-mime.el (mh-have-file-command): new function testing whether
11332 file command is on the system.
11333 * mh-mime.el (mh-file-mime-type): new function returning MIME type
11335 * mh-mime.el (mh-mhn-compose-insertion): Make use of
11336 mh-file-mime-type function instead of prompting.
11338 2001-10-30 Peter S Galbraith <psg@debian.org>
11340 * mh-utils.el (mh-show-use-goto-addr): defcustom this new
11341 variable, determining whether to call goto-addr in mh-show-mode.
11342 * mh-utils.el (mh-show-mode): Call goto-address when
11343 mh-show-use-goto-addr is t.
11345 2001-10-25 Peter S Galbraith <psg@debian.org>
11347 * mh-utils.el (mh-recenter): Clarify docs and change '(t) to
11348 (list 4) to match elisp doc on what C-u prefix argument actually is.
11350 2001-10-23 Peter S Galbraith <psg@debian.org>
11352 * mh-utils.el (mh-summary-height): In my quest to make mh-e more
11353 useful out-of-the-box for new users, set mh-summary-height to a
11354 minimum of 4 and a maximum of 10 depending on frame height. I
11355 typically have 70 lines in my Emacs frame, so having a default of
11356 4 was silly for my case.
11357 * mh-e.el (mh-update-sequences): Check for nil value of
11358 mh-current-folder, which happens if mh-summary-height < 4
11359 although I haven't tracked doen why that happens.
11361 2001-10-22 Peter S Galbraith <psg@debian.org>
11363 * mh-comp.el (mh-insert-fields): Test for nil value when inserting
11366 2001-10-20 Peter S Galbraith <psg@debian.org>
11368 * mh-comp.el (mh-user-agent-compose): Merged-in from XEmacs-21.4 source
11369 * mh-comp.el (mh-letter-mode): Add easy-menu-add statement for XEmacs21
11370 * mh-pick.el (mh-pick-mode): Add easy-menu-add statement for XEmacs21.
11371 * mh-e.el (mh-folder-mode): Add easy-menu-add statements for XEmacs21.
11372 * mh-utils.el: defalias 'screen-height to 'frame-height for XEmacs21.
11374 2001-10-19 Peter S Galbraith <psg@debian.org>
11376 * mh-mime.el (mh-edit-mhn): Use mhbuild in nmh context.
11377 * mh-utils.el (mh-find-progs): The variable mh-nmh-p (t when nmh
11378 is in use rather than MH) was set assuming that the string "nmh"
11379 will be in mh-lib-progs or mh-lib. This failed on Debian systems.
11380 Better to check for the existence of mhbuild in directory mh-progs.
11381 (closes SF bug #441776)
11383 2001-10-18 Peter S Galbraith <psg@debian.org>
11385 * mh-e.el: Add menubar entry from contrib/mh-menubar.el
11386 * mh-comp.el: Add menubar entry from contrib/mh-menubar.el
11387 * mh-pick.el: Add menubar entry from contrib/mh-menubar.el
11389 2001-07-30 Peter S Galbraith <psg@debian.org>
11391 * mh-e.el: Change font-lock patterns for folders.
11392 Fontify scan.font-lock patterns (which will be documented)
11393 and fontify subject lines prefixed with "Re:" differently.
11394 * mh-comp.el (mh-letter-mode): Add font-lock support as in
11397 2001-04-14 chad brown <y@mit.edu>
11399 Rearrange the font-lock keywords a bit.
11401 2001-04-12 chad brown <y@mit.edu>
11403 Preliminary (somewhat boring) font-lock support for mh-e. More
11404 interesting font-lock support probably wants to have better
11405 support for multiple format files
11407 2001-02-24 chad brown <y@mit.edu>
11409 Add default nmh paths to mh-find-prog in mh-utils.el.
11410 change to mh-kill-folder in mh-funcs.el to make it more general.
11412 2001-02-19 Bill Wohler <wohler@newt.com>
11414 * Makefile (EMACS): Renamed to EMACS_HOME. Also, don't define if
11415 EMACS_HOME already exists to give developer a chance to set
11416 environment variable.
11417 (install): $MH-E-SRC is copied to $(EMACS_HOME)/lisp/mail, not
11419 (dist): Leave release in current directory.
11422 Copyright (C) 2003-2014 Free Software Foundation, Inc.
11424 This file is part of GNU Emacs.
11426 GNU Emacs is free software: you can redistribute it and/or modify
11427 it under the terms of the GNU General Public License as published by
11428 the Free Software Foundation, either version 3 of the License, or
11429 (at your option) any later version.
11431 GNU Emacs is distributed in the hope that it will be useful,
11432 but WITHOUT ANY WARRANTY; without even the implied warranty of
11433 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11434 GNU General Public License for more details.
11436 You should have received a copy of the GNU General Public License
11437 along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>.
11439 ;; Local Variables: