Merge from emacs--rel--22
[emacs.git] / lisp / mh-e / ChangeLog.1
blobcc8cdb7964ed6031958b242a538b018d90555391
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/" 
10         prefix.
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>
58         2005-07-04 .
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
129         XEmacs.
130         (EMACS_OPTIONS, XEMACS_OPTIONS): Use double-dash for all long
131         options.
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
142         XEMacs.
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-07-19  Bill Wohler  <wohler@newt.com>
150         * README (INSTALL): Added info for Mac users.
152 2005-07-16  Satyaki Das  <satyaki@theforce.stanford.edu>
154         * mh-comp.el (mh-font-lock-field-data): Fix a bug where the
155         function would return t but match-data was being set to nil
156         (closes SF #1241017).
158 2005-07-12  Jeffrey C Honig  <jch@honig.net>
160         * mh-customize.el (mh-invisible-header-fields-internal) 
161         (mh-invisible-header-fields-internal): Add Received-SPF header and
162         X-Gmail- prefixes seen from Gmail.
164 2005-06-08  Peter S Galbraith  <psg@debian.org>
166         * mh-comp.el (mh-insert-auto-fields): Inset identity regardless of
167         whether one was already set, since if one used a default identity
168         it would never be overridden (closes SF #1204506).
170 2005-06-02  Bill Wohler  <wohler@newt.com>
172         * mh-customize.el (mh-customize): Use customization group mh-e.
174         * mh-init.el (mh-path): Use customization group mh-e. Thanks to
175         Peter Whaite for these patches (closes SF #1213716).
177 2005-06-01  Bill Wohler  <wohler@newt.com>
179         * mh-mime.el (mh-compose-forward): Only use mh-sent-from-msg as a
180         default message if it's a number (as is done elsewhere).
181         Otherwise, an error is thrown if this function is called from a
182         draft created by mh-forward since this variable is a list. Also
183         added a space after the "Messages [%s]:" prompt.
185 2005-05-30  Jeffrey C Honig  <jch@honig.net>
187         * mh-mime.el (mh-compose-forward): Allow insertion of multiple
188         forwarded messages by range (including sequences).  For the sent
189         folder the default message presented is the sent message.  For
190         other folders, the default message is "cur", if it exists.
192 2005-05-28  Bill Wohler  <wohler@newt.com>
194         * mh-e.el (Version, mh-version): Added +cvs to version.
196 2005-05-28  Bill Wohler  <wohler@newt.com>
198          Released MH-E version 7.84.
200          * MH-E-NEWS, README: Updated for release 7.84.
202          * mh-e.el (Version, mh-version): Updated for release 7.84.
204 2005-05-28  Bill Wohler  <wohler@newt.com>
206         * mh-e.el, mh-comp.el: Don't autoload Info-goto-node. It's not
207         used, and if it were, the code should use the info function
208         instead.
210         Use full year in copyright notices (for example, 2005, not 05).
212         * Makefile (mh-loaddefs.el, mh-e-autoloads.el): Added 2005 to
213         copyright notice.
215         * mh-inc.el: Use three ;;; to precede Local Variables to be
216         consistent with other files. Will have to ask Stefan Monnier why
217         he changed it.
219         * README: This version of MH-E to appear in GNU Emacs 22.1, not
220         21.5.
222         * ChangeLog: The * in a ChangeLog entry must only be used before a
223         filename.
225         Fixed compilation warnings in CVS Emacs. This included using
226         "public" functions instead of "private" ones (info instead of
227         Info-goto-node, view-mode-enter instead of view-mode), and
228         removing a customization group that didn't have a parent group. In
229         addition, string-to-int was recently deprecated; use
230         string-to-number instead.
232         * mh-customize.el (Info-goto-node): Deleted autoload.
233         (mh-e): Deleted mh group. Use single mh-e group instead.
234         (mh-tool-bar-folder-help, mh-tool-bar-letter-help): Use info
235         instead of Info-goto-node.
237         * mh-e.el (mh-read-msg-list): string-to-int deprecated; use
238         string-to-number.
240         * mh-funcs.el (mh-list-folders): Use view-mode-enter instead of
241         view-mode.
243         * mh-seq.el (mh-list-sequences): Use view-mode-enter instead of
244         view-mode.
246         * mh-utils.el (mh-get-msg-num): string-to-int deprecated; use
247         string-to-number.
249         Merged in changes from CVS Emacs including:
251         * mh-utils.el (mh-show-mode):
252         * mh-pick.el (mh-pick-mode): Remove spurious run-hooks. Lute
253         Kamstra  <lute@gnu.org> 2005-05-26.
255 2005-05-25  Bill Wohler  <wohler@newt.com>
257         Merged in changes from CVS Emacs including:
259         * mh-customize.el (mh-speedbar-selected-folder-face): Special case
260         high number of colors displays. Dan Nicolaescu <dann@ics.uci.edu>
261         2005-04-08.
263         * mh-e.el, mh-identity.el, mh-mime.el: Replace `legal' with
264         `valid'. Replace `illegal' with `invalid'. Werner Lemberg
265         <wl@gnu.org> 2005-03-25.
267         * mh-inc.el (mh-inc-spool-list): Correctly declare the external
268         var. Stefan <monnier@iro.umontreal.ca> 2004-09-07.
270 2005-05-18  Bill Wohler  <wohler@newt.com>
272         * mh-comp.el (mh-reply): Mention use of mh-repl-group-formfile in
273         docstring.
275 2005-05-05  Bill Wohler  <wohler@newt.com>
277         * mh-e.el (Version, mh-version): Added +cvs to release number.
279 2005-05-05  Bill Wohler  <wohler@newt.com>
281         Released MH-E version 7.83.
283         * MH-E-NEWS, README: Updated for release 7.83.
285         * mh-e.el (Version, mh-version): Updated for release 7.83.
287 2005-05-05  Bill Wohler  <wohler@newt.com>
289         * README: To appear in Emacs 21.5, since 21.4 was released (but
290         without the latest MH-E).
292         * release-utils (usage): Added --variable-changes.
294 2005-05-04  Bill Wohler  <wohler@newt.com>
296         * mh-customize.el (*-face): Made docstrings consistent.
298         * mh-seq.el (mh-pick-args-list): Extracted function for turning
299         string of pick arguments to list. Fixed list so that multi-word
300         arguments were put in a single string (closes SF #1122655).
301         (mh-edit-pick-expr): Use it.
303         * mh-unit.el (mh-unit): Since 21.4 snuck out but didn't contain
304         updated lm-verify, don't run lm-verify on versions before 21.5.
305         (mh-unit-test-pick-args-list): Added.
307         * mh-customize.el (mh-yank-from-start-of-msg): Use headline
308         capitalization. Changed wording of some choices to be more consistent.
309         (mh-invisible-header-fields-internal): Added fields from usa.net.
311 2005-04-24  Satyaki Das  <satyaki@theforce.stanford.edu>
313         * mh-mime.el (mh-mime-security-button-face): New function which
314         determines the face to use to colorize encrypted or signed emails.
315         (mh-insert-mime-security-button): Modified to colorize the button
316         differently based on whether the signature was valid or not,
317         whether the decryption was successful or not, etc.
319         * mh-customize.el (mh-show-pgg-good-face)
320         (mh-show-pgg-unknown-face, mh-show-pgg-bad-face): Faces added to
321         highlight buttons introduced for encrpted or signed MIME parts.
323 2005-03-19  Bill Wohler  <wohler@newt.com>
325         * mh-customize.el (mh-mml-method-default): Sorted alphabetically.
326         (mh-insert-x-mailer-flag, mh-reply-show-message-flag): Moved from
327         mh-letter group to mh-sending-mail group. The writing of the
328         documentation revealed that these options were misplaced.
330 2005-03-17  Bill Wohler  <wohler@newt.com>
332         * mh-customize.el (mh-junk-background): Put in alphabetical order.
333         Synced with manual.
334         (mh-junk-program): Use double-quotes on non-symbols.
336         * mh-pick.el: (mh-search-folder): Synced docstrings with manual.
338         * mh-index.el: (mh-index-search, mh-pick-execute-search)
339         (mh-grep-execute-search, mh-mairix-execute-search)
340         (mh-swish-execute-search, mh-swish++-execute-search)
341         (mh-namazu-execute-search): Synced docstrings with manual. Note
342         that I'm now grabbing the output of an Info buffer which is why
343         the indents on the examples has changed a bit. If we all use that
344         methodology in the future, we shouldn't produce as many gratuitous
345         diffs. I also noticed that `grep' and `search' became links to
346         unrelated things, so let's use double-quotes for quoting
347         non-symbols in the docstrings.
349         * mh-customize.el (mh-index-new-messages-folders)
350         (mh-index-ticked-messages-folders): Synced docstrings with manual.
352 2005-02-16  Satyaki Das  <satyaki@theforce.stanford.edu>
354         * mh-index.el (mh-swish-execute-search): Simplify the indexing
355         recipe for swish. Thanks to Eric Jensen for the suggestion.
357 2005-02-11  Satyaki Das  <satyaki@theforce.stanford.edu>
359         * mh-index.el (mh-swish-execute-search)
360         (mh-swish++-execute-search): Make the indexing recipes better.
361         (mh-swish-next-result): The indexer might find matches in files
362         that aren't messages. Make the function handle that case
363         gracefully.
365 2005-02-07  Bill Wohler  <wohler@newt.com>
367         * mh-customize.el (mh-inc-prog, mh-inc-spool-list): Synced
368         docstrings with manual.
370 2005-02-06  Bill Wohler  <wohler@newt.com>
372         * mh-junk.el (mh-spamassassin-blacklist): Removed trailing
373         whitespace.
375         * mh-e.el (mh-refile-or-write-again): Checkdoc fix.
377         * mh-identity.el (mh-identity-list-set)
378         (mh-identity-field-handler, mh-identity-handler-gpg-identity)
379         (mh-identity-handler-signature)
380         (mh-identity-handler-attribution-verb)
381         (mh-identity-handler-default, mh-identity-handler-top): Docstring
382         editing.
384         * mh-customize.el (mh-identity-list, mh-auto-fields-list)
385         (mh-identity-default, mh-identity-handlers): Synced docstrings
386         with manual.
388 2005-02-03  Bill Wohler  <wohler@newt.com>
390         * mh-xemacs.el (define-behavior 'mh): Moved Ben's code here from
391         mh-e.el and added standard documentation.
393         * mh-e.el: Received patch from Ben Wing <ben@666.com> to add
394         define-behavior on XEmacs.
396 2005-01-28  Jeffrey C Honig  <jch@honig.net>
398         * mh-customize.el (mh-invisible-header-fields-internal): Added
399         X-Evolution header added by Evolution mai client.
401 2005-01-18  Bill Wohler  <wohler@newt.com>
403         * mh-customize.el (mh-invisible-header-fields-internal): Added
404         DomainKey-Signature (http://antispam.yahoo.com/domainkeys/).
405         There's a Comment field that goes with it, but I thought it was
406         too general to add.
408 2005-01-06  Bill Wohler  <wohler@newt.com>
410         * mh-junk.el (mh-spamassassin-blacklist): Fixed typo to fix an
411         error when junking spamassassin mail when mh-junk-background is
412         turned on.
414 2004-12-25  Satyaki Das  <satyaki@theforce.stanford.edu>
416         * mh-utils.el (mh-show-unquote-From): Make the buffer writable
417         before trying to change it (closes SF #1089870).
419         * mh-comp.el (mh-complete-word): Fix a typo in a variable
420         name (closes SF #1089870)
422 2004-11-28  Jeffrey C Honig  <jch@honig.net>
424         * mh-comp.el (mh-complete-word): Kill the *Completions* buffer in
425         any cases where we belive we are done with it.  Not perfect, but
426         better than just leaving it around.
428 2004-11-08  Satyaki Das  <satyaki@theforce.stanford.edu>
430         * mh-acros.el (mh-funcall-if-exists): In XEmacs, presence of a
431         function at compile time doesn't guarantee it's existence at run
432         time. So make the macro handle that situation better.
434 2004-11-05  Satyaki Das  <satyaki@theforce.stanford.edu>
436         * mh-acros.el (advice): Load advice, since it isn't loaded in
437         XEmacs causing compilation problems.
439 2004-10-24  Satyaki Das  <satyaki@theforce.stanford.edu>
441         * mh-index.el (mh-mairix-execute-search)
442         (mh-mairix-regexp-builder): Update the interface to mairix so that
443         it will work with versions of mairix 0.12 and later.
445         * mh-funcs.el (mh-rmf-daemon): Avoid using
446         beginning-of-buffer since it clobbers the mark and it was pointed
447         out on the Emacs developers list to be the wrong thing to do.
449         * mh-e.el (mh-inc-folder): Only remove the window on the show
450         buffer. This means if the user has BBDB enabled then the window
451         displaying BBDB information isn't clobbered.
452         (mh-refile-or-write-again): Don't use the function
453         interactive-p. There was a long thread on the Emacs developers
454         list where it was pointed out that it is incorrect to use this
455         function most of the time.
457         * mh-comp.el (autoload): Don't set auto-mode-alist. This could
458         screw things up for users that don't use MH-E (closes SF #1032353).
460 2004-10-13  Satyaki Das  <satyaki@theforce.stanford.edu>
462         * mh-e.el (mh-refile-or-write-again): Generalize the function to
463         work on a range of messages (closes SF #1046330).
465 2004-09-02  Satyaki Das  <satyaki@theforce.stanford.edu>
467         * mh-e.el (mh-process-commands): The concurrent execution of mark
468         and refile can cause problems since both the commands change the
469         current folder. This change avoids that by getting rid of the
470         concurrency. Another change covers the corner case where we refile
471         messages to a previously empty folder. Before the modification
472         sequences weren't preserved even if the appropriate flag was
473         set. That is no longer the case.
475 2004-08-26  Satyaki Das  <satyaki@theforce.stanford.edu>
477         * mh-e.el (mh-get-new-mail): Also, update the unseen sequence from
478         disk. Otherwise, the new messages aren't highlighted.
480         * mh-seq.el (mh-thread-inc): Fix a bug which appears when inc is
481         run in a narrowed folder. The user sequence notation was getting
482         lost. The change fixes that.
484         * mh-e.el (mh-get-new-mail): Make inc more efficient by reusing
485         the existing user sequence notation and deleted/refiled notation.
487 2004-08-24  Bill Wohler  <wohler@newt.com>
489         * mh-e.el (Version, mh-version): Added +cvs to release number.
491 2004-08-24  Bill Wohler  <wohler@newt.com>
493         Released MH-E version 7.82.
495         * MH-E-NEWS, README: Updated for release 7.82.
497         * mh-e.el (Version, mh-version): Updated for release 7.82.
499 2004-08-24  Bill Wohler  <wohler@newt.com>
501         * mh-init.el (mh-variant-set): Change MH to mh as that's what is
502         emitted by `mh-variant-mh-info' (closes SF #1014781).
503         (mh-variant-p): Add mu-mh to docstring.
505 2004-08-23  Satyaki Das  <satyaki@theforce.stanford.edu>
507         * mh-acros.el (mh-require-cl): Remove unneeded autoloads.
508         (require): Add an advice to the function so that at compile time
509         the uncompiled file is loaded. This avoids compilation problems
510         when built in the Emacs tree.
512         * mh-mime.el (mh-identity-pgg-default-user-id): Defvar the
513         variable, to avoid compiler warnings.
515         * mh-e.el (mh-seq): Load mh-seq since functions defined there are
516         used here. Without this, the state mh-seq.elc would be loaded.
518         * mh-customize.el (mh-init, mh-identity): Load mh-init and
519         mh-identity at compile time manually, before the corresponding
520         stale elc files get autoloaded.
522 2004-08-21  Bill Wohler  <wohler@newt.com>
524         * mh-e.el (Version, mh-version): Add +cvs to release number.
526 2004-08-21  Bill Wohler  <wohler@newt.com>
528         Released MH-E version 7.81.
530         * MH-E-NEWS, README: Updated for release 7.81.
532         * mh-e.el (Version, mh-version): Updated for release 7.81.
534 2004-08-21  Bill Wohler  <wohler@newt.com>
536         * release-utils (variable_changes): Check for checked-out
537         directory before proceeding.  Remove temporary files.
538         Rename --variable-update flag to --variable-changes.
540 2004-08-16  Mark D. Baushke  <mdb@gnu.org>
542         * mh-mime.el (mh-toggle-mh-decode-mime-flag: New function.
543         * mh-e.el (mh-help-messages): Add [;] help string for it.
544         (mh-folder-mode-map): Add ";" key binding for it.
546 2004-08-15  Satyaki Das  <satyaki@theforce.stanford.edu>
548         * mh-acros.el (mh-defstruct): Distinguishing structures created
549         by mh-defstruct just based on the number of fields is not
550         sufficient, since both the mh-thread-message and
551         mh-thread-container structures have the same length.
553 2004-08-15  Mark D. Baushke  <mdb@gnu.org>
555         * mh-customize.el (mh-identity-handlers): Use ":default" instead of
556         "default" to avoid problems with "Default:" as a user defined field.
557         * mh-identity.el (mh-identity-field-handler): Ditto.
559 2004-08-15  Bill Wohler  <wohler@newt.com>
561         * mh-e.el (Version, mh-version): Added +cvs to release number.
563 2004-08-15  Bill Wohler  <wohler@newt.com>
565         Released MH-E version 7.4.80.
567         * MH-E-NEWS, README: Updated for release 7.4.80.
569         * mh-e.el (Version, mh-version): Updated for release 7.4.80.
571 2004-08-15  Bill Wohler  <wohler@newt.com>
573         * mh-funcs.el, mh-gnus.el, mh-inc.el, mh-init.el, mh-junk.el,
574         mh-pick.el, mh-print.el, mh-xemacs.el: Added 2004 to Copyright.
576         * mh-acros.el, mh-alias.el: Checkdoc fixes.
578 2004-08-12  Satyaki Das  <satyaki@theforce.stanford.edu>
580         * mh-acros.el (cl): Load cl in this file. That is all right, since
581         this file is only used at compile time, and so cl doesn't get
582         loaded at run time. This avoids problems with stale *.elc files
583         present in the Emacs source tree during compilation.
584         (mh-defstruct): Modify it to make it more CL like and in the
585         process simplify it a bit. This makes the argument list of the
586         constructor compatible with the previous version, thereby avoiding
587         a compilation error when an old version of mh-seq.elc is present.
589         * mh-seq.el (mh-thread-id-container, mh-thread-get-message)
590         (mh-thread-get-message-container): Revert back to the CL style
591         of using keyword arguments, since the mh-defstruct now produces
592         code compatible to such usage.
594 2004-08-11  Satyaki Das  <satyaki@theforce.stanford.edu>
596         * mh-acros.el (mh-defstruct, mh-require-cl): Checkdoc fixes.
598         * mh-utils.el (message-tokenize-header, message-fetch-field): Add
599         autoloads.
600         (mh-folder-completing-read): Make the folder completion look
601         better with CVS Emacs.
603         * mh-init.el (mh-variant-set): Remove dead code.
605 2004-08-11  Bill Wohler  <wohler@newt.com>
607         * *.el: Use the following at the top of each file which seems to
608         do a good job of suppressing compilation warnings in 21.3 and CVS
609         Emacs (21.4). This replaces (require 'cl) or (require
610         'utils) (mh-require-cl) calls:
612           (eval-when-compile (require 'mh-acros))
613           (mh-require-cl)
615 2004-08-10  Bill Wohler  <wohler@newt.com>
617         * release-utils (DESCRIPTION): Added one.
618         (FILES, SEE ALSO, VERSION): Deleted empty and incorrect sections.
620         * mh-e.el (mh-colors-available-p): Call x-display-color-cells with
621         mh-funcall-if-exists since it no longer seems to be defined in
622         GNU Emacs 21.4.
624 2004-08-10  Satyaki Das  <satyaki@theforce.stanford.edu>
626         * mh-speed.el (mh-process-kill-without-query, mh-speed-flists):
627         Avoid a compiler warning in versions of Emacs where
628         process-kill-without-query is a deprecated function.
630         * mh-seq.el (mh-thread-message, mh-thread-container): Use
631         mh-defstruct instead of defstruct.
632         (mh-thread-id-container, mh-thread-get-message-container)
633         (mh-thread-get-message): Use the slightly different structure
634         constructor function.
636         * mh-acros.el (mh-defstruct): New macro which is a partial
637         replacement of the defstruct in CL.
638         (no-byte-compile): Don't compile the file since it isn't loaded at
639         run time, so efficiency isn't an issue.
641         * mh-utils.el (mh-buffer-data): Use mh-defstruct instead of
642         defstruct.
644 2004-08-09  Satyaki Das  <satyaki@theforce.stanford.edu>
646         * mh-funcs.el, mh-junk.el, mh-print.el: Use mh-require-cl to avoid
647         compilation warnings in Emacs-21.3.
649         * mh-acros.el (mh-require-cl): Add autoloads of CL functions used.
651 2004-08-09  Bill Wohler  <wohler@newt.com>
653         * mh-customize.el (mh-show-use-xface-flag): Mention that `fetch' and
654         `curl' are supported as well.
656 2004-08-08  Bill Wohler  <wohler@newt.com>
658         * mh-xemacs.el (mh-xemacs-has-toolbar-flag): Checkdoc fixes.
660         * mh-mime.el (mh-display-with-external-viewer): Checkdoc fixes.
662         * mh-identity.el: (mh-identity-attribution-verb-end): Stripped
663         trailing space; checkdoc fixes.
665         * mh-e.el (mh-restore-desktop-buffer): Checkdoc fixes.
667         * mh-customize.el: (mh-inc-spool-list,
668         mh-compose-forward-as-mime-flag, defcustom): Stripped trailing
669         space; checkdoc fixes.
671         * mh-comp.el (mh-reply): Stripped trailing space.
673         * mh-unit.el (mh-unit-files): Added mh-acros.el and mh-gnus.el.
674         (mh-unit): Don't lm-verify pre-21.4. Save buffers before killing
675         since we might have done some editing.
677         * import-emacs: Deleted. Functionality subsumed by release-utils.
679         * release-utils: New script. Performs import-emacs functionality
680         and displays new and deleted options.
682         * Makefile (import-emacs): Call release-utils instead of
683         import-emacs.
685         * mh-funcs.el (mh-undo-folder): Removed deprecated `ignore'
686         argument.
688         * mh-e.el (mh-scan-date-regexp): Deleted as Peter claims it is
689         obsolete.
690         (mh-folder-font-lock-keywords): Removed reference to deleted
691         variable `mh-scan-date-regexp'.
693         * mh-customize.el (mh-auto-fields-prompt-flag): Made reference to
694         `mh-auto-fileds-lists'.
695         (mh-forward-hook): Fixed docstring typo.
697 2004-08-07  Bill Wohler  <wohler@newt.com>
699         * mh-acros.el: New file. Currently holds macros needed by
700         mh-customize.el but is planned to hold all macros to avoid
701         dependency problems when compiling.
703         * mh-utils.el (mh-xemacs-flag): Defined in mh-customize.el now.
704         (mh-require-cl, mh-do-in-gnu-emacs, mh-do-in-xemacs)
705         (mh-funcall-if-exists, mh-make-local-hook, mh-mark-active-p):
706         Moved to new file mh-acros.el.
708         * mh-customize.el: Require mh-acros and cl only when compiling and
709         mh-loaddefs at runtime instead of mh-utils.
710         (mh-xemacs-flag): Define it here instead of mh-utils.el.
712         * Makefile (MH-E-SRC): Added mh-acros.el.
714         * mh-gnus.el (default-enable-multibyte-characters): Don't define
715         any more. It doesn't seem to be needed.
717         * mh-customize.el (mh-junk-background): New variable. If on, spam
718         programs are run in background. Running in foreground can be slow.
719         Defaults to nil to spare machines with little memory.
721         * mh-junk.el (mh-spamassassin-blacklist, mh-bogofilter-blacklist)
722         (mh-bogofilter-whitelist, mh-spamprobe-blacklist)
723         (mh-spamprobe-whitelist): Use new option mh-junk-background.
725 2004-07-25  Satyaki Das  <satyaki@theforce.stanford.edu>
727         * mh-utils.el (mh-folder-completing-read): In recent CVS Emacs,
728         the first letter of the possible choices in the completion buffer
729         is highlighted. The change is needed for this feature to work
730         during folder name completion. This is not entirely sufficient,
731         since the leading "+" in folder names is still mishandled. A patch
732         is required in Emacs itself to address that.
734 2004-07-22  Mark D. Baushke  <mdb@gnu.org>
736         * mh-e.el (recursive-load-depth-limit): Move
737         recursive-load-depth-limit code to ...
738         * mh-utils.el (recursive-load-depth-limit): ... here to avoid
739         problems compiling mh-utils.el and mh-alias.el with gnus-5.10.6
740         under emacs-21.1. Use eval-and-compile instead of eval-when.
742 2004-07-20  Bill Wohler  <wohler@newt.com>
744         * mh-customize.el (mh-invisible-header-fields-internal): Added
745         header fields emitted by T-Mobile picture phones (X-Mms-*, and
746         commented out X-Operator field saying it's like X-Mailer).
748 2004-07-12  Bill Wohler  <wohler@newt.com>
750         * mh-gnus.el: Set local variables indent-tabs-mode and
751         sentence-end-double-space to nil.
753         * mh-customize.el: Checkpoint from option docstring updates and
754         manual synchronization from last summer. For the options listed
755         below, docstring was usually completely rewritten. Use "on"
756         instead of "t" in docstring to match what is seen in customization
757         buffer. Use headline capitalization. Standardize on "Auto-detect"
758         text when option has that capibility.
759         (mh): Since we work on more than one type of Emacs, use Emacs
760         instead of GNU Emacs. Prefer GNU mailutils over GNU Mailutils.
761         (mh-variant): s/Autodetect at startup/Auto-detect/.
762         (mh-alias-insertion-location): s/Sorted
763         alphabetically/Alphabetical/. s/At the top of file/Top/. s/At the
764         bottom of file/Bottom/.
765         (mh-alias-local-users-prefix): s/Use login instead of real
766         name/Use Login/.
767         (mh-identity-list): Sorted values by fields, attribution,
768         signature, GPG key.
769         (mh-auto-fields-list): Missing quote.
770         (mh-compose-insertion): s/Use Gnus/Gnus/. s/Use mhn/mhn/.
771         (mh-compose-space-does-completion-flag): s/SPACE/<SPC>/.
772         (mh-extract-from-attribution-verb): Since we have French, added
773         German too ;-).
774         (mh-letter-complete-function): Mention default in docstring.
775         (mh-invisible-header-fields-internal): Added X-ELNK-Trace from
776         Earthlink.
777         (mh-alias-flash-on-comma, mh-alias-insert-file)
778         (mh-alias-passwd-gecos-comma-separator-flag)
779         (mh-recenter-summary-flag, mh-default-folder-for-message-function)
780         (mh-default-folder-must-exist-flag, mh-index-program)
781         (mh-index-ticked-messages-folders, mh-ins-buf-prefix)
782         (mh-delete-yanked-msg-window-flag, mh-identity-default): See
783         summary above.
785         * mh-init.el (mh-variant-set, mh-sys-path, mh-variant-mu-mh-info):
786         Prefer GNU mailutils over GNU Mailutils MH.
788         * mh-comp.el (sc-cite-original, mh-smail, mh-smail-batch)
789         (mh-edit-again, mh-extract-rejected-mail, mh-forward)
790         (mh-smail-other-window, mh-reply, mh-send, mh-send-other-window):
791         Use `mh-send' instead of \\[mh-send]] since links in the docstring
792         are more useful than a key sequence in these cases. Use "See also"
793         instead of "See also documentation for".
795         Merged in 7.4.4 changes, described below.
797         * mh-e.el (Version, mh-version):  Set to 7.4.4+cvs.
799 2004-07-10  Bill Wohler  <wohler@newt.com>
801         Released MH-E version 7.4.4.
803         * MH-E-NEWS, README: Updated for release 7.4.4.
805         * mh-e.el (Version, mh-version): Updated for release 7.4.4.
807         This patch release contains the following patches:
809         * mh-xemacs.el: New file from concatenation of mh-xemacs-compat.el
810         and mh-xemacs-icons.el which were removed since their names
811         exceeded DOS 8+3 limits.
813         * Makefile:
814         (mh-e-autoloads.el): Add target to make `mh-e-autoloads.el', a
815         file containg usual entry commands into MH-E to be used for users
816         installing MH-E separately from Emacs.
817         (XEMACS_LOADDEFS_FILE): New.  Used to generate mh-loaddefs.el
818         in XEmacs.
819         (XEMACS_LOADDEFS_COOKIE): Ditto.
820         (XEMACS_LOADDEFS_PKG_NAME): Ditto.
821         (XEMACS_OPTIONS): Add '-no-autoloads' to give a cleaner build
822         environment.
823         (MH-E-SRC): Moved mh-xemacs.el to new variable MH-E-XEMACS-SRC.
824         (MH-E-XEMACS-SRC): New variable to hold XEmacs source files.
825         (MH-E-XEMACS-OBJ): New variable to hold XEmacs object files.
826         (clean): Moved XEmacs-specific code to clean-xemacs.
827         (xemacs): Added clean-xemacs prerequisite. Moved down to XEmacs
828         section of file. Add target to build mh-loaddefs.el in XEmacs
829         (loaddefs-xemacs): New rule to build mh-loaddefs.el in XEmacs.
830         (clean-xemacs): New target to remove XEmacs-specific files.
831         (compile-xemacs): New. It allows for the '-no-autoloads' option
832         and byte-compiles all the source files with a single instance of
833         XEmacs.
834         (dist): Added $(MH-E-XEMACS-SRC) to tarball.
835         (AUTO_PRELOADS): Removed, in favour of 'AUTOLOAD_PACKAGE_NAME' and
836         'AUTOLOAD_FILE'.
837         (AUTOLOAD_PACKAGE_NAME): New.
838         (AUTOLOAD_FILE): New.
839         (all): Don't set $EMACS_HOME if building with XEmacs.
840         (xemacs): Use 'compile-xemacs' instead of 'compile'.
841         (auto-autoloads.elc): Use new $AUTOLOAD_* vars and allow for
842         '-no-autoloads'.
843         (custom-load.elc): Allow for '-no-autoloads'.
845         * mh-e.el: Don't require mh-xemacs-compat which no longer exists.
846         The XEmacs stuff gets required by mh-customize.el which is
847         required by mh-utils.el which is required by mh-e.el. This all
848         happens before mh-xemacs-compat was required, so all should be
849         well.
850         (mh-restore-desktop-buffer): Move from desktop.el. Add Parameters.
851         (mh-restore-desktop-buffer): Delete with-no-warnings.
852         (mh-folder-mode): Bind desktop-save-buffer to t.
853         (Courtesy Lars Hansen).
855         * mh-alias.el (mh-assoc-ignore-case): New macro to use
856         assoc-string when available (Emacs 21.4+); assoc-ignore-case
857         otherwise.
858         (mh-alias-reload, mh-alias-expand,
859         mh-alias-minibuffer-confirm-address): Use it.
861         * mh-seq.el: Added mh-autoload to mh-read-seq-default.
863         * mh-utils.el (mh-require-cl): The Emacs coding conventions
864         require that the cl package not be required at runtime. However,
865         the cl package in versions of Emacs prior to 21.4 left cl routines
866         in their macro expansions. Use mh-require-cl to provide the cl
867         routines in the best way possible (closes SF #930012).
868         (require 'mouse): To shush compiler.
870         Use new function mh-require-cl throughout.
872         Add arch taglines (courtesy Miles Bader).
874         * mh-unit.el (mh-unit-files): Replaced mh-xemacs-compat.el and
875         mh-xemacs-icons.el with mh-xemacs.el.
877         * import-emacs: Also grab the ChangeLog.
879         * *.pbm: Regenerated using GIMP to be consistent with other Emacs
880         icons.
881         1. Edit .xpm image in GIMP.
882         2. Image > Mode > Indexed. Check Use Black/White Palette and No
883            Color Dithering.
884         3. File > Save As file.xbm.
885         4. Run xbmtopbm < file.xbm > file.pbm.
886         Thanks to jan.h.d@swipnet.se for the help.
888 2004-07-07  Stephen Gildea
890         * mh-customize.el (mh-invisible-header-fields-internal):
891         Add X-Greylist, X-Source*, and X-WebTV-Signature.
892         Replace specific X-Spam-* headers with general pattern.
894 2004-06-15  Bill Wohler  <wohler@newt.com>
896         * README: Vladimir Ivanovic reports that mh-rmail works with
897         XEmacs 21.5.17, so updated requirements text accordingly (closes
898         SF #644321).
900 2004-05-12  Satyaki Das  <satyaki@theforce.stanford.edu>
902         * mh-utils.el (mh-mail-header-end): Replace call to
903         rfc822-goto-eoh with something that allows From_ lines in the mail
904         header.
906 2004-04-14  Bill Wohler  <wohler@newt.com>
908         * mh-utils.el (mh-show-mouse): s/EVENT/event/. Thanks to John Paul
909         Wallington <jpw@gnu.org> for pointing this out.
911 2004-04-12  Satyaki Das  <satyaki@theforce.stanford.edu>
913         * mh-e.el (mh-folder-size-flist): Add -showzero option so that the
914         parsing code doesn't get confused by the presence of -noshowzero
915         in the user's .mh_profile (closes SF #933954).
917 2004-04-07  Satyaki Das  <satyaki@theforce.stanford.edu>
919         * mh-mime.el (mh-insert-mime-button)
920         (mh-insert-mime-security-button): Add evaporate property to
921         overlays used in MIME part buttons.  This avoids problems with
922         CVS Emacs.
924 2004-03-16  Satyaki Das  <satyaki@theforce.stanford.edu>
926         * mh-e.el (mh-folder-from-address): Go to the end of buffer if the
927         re-search-forward fails (closes SF #917096).
929 2004-02-02  Satyaki Das  <satyaki@theforce.stanford.edu>
931         * mh-customize.el (mh-compose-forward-as-mime-flag): New user
932         customizable variable that controls whether messages are forwarded
933         as MIME attachments (closes SF #827203).
935         * mh-comp.el (mh-forward): Call forw with -mime option only if
936         mh-compose-forward-as-mime-flag is non-nil.
938 2003-12-26  Jeffrey C Honig  <jch@honig.net>
940         * mh-junk.el (mh-junk-blacklist, mh-junk-whitelist)
941         (mh-spamassassin-blacklist, mh-spamassassin-blacklist)
942         (mh-spamassassin-blacklist, mh-spamassassin-whitelist)
943         (mh-spamassassin-whitelist, mh-bogofilter-blacklist)
944         (mh-spamprobe-blacklist): Add progress messages.  Change "Couldn't"
945         to "Unable" in error messages.  Run bogofilter and spamprobe in
946         the foreground to prevent a large number of processes from
947         swamping the system.
949 2003-12-25  Satyaki Das  <satyaki@theforce.stanford.edu>
951         * mh-e.el (mh-prompt-for-refile-folder): Marking the whole folder
952         and then refiling all messages throws an error, since this
953         function expects point to be on a valid scan line. The change
954         relaxes this requirement, thereby avoiding the above problem.
956 2003-12-14  Satyaki Das  <satyaki@theforce.stanford.edu>
958         * mh-comp.el (mh-ascii-buffer-p): New function that checks if a
959         buffer is entirely composed of ASCII.
960         (mh-send-letter): Encode the draft if it contains non-ASCII
961         characters.
963 2003-12-12  Satyaki Das  <satyaki@theforce.stanford.edu>
965         * mh-customize.el (mh-invisible-headers): Keep only unique fields
966         in list of header fields to hide. This avoids problems in XEmacs.
968 2003-12-10  Satyaki Das  <satyaki@theforce.stanford.edu>
970         * mh-seq.el (mh-thread-print-scan-lines): The imenu index was not
971         getting created for threaded index buffers. The change fixes this.
973         * mh-index.el (mh-index-insert-folder-headers): Always create the
974         imenu index.
975         (mh-index-create-imenu-index): Set which-func-mode to t. If
976         which-function-mode is turned on after the folder buffer has been
977         prepared, display of the folder info was being inhibited. The
978         change fixes that.
980 2003-12-09  Satyaki Das  <satyakid@stanford.edu>
982         * mh-comp.el (mh-letter-mode): Setup mh-mail-header-separator
983         based on draft contents.
984         (mh-letter-mode, mh-letter-mail-header-end-marker)
985         (mh-letter-header-end): Remove use of the variable
986         mh-letter-mail-header-end-marker. Instead use
987         mh-mail-header-separator. This avoids problems in font locking
988         draft buffers (closes SF #855479).
990 2003-12-09  Satyaki Das  <satyakid@stanford.edu>
992         * mh-index.el (mh-index-insert-folder-headers): Modified so that
993         imenu--index-alist is updated.
994         (mh-index-create-imenu-index): New function that generates an
995         index usable by imenu. This adds which-func-mode support to index
996         folders (closes SF #855520).
998         * mh-e.el (which-func, which-func-modes): Tell which-func that
999         mh-folder-mode supports it.
1000         (mh-folder-mode): Add support for imenu.
1002 2003-11-22  Peter S Galbraith  <psg@debian.org>
1004         * Makefile: renamed mh-startup.el to mh-e-autoloads.el
1006         * README: renamed mh-startup.el to mh-e-autoloads.el
1008         * .cvsignore: Added mh-e-autoloads.el
1010 2003-11-18  Bill Wohler  <wohler@newt.com>
1012         Released MH-E version 7.4.3.
1014         * MH-E-NEWS, README: Updated for release 7.4.3.
1016         * mh-e.el (Version, mh-version): Updated for release 7.4.3.
1018         This patch release contains the following two patches:
1020         * mh-identity.el (mh-identity-make-menu): Removed condition on
1021         mh-auto-fields-list. Use it to enable or disable menu item
1022         instead.
1024         * mh-customize.el (mh-identity-list): Removed defvar and moved
1025         defcustom before mh-auto-fields-list so that defvar wouldn't
1026         clobber user's customization settings.
1028 2003-11-17  Jeffrey C Honig  <jch@honig.net>
1030         * mh-print.el (mh-print-msg): Do not print a message on deprecated
1031         usage, the bindings have been removed.
1033         * mh-e.el (mh-folder-mode-map): Remove "l" binding for
1034         mh-print-msg.
1036         * mh-utils.el (mh-show-mode-map): Remove "l" binding for
1037         mh-print-msg.
1039 2003-11-16  Satyaki Das  <satyakid@stanford.edu>
1041         * mh-comp.el (mh-beginning-of-word): Use the function
1042         mh-mail-abbrev-make-syntax-table instead of the function
1043         mail-abbrev-make-syntax-table.
1045         * mh-gnus.el (mh-mail-abbrev-make-syntax-table): Add a wrapper
1046         function that calls mail-abbrev-make-syntax-table if available.
1047         This is needed so that MH-E built with CVS Emacs will work with
1048         released versions of Emacs21 and vice versa.
1050 2003-11-14  Peter S Galbraith  <psg@debian.org>
1052         * mh-customize.el (mh-invisible-header-fields-internal): Add
1053         "X-NAI-Spam-" and "X-Spam-Report:".
1055 2003-11-14  Mark D. Baushke  <mdb@gnu.org>
1057         * mh-customize.el (mh-invisible-header-fields-internal):
1058         Add X-AntiAbuse and X-MailScanner.
1059         (Patch from Stephen Gildea.)
1061 2003-11-13  Peter S Galbraith  <psg@debian.org>
1063         * mh-identity.el (mh-identity-handler-attribution-verb): New
1064         function. A new Identity handler for the attribution verb (e.g.
1065         "wrote:") to allow for different identities to use different
1066         languages.
1067         (mh-identity-insert-attribution-verb): New function. Insert the
1068         attribution verb, placing special markers so it can be deleted and
1069         replaced later.
1070         (mh-identity-attribution-verb-start): New variable. Holds the
1071         marker for the start of the attribution verb.
1072         (mh-identity-attribution-verb-end): New variable. Holds the
1073         marker for the end of the attribution verb.
1075         * mh-customize.el (mh-identity-handlers): Add new
1076         ":attribution-verb" tag for the attribution-verb handler.
1077         (mh-identity-list): Idem.
1079         * mh-comp.el (mh-yank-cur-msg): Insert attribution verb using
1080         mh-identity-insert-attribution-verb.
1081         (mh-extract-from-attribution): Extract only the name from the From
1082         line, without appending `mh-extract-from-attribution-verb' since
1083         markers need to be inserted around that now.
1085 2003-11-12  Bill Wohler  <wohler@newt.com>
1087         * mh-e.el (mh-rmail, mh-nmail): Well, actually, we run in both GNU
1088         Emacs and XEmacs, so removed the "GNU" in the docstrings unless
1089         one is strictly talking about GNU Emacs.
1091         * mh-comp.el (mh-smail, mh-smail-batch, mh-smail-other-window):
1092         Ditto.
1094 2003-11-11  Bill Wohler  <wohler@newt.com>
1096         * mh-customize.el (mh-customize): Minor docstring change.
1097         (mh, mh-e): The short description for MH-E is: The GNU Emacs
1098         Interface to the MH Mail System. Therefore, updated docstrings
1099         accordingly.
1101         * mh-comp.el (mh-smail, mh-smail-batch, mh-smail-other-window):
1102         Ditto.
1104         * mh-e.el (mh-rmail, mh-nmail): Ditto.
1106 2003-11-10  Satyaki Das  <satyakid@stanford.edu>
1108         * mh-mime.el (mh-mml-to-mime): In case errors happen in
1109         mml-to-mime, restore contents of the draft buffer (closes SF
1110         #839303).
1112 2003-11-07  Bill Wohler  <wohler@newt.com>
1114         * mh-customize.el (mh-letter-mode-hook): Moved to mh-sending-mail
1115         group (where it is now documented in the manual).
1116         (mh-pick-mode-hook): Moved to mh-index group (where it is now
1117         documented in the manual).
1119         * mh-loaddefs.el: Deleted per our discussion on mh-e-devel. No
1120         more conflicts! No more check-ins! Anyone pulling CVS MH-E is
1121         expected to compile. This file shall be added to the tarball so
1122         that users of the distribution are not.
1124 2003-11-07  Mark D. Baushke  <mdb@gnu.org>
1126         * mh-loaddefs.el: Regenerated.
1128         * mh-customize.el (mh-forward-hook): Define new hook.
1129         * mh-comp.el (mh-forward): Use it.
1131 2003-11-07  Satyaki Das  <satyakid@stanford.edu>
1133         * mh-loaddefs.el: Regenerated.
1135         * mh-utils.el (mh-show-toggle-mime-buttons)
1136         (mh-show-display-with-external-viewer): New interactive functions
1137         callable from the show buffer.
1138         (mh-show-mime-map): Add bindings for "K t" and "K e".
1139         (mh-show-msg): Propagate change to
1140         mh-display-buttons-for-inline-parts-flag to the show buffer.
1142         * mh-mime.el (mh-display-with-external-viewer): New interactive
1143         function to display MIME parts with external viewer (closes SF
1144         #839318).
1146         * mh-e.el (mh-folder-mode): Make the variable
1147         mh-display-buttons-for-inline-parts-flag buffer-local so that
1148         display of MIME buttons can be toggled.
1149         (mh-toggle-mime-buttons): New interactive function to toggle
1150         display of MIME buttons.
1151         (mh-mime-map): Modified to add bindings for "K t" and "K e".
1153 2003-11-04  Steve Youngs  <sryoungs@bigpond.net.au>
1155         * Makefile (XEMACS_LOADDEFS_FILE): New. Used to generate
1156         mh-loaddefs.el in XEmacs.
1157         (XEMACS_LOADDEFS_COOKIE): Ditto.
1158         (XEMACS_LOADDEFS_PKG_NAME): Ditto.
1159         (xemacs): Add target to build mh-loaddefs.el in XEmacs
1160         (clean-xemacs): Remove `mh-loaddefs.el*'
1161         (loaddefs-xemacs): New rule to build mh-loaddefs.el in XEmacs.
1163 2003-11-02  Peter S Galbraith  <psg@debian.org>
1165         * mh-init.el (mh-variant-set-variant): Reset `mh-x-mailer-string'
1166         when we select an MH variant.
1168 2003-11-02  Jeffrey C Honig  <jch@honig.net>
1170         * mh-loaddefs.el: Regenerated.
1172         * mh-funcs.el (mh-print-msg): Move to mh-print.el.
1174         * mh-e.el (mh-folder-mode-map): Add mh-print-msg ("l") back, it
1175         will print a message that this usage is deprecated.
1177         * mh-print.el (require, mh-ps-print-msg, mh-ps-print-msg-file):
1178         Require mh-funcs for mh-note-printed.  PS print functions were not
1179         setting the printed notation.  Move mh-print-msg here for
1180         consistency.  Print message if mh-print-msg invoked via deprecated
1181         key binding.
1183 2003-11-01  Peter S Galbraith  <psg@debian.org>
1185         * Makefile: Add target to make `mh-startup.el', a file containg
1186         usual entry commands into MH-E to be used for users installing
1187         MH-E separately from Emacs.
1189         * README: Document the above for users.
1191 2003-10-29  Jeffrey C Honig  <jch@honig.net>
1193         * mh-utils.el (mh-show-ps-print-map): Add "?" and "l" to
1194         mh-show-ps-print-map.
1196         * mh-e.el (mh-ps-print-map, mh-help-messages): Add "?" and "l" to
1197         mh-ps-print-map.  Add "l" to help message.
1199 2003-10-27  Bill Wohler  <wohler@newt.com>
1201         * Makefile (MH-E-SRC): Moved mh-xemacs.el to new variable
1202         MH-E-XEMACS-SRC.
1203         (MH-E-XEMACS-SRC): New variable to hold XEmacs source files.
1204         (MH-E-XEMACS-OBJ): New variable to hold XEmacs object files.
1205         (clean): Moved XEmacs-specific code to clean-xemacs.
1206         (xemacs): Added clean-xemacs prerequisite. Moved down to
1207         XEmacs section of file.
1208         (clean-xemacs): New target to remove XEmacs-specific files.
1209         (compile-xemacs): Added $(MH-E-XEMACS-SRC) prerequisite.
1210         (dist): Added $(MH-E-XEMACS-SRC) to tarball.
1212 2003-10-27  Satyaki Das  <satyakid@stanford.edu>
1214         * mh-loaddefs.el: Regenerated.
1216         * mh-index.el (mh-indexer-choices): Remove option for the non-free
1217         glimpse indexer (closes SF #831276).
1218         (mh-glimpse-binary, mh-glimpse-directory)
1219         (mh-glimpse-execute-search, mh-glimpse-next-result): Functions
1220         and variables to implement glimpse support are removed.
1222         * mh-customize.el (mh-index-program): Remove option for glimpse.
1224 2003-10-24  Satyaki Das  <satyakid@stanford.edu>
1226         * mh-customize.el: Remove top-level test for toolbar enabled
1227         XEmacs since it is not needed.
1228         (mh-tool-bar-define): Add test for XEmacs toolbar in the functions
1229         mh-toolbar-init, mh-tool-bar-letter-buttons-set and
1230         mh-tool-bar-folder-buttons-set. This enables proper compilation
1231         irrespective of whether the XEmacs was built with toolbar support
1232         or not.
1234         * mh-comp.el (mh-letter-mode): Remove conditional since it is not
1235         needed.
1237         * mh-e.el (mh-folder-mode): Same as above.
1239         * mh-utils.el (mh-show-mode): Same as above.
1241         * mh-xemacs.el (mh-xemacs-icon-map): Remove condition on toolbar
1242         presence since we want the build to work if XEmacs without
1243         toolbars is used during compilation.
1245 2003-10-23  Bill Wohler  <wohler@newt.com>
1247         * mh-customize.el: The Great Reorganization. Sorted groups
1248         alphabetically. Aligned variables in customization groups with
1249         manual sections. Group docstrings changed to match manual chapter
1250         titles.
1252 2003-10-22  Satyaki Das  <satyakid@stanford.edu>
1254         * mh-speed.el (timer): Avoid compiler warning in XEmacs.
1256 2003-10-22  Steve Youngs  <sryoungs@bigpond.net.au>
1258         * Makefile (XEMACS_OPTIONS): Add '-no-autoloads' to give a cleaner
1259         build environment.
1260         (AUTO_PRELOADS): Removed, in favour of 'AUTOLOAD_PACKAGE_NAME' and
1261         'AUTOLOAD_FILE'.
1262         (AUTOLOAD_PACKAGE_NAME): New.
1263         (AUTOLOAD_FILE): New.
1264         (all): Don't set $EMACS_HOME if building with XEmacs.
1265         (xemacs): Use 'compile-xemacs' instead of 'compile'.
1266         (auto-autoloads.elc): Use new $AUTOLOAD_* vars and allow for
1267         '-no-autoloads'.
1268         (custom-load.elc): Allow for '-no-autoloads'.
1269         (compile-xemacs): New.  It allows for the '-no-autoloads' option
1270         and byte-compiles all the source files with a single instance of
1271         XEmacs.
1273         * mh-e.el (mh-folder-mode): Only load the toolbar in XEmacs if
1274         toolbar support is available.
1276         * mh-comp.el (mh-letter-mode): Only load the toolbar in XEmacs if
1277         toolbar support is available.
1279         * mh-customize.el: Require 'mh-xemacs' at toplevel when
1280         'mh-xemacs-flag' is non-nil.
1281         Wrap all the toolbar code in a test that is true if using
1282         GNU/Emacs or a toolbar-enabled XEmacs.
1284         * mh-print.el (mh-ps-spool-a-msg): Comment out
1285         `clean-message-header-flag' because it isn't used anywhere.
1287         * mh-utils.el (mh-show-mode): Only load the toolbar in XEmacs if
1288         toolbar support is available.
1290         * mh-xemacs.el: Autoload `regexp-opt', `customize-group',
1291         `view-mode', `with-electric-help', `pp', `sort-numeric-fields',
1292         `reverse-region', and `goto-address' at compile time.
1293         (mh-xemacs-has-toolbar-flag): New.  This is non-nil when XEmacs
1294         has toolbar support.
1295         (mh-xemacs-toolbar-*-icon): Use it.
1297 2003-10-21  Mark D. Baushke  <mdb@gnu.org>
1299         * mh-identity.el (mh-identity-field-handler): Fields that begin
1300         with ":" must have an mh-identity-handler defined or the user
1301         gets an error.
1303 2003-10-17  Peter S Galbraith  <psg@debian.org>
1305         * mh-customize.el (mh-identity-list): This change affects users!
1306         The keyword "signature" becomes ":signature".  The recently added
1307         keyword "pgg-default-user-id" becomes ":pgg-default-user-id".
1308         (mh-auto-fields-list): The keyword "Identity" becomes ":identity".
1309         (mh-identity-handlers): Idem for signature and pgg-default-user-id.
1311         * mh-comp.el (mh-insert-auto-fields): Idem for Identity.
1313 2003-10-17  Peter S Galbraith  <psg@debian.org>
1315         * mh-xemacs.el: Add eval-and-compile call to (load "toolbar" t t) to
1316         make sure `toolbar-make-button-list' is defined.  We can't use
1317         require because Emacs doesn't have this library.
1319 2003-10-16  Bill Wohler  <wohler@newt.com>
1321         * mh-customize.el (mh-signature-file-name)
1322         (mh-letter-insert-signature-hook): Merge docstring with manual.
1324         * mh-comp.el (mh-file-is-vcard-p): Checkdoc fix.
1325         (mh-insert-signature): Merge docstring with manual.
1327         * mh-customize.el (mh-junk): Changed manual link in defgroup from
1328         Customizing mh-e to Junk.
1329         (mh-junk-function-alist): Moved SpamAssassin to first in list on
1330         the hunch that it is the most popular and should be chosen if
1331         other anti-spam programs exist.
1332         (mh-junk-mail-folder): Since the variable can accept values other
1333         than folder names, renamed to mh-junk-disposition to more
1334         accurately reflect the content. Merge docstring with manual.
1335         (mh-junk-program): Moved SpamAssassin to the top of the menu for
1336         the same reason presented in mh-junk-function-alist. Also, fixed
1337         case of spam programs to match official usage. Merge docstring
1338         with manual.
1340         * mh-junk.el (mh-junk-blacklist):
1341         s/mh-junk-mail-folder/mh-junk-disposition/. Merge docstring with
1342         manual.
1343         (mh-junk-whitelist): Merge docstring with manual.
1344         (mh-bogofilter-blacklist): No longer suggest using automatic
1345         classification so use -s instead of -Ns.
1346         (mh-bogofilter-whitelist): No longer suggest using automatic
1347         classification so use -n instead of -Sn.
1348         (mh-spamassassin-blacklist, mh-spamassassin-whitelist): Merge
1349         docstring with manual. Moved spamassassin functions to top of file
1350         so functions appear in same order that they are presented in menu.
1352 2003-10-09  Peter S Galbraith  <psg@debian.org>
1354         * mh-customize.el (mail-citation-hook): Moved from mh-comp.el and
1355         made into a defcustom.
1357 2003-10-09  Satyaki Das  <satyakid@stanford.edu>
1359         * mh-loaddefs.el: Regenerated.
1361         * mh-comp.el (mh-get-header-field): Add autoload cookie.
1363         * mh-utils.el (mh-show-ps-print-toggle-mime)
1364         (mh-show-ps-print-toggle-color, mh-show-ps-print-toggle-faces)
1365         (mh-show-ps-print-msg-file, mh-show-ps-print-msg)
1366         (mh-show-ps-print-msg-show): New interactive functions callable
1367         from the show buffer.
1368         (mh-show-ps-print-map): New key map for printing.
1370         * mh-e.el (mh-folder-mode-map): Remove key binding for
1371         mh-print-msg.
1372         (mh-ps-print-map): Add new key map for printing.
1374         * Makefile (MH-E-SRC): Add mh-print.el.
1376 2003-10-07  Satyaki Das  <satyakid@stanford.edu>
1378         * mh-utils.el (mh-x-image-url-fetch-image): In XEmacs,
1379         make-temp-file is not present. So to avoid security problems, use
1380         a temporary file in the user's home directory. This avoids issues
1381         in creating files in a world-writable directory.
1383         * mh-mime.el (mh-signature-highlight): In Emacs, arrange for the
1384         overlay to be freed when it is no longer needed. Also, implement
1385         signature highlighting in XEmacs.
1387 2003-10-05  Satyaki Das  <satyakid@stanford.edu>
1389         * mh-mime.el (mh-mime-display, mh-mm-inline-message): Respect the
1390         value of `mm-verify-option' and `mm-decrypt-option'.
1391         (mh-mime-display-security): Rearrange code a bit to avoid too many
1392         new lines being inserted when message verification/decryption is
1393         carried out while the message is being read. Also use the
1394         point-m{in|ax}-marker functions to make the function easier to read.
1395         (mh-mime-security-press-button): Extend the function so that the
1396         user can verify/decrypt messages while reading them.
1398         * mh-gnus.el (mm-possibly-verify-or-decrypt): Added to avoid
1399         compiler warning with old Gnus.
1401         * mh-utils.el (mh-x-image-url-sane-p): New function which checks
1402         if the URL in X-Image-URL is something we can handle.
1403         (mh-x-image-url-display): Don't display image if the URL looks
1404         malformed.
1406 2003-10-04  Mark D Baushke  <mdb@gnu.org>
1408         * mh-comp.el (mh-letter-menu): Simplify menu heading.
1410 2003-10-03  Mark D Baushke  <mdb@gnu.org>
1412         * mh-mime.el (mh-mml-query-cryptographic-method): Avoid
1413         revisionist history and still provide a good default.
1415         * mh-comp.el (mh-letter-menu): Remove the Disable Security
1416         parenthetical comment.
1418         * mh-loaddefs.el: Regenerated.
1420         * mh-customize.el (mh-mml-method-default): What method should be
1421         used in secure directives.
1423         * mh-mime.el (mh-secure-message): New function used to generate
1424         the mml security tags.
1425         (mh-mml-unsecure-message): New wrapper function around
1426         mml-unsecure-messages.
1427         (mh-mml-secure-message-sign-pgpmime): Remove function.
1428         (mh-mml-secure-message-encrypt-pgpmime): Ditto.
1429         (mh-mml-cryptographic-method-history): New variable.
1430         (mh-mml-query-cryptographic-method): New function.
1431         (mh-mml-secure-message-encrypt): Ditto.
1432         (mh-mml-secure-message-signencrypt): Ditto.
1433         (mh-mml-secure-message-sign): Ditto.
1435         * mh-comp.el (mh-letter-menu, mh-letter-mode-help-messages,
1436         (mh-letter-mode-map): Update to use new functions.
1438 2003-09-26  Satyaki Das  <satyakid@stanford.edu>
1440         * mh-seq.el (mh-interactive-range): The function has been
1441         extended so that it now takes a default result to return if no
1442         interactive prefix arg is given and no region is active.
1444         * mh-e.el (mh-add-sequence-notation): If transient-mark-mode is
1445         on, then the active region is deactivated based on whether a user
1446         sequence or a internal sequence is being notated. The change
1447         removes this inconsistency.
1448         (mh-catchup, mh-folder-map): A new interactive function to mark
1449         messages as read has been added and bound to "F c" in the folder
1450         mode.
1452         * mh-utils.el (mh-show-catchup, mh-show-folder-map): New
1453         interactive function callable from show mode buffers has been
1454         bound to "F c".
1456 2003-09-24  Bill Wohler  <wohler@newt.com>
1458         * mh-customize.el (mh-clean-message-header-flag)
1459         (mh-invisible-header-fields-default, mh-invisible-header-fields):
1460         Merge docstring with manual.
1462 2003-09-24  Mark D. Baushke  <mdb@gnu.org>
1464         * mh-junk.el (mh-junk-blacklist): Junked messages should be put
1465         into the mh-seen-list to avoid propagating the unseen sequence
1466         into the spam folder.
1468         * mh-loaddefs.el: Regenerated.
1470         * mh-mime.el (mh-mml-secure-message-sign-pgpmime): Add an optional
1471         dontsign argument to remove an existing secure message directive.
1472         Update the docstring -- this fuction does not allow for
1473         encrypt/sign, just sign directives.
1475         * mh-mime.el (mh-mml-secure-message-sign-pgpmime): Use
1476         mml-insert-tag directly to provide a sender if
1477         mh-identity-pgg-default-user-id is set.
1478         (mh-mml-secure-message-encrypt-pgpmime): Use mml-insert-tag
1479         directly to provide a sender if this message is to be both signed
1480         and encrypted and mh-identity-pgg-default-user-id is set.
1482 2003-09-23  Bill Wohler  <wohler@newt.com>
1484         * mh-alias.el (Commentary): Removed as it is now in the manual.
1485         (mh-alias-system-aliases): Moved here from mh-customize.el. By
1486         definition, "system" definitions are not user-visible, and user
1487         filenames are in the the Aliasfile: profile component, so this
1488         variable really shouldn't be a defcustom
1489         (mh-alias-tstamp, mh-alias-filenames, mh-alias-reload)
1490         (mh-alias-add-alias, mh-alias-grab-from-field)
1491         (mh-alias-add-address-under-point, mh-alias-apropos): Merge
1492         docstring with manual.
1493         (mh-alias-reload-maybe): Minor comment update.
1494         (mh-alias-insert-file): Merge docstring with manual. Removed
1495         "[press TAB]" from prompt since users should know about completion
1496         and space can be used as well.
1497         (mh-alias-for-from-p): No longer returns a surprising result (t if
1498         there was **not** an alias for the From field) if the From header
1499         field is missing. This function now returns what you would expect
1500         a function of this name to return. Renamed from
1501         mh-alias-from-has-no-alias-p since negatives in the function name
1502         make logic harder to follow.
1503         (mh-alias-add-alias-to-file): Merge docstring with manual.
1504         Improved verbiage of prompt. Aliases are now inserted "[b]efore"
1505         or "[a]fter" the existing alias instead of "[i]nsert" or
1506         "[a]ppend." Note how the new usage flows better.
1508         * mh-customize.el (mh-alias): Changed manual link in defgroup from
1509         Customizing mh-e to Aliases.
1510         (mh-alias-grab-from-field button): mh-alias-from-has-no-alias-p
1511         renamed to mh-alias-for-from-p and no longer returns surprising
1512         value if there isn't a From field. Therefore, enable button if
1513         there is a From header field and mh-alias-for-from-p returns nil.
1514         (mh-letter-complete-function)
1515         (mh-alias-completion-ignore-case-flag, mh-alias-flash-on-comma)
1516         (mh-alias-insert-file, mh-alias-insertion-location)
1517         (mh-alias-local-users, mh-alias-local-users-prefix)
1518         (mh-alias-passwd-gecos-comma-separator-flag): Merge docstring with
1519         manual.
1520         (mh-alias-system-aliases): Moved to mh-alias.el.
1522         * mh-comp.el (mh-letter-complete-function-alist): Removed comment
1523         about making this customizable since I didn't think it seemed
1524         appropriate in the manual.
1525         (mh-letter-complete): Merge docstring with manual.
1527 2003-09-23  Satyaki Das  <satyakid@stanford.edu>
1529         * mh-speed.el (mh-speed-flists): When exiting emacs, don't ask if
1530         the flists process should be killed.
1532         * mh-e.el (mh-folder-message-menu): Enable undo menu entry only
1533         if something can be undone.
1535         * mh-customize.el (undo): Enable undo button only if something
1536         can be undone.
1538 2003-09-22  Peter S Galbraith  <psg@debian.org>
1540         * mh-customize.el (mh-identity-handlers): New defcustom.  Alist of
1541         Handler functions for mh-identity (downcased) fields.
1542         (mh-identity-list): Add support for pgg-default-user-id.
1544         * mh-identity.el (mh-insert-identity): Modified to use
1545         `mh-identity-handlers', adding hacking flexibility for those who
1546         might need it.
1547         (mh-identity-field-handler): New function. Return the handler for
1548         a FIELD or nil if none set. The field name is downcased.
1549         (mh-identity-handler-gpg-identity): New function; handler for pgg
1550         pgp identities.  It sets a buffer-local value for
1551         `mh-pgg-default-user-id' which must be handled by mh-send-letter.
1552         (mh-identity-pgg-default-user-id): New buffer-local variable to
1553         hold the requested key ID.
1554         (mh-identity-handler-signature): New function; handler t insert
1555         and remove signature files.
1556         (mh-identity-handler-default): New function; the default handler
1557         to insert or remove generic field.
1558         (mh-identity-handler-top): Insert a field at the top of the
1559         header.
1560         (mh-identity-handler-bottom): Insert a field at the bottom of the
1561         header.
1562         (mh-header-field-delete): Make more robust wrt the field having a
1563         trailing colon or not.
1564         (mh-identity-make-menu): Add a "Customize Identities" menu entry.
1566         * mh-loaddefs.el: Regenerated.
1568 2003-09-21  Peter S Galbraith  <psg@debian.org>
1570         * mh-init.el (mh-variant-set): Bug fix for mh-variant long names
1571         with version numbers.
1573         * mh-e.el (mh-scan-format): patch from Sergey Poznyakoff.
1574         GNU mailutils now supports the %(decode) format
1576 2003-09-20  Satyaki Das  <satyakid@stanford.edu>
1578         * mh-gnus.el (mh-mm-text-html-renderer): New function to query
1579         which HTML renderer is being used by Gnus.
1581         * mh-mime.el (mh-signature-highlight): Renderers used to display
1582         HTML parts garble the signature separator in various ways. The
1583         function has been modified to take that into account.
1584         (mh-mime-display-single, mh-mm-display-part): Pass the new
1585         optional argument to `mh-signature-highlight'.
1587 2003-09-19  Mark D. Baushke  <mdb@gnu.org>
1589         * mh-mime.el (mh-have-file-command, mh-file-mime-type): Made an
1590         mh-autoload as they are used in mh-comp.el.
1592         * mh-loaddefs.el: Regenerated.
1594 2003-09-18  Peter S Galbraith  <psg@debian.org>
1596         * mh-comp.el (mh-insert-fields): Make sure field has a colon.
1598 2003-09-18  Satyaki Das  <satyakid@stanford.edu>
1600         * mh-seq.el (mh-toggle-tick): Don't hardcode the name of the tick
1601         sequencence in the function. This would have caused improper
1602         highlighting of the tick sequence if the user had changed its
1603         name.
1605 2003-09-15  Satyaki Das  <satyakid@stanford.edu>
1607         * mh-e.el (mh-folder-message-menu): Fix a little bug which shows
1608         up as a problem during compilation (closes SF #806577).
1610 2003-09-15  Mark D. Baushke  <mdb@gnu.org>
1612         * mh-customize.el (mh-invisible-header-fields-internal): Added
1613         a new field for GNU mailutils per Sergey Poznyakoff.
1615 2003-09-09  Satyaki Das  <satyakid@stanford.edu>
1617         * mh-utils.el (vcard): Unconditionally load vcard.el, if
1618         available, so that vcards are always inlined.
1620 2003-09-09  Peter S Galbraith  <psg@debian.org>
1622         * mh-mime.el (mh-file-mime-type-substitutions): Add entry to
1623         convert text/plain .vcf files to text/x-vcard.
1624         (mh-mime-content-types): Add text/x-vcard.
1626 2003-09-09  Bill Wohler  <wohler@newt.com>
1628         * mh-comp.el (mh-rejected-letter-start): Added strings for qmail
1629         and exim (addresses SF #404965).
1631 2003-09-09  Satyaki Das  <satyakid@stanford.edu>
1633         * mh-gnus.el (mm-inline-text-vcard): Make vcard display work with
1634         Gnus-5.9. The extra file vcard.el is still needed.
1636         * mh-mime.el (mh-signature-highlight): New function that
1637         highlights message signatures.
1638         (mh-mm-display-part, mh-mime-display-single): Highlight signatures
1639         using `mh-signature-highlight' (closes SF #802722). More work is
1640         needed for XEmacs.
1641         (mh-mime-display): Highlight signature in non-MIME email too.
1643         * mh-customize.el (mh-show-signature-face): New face used to
1644         display message signature.
1646 2003-09-08  Peter S Galbraith  <psg@debian.org>
1648         * mh-e.el (mh-version): Do something sensible when
1649         mh-variant-in-use is undefined.
1650         * mh-junk.el (mh-spamassassin-blacklist)
1651         (mh-spamassassin-whitelist): Change options to be compatoble with
1652         old version of spamassassin (V2.20).
1654 2003-09-07  Mark D. Baushke  <mdb@gnu.org>
1656         * mh-mime.el (mh-access-types): Per RFC 2049, the "afs"
1657         access-type for message/external-body has been removed.
1658         Update the comments to reference the current MIME RFCs
1659         2045, 2046 and 2049 rather than the obsolete RFC 1521.
1661 2003-09-05  Peter S Galbraith  <psg@debian.org>
1663         * mh-e.el (mh-version): Bumped version number to 7.4.2+cvs.
1665 2003-09-04  Satyaki Das  <satyakid@stanford.edu>
1667         * mh-utils.el (mh-picon-directory-list, mh-picon-directory): The
1668         mh-picon-directory-list variable supersedes mh-picon-directory.
1669         (mh-picon-existing-directory-list): New variable that contains
1670         the list of picon directories that actually exist.
1671         (mh-picon-set-directory-list): New function to update
1672         mh-picon-existing-directory-list from mh-picon-directory-list.
1673         (mh-picon-get-image): The function has been modified to search a
1674         list of possible picon source directories. The regexp to extract
1675         the username from the email address has been made smarter so that
1676         it can recognize email addresses of the form user+random@foo.net
1677         and extract "user" from there.
1678         (mh-picon-file-contents): The file type recognition code has been
1679         moved from mh-picon-get-image into this function.
1680         (mh-picon-generate-path): The function has been generalized so
1681         that searching multiple paths is now feasible.
1683         * mh-pick.el, mh-e.el: Checkdoc fixes.
1685 2003-09-02  Satyaki Das  <satyakid@stanford.edu>
1687         * mh-identity.el (eval-when): It seems that the mh-comp-loaded
1688         code isn't required any more.
1690 2003-08-30  Satyaki Das  <satyakid@stanford.edu>
1692         * mh-init.el (mh-variant-set): Replace `error' with `message' so
1693         that Emacs CVS will compile without errors if no MH variant is
1694         present.
1696 2003-08-29  Satyaki Das  <satyakid@stanford.edu>
1698         * mh-init.el (mh-variant-set): Add interactive spec to the
1699         function.
1701         * mh-mime.el (mh-mhn-compose-external-type): Optional arguments
1702         are prompted for only if prefix arg is given.
1704 2003-08-29  Mark D. Baushke  <mdb@gnu.org>
1706         * mh-mime.el (mh-mhn-compose-external-type): Modified to be
1707         interactive and prompts for many of the fields. Made an
1708         mh-autoload.
1709         (mh-access-types): New table derived from RFC2017, RFC1521 and
1710         RFC1738, used in a completing-read in
1711         mh-mhn-compose-external-type.
1713         * mh-loaddefs.el: Regenerated.
1715 2003-08-26  Satyaki Das  <satyakid@stanford.edu>
1717         * mh-utils.el (mh-picon-image-types, mh-picon-get-image): Avoid
1718         compiler warnings.
1719         (mh-sub-folders-actual): Parsing of the output from folders has
1720         been modified, so that it also works for MH (closes SF #792300).
1722         * mh-junk.el (mh-spamassassin-whitelist): Avoid calling
1723         ietf-drums-parse-address if it isn't present.
1724         (mh-spamassassin-identify-spammers): Avoid use of puthash so that
1725         Emacs20 doesn't complain.
1727         * mh-e.el (mh-colors-available-p): Wrap call to
1728         display-color-cells in a mh-funcall-if-exists to avoid compiler
1729         warning in Emacs20.
1731 2003-08-25  Satyaki Das  <satyakid@stanford.edu>
1733         * mh-e.el (mh-colors-available-flag, mh-folder-mode): New
1734         variable to track if colors are available and it is set
1735         appropriately in mh-folder-mode.
1736         (mh-colors-available-p, mh-colors-in-use-p): Two functions to
1737         check whether colors are available and if they are actually being
1738         used.
1739         (mh-add-sequence-notation): Just changing a scan line doesn't
1740         make font-lock refontify the line in Emacs20. So explicitly
1741         refontify the scan line in such a situation.
1742         (mh-internal-seq): If colors aren't being used then treat the
1743         tick sequence like a normal user sequence.
1745         * mh-seq.el (mh-put-msg-in-seq): Do font-lock highlighting after
1746         the messages have been added to the sequence.
1747         (mh-toggle-tick): Modified so that highlighting of the ticked
1748         messages will be properly done. If font-lock isn't being used or
1749         if colors aren't supported by the Emacs where MH-E is running,
1750         then the `%' character is used to annotate ticked messages.
1752         * mh-utils.el (mh-picon-image-types): Since Emacs20 doesn't have
1753         image-type-available-p, wrap calls to that function in
1754         ignore-errors.
1755         (mh-add-msgs-to-seq): Do the font-lock highlighting after the
1756         messages have been added.
1758 2003-08-24  Bill Wohler  <wohler@newt.com>
1760         * Makefile (MH-E-SRC): Replaced mh-xemacs-compat.el and
1761         mh-xemacs-icons.el with mh-xemacs.el.
1763         * mh-e.el: Don't require mh-xemacs-compat which no longer exists.
1764         The XEmacs stuff gets required by mh-customize.el which is
1765         required by mh-utils.el which is required by mh-e.el. This all
1766         happens before mh-xemacs-compat was required, so all should be
1767         well.
1769         * mh-unit.el (mh-unit-files): Replaced mh-xemacs-compat.el and
1770         mh-xemacs-icons.el with mh-xemacs.el.
1772         * mh-xemacs.el: New file from concatenation of mh-xemacs-compat.el
1773         and mh-xemacs-icons.el which were removed since their names
1774         exceeded DOS 8+3 limits.
1776         * mh-customize.el (mh-compose-skipped-header-fields): Use
1777         uppercase for field names.
1779 2003-08-21  Bill Wohler  <wohler@newt.com>
1781         * mh-customize.el (mh-sequences): Introduced new customization
1782         group for sequences.
1783         (mh-refile-preserves-sequences-flag, mh-tick-seq)
1784         (mh-update-sequences-after-mh-show-flag): Moved option from
1785         mh-folder to mh-sequences group. Synced docstring with manual.
1786         (mh-index-ticked-messages-folders): Since mh-tick-seq is
1787         customizable, use it instead of tick in the docstring.
1789         * mh-index.el (mh-index-ticked-messages): Since mh-tick-seq is
1790         customizable, use it instead of tick in the docstring.
1792         * mh-seq.el (mh-msg-is-in-seq): Can now specify an alternate
1793         message number with a prefix argument.
1794         (mh-narrow-to-tick): Since mh-tick-seq is customizable, use it
1795         instead of tick in the docstring. Also, use mh-tick-seq instead of
1796         tick in warning message.
1798 2003-08-20  Peter S Galbraith  <psg@debian.org>
1800         * mh-customize.el: setq mh-variant to 'none when byte-compiling,
1801         since we don't care what MH variant (if any) is on the system at
1802         that point.
1804         * mh-init.el (mh-variant-set): Don't probe for MH variant when
1805         mh-variant is set to'none (during byte-compilation).
1807 2003-08-19  Peter S Galbraith  <psg@debian.org>
1809         * mh-pick.el (mh-pick-single-dash): New defconst.  Search
1810         components that are supported by single-dash option in
1811         pick.
1812         (mh-pick-regexp-builder): Use `mh-pick-single-dash' and adapt
1813         patch from Sergey Poznyakoff.
1815         * mh-comp.el (mh-reply): mu-mh supports `repl -group', thanks to
1816         Sergey Poznyakof.
1818         * mh-init.el: checkdoc fixes.
1820 2003-08-19  Bill Wohler  <wohler@newt.com>
1822         * mh-seq.el: (mh-edit-pick-expr): Renamed from mh-read-pick-regexp
1823         since the new name is more indicative of what the function does.
1824         Prompt now says "Pick expression" instead of "Pick regexp".
1825         (mh-narrow-to-subject): Rewrote function to behave like other
1826         similar functions.
1827         (mh-narrow-to-header-field, mh-narrow-to-range)
1828         (mh-narrow-to-tick): s/regexp/pick-expr/.
1829         (mh-widen, mh-narrow-to-from, mh-narrow-to-cc, mh-narrow-to-to):
1830         Synced docstrings with manual
1832 2003-08-19  Bill Wohler  <wohler@newt.com>
1834         Released MH-E version 7.4.2.
1836         * MH-E-NEWS, README: Updated for release 7.4.2.
1838         * mh-e.el (Version, mh-version): Updated for release 7.4.2.
1840         * mh-e.el (mh-folder-size, mh-folder-size-folder)
1841         (mh-folder-size-flist): If flist is not present use folder to find
1842         the number of messages in the folder. Also the .mh_sequences file
1843         is read to find the number of unseen messages (patch from 1.349
1844         and branched for 7.4.2, closes SF #791021).
1846         * mh-utils.el (mh-flists-present-flag, mh-find-progs): Introduce a
1847         new variable to test for the presence of the flists program and
1848         set it in mh-find-progs.
1849         (mh-collect-folder-names): Use folders instead of flists. One
1850         advantage is that folders is available on MH while flists is not.
1851         Another is that if an explicit -sequence argument isn't given and
1852         Unseen-Sequence profile is not present then flists croaks while
1853         folders doesn't.
1854         (mh-collect-folder-names-filter): Don't consider folder names that
1855         start with a `.' character. This is needed since the folders
1856         command doesn't filter them out like flists does.
1857         (patches from 1.307 and 1.309 and branched for 7.4.2, closes SF
1858         #791021).
1860 2003-08-18  Bill Wohler  <wohler@newt.com>
1862         * mh-index.el (mh-index-sequenced-messages)
1863         (mh-index-new-messages, mh-index-ticked-messages): Updated
1864         docstrings from manual (closes SF #718833).
1866         * mh-customize.el (mh-variant): Checkdoc fix.
1867         (mh-index-new-messages-folders): Don't mention defvar in
1868         docstring, use `+inbox' instead.
1869         (mh-index-ticked-messages-folders): Don't mention defvar in
1870         docstring, use `tick' instead.
1872         * mh-comp.el (mh-repl-group-formfile): Checkdoc fix.
1874 2003-08-18  Peter S Galbraith  <psg@debian.org>
1876         * mh-init.el (mh-variant-set, mh-sys-path, mh-variant-info): Add
1877         support for GNU mailutils.
1878         (mh-variant-mu-mh-info): New function to detect mu-mh and return
1879         info about it for `mh-variants'.
1881         * mh-e.el (mh-regenerate-headers): mu-mh has different error
1882         message for a invalid mesage list.
1884 2003-08-18  Peter S Galbraith  <psg@debian.org>
1886         * mh-customize.el (mh-e): New defgroup.  Sort of an alias for the
1887         'mh group that a user might be more likely to find.
1889 2003-08-18  Bill Wohler  <wohler@newt.com>
1891         * mh-comp.el (mh-insert-auto-fields-done-local): Docstring tweak.
1892         (mh-compose-and-send-mail): Do not call mh-insert-auto-fields.
1893         This should be done only once in mh-send-letter.
1895 2003-08-18  Peter S Galbraith  <psg@debian.org>
1897         * mh-comp.el (mh-letter-mode): Call `mh-find-path unconditionally,
1898         like elsewehere in MH-E.
1900         * mh-utils.el (mh-find-path): Run setup code only if
1901         `mh-find-path-run' is nil such that this is only done once.
1902         Also remove the `setq' for `read-mail-command' and `mail-user-agent'.
1904 2003-08-18  Peter S Galbraith  <psg@debian.org>
1906         * mh-e.el: require 'mh-utils first
1908         * mh-customize.el (mh-variant): defcustom moved here.
1910         * mh-init.el (mh-variants): Made an mh-autoload.
1912 2003-08-18  Peter S Galbraith  <psg@debian.org>
1914         * Makefile (MH-E-SRC): Added mh-init.el to MH-E-SRC.
1916         * mh-utils.el (mh-find-progs): Deleted.  Make obsolete by mh-init.el.
1917         (mh-find-path): Call `mh-variants' instead of now obsolete
1918         `mh-find-progs'.
1919         (mh-path-search): Deleted.  Was only used by `mh-find-progs'.
1921         * mh-e.el: require mh-init.el.
1922         (mh-version): Use simpler `mh-variant-in-use'.
1923         (mh-scan-format): Use (mh-variant-p 'nmh) instead of mh-nmh-flag.
1925         * mh-comp.el (mh-insert-x-mailer): Use simpler `mh-variant-in-use'.
1927         * mh-utils.el (mh-progs, mh-lib, mh-lib-progs)
1928         (mh-flists-present-flag): Moved to mh-init.el.
1929         (mh-nmh-flag): Deleted.  Use (mh-variant-p 'nmh) instead.
1931         * mh-comp.el (mh-repl-group-formfile, mh-forward, mh-reply)
1932         (mh-send-letter): Use (mh-variant-p 'nmh) instead of mh-nmh-flag.
1934         * mh-mime.el (mh-edit-mhn, mh-mime-save-parts): Use (mh-variant-p
1935         'nmh) instead of mh-nmh-flag.
1937 2003-08-16  Bill Wohler  <wohler@newt.com>
1939         * mh-customize.el (mh-folder-selection): New group to hold
1940         variables described in Folder Selection section in manual.
1941         (mh-default-folder-list, mh-default-folder-must-exist-flag,
1942         mh-default-folder-prefix): Moved to mh-folder-selection group.
1943         Updated docstrings per manual update.
1944         (mh-default-folder-for-message-function): New defcustom. Was a
1945         defvar in mh-utils.el. Updated docstring per manual update.
1947         * mh-utils.el (mh-default-folder-for-message-function): Moved to
1948         mh-customize.el.
1950         * mh-e.el (mh-folder-from-address, mh-prompt-for-refile-folder):
1951         Updated docstrings per manual update.
1953         * mh-unit.el (mh-unit-files): Added mh-init.el.
1955 2003-08-16  Peter S Galbraith  <psg@debian.org>
1957         * mh-init.el: New file.  Code to initialize the MH-E back-end.
1958         Highlights:
1959         (mh-variant): New defcustom. Users may customize `mh-variant' to
1960         switch between available variants.
1961         (mh-variants): Available MH variants are described in this variable.
1962         (mh-variant-in-use, mh-variant-p): Developers may check which
1963         variant is currently in use with the variable `mh-variant-in-use'
1964         or the function `mh-variant-p'.
1966 2003-08-15  Bill Wohler  <wohler@newt.com>
1968         * mh-customize.el (mh-auto-fields-list): The manual uses Fcc
1969         instead of fcc, so I've changed the user-visible text
1970         accordingly. I've left the const alone for backwards
1971         compatibility.
1973 2003-08-14  Bill Wohler  <wohler@newt.com>
1975         * mh-identity.el (mh-insert-identity): Changed signature deletion
1976         test to test for both markers, rather than testing to see if the
1977         start marker is bound. Since the start marker is defined in this
1978         file, it should always be bound. Suggestion by Satyaki.
1980         * mh-comp.el (mh-send-letter): Go to the top of the draft so that
1981         the user can see which header fields have been inserted. I think
1982         this is more important than leaving point alone or going to the
1983         end to see the signature since Mail-Followup-To or Bcc or cc could
1984         have some deleterious effects.
1986         * mh-customize.el (mh-auto-fields-prompt-flag): New variable.
1987         Non-nil means to prompt before sending if fields inserted.
1989         * mh-comp.el (mh-insert-auto-fields): Now return t if fields
1990         inserted; otherwise nil.
1991         (mh-send-letter): Deleted obsolete documentation about adding
1992         X-Mailer and X-Face. Prompt before sending if auto fields added
1993         and mh-auto-fields-prompt-flag is t.
1995         * mh-customize.el (mh-identity-list): Allow signature to come from
1996         mh-signature-file-name. In this case, the "signature" value is set
1997         to nil. This might not be the best implementation. Suggestions
1998         welcome.
2000         * mh-identity.el (mh-insert-identity): Now that the signature can
2001         be a nil value, moved test higher up in cond so that the test for
2002         a nil value would not be executed first prevening signature
2003         handling. Handle nil signature value by calling
2004         mh-insert-signature with no arguments which means to use
2005         mh-signature-file-name.
2007         * mh-comp.el (mh-insert-signature): Changed text of message if no
2008         signature inserted.
2010         * mh-customize.el (mh-identity-list): Changed "Signature" constant
2011         back to "signature" so it *won't* be backwards-incompatible any
2012         more. I discovered one could use the :tag keyword to get headline
2013         captalization in the menu.
2015         * mh-identity.el (mh-insert-identity): Ditto.
2017         * mh-identity.el (mh-identity-make-menu): Always build menu.
2018         Always create Insert Auto Fields menu item. Just don't enable it
2019         if mh-auto-fields-list is nil. Enable radio buttons always. Make
2020         None a radio button choice with the other identities.
2022         * mh-comp.el (mh-letter-menu): Removed cond on fboundp
2023         'easy-menu-define. We don't do this elsewhere.
2025 2003-08-13  Bill Wohler  <wohler@newt.com>
2027         * mh-identity.el (mh-identity-make-menu, mh-insert-identity): Use
2028         headline capitalization in menu items. Even the internal names are
2029         exposed in the customize interface, so they need to be uppercase
2030         too.
2031         (mh-insert-identity): Rather than goto-char to
2032         mh-identity-signature-start before deleting, simply pass it to
2033         delete-region. When setting markers, use point-min-marker and
2034         point-max-marker instead of moving point. Set marker type of
2035         mh-identity-signature-start to t to fix a bug where changing
2036         identity deleted user's text.
2038         * mh-customize.el (mh-identity-list, mh-auto-fields-list):
2039         Reworked docstring. Use headline capitalization. Commented out
2040         implementation details for later deletion or resurrection upon
2041         popular demand. N.B. If your mh-identity-list contains "signature"
2042         then you will need to either edit your .emacs file manually, or
2043         delete your existing "signature" which will become a regular field
2044         with this change and create a new signature. I figured I could get
2045         away with this since 8.0 is a major release, and coinciding with
2046         the manual update will be a MAJOR release. I apologize profusely
2047         that I didn't catch this before it was released.
2048         (mh-identity-default): Use headline capitalization in example.
2050 2003-08-12  Jeffrey C Honig  <jch@honig.net>
2052         * mh-customize.el (mh-alias-reloaded-hook): Define
2053         `mh-alias-reloaded-hook'.
2055         * mh-alias.el (mh-alias-reload): Run `mh-alias-reloaded-hook'
2056         after reloading the aliases.
2058 2003-08-12  Mark D. Baushke  <mdb@gnu.org>
2060         * mh-comp.el (mh-insert-signature): Use functionp to avoid
2061         the possibility of doing a funcall on a void function.
2063 2003-08-12  Bill Wohler  <wohler@newt.com>
2065         * mh-customize.el (mh-identity): Point group manual link to new
2066         Identities section.
2067         (mh-signature-separator-flag): New variable which can be used to
2068         suppress the output of the signature separator.
2070         * mh-comp.el (mh-insert-signature): Use
2071         mh-signature-separator-flag.
2073         * mh-identity.el (mh-insert-identity): If the identity's signature
2074         file didn't exist, an fboundp error was thrown. This was fixed by
2075         removing signature tests that were redundant and out of date with
2076         the tests in mh-insert-signature. Removed second signature
2077         condition as it is now handled in the first signature condition.
2079 2003-08-12  Peter S Galbraith  <psg@debian.org>
2081         * mh-identity.el (mh-insert-identity): Don't insert new lines on
2082         signatures anymore.
2084         * mh-comp.el (mh-insert-signature): Make sure signature file is
2085         readable before trying to insert it.
2087 2003-08-11  Bill Wohler  <wohler@newt.com>
2089         * mh-comp.el (mh-insert-signature): Unconditionally insert a
2090         newline so that signatures are inserted consistently, and so that
2091         there isn't any text after the cursor so that the user can start
2092         typing his message immediately. Use new variable and function
2093         mh-signature-separator and mh-signature-separator-p.
2095         * mh-customize.el (mh-delete-yanked-msg-window-flag): Checkdoc
2096         fix.
2097         (mh-signature-file-name): Updated docstring now that this variable
2098         can be a function. Added cross-references to
2099         mh-signature-separator, mh-signature-separator-regexp, and
2100         mh-signature-separator-p which might be used in such functions.
2102         * mh-identity.el (mh-insert-identity): Don't include signature if
2103         signature separator already present. Useful when running
2104         mh-edit-again.
2106         * mh-mime.el (mh-inline-vcard-p): Use mh-signature-separator-p.
2108         * mh-utils.el (mh-signature-separator-regexp): New variable
2109         containing "^-- $" which should be used when looking for the
2110         signature separator.
2111         (mh-signature-separator): New variable containing "-- \n" which
2112         should be used when inserting the signature separator.
2113         (mh-signature-separator-p): New function that returns non-nil if
2114         mh-signature-separator-regexp is found in the buffer.
2116 2003-08-09  Satyaki Das  <satyakid@stanford.edu>
2118         * mh-utils.el (mh-x-image-scaling-function): Variable that
2119         contains function used to scale images. Possible choices are
2120         mh-x-image-scale-with-convert and mh-x-image-scale-with-pnm.
2121         (mh-convert-executable): Removed.
2122         (mh-x-image-scale-with-pnm, mh-x-image-scale-with-convert): New
2123         functions that scale images using pnm tools or ImageMagick.
2124         (mh-x-image-scale-and-display, mh-x-image-url-display): Use
2125         mh-x-image-scaling-function instead of mh-convert-executable.
2127 2003-08-08  Peter S Galbraith  <psg@debian.org>
2129         * mh-comp.el (mh-insert-signature): Bug fix.  Handle case of nil
2130         `mh-signature-file-name' and hooks correctly.
2132         * mh-identity.el (mh-insert-identity): Refactor to use
2133         mh-insert-signature
2135         * mh-comp.el (mh-signature-separator-p): Removed.
2137         * mh-comp.el (mh-insert-signature): Merge MIME awareness from
2138         mh-insert-identity into this command. Allow
2139         `mh-signature-file-name' to be a function to call.  See if "-- "
2140         needs to be inserted only after hooks have run.
2142 2003-08-07  Bill Wohler  <wohler@newt.com>
2144         * mh-customize.el (mh-compose-skipped-header-fields): Added
2145         X-Image-URL.
2146         (mh-autoload): Removed cookies. They aren't necessary in
2147         mh-e.el, mh-utils.el, or mh-customize.el.
2149         * mh-e.el (mh-autoload): Removed cookies. They aren't necessary in
2150         mh-e.el, mh-utils.el, or mh-customize.el.
2152         * mh-identity.el (mh-insert-identity): Made regexp for signature
2153         separator more explicit. Hmmm, maybe we should create
2154         mh-signature-separator-regexp...
2156         * mh-index.el (mh-replace-string): Moved to mh-utils.el.
2158         * mh-utils.el (mh-replace-string): Moved here from mh-index.el.
2159         (mh-autoload): Removed cookies. They aren't necessary in mh-e.el,
2160         mh-utils.el, or mh-customize.el.
2162         * mh-comp.el (mh-insert-signature): Added file argument to insert
2163         a file other than mh-signature-file-name. Insert signature
2164         separator, unless file already contains one.
2166 2003-08-06  Satyaki Das  <satyakid@stanford.edu>
2168         * mh-e.el (mh-folder-size, mh-folder-size-folder)
2169         (mh-folder-size-flist): If flist is not present use folder to
2170         find the number of messages in the folder. Also the .mh_sequences
2171         file is read to find the number of unseen messages.
2173         * mh-utils.el (mh-flists-present-flag, mh-find-progs): Introduce
2174         a new variable to test for the presence of the flists program and
2175         set it in mh-find-progs.
2177 2003-08-06  Peter S Galbraith  <psg@debian.org>
2179         * mh-customize.el: Change the order of `mh-identity-list' and
2180         `mh-auto-fields-list' and remove byte-compilation defvar for
2181         `mh-identity-list'.  This fixes a customization bug for
2182         `mh-identity-list', where it wasn't set correctly.
2184         * mh-identity.el (mh-identity-make-menu): mh-auto-fields-list may
2185         not be bound yet when initially loaded.
2187 2003-08-06  Bill Wohler  <wohler@newt.com>
2189         * mh-alias.el (mh-alias-add-address-under-point): Removed trailing
2190         period from messages. The conventions say that errors should not
2191         end with a period and that "Foo...done" messages should not end in
2192         a period, but they aren't explicit about messages in general.
2193         Given what the conventions *do* say, and because most of our
2194         messages don't end with a period, let's just say that messages in
2195         general don't end in a period, just like error messages.
2197         * mh-comp.el (mh-extract-rejected-mail, mh-letter-mode-message):
2198         Ditto.
2200         * mh-e.el (mh-refile-a-msg):  Ditto.
2202         * mh-funcs.el (mh-undo-folder): Ditto.
2204         * mh-mime.el (mh-mime-save-parts): Ditto.
2206         * mh-seq.el (mh-subject-to-sequence-unthreaded)
2207         (mh-narrow-to-subject, mh-delete-subject): Ditto.
2209         * mh-index.el (mh-index-sequenced-messages)
2210         (mh-index-new-messages, mh-index-ticked-messages): Discovered that
2211         in general we should only use question marks in yes-or-no-p or
2212         y-or-n-p prompts, but not in other prompts that use
2213         completing-read and offer defaults. In these cases, use colons
2214         instead (closes SF #730470).
2216         * mh-mime.el (mh-mime-save-parts): Ditto.
2218         * mh-utils.el (mh-prompt-for-folder): Ditto.
2220         * mh-alias.el (mh-alias-apropos): Multiple messages are usually
2221         shown one at a time rather than appended. Send output to
2222         mh-aliases-buffer instead of *Help*.
2223         (mh-alias-local-users): Checkdoc fix.
2225         * mh-funcs.el (mh-undo-folder): Removed commented-out code since
2226         its deadline had expired.
2228         * mh-utils.el (mh-aliases-buffer): New buffer name, used in
2229         mh-aliases.el.
2231 2003-08-06  Satyaki Das  <satyakid@stanford.edu>
2233         * mh-utils.el (mh-x-image-url-cache-canonicalize): Make this
2234         function work for XEmacs too.
2235         (mh-collect-folder-names): Use folders instead of flists. One
2236         advantage is that folders is available on MH while flists is not.
2237         Another is that if an explicit -sequence argument isn't given and
2238         Unseen-Sequence profile is not present then flists croaks while
2239         folders doesn't.
2240         (mh-collect-folder-names-filter): Don't consider folder names that
2241         start with a `.' character. This is needed since the folders
2242         command doesn't filter them out like flists does.
2244         * mh-index.el (mh-replace-string): Add autoload for it.
2246 2003-08-05  Satyaki Das  <satyakid@stanford.edu>
2248         * mh-mime.el (mh-compose-forward, mh-mhn-compose-forw)
2249         (mh-mml-forward-message): The variable mh-sent-from-msg can be a
2250         list. So check that the value is really a number before using it
2251         like one.
2253         * mh-comp.el (mh-insert-letter): Same as above.
2255         * mh-utils.el (mh-picon-get-image): Make the code that finds the
2256         address of the sender more robust.
2257         (mh-face-display-function): Make it work with XEmacs.
2258         (mh-picon-image-types): A new variable that stores what image
2259         types can be used.
2261 2003-08-05  Satyaki Das  <satyakid@stanford.edu>
2263         * mh-customize.el (mh-tool-bar-define): Make the save button such
2264         that is activated only if the buffer needs to saved.
2266         * mh-utils.el (mh-face-display-function, mh-picon-get-image): Some
2267         domains, for instance cs.cmu.edu, don't have xpm files. So we need
2268         to search for all three files. The change does that.
2269         (mh-picon-file-contents): A utility function to return the
2270         contents of a file as a string.
2271         (mh-picon-get-image): Write it as a loop to make it simpler.
2272         (mh-x-image-set-download-state): Make the link simpler.
2274 2003-08-04  Satyaki Das  <satyakid@stanford.edu>
2276         * mh-utils.el (mh-x-image-url-display): Don't bother to try to
2277         download image if we don't have the necessary tools to display
2278         it.
2279         (mh-face-display-function): Add preliminary support for "domain"
2280         picons.
2281         (mh-picon-get-image, mh-picon-generate-path): Functions to find
2282         best match for domain in the From header field.
2284         * mh-e.el (mh-previous-unread-msg): If some of the messages in the
2285         unseen sequence are not present in the folder buffer then calling
2286         this function gets stuck and can't skip over them. The change
2287         fixes this.
2288         (mh-next-unread-msg): Same as above.
2290 2003-08-04  Bill Wohler  <wohler@newt.com>
2292         * mh-utils.el (mh-show-mode): Added cross reference to
2293         mh-folder-mode in docstring (closes SF #728638). Added
2294         \\{mh-show-mode-map} to show keymap.
2296         * mh-e.el (mh-folder-mode): Added information about ranges to
2297         docstring (closes SF #728638).
2299         * mh-speed.el (mh-speed-refresh): New function that calls
2300         mh-speed-flists and mh-invalidate-map.
2301         (mh-folder-speedbar-key-map): Replaced keybindings for
2302         mh-speed-invalidate-map and mh-speed-flists with a single binding
2303         for mh-speed-refresh.
2304         (mh-folder-speedbar-menu-items): Replaced menu items for Run
2305         Flists and Invalidate Cached Folders with the single menu item
2306         Refresh Speedbar in order to simplify the UI.
2308         * mh-customize.el (mh-fetch-x-image-url): Added DOS as another
2309         reason not to set this to t.
2311 2003-08-04  Satyaki Das  <satyakid@stanford.edu>
2313         * mh-e.el (mh-scan-folder): Handle ranges from user input properly.
2315 2003-08-03  Satyaki Das  <satyakid@stanford.edu>
2317         * mh-utils.el (mh-find-msg-get-num): Removed. If threading isn't
2318         present, the messages are sorted by index. So `mh-goto-msg' was
2319         implemented as a binary search and this function was used in that
2320         implementation. So this isn't needed any more.
2321         (mh-msg-search-pat): Removed. Before the advent of message
2322         threading, this function was used to generate a regexp used to
2323         search for a particular message. It isn't used anymore. The
2324         variable `mh-scan-msg-number-regexp' should be updated and used in
2325         `mh-goto-msg' instead of hardcoding the regexp in the code. Then
2326         we might be able to better support other scan line formats in the
2327         future.
2329         * mh-seq.el (mh-map-to-seq-msgs, mh-notate-seq): Removed. These
2330         functions were used to notate user sequences. But calling
2331         `mh-goto-msg' inside of a loop is inefficient. So the sequence
2332         notation code was rewritten thereby making these functions
2333         redundant.
2334         (mh-copy-line-to-point): Removed. This function was used in the
2335         implementation the now removed function `mh-copy-seq-to-point'.
2336         That function was problematic and was replaced by the less general
2337         `mh-copy-seq-to-eob'. This makes `mh-copy-line-to-point'
2338         redundant.
2339         (mh-region-to-msg-list): Removed since this is a special case of
2340         the more general `mh-range-to-msg-list'.
2342         * mh-loaddefs.el: Regenerated.
2344 2003-08-03  Jeffrey C Honig  <jch@honig.net>
2346         * mh-customize.el (mh-invisible-header-fields-default): Added
2347         several new fields to hide.  Sorted the list with sort-lines.
2349 2003-08-03  Peter S Galbraith  <psg@debian.org>
2351         * mh-customize.el (mh-invisible-headers): Variable renamed to
2352         `mh-invisible-header-fields-compiled'.
2353         (mh-invisible-headers): Implement above change.
2355         * mh-utils.el (mh-display-msg): Idem.
2357         * mh-mime.el (mh-mm-inline-message): Idem.
2359         * mh-comp.el (mh-insert-letter): Idem.
2361 2003-08-03  Bill Wohler  <wohler@newt.com>
2363         * mh-speed.el (mh-folder-speedbar-menu-items): Added separator
2364         between standard and MH-E menu items. Use headline capitalization
2365         in menu items.
2367         * mh-utils.el (mh-temp-fetch-buffer): New constant to hold
2368         buffer name for wget output.
2369         (mh-x-image-url-fetch-image): Use mh-temp-fetch-buffer instead
2370         of hard-coded buffer name. Use make-temp-file to avoid race
2371         conditions and subsequent security issues raised in make-temp-name
2372         docstring.
2374 2003-08-03  Satyaki Das  <satyakid@stanford.edu>
2376         * mh-utils.el (mh-wget-executable, mh-wget-choice, mh-wget-option)
2377         (mh-x-image-url-fetch-image): Support the use of `curl' and
2378         `fetch' as alternatives to `wget'.
2379         (mh-wget-choice): Change order of search.
2380         (mh-x-image-url-fetch-image): Rename buffer.
2382 2003-08-03  Satyaki Das  <satyakid@stanford.edu>
2384         * mh-utils.el (mh-x-image-set-download-state)
2385         (mh-x-image-get-download-state): Specially named symbolic links
2386         are used to keep track of whether a X-Image-URL header field needs
2387         to downloaded the next time it is seen. These functions get and
2388         set the symlinks appropriately.
2389         (mh-x-image-url-fetch-image): Simplified since the query has been
2390         moved to `mh-x-image-url-display'. Also if wget isn't present then
2391         try again next time since the user might install wget before
2392         trying once more.
2393         (mh-x-image-scale-and-display): Handle absence of the `convert'
2394         program better. If it isn't present then we will try to display
2395         the image the next time it is encountered. Also use the -geometry
2396         option to convert since the -resize option isn't present in older
2397         versions.
2398         (mh-x-image-url-display): Move all the code that decides whether
2399         an X-Image-URL header field will be fetched in this function. Also
2400         remember the user's decision so that if the image couldn't be
2401         fetched the first time, we will try to fetch it later on without
2402         asking again.
2404 2003-08-02  Peter S Galbraith  <psg@debian.org>
2406         * mh-alias.el (mh-alias-local-users): Exclude all aliases already
2407         in mh-alias-alist from `ali' (closes SF #772595).
2409 2003-08-01  Satyaki Das  <satyakid@stanford.edu>
2411         * mh-utils.el (mh-x-image-display, mh-x-image-url-display): Avoid
2412         a race. The X-Image-URL is displayed asynchronously. Suppose a
2413         message with a image is shown with `mh-show'. If a different
2414         message is displayed before the image can be fetched, then the new
2415         message will have the image displayed. With this change the race
2416         is less likely to happen.
2418 2003-08-01  Peter S Galbraith  <psg@debian.org>
2420         * mh-inc.el (mh-inc-spool-map): Fix what `mh-inc-spool-map-help'
2421         must look like as a fake `mh-help-messages' in order to work
2422         correctly in mh-help.
2424 2003-07-31  Bill Wohler  <wohler@newt.com>
2426         * mh-inc.el (mh-inc-spool-map): Use mh-help instead of
2427         mh-ephem-message in order to display help in its own buffer
2428         instead of minibuffer.
2430         * mh-utils.el (mh-help-buffer): New variable to hold the name of
2431         the MH-E help buffer name.
2433         * mh-funcs.el (mh-help, mh-prefix-help): Use with-electric-help to
2434         display help messages. I observed a friend with a vision
2435         disability and the 5 seconds the help appeared on the screen was
2436         not long enough for him to lock on it. I've therefore changed the
2437         help function to display the help in its own buffer called *MH-E
2438         Help* (closes SF #493740 and SF #656631).
2440         * mh-customize.el (mh-fetch-x-image-url): Changed default from nil
2441         to 'ask. Updated docstring from manual.
2442         (mh-invisible-header-fields-internal): Added X-Image-URL.
2443         (mh-show-use-xface-flag): Updated docstring from manual.
2444         (mh-x-face-file): Ditto.
2446         * mh-mime.el (mh-mhn-compose-external-type): Don't insert the
2447         directory parameter if it's nil. The mhbuild man page indicates
2448         that this parameter is optional, so this should be fine.
2450         * mh-comp.el (mh-letter-mode-map): Added keybindings for
2451         mh-mhn-compose-anon-ftp and
2452         mh-mhn-compose-external-compressed-tar.
2453         (mh-letter-menu): Uncommented menu items for same.
2455 2003-07-30  Satyaki Das  <satyakid@stanford.edu>
2457         * mh-loaddefs.el: Regenerated.
2459         * mh-pick.el (mh-do-pick-search): Removed since the function
2460         `mh-pick-do-search' performs the same action as this function.
2462         * mh-index.el (mh-index-update-unseen): Removed since the
2463         generalized sequence synchronization code that keeps sequences in
2464         index folders in sync with the sequences in the source folders
2465         makes this function redundant.
2467         * mh-e.el (mh-folder-unseen-seq-name, mh-folder-unseen-seq-list):
2468         Removed. These two functions were used in the unseen sequence
2469         highlighting before the sequence highlighting code was
2470         generalized. In any event calls to the function
2471         `mh-folder-unseen-seq-name' can be replaced by the variable
2472         `mh-unseen-seq' and calls to `mh-folder-unseen-seq-list' can be
2473         replaced with (cdr (assoc mh-unseen-seq mh-seq-list)).
2474         (mh-unmark-all-headers): Removed since this function has been
2475         superseded by mh-remove-all-notation.
2476         (mh-map-over-seqs): Removed since we now have the generalized
2477         iteration over message ranges (the `mh-iterate-on-range' macro)
2478         that can be used instead.
2479         (mh-notate-if-in-one-seq): Removed. This function was used for
2480         changing the `%' notation for user sequences. It can't be used for
2481         that purpose any more, since we have a different scheme now.
2483         * mh-unit.el (mh-unit-tests): Removed since it isn't needed any
2484         more.
2485         (mh-unit): Run all function that start with the string
2486         "mh-unit-test-".
2488 2003-07-30  Bill Wohler  <wohler@newt.com>
2490         * mh-customize.el (mh-invisible-header-fields): Checkdoc fix.
2492         * mh-utils.el (mh-x-image-url-cache-canonicalize): Shortened using
2493         example in files.el:make-backup-file-name-1.
2494         (mh-face-display-function): Added X-Image-URL to docstring.
2496         * mh-unit.el (mh-unit-x-image-url-cache-canonicalize): New
2497         function to test mh-x-image-url-cache-canonicalize since it lent
2498         itself well to unit testing. Had to start somewhere!
2499         (mh-unit-equal): New function that throws an error if RESULT
2500         doesn't equal EXPECTED.
2501         (mh-unit): Call mh-unit-x-image-url-cache-canonicalize.
2503 2003-07-29  Satyaki Das  <satyakid@stanford.edu>
2505         * mh-unit.el (mh-unit-update-call-graph): Make the function work
2506         better with dotted lists, that is lists of the form (a b c . d)
2507         where `d' isn't nil. With this we are able to avoid marking some
2508         functions as unused even though they are actually used in alists.
2510 2003-07-28  Peter S Galbraith  <psg@debian.org>
2512         * mh-comp.el (mh-insert-letter):  Remove `mh-visible-headers'
2513         operation.
2515         * mh-mime.el (mh-mm-inline-message): Same.
2517         * mh-utils.el (mh-display-msg): Same.
2518         (mh-clean-msg-header): Make a note of above change.
2520         * mh-customize.el (mh-invisible-header-fields-internal): Renamed
2521         from prior `mh-invisible-header-fields-default'.
2522         (mh-invisible-header-fields-default): Renamed from prior
2523         `mh-invisible-header-fields-default-override'.
2524         (mh-invisible-header-fields): Renamed from prior
2525         `mh-invisible-header-fields-user'.
2526         (mh-visible-headers): Removed!  We use invisible fields only now.
2527         (mh-visible-header-fields): Removed!
2529 2003-07-28  Peter S Galbraith  <psg@debian.org>
2531         * mh-customize.el (mh-invisible-header-fields-default): Added 3
2532         new fields to hide.
2534 2003-07-28  Satyaki Das  <satyakid@stanford.edu>
2536         * mh-utils.el (mh-show): Add an extra argument to the function so
2537         that interactive use will always force redisplay of the message.
2539         * mh-mime.el (mh-mime-display, mh-mm-inline-message): Bind the
2540         variables `mm-verify-option' and `mm-decrypt-option' so that
2541         verification and decryption of mail can happen without any
2542         additional tinkering.
2544 2003-07-25  Peter S Galbraith  <psg@debian.org>
2546         * mh-customize.el (mh-invisible-header-fields-default): New defvar
2547         holding default fields to hide.  This replaces the old
2548         `mh-invisible-header-fields' defcustom.
2549         (mh-invisible-header-fields-user): New defcustom.  Users add
2550         fields to suppress that we didn't include in
2551         `mh-invisible-header-fields-default'.  This could be named simply
2552         `mh-invisible-header-fields' and it wouldn't really break anything
2553         for users who have customized it to a long list now redundant with
2554         `mh-invisible-header-fields-default'.
2555         (mh-invisible-header-fields-default-override): New defcustom.
2556         Users check off the fields they want displyed from what we
2557         included in `mh-invisible-header-fields-default'.
2558         (mh-invisible-headers): Function adapted to new variables.
2560 2003-07-25  Satyaki Das  <satyakid@stanford.edu>
2562         * mh-e.el (mh-inc-folder): If the user is in a different folder
2563         displaying a message and runs mh-inc-folder, then the folder
2564         changes to +inbox but the show window continues to display the
2565         message in the old folder. The change fixes this.
2566         (mh-visit-folder): Make the handling of the show window similar to
2567         that of mh-inc-folder.
2569 2003-07-24  Satyaki Das  <satyakid@stanford.edu>
2571         * mh-e.el (mh-folder-message-menu, mh-folder-folder-menu): Use the
2572         predicate mh-outstanding-commands-p instead of its exapansion.
2573         Also use the same label in both menus.
2574         (mh-outstanding-commands-p): Generalized so that it will work in
2575         mh-show-mode buffers as well.
2577         * mh-customize.el (mh-tool-bar-define): Enable tool-bar button for
2578         mh-execute-commands only if there are pending deletes or refiles.
2580 2003-07-19  Satyaki Das  <satyakid@stanford.edu>
2582         * mh-utils.el (mh-show-msg): If a unseen message is first marked
2583         for deletion/refiling and then displayed, the bold highlighting
2584         does not go away. This change fixes that.
2586         * mh-seq.el (mh-msg-is-in-seq): Fix a bug in the function. If any
2587         message was marked for refiling, then the function would have you
2588         believe that every message in the folder is being refiled.
2590 2003-07-17  Bill Wohler  <wohler@newt.com>
2592         * mh-e.el: Removed email address for Stephen Gildea's in Change
2593         Log at his request (damn spammers). Removed other email addresses
2594         while I was at it since the SourceForge URL should be sufficient
2595         contact information.
2597         (mh-scan-format-*mh): Fixed typo in comment above these variables.
2598         These variables are used if mh-scan-format-file is t, not nil.
2599         Also mh-scan-format-file is no longer "above" (courtesy Stephen
2600         Gildea).
2602 2003-07-17  Satyaki Das  <satyakid@stanford.edu>
2604         * mh-mime.el (mh-mhn-quote-unescaped-sharp): New function that
2605         quotes `#' characters in the first column that aren't part of a
2606         MHN directive.
2607         (mh-mhn-directive-present-p): Generalized to allow the function
2608         to search for MHN directives in a part of the buffer.
2609         (mh-edit-mhn): Quote unescaped `#' characters in the draft (closes
2610         SF #762464).
2612 2003-07-16  Satyaki Das  <satyakid@stanford.edu>
2614         * mh-alias.el (mh-alias-read-address-map): If
2615         mh-alias-flash-on-comma is nil when mh-alias is loaded, then
2616         setting mh-alias-flash-on-comma to t later on doesn't turn on
2617         address completion display till Emacs is restarted. The change
2618         fixes this.
2620 2003-07-15  Bill Wohler  <wohler@newt.com>
2622         * mh-utils.el (mh-cmd-note): Cleaned up docstring (changed phrase
2623         to sentences). Moved to Scan Line Formats section.
2624         (mh-scan-msg-number-regexp)
2625         (mh-scan-msg-overflow-regexp, mh-scan-msg-format-regexp)
2626         (mh-scan-msg-format-string, mh-scan-msg-search-regexp): Cleaned up
2627         docstrings (changed phrases to sentences).
2628         (mh-note-seq): Cleaned up docstring (changed phrase to sentences).
2629         Also, this variable is now a character and not a string. Moved to
2630         Scan Line Formats section.
2632         * mh-funcs.el (mh-note-copied, mh-note-printed): Cleaned up
2633         docstrings (changed phrases to sentences). Also, these variables
2634         are now characters and not strings.
2636         * mh-e.el (mh-scan-format-mh, mh-scan-format-nmh): Filled. I was
2637         hoping to quote the hint `t' but checkdoc wouldn't let me.
2638         (mh-note-deleted, mh-note-refiled, mh-note-cur): Moved to Scan
2639         Line Formats section.
2640         (mh-scan-good-msg-regexp, mh-scan-deleted-msg-regexp)
2641         (mh-scan-refiled-msg-regexp, mh-scan-valid-regexp)
2642         (mh-scan-cur-msg-number-regexp, mh-scan-date-regexp)
2643         (mh-scan-rcpt-regexp, mh-scan-body-regexp)
2644         (mh-scan-subject-regexp, mh-scan-format-regexp): Cleaned
2645         up docstrings (changed phrases to sentences).
2646         (mh-scan-cur-msg-regexp): Marked this variable as obsolete; it
2647         should be removed for 8.0.
2649         * mh-comp.el (mh-note-repl, mh-note-forw, mh-note-dist): Cleaned
2650         up docstrings (changed phrases to sentences). Also, these
2651         variables are now characters and not strings.
2653 2003-07-15  Satyaki Das  <satyakid@stanford.edu>
2655         * mh-index.el (mh-index-update-single-msg)
2656         (mh-index-create-sequences): Handle the situation where there are
2657         copies of the exact same message correctly.
2659 2003-07-15  Satyaki Das  <satyakid@stanford.edu>
2661         * mh-seq.el (mh-thread-update-scan-line-map): Modified since
2662         notation is already a character.
2664         * mh-utils.el (mh-note-seq): Convert from string to character.
2665         (mh-notate): Modified since characters are used to notate instead
2666         of strings of length one.
2668         * mh-comp.el (mh-note-repl, mh-note-forw, mh-note-dist): Convert
2669         from string to characters.
2671         * mh-e.el (mh-note-deleted, mh-note-refiled, mh-note-cur): Same as
2672         above (closes SF #770772).
2673         (mh-unmark-all-headers): Modified since mh-note-* variables are
2674         now characters.
2675         (mh-remove-sequence-notation): The mh-notate function remembers
2676         the previous notation. Before the change to the mh-note-*
2677         variables, mh-notate would only remember the change if a string
2678         was used to notate the message. Now mh-notate is always called
2679         with a character notation. So the deletion has to take place
2680         explicitly.
2682 2003-06-28  Bill Wohler  <wohler@newt.com>
2684         * mh-mime.el (mh-mhn-directive-present-p): If shell comments are
2685         present that have a space after the # but no content, then this
2686         function would throw an error. This has been fixed (closes SF
2687         #762458).
2689 2003-06-27  Satyaki Das  <satyakid@stanford.edu>
2691         * mh-index.el (mh-index-search): Use the new and improved
2692         mh-index-new-folder.
2693         (mh-index-new-folder): Improved so that redoing the same search
2694         will reuse the old index folder.
2695         (mh-index-folder-search-regexp): New function which that extracts
2696         out the search expression that produced the index folder.
2698 2003-06-24  Bill Wohler  <wohler@newt.com>
2700         * mh-e.el (Version, mh-version):  Set to 7.4.1+cvs.
2702 2003-06-25  Bill Wohler  <wohler@newt.com>
2704         Released MH-E version 7.4.1.
2706         * MH-E-NEWS, README: Updated for release 7.4.1.
2708         * mh-e.el (Version, mh-version): Updated for release 7.4.1.
2710 2003-06-25  Bill Wohler  <wohler@newt.com>
2712         * mh-unit.el (require 'cl): Added. Needed when compiling
2713         separately.
2715         * Makefile (clean): Now a double-colon rule. Added a second clean
2716         target to remove mh-unit.elc.
2717         (compile): Removed mh-unit.elc.
2718         (mh-unit.elc): New target used to compile mh-unit.
2720 2003-06-24  Bill Wohler  <wohler@newt.com>
2722         * mh-e.el (Version, mh-version):  Set to 7.4+cvs.
2724 2003-06-24  Bill Wohler  <wohler@newt.com>
2726         Released MH-E version 7.4.
2728         * MH-E-NEWS, README: Updated for release 7.4.
2730         * mh-e.el (Version, mh-version): Updated for release 7.4.
2732 2003-06-24  Bill Wohler  <wohler@newt.com>
2734         * mh-alias.el (mh-alias-gecos-name, mh-alias-local-users)
2735         (mh-alias-suggest-alias): s/gcos/gecos. The original acronym was
2736         GECOS but was later renamed to GCOS (see
2737         http://info.astrian.net/jargon/terms/g/GCOS.html). But the term
2738         really needs to match the field named pw_gecos in struct passwd in
2739         /usr/include/pwd.h
2741         * mh-customize.el (mh-letter-faces): New group to house
2742         mh-letter-header-field-face.
2743         (mh-interpret-number-as-range-flag)
2744         (mh-kill-folder-suppress-prompt-hook): Use "you" instead of "the
2745         user" to make text more friendly.
2746         (mh-index-ticked-messages-folders, mh-visible-headers)
2747         (mh-visible-header-fields): Alphabetized.
2748         (mh-alias-passwd-gcos-comma-separator-flag): Alphabetized and
2749         s/gcos/gecos.
2750         (mh-alias-local-users-prefix): Fixed docstring. Prefixes are
2751         prepended, not appended. Additional checkdoc fix.
2752         (mh-letter-header-field-face): Set group to new group
2753         mh-letter-faces and moved option into this group.
2755         * mh-index.el (mh-index-sequenced-messages): Improved wording of
2756         docstring and mentioned use of prefix argument.
2758         * mh-seq.el (mh-widen): Made docstring more accurate (hopefully!).
2760 2003-06-18  Satyaki Das  <satyakid@stanford.edu>
2762         * mh-index.el (mh-replace-string): Modified to preserve case of
2763         replacement text.
2764         (mh-index-parse-search-regexp): Preserve case of search terms.
2765         This is needed to take advantage of the acronym indexing in
2766         swish++ (closes SF #755718).
2768 2003-06-13  Satyaki Das  <satyakid@stanford.edu>
2770         * mh-utils.el (mh-show-index-sequenced-messages): Interactive
2771         function callable from the show buffer.
2772         (mh-show-folder-map): Add key binding for "F q".
2774         * mh-e.el (mh-folder-map): Same as above.
2776         * mh-index.el (mh-index-sequenced-messages): Add interactive spec
2777         to the function (closes SF #718833).
2779 2003-06-13  Bill Wohler  <wohler@newt.com>
2781         * mh-index.el (mh-flists-execute): Needed to expand mhpath too.
2783 2003-06-12  Satyaki Das  <satyakid@stanford.edu>
2785         * mh-index.el (mh-flists-execute): Modified so that flists
2786         present in mh-progs is called.
2788 2003-06-07  Jeffrey C Honig  <jch@honig.net>
2790         * mh-comp.el (mh-forward, mh-forward): Use (mh-mail-header-end) to
2791         find the end of headers instead of doing an re-search-forward
2792         based on mh-mail-header-separator.
2794 2003-06-06  Satyaki Das  <satyakid@stanford.edu>
2796         * mh-comp.el (mh-letter-toggle-header-field-display): Make the
2797         function callable from the show buffer. This means that the
2798         buffer is temporarily made writable and the modification status
2799         of the buffer restored to the original value.
2801 2003-06-06  Peter S Galbraith  <psg@debian.org>
2803         * mh-utils.el (mh-address-mail-regexp): Bug fix!  It wasn't a true
2804         copy of the goto-addr variable.  My modification only recognized
2805         addresses with one dot after the @.  Sorry about that.
2807 2003-06-05  Satyaki Das  <satyakid@stanford.edu>
2809         * mh-utils.el (mh-replace-in-string): Move comment into doc
2810         string to satisfy checkdoc.
2812         * mh-alias.el (mh-alias-apropos): Checkdoc fix.
2814 2003-06-05  Bill Wohler  <wohler@newt.com>
2816         * mh-customize.el (mh-identity-list): Fixed typo in docstring.
2818 2003-06-05  Peter S Galbraith  <psg@debian.org>
2820         * mh-comp.el (mh-letter-complete-function-alist): Add bcc an reply-to.
2822 2003-06-04  Peter S Galbraith  <psg@debian.org>
2824         * mh-comp.el (mh-letter-complete-function-alist): Add dcc.
2826 2003-06-03  Peter S Galbraith  <psg@debian.org>
2828         * mh-utils.el (mh-replace-in-string): New function name instead of
2829         `dired-replace-in-string'.
2830         * mh-alias.el (mh-alias-gcos-name): Use it.
2832         * mh-alias.el (mh-alias-apropos): New command. Show all aliases
2833         that match REGEXP either in name or content.
2835         * mh-alias.el (mh-alias-suggest-alias): Add no-comma-swap optional
2836         arg.
2837         (mh-alias-canonicalize-suggestion): Change a comma to a period in
2838         created aliases.
2839         (mh-alias-local-users): Call `mh-alias-suggest-alias' with
2840         `no-comma-swap' arg set to t.
2842         * mh-alias.el (mh-alias-local-users): Fix case of nil
2843         `mh-alias-passwd-gcos-comma-separator-flag'.
2845         * mh-alias.el (mh-alias-gcos-name): Fix for case of empty gcos
2846         name field.
2847         (mh-alias-local-users): Fix same.
2849         * mh-alias.el (mh-alias-canonicalize-suggestion): Replace use by
2850         verbose `replace-regexp' by a looped `replace-match'
2852 2003-06-02  Peter S Galbraith  <psg@debian.org>
2854         * mh-utils.el (dired-replace-in-string): Bind if not already
2855         defined.  Borrowed from dired.el
2857         * mh-alias.el (mh-alias-gcos-name): switch to using
2858         dired-replace-in-string.
2860 2003-06-02  Satyaki Das  <satyakid@stanford.edu>
2862         * mh-utils.el (mh-letter-font-lock-keywords): Fontify header
2863         fields in the draft buffer that aren't skipped when navigating
2864         with TAB (or S-TAB).
2866         * mh-customize.el (mh-clean-message-header-flag)
2867         (mh-invisible-headers, mh-invisible-header-fields)
2868         (mh-alias-passwd-gcos-comma-separator-flag): Checkdoc fix.
2869         (mh-letter-header-field-face): New face to fontify the header
2870         fields.
2872         * mh-comp.el (mh-insert-auto-fields-done-local): Checkdoc fix.
2873         (mh-letter-mode, mh-letter-mail-header-end-marker): Remember the
2874         end of the message header in a marker. This is used to fontify the
2875         header fields.
2876         (mh-font-lock-field-data, mh-letter-header-end): Functions used
2877         to fontify message header fields.
2879         * mh-alias.el (mh-alias-gcos-name): Checkdoc fix.
2881 2003-06-02  Peter S Galbraith  <psg@debian.org>
2883         * mh-alias.el (mh-alias-gcos-name): New function. Return a usable
2884         address string from a GCOS-NAME and USERNAME.
2885         (mh-alias-local-users): Use it.
2887         * mh-customize.el (mh-alias-passwd-gcos-comma-separator-flag): New
2888         defcustom. Whether the gcos field in the passwd file uses comma as
2889         a separator.
2891         * mh-customize.el (mh-alias-local-users-prefix): New
2892         defcustom. String to append to the real names of users from the
2893         passwd file. If nil, use the username string unmodified instead of
2894         the real name from the gcos field of the passwd file.
2896         * mh-alias.el (mh-alias-local-users): Use it to generate aliases
2897         which by default are now the real name prefixed by "local."
2899 2003-06-01  Peter S Galbraith  <psg@debian.org>
2901         * mh-comp.el (mh-modify-header-field): Bug fix.  Calling with with
2902         a value that was already inserted causes it to get inserted a
2903         second time.  I have wrapped the value around \b word delimiters.
2904         Hope there are no side effects for other code.
2906         * mh-comp.el (mh-insert-auto-fields): Attempt regardless of
2907         `mh-insert-auto-fields-done-local' flag in interactive use.
2909         * mh-comp.el (mh-insert-auto-fields-done-local): Keep track of
2910         whether `mh-insert-auto-fields' was called in a buffer.
2911         (mh-insert-auto-fields): Set it and use it.  Also, don't enter an
2912         identity if one was already entered manually.
2913         (mh-send-letter): Call `mh-insert-auto-fields' again when sending
2914         message.
2915         (mh-compose-and-send-mail): Call `mh-insert-auto-fields' _after_
2916         `mh-letter-mode' so `mh-identity-local' doesn't get cleared by the
2917         mode invocation.
2919 2003-06-01  Satyaki Das  <satyakid@stanford.edu>
2921         * mh-loaddefs.el: Regenerated.
2923         * mh-seq.el (mh-thread-parse-scan-line): The value of
2924         mh-scan-field-from-start-offset was hardcoded in one place. The
2925         change fixes that.
2927         * mh-utils.el (mh-show-mode): Setup mh-show-mode to display
2928         elipsis for truncated header fields and to skip over them quickly.
2929         (mh-clean-msg-header): Make another pass over the message header
2930         fields truncating long headers.
2932         * mh-comp.el (mh-letter-complete): Remove unnecessary autoload.
2933         (mh-letter-toggle-header-field-display): Take into account that
2934         an empty line can also end the message header. The function was
2935         originally written with the draft buffer in mind.
2937 2003-06-01  Mark D. Baushke  <mdb@gnu.org>
2939         * mh-comp.el (mh-letter-mode-map): Do not steal C-t. Use C-c C-t
2940         for the mh-letter-toggle-header-field-display command.
2942 2003-05-31  Peter S Galbraith  <psg@debian.org>
2944         * mh-customize.el (mh-visible-headers): Changed to a defvar that
2945         will be set using new `mh-visible-headers' function using
2946         `mh-visible-header-fields' as input.
2947         (mh-visible-headers): New function, described above.
2948         (mh-visible-header-fields): New defcustom.  The UI to set
2949         `mh-visible-headers'.
2950         (mh-invisible-header-fields-set): Deleted.  Code merged into
2951         defcustom since it's so short.
2953 2003-05-31  Satyaki Das  <satyakid@stanford.edu>
2955         * mh-comp.el (mh-letter-toggle-header-field-display): Extended to
2956         truncate headers if they are too long.
2957         (mh-letter-truncate-header-field): Make code that would be
2958         duplicated into a function.
2959         (mh-letter-hide-all-skipped-fields): Modified so that fields that
2960         are important are hidden if they are too long.
2962 2003-05-31  Satyaki Das  <satyakid@stanford.edu>
2964         * mh-utils.el ("tool-bar"): Since tool-bar isn't available on
2965         XEmacs, requiring it causes problems. So load it instead.
2966         (mh-do-at-event-location): New macro to do stuff at location of
2967         events. This has been refactored out of mh-push-button.
2969         * mh-mime.el (mh-push-button): Simplified since it now uses the
2970         mh-do-at-event-location macro.
2972         * mh-comp.el (mh-hidden-header-keymap): Keymap to make mouse
2973         clicks on header toggle its display.
2974         (mh-letter-toggle-header-field-display-button): Interactive
2975         function to toggle header display when mouse button is clicked.
2977 2003-05-31  Peter S Galbraith  <psg@debian.org>
2979         * mh-e.el (mh-folder-mode): Remove conditional on tool-bar-mode.
2981         * mh-comp.el (mh-letter-mode): Same.
2983         * mh-utils.el (mh-show-mode): Same.
2985 2003-05-30  Satyaki Das  <satyakid@stanford.edu>
2987         * mh-utils.el (tool-bar): Load tool-bar explicitly. This avoids
2988         problems with incorrect initialization of tool-bar-map otherwise.
2990 2003-05-30  Peter S Galbraith  <psg@mixed.dyndns.org>
2992         * mh-comp.el (mh-modify-header-field): Minor fix of spaces for
2993         when an entry already existed.
2994         (mh-insert-auto-fields): Make interactive. Add optional `quiet'
2995         arg for use when called systematically on every buffer.  Won't be
2996         used interactively for more verbose output.
2997         (mh-letter-mode-map): Add \C-c\M-d keybinding for
2998         mh-insert-auto-fields.
3000         * mh-identity.el (mh-identity-make-menu): Add a menu entry in
3001         Identity menu for mh-insert-auto-fields.
3003         * mh-customize.el (mh-invisible-header-fields): Add entries for
3004         `Envelope-to' and `X-Original-To'.
3006 2003-05-30  Satyaki Das  <satyakid@stanford.edu>
3008         * mh-comp.el (mh-letter-mode): Skip over invisible text quickly.
3010 2003-05-30  Satyaki Das  <satyakid@stanford.edu>
3012         * mh-comp.el (mh-letter-mode): Use text properties to achieve
3013         invisibility. This is more portable and the same code can be used
3014         for all Emacs versions.
3015         (mh-letter-toggle-header-field-display): Rewritten to use text
3016         properties.
3017         (mh-dead-overlay-p, mh-letter-hidden-header-fields)): Removed.
3019 2003-05-29  Satyaki Das  <satyakid@stanford.edu>
3021         * mh-comp.el (mh-letter-hidden-header-fields, mh-letter-mode): Add
3022         a hash table, initialized it in mh-letter-mode, to remember the
3023         overlays introduced to hide long headers fields.
3024         (mh-insert-x-mailer): checkdoc fix.
3025         (mh-compose-and-send-mail): Hide unimportant message header
3026         fields.
3027         (mh-letter-header-field-regexp, mh-letter-header-field-at-point)
3028         (mh-letter-next-header-field, mh-letter-previous-header-field):
3029         Add a variable that contains the header-field name regexp and use
3030         it instead of the regexp directly.
3031         (mh-letter-toggle-header-field-display, mh-letter-mode-map): Add
3032         new key binding in mh-letter-mode that toggles display of long
3033         header fields, in mh-letter-mode.
3034         (mh-dead-overlay-p): A predicate which checks if a given header
3035         field has an active overlay hiding it.
3036         (mh-letter-hide-all-skipped-fields): New function that shortens
3037         uninteresting headers.
3039 2003-05-29  Eric Ding  <ericding@acorn.bethesda.net>
3041         * mh-comp.el (mh-letter-next-header-field-or-indent): Call
3042         indent-relative rather than indent-for-tab-command.
3044 2003-05-29  Satyaki Das  <satyakid@stanford.edu>
3046         * mh-comp.el (mh-letter-complete-or-space): The meaning of the
3047         customizable variable was reversed. Also make the doc string more
3048         accurate.
3050 2003-05-28  Satyaki Das  <satyakid@stanford.edu>
3052         * mh-customize.el (mh-compose-skipped-header-fields): New
3053         customizable variable that lists headers that are skipped.
3054         (mh-compose-space-does-completion-flag): Option to do completion
3055         with space (closes SF #745634).
3057         * mh-comp.el (mh-insert-x-mailer): Check the value of
3058         mh-insert-x-mailer-flag in this function instead of in its caller.
3059         (mh-compose-and-send-mail, mh-send-letter): Insert X-Mailer and
3060         X-Face headers when the draft is first presented to the user
3061         instead of when the mail is sent (closes SF #745624).
3062         (mh-letter-complete-or-space): Allow for this key binding to be
3063         overridden.
3064         (mh-letter-next-header-field): Fix a problem with multiline header
3065         fields.
3066         (mh-letter-next-header-field, mh-letter-previous-header-field):
3067         Make these functions skip unwanted header fields.
3068         (mh-letter-skipped-header-field-p): New predicate that checks if a
3069         header field is to be skipped.
3071         * mh-seq.el (mh-thread-inc): Inc'ing email in threaded mode was
3072         causing duplication of the current notation. The change fixes that.
3074 2003-05-28  Satyaki Das  <satyakid@stanford.edu>
3076         * mh-comp.el (mh-beginning-of-word): Generalize it to skip
3077         arbitrary number of words.
3078         (mh-letter-complete-or-space): New interactive function that
3079         allows space character to be used for completion.
3080         (mh-letter-mode-map): Add key binding to allow space to be used
3081         for completion.
3083 2003-05-27  Satyaki Das  <satyakid@stanford.edu>
3085         * mh-customize.el (mh-compose-prompt-flag): Customizable variable
3086         that controls whether the user is prompted when composing a draft.
3087         It replaces mh-dont-prompt-for-address-flag (closes SF #745622).
3089         * mh-comp.el (mh-letter-next-header-field): If the point is in
3090         the header field name, then go the start of the header field
3091         instead of the next field.
3092         (mh-interactive-read-address, mh-interactive-read-string)
3093         (mh-letter-adjust-point): Use mh-compose-prompt-flag instead of
3094         mh-dont-prompt-for-address-flag.
3096 2003-05-27  Satyaki Das  <satyakid@stanford.edu>
3098         * mh-customize.el (mh-tool-bar-define): Fix incorrect usage of
3099         set-specifier (closes SF #745655). Also the button enabling code
3100         interacts poorly with font-lock in XEmacs. So disable that.
3102 2003-05-26  Satyaki Das  <satyakid@stanford.edu>
3104         * mh-e.el (mh-folder-from-address): The function
3105         message-fetch-field expects that the buffer is narrowed to the
3106         mail header. The change makes sure that this is indeed the case.
3108         * mh-mime.el (mh-add-missing-mime-version-header)
3109         (mh-decode-message-body): Same as above.
3111 2003-05-25  Satyaki Das  <satyakid@stanford.edu>
3113         * mh-alias.el (mh-alias-minibuffer-confirm-address): Modified to
3114         use mh-beginning-of-word.
3116         * mh-comp.el (mh-letter-confirm-address): Calling
3117         mh-alias-reload-maybe can be expensive. So do it only if we really
3118         need to.
3120 2003-05-25  Satyaki Das  <satyakid@stanford.edu>
3122         * mh-loaddefs.el: Regenerated.
3124         * mh-comp.el (mh-letter-confirm-address): Load aliases if not yet
3125         loaded.
3127         * mh-alias.el (mh-alias-reload-maybe): Autoload it since it is
3128         used in mh-comp.el.
3130 2003-05-24  Satyaki Das  <satyakid@stanford.edu>
3132         * mh-comp.el (mh-letter-skip-leading-whitespace-in-header-field):
3133         New function to skip leading space and tab characters when placing
3134         point in a header field.
3135         (mh-letter-next-header-field, mh-letter-previous-header-field):
3136         Skip leading whitespace when using TAB to navigate to header
3137         fields.
3138         (mh-letter-confirm-address): New interactive function that
3139         displays the last expansion of the last alias when "," is typed.
3140         (mh-letter-mode-map): Add key binding for "," (closes SF #745634).
3142 2003-05-23  Satyaki Das  <satyakid@stanford.edu>
3144         * mh-comp.el (mh-edit-again, mh-forward, mh-send)
3145         (mh-send-other-window, mh-send-sub): Modified so that if
3146         mh-dont-prompt-for-address-flag is non-nil, then MH-E won't prompt
3147         for addresses to send mail to and instead directly jump to the
3148         draft (closes SF #745622).
3149         (mh-letter-complete-function-alist): An alist that is used to
3150         decide which completion function to use in which header. This
3151         variable should probably be customizable.
3152         (mh-letter-complete): Now uses mh-letter-complete-function-alist.
3153         (mh-letter-header-field-at-point, mh-letter-next-header-field)
3154         (mh-letter-next-header-field-or-indent)
3155         (mh-letter-previous-header-field): Commands for easier navigation
3156         to header fields.
3157         (mh-dont-prompt-for-address-flag): Variable which controls
3158         whether MH-E prompts for addresses.
3159         (mh-interactive-read-address, mh-interactive-read-string): Two
3160         functions to ask user for input depending on the value of the
3161         above flag.
3162         (mh-letter-adjust-point): New function that sets point to the
3163         first header field.
3164         (mh-letter-mode-map): Add key bindings for TAB and S-TAB (closes
3165         SF #745627).
3167 2003-05-23  Satyaki Das  <satyakid@stanford.edu>
3169         * mh-loaddefs.el: Regenerated.
3171         * mh-comp.el (mh-complete-word): New function which is
3172         approximately equivalent to mail-abbrev-complete-alias.
3173         (mh-beginning-of-word): Refactor repeated code into its own
3174         function.
3175         (mh-folder-expand-at-point): Make Fcc completion work in XEmacs
3176         by not using mail-abbrev-complete-alias.
3178         * mh-alias.el (mh-alias-letter-expand-alias): Make alias
3179         expansion work in XEmacs. Replace the use of the function
3180         mail-abbrev-complete-alias, which isn't present in XEmacs.
3182         * mh-mime.el (mh-mml-to-mime): If a MIME message is created
3183         immediately after starting MH-E then invoking mh-mml-to-mime
3184         causes an error because "message" isn't being loaded. The change
3185         works around this problem.
3186         (mh-mime-maybe-display-alternatives): Give better indication of
3187         which MIME parts are alternatives.
3189 2003-05-22  Satyaki Das  <satyakid@stanford.edu>
3191         * mh-e.el (mh-add-sequence-notation, mh-remove-sequence-notation):
3192         Just delete and add the same character in the scan line to make
3193         font-lock refontify it. The previous trick of removing all text
3194         properties didn't work in XEmacs.
3196         * mh-seq.el (mh-put-msg-in-seq): Complain if the user tries to
3197         create an invalid MH sequence.
3199         * mh-mime.el (mh-mime-display-alternative): Modified to
3200         optionally display alternatives as buttons.
3201         (mh-mime-maybe-display-alternatives): New function which displays
3202         alternative MIME parts as buttons.
3203         (mh-mime-save-part): Initially mh-mime-save-parts-directory is
3204         nil and calling file-name-as-directory with nil arg leads to an
3205         error. So fall back on the default-directory in that case.
3207         * mh-customize.el (mh-display-buttons-for-alternatives-flag): New
3208         customizable variable that controls display of the alternative
3209         MIME parts (closes SF #741288).
3211 2003-05-22  Peter S Galbraith  <psg@debian.org>
3213         * mh-customize.el (mh-invisible-header-fields): Commented out
3214         "User-Agent:".  It's similar to X-Mailer, so display it.
3216 2003-05-21  Satyaki Das  <satyakid@stanford.edu>
3218         * mh-customize.el (mh-tool-bar-define): Add an optional argument
3219         to the button description that can dynamically enable/disable
3220         buttons.
3221         (mh-tool-bar-define): The alias grabbing button is disabled if the
3222         current message doesn't have a From header or if the sender is
3223         already in the user's alias. This functionality was inadvertently
3224         lost when the Emacs/XEmacs toolbar unification took place.
3226 2003-05-20  Satyaki Das  <satyakid@stanford.edu>
3228         * mh-unit.el (mh-unit-construct-call-graph): Be more aggressive
3229         and flag interactive functions that aren't autoloaded or have no
3230         key bindings.
3231         (mh-unit-interactive-function-p): Remove now unused function.
3232         (mh-unit, mh-unit-construct-call-graph): Replace mh-files with
3233         mh-unit-files.
3235 2003-05-20  Bill Wohler  <wohler@newt.com>
3237         * mh-unit.el (mh-prune-trailing-spaces): Renamed to
3238         mh-unit-prune-trailing-spaces to clean up the namespace.
3239         (mh-files): Renamed to mh-unit-files. Ditto.
3240         (mh-unit): Checkdoc fix.
3242         * mh-index.el (mh-index-p): Added autoload cookie since mh-index-p
3243         is used by mh-customize.el. This calls for another mh-unit test
3244         that looks for mh-autoloads for functions that are no longer used
3245         in other files.
3247         * mh-loaddefs.el: Regenerated.
3249 2003-05-20  Satyaki Das  <satyakid@stanford.edu>
3251         * mh-unit.el (mh-unit-construct-call-graph): Factor out the code
3252         to read the lisp files to a separate function. Also change it to
3253         construct a function call-graph. Autoloaded functions are taken
3254         into account.
3255         (mh-unit-find-all-used-functions, mh-unit-called-functions)
3256         (mh-unit-find-all-unused-functions): Find all unused functions by
3257         computing a fixed point starting from the set of top level
3258         functions.
3259         (mh-unit-analyze-block): Removed.
3260         (mh-unit-update-call-graph): mh-unit-functions-called was renamed
3261         with modifications to update the function call graph.
3263 2003-05-19  Satyaki Das  <satyakid@stanford.edu>
3265         * mh-loaddefs.el: Regenerated.
3267         * mh-utils.el (mh-notate): Modified to keep track of notation
3268         that was replaced when sequence notation is added. Thus when the
3269         sequence is deleted, the original notation is recovered.
3270         (mh-add-msgs-to-seq): Modified to work with the new sequence
3271         notation code.
3273         * mh-seq.el (mh-delete-seq, mh-put-msg-in-seq): Simplified since
3274         we don't need to handle tick and unseen sequences specially any
3275         more.
3276         (mh-narrow-to-seq): Don't need to call mh-notate-user-sequences
3277         since mh-copy-seq-to-eob already does that.
3278         (mh-widen): Remove sequence notation, so that notation when
3279         messages are replied to aren't lost.
3280         (mh-copy-seq-to-eob): Simplified with the use of
3281         mh-iterate-on-range.
3282         (mh-thread-inc): This function doesn't need to notate user
3283         sequences since its callers already do that.
3284         (mh-thread-parse-scan-line): Simplified since mh-note-seq doesn't
3285         appear in scan lines it is given as arguments.
3286         (mh-thread-update-scan-line-map): Remove the test, since its
3287         caller already does the required check.
3288         (mh-thread-folder): Simplified by the use of mh-iterate-on-range.
3289         (mh-tick-add-overlay, mh-tick-remove-overlay, mh-notate-tick):
3290         These functions aren't needed any more, since overlays aren't used
3291         any more. Also overlays aren't portable to XEmacs, so nasty
3292         conditional code that used overlays in Emacs and extents in Xemacs
3293         have been eliminated.
3294         (mh-toggle-tick): Generalize it to work on a range of messages
3295         like the other interactive messages.
3297         * mh-funcs.el (mh-undo-folder): Use mh-remove-all-notation
3298         instead of mh-unmark-all-headers.
3300         * mh-e.el (mh-folder-font-lock-keywords): The entry for unseen
3301         sequence highlighting is now done by the macro.
3302         (mh-generate-sequence-font-lock): New macro to highlight any
3303         arbitrary sequence. This macro is invoked twice to get the
3304         highlighting for unseen and tick sequences.
3305         (mh-sequence-notation-history, mh-folder-mode): New variable that
3306         keeps track of the old notation when a message is notated with
3307         mh-note-seq.
3308         (mh-regenerate-headers, mh-get-new-mail): Add appropriate calls to
3309         mh-notate-user-sequences and mh-remove-all-notation.
3310         (mh-unmark-all-headers): Add comment that this function shouldn't
3311         be used any more.
3312         (mh-add-sequence-notation, mh-remove-sequence-notation): New
3313         functions to notate message with mh-note-seq and to remove it.
3314         (mh-remove-all-notation): Simplified to use mh-iterate-on-range.
3315         (mh-process-commands): Use mh-remove-all-notation instead of
3316         mh-unmark-all-headers.
3317         (mh-notate-user-sequences, mh-delete-msg-from-seq): Simplified
3318         since the tick and unseen sequences don't need special handling
3319         any more.
3320         (mh-internal-seq): Make it possible to dynamically change what
3321         sequences are treated as internal (internal means font lock is
3322         used to highlight the sequence).
3323         (mh-clear-text-properties): Removed since it isn't needed
3324         anymore.
3326 2003-05-19  Satyaki Das  <satyakid@stanford.edu>
3328         * mh-unit.el (mh-unit-analyze-block, mh-unit-interactive-function-p)
3329         (mh-unit-find-all-unused-functions): Change argument name bl to
3330         block.
3332 2003-05-19  Satyaki Das  <satyakid@stanford.edu>
3334         * mh-unit.el (mh-unit-find-all-unused-functions): New interactive
3335         function to find all unused functions in MH-E.
3336         (mh-unit-analyze-block, mh-unit-interactive-function-p)
3337         (mh-unit-functions-called): Functions used by
3338         mh-unit-find-all-unused-functions do its job.
3340         * Makefile (compile): Byte-compile mh-unit.el, since the analysis
3341         to find unused code runs faster when compiled.
3343 2003-05-18  Satyaki Das  <satyakid@stanford.edu>
3345         * mh-loaddefs.el: Regenerated.
3347         * mh-seq.el (mh-notate-deleted-and-refiled): Add autoload
3348         declaration since this function is used in mh-index.el.
3350         * mh-e.el, mh-customize.el, mh-utils.el: Adjust require/provide
3351         statements so that mh-e.el isn't loaded twice.
3353 2003-05-15  Satyaki Das  <satyakid@stanford.edu>
3355         * mh-utils.el (mh-defun-show-buffer): Arrange for the current
3356         line in the folder buffer to be highlighted even when we are in
3357         the show buffer.
3359 2003-05-14  Satyaki Das  <satyakid@stanford.edu>
3361         * mh-seq.el (mh-read-range): Allow this to work on invalid
3362         sequences that only MH-E knows about.
3364         * mh-index.el (mh-create-sequence-map, mh-index-add-to-sequence)
3365         (mh-index-delete-from-sequence): Don't consider sequences that
3366         aren't valid MH sequences.
3368         * mh-e.el (mh-valid-seq-p): New predicate to check if a symbol
3369         could be a MH sequence.
3370         (mh-undefine-sequence, mh-define-sequence): Don't execute "mark"
3371         unless the sequence name is a valid MH sequence.
3373         * mh-utils.el (mh-exec-cmd): In case an error happens in the
3374         call-process and non-strings are present in ARGS, then the error
3375         message isn't properly displayed. The change fixes this.
3377 2003-05-14  Peter S Galbraith  <psg@debian.org>
3379         * mh-mime.el (mh-mime-save-part): Bug Fix: Make sure
3380         `mm-default-directory' gets a trailing "/" if
3381         `mh-mime-save-parts-directory' doesn't have one.  Otherwise the
3382         default in the prompt of `mh-mm-save-part' will be wrong.  Perhaps
3383         `mh-mm-save-part' needs to do this check itself.
3385 2003-05-14  Satyaki Das  <satyakid@stanford.edu>
3387         * mh-index.el (mh-unpropagated-sequences): New function and
3388         variable to keep track of sequences that shouldn't be propagated.
3389         (mh-create-sequence-map, mh-index-add-to-sequence)
3390         (mh-index-delete-from-sequence): Use mh-unpropagated-sequences to
3391         stop changes to some sequences being reflected back to the source
3392         folders.
3394 2003-05-13  Satyaki Das  <satyakid@stanford.edu>
3396         * mh-loaddefs.el: Regenerated.
3398         * mh-e.el (mh-process-commands): Preserve sequences when messages
3399         are refiled (closes SF #737128).
3401         * mh-index.el (mh-create-sequence-map)
3402         (mh-index-create-sequences): Refactor code that is reused into a
3403         new function.
3405         * mh-customize.el (mh-refile-preserves-sequences-flag): New
3406         customizable flag that controls whether sequences are preserved
3407         when messages are refiled.
3409 2003-05-13  Eric Ding  <ericding@alum.mit.edu>
3411         * mh-e.el (mh-scan-format): The argument for scan format files
3412         should be -form, not -format.
3414 2003-05-13  Satyaki Das  <satyakid@stanford.edu>
3416         * mh-seq.el (mh-widen): The scan line map stack was not being
3417         properly updated when ALL-FLAG is non-nil. The change fixes that.
3419         * mh-e.el (mh-reset-threads-and-narrowing): The change resets the
3420         scan line map stack.
3422 2003-05-12  Satyaki Das  <satyakid@stanford.edu>
3424         * mh-loaddefs.el: Regenerated.
3426         * mh-seq.el (mh-thread-scan-line-map-stack)
3427         (mh-thread-old-scan-line-map): Instead of the old scan line map,
3428         now we need to maintain a stack of scan line maps.
3429         (mh-narrow-to-seq): Modified so that multiple level of narrowings
3430         can be done. We now maintain a stack of old views instead of
3431         hiding the old scan lines. This makes it possible to have
3432         multiple levels of narrowings.
3433         (mh-widen): A optional prefix arg was added to allow undoing all
3434         narrowing.
3435         (mh-read-seq-default, mh-read-range): Don't use
3436         mh-narrowed-to-seq, since it doesn't exist any more.
3437         (mh-thread-initialize-hash, mh-thread-initialize): The
3438         mh-thread-initialize function has been refactored.
3439         (mh-thread-update-scan-line-map): Maintain notations in the stack
3440         of scan line maps.
3441         (mh-notate-tick, mh-toggle-tick): Simplified, since we don't have
3442         mh-narrowed-to-seq any more. This means there is a slight loss of
3443         functionality. Earlier if we narrowed to the tick sequence the
3444         ticked messages weren't highlighted. This feature isn't present
3445         any more.
3447         * mh-e.el (mh-execute-commands, mh-reset-threads-and-narrowing)
3448         (mh-folder-sequence-menu, mh-get-new-mail): Use
3449         mh-folder-view-stack instead of the now removed
3450         mh-narrowed-to-seq.
3451         (mh-narrowed-to-seq, mh-tick-seq-changed-when-narrowed-flag):
3452         These variables have been removed.
3453         (mh-folder-view-stack): New variable to keep track of a stack of
3454         narrowings.
3455         (mh-execute-commands, mh-get-new-mail): Add extra argument to
3456         mh-widen so that all narrowings are undone.
3458         * Makefile (MH-E-SRC, MH-E-OTHERS): Move mh-gnus.el from MH-E-SRC
3459         to MH-E-OTHERS so that it isn't byte compiled.
3461 2003-05-10  Satyaki Das  <satyakid@stanford.edu>
3463         * mh-seq.el (mh-read-seq): Improve the function a bit by adding
3464         history to the sequence prompt.
3466 2003-05-09  Satyaki Das  <satyakid@stanford.edu>
3468         * mh-gnus.el: New file that won't be byte-compiled. From now on
3469         having different Gnus versions at run-time and compile-time won't
3470         cause errors in MH-E.
3472         * mh-mime.el (mh-small-show-buffer-p, mh-display-smileys)
3473         (mh-display-emphasis): Handle all legal values of
3474         font-lock-maximum-size. The existing code assumed didn't consider
3475         the case where it could be an alist.
3476         (mh-small-image-p): Simplified, so that aliasing XEmacs functions
3477         in Emacs isn't necessary any more.
3478         (mh-mm-display-part): Remove unnecessary call to fboundp. The
3479         mh-funcall-if-exists does that for us any way.
3480         (mh-defun-compat, gnus-local-map-property, mm-merge-handles)
3481         (mm-set-handle-multipart-parameter, mm-readable-p)
3482         (mm-long-lines-p, mm-keep-viewer-alive-p, mm-destroy-parts)
3483         (mh-mm-save-part, mm-handle-multipart-ctl-parameter): These
3484         compatibility functions have been moved to mh-gnus.el.
3486         * Makefile (MH-E-SRC): Add mh-gnus.el.
3488         * mh-seq.el (mh-narrow-to-header-field)
3489         (mh-current-message-header-field): Checkdoc fixes.
3491         * mh-e.el (mh-undefine-sequence): Since mh-coalesce-msg-list
3492         returns a list, apply is needed.
3494 2003-05-09  Noel Cragg  <noel@red-bean.com> (tiny change)
3496         * mh-junk.el (mh-spamassassin-blacklist): Separate "--local" and
3497         "--no-rebuild" arguments to call-process.
3498         [Patch committed by satyaki]
3500 2003-05-08  Satyaki Das  <satyakid@stanford.edu>
3502         * mh-seq.el (mh-translate-range): Take into account differnt
3503         semantics of split-string in Emacs and XEmacs.
3504         (mh-read-pick-regexp, mh-narrow-to-from, mh-narrow-to-cc)
3505         (mh-narrow-to-to, mh-narrow-to-header-field)
3506         (mh-current-message-header-field, mh-narrow-to-range): New
3507         narrowing functions that can select messages based on different
3508         message headers.
3510         * mh-utils.el (mh-show-limit-map): Add new narrowing functions
3511         callable from the show buffer.
3513         * mh-e.el (mh-help-messages): Add help text for new functions.
3514         (mh-limit-map): Add new narrowing functions (closes SF #732823).
3516 2003-05-07  Satyaki Das  <satyakid@stanford.edu>
3518         * mh-utils.el (mh-collect-folder-names): Use mh-exec-daemon to
3519         run flists. This means we don't have to remember to expand the MH
3520         executable in the mh-progs path.
3521         (mh-exec-cmd-daemon): Return the new process object produced.
3523 2003-05-06  Satyaki Das  <satyakid@stanford.edu>
3525         * mh-e.el (mh-folder-font-lock-unseen): Use mh-seq-list to do
3526         unseen sequence highlighting instead of reading the .mh_sequences
3527         file from disk every time.
3529 2003-05-05  Satyaki Das  <satyakid@stanford.edu>
3531         * mh-utils.el (mh-show-sequence-map): Add key binding for S'
3532         (closes SF #732825).
3534         * mh-e.el (mh-sequence-map): Ditto.
3535         (mh-help-messages): Updated for S'.
3537 2003-05-04  Satyaki Das  <satyakid@stanford.edu>
3539         * mh-index.el (mh-index-write-data): The with-temp-buffer macro
3540         is a bit better than write-file, so use that instead.
3542 2003-05-03  Satyaki Das  <satyakid@stanford.edu>
3544         * mh-index.el (mh-index-update-maps, mh-index-search)
3545         (mh-index-sequenced-messages): Write index data to disk. This
3546         allows us to recover index folder information if Emacs is
3547         restarted, or the index folder is visited after the buffer has
3548         been killed (closes SF #701762).
3549         (mh-index-write-data, mh-index-read-data)
3550         (mh-index-write-hashtable, mh-index-read-hashtable): Functions to
3551         store and read index data information to disk.
3552         (mh-index-insert-folder-headers, mh-index-group-by-folder): We
3553         can no longer use object identity to compare strings, since they
3554         might have been read back from disk.
3556         * mh-e.el (mh-index-data-file): New variable that stores the name
3557         of the file that keeps track of index folder data.
3558         (mh-make-folder): Read index folder data if available.
3560         * mh-utils.el (mh-show, mh-summary-height, mh-modify): Make
3561         checkdoc happy.
3563         * mh-seq.el (mh-tick-add-overlay): Rearrange code to make code
3564         more uniform.
3566         * mh-loaddefs.el: Regenerated.
3568 2003-05-02  Satyaki Das  <satyakid@stanford.edu>
3570         * mh-seq.el (mh-tick-add-overlay): If a message with a short scan
3571         line is ticked, then the highlighting didn't extend to the right
3572         margin. This change fixes that.
3574 2003-05-01  Bill Wohler  <wohler@newt.com>
3576         * mh-e.el (mh-help-messages): Added brackets around / and
3577         downcased limit to be consistent with other commands with
3578         punctuation keybindings. Don't document aliases.
3580 2003-05-01  Satyaki Das  <satyakid@stanford.edu>
3582         * mh-loaddefs.el: Regenerated.
3584         * mh-seq.el (mh-read-range): Fix comment.
3586 2003-04-30  Mark D. Baushke  <mdb@gnu.org>
3588         * mh-e.el (mh-help-messages): Better documentation for the F map.
3590 2003-04-30  Satyaki Das  <satyakid@stanford.edu>
3592         * mh-utils.el (mh-find-path): Cache folder names so that
3593         folder name completion is always fast.
3594         (mh-flists-partial-line, mh-flists-process): Variables used for
3595         pre-caching folder names.
3596         (mh-collect-folder-names, mh-collect-folder-names-filter)
3597         (mh-populate-sub-folders-cache): Functions to pre-cache folder
3598         names.
3599         (mh-exec-cmd): Produce more info in *MH-E Log*.
3601         * mh-index.el (mh-index-search): Call the correct function.
3602         (mh-index-sequenced-messages): If folders is nil, then all mail
3603         is searched. The change restores that.
3605 2003-04-30  Peter S Galbraith  <psg@debian.org>
3607         * mh-customize.el (mh-summary-height): Move variable integer out
3608         of defcustom, and instead specify that `nil' means to calculate
3609         that size dynamically.  Fixes SF #723267.
3611         * mh-utils.el (mh-summary-height): New function. Return ideal
3612         mh-summary-height value for current frame height.
3613         (mh-show-msg): Use it.
3615 2003-04-30  Mark D. Baushke  <mdb@gnu.org>
3617         * mh-index.el (mh-index-ticked-messages): Fix prompt and
3618         description string.
3619         (mh-index-new-messages): Ditto.
3621         * mh-loaddefs.el: Regenerated.
3623         * mh-index.el (mh-index-sequenced-messages): Renamed from
3624         mh-index-new-messages with minor argument change.
3625         (mh-index-new-messages): Implement by calling
3626         mh-index-sequenced-messages with the appropriate arguments.
3627         (mh-index-ticked-messages): New function. Does the same thing as
3628         mh-index-new-messages, but on its own set of folders and using the
3629         mh-tick-seq instead of mh-unseen-seq.
3631         * mh-e.el (mh-folder-map): Add "F'" to the map for
3632         mh-index-ticked-messages.
3633         (mh-help-messages): Replace broken [t]hread with [n]ew messages.
3635         * mh-customize.el (mh-index-ticked-messages-folders): New user
3636         customizable flag that controls the folders to be searched by
3637         mh-index-ticked-messages.
3639         * mh-utils.el (mh-show-index-ticked-messages): Wrapper for
3640         mh-index-ticked-messages.
3641         (mh-show-folder-map): Add "F'" to the map for
3642         mh-index-ticked-messages.
3644 2003-04-30  Satyaki Das  <satyakid@stanford.edu>
3646         * mh-index.el (mh-index-search): The old cur in the source folder
3647         might not exist. This could cause mh-exec-cmd to fail. So don't
3648         add an error message in that case.
3650 2003-04-29  Satyaki Das  <satyakid@stanford.edu>
3652         * mh-e.el (mh-folder-from-address): Modified to allow multiple
3653         Cc: headers to work properly.
3654         (mh-inc-folder, mh-visit-folder): Fix an off by one error.
3656         * mh-utils.el (mh-notate): Update the scan line map. This fixes a
3657         tiny bug. In threaded view, if a message is replied to then the
3658         message is notated with a "-". Now if inc is done then the "-"
3659         added is lost. The change fixes this.
3661         * mh-seq.el (mh-translate-range): Use the correct function.
3662         (mh-thread-update-scan-line-map): New function that updates the
3663         scan line map when a message is notated.
3665 2003-04-28  Satyaki Das  <satyakid@stanford.edu>
3667         * mh-index.el (mh-index-parse-search-regexp): Avoid compiler
3668         warning in GNU Emacs 21.3.
3670         * mh-seq.el (mh-widen): Ditto.
3672 2003-04-28  Satyaki Das  <satyakid@stanford.edu>
3674         * mh-customize.el (mh-interpret-number-as-range-flag): New user
3675         customizable flag that controls whether a single number, N is
3676         interpreted as the range last:N.
3678         * mh-seq.el (mh-read-range): Generalize it for use when reading
3679         range to scan.
3680         (mh-interactive-range): Modified to use the new mh-read-range.
3682         * mh-speed.el (mh-speed-view): Use mh-read-range instead of the
3683         now removed mh-read-msg-range function.
3685         * mh-funcs.el (mh-pack-folder): Ditto.
3687         * mh-e.el (mh-rescan-folder, mh-visit-folder): Ditto.
3688         (mh-read-msg-range): Removed.
3690         * mh-loaddefs.el: Regenerated
3692 2003-04-27  Satyaki Das  <satyakid@stanford.edu>
3694         * mh-loaddefs.el: Regenerated.
3696         * mh-seq.el (mh-range-completion-function): Fix checkdoc warning.
3697         (mh-iterate-on-range): Mention that the macro can iterate over a
3698         MH message range too.
3700 2003-04-27  Bill Wohler  <wohler@newt.com>
3702         * mh-unit.el (mh-unit): As it turns out, lm-crack-copyright has
3703         been updated to handle multiple-line copyrights in 21.3, so
3704         updated code to run lm-verify only if user has 21.3 or greater.
3705         Delete buffers after use, unless user already had buffer open.
3707 2003-04-27  Satyaki Das  <satyakid@stanford.edu>
3709         * mh-loaddefs.el: Regenerated.
3711         * mh-index.el (mh-index-search): The MH command "refile" changes
3712         cur. The change restores cur in source folders.
3713         (mh-index-new-messages): Use the appropriate arguments for
3714         mh-read-seq.
3716         * mh-seq.el (mh-read-seq-default, mh-read-seq): Restore these
3717         functions to just read sequence names.
3718         (mh-range-seq-names, mh-range-history, mh-range-completion-map)
3719         (mh-range-completion-function, mh-read-range): New function which
3720         reads MH range with completion and history.
3721         (mh-interactive-range): Use mh-read-range instead of
3722         mh-read-seq-default.
3723         (mh-put-msg-in-seq): Change documentation about MH message range.
3725         * mh-junk.el (mh-junk-blacklist, mh-junk-whitelist): Change
3726         documentation about MH message range.
3728         * mh-funcs.el (mh-copy-msg, mh-print-msg): Ditto.
3730         * mh-e.el (mh-delete-msg, mh-delete-msg-no-motion)
3731         (mh-refile-msg, mh-undo, mh-delete-msg-from-seq): Ditto.
3733         * mh-comp.el (mh-forward): Ditto.
3735 2003-04-26  Satyaki Das  <satyakid@stanford.edu>
3737         * mh-comp.el, mh-e.el, mh-funcs.el, mh-junk.el, mh-seq.el:
3738         Replace msg-or-seq with range everywhere.
3740         * mh-loaddefs.el: Regenerated.
3742 2003-04-25  Satyaki Das  <satyakid@stanford.edu>
3744         * mh-e.el (mh-index-sequence-search-flag, mh-folder-mode): New
3745         local variable to remember that a folder buffer contains results
3746         from a sequence search. This is needed so that "C-u F i" will work
3747         as expected.
3748         (mh-visit-folder): Create sequences in the index folder.
3749         (mh-process-commands, mh-delete-msg-from-seq): If speedbar is on
3750         then update the speedbar message counts immediately.
3751         (mh-delete-msg-from-seq): Make the code faster by calling "mark"
3752         just once. Also update source folder sequence if messages are
3753         being deleted from a sequence in an index folder.
3754         (mh-undefine-sequence): Simplified to remove the speedbar updating
3755         code. Also DTRT and don't change any sequence when called with an
3756         empty list of messages.
3757         (mh-refile-msg, mh-delete-msg): Move to next message only if the
3758         current message has been deleted or refiled, as the case may be.
3760         * mh-utils.el (mh-show-msg): Update the message counts in the
3761         speedbar, if it is on, immediately.
3762         (mh-speed-flists-active-p, mh-speed-flists-inhibit-flag): A new
3763         flag has been added which inhibits updating of the speedbar. This
3764         is used to avoid needless speedbar updates when
3765         mh-execute-commands is called in index folders.
3767         * mh-speed.el (mh-speed-flists): Extended so that multiple
3768         folders can be given as arguments. Also the code that kept track
3769         of the current folder, needed since flists adds an extra ?+ char
3770         at the end of the current folder name, wasn't entirely correct.
3771         That has also been fixed.
3773         * mh-seq.el (mh-delete-seq, mh-put-msg-in-seq): Modified so that
3774         sequence in source folder is updated if we delete a sequence in an
3775         index folder.
3776         (mh-read-seq, mh-read-seq-default, mh-translate-range)
3777         (mh-interactive-msg-or-seq): The mh-interactive-msg-or-seq
3778         function can read in an arbitrary MH message range.
3779         (mh-iterate-on-msg-or-seq): The macro has been extended to work on
3780         a MH range.
3781         (mh-subject-to-sequence, mh-subject-to-sequence-unthreaded)
3782         (mh-subject-to-sequence-threaded, mh-thread-find-msg-subject): Fix
3783         the mh-subject-to-sequence function so that it will work in
3784         threaded folders too.
3785         (mh-tick-add-overlay): Fix a leak of overlays.
3786         (mh-toggle-tick): Ticking, or unticking, messages in the index
3787         folder is propagated to the source folders (closes SF #709664).
3789         * mh-index.el (mh-flists-results-folder, mh-flists-sequence)
3790         (mh-flists-called-flag): New variables to implement searching for
3791         arbitrary sequences.
3792         (mh-index-generate-pretty-name): Updated so that folder names are
3793         generated for flists search that can take any sequence name.
3794         (mh-index-search): Since sequences are now properly maintained the
3795         unseen-flag argument isn't needed and hence removed. Also redoing
3796         a sequence search with "C-u F i" is handled correctly. Finally
3797         the speedbar is updated to reflect the new index folder created.
3798         (mh-index-create-sequences): New function that creates sequences
3799         in the index folder.
3800         (mh-index-matching-source-msgs, mh-index-execute-commands):
3801         Improved so that scan lines for refiled/deleted messages are
3802         removed from the source folders as well.
3803         (mh-index-add-to-sequence, mh-index-delete-from-sequence): New
3804         functions to update sequences in source folder to reflect changes
3805         in index folder.
3806         (mh-index-quote-for-shell): A utility function to that quotes
3807         characters with special meaning to /bin/sh.
3808         (mh-flists-execute, mh-index-new-messages): Updated to search for
3809         arbitrary sequences (closes SF #718833).
3811         * mh-loaddefs.el: Regenerated.
3813 2003-04-25  Bill Wohler  <wohler@newt.com>
3815         * mh-customize.el (mh-kill-folder-suppress-prompt-hook): New hook
3816         used by mh-kill-folder to suppress the prompt.
3818         * mh-funcs.el (mh-kill-folder): Suppress prompt not if
3819         mh-index-data is non-nil, but if any functions in
3820         mh-kill-folder-suppress-prompt-hook return non-nil.
3822         * mh-index.el (mh-index-p): New function with returns non-nil if
3823         the current folder was generated by an index search for use by
3824         mh-kill-folder-suppress-prompt-hook
3826         * mh-unit.el (mh-unit): Commented out lm-verify step until code
3827         updated to handle split Copyright lines.
3829         * mh-e.el (mh-version): Set to 7.3+cvs.
3831 2003-04-24  Bill Wohler  <wohler@newt.com>
3833         Released MH-E version 7.3.
3835         * MH-E-NEWS, README: Updated for release 7.3.
3837         * mh-e.el (Version, mh-version): Updated for release 7.3.
3839 2003-04-24  Satyaki Das  <satyakid@stanford.edu>
3841         * mh-xemacs-compat.el (mh-utils): Require mh-utils at compile
3842         time, since the mh-do-in-xemacs macro is used.
3844         * mh-inc.el (cl): Require cl at compile time since we are using
3845         the loop and setf macros.
3847 2003-04-24  Satyaki Das  <satyakid@stanford.edu>
3849         * mh-unit.el (mh-files): Fix the list of files to check.
3851 2003-04-24  Bill Wohler  <wohler@newt.com>
3853         * ChangeLog: Appended copyright to end of file.
3855         * Makefile: Added copyright and license.
3857         * README: Added copyright.
3859         * import-emacs: Changed copyright from Newt Software to Bill
3860         Wohler and use license from mh-e.el, except that this file is
3861         a part of MH-E, not GNU Emacs.
3863         * mh-alias.el: Updated copyright so that it doesn't wrap upon
3864         advice from Richard Stallman who said to use two-digit years when
3865         they are surrounded by 4-digit years that are in the same century
3866         and to break up copyrights on multiple lines.
3867         * mh-comp.el: Ditto.
3868         * mh-e.el: Ditto.
3869         * mh-funcs.el: Ditto.
3870         * mh-identity.el: Ditto.
3871         * mh-mime.el: Ditto.
3872         * mh-seq.el: Ditto.
3873         * mh-utils.el: Ditto.
3874         * mh-xemacs-compat.el: Ditto.
3876         * mh-unit.el: New file. Unit tests for MH-E. This version merely
3877         runs checkdoc and lm-verify which is useful before releasing the
3878         software. It can and should be expanded to do real unit tests.
3880 2003-04-22  Mark D Baushke  <mdb@gnu.org>
3882         * mh-alias.el: Update Copyright.
3883         * mh-comp.el: Ditto.
3884         * mh-customize.el: Ditto.
3885         * mh-e.el: Ditto.
3886         * mh-funcs.el: Ditto.
3887         * mh-identity.el: Ditto.
3888         * mh-index.el: Ditto.
3889         * mh-mime.el: Ditto.
3890         * mh-pick.el: Ditto.
3891         * mh-seq.el: Ditto.
3892         * mh-speed.el: Ditto.
3893         * mh-utils.el: Ditto.
3894         * mh-xemacs-compat.el: Ditto.
3896 2003-04-22  Satyaki Das  <satyaki@theforce.stanford.edu>
3898         * mh-utils.el (mh-normalize-folder-name): Make the completion
3899         code work properly with XEmacs. This change is neeeded since
3900         split-string behaves differently in XEmacs than it does in GNU
3901         Emacs.
3902         (mh-exec-cmd-error): Add a comment, so that we change it later on.
3904 2003-04-18  Steve Youngs  <youngs@xemacs.org>
3906         * mh-xemacs-icons.el (mh-xemacs-icons): Provide 'mh-xemacs-icons'
3907         not 'mh-xemacs-toolbar'.
3909         * mh-xemacs-compat.el (mh-xemacs-toolbar): Remove require, it's
3910         now called 'mh-xemacs-icons' and it is required from
3911         'mh-customize'.
3913         * mh-customize.el: Require 'mh-xemacs-icons' instead of
3914         'mh-xemacs-toolbar'.
3916 2003-04-17  Peter S Galbraith  <psg@debian.org>
3918         * mh-xemacs-icons.el: New file (renamed from mh-xemacs-toolbar.el).
3919         Holds XEmacs icons.
3921         * mh-xemacs-toolbar.el: Deleted.
3923         * Makefile: Incorporate the file renaming.
3925 2003-04-15  Bill Wohler  <wohler@newt.com>
3927         * mh-comp.el (mh-forward): Pass a list of messages into
3928         mh-compose-and-send-mail instead of msg-or-seq.
3929         (mh-annotate-msg): The previous version called
3930         mh-iterate-on-msg-or-seq in the letter buffer. The new version
3931         simply adds the ability to operate on message lists. Thanks to
3932         Satyaki for the fix and suggestion for passing a list from
3933         mh-forward.
3935 2003-04-14  Bill Wohler  <wohler@newt.com>
3937         * mh-comp.el (mh-annotate-msg): Updated to handle msg-or-seq for
3938         mh-forward was passing a msg-or-seq to mh-compose-and-send-mail
3939         which in turn passed the msg-or-seq to mh-annotate-msg. In
3940         particular, forwarding a region failed. Note that the msgs
3941         argument in much of mh-comp.el should really be converted to
3942         msg-or-seq accordingly. But not now, unless something is broken as
3943         was the case here. We can revamp after the release.
3945 2003-04-13  Bill Wohler  <wohler@newt.com>
3947         * mh-funcs.el (mh-kill-folder): Added space after prompt to give
3948         the (yes or no) bit a little elbow room.
3950         * mh-xemacs-toolbar.el: Removing a copyright is a no-no.
3951         Reinstated Steve's copyright.
3953 2003-04-12  Satyaki Das  <satyaki@theforce.stanford.edu>
3955         * mh-utils.el (mh-do-in-gnu-emacs, mh-do-in-xemacs): Add
3956         indentation hooks for the macros.
3958 2003-04-11  Bill Wohler  <wohler@newt.com>
3960         * mh-alias.el, mh-comp.el, mh-customize.el, mh-funcs.el,
3961         mh-identity.el, mh-inc.el, mh-index.el, mh-junk.el, mh-utils.el:
3962         Merged in changes from CVS GNU Emacs. These included the removal
3963         of trailing whitespace.
3965         * mh-customize.el: The "anti-entropy" check-in. Moved groups
3966         around slightly to reflect commentary. Moved defcustoms around
3967         to preserve alphabetization. Big diff, little content.
3968         (mh-xemacs-use-toolbar-flag): Doc fix.
3969         (mh-xemacs-toolbar-position): Fixed typo in docstring.
3970         (mh-default-folder-list): Updated docstring to reflect new Check
3971         Recipient tag. Also, set type of Address to regexp.
3972         (mh-x-mailer-string): Moved to mh-comp.el where it is used.
3974         * mh-comp.el (mh-x-mailer-string): Moved here from customize.el.
3975         Not quite sure how it got to mh-customize.el in the first place.
3977         * mh-e.el (mh-folder-folder-menu): Added Folder -> View New
3978         Messages menu item.
3980         * mh-utils.el (mh-show-folder-menu): Ditto.
3982         * mh-inc.el: Added Change Log comment (lm-verify fix).
3984         * mh-index.el (mh-index-search): Added documentation about prefix
3985         argument for users, in addition to documentation for programmers.
3987         * mh-mime.el (mh-edit-mhn, mh-edit-mhn, mh-mml-to-mime): Docstring
3988         fixes germaine to the change whereby we now check for MIME
3989         directives before sending.
3991         * mh-xemacs-toolbar.el: Fixed copyright. Added Change Log comment
3992         (lm-verify fix). Added standard MH-E local variables. Removed
3993         time-stamp stuff.
3995 2003-04-11  Satyaki Das  <satyaki@theforce.stanford.edu>
3997         * mh-seq.el (mh-iterate-on-msg-or-seq): Add a missed comma.
3999 2003-04-10  Satyaki Das  <satyaki@theforce.stanford.edu>
4001         * mh-index.el (mh-index-visit-folder): Prompt before reusing
4002         existing folder buffer.
4004         * mh-xemacs-toolbar.el (require): Require mh-utils at compile
4005         time to avoid compilation error when doing "make bootstrap" in
4006         CVS Emacs.
4008         * mh-inc.el (mh-inc-spool-list): Declare it so that a compile
4009         time warning is avoided when doing "make bootstrap" in CVS Emacs.
4011 2003-04-10  Peter S Galbraith  <psg@debian.org>
4013         * mh-inc.el (mh-inc-spool-generator): Changed to a defun instead
4014         of a defmacro, applying Satyaki's patch.
4015         (mh-inc-spool-def-key): same.
4016         (mh-inc-spool-make): same.
4018         * mh-utils.el: define-key "I" in mh-show-mode-map for
4019         mh-inc-spool-map.
4021         * mh-comp.el (mh-modify-header-field): Remove debug message.
4023 2003-04-10  Peter S Galbraith  <psg@debian.org>
4025         * mh-inc.el (mh-inc-spool-map-help): Default to nil.
4026         (mh-inc-spool-map): Make "?" key display message when
4027         `mh-inc-spool-map-help' is nil (instead of mh-inc-spool-map-help
4028         containing the message).
4030         * mh-e.el: require mh-inc.el
4031         * mh-e.el: define-key "I" in mh-folder-mode-map for mh-inc-spool-map.
4032         (mh-help-messages): Add help string for "I" key.
4034 2003-04-09  Peter S Galbraith  <psg@debian.org>
4036         * mh-inc.el: New file. New feature to `inc' mail from various
4037         spool files into different folders.
4039         * mh-loaddefs.el: Regenerate for mh-inc's mh-inc-spool-list-set.
4041         * Makefile (MH-E-IMG): Add highlight icon.
4042         (MH-E-SRC): Add mh-inc.el file.
4044         * mh-customize.el (mh-inc-spool-list): New variable for new
4045         feature to `inc' mail from various spool files into different
4046         folders.
4048 2003-04-09  Satyaki Das  <satyaki@theforce.stanford.edu>
4050         * mh-utils.el (mh-mail-delivery-buffer): Add a defconst for
4051         mh-mail-delivery-buffer.
4053         * mh-comp.el (mh-send-letter): Use mh-mail-delivery-buffer.
4055         * mh-mime.el (mh-small-image-p): Add mh-funcall-if-exists to
4056         avoid compiler warning in GNU Emacs.
4058 2003-04-08  Satyaki Das  <satyaki@theforce.stanford.edu>
4060         * mh-mime.el (mh-small-image-p): Make the function slightly more
4061         error-resistant in XEmacs.
4063         * mh-seq.el (mh-narrow-to-seq, mh-widen): Update tool-bar-map in
4064         the show buffer if needed. This allows us to display the widen
4065         button in the show buffer only when the folder is narrowed.
4067         * mh-customize.el (mh-tool-bar-define): Changed so that a
4068         separate tool-bar-map is used in show-mode when folder is
4069         narrowed to a sequence.
4071 2003-04-08  Satyaki Das  <satyaki@theforce.stanford.edu>
4073         * mh-seq.el (mh-iterate-on-msg-or-seq): Reinstate the use of
4074         make-symbol since using gensym causes compiler warnings in CVS
4075         Emacs.
4077 2003-04-08  Bill Wohler  <wohler@newt.com>
4079         * mh-comp.el (mh-forward): Function didn't handle a region of
4080         messages. Use new function mh-msg-or-seq-to-msg-list to get a list
4081         of messages in all circumstances. Also, use mh-coalesce-msg-list
4082         on message list before submitting to forw since this should always
4083         be done when calling a program to reduce the chance of exceeding
4084         command-line limits.
4086         * mh-seq.el (mh-iterate-on-msg-or-seq): Backed out previous
4087         change. A nil msg-or-seq should mean no messages, and Satyaki is
4088         going to use gensym instead of make-symbol.
4089         (mh-msg-or-seq-to-msg-list): New function to convert a msg-or-seq
4090         to a list of message numbers.
4092         * mh-e.el (mh-coalesce-msg-list): Touched up the docstring a
4093         little.
4095         * mh-funcs.el (mh-print-msg): Can now print regions, message
4096         lists, sequences and, of course, single messages. This version
4097         works a little differently from the old version. Instead of
4098         calling mhl | lpr once on all messages, mhl | lpr is called once
4099         per message in order to put each message's number in the header.
4100         Thanks to Satyaki for some code and ideas.
4102         * mh-seq.el (mh-iterate-on-msg-or-seq): The argument msg-or-seq
4103         can now be nil which means the current message. Make local symbols
4104         so that local variables don't step on user's symbols (the msgs
4105         symbol got me).
4107 2003-04-06  Bill Wohler  <wohler@newt.com>
4109         * mh-comp.el (mh-forward):  Updated docstrings to indicate that a
4110         list of messages is acceptable as well.
4112         * mh-e.el (mh-delete-msg, mh-delete-msg-no-motion, mh-refile-msg)
4113         (mh-undo, mh-notate-user-sequences, mh-delete-msg-from-seq): Ditto.
4115         * mh-funcs.el (mh-copy-msg, mh-print-msg): Ditto.
4117         * mh-junk.el (mh-junk-blacklist, mh-junk-whitelist): Ditto.
4119         * mh-seq.el (mh-put-msg-in-seq, mh-iterate-on-msg-or-seq)
4120         (mh-interactive-msg-or-seq): Ditto.
4122 2003-04-06  Satyaki Das  <satyaki@theforce.stanford.edu>
4124         * mh-junk.el (mh-junk-blacklist, mh-junk-whitelist): Call
4125         mh-refile-a-msg and mh-delete-a-msg with nil as the message
4126         number since that is more efficient.
4128         * mh-seq.el (mh-iterate-on-msg-or-seq): Extended so that it will
4129         handle lists of messages numbers as well.
4130         (mh-put-msg-in-seq): Use mh-iterate-on-msg-or-seq to simplify the
4131         function.
4133         * mh-funcs.el (mh-copy-msg): Same as above.
4135         * mh-e.el (mh-refile-msg): Make it more efficient. Using nil in
4136         mh-refile-a-msg avoids needing to re-search-forward to that
4137         message.
4138         (mh-undo): Fix typo in interactive spec.
4139         (mh-notate-user-sequences): Generalize the function to take a
4140         msg-or-seq as argument.
4141         (mh-delete-msg-from-seq): Extend the function so that it is now
4142         able to subtract messages belonging in one sequence from another.
4143         (mh-undo): Unify the region and sequence handling. The message
4144         number branch of the function does extra stuff, so we can't merge
4145         that in.
4147 2003-04-06  Bill Wohler  <wohler@newt.com>
4149         * mh-comp.el (mh-forward): Use mh-interactive-msg-or-seq. Inserted
4150         consistent verbiage in docstring for msg-or-seq.
4151         (mh-reply): Don't mention default in opening line in all
4152         docstrings.
4154         * mh-e.el (mh-delete-msg, mh-refile-msg)
4155         (mh-undo, mh-delete-msg-from-seq): Use mh-interactive-msg-or-seq.
4156         Inserted consistent verbiage in docstring for msg-or-seq. In
4157         mh-delete-msg-from-seq, renamed msg-or-region to msg-or-seq.
4159         * mh-funcs.el (mh-copy-msg, mh-print-msg): Use
4160         mh-interactive-msg-or-seq. Inserted consistent verbiage in
4161         docstring for msg-or-seq.
4163         * mh-junk.el (mh-junk-blacklist, mh-junk-whitelist): Inserted
4164         consistent verbiage in docstring for msg-or-seq.
4166         * mh-seq.el (mh-msg-is-in-seq): Don't mention default in opening
4167         line in all docstrings.
4168         (mh-put-msg-in-seq): Use mh-interactive-msg-or-seq. Inserted
4169         consistent verbiage in docstring for msg-or-seq.
4171         * mh-e.el (mh-delete-msg, mh-delete-msg-no-motion, mh-refile-msg):
4172         Rewritten to use new mh-interactive-msg-or-seq function and
4173         mh-iterate-on-msg-or-seq macro. mh-delete-msg-no-motion gained the
4174         ability to operate on regions.
4176         * mh-junk.el (mh-junk-blacklist, mh-junk-whitelist): Rewritten to
4177         use new mh-interactive-msg-or-seq function and
4178         mh-iterate-on-msg-or-seq macro thereby gaining the ability to
4179         operate on sequences or regions.
4181         * mh-seq.el (mh-iterate-on-msg-or-seq): New macro to execute code
4182         on a message, a region of messages, or a sequence. This macro
4183         should be in all functions that operate on messages to provide a
4184         uniform interface.
4185         (mh-interactive-msg-or-seq): New function used in interactive
4186         calls to obtain a message number, region, or sequence. This
4187         function should be in all functions that operate on messages to
4188         provide a uniform interface.
4190         * mh-utils.el (with-mh-folder-updating, mh-in-show-buffer): Use
4191         'defun lisp-indent-hook property instead of 1 to fix indentation
4192         of these macros.
4194 2003-04-05  Peter S Galbraith  <psg@debian.org>
4196         * mh-loaddefs.el: Regenerated.
4197         * mh-funcs.el (mh-ephem-message): autoload.
4199 2003-04-04  Peter S Galbraith  <psg@debian.org>
4201         * mh-e.el (mh-folder-from-address):  Minor Fix.  Wrong ending of
4202         `when' block.
4204 2003-04-04  Satyaki Das  <satyaki@theforce.stanford.edu>
4206         * mh-mime.el (mh-mml-directive-present-p): The regexp has been
4207         modified to recognize directives to encrypt/sign messages.
4209 2003-04-03  Mark D. Baushke  <mdb@gnu.org>
4211         * mh-e.el (mh-folder-from-address): E-mail messages missing the
4212         To: field, but which have a Cc: field should also be handled.
4214 2003-04-03  Bill Wohler  <wohler@newt.com>
4216         * mh-e.el (mh-inc-folder): Modified the prompt text to read
4217         better.
4219         * mh-comp.el (mh-forward): Deleted local variable `compose'.
4220         Deleted obsolete setting of mh-{mmh|mml}-compose-insert-flag.
4221         (mh-letter-menu): Use mh-{mmh|mml}-directive-present-p instead of
4222         obsolete. mh-{mmh|mml}-compose-insert-flag.
4223         (mh-letter-mode): Deleted obsolete setting of
4224         mh-{mmh|mml}-compose-insert-flag.
4225         (mh-send-letter): This function now automatically runs the
4226         directive-to-MIME conversion if any directives are detected,
4227         rather than relying on the unreliable
4228         mh-{mmh|mml}-compose-insert-flag variables. Updated docstring
4229         accordingly.
4231         * mh-identity.el (mh-insert-identity): Use
4232         mh-{mmh|mml}-directive-present-p instead of obsolete.
4233         mh-{mmh|mml}-compose-insert-flag.
4235         * mh-loaddefs.el: Regenerated.
4237         * mh-mime.el (mh-mhn-compose-type, mh-mhn-compose-external-type)
4238         (mh-mhn-compose-forw, mh-edit-mhn, mh-mml-to-mime)
4239         (mh-mml-forward-message, mh-mml-attach-file)
4240         (mh-mml-secure-message-sign-pgpmime)
4241         (mh-mml-secure-message-encrypt-pgpmime): Deleted obsolete setting
4242         of mh-{mmh|mml}-compose-insert-flag.
4243         (mh-mml-directive-present-p): Checkdoc fix.
4245         * mh-utils.el (mh-mhn-compose-insert-flag,
4246         mh-mml-compose-insert-flag): Deleted. Replaced by
4247         mh-{mhn|mml}-directive-present-p.
4249 2003-04-03  Mark D. Baushke  <mdb@gnu.org>
4251         * mh-e.el (mh-folder-from-address): Fix minor problem with To:
4252         address processing.
4254         * mh-e.el (mh-folder-from-address): Bugfix match ?+ character not
4255         a "?+" string.
4257 2003-04-03  Peter S Galbraith  <psg@debian.org>
4259         * mh-e.el (mh-inc-folder): Add second optional argument for the
4260         folder to inc new mail into instead of mh-inbox.
4262 2003-04-03  Peter S Galbraith  <psg@debian.org>
4264         * mh-e.el (mh-folder-from-address): The first match found in
4265         `mh-default-folder-list' is used.
4267         * mh-customize.el (mh-default-folder-list): Tweak docs
4269 2003-04-03  Satyaki Das  <satyaki@theforce.stanford.edu>
4271         * mh-loaddefs.el: Regenerated.
4273         * mh-mime.el (mh-mhn-directive-present-p): New function to test if
4274         a MHN directive is present in the current buffer.
4275         (mh-mml-directive-present-p): New function to test if a MML
4276         directive is present in the current buffer.
4278         * mh-comp.el (mh-letter-mode): Originally this function checked if
4279         a #forw directive was present and set mh-mhn-compose-insert-flag
4280         to t. The modification generalizes this test so that one of the
4281         variables mh-{mml|mhn}-compose-insert-flag will get set if we have
4282         any sort of MHN or MML directive is already present.
4284         * mh-seq.el (tool-bar-map): Add a defvar to avoid compiler
4285         warnings in CVS version of GNU Emacs.
4287         * mh-utils.el (tool-bar-map): Same as above.
4289         * mh-e.el (tool-bar-map): same as above.
4291 2003-04-02  Satyaki Das  <satyaki@theforce.stanford.edu>
4293         * mh-xemacs-toolbar.el (mh-xemacs-toolbar-toggle-tick-icon):
4294         Change color to match mh-folder-tick-face.
4296         * highlight.xpm: Same as above.
4298 2003-04-02  Peter S Galbraith  <psg@debian.org>
4300         * mh-e.el (mh-folder-from-address): Check `mh-default-folder-list'
4301         for cases against the recipient instead of the originator.
4303         * mh-customize.el (mh-default-folder-list): Add extra boolean flag
4304         to conditionally check the recipient address instead of the
4305         originator.
4307 2003-04-02  Peter S Galbraith  <psg@debian.org>
4309         * mh-customize.el (mh-folder-tick-face): Change tick highlight
4310         face to a background yellow-green, as suggested by Bill.
4312 2003-04-01  Peter S Galbraith  <psg@debian.org>
4314         * highlight.xpm: New icon for mh-toggle-tick.
4316         * mh-xemacs-toolbar.el (mh-xemacs-icon-map): Add tool-bar entry
4317         for mh-toggle-tick.
4318         (mh-xemacs-toolbar-toggle-tick-icon): New constant.
4320         * mh-customize.el: Add tool-bar entry for mh-toggle-tick.
4322 2003-03-31  Satyaki Das  <satyaki@theforce.stanford.edu>
4324         * mh-loaddefs.el: Regenerated.
4326         * mh-utils.el (mh-show-narrow-to-tick, mh-show-limit-map)
4327         (mh-show-sequence-menu): Add new interactive function
4328         mh-show-narrow-to-tick callable from the show buffer and arrange
4329         for a key binding and a menu entry.
4331         * mh-seq.el (mh-narrow-to-tick): New interactive function that
4332         narrows to the tick sequence.
4334         * mh-e.el (mh-folder-sequence-menu, mh-limit-map): Arrange for a
4335         key binding and a menu entry for mh-narrow-to-tick.
4337         * mh-comp.el (mh-letter-mode): Enable undo since we could be
4338         reusing a show buffer where undo is disabled (closes SF #712777).
4340 2003-03-31  Peter S Galbraith  <psg@debian.org>
4342         * mh-e.el (mh-folder-sequence-menu): Add entry for mh-toggle-tick.
4344         * mh-utils.el (mh-show-sequence-menu): Add entry for
4345         mh-show-toggle-tick.
4347 2003-03-28  Satyaki Das  <satyaki@theforce.stanford.edu>
4349         * mh-seq.el (mh-delete-seq): If the tick sequence is killed with
4350         "S k" then the highlighting wasn't getting removed. The change
4351         fixes this.
4353 2003-03-27  Satyaki Das  <satyaki@theforce.stanford.edu>
4355         * mh-e.el (mh-notate-user-sequences): Extend it so that only the
4356         messages in a part of the folder are notated.
4357         (mh-delete-msg-from-seq): Extend it so that it will delete all
4358         messages in the marked region.
4359         (mh-delete-a-msg-from-seq): New function that deletes a single
4360         message from a sequence.
4361         (mh-clear-text-properties): If there is a ticked unseen message
4362         and the message is removed from the unseen list with "S d" then
4363         unticking the message doesn't change the highlight. This change
4364         fixes this.
4366 2003-03-27  Peter S Galbraith  <psg@debian.org>
4368         * mh-xemacs-toolbar.el (mh-xemacs-toolbar-*-icon): Use original
4369         24x24 icons, changing background only.
4371 2003-03-27  Satyaki Das  <satyaki@theforce.stanford.edu>
4373         * mh-junk.el (mh-spamassassin-identify-spammers): Remove unused
4374         variable buffer-exists.
4375         (mh-spamassassin-identify-spammers): Remove unused variable user.
4377         * mh-customize.el (mh-junk-choose): Tweak it to remove XEmacs
4378         compiler warning.
4380 2003-03-26  Satyaki Das  <satyaki@theforce.stanford.edu>
4382         * mh-seq.el (mh-thread-print-scan-lines): Handling of a boundary
4383         condition when messages from the last source folder had been
4384         removed was incorrect. This caused a folder header to appear
4385         without any messages listed under it. This change fixes this.
4386         (mh-thread-forget-message): Remove the entry from the scan line
4387         table as well. This is needed for proper display of threaded view
4388         of index folders.
4390 2003-03-26  Bill Wohler  <wohler@newt.com>
4392         * Makefile, README, import-emacs, mh-alias.el, mh-comp.el,
4393         mh-customize.el, mh-e.el, mh-funcs.el, mh-identity.el,
4394         mh-index.el, mh-loaddefs.el, mh-mime.el, mh-pick.el, mh-seq.el,
4395         mh-speed.el, mh-utils.el, mh-xemacs-compat.el,
4396         mh-xemacs-toolbar.el: Removed RCS keywords per Emacs conventions
4397         (closes SF #680731).
4400 2003-03-26  Satyaki Das  <satyaki@theforce.stanford.edu>
4402         * mh-index.el: Fix commentary to mention that mairix is supported
4403         as well.
4405         * mh-loaddefs.el: Regenerated.
4407         * mh-utils.el (mh-show-junk-blacklist, mh-show-junk-whitelist):
4408         Interactive functions callable from the show buffer.
4409         (mh-show-junk-map): Key bindings in show mode.
4411         * mh-e.el (mh-junk-map): Key bindings to call spam program.
4412         (mh-help-messages): Update help text.
4414         * mh-customize.el (mh-junk): New customization group for spam
4415         program interface.
4416         (mh-junk-choice, mh-junk-function-alist, mh-junk-choose):
4417         Functions and variables that decide which junk program is used.
4418         (mh-junk-program, mh-junk-mail-folder): User customizable
4419         variables that control the choice of spam program and the action
4420         performed on received spam.
4422         * Makefile (MH-E-SRC): Add mh-junk.el.
4424 2003-03-26  Satyaki Das  <satyaki@theforce.stanford.edu>
4426         * mh-loaddefs.el: Regenerated.
4428         * mh-utils.el (mh-show-toggle-tick, mh-show-mode-map): New
4429         interactive function callable from the show buffer and a key
4430         binding for it.
4432         * mh-seq.el (mh-delete-seq): Remove highlight from tick sequence.
4433         (mh-put-msg-in-seq): Disable adding messages to tick sequence.
4434         (mh-widen): Reset mh-tick-seq-changed-when-narrowed-flag.
4435         (mh-tick-add-overlay, mh-tick-remove-overlay, mh-notate-tick)
4436         (mh-toggle-tick): New functions to highlight/unhighlight tick
4437         sequence and the interactive function that is used to toggle
4438         tick.
4440         * mh-e.el (mh-tick-seq-changed-when-narrowed-flag): New variable
4441         that remembers if we are narrowed to the tick sequence. In that
4442         case the highlighting isn't shown, since it adds no extra info.
4443         (mh-folder-mode): Initialize mh-tick-seq-changed-when-narrowed-flag.
4444         (mh-notate-user-sequences): Notate the tick sequence.
4445         (mh-internal-seq): Treat mh-tick-seq like an internal sequence.
4446         (mh-delete-msg-from-seq): Don't allow deletion from tick sequence.
4447         (mh-folder-mode-map): Add key binding for "'"
4449         * mh-customize.el (mh-tick-seq, mh-folder-tick-face): New
4450         customizable variables that contain the name of the tick sequence
4451         and the face to use to highlight it.
4453 2003-03-25  Satyaki Das  <satyaki@theforce.stanford.edu>
4455         * mh-loaddefs.el: Regenerated.
4457         * mh-seq.el (mh-thread-print-scan-lines): New function which
4458         prints out thread tree. It maintains the original folder info if
4459         the folder was created by index search (closes SF #709672).
4460         (mh-copy-seq-to-eob, mh-thread-inc, mh-thread-folder): Use
4461         factored out function mh-thread-print-scan-lines.
4462         (mh-toggle-threads): Since threading is allowed in index folders
4463         there can be lines in the folder which aren't valid message scan
4464         lines. So it is OK for mh-get-msg-num to fail once in a while.
4466         * mh-index.el (mh-index-update-maps): Make the parsing of messages
4467         that need to annotated with the X-MHE-Checksum header more robust.
4468         If the search yielded no results then an error was being produced.
4469         (mh-index-search): Enable automatic threading of index folders if
4470         mh-show-threads-flag is non-nil (closes SF #709667).
4471         (mh-index-next-folder): Relax error checking since index folder
4472         can be threaded while the source folder info is visible.
4473         (mh-index-group-by-folder): New function that is used in
4474         mh-thread-folder to keep source folder info visible during
4475         threading.
4477 2003-03-25  Bill Wohler  <wohler@newt.com>
4479         * mh-loaddefs.el: Regenerated.
4481         * mh-customize.el (mh-index-new-messages-folders): New variable
4482         that controls which folders "F n (mh-index-new-messages)"
4483         accesses. Was mh-flists-search-folders.
4485         * mh-index.el (mh-flists-search-folders): Still used internally,
4486         but users now use new option mh-index-new-messages-folders.
4487         Removed documentation since to avoid duplication with
4488         mh-index-new-messages-folders.
4489         (mh-flists-recursive-search-flag): Deleted. Use
4490         mh-recursive-folders-flag instead.
4491         (mh-flists-execute): Updated docs to specify which global
4492         variables are used. Use mh-recursive-folders-flag instead of
4493         mh-flists-recursive-search-flag.
4494         (mh-index-new-messages): Edited doc, and refer to new option
4495         mh-index-new-messages-folders. Ditto within code. Don't need to
4496         prepend + to folder name as flists does that for us. Use
4498 2003-03-24  Satyaki Das  <satyaki@theforce.stanford.edu>
4500         * mh-e.el (mh-refile-msg): Add optional argument that controls
4501         whether mh-last-destination-folder is updated or not.
4503 2003-03-22  Satyaki Das  <satyaki@theforce.stanford.edu>
4505         * mh-customize.el (mh-tool-bar-define): Fix a problem in the
4506         XEmacs version which caused the show mode toolbar to have the
4507         buttons in the reverse order. Also the add-hooks are no longer
4508         needed since mh-toolbar-init is called in the appropriate modes.
4510         * mh-comp.el (mh-letter-mode): Call mh-toolbar-init in XEmacs to
4511         initialize toolbar.
4513         * mh-utils.el (mh-show-mode): Same as above.
4515         * mh-e.el (mh-folder-mode): Same as above.
4517 2003-03-21  Satyaki Das  <satyaki@theforce.stanford.edu>
4519         * mh-utils.el (mh-exec-cmd-env-daemon): New function which
4520         executes a command asynchronously with its own environment.
4522         * mh-comp.el (mh-redistribute): The function has been modified so
4523         that /bin/sh isn't used to run send. It has also been refactored
4524         so that the same code isn't repeated.
4526 2003-03-21  Bill Wohler  <wohler@newt.com>
4528         * mh-customize.el (mh-invisible-header-fields): Added X-Bogosity
4529         for bogofilter.
4531 2003-03-21  Satyaki Das  <satyaki@theforce.stanford.edu>
4533         * mh-loaddefs.el: Regenerated.
4535         * mh-xemacs-toolbar.el: Remove the code since that gets generated
4536         when mh-tool-bar-define is expanded.
4537         (mh-xemacs-icon-map): A alist to map GNU Emacs icon names to the
4538         actual icons to be used in XEmacs. This is used in
4539         mh-tool-bar-define.
4541         * mh-customize.el (mh-toolbar): Use this group in XEmacs as well.
4542         (mh-tool-bar-item-*): All these constants have been removed since
4543         they aren't needed in the new scheme.
4544         (mh-tool-bar-reply-3-buttons-flag): This variable has been
4545         removed.
4546         (mh-tool-bar-search-function): This is now used in XEmacs as well.
4547         (mh-tool-bar-folder-set, mh-tool-bar-folder-buttons-set)
4548         (mh-tool-bar-letter-buttons-set, mh-tool-bar-show-set)
4549         (mh-tool-bar-letter-set): These functions aren't defined at the
4550         top level any more.
4551         (mh-tool-bar-reply-generator): A macro to generate the required
4552         functions for the three reply buttons.
4553         (mh-tool-bar-search, mh-tool-bar-customize)
4554         (mh-tool-bar-folder-help, mh-tool-bar-letter-help)
4555         (mh-tool-bar-reply-from, mh-show-tool-bar-reply-from)
4556         (mh-tool-bar-reply-to, mh-show-tool-bar-reply-to)
4557         (mh-tool-bar-reply-all, mh-show-tool-bar-reply-all): New
4558         interactive functions that are called when tool bar buttons are
4559         clicked.
4560         (mh-xemacs-use-toolbar-flag, mh-xemacs-toolbar-position):
4561         Additional customizable variables that are present only for
4562         XEmacs.
4563         (mh-tool-bar-define): A macro that generates the required code
4564         for GNU Emacs and XEmacs tool bar.
4565         (mh-tool-bar-define): Define the MH-E tool bar.
4567 2003-03-17  Satyaki Das  <satyaki@theforce.stanford.edu>
4569         * mh-seq.el (mh-notate-cur): Notate current message only if it
4570         hasn't been marked for deletion or refiling.
4572 2003-03-15  Bill Wohler  <wohler@newt.com>
4574         * mh-customize.el (mh-invisible-header-fields): Added
4575         X-Spam-Checker-Version.
4576         (mh-auto-fields-list): checkdoc fix.
4578 2003-03-12  Satyaki Das  <satyaki@theforce.stanford.edu>
4580         * mh-index.el (mh-index-new-messages): If the destination folder
4581         where the unseen messages are supposed to be copied to was
4582         already present, but MH-E doesn't have it open, then a new folder
4583         was being created. The change fixes this.
4584         (mh-index-update-unseen, mh-flists-recursive-search-flag): Fix
4585         checkdoc warnings.
4587         * mh-loaddefs.el: Regenerated.
4589 2003-03-11  Satyaki Das  <satyaki@theforce.stanford.edu>
4591         * mh-index.el (mh-flists-results-folder): Subfolder under
4592         +mhe-index where the results of the flists call is put.
4593         (mh-index-generate-pretty-name): Make sure that normal index
4594         searching will never use the folder reserved for the flists
4595         results.
4596         (mh-index-search): Add an extra parameter that marks all the
4597         messages in the index folder to the unseen sequence.
4598         (mh-index-update-unseen): Function to keep unseen sequence of
4599         index folder synced with the actual folders from where the
4600         messages were copied. This works only if the unseen messages are
4601         displayed with mh-show. Killing the unseen sequence in the index
4602         folder or adding/removing messages to it doesn't change the
4603         unseen sequence in the source folders yet.
4604         (mh-flists-search-folders): Variable that decides the folders on
4605         which flists is run.
4606         (mh-flists-recursive-search-flag): If non-nil, flists is passed
4607         the -recurse option.
4608         (mh-flists-execute): Function which uses /bin/sh to execute
4609         flists and then print out the list of message files that match.
4610         (mh-index-new-messages): New interactive function which searches
4611         for messages in the unseen sequence (closes SF #701756).
4613         * mh-utils.el (mh-show-folder-map): Add binding for
4614         mh-index-new-messages.
4615         (mh-show-msg): Update the unseen sequence in the source folder.
4617         * mh-e.el (mh-folder-font-lock-unseen): The function assumes that
4618         the end of buffer is reached when there isn't a valid scan line
4619         on the current line. This doesn't work in the index folder since
4620         we have lines containing the folder name and empty lines in
4621         between the actual scan lines. The modification removes this
4622         assumption.
4623         (mh-folder-map): Add key binding for "Fn"
4625         * mh-seq.el (mh-iterate-on-messages-in-region): If the point is
4626         not at the beginning of the line, then the first message in the
4627         region would be missed. The fix avoids this.
4629         * mh-mime.el (mh-inline-vcard-p): Don't try to inline vcards if
4630         we don't have the right libraries.
4632 2003-03-10  Satyaki Das  <satyaki@theforce.stanford.edu>
4634         * mh-e.el (mh-next-undeleted-msg, mh-previous-undeleted-msg)
4635         (mh-next-msg): Add optional argument wait-after-complaining-flag.
4636         If non-nil and there are no undeleted messages after (or before)
4637         the current one, then pause for a second after printing out the
4638         message.
4639         (mh-refile-or-write-again): Modify call to mh-next-msg to use the
4640         wait-after-complaining-flag.
4642 2003-03-10  Satyaki Das  <satyaki@theforce.stanford.edu>
4644         * mh-e.el (mh-refile-or-write-again): If mh-next-msg fails to find
4645         a message to go to it prints out a diagnostic, which overwrites
4646         the diagnostic about the folder the message was refiled to. The
4647         change fixes this.
4649 2003-03-09  Satyaki Das  <satyaki@theforce.stanford.edu>
4651         * mh-seq.el (mh-widen, mh-narrow-to-seq): Update
4652         mh-narrowed-to-seq before notating sequences. This is a bit
4653         helpful for mh-tick.el.
4654         (mh-put-msg-in-seq): Fix a minor bug. No internal sequence should
4655         be notated -- the original code was doing the right thing only for
4656         the "unseen" sequence.
4658         * mh-index.el (mh-index-choose): Add autoload cookie for
4659         mh-index-choose. This is needed for GNU Emacs 20.5.
4661         * mh-loaddefs.el: Regenerated.
4663 2003-03-09  Bill Wohler  <wohler@newt.com>
4665         * mh-mime.el (mh-display-smileys): This function originally had a
4666         test to see if font-lock-maximum-size was bound, but this was
4667         recently removed. The test was put in for a reason; if
4668         font-lock-maximum-size isn't bound, void-variable errors would
4669         ensue. I put the bound test back in.
4671 2003-03-08  Steve Youngs  <youngs@xemacs.org>
4673         * mh-mime.el (mh-mime-security-button-map): Use 'mh-push-button'
4674         in XEmacs as well.
4676 2003-03-07  Satyaki Das  <satyaki@theforce.stanford.edu>
4678         * mh-xemacs-toolbar.el: Declare a whole bunch of stuff for GNU
4679         Emacs, so that we don't get so many compiler warnings. Also
4680         surround calls to set-specifier and toolbar-make-button-list with
4681         mh-funcall-if-exists. Maybe GNU Emacs shouldn't try to compile
4682         this file in the first place.
4684         * mh-xemacs-compat.el (mh-modeline-glyph): Declare it within
4685         mh-do-in-xemacs to avoid compiler warning in GNU Emacs.
4686         (mh-xemacs-push-button): Removed.
4688         * mh-mime.el (mh-mime-button-map): Use the generalized
4689         mh-push-button function.
4690         (mh-push-button): Enhance it so that it works on XEmacs too.
4692 2003-03-08  Steve Youngs  <youngs@xemacs.org>
4694         * mh-xemacs-compat.el (mh-modeline-logo): New constant holding the
4695         modeline image.
4696         (mh-modeline-glyph): Use it.
4698 2003-03-08  Steve Youngs  <youngs@xemacs.org>
4700         * mh-xemacs-toolbar.el: New file that defines and displays a
4701         toolbar in XEmacs.
4703         * mh-xemacs-compat.el (mh-xemacs-toolbar): Require it here.
4705         * Makefile (MH-E-SRC): Add mh-xemacs-toolbar.el.
4707         * mh-customize.el (mh-toolbar):
4708         (mh-tool-bar-letter-buttons):
4709         (mh-tool-bar-letter-buttons-set):
4710         (mh-tool-bar-folder-buttons):
4711         (mh-tool-bar-folder-buttons-set):
4712         (mh-tool-bar-search-function):
4713         (mh-tool-bar-reply-3-buttons-flag):
4714         (mh-tool-bar-item-inc):
4715         (mh-tool-bar-item-save-mime):
4716         (mh-tool-bar-item-prev-msg):
4717         (mh-tool-bar-item-page-msg):
4718         (mh-tool-bar-item-next-msg):
4719         (mh-tool-bar-item-delete):
4720         (mh-tool-bar-item-refile):
4721         (mh-tool-bar-item-undo):
4722         (mh-tool-bar-item-perform):
4723         (mh-tool-bar-item-toggle-show):
4724         (mh-tool-bar-item-reply-from):
4725         (mh-tool-bar-item-reply-to):
4726         (mh-tool-bar-item-reply-all):
4727         (mh-tool-bar-item-reply):
4728         (mh-tool-bar-item-alias):
4729         (mh-tool-bar-item-compose):
4730         (mh-tool-bar-item-rescan):
4731         (mh-tool-bar-item-repack):
4732         (mh-tool-bar-item-search):
4733         (mh-tool-bar-item-visit):
4734         (mh-tool-bar-item-prefs):
4735         (mh-tool-bar-item-help):
4736         (mh-tool-bar-item-widen):
4737         (mh-tool-bar-item-send):
4738         (mh-tool-bar-item-attach):
4739         (mh-tool-bar-item-spell):
4740         (mh-tool-bar-item-save):
4741         (mh-tool-bar-item-undo-op):
4742         (mh-tool-bar-item-kill):
4743         (mh-tool-bar-item-copy):
4744         (mh-tool-bar-item-paste):
4745         (mh-tool-bar-item-kill-draft):
4746         (mh-tool-bar-item-comp-prefs):
4747         The MH-E toolbar for XEmacs is defined differently from the
4748         GNU/Emacs version, so only define these if we're in GNU/Emacs.
4749         XEmacs doesn't need to see them and it's always good to cut down
4750         on pollution.
4752 2003-03-08  Steve Youngs  <youngs@xemacs.org>
4754         * mh-mime.el (mh-mime-button-map): Bind the 2nd mouse button to
4755         `mh-xemacs-push-button' in XEmacs.
4756         (mh-mime-security-button-map): Ditto.
4758         * mh-xemacs-compat.el: Shush the byte-compiler.
4759         (mh-xemacs-push-button): New function to make MIME buttons work in
4760         XEmacs.
4762 2003-03-08  Steve Youngs  <youngs@xemacs.org>
4764         * mh-mime.el (mh-display-emphasis): Don't test
4765         `font-lock-maximum-size' to see if it is bound, just test for a
4766         non-nil value.  This variable can have a nil value which makes it
4767         bound and dividing nil by 8 throws an error.
4768         This fixes a bug in MH-E under XEmacs when
4769         `font-lock-maximum-size' is nil that prevented article emphasis
4770         and smiley display which in turn was causing the "Flush changes in
4771         article x y/n" errors.
4772         (mh-display-smileys): Ditto.
4774 2003-03-08  Steve Youngs  <youngs@xemacs.org>
4776         * mh-utils.el (mh-logo-display): Display logo in XEmacs as well.
4778         * mh-xemacs-compat.el (mh-modeline-glyph): New.  The MH-E modeline
4779         logo for XEmacs.
4781 2003-03-06  Satyaki Das  <satyaki@theforce.stanford.edu>
4783         * mh-utils.el (mh-allow-root-folder-flag): New global variable
4784         that decides if "+" is an acceptable folder name.
4785         (mh-folder-completion-function): Refine the test for existing
4786         folders to take mh-allow-root-folder-flag into account.
4787         (mh-folder-completing-read, mh-prompt-for-folder): Use the
4788         allow-root-folder-flag argument of mh-prompt-for-folder and add a
4789         similar argument to mh-folder-completing-read.
4790         (mh-exec-cmd-error): Make the function nicer by using
4791         process-environment to pass the environment variable assignments.
4793 2003-03-05  Satyaki Das  <satyaki@theforce.stanford.edu>
4795         * mh-mime.el (mh-push-button): Preserve point in the show buffer
4796         if the mouse is used to expand/contract a button.
4798         * mh-customize.el (mh-x-face-file): Mention X-Image-URL in
4799         documentation.
4801         * mh-comp.el (mh-insert-x-face): Modified to allow insertion of
4802         X-Image-URL header field.
4804 2003-03-04  Satyaki Das  <satyaki@theforce.stanford.edu>
4806         * mh-utils.el (mh-face-display-function): Modified to facilitate
4807         display of X-Image-URL images.
4808         (mh-find-path): Initialize X-Image-URL cache directory.
4809         (mh-x-image-url-cache-canonicalize, mh-x-image-url-fetch-image)
4810         (mh-x-image-scale-and-display, mh-x-image-url-display)
4811         (mh-x-image-display): New functions for X-Image-URL image display
4812         and cache management.
4814         * mh-customize.el (mh-show-use-xface-flag): Add info about
4815         requirements for X-Image-URL display.
4816         (mh-fetch-x-image-url): New customizable variable that controls
4817         fetching of X-Image-URL.
4819 2003-03-04  Satyaki Das  <satyaki@theforce.stanford.edu>
4821         * mh-utils.el (mh-make-local-hook): New macro which works around
4822         API changes in add-hook. Version of GNU Emacs before 21.1 and
4823         XEmacs require a call to make-local-hook and just the LOCAL
4824         argument of add-hook is not sufficient.
4825         (mh-show-mode): Make kill-buffer-hook buffer local.
4827         * mh-e.el (mh-folder-mode): Same as above.
4829         * mh-comp.el (mh-compose-and-send-mail): Same as above.
4831 2003-03-02  Satyaki Das  <satyaki@theforce.stanford.edu>
4833         * mh-mime.el (mh-push-button): Clicking on a MIME button used to
4834         cause the window with the show buffer to be selected. With this
4835         change the selected window doesn't change.
4837 2003-03-01  Satyaki Das  <satyaki@theforce.stanford.edu>
4839         * mh-speed.el (mh-speed-flists): Avoid a potential race condition.
4840         When flists is called manually, or when an unseen message is read,
4841         mh-speed-partial-line was not reinitialized.
4843         * mh-e.el (mh-visit-folder): If mh-visit-folder is used to visit
4844         the folder currently being visited (effectively doing a rescan)
4845         then mh-previous-window-config is erroneously set. The change
4846         fixes this.
4848         * mh-customize.el (mh-index-show-hook): Remove unused variable.
4850 2003-02-28  Satyaki Das  <satyaki@theforce.stanford.edu>
4852         * mh-e.el (mh-scan-folder): Call mh-reset-threads-and-narrowing
4853         only after the user has replied to question. This avoids premature
4854         clearing of the folder.
4855         (mh-rescan-folder, mh-visit-folder): Remove calls to
4856         mh-reset-threads-and-narrowing since it is now called in
4857         mh-scan-folder anyway.
4859         * mh-funcs.el (mh-sort-folder): Same as above.
4861 2003-02-26  Satyaki Das  <satyaki@theforce.stanford.edu>
4863         * mh-alias.el (mh-alias-alist): Change initial value to a symbol,
4864         so that it is different from the empty list, which could also
4865         mean that there are no aliases.
4866         (mh-alias-reload-maybe): Change test so that empty alist of
4867         aliases is properly handled (closes SF #693859).
4869 2003-02-25  Satyaki Das  <satyaki@theforce.stanford.edu>
4871         * mh-mime.el (mh-decode-message-header): The message header could
4872         be encoded, for instance the author's name could contain
4873         characters not in ASCII. This function will decode such header
4874         fields.
4875         (mh-mm-inline-message): Use mh-decode-message-header.
4877         * mh-utils.el (mh-display-msg): Use mh-decode-message-header.
4878         (mh-message-number-width): Use mh-scan-prog instead of "scan".
4880         * mh-loaddefs.el: Regenerated.
4882 2003-02-24  Satyaki Das  <satyaki@theforce.stanford.edu>
4884         * mh-utils.el (mh-truncate-log-buffer): Refine it so that the
4885         function will do the right thing even if called from a buffer
4886         other than mh-log-buffer.
4888 2003-02-22  Peter S Galbraith  <psg@debian.org>
4890         * mh-alias.el (mh-alias-add-alias): Really fix SF #690216.
4891         This functions needs to strip brackets on standalone addresses as
4892         well.
4894 2003-02-21  Satyaki Das  <satyaki@theforce.stanford.edu>
4896         * mh-xemacs-compat.el (replace-regexp-in-string): Remove the
4897         definition since it isn't used any more.
4899 2003-02-20  Peter S Galbraith  <psg@debian.org>
4901         * mh-alias.el (mh-alias-which-file-has-alias): Bug fix.  Needed to
4902         specify `noerror' on search.
4904         * mh-alias.el (mh-alias-suggest-alias): Add condition for input
4905         string being an email address in brackets.  We need to strip out
4906         the brackets. (closes SF #690216)
4908 2003-02-20  Satyaki Das  <satyaki@theforce.stanford.edu>
4910         * mh-pick.el (mh-search-folder): The function was setting the
4911         global value of the variables mh-current-folder and
4912         mh-previous-window-config. This can lead to problems in code which
4913         assumes that these variables are nil when we aren't in a folder
4914         buffer. So make the variables local before setting them.
4916 2003-02-19  Satyaki Das  <satyaki@theforce.stanford.edu>
4918         * mh-mime.el (mh-mime-display): All the MIME display code has been
4919         wrapped in a condition-case so that if something goes wrong, the
4920         raw message will be displayed.
4922         * mh-funcs.el (mh-undo-folder): Comment out call to sit-for that
4923         seems unnecessary.
4925         * mh-e.el (mh-scan-folder): Messages marked for deletion or
4926         refiling weren't getting annotated properly. The change fixes
4927         this.
4928         (mh-process-or-undo-commands): Change prompt to reflect what
4929         really happens in the code.
4931 2003-02-18  Satyaki Das  <satyaki@theforce.stanford.edu>
4933         * mh-comp.el (mh-folder-expand-at-point): The function
4934         mail-abbrev-complete-alias often returns nil. This had the
4935         unfortunate consequence of always causing an error. The change
4936         fixes this.
4938         * mh-alias.el (mh-alias-canonicalize-suggestion): New function
4939         which obviates the our need replace-regexp-in-string.
4940         (mh-alias-suggest-alias): Use mh-alias-canonicalize-suggestion to
4941         eliminate calls to replace-regexp-in-string. This avoids problems
4942         in Emacs20.
4944         * mh-utils.el (mh-notate): Handle the case when nil is passed as
4945         notation gracefully.
4946         (mh-speed-flists-active-p): New function that returns non-nil if
4947         flists is being used in the speedbar to update message counts.
4949         * mh-seq.el (mh-put-msg-in-seq): Fix a bug which made it
4950         impossible to add messages to the unseen sequence. Also adding
4951         messages to the unseen sequence will now update the speedbar
4952         message counts immediately.
4954         * mh-e.el (mh-get-new-mail, mh-process-commands)
4955         (mh-undefine-sequence): Update speedbar message counts, if the
4956         speedbar is active and is displaying message counts.
4957         (mh-delete-msg-from-seq): In addition to updating message counts,
4958         unhighlight the message so that interactively removing messages
4959         from the unseen sequence makes the bold highlight of unseen
4960         messages in the scan buffer go away.
4961         (mh-clear-text-properties): New function that removes all text
4962         properties from the current scan line.
4964 2003-02-15  Satyaki Das  <satyaki@theforce.stanford.edu>
4966         * mh-utils.el (mh-face-display-function): Wrap call of
4967         insert-image in mh-funcall-if-exists. This avoids a compiler
4968         warning in Emacs20.
4970         * mh-speed.el (mh-speed-flists): Weaken test a bit to avoid
4971         compiler warning in Emacs20.
4972         (mh-speedbar-change-expand-button-char): Wrap call of
4973         speedbar-insert-image-button-maybe in mh-funcall-if-exists. This
4974         function isn't present in the speedbar that ships with Emacs20, so
4975         calling it there causes an error.
4977         * mh-seq.el (mh-msg-is-in-seq): Adjust loop call a bit to avoid
4978         compiler warning in XEmacs. The XEmacs compiler should be improved
4979         so that such spurious warnings from builtin macros are suppressed.
4981         * mh-index.el (mh-index-search): Same as above.
4983         * mh-e.el (tool-bar-mode): The declaration is needed for Emacs20
4984         too.
4986         * mh-comp.el (mailabbrev): Try loading it any way. Some day XEmacs
4987         will get it and then MH-E will just use it.
4988         (tool-bar-mode, tool-bar-map): These declarations are needed for
4989         Emacs20 too.
4990         (mh-mail-abbrev-make-syntax-table, mh-folder-expand-at-point):
4991         Remove mh-mail-abbrev-make-syntax-table since mh-funcall-if-exists
4992         can be used instead.
4994         * mh-alias.el (require): Avoid autoloading functions that may not
4995         be defined.
4996         (mh-read-address, mh-alias-letter-expand-alias): Rewrite using
4997         mh-funcall-if-exists.
4999 2003-02-15  Satyaki Das  <satyaki@theforce.stanford.edu>
5001         * mh-loaddefs.el: Regenerated.
5003         * mh-speed.el (mh-folder-speedbar-buttons, mh-speed-add-buttons)
5004         (mh-speed-toggle): Reuse markers instead of creating more of them.
5005         (mh-speed-flists-folder, mh-speed-flists): Add optional folder
5006         argument to mh-speed-flists so that message counts are updated
5007         only for that one folder.
5008         (mh-speed-parse-flists-output): If no change in counts then avoid
5009         consing.
5011         * mh-index.el (mh-index-execute): Rewritten to use a temporary
5012         buffer that is not left behind.
5014         * mh-funcs.el (mh-store-buffer): Use mh-log-buffer instead of the
5015         special purpose *Store Output* buffer.
5017 2003-02-14  Satyaki Das  <satyaki@theforce.stanford.edu>
5019         * mh-customize.el (mh-show-xface-face): Make it always be black
5020         foreground on a white background (the reverse of that can make
5021         some X-Face images look creepy).
5023         * mh-utils.el (mh-truncate-log-buffer): Modify the function to
5024         return the current size of mh-log-buffer. Also we are now a bit
5025         more careful in adding separators between consecutive messages.
5026         (mh-exec-cmd): Fix a bug where the the log buffer would be
5027         displayed even if no error happened in the current command but
5028         the log buffer had messages from a previous error.
5030         * mh-mime.el (mh-mime-save-parts): Use mh-log-buffer to show
5031         error messages.
5033         * mh-alias.el (mh-alias-local-users): Add a space between parens.
5035 2003-02-14  Steve Youngs  <youngs@xemacs.org>
5037         * mh-utils.el (mh-face-display-function): Call
5038         `x-face-xmas-wl-display-x-face' using `mh-funcall-if-exists'.
5040         * mh-xemacs-compat.el (replace-regexp-in-string): New.
5042 2003-02-13  Satyaki Das  <satyaki@theforce.stanford.edu>
5044         * mh-utils.el (mh-log-buffer-lines): New variable that keeps
5045         track of the number of lines to keep in mh-log-buffer.
5046         (mh-truncate-log-buffer): New function that is used to make sure
5047         that the log buffer doesn't grow to unbounded size.
5048         (mh-exec-cmd, mh-exec-cmd-daemon, mh-handle-process-error): Use
5049         mh-truncate-log-buffer instead of erase-buffer to keep some
5050         number of previous log messages around (closes SF #685476).
5052 2003-02-13  Satyaki Das  <satyaki@theforce.stanford.edu>
5054         * mh-e.el (tool-bar-mode): Declare it in XEmacs.
5055         (mh-folder-mode): Use mh-funcall-if-exists to call hl-line-mode.
5057         * mh-utils.el (mh-funcall-if-exists): New macro that calls a
5058         function only if it exists.
5059         (mh-logo-display, mh-defun-show-buffer): Use mh-funcall-if-exists
5060         to call the functions find-image and deactivate-mark.
5062         * mh-mime.el (mh-mime-cleanup, mh-small-image-p)
5063         (mh-mm-display-part): Use mh-funcall-if-exists to call the
5064         functions image-size and remove-images.
5066         * mh-comp.el (tool-bar-map, tool-bar-mode): Declare the variables
5067         in XEmacs.
5068         (mh-folder-expand-at-point): Use mh-funcall-if-exists to call
5069         mail-abbrev-complete-alias if it exists.
5071         * mh-alias.el (mh-read-address): Use mh-funcall-if-exists for
5072         future extensibility.
5074 2003-02-13  Satyaki Das  <satyaki@theforce.stanford.edu>
5076         * mh-utils.el (mh-logo-display): The function find-image is
5077         present only in GNU Emacs.
5078         (mh-defun-show-buffer): The function deactivate-mark is present
5079         only in GNU Emacs.
5080         (default-enable-multibyte-characters): Declare it in XEmacs to
5081         avoid compiler warning.
5082         (mh-face-display-function): Avoid inserting space if there isn't
5083         any Face or X-Face header field to display.
5085         * mh-seq.el (mh-thread-last-ancestor): Move declaration of
5086         variable before its first use to silence XEmacs warning.
5088         * mh-mime.el (default-enable-multibyte-characters, dots, type):
5089         Declare these in XEmacs to remove compiler warnings in XEmacs.
5090         (mh-mime-cleanup, mh-mm-display-part): Call remove-images only in
5091         GNU Emacs.
5092         (mh-small-image-p): Call image-size only in GNU Emacs.
5094         * mh-index.el (mh-mairix-next-result): Fix a bug where a quote
5095         was missing.
5096         (mh-swish++-regexp-builder): Remove the unused binding meta.
5098         * mh-e.el (mh-folder-size): Pass on an extra value to remove
5099         XEmacs warning.
5100         (mh-folder-mode): Surround calls to hl-line-mode and
5101         tool-bar-mode with mh-do-in-gnu-emacs since these functions
5102         aren't present in XEmacs.
5104         * mh-customize.el (mh-tool-bar-show-set, mh-tool-bar-letter-set)
5105         (mh-tool-bar-folder-set): These functions call tool-bar-*
5106         functions which are present only in GNU Emacs. So surround them
5107         with mh-do-in-gnu-emacs.
5109         * mh-comp.el (mh-letter-mode, mh-folder-expand-at-point): Only
5110         call these functions in GNU Emacs.
5111         (mail-abbrevs): Declare it in XEmacs.
5113         * mh-alias.el (mh-read-address): Call completing-read-multiple
5114         only in GNU Emacs.
5115         (mail-abbrevs): Declare it in XEmacs.
5116         (mh-alias-add-alias-to-file): Remove unused code.
5118 2003-02-14  Ville Skyttä  <scop@xemacs.org>
5120         * mh-comp.el: Add autoloaded auto-mode-alist association.
5122 2003-02-13  Satyaki Das  <satyaki@theforce.stanford.edu>
5124         * mh-utils.el (mh-face-display-function): Make the XEmacs part a
5125         little simpler.
5127 2003-02-14  Steve Youngs  <youngs@xemacs.org>
5129         * mh-customize.el (mh-show-xface-face): XEmacs doesn't have the
5130         ':inherit' keyword for defface, rewrite with sane defaults.
5132         * mh-utils.el (mh-face-display-function): Fix bug that was
5133         corrupting xface images when displayed with XEmacs' internal
5134         xface image support.  Also make XEmacs honour 'mh-show-xface-face'
5135         when using internal xface image support.
5137 2003-02-12  Peter S Galbraith  <psg@debian.org>
5139         * mh-comp.el (mh-modify-header-field): New function. To header
5140         FIELD add VALUE.  If OVERWRITE-FLAG is non-nil then the old value,
5141         if present, is discarded.  This is more flexible than before.
5142         (mh-insert-auto-fields): Use it.  This and the new function are a
5143         courtesy of Satyaki.  Thanks!
5145         * mh-customize.el (mh-auto-fields-list): Doc tweaks suggested by
5146         Bill.
5148 2003-02-12  Satyaki Das  <satyaki@theforce.stanford.edu>
5150         * mh-comp.el (mh-folder-expand-at-point): Tweak the error
5151         message. Completion in the Fcc header field is only supported in
5152         GNU Emacs 21.
5154 2003-02-12  Peter S Galbraith  <psg@debian.org>
5156         * mh-customize.el (mh-auto-fields-list): Reorder after
5157         `mh-identity-list' since it needs it to be defined.  Move to
5158         mh-identity customization group.
5160 2003-02-11  Peter S Galbraith  <psg@debian.org>
5162         * mh-customize.el (mh-insert-mail-followup-to-flag): Removed.
5163         Obsolete.
5164         (mh-insert-mail-followup-to-list): Removed.  Obsolete.  Use
5165         `mh-auto-fields-list' instead, which is a more general solution.
5166         (mh-auto-fields-list): New defcustom.  Alist of addresses for
5167         which header lines are automatically inserted.  Replaces
5168         `mh-insert-mail-followup-to-list'.
5170         * mh-comp.el (mh-insert-mail-followup-to): Removed.  Obsolete.
5171         (mh-insert-auto-fields): New function. Insert custom fields if To
5172         or Cc match `mh-auto-fields-list', replacing
5173         mh-insert-mail-followup-to with a more general solution.
5174         (mh-compose-and-send-mail): Call mh-insert-auto-fields instead of
5175         mh-insert-mail-followup-to.  Also don't call mh-insert-identity to
5176         insert default setting if mh-insert-auto-fields inserted an
5177         identity.
5179 2003-02-11  Satyaki Das  <satyaki@theforce.stanford.edu>
5181         * mh-utils.el (mh-show-xface-function): Try to load the external
5182         x-face library only if XEmacs doesn't have xface support.
5183         (mh-face-display-function): Renamed. Also handle various
5184         permutations of x-face and xface support in XEmacs better.
5186         * mh-customize.el (mh-show-use-xface-flag): Any emacs whose
5187         major version is greater than or equal to 21 supports display of
5188         X-Face and Face header fields.
5190 2003-02-11  Satyaki Das  <satyaki@theforce.stanford.edu>
5192         * mh-utils.el (mh-do-in-gnu-emacs, mh-do-in-xemacs): Macros that
5193         execute code only in GNU Emacs and XEmacs respectively.
5194         (mh-emacs21-face-display-function): Refactor to make it slightly
5195         nicer. Get rid of compiler warnings in GNU Emacs by using the
5196         above macros. Also check for presence of xface feature (in XEmacs
5197         specific code) before trying to display X-Face header field image.
5199 2003-02-11  Steve Youngs  <youngs@xemacs.org>
5201         * mh-customize.el (mh-show-use-xface-flag): If using XEmacs and
5202         can't find the external x-face pkg still enable X-Face images if
5203         feature 'xface is present.
5204         Update the doc string.
5206         * mh-utils.el (mh-emacs21-face-display-function): Make it work in
5207         XEmacs.
5208         (mh-show-xface-function): If using XEmacs without xface support,
5209         use x-face.el pkg.  If using XEmacs with xface support, or Emacs
5210         21, use mh-emacs21-face-display-function.
5212 2003-02-11  Mark D. Baushke  <mdb@gnu.org>
5214         * mh-customize.el (mh-invisible-header-fields): Add
5215         "X-Notes-Item:" which is generated by Lotus Notes Domino. See
5216         URL<http://www-12.lotus.com/ldd/doc/domino_notes/Rnext/help6_admin.nsf
5217         /f4b82fbb75e942a6852566ac0037f284/5eda03c647f879c285256c1d00396051
5218         ?OpenDocument&Highlight=0,x-notes-item> for details on how Domino
5219         users may disable (restore the default) generation of these headers.
5221 2003-02-10  Satyaki Das  <satyaki@theforce.stanford.edu>
5223         * mh-comp.el (mh-folder-expand-at-point): Add function doc string
5224         and produce a nicer error message for Emacs versions that lack
5225         mail-abbrev-complete-alias.
5227         * mh-utils.el (mh-handle-process-error): Check doc fix.
5229         * mh-e.el (mh-folder-from-address): Same as above.
5231 2003-02-10  Peter S Galbraith  <psg@debian.org>
5233         * mh-comp.el: require mailabbrev, except in XEmacs.
5234         (mh-mail-abbrev-make-syntax-table): New defmacro to call
5235         mail-abbrev-make-syntax-table introduced in Emacs21.
5236         (mh-folder-expand-at-point): Handle nested folders.
5237         All of the above was written by Satyaki.  I just applied the patch
5238         and tested.
5240 2003-02-09  Satyaki Das  <satyaki@theforce.stanford.edu>
5242         * mh-comp.el: Fixes to keep the byte compiler happy.
5244         * mh-customize.el (mh-invisible-header-fields): Modified to
5245         remove space after ":" in header field names.
5247 2003-02-09  Peter S Galbraith  <psg@mixed.dyndns.org>
5249         * mh-comp.el (mh-letter-complete): Add completion for fcc lines.
5250         (mh-folder-expand-at-point): Do completion at point for folder
5251         name.  Like `mh-alias-letter-expand-alias' for aliases, it doesn't
5252         work on XEmacs because it relies on `mail-abbrev-complete-alias'
5253         to do completion.  Maybe Steve could update XEmacs' mailabbrev.el?
5255 2003-02-09  Peter S Galbraith  <psg@debian.org>
5257         * mh-customize.el (mh-invisible-header-fields): Remove trailing
5258         space in "X-Face: " and "Face: " entries since those line often
5259         break there.
5261 2003-02-08  Satyaki Das  <satyaki@theforce.stanford.edu>
5263         * mh-utils.el (mh-emacs21-face-display-function): Use
5264         mh-show-xface-face to colorize X-Face image.
5266         * mh-customize.el (mh-invisible-header-fields): Add extra headers
5267         to ignore.
5268         (mh-show-xface-face): Allow customization of the X-Face colors.
5270 2003-02-07  Satyaki Das  <satyaki@theforce.stanford.edu>
5272         * mh-utils.el (mh-uncompface-executable, mh-uncompface): Remember
5273         the path of the uncompface executable so that we don't need to
5274         search for it every time.
5275         (mh-emacs21-face-display-function): If more than one X-Face (or
5276         Face) header field was present then the fields would get
5277         concatenated, leading to garbled output. The change only displays
5278         the first image.
5280         * mh-customize.el (mh-x-face-file): Change documentation since it
5281         can now be used to insert a Face header field.
5283         * mh-comp.el (mh-insert-x-face): Generalized to allow insertion
5284         of Face header field.
5286 2003-02-06  Bill Wohler  <wohler@newt.com>
5288         * mh-utils.el (mh-emacs21-face-display-function): Updated
5289         docstring. It is a common mistake to refer to a header field as a
5290         header. The term header refers to the entire header while the term
5291         header field refers to a single field.
5293         * mh-customize.el (mh-show-use-xface-flag): Ditto.
5295 2003-02-06  Satyaki Das  <satyaki@theforce.stanford.edu>
5297         * mh-utils.el (mh-show-xface-function): Modified to use
5298         mh-emacs21-face-display-function if we are running GNU Emacs 21.
5299         (mh-face-to-png): New function to convert a Face header to a png
5300         image.
5301         (mh-uncompface): New function which converts an X-Face header to
5302         a pbm image.
5303         (mh-icontopbm): New function that does the job of icontopbm.
5304         (mh-emacs21-face-display-function): New function that displays
5305         Face/X-Face image in GNU Emacs 21.
5306         (mh-show-xface): Modified to test if we are running in X.
5307         Otherwise face display is suppressed.
5309         * mh-customize.el (mh-show-use-xface-flag): Tweak it, now that
5310         MH-E supports face display natively on Emacs 21. Also remove the
5311         check for window-system since it doesn't belong in a customizable
5312         variable.
5314 2003-02-06  Satyaki Das  <satyaki@theforce.stanford.edu>
5316         * mh-utils.el (sendmail): Require it so that XEmacs can find
5317         rfc822-goto-eoh.
5318         (mh-mail-header-end): A substitute for mail-header-end that
5319         doesn't widen the buffer. This is essential to avoid problems when
5320         dealing with nested messages.
5321         (mh-in-header-p, mh-letter-header-font-lock)
5322         (mh-header-field-font-lock, mh-show-font-lock-fontify-region)
5323         (mh-show-unquote-From): Use mh-mail-header-end instead of
5324         mail-header-end.
5326         * mh-mime.el (mh-decode-message-body): same as above (closes SF
5327         #681518).
5329         * mh-comp.el (mh-yank-cur-msg): same as above.
5331 2003-02-05  Satyaki Das  <satyaki@theforce.stanford.edu>
5333         * mh-utils.el (mh-display-msg): Call mh-show-mode before invisible
5334         headers are cleaned. This means that any surviving X-Face header
5335         can be removed unconditionally in mh-clean-msg-header.
5336         (mh-clean-msg-header): Since the function is now called with a
5337         read-only buffer, make the buffer temporarily writable.
5339         * mh-mime.el (mh-mm-inline-message): Do X-Face display before
5340         invisible headers are removed.
5342         * mh-customize.el (mh-invisible-headers): Simplified since the
5343         X-Face header isn't treated specially any more.
5344         (mh-invisible-header-fields): Add Face: and X-Face: to list of
5345         invisible headers.
5347         * mh-mime.el (mh-mime-display): If body is empty the headers would
5348         be treated like the body. The change fixes this (closes SF #681162).
5349         (mh-mime-display): This change really fixes the above problem.
5351 2003-02-04  Satyaki Das  <satyaki@theforce.stanford.edu>
5353         * mh-utils.el (mh-current-folder-name): Global variable that
5354         keeps track of current folder.
5355         (mh-normalize-folder-name): Substitute @ with
5356         mh-current-folder-name (closes SF #666774).
5357         (mh-prompt-for-folder): Bind mh-current-folder-name. Also
5358         invalidate cache if we are visiting a folder that wasn't found in
5359         the sub-folder cache. This is an indication that folders may have
5360         been created outside of MH-E and so the cache may be stale.
5362 2003-02-03  Satyaki Das  <satyaki@theforce.stanford.edu>
5364         * mh-utils.el (mh-decode-content-transfer-encoded-message): Removed.
5365         (mh-display-msg): Remove the use of the above function.
5366         (mh-normalize-folder-name): Leading "/" characters were being
5367         lost. The change fixes this (closes SF #676890).
5369         * mh-mime.el (mh-decode-message-body): New function, factored out
5370         from mh-mime-display and enhanced, to decode message based on
5371         charset and content-transfer-encoding. This eliminates the need
5372         for the external mimencode (closes SF #674857).
5373         (mh-mime-display): Use mh-decode-message-body.
5375         * mh-e.el (mh-header-display): Don't need the binding since the
5376         variable isn't present any more.
5377         (mh-inc-folder): Avoid calling mh-show if point is not on a valid
5378         scan line (closes SF #678115).
5380         * mh-customize.el
5381         (mh-decode-content-transfer-encoded-message-flag): Removed.
5383 2003-02-03  Bill Wohler  <wohler@newt.com>
5385         * import-emacs: MH-E now has its own directory in Emacs.
5387         * mh-e.el: (mh-version): Set to 7.2+cvs.
5389 2003-02-03  Bill Wohler  <wohler@newt.com>
5391         Released MH-E version 7.2.
5393         * MH-E-NEWS, README: Updated for release 7.2.
5395         * mh-e.el (Version, mh-version): Updated for release 7.2.
5397 2003-02-03  Bill Wohler  <wohler@newt.com>
5399         * Makefile (dist): mkdir needs to happen *before* files are
5400         copied.
5402         * MH-E-NEWS: Fixed some awkward verbiage.
5404 2003-02-02  Bill Wohler  <wohler@newt.com>
5406         * mh-customize.el (mh-invisible-headers): Surround regexp-opt
5407         expression in parens to avoid problems viewing certain messages.
5409 2003-01-30  Satyaki Das  <satyaki@theforce.stanford.edu>
5411         * mh-speed.el (mh-speed-flists): Search for flists in mh-progs.
5412         The original was inadvertently searching for flists in the user's
5413         path.
5415 2003-01-27  Bill Wohler  <wohler@newt.com>
5417         * mh-customize.el (mh-default-folder-must-exist-flag): Changed
5418         default to t according to the principle of least surprise.
5420 2003-01-26  Bill Wohler  <wohler@newt.com>
5422         * mh-utils.el: Checkdoc fixes.
5424         * mh-pick.el (mh-do-search, mh-search-folder): Checkdoc fixes.
5426         * mh-loaddefs.el: Regenerated (lm-verify fixes).
5428         * mh-index.el (mh-mairix-next-result): Checkdoc fixes.
5430         * mh-alias.el: lm-verify fix.
5432         * Makefile (MH-E-SRC): Added ChangeLog, now that Emacs has a
5433         lisp/mh-e directory.
5434         (MH-E-ETC-ETC): Removed ChangeLog.
5435         (dist): Moved creation of mail directory next to copy of files
5436         into mail directory.
5437         (install-emacs): Copy $(MH-E-SRC) into new directory
5438         $(EMACS_HOME/lisp/mh-e.
5439         (MH-E-SRC): Moved ChangeLog into new variable MH-E-OTHERS and
5440         include MH-E-LOADDEFS there too.
5441         (mh-loaddefs.el): Added lines so that lm-verify passes.
5442         (dist, install-emacs): Use MH-E-OTHERS instead of MH-E-LOADDEFS.
5444 2003-01-26  Jeffrey C Honig  <jch@honig.net>
5446         * mh-comp.el (mh-tidy-draft-buffer, mh-compose-and-send-mail):
5447         Rename mh-kill-draft-hook to mh-tidy-draft-buffer.
5449 2003-01-25  Jeffrey C Honig  <jch@honig.net>
5451         * mh-utils.el (mh-exec-cmd, mh-exec-cmd-daemon)
5452         (mh-process-daemon): Use mh-log-buffer for the output of commands
5453         from mh-exec-cmd.
5455         * mh-utils.el (mh-temp-folders-buffer): Sequences and folders
5456         loose the -temp from their buffer names as they are interesting to
5457         the user.
5459         * mh-seq.el (mh-list-sequences): New name, mh-sequences-buffer as
5460         it is intended to be interesting to the user.
5462         * mh-funcs.el (mh-list-folders): New name, mh-folders-buffer as it
5463         is intended to be interesting to the user.
5465         * mh-comp.el (mh-check-whom, mh-compose-and-send-mail): Use
5466         mh-recipients-buffer constant.  Add a kill buffer hook to delete
5467         the recipients buffer when a draft buffer is killed.
5469 2003-01-25  Satyaki Das  <satyaki@theforce.stanford.edu>
5471         * mh-customize.el (mh-customize): New interactive argument
5472         deletes other windows.
5473         (mh-tool-bar-show-set, mh-tool-bar-letter-set)
5474         (mh-tool-bar-folder-set): Modified so that clicking the customize
5475         and help buttons deletes the other windows in the frame.
5477         * mh-mime.el (mh-mm-inline-message): Remove unused code.
5479         * mh-seq.el (mh-notate-deleted-and-refiled): Fix a small bug where
5480         the wrong notation was being used.
5481         (mh-toggle-threads): The function had a bug if you did the
5482         following starting from an unthreaded wide folder:
5483           (1) Create a sequence with S p
5484           (2) Narrow to new sequence with S n
5485           (3) Thread narrowed folder with T t
5486           (4) Kill sequence with S k
5487           (5) Unthread narrowed folder with T t
5488         At this point we would have an empty folder. The change fixes
5489         this.
5490         (mh-toggle-threads): Fix documentation.
5492         * mh-customize.el (mh-invisible-header-fields): Add
5493         X-MHE-Checksum to invisible headers.
5495         * mh-comp.el (mh-insert-x-mailer): Slightly more informative
5496         X-Mailer header.
5498 2003-01-24  Satyaki Das  <satyaki@theforce.stanford.edu>
5500         * mh-e.el (mh-header-display): Modified so that quoted-printable
5501         or base64 encoded messages are left untouched.
5503         * mh-utils.el (mh-decode-content-transfer-encoded-message): Munge
5504         the Content-Transfer-Encoding header so that the MIME decoding
5505         routines of Gnus doesn't get confused.
5506         (mh-display-msg): Use insert-file-contents-literally so that
5507         display will work for non-ascii.
5509         * mh-mime.el (mh-mime-display): Use charset info to decode
5510         message file (closes SF #655123).
5512 2003-01-24  Bill Wohler  <wohler@newt.com>
5514         * mh-alias.el (mh-alias-add-alias-to-file): Removed period from
5515         error message and added parens around error function.
5517 2003-01-24  Satyaki Das  <satyaki@theforce.stanford.edu>
5519         * mh-customize.el (mh-decode-quoted-printable-flag): Removed.
5520         (mh-decode-content-transfer-encoded-message-flag): This replaces
5521         mh-decode-quoted-printable-flag.
5523         * mh-utils.el (mh-decode-content-transfer-encoded-message): New
5524         function which handles messages that are encoded as base64 or
5525         quoted-printable (closes SF #674190).
5526         (mh-decode-quoted-printable): Removed.
5527         (mh-display-msg): Use mh-decode-content-transfer-encoded-message
5528         instead of mh-decode-quoted-printable.
5530 2003-01-23  Satyaki Das  <satyaki@theforce.stanford.edu>
5532         * mh-seq.el (mh-thread-generate-scan-lines): Fix a little bug
5533         that would occasionally cause angles ('<' and '>') to appear at
5534         root level.
5536 2003-01-21  Satyaki Das  <satyaki@theforce.stanford.edu>
5538         * mh-seq.el (mh-notate-cur): Enable overlay arrow display in text
5539         mode too.
5541         * mh-e.el (mh-folder-mode): Initialize overlay-arrow-string so
5542         that a '>' is displayed in text mode.
5544 2003-01-20  Satyaki Das  <satyaki@theforce.stanford.edu>
5546         * mh-utils.el (mh-scan-msg-overflow-regexp): Change the variable
5547         so that a space is always maintained in the beginning of the scan
5548         line.
5550         * mh-seq.el (mh-notate-seq, mh-notate-cur): Make the functions
5551         faster by cutting down on the use of mh-goto-msg.
5552         (mh-toggle-threads): Add call to mh-notate-cur, since inserting
5553         the folder names in a search results folder screws up the
5554         location of the overlay arrow.
5556         * mh-index.el (mh-index-delete-folder-headers): Position the
5557         point on a message line if possible.
5559         * mh-funcs.el (mh-copy-msg): Use the mh-iterate macro to make the
5560         function faster.
5562         * mh-e.el (mh-scan-folder): Reuse mh-notate-deleted-and-refiled.
5564         * mh-loaddefs.el: Regenerated.
5566         * mh-utils.el (mh-add-msgs-to-seq): Add a new parameter that
5567         suppresses the annotation of the sequence since it is
5568         inefficient.
5570         * mh-seq.el (mh-delete-seq): Speed up the part of the function
5571         that removes the sequence notation.
5572         (mh-put-msg-in-seq, mh-notate-deleted-and-refiled): Use
5573         mh-iterate-on-messages-in-region to make the function fasters when
5574         operating on regions. The key idea is to loop over the folder
5575         buffer exactly once and do all annotations. The existing algo
5576         would walk over the buffer multiple times thereby slowing things
5577         down.
5578         (mh-iterate-on-messages-in-region): Added an extra parameter which
5579         is bound to the message index as the loop is executed.
5580         (mh-region-to-msg-list, mh-thread-delete, mh-thread-refile): Use
5581         the new mh-iterate-on-messages-in-region macro.
5583         * mh-e.el (mh-delete-msg-no-motion, mh-refile-msg, mh-undo): Same
5584         as above.
5585         (mh-notate-user-sequences): Change algorithm to make notating of
5586         user sequences fast.
5588 2003-01-19  Satyaki Das  <satyaki@theforce.stanford.edu>
5590         * mh-logo.xpm: New image file that contains the MH-E logo.
5591         Change foreground color to the blue in the MH-E logo.
5593         * Makefile (MH-E-IMG): Add mh-logo.xpm to list of image files.
5595         * mh-utils.el (mh-show-buffer-mode-line-buffer-id): Adjust it to
5596         keep space in the beginning for the logo.
5597         (mh-logo-cache): New variable that caches the logo image file
5598         location.
5599         (mh-logo-display): Display the MH-E logo on the mode line.
5600         (mh-display-msg): Display logo in mh-show-mode.
5602         * mh-e.el (mh-make-folder-mode-line): Display logo in
5603         mh-folder-mode.
5605         * mh-comp.el (mh-compose-and-send-mail): Display logo in
5606         mh-letter-mode.
5608         * mh-loaddefs.el: Regenerated.
5610         * mh-seq.el (mh-iterate-on-messages-in-region): New macro to
5611         iterate on all messages in a region.
5612         (mh-region-to-msg-list): Simplified since it uses
5613         mh-iterate-on-messages-in-region now.
5615         * mh-e.el (mh-delete-msg, mh-refile-msg): Change interactive spec
5616         to pass the region that is to be deleted when appropriate.
5617         (mh-delete-msg-no-motion, mh-refile-msg, mh-undo): Operate on
5618         regions directly without creating the list of messages to be
5619         deleted/refiled.
5620         (mh-delete-a-msg, mh-refile-a-msg, mh-undo-msg): The msg
5621         parameter in these functions can now be nil. If so, the current
5622         message is deleted, refiled or undone respectively. Avoids the
5623         use of mh-goto-msg in this case and speeds up operations on
5624         regions quite a bit.
5626 2003-01-19  Peter S Galbraith  <psg@debian.org>
5628         * mh-alias.el (mh-read-address): Bug Fix. In XEmacs and Emacs20,
5629         it would always prompt using "To: " instead of using the command
5630         argument (closes SF #670913).
5632 2003-01-19  Satyaki Das  <satyaki@theforce.stanford.edu>
5634         * mh-utils.el (mh-folder-completion-function): If there is a
5635         +foo/bar folder and the user types foo//bar then the completion
5636         function would say a match happened without showing the
5637         normalized folder name. This change fixes that.
5639 2003-01-18  Satyaki Das  <satyaki@theforce.stanford.edu>
5641         * mh-e.el (mh-rmail): Modified so that new and unseen messages
5642         are shown (closes SF #667542).
5644 2003-01-17  Satyaki Das  <satyaki@theforce.stanford.edu>
5646         * mh-index.el (mh-index-generate-pretty-name): Generate nicer
5647         names. In particular all '-' characters are removed.
5649 2003-01-16  Satyaki Das  <satyaki@theforce.stanford.edu>
5651         * mh-customize.el (mh-index-program): Documentation fix.
5653         * mh-loaddefs.el: Regenerated.
5655         * mh-customize.el (mh-index-program): Add choices for mairix and
5656         pick.
5658         * mh-index.el (mh-indexer-choices): Add search interfaces for
5659         mairix and pick.
5660         (mh-index-search): Add links for mairix and pick.
5661         (mh-index-pick-folder, mh-pick-binary): Variables needed to
5662         implement pick support.
5663         (mh-pick-execute-search, mh-pick-next-result): New functions to
5664         implement pick support.
5665         (mh-mairix-binary, mh-mairix-directory, mh-mairix-folder): New
5666         variables for mairix support.
5667         (mh-mairix-execute-search, mh-mairix-next-result)
5668         (mh-mairix-regexp-builder, mh-mairix-convert-to-sop*): New
5669         functions for mairix.
5671         * mh-funcs.el (mh-kill-folder): Move message to the end.
5673         * mh-e.el (mh-folder-mode): Make overlay-arrow-position and
5674         overlay-arrow-string local variables so that the arrow will
5675         remain even if some other folder is visited.
5676         (mh-remove-cur-notation, mh-remove-all-notation): The test isn't
5677         required any more since overlay-arrow-position is local.
5678         (mh-goto-cur-msg): Remove overlay arrow if current message
5679         doesn't exist.
5681         * mh-seq.el (mh-notate-cur): Don't need to set
5682         overlay-arrow-string any more since it is local and has been set
5683         at initialization.
5685 2003-01-15  Satyaki Das  <satyaki@theforce.stanford.edu>
5687         * mh-speed.el (mh-speed-current-folder): Keep track of current
5688         folder when flists is called.
5689         (mh-speed-flists, mh-speed-parse-flists-output): Try to avoid
5690         ambiguity when folders are present with + at the end of the name.
5691         Unfortunately it can't always be avoided.
5693         * mh-e.el (mh-folder-size): Remove the unnecessary error check.
5694         (mh-parse-flist-output-line): Add extra argument which
5695         occasionally avoid problems with folder names that end with '+'.
5697         * mh-utils.el (mh-sub-folders-actual): Fix the folder name
5698         parsing so that it doesn't get confused by trailing '+' chars in
5699         the folder name.
5701 2003-01-14  Satyaki Das  <satyaki@theforce.stanford.edu>
5703         * mh-utils.el (mh-normalize-folder-name): Enhanced so that it can
5704         now handle ".." and "." correctly during folder name completion.
5705         (mh-normalize-folder-name): Avoid error in boundary condition
5706         where the folder string is empty.
5708 2003-01-14  Mark D. Baushke  <mdb@gnu.org>
5710         * mh-e.el (mh-visit-folder): Pass `current-prefix-arg' to
5711         the `mh-read-msg-range' function as the optional
5712         always-prompt-flag.
5714 2003-01-14  Satyaki Das  <satyaki@theforce.stanford.edu>
5716         * mh-utils.el (mh-normalize-folder-name): New function that
5717         normalizes folder names.
5718         (mh-sub-folders): Use mh-normalize-folder-name. Also the function
5719         has been modified so that a trailing slash is only added if the
5720         folder potentially has subfolders.
5721         (mh-sub-folders-actual): Simplified since the folder has already
5722         been normalized in mh-sub-folders.
5723         (mh-remove-from-sub-folders-cache): Modified so that the cached
5724         results of two of the folders ancestors are invalidated.
5725         (mh-folder-completion-map): Ugly hack to make the error go away
5726         when minibuffer-complete-word is called.
5727         (mh-folder-completion-function): The completion function will now
5728         be more selective in adding '/' at the end of completed folder
5729         names.
5730         (mh-folder-completing-read): The folder name is normalized before
5731         return. The minibuffer-local-completion-map is shadowed to avoid
5732         error with SPC (bound to minibuffer-complete-word). We really
5733         need a better solution.
5735 2003-01-13  Bill Wohler  <wohler@newt.com>
5737         * mh-seq.el: Edited comment and docstring text to conform with RFC
5738         2822 terminology. Message-ID is the header field. It contains a
5739         message identifier.
5741 2003-01-13  Satyaki Das  <satyaki@theforce.stanford.edu>
5743         * mh-utils.el (mh-sub-folders): Add an argument that returns
5744         sub-folders with a / character appended at the end.
5745         (mh-folder-completion-function): Modify the function so that one
5746         tab is now sufficient to complete the folder name and add a
5747         trailing /.
5748         (mh-folder-completing-read): Remove the trailing / that the
5749         completion function now adds to the folder name. Also multiple /
5750         characters in the folder input are removed. So if the user inputs
5751         +foo///bar//baz///// then that will be converted to +foo/bar/baz.
5752         This will improve the performance of caching.
5754         * mh-seq.el (mh-notate-cur): Check that a valid current message
5755         exists before trying to notate (closes SF #667331).
5756         (mh-message-id-regexp): New variable to store regexp to recognize
5757         message-ids.
5758         (mh-thread-generate): Use mh-message-id-regexp to filter out non
5759         message-id's from the References: header.
5761 2003-01-12  Satyaki Das  <satyaki@theforce.stanford.edu>
5763         * mh-seq.el (mh-notate-cur): Disable overlay-arrow display if we
5764         aren't on a graphic display.
5766 2003-01-11  Satyaki Das  <satyaki@theforce.stanford.edu>
5768         * mh-seq.el (mh-notate-cur): New function to notate the current
5769         message. The marker in the fringe is updated too.
5770         (mh-narrow-to-seq, mh-widen, mh-thread-inc, mh-thread-folder): Use
5771         the specialized function mh-notate-cur instead of mh-notate-seq.
5773         * mh-e.el (mh-arrow-marker): New buffer local variable to store
5774         the position where the marker in the fringe is going to be
5775         displayed (closes SF #664824).
5776         (mh-folder-mode): Create a marker for the fringe.
5777         (mh-update-sequences, mh-get-new-mail, mh-goto-cur-msg): Call the
5778         specialized function mh-notate-cur instead of mh-notate-seq or
5779         mh-notate.
5780         (mh-remove-cur-notation, mh-remove-all-notation): Reset the
5781         overlay-arrow-position if needed.
5783         * mh-loaddefs.el: Regenerated.
5785 2003-01-10  Satyaki Das  <satyaki@theforce.stanford.edu>
5787         * mh-utils.el (mh-remove-from-sub-folders-cache): Modified so that
5788         creating nested folders doesn't produce inconsistent results.
5789         (mh-prompt-for-folder): Remove call of mh-folder-list-change-hook.
5791         * mh-funcs.el (mh-kill-folder): Don't ask for confirmation if
5792         called on a folder holding index search results. Also the now
5793         removed mh-folder-list-change-hook is called no more.
5795         * mh-customize.el (mh-auto-folder-collect-flag)
5796         (mh-folder-list-change-hook): Removed.
5798         * mh-loaddefs.el: Regenerated.
5800 2003-01-10  Bill Wohler  <wohler@newt.com>
5802         * mh-customize.el (mh-default-folder-must-exist-flag): New
5803         variable to suppress suggested folder if the folder doesn't
5804         already exist (closes SF #657096).
5805         (mh-default-folder-list): New variable that
5806         holds mapping between an address and the desired folder for
5807         filing (closes SF #657096).
5808         (mh-default-folder-prefix, mh-default-folder-must-exist-flag): In
5809         docstring, refer to documentation for mh-prompt-for-refile-folder
5810         and mh-folder-from-address.
5811         (mh-highlight-citation-p, mh-compose-insertion,
5812         (mh-insert-mail-followup-to-list, mh-index-program,
5813         (mh-identity-default): Fixed case of tags.
5815         * mh-e.el (mh-folder-from-address): Use new variable
5816         mh-default-folder-must-exist-flag to return nil if this variable
5817         is t and the folder doesn't already exist. In addition, can now
5818         look up a default folder in the new variable
5819         mh-default-folder-list (closes SF #657096).
5820         (mh-prompt-for-refile-folder): In docstring, refer to
5821         documentation in mh-folder-from-address.
5823         * mh-index.el (mh-swish-execute-search): Changed \..* to \\..* in
5824         the FileRules filename in the sample config file. Otherwise, the
5825         users don't see the backslash at all, and no files are indexed!
5826         (closes SF #665888).
5828 2003-01-10  Satyaki Das  <satyaki@theforce.stanford.edu>
5830         * mh-seq.el (mh-thread-folder): Get headers for exactly the
5831         messages that are present. If only messages 1-10 and 3800-3900
5832         are being shown then we will now scan exactly those messages and
5833         not the full range from 1-3900 as was being done earlier.
5834         (mh-toggle-threads): When converting from threaded to normal view
5835         only the messages present in the buffer are scanned. Earlier all
5836         messages from the minimum to the maximum would be scanned (closes
5837         SF #626117).
5839         * mh-pick.el (mh-search-folder): Fix typo.
5840         (mh-pick-do-search): Fix bug from cut and paste. Also set window
5841         config properly.
5843         * mh-utils.el (mh-prompt-for-folder): Add new argument to allow
5844         it to accept + as a folder name. This allows the user to search
5845         all folders when "Fs" is used.
5847         * mh-pick.el (mh-search-folder): Fix interactive spec of function.
5848         (mh-pick-do-search): Rewritten to call pick in one go. This will
5849         make adding pick as a default index search program easier. Also
5850         pick now accepts the same query syntax as the index search
5851         programs (closes SF #664816).
5852         (mh-next-pick-field): Removed.
5853         (mh-pick-parse-search-buffer): New function to parse the search
5854         buffer.
5855         (mh-pick-construct-regexp, mh-pick-regexp-builder): New function
5856         to produce a pick query from the parsed representation.
5858         * mh-index.el (mh-index-do-search): Refactor the search pattern
5859         parser into a new function and use that instead.
5861         * mh-loaddefs.el: Regenerated.
5863 2003-01-10  Satyaki Das  <satyaki@theforce.stanford.edu>
5865         * mh-loaddefs.el: Regenerated.
5867         * mh-utils.el (mh-remove-from-sub-folders-cache)
5868         (mh-prompt-for-folder): Replace mh-update-sub-folders-cache with
5869         mh-remove-from-sub-folders-cache.
5870         (mh-exec-cmd-daemon): Mention set-process-filter in documentation.
5872         * mh-pick.el (mh-searching-function): New buffer local variable
5873         that keeps track of the default searching function to be used.
5874         (mh-pick-mode): Make mh-searching-function buffer local.
5875         (mh-search-folder): Set mh-searching-function to use pick.
5876         (mh-search-folder, mh-pick-menu, mh-pick-mode-help-messages)
5877         (mh-pick-mode, mh-do-pick-search, mh-pick-do-search): Rename
5878         mh-do-pick-search to mh-pick-do-search. But keep
5879         mh-do-pick-search as a deprecated function.
5880         (mh-do-search): New interactive function that performs the
5881         default search.
5882         (mh-pick-mode-map): Update keymap.
5884         * mh-index.el (mh-index-search): Set mh-searching-function to do
5885         index search.
5886         (mh-index-new-folder): Replace mh-update-sub-folders-cache with
5887         mh-remover-from-sub-folders-cache.
5889         * mh-funcs.el (mh-kill-folder): Same as above.
5891         * mh-index.el (mh-index-evaluate, mh-swish++-regexp-builder):
5892         Checkdoc fixes.
5894         * mh-customize.el: Fixes to make byte compiler in CVS Emacs
5895         perfectly happy.
5897 2003-01-09  Bill Wohler  <wohler@newt.com>
5899         * mh-e.el (mh-folder-from-address): New function that proposes the
5900         name of a folder with an alias for the address in the current message.
5901         (mh-prompt-for-refile-folder): Use it (closes SF #657096).
5903         * mh-customize.el (mh-default-folder-prefix): New variable used by
5904         mh-folder-from-address.
5905         (mh-invisible-header-fields): Edited docstring.
5907         * mh-alias.el (mh-alias-address-to-alias): Added ;;;###mh-autoload
5908         cookie (used by mh-folder-from-address in mh-e.el). Edited text in
5909         comment.
5911         * mh-utils.el: Provided naming conventions for buffer and buffer
5912         variable names.
5913         (mh-temp-folders-buffer): Renamed buffer to " *mh-folders*".
5914         (mh-temp-sequences-buffer): Renamed buffer to " *mh-sequences*".
5915         (mh-info-buffer): Renamed from mh-temp-info-buffer.
5916         (mh-log-buffer): New buffer variable to hold name of "*MH-E Log*"
5917         buffer which is expected to be used for the output of MH commands.
5918         Perhaps we always create this buffer at initialization and append
5919         to it rather than erase it each time?
5921         * mh-e.el (mh-quit): Loop over all buffers and delete MH-E
5922         temporary and working buffers. As long as the buffer naming
5923         conventions are followed, new buffers will be automatically
5924         killed.
5925         (mh-version): Renamed mh-temp-info-buffer to mh-info-buffer.
5927         * mh-comp.el (mh-insert-x-mailer): Renamed mh-temp-info-buffer to
5928         mh-info-buffer.
5930 2003-01-09  Satyaki Das  <satyaki@theforce.stanford.edu>
5932         * mh-e.el (mh-folder-size): If the user doesn't have a
5933         Unseen-Sequence definition in .mh_profile then an error was
5934         produced. This change fixes that.
5936         * mh-seq.el (mh-thread-generate): Replace the *mh-thread* buffer
5937         with a temporary buffer which is cleaned up when the function
5938         exits.
5940         * mh-e.el (mh-prompt-for-refile-folder): New function which
5941         refactors out the intelligent folder guessing code from
5942         mh-refile-msg.
5943         (mh-refile-msg): Use mh-prompt-for-refile-folder.
5945         * mh-seq.el (mh-thread-refile): Use mh-prompt-for-refile-folder to
5946         do the same intelligent destination folder guessing as
5947         mh-refile-msg (closes SF #664829).
5949         * mh-utils.el (mh-folder-list, mh-make-folder-list-process)
5950         (mh-folder-list-temp, mh-folder-list-partial-line)
5951         (mh-set-folder-list): Removed.
5952         (mh-sub-folders-cache, mh-sub-folders, mh-sub-folders-actual):
5953         Moved over from mh-speed.el to implement hierarchical completion.
5954         (mh-update-sub-folders-cache): Utility function called when
5955         new folders are created or folders are removed.
5956         (mh-folder-completion-function): New function is the folder name
5957         completion function used in completing-read.
5958         (mh-folder-completing-read): A thin wrapper function that is used
5959         instead of completing-read directly. In the future we might want
5960         to allow the user a customizable variable which will turn off
5961         folders based completion.
5962         (mh-prompt-for-folder): Use mh-folder-completing-read to read in
5963         the folder name with hierachical completion (closes SF #664821).
5965         * mh-speed.el (mh-speed-folders, mh-speed-folders-cache)
5966         (mh-speed-folders-actual): Moved to mh-utils.el as mh-sub-folders,
5967         mh-sub-folders-cache and mh-sub-folders-actual respectively.
5968         (mh-speed-invalidate-map, mh-speed-invalidate-map)
5969         (mh-speed-add-folder): Use the new names.
5971         * mh-funcs.el (mh-kill-folder): Remove code that used to update
5972         mh-folder-list which is no longer present. Instead
5973         mh-update-sub-folders-cache is called.
5975         * mh-index.el (mh-index-new-folder): Same as above.
5977 2003-01-08  Satyaki Das  <satyaki@theforce.stanford.edu>
5979         * mh-utils.el (mh-exec-cmd-daemon): An argument was added which
5980         controls what is done with the process output.
5982         * mh-funcs.el (mh-kill-folder): Use mh-previous-window-config to
5983         restore window configuration. Also the call to mh-exec-cmd-daemon
5984         only displays output if an error happened (closes SF #664828).
5985         (mh-rmf-daemon): Check rmf output and display it only if
5986         something went wrong.
5987         (mh-print-msg): Pass in nil argument to mh-exec-cmd-daemon.
5989         * mh-comp.el (mh-redistribute, mh-send-letter): Pass in nil
5990         argument to mh-exec-cmd-daemon so that the functions will behave
5991         as before.
5993         * mh-pick.el (mh-search-folder): The current window config is
5994         stored.
5995         (mh-make-pick-template): Make the message headers read-only.
5996         (mh-pick-mode-help-messages): Update help message.
5997         (mh-do-pick-search): Fix problem when buffer isn't showing any
5998         messages.
5999         (mh-next-pick-field): Use buffer-substring-no-properties is
6000         better.
6001         (mh-pick-mode-map): Add key bindings (partially addresses
6002         SF #664816)
6004         * mh-index.el (mh-indexer-choices): Add a new field for each
6005         index program choice. If it is non-nil then it is the name of a
6006         function that given a lisp expression to search for generates a
6007         pattern that is acceptable to the search program.
6008         (mh-index-regexp-builder): New variable that stores the function
6009         to be used to convert from the lisp expression syntax to
6010         something that the search program understands.
6011         (mh-index-generate-pretty-name): Generalized so that it can take
6012         a list of strings as input.
6013         (mh-index-search): Modified so that if the configured program has
6014         a corresponding regexp-builder then a search buffer like pick
6015         search is produced. Otherwise the previous behavior is maintained.
6016         (mh-index-do-search): New interactive function that takes the
6017         contents of the search buffer, generates an appropriate query and
6018         produces the search results buffer by calling mh-index-search.
6019         (mh-replace-string, mh-index-parse-search-regexp)
6020         (mh-index-add-implicit-ops, mh-index-evaluate): New functions
6021         which parses the infix search expression that the user enters. A
6022         parse tree from which queries for different search programs can
6023         be produced is produced.
6024         (mh-swish++-regexp-builder, mh-swish++-print-regexp): Takes the
6025         internal form of the query and produces input suitable for
6026         swish++.
6028         * mh-loaddefs.el: Regenerated.
6030 2003-01-08  Bill Wohler  <wohler@newt.com>
6032         * Makefile (emacs-logs): New target for viewing CVS Emacs logs.
6033         Useful to see if an Emacs developer has changed MH-E.
6035         * MH-E-NEWS: Fixed case of MH-E in the "Changes" title.
6037         * mh-utils.el (mh-temp-info-buffer): New variable to hold name of
6038         buffer that contains version info.
6040         * mh-e.el (mh-version): Use mh-temp-info-buffer instead of
6041         mh-temp-buffer since version information was getting clobbered by
6042         the aliasing code before it could be seen (closes SF #664467).
6043         (mh-quit): Delete mh-temp-info-buffer.
6045         * mh-comp.el (mh-insert-x-mailer): Use mh-temp-info-buffer to find
6046         version info instead of mh-temp-buffer. You kind of need this
6047         patch to send mail.
6049 2003-01-07  Bill Wohler  <wohler@newt.com>
6051         * mh-e.el (Version, mh-version): Set to 7.1+cvs.
6053 2003-01-07  Bill Wohler  <wohler@newt.com>
6055         Released MH-E version 7.1.
6057         * MH-E-NEWS, README: Updated for release 7.1.
6059         * mh-e.el (Version, mh-version): Updated for release 7.1.
6061 2003-01-07  Bill Wohler  <wohler@newt.com>
6063         * mh-customize.el (mh-auto-folder-collect-flag,
6064         mh-alias-system-aliases, mh-alias-insert-file): Edited docstrings.
6066         * Makefile (MH-E-IMG): Added alias.pbm and alias.xpm.
6068         * mh-alias.el (mh-alias-insert-file, mh-alias-add-alias): Fixed
6069         checkdoc warnings.
6071 2003-01-07  Satyaki Das  <satyaki@theforce.stanford.edu>
6073         * mh-utils.el (mh-search-from-end): New function that is used to
6074         replace our usage of the CL function search.
6075         (font-lock): The library is loaded to avoid compilation warning
6076         in CVS Emacs.
6078         * mh-speed.el (mh-speed-goto-folder, mh-speed-add-folder)
6079         (mh-speed-extract-folder-name, mh-speed-invalidate-map): Use
6080         mh-search-from-end instead of search.
6082         * mh-seq.el (mh-thread-remove-parent-link): Use loop instead of
6083         remove*.
6084         (mh-thread-process-in-reply-to): Use mh-search-from-end instead
6085         of search.
6087         * mh-index.el (mh-md5-parser): Fix name of function.
6088         (mh-index-update-single-msg, mh-index-update-maps): Avoid using
6089         destructuring-bind since Emacs-20.7 can't handle this particular
6090         usage.
6091         (mh-namazu-next-result): Use mh-search-from-end instead of
6092         search.
6094         * mh-e.el (recursive-load-depth-limit): Add a defvar since CVS
6095         emacs which doesn't have the variable defined causes a compiler
6096         warning.
6097         (mh-refile-a-msg): Rewritten to avoid using pushnew.
6098         (mh-undo-msg): Use loop instead of remove-if.
6100         * mh-comp.el (mh-show-buffer-message-number): Use
6101         mh-search-from-end instead of search.
6103 2003-01-01  Satyaki Das  <satyaki@theforce.stanford.edu>
6105         * mh-e.el (mh-visit-folder): Modified so that if RANGE is nil then
6106         all messages are displayed. Documentation modified so that this is
6107         explicitly stated.
6108         (mh-visit-folder): Really fix it this time.
6110 2003-01-01  Mark D Baushke  <mdb@gnu.org>
6112         * mh-alias.el (mh-alias-from-has-no-alias-p): Needs the
6113         mh-autoload comment or mh-customize may have problems finding the
6114         function.
6116         * mh-loaddefs.el: Regenerated.
6118 2002-12-28  Satyaki Das  <satyaki@theforce.stanford.edu>
6120         * mh-index.el (mh-namazu-execute-search): Fix bug in documentation.
6122 2002-12-28  Bill Wohler  <wohler@newt.com>
6124         * mh-comp.el (mh-letter-mode): Mention mh-compose-insertion
6125         variable in docstring, explain how to expand directives, and
6126         don't mention mh-mhn-compose-insertion which isn't used directly
6127         any more.
6128         (mh-send-letter): Mention that X-Mailer and X-Face are inserted
6129         automatically so that a user isn't tempted to do so himself in
6130         mh-before-send-letter-hook.
6131         (mh-insert-letter): Use "variable" prefix for mh-invisible-headers
6132         now that we have both a function and a variable. Clarified
6133         language a bit.
6135 2002-12-26  Satyaki Das  <satyaki@theforce.stanford.edu>
6137         * mh-utils.el (mh-show-xface-function): Only load x-face-e21 if
6138         the emacs is not XEmacs.
6140         * mh-index.el (mh-index-new-folder): The folder created should
6141         always be added to mh-folder-list. Otherwise folder name
6142         completion doesn't find the new folder created.
6144 2002-12-24  Satyaki Das  <satyaki@theforce.stanford.edu>
6146         * mh-customize.el (mh-clean-message-header-flag)
6147         (mh-visible-headers, mh-invisible-headers)
6148         (mh-invisible-header-fields-set): Reworded to satisfy checkdoc.
6150         * mh-loaddefs.el: Regenerated.
6152         * mh-e.el (mh-inc-folder, mh-visit-folder, mh-read-msg-range):
6153         Handle nil value of mh-large-folder properly.
6155         * mh-customize.el (mh-tool-bar-show-set, mh-tool-bar-letter-set)
6156         (mh-tool-bar-folder-set, mh-tool-bar-folder-buttons)
6157         (mh-invisible-headers, mh-invisible-header-fields-set): Checkdoc
6158         fixes.
6159         (mh-large-folder): Updated to allow for infinity. If
6160         mh-large-folder is nil then all folders are deemed small.
6162 2002-12-23  Satyaki Das  <satyaki@theforce.stanford.edu>
6164         * mh-e.el (mh-inc-folder, mh-visit-folder): Emit a message if
6165         threading was suppressed because the number of messages exceed
6166         mh-large-folder.
6168 2002-12-23  Peter S Galbraith  <psg@debian.org>
6170         * mh-utils.el (mh-invisible-headers): Deleted.  Moved to
6171         mh-customize.el
6173         * mh-customize.el (mh-invisible-header-fields): New
6174         defcustom. Simple user interface to change mh-invisible-headers.
6175         (mh-invisible-header-fields-set): New function called when
6176         mh-invisible-header-fields is set.
6177         (mh-invisible-headers): New function.  Does the actual work of
6178         building the variable mh-invisible-headers from
6179         mh-invisible-header-fields.
6180         (mh-invisible-headers): defvar moved from mh-utils.el
6182 2002-12-22  Satyaki Das  <satyaki@theforce.stanford.edu>
6184         * mh-speed.el (mh-speed-folder-size): Removed. Something very
6185         similar appears as mh-folder-size.
6186         (mh-speed-view): Simplified since the range selection logic has
6187         been moved to mh-read-msg-range.
6188         (mh-speed-parse-flists-output-line): Moved to mh-e.el as
6189         mh-parse-flist-output-line.
6191         * mh-funcs.el (mh-pack-folder): Use the new mh-read-msg-range.
6193         * mh-e.el (mh-rescan-folder): Use the new mh-read-msg-range.
6194         (mh-parse-flist-output-line): Moved from mh-speed.el where this
6195         function was called mh-speed-parse-flists-output-line.
6196         (mh-folder-size): Renamed from mh-speed-folder-size. The function
6197         has been made more general and can be called from any buffer and
6198         not just the speedbar buffer.
6199         (mh-visit-folder): Use the new mh-read-msg-range (addresses SF
6200         #655891).
6201         (mh-read-msg-range): Rewritten.
6203 2002-12-21  Satyaki Das  <satyaki@theforce.stanford.edu>
6205         * mh-seq.el (mh-delete-subject-or-thread): New interactive
6206         function that intelligently deletes messages based on threading,
6207         if the folder is threaded, or on subject if folder isn't threaded.
6209         * mh-utils.el (mh-show-delete-subject-or-thread): New interactive
6210         function, callable from the show buffer, to intelligently delete
6211         messages based on threading info or subject.
6212         (mh-show-mode-map): Change binding of "k" to call
6213         mh-show-delete-subject-or-thread.
6215         * mh-e.el (mh-folder-mode-map): Change binding of "k" to call
6216         mh-delete-subject-or-thread.
6218         * mh-comp.el (mh-letter-mode-map): Add key binding for
6219         mh-insert-identity.
6221         * mh-loaddefs.el: Regenerated.
6223 2002-12-21  Peter S Galbraith  <psg@debian.org>
6225         * mh-customize.el (mh-tool-bar-letter-set): Bug fix.  The
6226         `tool-bar-add-item-from-menu' items were broken.  I can't use my
6227         constants there.
6229 2002-12-21  Peter S Galbraith  <psg@debian.org>
6231         * mh-alias.el (mh-alias-insert-file): Bug fix.  I never checked
6232         that an AliasFile entry existed in .mh_profile.
6234 2002-12-21  Peter S Galbraith  <psg@debian.org>
6236         * mh-customize.el (mh-alias-insertion-location): New defustom.
6237         Specifies where new aliases are entered in alias files.
6239         * mh-alias.el (mh-alias-add-alias-to-file): Use it.
6241 2002-12-21  Peter S Galbraith  <psg@debian.org>
6243         * mh-alias.el (mh-alias-add-alias-to-file): If ALIAS matches
6244         exactly, prompt to [i]nsert before old value or [a]ppend after it.
6245         (mh-alias-insert-file): Make sure we don't edit the passwd file.
6246         Add optional argument for alias; If ALIAS is specified and it
6247         already exists, try to return the file that contains it.
6248         (mh-alias-which-file-has-alias): New function. Return the name of
6249         writable file which defines ALIAS from list FILE-LIST.
6250         (mh-alias-add-alias): Remove prompts for case of alias already
6251         defined; done in mh-alias-add-alias-to-file.
6253 2002-12-21  Satyaki Das  <satyaki@theforce.stanford.edu>
6255         * mh-speed.el (mh-speed-folders-actual): Fix bug in parsing of
6256         folder names that have spaces in them. The original function would
6257         truncate the folder name at the first space.
6258         (mh-speed-flists): Add -sequence option to flists. This guards
6259         against the user specifying something other than the unseen
6260         sequence in his .mh_profile.
6261         (mh-speed-parse-flists-output-line): New function that parses a
6262         single line in the output of flists to find the folder name and
6263         the counts of unseesn and total messages.
6264         (mh-speed-parse-flists-output): Fix parsing bug which truncates
6265         the folder names at the first space.
6267         * mh-index.el (mh-index-generate-pretty-name): New function which
6268         generates a nicer name for the search results. It trims white
6269         space at the beginning and end and replaces white space with
6270         underscores within the search regexp.
6271         (mh-index-search): Use mh-index-generate-pretty-name.
6273         * mh-loaddefs.el: Regenerated.
6275 2002-12-20  Satyaki Das  <satyaki@theforce.stanford.edu>
6277         * mh-index.el (mh-index-new-folder): Add new folder to
6278         mh-folder-list to enable name completion.
6279         (mh-glimpse-execute-search, mh-swish-execute-search)
6280         (mh-swish++-execute-search): Fix documentation.
6282         * mh-seq.el (mh-thread-generate): Fixed a stupid bug where the wrong
6283         folder could get 'scan'ed when generating the threaded view.
6285         * mh-index.el (mh-index-search): If optional prefix arg is given
6286         then the search in the current index buffer is redone.
6287         (mh-glimpse-execute-search, mh-swish-execute-search)
6288         (mh-namazu-execute-search): Documentation fixes.
6290         * mh-e.el (mh-index-previous-search): New buffer local variable
6291         stores parameters of search that created the buffer.
6292         (mh-folder-mode): Make mh-index-previous-search buffer local.
6293         (mh-visit-folder): Tweak the function so that only a single window
6294         with the folder buffer is shown if mh-showing-mode is nil.
6296         * mh-loaddefs.el: Regenerated.
6298 2002-12-19  Peter S Galbraith  <psg@debian.org>
6300         * mh-alias.el (mh-alias-add-alias): Bug fix.
6302 2002-12-19  Peter S Galbraith  <psg@debian.org>
6304         * mh-alias.el (mh-alias-add-alias): New interactive command. Add
6305         ALIAS for ADDRESS in personal alias file.
6306         (mh-alias-grab-from-field): New interactive command. Add ALIAS for
6307         ADDRESS in personal alias file.
6308         (mh-alias-add-address-under-point): New interactive
6309         command. Insert an alias for email address under point.
6310         (mh-alias-suggest-alias): New function. Suggest an alias for STRING.
6311         (mh-alias-insert-file): New function. Return the alias file to
6312         write a new entry in.
6313         (mh-alias-address-to-alias): New function. Return the ADDRESS
6314         alias if defined, or nil."
6315         (mh-alias-from-has-no-alias-p): New function. Return t is From has
6316         no current alias set.  Used as tool-bar button enable function.
6317         (mh-alias-add-alias-to-file): New function. Add ALIAS for ADDRESS
6318         in alias FILE without alias check or prompts.
6320         * alias.xpm, alias.pbm: New tool-bar icon for
6321         mh-alias-grab-from-field.
6323         * mh-e.el (mh-folder-line-matches-show-buffer-p): New function.
6324         Return t if the message under point in folder-mode is in the show
6325         buffer.
6327         * mh-utils.el (mh-goto-address-find-address-at-point): New
6328         function copied from goto-addr.el, which we don't want to
6329         force-load on users.  Find e-mail address around or before point.
6330         (mh-address-mail-regexp): New defvar.  A regular expression
6331         probably matching an e-mail address.
6333         * mh-customize.el (mh-alias-insert-file): New defcustom.
6334         Filename to use to store new MH-E aliases.
6335         (mh-tool-bar-folder-buttons): Enable mh-tool-bar-item-alias icon.
6337         * mh-comp.el (mh-extract-from-header-value): New function.
6338         Extract From: string from header.
6340 2002-12-19  Satyaki Das  <satyaki@theforce.stanford.edu>
6342         * mh-index.el (mh-index-update-single-msg): New defvar controls
6343         max number of command line args.
6344         (mh-index-execute): New function which is to be used
6345         instead of xargs so that we don't give the shell too many command
6346         line args.
6347         (mh-index-update-maps): Use mh-index-execute instead of xargs.
6348         (mh-index-search): Remove unused code. Also the first message in
6349         folder buffer is made current.
6351 2002-12-18  Peter S Galbraith  <psg@debian.org>
6353         * mh-loaddefs.el: Regenerated.
6355         * mh-comp.el (mh-letter-tool-bar-map): Moved to mh-customize.el
6357         * mh-e.el (mh-folder-tool-bar-map): Moved to mh-customize.el
6359         * mh-utils.el (mh-get-msg-num): autoloaded.
6360         (mh-show-tool-bar-map): Moved to mh-customize.el
6362         * mh-customize.el (mh-tool-bar-item-*): 33 new defconsts for
6363         tool-bar setup and customization.
6364         (mh-tool-bar-folder-buttons-set): New function to setup the
6365         tool-bar after customization.
6366         (mh-tool-bar-folder-buttons): New defcustom to specify which icons
6367         appears in the tool-bar.
6368         (mh-tool-bar-letter-buttons-set): New function to setup the
6369         tool-bar after customization.
6370         (mh-tool-bar-letter-buttons): New defcustom to specify which icons
6371         appears in the tool-bar.
6372         (mh-tool-bar-show-set): New function to setup mh-letter-tool-bar-map.
6373         (mh-tool-bar-letter-set): New function to setup
6374         mh-letter-tool-bar-map.
6376 2002-12-18  Satyaki Das  <satyaki@theforce.stanford.edu>
6378         * mh-e.el (mh-folder-mode-map): Change entries for "\t", "\M-\t"
6379         and backtab to call mh-index-next-folder and
6380         mh-index-previous-folder as appropriate.
6382         * mh-index.el (mh-index-next-folder, mh-index-previous-folder):
6383         New interactive functions which jumps to search results of next
6384         and previous folders respectively.
6386         * mh-loadddefs.el: Regenerated.
6388         * mh-index.el (mh-index-delete-folder-headers): Arrange for
6389         mh-goto-cur-msg to just go to the current message.
6391         * mh-e.el (mh-visit-folder): Since mh-scan-folder erases the whole
6392         buffer anyway, we don't need to delete the folder headers. Also
6393         index-data is non-nil only when the buffer folder doesn't exist.
6394         So we need to call mh-make-folder.
6395         (mh-folder-mode): Fix bug in that mh-index-checksum-origin-map was
6396         not being made buffer local!
6398 2002-12-17  Satyaki Das  <satyaki@theforce.stanford.edu>
6400         * mh-e.el (mh-visit-folder): Fix bug.
6402         * mh-index.el (mh-md5sum-buffer): Buffer from which md5sum is run.
6403         (mh-index-folder-first, mh-index-folder-last)
6404         (mh-index-original-msg-list): Convenience macros aren't needed
6405         anymore since the data structure has been changed.
6406         (mh-index-update-single-msg): New function to update maps that
6407         relate MD5 checksums to actual messages and vice-versa for a
6408         single message.
6409         (mh-index-update-maps): Do the above for all messages. If some
6410         messages don't have MD5 checksums, they are annotated with the
6411         result of md5sum.
6412         (mh-index-search): Updated for the new version of mh-index-data.
6413         (mh-msg-exists-p): New function to test a message exists.
6414         (mh-index-insert-folder-headers): Updated for new mh-index-data.
6415         (mh-index-delete-folder-headers): New function used to eliminate
6416         original folder names from the buffer and make it look like a
6417         plain folder buffer. This is used from mh-process-commands.
6418         (mh-index-visit-folder): Use new version of mh-index-data.
6419         (mh-index-match-checksum): New function which checks if the
6420         X-MHE-Checksum header of a message matches.
6421         (mh-index-execute-commands): New function that rmm's the original
6422         messages. Then after mh-execute-commands executes it will seem
6423         that the original messages were executed upon. This completes the
6424         fix of SF #623321.
6425         (mh-checksum-buffer): Renamed from mh-md5sum-buffer.
6426         (mh-checksum-cmd, mh-checksum-parser): New globals to allow
6427         different checksum programs to be used.
6428         (mh-checksum-choose): New functions to find a checksum program.
6429         (mh-openssl-parser, mh-md5sum-parser, mh-md5-parser): Functions to
6430         parse the output of md5, md5sum and openssl.
6431         (mh-index-update-maps): Use checksum parsing function.
6432         (mh-index-search): Set checksum choice. Add a call to recenter,
6433         otherwise the window point in the index buffer doesn't get set
6434         properly.
6436         * mh-funcs.el (mh-pack-folder, mh-sort-folder): Enable these
6437         functions in folders created by index search.
6439         * mh-e.el (mh-index-msg-checksum-map)
6440         (mh-index-checksum-origin-map): New buffer local variables that
6441         keep track of message checksums (used to implement
6442         refiling/deletion for folders created by index folders).
6443         (mh-last-msg): Make the function behave like mh-first-msg.
6444         (mh-visit-folder): Add new optional argument which initializes
6445         folders created by mh-index-search.
6446         (mh-folder-mode): Make the variables mh-index-msg-checksum-map and
6447         mh-index-checksum-origin-map buffer local.
6448         (mh-process-commands): Call mh-index-execute-commands when called
6449         from an index search buffer. This will reflect the changes being
6450         made in the search folder to the original folders.
6452         * mh-loaddefs.el: Regenerated.
6454 2002-12-16  Satyaki Das  <satyaki@theforce.stanford.edu>
6456         * mh-index.el (mh-index-insert-folder-headers): Fix a bug which
6457         caused the folder buffer to be marked as modified after rescanning
6458         an index folder.
6460 2002-12-15  Satyaki Das  <satyaki@theforce.stanford.edu>
6462         * mh-e.el (mh-visit-folder): The function should insert folder
6463         names if it is visiting a folder created by index search.
6465         * mh-index.el (mh-index-insert-folder-headers): The function now
6466         maintains the old value of buffer-modified-p and temporarily makes
6467         the buffer writable.
6469         * mh-utils.el (mh-show-index-visit-folder): New interactive
6470         function callable from show buffer that displays search results
6471         from one folder.
6472         (mh-show-mode-map): Key binding for "v".
6474         * mh-speed.el: Fix credits.
6475         (mh-index-folder-speedbar-buttons)
6476         (mh-index-show-speedbar-buttons)
6477         (mh-index-folder-speedbar-key-map)
6478         (mh-index-show-speedbar-key-map)
6479         (mh-index-folder-speedbar-menu-items)
6480         (mh-index-show-speedbar-menu-items): Removed since the modes
6481         mh-index-folder-mode and mh-index-show-mode no longer exist.
6482         (mh-speed-extract-folder-name): Remove the bits about
6483         mh-index-folder-mode and mh-index-show-mode.
6485         * mh-seq.el (mh-copy-seq-to-eob): Updated to work properly with
6486         index search results.
6487         (mh-region-to-msg-list): Skip over non-scan lines.
6488         (mh-thread-inc, mh-thread-add-spaces, mh-thread-folder): Skip
6489         non-scan lines when populating mh-thread-scan-line-map.
6490         (mh-thread-folder, mh-toggle-threads): Move the check for buffer
6491         modification from mh-thread-folder to mh-toggle-threads.
6492         (mh-toggle-threads): When returning to unthreaded view insert the
6493         folder names if called from a index folder.
6495         * mh-index.el: Fix credits and update commentary.
6496         (font-lock-defaults, mh-index-buffer, mh-index-show-buffer)
6497         (mh-index-ma-x-msg-index, mh-index-other-buffer)
6498         (mh-index-matches, mh-index-previous-window-configuration)
6499         (mh-index-current-msg, mh-index-folder-mode-keymap)
6500         (mh-index-button-map, mh-index-folder-mode-help-messages): Remove
6501         eliminated variables.
6502         (mh-index-folder): New variable sets the MH folder under which the
6503         index searches are stored.
6504         (mh-index-folder-first, mh-index-folder-last)
6505         (mh-index-original-msg-list): Convenience macros used to pull data
6506         elements out of a list. If needed setf can be used to change them
6507         as well.
6508         (mh-index-search): Rewritten to create real folders where all the
6509         normal folder operation. This partially fixes SF #623321 (refiles
6510         and deletes doesn't work on original messages).
6511         (mh-index-find-max-width, mh-index-search-again)
6512         (mh-index-insert-scan, mh-index-callback, mh-index-search)
6513         (mh-index-notate, mh-index-show, mh-index-header-display)
6514         (mh-index-next, mh-index-folder-mode, mh-index-show-mode):
6515         Functions, macros and modes removed.
6516         (mh-folder-exists-p): New function to check if a folder exists.
6517         (mh-index-new-folder): Generate a new folder name from a given
6518         base string that mimics the way emacs generates buffer names.
6519         (mh-index-insert-folder-headers): Insert folder names among the
6520         search results.
6521         (mh-index-visit-folder): New interactive function to show the
6522         search results of one individual folder.
6523         (mh-swish++-execute-search): Update documentation.
6525         * mh-funcs.el (mh-pack-folder, mh-sort-folder): Disable these
6526         functions if index search results are being viewed.
6528         * mh-e.el (mh-folder-font-lock-keywords): Add highlight for
6529         folder.
6530         (mh-index-data): New buffer local variable that will be used to
6531         store info about index search results.
6532         (mh-rescan-folder): Implement rescanning for index search results.
6533         (mh-folder-mode): Make mh-index-data buffer local.
6534         (mh-remove-all-notation): Modified to take into account not all
6535         lines in the folder buffer are normal scan lines.
6536         (mh-folder-mode-map): Add key binding for "v" to jump to original
6537         folder narrowed to search results.
6539         * mh-customize.el (mh-index-folder-face): Make it bold so that it
6540         will look like before.
6542         * mh-loaddefs.el: Regenerated.
6544 2002-12-12  Satyaki Das  <satyaki@theforce.stanford.edu>
6546         * mh-seq.el (mh-map-to-seq-msgs): Modified so that it can be given
6547         a list of messages in addition to a sequence.
6548         (mh-region-to-sequence, mh-region-to-msg-list): The function
6549         mh-region-to-msg-list replaces mh-region-to-sequence. The new
6550         function avoids creating a dummy sequence in MH-E.
6551         (mh-thread-delete, mh-thread-refile, mh-put-msg-in-seq): Modified
6552         to use mh-region-to-msg-list.
6554         * mh-funcs.el (mh-copy-msg): Modified to use mh-region-to-msg-list.
6556         * mh-e.el (mh-delete-msg, mh-refile-msg, mh-undo): Modified to use
6557         mh-region-to-msg-list.
6559         * mh-comp.el (mh-forward): Modified to use mh-region-to-msg-list.
6560         The buffer-local variable mail-header-separator is no longer
6561         bound. This fixes a bug where the default value of
6562         mail-header-separator gets used if mh-forward is called in a fresh
6563         emacs session.
6564         (mh-annotate-msg): Update this so that it will handle message
6565         lists too.
6566         (mh-insert-letter): Make the test stronger. Since %d is being used
6567         the argument better be an integer.
6569         * mh-loaddefs.el: Regenerated.
6571 2002-12-11  Satyaki Das  <satyaki@theforce.stanford.edu>
6573         * mh-funcs.el (mh-copy-msg): Add support for transient-mark-mode.
6574         If mark is active and transient-mark-mode is enabled then all the
6575         messages in the region are copied.
6577         * mh-seq.el (mh-list-sequences): Use mh-coalesce-msg-list to print
6578         messages in sequence nicely. The prompt for the folder is removed
6579         (the current folder is always used) and the output is made nicer
6580         by not overflowing the screen width.
6582         * mh-loaddefs.el: Regenerated.
6584 2002-12-09  Satyaki Das  <satyaki@theforce.stanford.edu>
6586         * mh-comp.el (mh-letter-complete): Checkdoc fix.
6588         * mh-seq.el (mh-thread-current-indentation-level): New function
6589         which returns the thread indentation level of current message.
6590         (mh-thread-next-sibling, mh-thread-previous-sibling): New
6591         interactive functions to jump to the next and previous siblings in
6592         thread tree respectively.
6593         (mh-thread-immediate-ancestor): New function to jump to ancestor
6594         of current message in thread tree.
6595         (mh-thread-ancestor): New interactive function to jump to
6596         immediate ancestor or to root message of current thread depending
6597         on optional argument.
6599         * mh-utils.el (mh-show-thread-ancestor)
6600         (mh-show-thread-next-sibling, mh-show-thread-previous-sibling):
6601         Interactive functions callable from the show buffer.
6602         (mh-show-thread-map): Bindings for Tu, Tp and Tn.
6604         * mh-e.el (mh-thread-map): Bindings for Tu, Tp and Tn.
6606         * mh-loaddefs.el: Regenerated.
6608 2002-12-09  Satyaki Das  <satyaki@theforce.stanford.edu>
6610         * mh-seq.el (mh-region-to-sequence): Change name of region
6611         sequence created to 'mhe-region. This avoids any chance of
6612         collision with actual MH sequences.
6613         (mh-put-msg-in-seq, mh-thread-delete, mh-thread-refile): Change
6614         name of region sequence used to 'mhe-region. Also delete the
6615         'mhe-region sequence when done.
6617         * mh-e.el (mh-delete-msg, mh-refile-msg, mh-undo): Same as above.
6619         * mh-comp.el (mh-forward): Same as above.
6621         * mh-loaddefs.el: Regenerated.
6623 2002-12-08  Bill Wohler  <wohler@newt.com>
6625         * mh-alias.el: Edited documentation. Broke up file into 2
6626         sections: Alias Loading and Alias Expansion. Made terminology
6627         consistent (replaced expand, substitute, and translate with
6628         expand).
6629         (mh-alias-reload): Brought message in line with coding conventions
6630         and made more concise too.
6631         (mh-alias-translate): Renamed to mh-alias-expand.
6632         (mh-alias-substitute-aliases-flag): Renamed to
6633         mh-alias-expand-aliases-flag.
6634         (mh-alias-reload-local-users): Renamed to mh-alias-local-users.
6635         Now just returns an alist of local users rather than have
6636         side-effects.
6637         (mh-alias-reload): Set timestamp at beginning of function to catch
6638         edge case when alias added just after ali runs. Changed logic to
6639         reflect return value of mh-alias-local-users.
6641         * mh-customize.el (mh-alias-substitute-aliases-flag): Renamed to
6642         mh-alias-expand-aliases-flag.
6643         (mh-alias-local-users): Fixed documentation.
6645         * mh-loaddefs.el: Regenerated
6647 2002-12-08  Satyaki Das  <satyaki@theforce.stanford.edu>
6649         * mh-e.el (require): Load Gnus at compile time so that the
6650         constant gnus-version is defined when MH-E is being compiled.
6651         (mh-macro-expansion-time-gnus-version, mh-run-time-gnus-version):
6652         Use the constant gnus-version instead of the function gnus-version
6653         to find out about gnus version information.
6654         (gnus-version): Remove the autoload since it is not needed any
6655         more.
6657 2002-12-08  Bill Wohler  <wohler@newt.com>
6659         * mh-e.el (mh-version): Moved compilation information in front of
6660         Emacs information. The idea is that you start at MH-E and move
6661         outwards. Show N/A if Gnus not compiled (be explicit). Matched
6662         coding style with other output statements. (Aside: not that
6663         efficiency matters here, but fewer calls to format have to be
6664         faster, right? ;-). Matched output style of old output to new
6665         statement--liked Satyaki's indentation better ;-).
6667 2002-12-08  Satyaki Das  <satyaki@theforce.stanford.edu>
6669         * mh-e.el (gnus-version): Autoload the function for use in
6670         mh-version.
6671         (mh-macro-expansion-time-gnus-version): New macro that finds the
6672         Gnus version at macro expansion time.
6673         (mh-run-time-gnus-version): New function to find the Gnus version
6674         at run time.
6675         (mh-version): Add information about Gnus versions available at
6676         compile time and run time.
6678 2002-12-07  Peter S Galbraith  <psg@debian.org>
6680         * mh-alias.el (mh-alias-ali): Add optional argument.  if USER is
6681         t, then assume ALIAS is an address and call ali with option -user.
6683         * mh-alias.el (mh-alias-filenames): if ARG is t, appends list of
6684         files from `mh-alias-system-aliases' to output list obtained from
6685         mhparam output user list only.
6686         (mh-alias-tstamp): Use it.
6688 2002-12-05  Satyaki Das  <satyaki@theforce.stanford.edu>
6690         * mh-mime.el (mh-inline-vcard-p): A new function which decides if
6691         a vcard should be displayed inline.
6692         (mh-mime-display-single): Use mh-inline-vcard-p to display
6693         attached vcard as a signature if no other signature is present
6694         (this partially addresses SF #649216).
6696 2002-12-05  Peter S Galbraith  <psg@debian.org>
6698         * mh-comp.el (mh-send-letter): Edits docs for mh-mml-to-mime
6699         getting run if variable `mh-mml-compose-insert-flag' is set.
6700         (mh-get-header-field): use buffer-substring-no-properties instead
6701         of buffer-substring.
6703 2002-12-04  Peter S Galbraith  <psg@debian.org>
6705         * mh-loaddefs.el: Regenerated.
6707         * mh-customize.el (mh-customize): Add ;;;###mh-autoload tag.
6709 2002-12-04  Peter S Galbraith  <psg@debian.org>
6711         * mh-loaddefs.el: Regenerated.
6713         * mh-comp.el (mh-letter-complete): New command to do alias or word
6714         completion in letter-mode.
6715         (mh-letter-mode-map): Add \M-\t binding for mh-letter-complete.
6717         * mh-alias.el (mh-alias-letter-mode-expand-alias-hook): Obsolete.
6718         Replaced by mh-letter-complete command.
6719         (mh-alias-reload-maybe): New function to rebuild alias table if
6720         out of date.
6721         (mh-alias-letter-expand-alias): No longer interactive.  Use
6722         mh-letter-complete instead.
6724 2002-12-04  Peter S Galbraith  <psg@debian.org>
6726         * mh-customize.el (mh-letter-complete-function): New defcustom.
6727         Function to call when completing outside of fields specified to
6728         aliases.
6730         * mh-alias.el (mh-alias-filenames):
6731         s/mh-mhparam-component/mh-profile-component/
6732         (mh-profile-component): Move to mh-utils.el and make interactive.
6733         (mh-read-address): Make it autoloaded.
6735         * mh-loaddefs.el: Regenerated.
6737         * mh-comp.el (mh-read-address): Removed.  Replaced by mh-alias
6738         version.
6740         * mh-utils.el (mh-profile-component): Moved from mh-alias.el.
6742 2002-12-04  Satyaki Das  <satyaki@theforce.stanford.edu>
6744         * mh-seq.el (mh-msg-is-in-seq): Formatting change.
6746         * mh-index.el (mh-index-insert-scan): Remove unused variable.
6748 2002-12-04  Bill Wohler  <wohler@newt.com>
6750         * mh-loaddefs.el: Regenerated.
6752         * Makefile (MH-E-SRC): Moved mh-loaddefs.el into MH-E-LOADDEFS as
6753         this was causing a cycle.
6754         (MH-E-LOADDEFS): New variable to house mh-loaddefs.el.
6755         (emacs): Reintroduced autoloads.
6756         (autoloads): We're baaa-aack!
6757         (dist, install-emacs): Use MH-E-LOADDEFS.
6759         * mh-comp.el (mh-customize): Moved to mh-customize.el.
6761         * mh-customize.el (mh-customize): Moved here from mh-comp. Makes
6762         more sense, doesn't it?
6764         * mh-alias.el, mh-comp.el, mh-e.el, mh-index.el, mh-mime.el,
6765         mh-pick.el, mh-speed.el: Added mh-autoload cookie to all
6766         interactive functions.
6768 2002-12-04  Satyaki Das  <satyaki@theforce.stanford.edu>
6770         * Makefile (world): Remove target.
6771         (mh-loaddefs.el): Add comment that only GNU Emacs can be used to
6772         regenerate mh-loaddefs.el.
6774         * mh-make.el: Removed.
6776 2002-12-04  Mark D. Baushke  <mdb@gnu.org>
6778         * mh-e.el (recursive-load-depth-limit): Only modify the limit
6779         if it is an integer.
6781 2002-12-04  Peter S Galbraith  <psg@debian.org>
6783         * mh-utils.el (mh-header-field-beginning): New function. Move to
6784         the beginning of the current header field.
6786 2002-12-04  Satyaki Das  <satyaki@theforce.stanford.edu>
6788         * mh-make.el (mh-files): Read in the MH-E filenames from the
6789         environment variable where the Makefile puts it.
6790         (mh-generate-autoloads, step2): Simplified since we now have the
6791         complete file names.
6793         * Makefile (world): Pass the MH-E files into the script, so that
6794         the filenames don't need to be repeated in the script.
6796 2002-12-04  Bill Wohler  <wohler@newt.com>
6798         * mh-loaddefs.el: New file. Check in automatically generated file
6799         and include in package for the benefit of those who don't want to
6800         or can't compile.
6802         * Makefile (MH-E-SRC): Added mh-loaddefs.el now that it is checked
6803         in and will be packaged.
6804         (emacs): Removed autoloads. Adding mh-loaddefs.el to MH-E-SRC is
6805         sufficient to build it.
6806         (compile): Depend on MH-E-SRC instead of MH-E-OBJ and pass $? into
6807         emacs so that Emacs is only invoked once to compile files. This
6808         speeds things up by a factor of 3. It would be nice to only pass
6809         those files that have been modified, but Emacs 21.4 will have
6810         batch-byte-compile-if-not-done which we might be able to copy into
6811         mh-make.el (or my proposed mh-e-dev.el which would be more
6812         general-purpose).
6813         (.SUFFIXES): Removed. Now that compile works directly on the
6814         sources, the implicit rule is obsolete.
6815         (autoloads): Deleted. See emacs change above.
6817 2002-12-03  Bill Wohler  <wohler@newt.com>
6819         * Makefile (MH-E-SRC, emacs):
6821 2002-12-03  Satyaki Das  <satyaki@theforce.stanford.edu>
6823         * mh-make.el (mh-emacs): Make failing condition more strict.
6824         (mh-loaddefs-end): Remove redundant statement.
6826         * Makefile (world): A little typo. The bug didn't seem to make any
6827         difference though.
6829         * mh-make.el: New script that compiles MH-E.
6830         (mh-loaddefs-beginning, mh-loaddefs-end): Don't save the autoloads
6831         file in between. Only save at the end.
6832         (mh-emacs-generate-autoloads, mh-xemacs-generate-autoloads)
6833         (mh-generate-autoloads): Replace the separate functions in Emacs
6834         and XEmacs with one that works in both variants. This simplifies
6835         the script a lot.
6836         (mh-generate-autoloads): doc fix.
6838         * Makefile (world): New target which works for both GNU Emacs and
6839         XEmacs.
6841 2002-12-03  Peter S Galbraith  <psg@debian.org>
6843         * mh-alias.el (mh-mhparam-component): Don't raise error if call to
6844         mhparam fails.
6846         * mh-alias.el (mh-alias-letter-expand-alias): Build alias table if
6847         not already available.
6849 2002-12-03  Bill Wohler  <wohler@newt.com>
6851         * mh-customize.el (mh-show-threads-flag): Alphabetized.
6853 2002-12-03  Jeffrey C Honig  <jch@honig.net>
6855         * Makefile: Moved .PHONY rule after all rule for compatibility
6856         with BSD/OS's old pmake.
6858 2002-12-03  Mark D Baushke  <mdb@gnu.org>
6860         * mh-e.el (mh-get-new-mail): Simplify no-new-mail test.
6861         (mh-add-cur-notation): Remove unnecessary function.
6863 2002-12-03  Peter S Galbraith  <psg@debian.org>
6865         * mh-identity.el (mh-identity-make-menu): Check if
6866         'mh-letter-mode-map' is bound, since this code also gets run when
6867         mh-customize.el is loaded at startup.
6869 2002-12-03  Satyaki Das  <satyaki@theforce.stanford.edu>
6871         * mh-customize.el (mh-show-threads-flag): New customizable
6872         variable which controls if new folders start of in threaded mode
6873         (closes SF #646794).
6875         * mh-e.el (mh-rescan-folder): Fix the function so that threading
6876         is preserved across rescans.
6877         (mh-visit-folder, mh-inc-folder): The folder is threaded if it was
6878         already threaded or if mh-show-threads-flag is non-nil and the
6879         number of scan lines is fewer than mh-large-folders (closes SF
6880         #646794).
6882 2002-12-02  Mark D Baushke  <mdb@gnu.org>
6884         * mh-e.el (mh-add-cur-notation): New function to mark the
6885         current message with the mh-note-cur character.
6886         (mh-get-new-mail): Use mh-add-cur-notation to undo the work of
6887         mh-remove-cur-notation if there was no new mail (closes SF #647681).
6889         * mh-e.el (mh-set-cmd-note): Do not update the default mh-cmd-note
6890         value (closes SF #643701).
6892 2002-12-02  Peter S Galbraith  <psg@debian.org>
6894         * mh-alias.el (mh-alias-reload): Renamed from mh-alias-learn-aliases.
6895         (mh-alias-load-local-users): Renamed from mh-alias-learn-local-users.
6896         (mh-alias-passwd-alist): New variable, holding aliases extracted
6897         from the passwd file.
6898         (mh-alias-tstamp): New variable storing the timestamp for alias
6899         list generation.
6900         (mh-read-address, mh-alias-reload, mh-alias-reload-local-users):
6901         Complete rewrite.
6902         (mh-alias-minibuffer-confirm-address): Use mh-alias-translate.
6903         (mh-alias-translate): New function.  Return translation for alias,
6904         checking if in blind or passwd list.
6905         (mh-alias-letter-expand-alias): Rewrite using
6906         mail-abbrev-complete-alias from mailabbrev.el
6907         (mh-alias-expand-alias-map): New variable.
6908         (mh-alias-ali): New function. Return formatted string of
6909         translated ALIAS from ali.
6910         (mh-mhparam-component): New function. Return COMPONENT value from
6911         mhparam, or nil if unset.
6912         (mh-alias-filenames): New function. Provide list of alias
6913         filenames from mhparam, or nil if none are set.
6915         * mh-customize.el (mh-alias-display-blind-name-on-completion-flag):
6916         Obsoleted.
6917         (mh-alias-timestamp): Renamed to mh-alias-system-aliases.
6919 2002-12-02  Bill Wohler  <wohler@newt.com>
6921         * Makefile (mh-loaddefs.el): Suppress creation of backup file.
6923 2002-12-02  Mark D. Baushke  <mdb@gnu.org>
6925         * Makefile (mh-loaddefs.el): Simplify rule.
6927         * Makefile (clean): Remove mh-loaddefs.el* for good measure.
6928         ($(MH-E-OBJ)): Depend on mh-loaddefs.el to compile these.
6929         (autoloads, mh-loaddefs.el): Revamp rules.
6930         (mh-loaddefs.el-tail, autoloads-gen): Remove rules.
6932         * mh-e.el (recursive-load-depth-limit): Do not try to
6933         bump the value unless the variable exists.
6935         * mh-e.el (recursive-load-depth-limit): Bump value of
6936         recursive-load-depth-limit to 50 to allow emacs 21.1 which
6937         normally has a default value of 10 to be able to compile MH-E.
6939 2002-12-02  Satyaki Das  <satyaki@theforce.stanford.edu>
6941         * mh-funcs.el (mh-pack-folder, mh-sort-folder): Fix the functions
6942         so that threading is preserved (needed for SF #646794).
6944         * mh-identity.el (mh-identity-signature-start)
6945         (mh-identity-signature-end): Checkdoc fixes.
6947         * mh-e.el (mh-previous-unread-msg, mh-next-unread-msg): Checkdoc
6948         fixes.
6950 2002-12-01  Satyaki Das  <satyaki@theforce.stanford.edu>
6952         * mh-identity.el (compile): Make mh-identity.el compile without
6953         warnings.
6955         * mh-e.el (mh-previous-unread-msg, mh-next-unread-msg): New
6956         interactive functions that go to next and previous unread
6957         messages (closes SF #630328).
6958         (mh-folder-mode-map): Add key bindings for M-n and M-p to
6959         mh-folder-mode-map.
6961         * mh-utils.el (mh-show-next-unread-msg)
6962         (mh-show-previous-unread-msg): New interactive functions that go
6963         to the next and previous unread messages respectively. These are
6964         callable from the show buffer.
6965         (mh-show-mode-map): Add key bindings for M-n and M-p to
6966         mh-show-mode-map.
6968 2002-12-01  Bill Wohler  <wohler@newt.com>
6970         * mh-mime.el (mh-defun-compat): Make it indent like a defun.
6972         * mh-index.el (mh-defun-index): Make it indent like a defun.
6974         * mh-customize.el: New file (closes SF #643722).
6976         * Makefile (MH-E-SRC): Added mh-customize.el (closes SF #643722).
6978         * mh-speed.el, mh-pick.el, mh-mime.el, mh-index.el, mh-e.el,
6979         mh-comp.el: Moved all defgroups, defcustoms, and deffaces to
6980         mh-customize.el (closes SF #643722).
6982         * mh-utils.el (mh-xemacs-flag): Moved here from below since
6983         needed by mh-customize.el.
6984         (mh-customize): Required. mh-invisible-headers)
6985         (mh-bury-show-buffer-flag, mhl-formfile):
6986         Moved all defgroups, defcustoms, and deffaces to mh-customize.el
6987         (closes SF #643722) .
6989         * mh-identity.el (mh-comp-loaded): New variable in a desparate
6990         attempt to prevent an infinite loop.
6991         (eval-when-compile): Was able to remove these defvars as they are
6992         now predefined in mh-loaddefs and mh-customize.
6993         (mh-identity-list-set): Added ;;;###mh-autoload cookie.
6994         Moved all defgroups, defcustoms, and deffaces to mh-customize.el
6995         (closes SF #643722).
6997         * mh-alias.el (mh-e): Require this, as it needs defcustoms, which
6998         is in mh-customize which is required by mh-utils which is required
6999         by mh-e.
7000         Moved all defgroups, defcustoms, and deffaces to mh-customize.el
7001         (closes SF #643722).
7003 2002-11-30  Satyaki Das  <satyaki@theforce.stanford.edu>
7005         * mh-e.el (mh-thread-map): Add key bindings "Td" and "To" (closes
7006         SF #630493).
7007         (mh-help-messages): Update help message for prefix map.
7008         (mh-help-messages): Doc fix.
7009         (mh-help-messages): Really fix it.
7011         * mh-utils.el (mh-show-thread-delete, mh-show-thread-refile): New
7012         interactive functions corresponding to mh-thread-delete and
7013         mh-thread-refile callable from the show buffer.
7014         (mh-show-thread-map): Add key bindings for "Td" "To".
7016         * mh-seq.el (mh-narrow-to-seq, mh-put-msg-in-seq, mh-rename-seq)
7017         (mh-narrow-to-subject, mh-delete-subject, mh-toggle-threads): Add
7018         mh-autoload cookies.
7019         (mh-thread-find-children): New function which finds the region
7020         containing all children of a message.
7021         (mh-thread-delete): New interactive function that marks for
7022         deletion the current message and its children.
7023         (mh-thread-refile): New interactive function that marks for
7024         refiling the current message and its children.
7026 2002-11-30  Bill Wohler  <wohler@newt.com>
7028         * mh-funcs.el, mh-identity.el, mh-index.el, mh-pick.el, mh-seq.el:
7029         Removed MH-E autoloads. These are now provided by mh-loaddefs.el.
7030         Added ;;;###mh-autoload tag to selected functions so that
7031         autoloads for those functions can be automatically created in
7032         mh-loaddefs.el (closes half of SF #643722).
7034         * mh-mime.el (mh-buffer-data): Moved to mh-utils where it is used.
7035         Added ;;;###mh-autoload tag to selected functions so that
7036         autoloads for those functions can be automatically created in
7037         mh-loaddefs.el (closes half of SF #643722)..
7039         * mh-utils.el (mh-loaddefs): Added require.
7040         (mh-buffer-data): Moved here from mh-mime.el as it is used in
7041         mh-display-msg.
7042         (mh-set-cmd-note): Moved to mh-e.el.
7043         Removed MH-E autoloads. These are now provided by mh-loaddefs.el.
7044         Added ;;;###mh-autoload tag to selected functions so that
7045         autoloads for those functions can be automatically created in
7046         mh-loaddefs.el (closes half of SF #643722)..
7048         * mh-e.el (mh-set-cmd-note): Moved here from mh-utils.el since it
7049         uses mh-scan-format-file which is defined here.
7050         Removed MH-E autoloads. These are now provided by mh-loaddefs.el.
7051         Added ;;;###mh-autoload tag to selected functions so that
7052         autoloads for those functions can be automatically created in
7053         mh-loaddefs.el (closes half of SF #643722)..
7055         * mh-comp.el, mh-speed.el (mh-utils): Removed require. mh-utils is
7056         provided via mh-e.el.
7057         Removed MH-E autoloads. These are now provided by mh-loaddefs.el.
7058         Added ;;;###mh-autoload tag to selected functions so that
7059         autoloads for those functions can be automatically created in
7060         mh-loaddefs.el (closes half of SF #643722)..
7062         * Makefile (emacs): Add dependency on autoloads.
7063         (clean): Remove mh-loaddefs.el too.
7064         (autoloads): New target. Builds mh-loaddefs.el.
7065         (mh-loaddefs.el): New target. Initializes mh-loaddefs.el.
7066         (mh-loaddefs.el-tail): New target. Appends to mh-loaddefs.el.
7067         (autoloads-gen): Runs batch-update-autoloads to populate
7068         mh-loaddefs.el (closes half of SF #643722)..
7069         (auto-autoloads.elc): Renamed from autoloads to be explicit about
7070         file that's created.
7071         (custom-load.elc): Ditto.
7073 2002-11-30  Satyaki Das  <satyaki@theforce.stanford.edu>
7075         * mh-seq.el (mh-thread-last-ancestor): New variable which keeps
7076         track of oldest ancestor of last message. If due to narrowing the
7077         common ancestor of two messages is lost then one of them is
7078         promoted to be the parent of the other. This variable helps in
7079         this process.
7080         (mh-thread-generate-scan-lines): Group messages which belong to
7081         the same thread tree, even if a common ancestor is no longer
7082         present.
7083         (mh-thread-folder, mh-copy-seq-to-eob, mh-thread-inc): Bind
7084         mh-thread-last-ancestor to nil when calling
7085         mh-thread-generate-scan-lines.
7087         * mh-mime.el (font-lock): Font-lock required at compile time to
7088         avoid warning about font-lock-maximum-size
7089         (mh-display-smileys, mh-display-emphasis): Show graphical smileys
7090         and emphasis only if message isn't too large.
7092         * mh-e.el (mh-visit-folder): Revisiting a buried folder which has
7093         been threaded or narrowed confuses MH-E. Even though the folder is
7094         displayed as not threaded and not narrowed, MH-E still believes
7095         the folder is in the previous state. This can cause problems when
7096         trying to narrow/thread the folder. The change fixes this.
7098         * mh-mime.el (mh-mime-display-alternative): The setting of
7099         mh-display-buttons-for-inline-parts-flag was not being used when
7100         displaying one of the alternatives. This change fixes that.
7102         * mh-comp.el (mh-show-buffer-message-number): Replace subseq with
7103         substring.
7104         (mh-filter-out-non-text): When filtering out MIME buttons from
7105         yanked text, the last line of the MIME part was getting lost. The
7106         fix avoids that and removes only the last new line instead.
7108 2002-11-29  Peter S Galbraith  <psg@debian.org>
7110         * Makefile (MH-E-SRC): Add mh-alias.
7112         * mh-alias.el: Assign copyright to FSF instead of myself.
7113         (mh-read-address): Add support for emacs-21's
7114         completing-read-multiple to prompt for multiple entries.
7115         (mh-alias-PC-complete-address): Deleted.
7116         (mh-alias-learn-aliases): Use mh-exec-cmd-quiet instead of old kludge.
7117         (mh-alias-letter-mode-expand-alias-hook): Simplify.
7118         (mh-alias-hostname): Deleted.
7119         (mh-alias-substitute-aliases-flag): Change default to nil.
7120         (mh-alias-display-blind-name-on-completion-flag) Change default to
7121         nil.
7122         (mh-alias-alist): Now holds alias values.
7123         (mh-alias-lowercase-alist): Deleted.
7124         (mh-alias-minibuffer-confirm-address, mh-alias-learn-aliases)
7125         (mh-alias-learn-local-users, mh-alias-letter-expand-alias): Use
7126         new mh-alias-alist instead of old mh-alias-lowercase-alist.
7128         * mh-alias.el: Moved from contrib/ directory.  Now part of MH-E!
7130         * Makefile (MH-E-SRC): Add mh-identity.
7132         * mh-identity.el (mh-compose-and-send-mail, mh-insert-identity)
7133         (mh-identity-make-menu, mh-identity-default, mh-identity-menu):
7134         Moved to mh-comp.el.
7136         * mh-comp.el (mh-compose-and-send-mail): Add mh-identity support.
7137         (mh-insert-identity, mh-identity-make-menu, mh-identity-default)
7138         (mh-identity-menu): Added from mh-identity.el
7140 2002-11-29  Bill Wohler  <wohler@newt.com>
7142         * mh-comp.el, mh-e.el, mh-funcs.el, mh-identity.el, mh-index.el,
7143         mh-mime.el, mh-pick.el, mh-seq.el, mh-speed.el, mh-utils.el:
7144         Ran indent-region, reformatted long lines, ran untabify.
7145         (indent-tabs-mode): Set file local variable to nil.
7147 2002-11-29  Bill Wohler  <wohler@newt.com>
7149         Released MH-E version 7.0.
7151         * mh-e.el (Version, mh-version): Updated for release 7.0.
7153         * mh-comp.el (subseq, search): Require cl instead of autoloading
7154         these due to compilation warnings in CVS Emacs.
7156 2002-11-23  Bill Wohler  <wohler@newt.com>
7158         * MH-E-NEWS: Emphasize the renaming of the variables at the top of
7159         the notes.
7161 2002-11-22  Satyaki Das  <satyaki@theforce.stanford.edu>
7163         * mh-utils.el (mh-show-mode-map): Remove binding for RET since it
7164         is not needed and the binding is more useful to toggle display of
7165         MIME parts.
7167         * mh-mime.el (mh-mime-button-commands): Remove bindings for "i"
7168         and "o" from MIME buttons.
7169         (mh-insert-mime-button): Change comment to reflect change in
7170         button key map.
7172 2002-11-21  Bill Wohler  <wohler@newt.com>
7174         Released MH-E version 6.1.91.
7176         * mh-e.el (Version, mh-version): Updated for release 6.1.91.
7178         * MH-E-NEWS: Inline HTML parts supported with Gnus 5.10, not 5.9.
7180 2002-11-21  Mark D. Baushke  <mdb@gnu.org>
7182         * mh-comp.el (mh-letter-insert-signature-hook): This should be in
7183         customize-group mh-compose.
7185 2002-11-21  Satyaki Das  <satyaki@theforce.stanford.edu>
7187         * mh-utils.el (load): Load mm-view.el here so that
7188         mm-inline-text-html would be defined if available.
7189         (mh-mm-inline-media-tests): If mm-inline-text-html is available
7190         then use it, otherwise fall back on using mm-inline-text (closes
7191         SF #641482).
7193         * mh-mime.el (load): Remove the load of mm-view here since it
7194         happens in mh-utils.el now.
7196 2002-11-15  Bill Wohler  <wohler@newt.com>
7198         Released MH-E version 6.1.90.
7200         * README (Compile): New section. Users must now compile MH-E due
7201         to the vagaries of the various versions of gnus.
7203         * Makefile (MH-E-IMG): Added reply-all.pbm, reply-all.xpm,
7204         reply-from.pbm, reply-from.xpm, reply-to.pbm, reply-to.xpm.
7205         (MH-E-ETC-ETC): Added Makefile and README.
7206         (dist): Depend on all, so clean happens. Don't add .elc files to
7207         tarball as they are built upon installation now.
7209 2002-11-15  Satyaki Das  <satyaki@theforce.stanford.edu>
7211         * mh-e.el (mh-process-commands): Fix a bug in mh-execute-commands.
7212         If called in threaded mode, cur was always getting set to the last
7213         message in the folder.
7215 2002-11-14  Bill Wohler  <wohler@newt.com>
7217         * mh-e.el (Version, mh-version): Updated for release 6.1.90.
7219         * MH-E-NEWS, README: Updated for release 7.0.
7221         * mh-utils.el (mh-index-search): Added full docstring which new
7222         users will need before they run a search!
7223         (mh-swish++-execute-search, mh-swish-execute-search,
7224         mh-namazu-execute-search mh-glimpse-execute-search): Added
7225         autoloads with full docstrings for the same reason!
7227         * mh-e.el (mh-limit-map): Removed / / alias for
7228         mh-narrow-to-subject.
7230         * mh-utils.el (mh-show-thread-map): Removed / / alias for
7231         mh-show-narrow-to-subject.
7233         * mh-seq.el (mh-delete-subject): Checkdoc fix.
7235         * mh-e.el (mh-help-messages): Added / prefix character to help
7236         string. Tweaked / helpstring a little.
7238 2002-11-14  Mark D. Baushke  <mdb@gnu.org>
7240         * mh-utils.el (mh-set-cmd-note): Fix nitpick by adding one to the
7241         width for cosmetic reasons.
7243 2002-11-14  Peter S Galbraith  <psg@debian.org>
7245         * mh-identity.el (mh-insert-identity): Fix a few things undone by
7246         Jeff's patch.
7247         (mml-insert-tag): Add autoload.
7249 2002-11-13  Mark D. Baushke  <mdb@gnu.org>
7251         * mh-identity.el (mh-insert-identity):  A value of either nil or
7252         "" should cause the field to be removed.
7253         (mh-identity-list): Update the docstring.
7255 2002-11-13  Peter S Galbraith  <psg@debian.org>
7257         * mh-e.el (mh-limit-map): New key map for limits (subject for now).
7258         * mh-utils.el (mh-show-limit-map): Same.
7260         * mh-seq.el (mh-delete-subject): Renamed from
7261         mh-delete-subject-sequence.
7262         (mh-narrow-to-subject): Renamed from mh-narrow-to-subject-sequence.
7263         (mh-next-unseen-subject-sequence): Removed. :-(
7264         * mh-e.el: Use 'em
7265         * mh-seq.el: Use 'em.
7267 2002-11-13  Mark D. Baushke  <mdb@gnu.org>
7269         * mh-e.el (mh-alt-show): New defalias for mh-show.
7270         (mh-alt-refile-msg): New defalias for mh-refile-msg.
7271         (mh-alt-send): New defalias for mh-send.
7272         (mh-folder-mode-map): Use mh-alt-show, mh-alt-refile-msg and
7273         mh-alt-send for the alias bindings.
7274         (mh-alt-visit-folder): New defalias for mh-visit-folder.
7275         (mh-folder-map): Use it.
7276         (mh-folder-message-menu): Revert previous change.
7278 2002-11-13  Peter S Galbraith  <psg@debian.org>
7280         * mh-e.el (mh-folder-message-menu): Make key binding "o" appear in
7281         menu for mh-refile-msg.
7283 2002-11-13  Satyaki Das  <satyaki@theforce.stanford.edu>
7285         * mh-seq.el (mh-thread-generate-scan-lines): In threaded view,
7286         scan lines of duplicate messages were too long. The change fixes
7287         that.
7289 2002-11-13  Bill Wohler  <wohler@newt.com>
7291         * mh-utils.el (mh-adaptive-cmd-note-flag): Improved grammar in
7292         docstring.
7294         * mh-speed.el (mh-speed-run-flists-flag): While documenting this
7295         variable in the release notes, I was unsure what would happen if
7296         set to nil. So, I clarified the docstring and indicated
7297         implications of setting this variable to nil, and offered manual
7298         workaround.
7300 2002-11-13  Satyaki Das  <satyaki@theforce.stanford.edu>
7302         * mh-index.el (mh-index-quit): Fix documentation and run
7303         mh-before-quit-hook and mh-quit-hook.
7305 2002-11-13  Bill Wohler  <wohler@newt.com>
7307         * mh-utils.el (with-mh-folder-updating): Renamed local variable
7308         mh-save-modification-flag to save-modification-flag.
7310 2002-11-12  Bill Wohler  <wohler@newt.com>
7312         * mh-index.el (mh-index-keymap): Renamed to
7313         mh-index-folder-mode-keymap to be a closer to the usual keymap
7314         naming convention. Since we want our own keymap and not inherit
7315         the one in mh-folder-mode, we need to use a suffix other than
7316         -map.
7318         * mh-e.el (mh-folder-sequence-menu): s/Msg/Message.
7319         s/Seq/Sequence.
7320         (mh-folder-message-menu): s/Msg/Message. Removed redundant refile
7321         item.
7322         (mh-folder-folder-menu): Aligned symbols.
7324         * mh-index.el (mh-index-folder-message-menu): s/Msg/Message.
7326         * mh-utils.el (mh-show-sequence-menu): s/Msg/Message.
7327         s/Seq/Sequence.
7328         (mh-show-message-menu): s/Msg/Message. Removed redundant refile
7329         item.
7330         (mh-show-folder-menu): Aligned symbols.
7332 2002-11-12  Satyaki Das  <satyaki@theforce.stanford.edu>
7334         * mh-index.el (mh-index-matches, mh-index-current-match): Remove
7335         these variables since they were only used for glimpse and grep.
7336         Now the functionality of all the indexing programs will be
7337         uniform.
7338         (mh-index-search, mh-index-insert-scan, mh-defun-index)
7339         (mh-index-show): Simplify functions since matches are no longer
7340         shown.
7341         (mh-index-parse-match): Remove function.
7343         * mh-e.el (mh-scan-cmd-note-width, mh-scan-destination-width)
7344         (mh-scan-date-width, mh-scan-date-flag-width)
7345         (mh-scan-from-mbox-width, mh-scan-from-mbox-sep-width): New
7346         variables to keep track of the widths of the different fields in
7347         the scan lines.
7348         (mh-scan-field-from-start-offset, mh-scan-field-from-end-offset)
7349         (mh-scan-field-subject-start-offset): Offsets that are computed
7350         from the scan line widths.
7352         * mh-seq.el (mh-copy-seq-to-eob, mh-thread-inc)
7353         (mh-thread-parse-scan-line): Use new variables that remember the
7354         various offsets in place of integer constants.
7355         (mh-thread-generate-scan-lines): Space shouldn't be added here!
7357 2002-11-12  Bill Wohler  <wohler@newt.com>
7359         * mh-e.el (mh-scan-format-mh, mh-scan-format-nmh): Noted that the
7360         first column is column number 0 and changed "sixth column" to
7361         "fifth column" accordingly.
7363         * mh-index.el (mh-index-folder-mode): Clarified method of replying
7364         in mode documentation.
7365         (mh-index-folder-tool-bar-map): s/mh-e/MH-E/.
7367         * mh-e.el (mh-generate-new-cmd-note): Try not to mention internal
7368         variable mh-cmd-note in docstrings.
7370         * mh-utils.el (mh-adaptive-cmd-note-flag): Set default value to t.
7371         Reworded docstring so it doesn't mention internal variable
7372         mh-cmd-note. Added information about using fixed-width message
7373         numbers.
7374         (mh-cmd-note): Mention mh-set-cmd-note in docstring. Also suggest
7375         that it is updated dynamically only if mh-scan-format-file is t.
7376         (mh-set-cmd-note): Grammer fix in docstring.
7377         (mh-cmd-note): Noted that the first column is column number 0.
7379         * mh-e.el (mh-scan-format-file): Added information about
7380         mh-set-cmd-note and mh-adaptive-cmd-note-flag to docstring.
7382         * mh-index.el (mh-index-keymap): Added bindings for i
7383         (mh-inc-folder), m (mh-send alias), and s (mh-send) since these
7384         appear to be supported and are found in the toolbar.
7385         (mh-index-folder-key-map): Ditto for f (mh-visit-folder alias), o
7386         (mh-visit-folder) alias, and v (mh-visit-folder).
7387         (mh-index-folder-mode-help-messages): Changes for above.
7388         (mh-index-folder-message-menu, mh-index-folder-folder-menu): New
7389         menus. I decided to delete the unavailable items since greying out
7390         implies that the user can do something to access them. In this
7391         case, that's not the case. Well, that's not entirely true--the
7392         user could write code for those functions ;-).
7393         (mh-index-folder-mode): Use new menus.
7395         * mh-utils.el (mh-prompt-for-folder): Added optional argument
7396         default-string which can be used in case the string for default
7397         isn't intuitive enough.
7399         * mh-index.el (mh-index-search): Made default prompt more
7400         intuitive (I hope!).
7402 2002-11-11  Peter S Galbraith  <psg@debian.org>
7404         * mh-identity.el (mh-header-field-delete): Remove save-excursion.
7405         Strange that this worked for me before... Thanks to Jeff for the
7406         patch.
7407         (mh-insert-identity): Numerous tweaks and fixes from Jeff who also
7408         adds a nicer-looking MIME header for signatures inserted after
7409         MIME insertions.
7411 2002-11-11  Satyaki Das  <satyaki@theforce.stanford.edu>
7413         * mh-seq.el (mh-thread-parse-scan-line): Generalize this function
7414         so that it can take a string containing the scan-line as argument
7415         in addition to using the line at point.
7416         (mh-thread-add-spaces): New function to pad each scan line to the
7417         appropriate length. This is called when mh-cmd-note is increased.
7419         * mh-e.el (mh-generate-new-cmd-note): Make this work on a threaded
7420         folder by using mh-thread-add-spaces to pad the pre-existing lines
7421         in mh-thread-scan-line-map appropriately.
7422         (mh-thread-add-spaces): Autoload from mh-seq.
7424 2002-11-11  Mark D. Baushke  <mdb@gnu.org>
7426         * mh-index.el: Fix checkdoc nit.
7428         * mh-mime.el (mh-display-buttons-for-inline-parts-flag): Renamed
7429         from mh-display-buttons-for-inline-parts.
7430         (mh-mime-display-single): Use it.
7431         This addresses part of SF #627015.
7433         * mh-e.el (mh-print-background-flag): Renamed from
7434         mh-print-background.
7435         * mh-funcs.el (mh-print-msg): Use it.
7436         This addresses part of SF #627015.
7438         * mh-comp.el (mh-delete-yanked-msg-window-flag): Renamed from
7439         mh-delete-yanked-msg-window.
7440         (mh-yank-from-start-of-msg, mh-yank-cur-msg): Use it.
7441         This addresses part of SF #627015.
7443         * mh-utils.el (mh-update-sequences-after-mh-show-flag): Renamed
7444         from mh-update-sequences-after-mh-show.
7445         (mh-show-msg): Use it.
7446         This addresses part of SF #627015.
7448         * mh-utils.el (mh-decode-quoted-printable-flag): Renamed from
7449         mh-decode-quoted-printable
7450         (mh-display-msg, mh-decode-quoted-printable-have-mimedecode):
7451         Use it.
7452         This addresses part of SF #627015.
7454         * mh-utils.el (mh-recursive-folders-flag): Renamed from
7455         mh-recursive-folders.
7456         (mh-make-folder-list-background): Use it.
7457         * mh-funcs.el (mh-list-folders): Ditto.
7458         This addresses part of SF #627015.
7460         * mh-utils.el (mh-auto-folder-collect-flag): Renamed from
7461         mh-auto-folder-collect.
7462         (mh-find-path): Use it.
7463         This addresses part of SF #627015.
7465         * mh-utils.el (mh-decode-mime-flag): Renamed from
7466         mh-decode-mime.
7467         * mh-utils.el (mh-show-mode, mh-show-xface)
7468         (mh-decode-quoted-printable, mh-display-msg, mh-display-msg): Use it.
7469         * mh-mime.el (mh-graphical-smileys-flag)
7470         (mh-graphical-emphasis-flag): Ditto.
7471         * mh-index.el (mh-index-search, mh-index-show): Ditto.
7472         * mh-e.el (mh-header-display): Ditto.
7473         This addresses part of SF #627015.
7475         * mh-e.el (mh-make-folder-mode-line): Use save-window-excursion
7476         to get back to the current message.
7478 2002-11-10  Satyaki Das  <satyaki@theforce.stanford.edu>
7480         * mh-index.el (mh-index-keymap, mh-index-page-msg)
7481         (mh-index-folder-tool-bar-map): Replace mh-index-scroll-up with
7482         mh-index-page-msg.
7483         (mh-index-keymap, mh-index-previous-page): Replace
7484         mh-index-scroll-down with mh-index-previous-page.
7486 2002-11-09  Satyaki Das  <satyaki@theforce.stanford.edu>
7488         * mh-index.el (autoload/require): Load mh-mime when mh-index.el is
7489         loaded. This fixes the infinite load loop. I am not sure what the
7490         actual problem is. Also removed the nop requires/autoloads.
7491         (mh-defun-index): Use the right argument for mh-recenter.
7492         Otherwise it misbehaves for the default value of
7493         mh-summary-height.
7495         * mh-e.el (mh-goto-next-button): Fix infinite loop when S-Tab was
7496         used on first line of index folder buffer.
7498 2002-11-09  Peter S Galbraith  <psg@debian.org>
7500         * mh-index.el (mh-index-folder-tool-bar-map): Tool-bar for
7501         mh-index-mode.
7502         (mh-index-folder-mode): Use it.
7503         (mh-index-keymap): Added mouse-2 binding, like in regular
7504         folder-mode.
7506 2002-11-08  Satyaki Das  <satyaki@theforce.stanford.edu>
7508         * mh-index.el (mh-index-folder-mode): Fix doc string for major
7509         mode. It was pointing to the wrong keymap.
7510         (mh-index-show-mode): Fix doc string for mode. Also add mh-help
7511         support.
7513         * mh-comp.el (mh-forward, mh-yank-cur-msg): Use new macro
7514         mh-mark-active-p instead. This does the right thing for different
7515         variants of Emacs.
7516         (mh-yank-cur-msg): Add a space between sexprs.
7518         * mh-utils.el (mh-mark-active-p): New macro which papers over
7519         diffences between GNU Emacs and XEmacs. The variables mark-active
7520         and transient-mark-mode are used in GNU Emacs while zmacs-regions
7521         and region-active-p are used in XEmacs.
7523         * mh-seq.el (mh-put-msg-in-seq, mh-thread-ancestor-p): Use
7524         mh-mark-active-p as above.
7526         * mh-e.el (mh-delete-msg, mh-refile-msg, mh-undo): Use
7527         mh-mark-active-p as above.
7529 2002-11-06  Peter S Galbraith  <psg@debian.org>
7531         * mh-comp.el (mh-yank-cur-msg): Fix for XEmacs.  It didn't work
7532         with a selected region, and left the inserted text selected (in
7533         reverse video).  I didn't use SF patch #402315 to implement this.
7535 2002-11-05  Peter S Galbraith  <psg@debian.org>
7537         * mh-utils.el (mh-show-tool-bar-map): Change call to
7538         mh-tool-bar-search-command such that user can customize it for the
7539         current session.
7541         * mh-e.el (mh-folder-tool-bar-map): Same.
7543 2002-11-05  Bill Wohler  <wohler@newt.com>
7545         * mh-utils.el, mh-e.el (mh-tool-bar-search-function): Renamed from
7546         mh-tool-bar-search-command.
7548         * mh-index.el (mh-index-search): Backed out previous change to
7549         prompt. There ain't no folder named "all."
7551         * mh-utils.el (mh-tool-bar-search-command): Added mh-search-folder
7552         and mh-index-search to the docstring so that user can easily click
7553         on them for more information.
7555         * mh-pick.el (mh-search-folder): Mention that this function uses
7556         the MH pick command to give the user more information when
7557         choosing between mh-search-folder and mh-index-folder.
7559         * mh-index.el (mh-index-search): Edited the docstring. Direct the
7560          user to mh-index-program if necessary.
7561          (mh-index-program): Edited this docstring too. Viewing the help
7562          in a *Help* buffer really exposes grammatical flaws.
7564 2002-11-05  Peter S Galbraith  <psg@debian.org>
7566         * mh-utils.el (mh-tool-bar-search-command): New defcustom to set
7567         what search function to use in tool-bar.
7568         (mh-show-tool-bar-map): Use it.
7570         * mh-e.el (mh-folder-tool-bar-map): Use it.
7572 2002-11-05  Bill Wohler  <wohler@newt.com>
7574         * mh-index.el (mh-index-search): Changed default prompt from "+"
7575         to "all". mh-prompt-for-folder doesn't seem to mind.
7577         * mh-e.el (mh-folder-folder-menu): Added menu entry for
7578         mh-index-search.
7580         * mh-utils.el (mh-show-folder-menu): Added menu entry for
7581         mh-index-search.
7583         * mh-index.el: Added commentary on supported search engines and
7584         for getting started (initializing database).
7586 2002-11-04  Satyaki Das  <satyaki@theforce.stanford.edu>
7588         * mh-index.el (mh-index-keymap, mh-index-folder-key-map): Move key
7589         binding of "i" to "Fi".
7590         (mh-index-folder-mode-help-messages): Change help message to
7591         reflect above change.
7593 2002-11-04  Bill Wohler  <wohler@newt.com>
7595         * mh-index.el (mh-index-program, mh-indexer): Swapped names since
7596         the former seems like a better user variable name. If you've
7597         customized mh-indexer, be sure to toss it out and customize
7598         mh-index-program.
7600 2002-11-04  Satyaki Das  <satyaki@theforce.stanford.edu>
7602         * mh-index.el (mh-indexer-choices): Not having the quotes in the
7603         binary names is a bit nicer since that maintains uniformity with
7604         the other names.
7605         (mh-index-choose): Use symbol-value instead of eval. Eval should
7606         be avoided except when it can't be :-).
7608 2002-11-04  Bill Wohler  <wohler@newt.com>
7610         * mh-index.el (mh-index-program): New variable to hold the name of
7611         the indexer that was found; use this instead of clobbering
7612         user-customizable variable mh-indexer.
7613         (mh-index-search): Use it. Added comments to keep others from
7614         doing what I had done (fortunately, I caught myself before
7615         checking it in ;-).
7616         (mh-index-choose): Set mh-index-program instead of mh-indexer.
7617         Update docstring to describe side-effects.
7619         * mh-index.el (mh-indexer): Added swish++ to docstring. Chances
7620         are good that if someone has both swish++ and swish, they want to
7621         use the much faster, much smaller swish, so move it up in the
7622         list.
7623         (mh-indexer-choices): Ditto for rationale for moving swish++ up in
7624         priority over swish. Also, use -binary symbols instead of
7625         hard-coding binary names. This allows package installers to
7626         customize the location of the binaries in site-lisp and still have
7627         the auto-detection code work. It also allows one to have alternate
7628         binary names (see mh-swish++-binary).
7629         (mh-index-search): Ditto (moving swish++ up).
7630         (mh-swish++-binary): Look for search++, then search. The rationale
7631         is that a package maintainer may rename search to search++ if
7632         search is already in use (e.g., Debian) so try it first.
7633         (mh-swish++-execute-search): Replaced Satyaki's path with dummy
7634         path in docstring. Also removed RecurseSubdirs since this is the
7635         default. Added comment that index might be named index++ on some
7636         systems (e.g., Debian).
7637         (mh-index-choose): Updated to work with new mh-indexer-choices.
7639 2002-11-04  Peter S Galbraith  <psg@debian.org>
7641         * mh-identity.el (mh-identity-list-set): Don't call easy-menu-add
7642         here, since that adds the menu to the Customize buffer in XEmacs.
7644 2002-11-04  Peter S Galbraith  <psg@debian.org>
7646         * mh-comp.el (mh-mhn-compose-insert-flag)
7647         (mh-mml-compose-insert-flag): Removed eval-when-compile defvar.
7649         * mh-mime.el (mh-mhn-compose-insert-flag)
7650         (mh-mml-compose-insert-flag): Move variables to mh-utils.el.
7651         Fixes mh-letter-menu for XEmacs.
7653 2002-11-04  Eric Ding  <eding@rational.com>
7655         * mh-comp.el (mh-rejected-letter-start): add another string
7657 2002-11-04  Eric Ding  <ericding@alum.mit.edu>
7659         * mh-comp.el (mh-rejected-letter-start): regexp-opt doesn't take
7660         regexps as args, only regular strings
7662 2002-11-04  Peter S Galbraith  <psg@debian.org>
7664         * mh-comp.el (mh-insert-mail-followup-to): Don't modify a
7665         pre-existing M-F-T field.  If a nmh replgroupcomps propagates a
7666         M-F-T field in a message reply, then we have to have it alone.
7668 2002-11-02  Bill Wohler  <wohler@newt.com>
7670         * mh-comp.el, mh-e.el, mh-funcs.el, mh-identity.el, mh-index.el,
7671         mh-mime.el, mh-pick.el, mh-seq.el, mh-speed.el, mh-utils.el,
7672         mh-xemacs-compat.el: Added Local Variables section. Defined
7673         sentence-end-double-space to be nil so that those who might not
7674         buy my setting of this variable can at least run checkdoc without
7675         a whole lot of noise.
7677 2002-11-02  Peter S Galbraith  <psg@debian.org>
7679         * mh-identity.el: New file.  Multiple Identify support for MH-E.
7680         Used to easily set different fields such as From and Organization,
7681         as well as diffrent signature files.  This file won't be included
7682         with V7.0.
7684 2002-11-02  Bill Wohler  <wohler@newt.com>
7686         * mh-mime.el (mh-mm-save-part): New function to wrap mm-save-part
7687         from Gnus 5.10 to make it explicit which code has been
7688         commandeered.
7689         (mh-mime-save-part): Call mh-mm-save-part instead of cut-n-pasted
7690         code from Gnus 5.10.
7692 2002-11-02  Peter S Galbraith  <psg@debian.org>
7694         * mh-comp.el (mh-yank-from-start-of-msg): Edit docstring to
7695         mention related variables mh-reply-show-message-flag and
7696         mh-delete-yanked-msg-window.
7697         (mh-reply): Change the "Reply to whom" prompt.
7699 2002-11-01  Bill Wohler  <wohler@newt.com>
7701         * mh-e.el (mh-show-hook): Moved to mh-utils.el where it is used.
7702         (mh-folder-list-change-hook): Converted this from defvar in other
7703         files to defcustom here. It is called, not documented as
7704         obsolete, and might as well be documented.
7705         (mh-inc-folder, mh-quit, mh-delete-a-msg, mh-refile-a-msg,
7706         mh-process-commands, mh-update-unseen): Added missing
7707         documentation about hook, or made verbiage about hook consistent
7708         throughout, even if the function isn't interactive.
7710         * mh-utils.el (mh-folder-list-change-hook): Moved defvar to mh-e
7711         and made it a defcustom.
7712         (mh-show-mode-hook): Put it back in (actually, it was in mh-e.el,
7713         but this is the place where it is called).
7714         (mh-show-hook): Moved here from mh-e.el since it's called here.
7715         (mh-show-mode): Call mh-show-mode-hook.
7716         (mh-show-mode, mh-show-msg, mh-find-path, mh-prompt-for-folder,
7717         mh-prompt-for-folder, mh-set-folder-list): Added missing
7718         documentation about hook, or made verbiage about hook consistent
7719         throughout, even if the function isn't interactive.
7721         * mh-comp.el (mh-send-letter): Made verbiage about hook consistent
7722         throughout.
7723         (mh-insert-prefix-string): Made docstring more descriptive of what
7724         is going on.
7726         * mh-funcs.el (mh-kill-folder): Added missing documentation about
7727         hook.
7729         * mh-index.el (mh-index-show-hook): Moved defvar to defcustom.
7730         (mh-index-show): Made verbiage about hook consistent throughout.
7732         * mh-mime.el (mh-edit-mhn-hook): Moved defvar to defcustom.
7733         (mh-edit-mhn): Added missing documentation about hook.
7735         * mh-pick.el (mh-pick-mode): Made verbiage about hook consistent
7736         throughout. Call the damn hook.
7738 2002-11-01  Satyaki Das  <satyaki@theforce.stanford.edu>
7740         * mh-comp.el (mh-insert-mail-followup-to-list): Fix typo so that
7741         it will look right in info.
7743         * mh-index.el (mh-index-search): Change argument name from
7744         new-buffer-p to new-buffer-flag.
7745         (mh-index-search-again, mh-index-search): New index-buffers were
7746         being named *mh-index*<2>, *m-index*<2><2> and so on. This problem
7747         is fixed.
7748         (mh-index-scroll-up, mh-index-scroll-down): Scrolling in index
7749         show buffers (after the first one) was broken.
7750         (mh-index-quit): Bury show buffer instead of killing it. Killing
7751         it, without killing the corresponding folder buffer, can cause
7752         confusion with two folder buffers trying to display in the same
7753         show buffer.
7755         * mh-seq.el (mh-thread-prune-containers): Rewritten without
7756         recursion. Also removed the top-level-p argument since it isn't
7757         required anymore.
7758         (mh-thread-sort-containers): New function factored out from
7759         previous definition of mh-thread-prune-containers. It sorts
7760         message containers in ascending order wrt their message indices.
7761         (mh-thread-generate): Use new mh-thread-prune-containers.
7763         * mh-e.el (mh-remove-all-notation): Fix the test. It was testing
7764         at the wrong place!
7766 2002-10-31  Bill Wohler  <wohler@newt.com>
7768         * Makefile, README, import-emacs, mh-comp.el, mh-e.el,
7769         mh-funcs.el, mh-index.el, mh-mime.el, mh-pick.el, mh-seq.el,
7770         mh-speed.el, mh-utils.el: Replaced mh-e with MH-E.
7772 2002-10-31  Satyaki Das  <satyaki@theforce.stanford.edu>
7774         * mh-seq.el (mh-thread-parse-scan-line): Modified to remove user
7775         sequence notation and leave notation for other things alone. This
7776         ensures that threading doesn't lose notations for replied-to
7777         messages.
7779         * mh-e.el (mh-inc-folder): Remove call to mh-widen here and
7780         instead do it in mh-get-new-mail. This way the widening happens
7781         only if new mail is incorporated.
7782         (mh-generate-new-cmd-note): The function now returns the point
7783         from which the new messages start. This will allow threading to do
7784         the right thing.
7785         (mh-get-new-mail): Always call mh-remove-cur-notation. Otherwise
7786         adaptive scan mode leaves two messages marked as current in
7787         certain cases. Fix indentation of if statement. If there are
7788         messages to be incorporated, the folder is widened. If mh-cmd-note
7789         changes set start-of-inc correctly.
7790         (mh-remove-all-notation): Change this function to only remove user
7791         sequence notation and leave notation for replied-to messages and
7792         similar notation alone. This means operations like narrowing to
7793         subject sequence and widening don't lose notations.
7795 2002-10-31  Bill Wohler  <wohler@newt.com>
7797         * mh-comp.el (mh-insert-mail-followup-to-list): Fixed typo in
7798         docstring and other minor edits. Checkdoc removed trailing spaces.
7799         (mh-insert-signature): Checkdoc flagged docstring. Reverted to
7800         previous value. Added specific name of hook that is run.
7801         (mh-regexp-in-field-p, mh-insert-letter): Checkdoc removed
7802         trailing spaces.
7804 2002-10-31  Jeffrey C Honig  <jch@honig.net>
7806         * mh-e.el (mh-show-mode-hook): Remove the unused
7807         mh-show-mode-hook, mh-show-hook is the one that is used.
7809         * mh-utils.el (mh-show-mode): Change the documentation to refer to
7810         mh-show-hook instead of the unused mh-show-mode-hook.
7812 2002-10-31  Peter S Galbraith  <psg@debian.org>
7814         * mh-comp.el (mh-insert-mail-followup-to-list): Set default to nil
7815         and include example in doc string.
7817 2002-10-31  Satyaki Das  <satyaki@theforce.stanford.edu>
7819         * mh-index.el (mh-indexer): Add customization choice for swish++.
7820         (mh-indexer-choices): Add swish++ choice.
7821         (mh-index-search): Change doc to reflect addition of swish++ option.
7822         (mh-swish++-binary, mh-swish++-directory): New variables for
7823         swish++ interface.
7824         (mh-swish++-execute-search): New function to execute swish++
7825         search.
7826         (mh-swish++-next-result): Function aliased to mh-swish-next-result
7827         since the result format of swish++ is the same as that of swish-e.
7828         (mh-index-search): Always overwrite window-configuration with new
7829         value. This is needed since we don't kill the index-buffer when
7830         quitting which means the window configuration wasn't getting set
7831         properly.
7832         (mh-index-search-again): If index buffer is reused, reset the old
7833         window config to its original value.
7835 2002-10-30  Bill Wohler  <wohler@newt.com>
7837         * Makefile (emacs, xemacs): New targets.
7838         (all): Use these targets instead of calling specific targets.
7839         (.PHONY): Added emacs, xemacs, autoloads, custom-loads. Broke up
7840         target and moved pieces into their own sections.
7843 2002-10-30  Peter S Galbraith  <psg@debian.org>
7845         * mh-utils.el (mh-show-font-lock-keywords): Wrap an
7846         'eval-and-compile around its defvar, otherwise byte-compilation
7847         fails on `mh-show-font-lock-keywords-with-cite'.
7849 2002-10-29  Jeffrey C Honig  <jch@honig.net>
7851         * mh-comp.el (mh-letter-insert-signature-hook)
7852         (mh-insert-signature): Add a hook to be called before inserting
7853         the signature.  Do not attempt to insert the signature if
7854         mh-insert-signature-file-name is nil.
7856 2002-10-29  Peter S Galbraith  <psg@debian.org>
7858         * mh-e.el (mh-inc-folder): Call mh-widen when mh-narrowed-to-seq
7859         (Closes SF #629233: inc in narrowed folder suboptimal)
7861         * mh-comp.el (mh-insert-letter): Stop using mhl to include a
7862         message before it mangles the header, and supercite fails
7863         (Closes SF #629153: mh-insert-letter uses mhl?).
7864         (mh-insert-prefix-string): Leave point at beginning instead of
7865         end, since that's what sc-cite-original does.
7866         (mh-yank-cur-msg): Adjust for mh-insert-prefix-string change.
7868 2002-10-30  Steve Youngs  <youngs@xemacs.org>
7870         * mh-e.el (mh-folder-mode): Check for 'font-lock-auto-fontify'
7871         when in XEmacs so we don't do font-locking unconditionally.
7873         * mh-utils.el (mh-show-mode): Ditto.
7875 2002-10-29  Peter S Galbraith  <psg@debian.org>
7877         * mh-e.el (mh-folder-refiled-face, mh-folder-cur-msg-number-face)
7878         (mh-folder-to-face, mh-folder-body-face): Define faces instead of
7879         copying them from font-lock faces.  This mh-e will look the same
7880         in XEmacs as it does in Emacs.
7881         * mh-utils.el (mh-show-cc-face, mh-show-date-face)
7882         (mh-show-header-face): Ditto.
7884 2002-10-29  Jeffrey C Honig  <jch@honig.net>
7886         * mh-comp.el (mh-send-letter): I meant to use
7887         mh-goto-header-field, not mh-get-header-field.  The former returns
7888         nil if the header is not found and doesn't need a conditional.
7890 2002-10-29  Peter S Galbraith  <psg@debian.org>
7892         * mh-comp.el (mh-forward): Bug fix.  Change 'kill-line for a
7893         'delete-region, because I don't want that text yanked with C-y.
7895         * mh-seq.el (mh-put-msg-in-seq): Add support for selected
7896         region (Closes SF feature request #630324).
7898 2002-10-28  Satyaki Das  <satyaki@theforce.stanford.edu>
7900         * mh-seq.el (mh-thread-prune-subject): Make the regexp a little
7901         general so that a subject of the form "Re[218]: howdy" would be
7902         properly pruned.
7904         * mh-mime.el (mh-mime-save-part): Copy function definition of
7905         mm-save-part from cvs gnus since that function is buggy in gnus
7906         that comes with emacs21.2.
7908 2002-10-28  Peter S Galbraith  <psg@debian.org>
7910         * mh-e.el (mh-scan-subject-regexp): Add an expression to match an
7911         optional bracketed number after "Re", such as in "Re[2]:"
7912         (Patch by Satyaki; I checked it and applied).
7913         (mh-folder-font-lock-subject): Adapt to new mh-scan-subject-regexp.
7914         * mh-seq.el (mh-subject-to-sequence): Ditto.
7916         * mh-e.el (mh-folder-sequence-menu):  Remove "Toggle Subject
7917         Thread" from menu.   mh-toggle-threads is in the Folder menu.
7919         * mh-e.el (mh-folder-sequence-menu): Minor menu text edits.
7921         * mh-utils.el (mh-show-update-sequences): Added to
7922         mh-defun-show-buffer builds; needed for menu.
7923         (mh-show-sequence-menu, mh-show-message-menu)
7924         (mh-show-folder-menu): 3 new menus in mh-show-mode-map that mirror
7925         the menus used in mh-folder-mode.
7926         (mh-show-mode): easy-menu-add the 3 menus.
7928 2002-10-28  Satyaki Das  <satyaki@theforce.stanford.edu>
7930         * mh-utils.el (mh-goto-msg): Fix the regexp to search so that we
7931         go to the right message. In a threaded folder message 2 may be
7932         present after 26 and the previous regexp would go to 26 when we
7933         really wanted to go to 2!
7935         * mh-seq.el (mh-widen): Add call to mh-recenter to make it like
7936         mh-narrow-to-seq.
7938 2002-10-28  Bill Wohler  <wohler@newt.com>
7940         * mh-utils.el (mh-show-mime-save-parts): Deleted definition.
7941         (mh-show-mime-map, tool-bar-map): Use mh-mime-save-parts instead
7942         of mh-show-mime-save-parts.
7944 2002-10-28  Peter S Galbraith  <psg@debian.org>
7946         * mh-comp.el (mh-letter-tool-bar-map): tool-bar-add-item key name
7947         bug fix.
7948         * mh-utils.el (mh-show-tool-bar-map): Same.
7949         * mh-e.el (mh-folder-tool-bar-map, mh-folder-seq-tool-bar-map): Same
7951 2002-10-27  Satyaki Das  <satyaki@theforce.stanford.edu>
7953         * mh-seq.el (mh-toggle-threads): Add call to mh-recenter to make
7954         its behavior like that of mh-narrow-to-seq.
7956 2002-10-27  Bill Wohler  <wohler@newt.com>
7958         * mh-mime.el (mh-mime-save-parts): Renamed from
7959         mh-store-mime-parts for consistency with mh-mime-save-part. Fixed
7960         bug whereby mh-mime-save-parts-directory was not getting
7961         initialized properly from a string-valued
7962         mh-mime-save-parts-default-directory.
7963         (mh-mime-save-parts-default-directory): Ditto. Check your
7964         customizations!
7965         (mh-mime-save-parts-directory): Ditto.
7967         * mh-utils.el (mh-show-mime-save-parts): Renamed from
7968         mh-store-mime-parts.
7969         (mh-show-mime-map): Added keybinding "K a" for
7970         mh-show-mime-save-parts.
7972         * mh-e.el (mh-mime-save-parts) Renamed from mh-store-mime-parts.
7973         (mh-mime-map): Added keybinding "K a" for mh-mime-save-parts.
7974         (mh-help-messages): Added help for "K a".
7976 2002-10-27  Peter S Galbraith  <psg@debian.org>
7978         * mh-comp.el (mh-search-addr-regexp, mh-regexp-in-field-p): Rename
7979         the first to the second (and recode a bit).
7980         (mh-insert-mail-followup-to): Use it.
7982 2002-10-27  Bill Wohler  <wohler@newt.com>
7984         * mh-utils.el (mh-invisible-headers): Backed out change. Removed
7985         Mail-Followup-To due to objections from Peter and Mark.
7987 2002-10-27  Satyaki Das  <satyaki@theforce.stanford.edu>
7989         * mh-seq.el (mh-msg-is-in-seq): Modified to show info about
7990         whether the message being queried about has been marked to be
7991         deleted or refiled.
7993         * mh-mime.el (mh-insert-mime-security-button): Make
7994         pressed-details a local.
7996 2002-10-27  Steve Youngs  <youngs@xemacs.org>
7998         * .cvsignore: New file.
8000 2002-10-26  Steve Youngs  <youngs@xemacs.org>
8002         * mh-seq.el (mh-notate-deleted-and-refiled): Don't bind local
8003         variable 'dest', it isn't used anywhere.
8005         * mh-pick.el (mh-do-pick-search): Don't bind local variable
8006         'finding-messages', it isn't used anywhere.
8008         * mh-utils.el: Byte-compiler warning suppression.
8009         (mh-gnus-article-highlight-citation): Rather than redefining
8010         'gnus-cite-face-list', just re-order it.
8011         (mh-show-mode): Force turning on font-lock in XEmacs.
8013         * mh-seq.el: Byte-compiler warning suppression.
8015         * mh-index.el: Byte-compiler warning suppression.
8017         * mh-comp.el: Byte-compiler warning suppression.
8019         * mh-xemacs-compat.el: Add defaliases for 'timerp' &
8020         'cancel-timer' to the equivalent 'itimer' functions.
8021         (rfc822): Require it for 'rfc822-goto-eoh'.
8022         Byte-compiler warning suppression.
8024         * mh-e.el (mh-folder-mode): Force turning on font-lock in XEmacs.
8025         (mh-toggle-threads): Remove duplicate autoload.
8026         Byte-compiler warning suppression.
8027         (mh-folder-unseen-seq-list): Use 'with-temp-buffer' to fix a bug
8028         in XEmacs when font-lock is on.
8029         (mh-folder-unseen-seq-name): Ditto.
8031 2002-10-27  Mark D. Baushke  <mdb@gnu.org>
8033         * Makefile: Reorganize to allow for building also compiling for
8034         XEmacs too. Sanitize so that it will work using least-common
8035         denominator versions of 'make'. Tested using GNU make, Solaris make,
8036         and Berkely make.
8037         (all): Use recursive invokation based on the emacs or xemacs
8038         executable passed on the 'make EMACS=xemacs' command line.
8039         (XEMACS_OPTIONS): The incantation to be passed to an xemacs editor
8040         to compile things properly.
8041         (AUTO_PRELOADS): Magic XEmacs glue.
8042         (clean): Ditto.
8043         (autoloads): Ditto.
8044         (custom-loads): Ditto.
8046 2002-10-26  Satyaki Das  <satyaki@theforce.stanford.edu>
8048         * mh-e.el (mh-last-msg): Add call to mh-recenter.
8050 2002-10-26  Peter S Galbraith  <psg@debia.org>
8052         * mh-comp.el (mh-search-addr-regexp, mh-re-search-to-cc): Remove
8053         `mh-re-search-to-cc' in favour of more generalized new function
8054         `mh-search-addr-regexp'.
8055         (mh-insert-mail-followup-to): Use it.
8057 2002-10-26  Satyaki Das  <satyaki@theforce.stanford.edu>
8059         * mh-seq.el (mh-copy-seq-to-eob): Avoid rethreading when the
8060         folder is already threaded. This is more efficient and also avoids
8061         problems when the folder is widened.
8062         (mh-thread-inc): Don't try to restore the point to original
8063         location since mh-inc-folder from where this is called changes
8064         point location after calling this function.
8066         * mh-e.el (mh-make-folder-mode-line): Fix a small bug where the
8067         test was wrong.
8069 2002-10-26  Peter S Galbraith  <psg@debian.org>
8071         * mh-comp.el (mh-insert-mail-followup-to): Fix for new defcustom.
8073 2002-10-26  Satyaki Das  <satyaki@theforce.stanford.edu>
8075         * mh-seq.el (mh-notate-deleted-and-refiled): Remove unused binding
8076         of dest. The problem was pointed out by Steve as well.
8078         * mh-e.el (mh-toggle-threads): Remove duplicate autoload as
8079         pointed out by Steve.
8081 2002-10-26  Bill Wohler  <wohler@newt.com>
8083         * mh-utils.el (mh-invisible-headers): Added Mail-Followup-To.
8085 2002-10-26  Peter S Galbraith  <psg@debian.org>
8087         * mh-comp.el (mh-insert-mail-followup-to-list): Change defvar to
8088         defcustom.
8090 2002-10-25  Satyaki Das  <satyaki@theforce.stanford.edu>
8092         * mh-e.el (mh-remove-all-notation): New function that removes all
8093         notation.
8095         * mh-seq.el (mh-narrow-to-seq): When hiding the original folder
8096         remove all notation. This avoids stale notation hanging around.
8097         Also changes in show buffer and position in folder buffer are
8098         avoided if possible.
8099         (mh-widen): When widening the scan-lines are notated based on the
8100         current state of the folder. This means any changes made when the
8101         folder was narrowed are shown consistently.
8102         (mh-notate-deleted-and-refiled): Update the documentation.
8103         (mh-thread-parse-scan-line): For some reason the ASCII value of
8104         the space character was being used here. This is fixed.
8105         (mh-thread-inc, mh-toggle-threads): Avoid change of point in
8106         folder and message being displayed in shown buffer.
8108         * mh-utils.el (mh-recenter): Rewrite mh-recenter to show fewer
8109         blank lines when point is towards the end of the folder buffer.
8111 2002-10-25  Peter S Galbraith  <psg@debian.org>
8113         * mh-comp.el (mh-insert-mail-followup-to-flag): New boolean
8114         defcustom to append a Mail-Followup-To field to the header.  The
8115         insertion is done if the To: or Cc: fields matches an entry in
8116         `mh-insert-mail-followup-to-list'."
8117         (mh-insert-mail-followup-to-list): New defvar. List of addresses
8118         for which a Mail-Followup-To field is inserted.
8119         (mh-re-search-to-cc): New function. Search for REGEXP in To: and
8120         Cc: fields.
8121         (mh-insert-mail-followup-to): New function. Insert
8122         Mail-Followup-To: if To or Cc match `mh-insert-mail-followup-to-list'.
8123         (mh-compose-and-send-mail): Call mh-insert-mail-followup-to if
8124         mh-insert-mail-followup-to-flag is true.
8126 2002-10-25  Mark D. Baushke  <mdb@gnu.org>
8128         * mh-utils.el (mh-show-maximum-size): New variable to control
8129         the display of large messages.
8130         (mh-display-msg): Use it (Closes SF #488696).
8132         * mh-seq.el (mh-toggle-threads): Checkdoc fix.
8134         * mh-e.el (mh-reset-threads-and-narrowing): Checkdoc fix.
8136         * mh-comp.el (mh-insert-x-mailer-flag): Renamed from
8137         mh-insert-x-mailer-p. Update docstring.
8138         (mh-send-letter): Use it.
8139         (mh-reply-show-message-flag): Renamed from
8140         mh-reply-show-message-p. Update docstring.
8141         (mh-reply): Use it.
8142         This addresses part of SF #627015.
8144         * mh-e.el (mh-recenter-summary-flag): Renamed from
8145         mh-recenter-summary-p. Update docstring.
8146         (mh-set-scan-mode): Use it.
8147         This addresses part of SF #627015.
8149 2002-10-25  Satyaki Das  <satyaki@theforce.stanford.edu>
8151         * mh-e.el (mh-reset-threads-and-narrowing): New function which
8152         resets all thread and narrowing state to completely unthreaded and
8153         widened state. As a side effect, the folder buffer is erased.
8154         (mh-rescan-folder): Reset threads and narrowing state.
8156         * mh-funcs.el (mh-pack-folder-1): Reset threads and narrowing state.
8158         * mh-seq.el (mh-copy-seq-to-eob): Change mh-view-ops after
8159         threading is over so that if user aborts threading, it doesn't
8160         leave mh-e in an inconsistent state.
8161         (mh-toggle-threads): Use mh-scan-folder to populate the folder
8162         buffer instead of mh-rescan-folder which resets threading and
8163         narrowing state.
8165 2002-10-24  Bill Wohler  <wohler@newt.com>
8167         * mh-e is completely checkdoc clean now.
8169         * mh-utils.el (mh-clean-message-header-flag): Renamed from
8170         mh-clean-message-header.
8171         (mh-bury-show-buffer-flag): Renamed from mh-bury-show-buffer.
8172         (mh-show-use-goto-addr-flag): Renamed from mh-show-use-goto-addr.
8173         This addresses part of SF #627015.
8175         * mh-mime.el (mh-clean-message-header-flag): Renamed from
8176         mh-clean-message-header.
8177         Checkdoc fixes. This addresses part of SF #627015.
8179         * mh-index.el (mh-clean-message-header-flag): Renamed from
8180         mh-clean-message-header. This addresses part of SF #627015.
8182         * mh-funcs.el (mh-do-not-confirm-flag): Renamed from
8183         mh-do-not-confirm. This addresses part of SF #627015.
8185         * mh-e.el (mh-do-not-confirm-flag): Renamed from
8186         mh-do-not-confirm.
8187         (mh-clean-message-header-flag): Renamed from
8188         mh-clean-message-header.
8189         This addresses part of SF #627015.
8191         * mh-comp.el: checkdoc fixes.
8193 2002-10-24  Satyaki Das  <satyaki@theforce.stanford.edu>
8195         * mh-seq.el (mh-copy-seq-to-eob): Rewritten to scan the headers
8196         fresh instead of yanking from buffer. This is needed to get
8197         correct threading in copied sequence.
8198         (mh-thread-inc, mh-thread-update-scan-line-map)
8199         (mh-thread-parse-scan-line): Eliminate the use, and hence the
8200         definition of, the kludgy mh-thread-update-scan-line-map. Instead
8201         the functions mh-notate-deleted-and-refiled and
8202         mh-notate-user-sequences are used to get the message marks right.
8203         (mh-thread-generate-scan-lines): Updated to allow the thread tree
8204         to be used in a narrowed folder buffer.
8205         (mh-thread-folder, mh-toggle-threads): Remove
8206         mh-folder-threaded-view-flag.
8207         (mh-thread-old-scan-line-map): New buffer-local variable that
8208         remembers the original scan-line map so that the sequence thread,
8209         narrow, widen will work.
8210         (mh-narrow-to-seq, mh-widen): Remember the scan-line map when
8211         narrowing and restore it when widening.
8213         * mh-e.el (mh-folder-threaded-view-flag, mh-folder-folder-menu)
8214         (mh-regenerate-headers, mh-get-new-mail)
8215         (mh-make-folder-mode-line, mh-process-commands)
8216         (mh-delete-scan-msgs): Remove mh-folder-threaded-view-flag.
8217         Instead (memq 'unthread mh-view-ops) is used to test if the folder
8218         is threaded.
8220         * mh-mime.el (mh-display-emphasis): Shadow article-goto-body here
8221         since we want to do emphasis on the whole of the region and not
8222         just after the first blank line.
8223         (mh-mm-display-part): When displaying a text part show smilies and
8224         emphasis.
8226         * mh-index.el (mh-index-insert-scan): Attempt to keep number of
8227         args to scan small if there are lots of adjacent matches.
8228         (mh-index-quit): Bury index-buffer on quit instead of killing it.
8229         This behavior is more like that of mh-quit.
8231         * mh-seq.el (mh-widen): If folder was threaded after narrowing
8232         then make mh-widen undo the threading instead of erroring out.
8234 2002-10-24  Peter S Galbraith  <psg@debian.org>
8236         * mh-seq.el (mh-toggle-threads): Add a cond (as suggested by
8237         Satyaki) to properly unthread a narrowed-to-sequence.
8239         * mh-seq.el (mh-thread-generate-scan-lines): Fix threading
8240         breakage from partial switch to mh-container-real-child-flag and
8241         to dupl-flag.
8243         * mh-comp.el (mh-yank-cur-msg): Bug fix: specify
8244           (eq t mh-yank-from-start-of-msg) when that's what we want.
8246 2002-10-24  Mark D. Baushke  <mdb@gnu.org>
8248         * mh-seq.el (mh-thread-prune-subject): Renamed subject-pruned-p as
8249         subject-pruned-flag.
8250         (mh-thread-inc): Renamed old-buffer-modified-p as
8251         old-buffer-modified-flag.
8252         (mh-thread-generate-scan-lines): Renamed dupl-p as dupl-flag.
8253         This addresses part of SF #627015.
8255         * mh-index.el (mh-index-advance):  Renamed backward-p
8256         local variable as backward-flag.
8257         (mh-index-next-button): Renamed backward-p
8258         argument as backward-flag.
8259         (mh-index-show): Renamed display-headers-p argument as
8260         display-headers-flag.
8261         This addresses part of SF #627015.
8263         * mh-e.el (mh-scan-format, mh-version): Use mh-nmh-flag.
8264         (mh-folder-mime-action): Renamed include-security-p
8265         argument as include-security-flag.
8266         (mh-goto-next-button, mh-next-button): Renamed backward-p
8267         argument as backward-flag.
8268         (mh-get-new-mail): Renamed new-mail-p local variable as
8269         new-mail-flag.
8270         (mh-goto-cur-msg): Renamed minimal-changes-p argument as
8271         minimal-changes-flag.
8272         (redraw-needed-flag): Renamed redraw-needed-p local variable as
8273         redraw-needed-flag.
8274         (mh-seq-containing-msg): Renamed include-internal-p argument as
8275         include-internal-flag.
8276         (mh-page-msg): Use mh-page-to-next-msg-flag.
8277         This addresses part of SF #627015.
8279         * mh-mime.el (mh-mhn-compose-insert-flag): Renamed from
8280         mh-mhn-compose-insert-p. Make it buffer-local.
8281         (mh-mhn-compose-type, mh-mhn-compose-external-type,
8282         mh-mhn-compose-forw, mh-edit-mhn): Use mh-mhn-compose-insert-flag.
8283         (mh-mml-to-mime, mh-mml-secure-message-encrypt-pgpmime,
8284         mh-mime-display-part, mh-mime-display-single): Use
8285         mh-gnus-pgp-support-flag renamed from mh-gnus-pgp-support-p.
8286         (mh-mime-display-single): Renamed small-image-p local
8287         variable as small-image-flag.
8288         (mh-mime-inline-part): Renamed local variable inserted-p as
8289         inserted-flag.
8290         (mh-mime-inline-part): Renamed local variable displayed-p as
8291         displayed-flag.
8292         This addresses part of SF #627015.
8294         * mh-comp.el (mh-letter-menu, mh-letter-mode, mh-send-letter):
8295         mh-mhn-compose-insert-flag.
8296         (mh-repl-group-formfile, mh-forward): Use mh-nmh-flag
8297         renamed from mh-nmh-p.
8298         (mh-reply, mh-insert-x-mailer, mh-send-letter): Use mh-nmh-flag.
8299         (mh-letter-mode-map): Use mh-gnus-pgp-support-flag renamed from
8300         mh-gnus-pgp-support-p.
8301         (mh-mml-secure-message-sign-pgpmime): Use
8302         mh-gnus-pgp-support-flag.
8303         This addresses part of SF #627015.
8305         * mh-utils.el (mh-page-to-next-msg-flag): Renamed from
8306         mh-page-to-next-msg-p.
8307         (mh-show-msg): Use mh-page-to-next-msg-flag.
8308         (mh-gnus-pgp-support-flag): Renamed from
8309         mh-gnus-pgp-support-p.
8310         (mh-show-font-lock-fontify-region): Fix docstring per checkdoc.
8311         (with-mh-folder-updating): Renamed argument
8312         save-modification-flag-p as mh-save-modification-flag.
8313         (mh-prompt-for-folder): Renamed new-file-p local
8314         variable as new-file-flag.
8315         This addresses part of SF #627015.
8317 2002-10-24  Mark D Baushke  <mdb@gnu.org>
8319         * mh-comp.el (mh-forward): Fix mh-mml-compose-insert-p reference
8320         in last commit to be mh-mml-compose-insert-flag.
8321         (mh-mml-compose-insert-flag): Move defvar to fix compiler warning.
8323 2002-10-24  Jeffrey C Honig  <jch@honig.net>
8325         * mh-comp.el (mh-forward): Add support for transient-mark mode.
8326         When using nmh, always specify -mime so as to preserve the
8327         original message(s).  If mh-compose-insertion is 'gnus, convert
8328         the mhbuild format forwarding directives into MML.
8330 2002-10-24  Eric Ding  <ericding@alum.mit.edu>
8332         * mh-comp.el (mh-send-letter): Fix for earlier change that added
8333         "-mime" for bcc'ed MIME mail; still doesn't work with nmh 1.0, but
8334         at least no longer triggered for every outgoing message!
8336 2002-10-24  Peter S Galbraith  <psg@debian.org>
8338         * mh-comp.el (mh-yank-cur-msg): Fix selected regions for supercite
8339         (see text below).
8341         * mh-comp.el (mh-yank-cur-msg): Fix for supercite.  Someone played
8342         with the point and mark setting prior to the call to
8343         'mh-insert-prefix-string and that broke supercite.  I put comments
8344         to make it obvious to future coders why those settings exists.
8345         Note that supercite is still broken when a region is selected in
8346         the show buffer.  Presumably it's been like that for a long time.
8347         We need to insert the header as well as the selected region oin
8348         that case.  I'll submit an SF bug.
8350 2002-10-24  Jeffrey C Honig  <jch@honig.net>
8352         * mh-comp.el (mh-yank-from-start-of-msg, mh-reply): Use -noformat
8353         flag to reply when 'autosupercite or 'autoattrib are specified to
8354         prevent duplicate cites of the body of a message.
8356 2002-10-23  Satyaki Das  <satyaki@theforce.stanford.edu>
8358         * mh-utils.el (font-lock-default-fontify-region): Add autoload to
8359         avoid compiler warning.
8361 2002-10-23  Peter S Galbraith  <psg@debian.org>
8363         * mh-comp.el (mh-letter-mode): set fill-paragraph-function to our
8364         own 'mh-fill-paragraph-function instead of simply
8365         'mail-mode-fill-paragraph (because it doesn't handle a non-nil
8366         fill-prefix correctly).
8367         (mh-fill-paragraph-function): New function for mh-letter-mode
8368         fill-paragraph-function in order to handle non-nil fill-prefix.
8369         Call sendmail's mail-mode-fill-paragraph if in the mail header,
8370         else call default fill-paragraph with fill-prefix set to nil.
8371         (Closes SF #489927)
8373         * mh-comp.el (mh-letter-mode): Let's use font-lock even if gnus is
8374         used in show-mode.  The reason is that gnus uses static text
8375         properties which are not appropriate for a buffer that will be
8376         edited.  So the choice here is either fontify the citations and
8377         header or the header only.
8379         * mh-utils.el (mh-show-font-lock-fontify-region): Limit font-lock
8380         in mh-show-mode to the header.  Used when mh-highlight-citation-p
8381         is set to gnus, leaving the body to be dealt with by gnus
8382         highlighting.  This fixes gnus text emphasis in mh-show-mode.
8383         (mh-show-mode): In font-lock-defaults, set
8384         font-lock-fontify-region-function to mh-show-font-lock-fontify-region.
8386 2002-10-23  Bill Wohler  <wohler@newt.com>
8388         * mh-mime.el (mh-mml-attach-file): Prompt for disposition should
8389         be Disposition, not Content-Type. The Content-Type has been
8390         determined automatically.
8392 2002-10-23  Mark D. Baushke  <mdb@gnu.org>
8394         * MH-E-NEWS:
8395         s/mh-adaptive-cmd-note/mh-adaptive-cmd-note-flag/
8396         s/mh-show-use-xface/mh-show-use-xface-flag/
8397         s/mh-tool-bar-reply-3-buttons/mh-tool-bar-reply-3-buttons-flag/
8398         This addresses part of SF #627015.
8400         * mh-comp.el:
8401         s/mh-mml-compose-insert-p/mh-mml-compose-insert-flag/
8402         s/mh-xemacs-p/mh-xemacs-flag/
8403         (mh-letter-menu): Use mh-mml-compose-insert-flag.
8404         (mh-insert-x-mailer): Use mh-xemacs-flag.
8405         (mh-mml-compose-insert-flag): Renamed from
8406         mh-mml-compose-insert-p.
8407         (mh-send-letter): Use mh-mml-compose-insert-flag.
8408         This addresses part of SF #627015.
8410         * mh-e.el:
8411         s/mh-folder-threaded-view-p/mh-folder-threaded-view-flag/
8412         s/mh-adaptive-cmd-note/mh-adaptive-cmd-note-flag/
8413         s/mh-xemacs-p/mh-xemacs-flag/
8414         (mh-folder-threaded-view-flag): Renamed from
8415         mh-folder-threaded-view-p. Make it buffer local.
8416         (mh-folder-tool-bar-map): Use mh-tool-bar-reply-3-buttons-flag.
8417         (mh-remove-xemacs-horizontal-scrollbar): Use mh-xemacs-flag.
8418         (mh-make-folder, mh-regenerate-headers, mh-get-new-mail): Use
8419         mh-adaptive-cmd-note-flag.
8420         (mh-folder-folder-menu, mh-regenerate-headers, mh-get-new-mail,
8421         mh-make-folder-mode-line, mh-process-commands,
8422         mh-delete-scan-msgs): Use mh-folder-threaded-view-flag.
8423         This addresses part of SF #627015.
8425         * mh-index.el:
8426         s/mh-adaptive-cmd-note/mh-adaptive-cmd-note-flag/
8427         (mh-index-search): Use mh-adaptive-cmd-note-flag.
8428         This addresses part of SF #627015.
8430         * mh-mime.el:
8431         s/mh-mml-compose-insert-p/mh-mml-compose-insert-flag/
8432         s/mh-xemacs-p/mh-xemacs-flag/
8433         (mh-mml-compose-insert-flag): Renamed from
8434         mh-mml-compose-insert-p. Make it buffer local.
8435         (mh-mml-attach-file, mh-mml-secure-message-sign-pgpmime,
8436         mh-mml-secure-message-encrypt-pgpmime): Use it.
8437         (gnus-local-map-property): Use mh-xemacs-flag.
8438         This addresses part of SF #627015.
8440         * mh-seq.el:
8441         s/mh-folder-threaded-view-p/mh-folder-threaded-view-flag/
8442         (mh-thread-generate, mh-thread-folder, mh-toggle-threads): Use
8443         mh-folder-threaded-view-flag.
8444         This addresses part of SF #627015.
8446         * mh-speed.el:
8447         s/mh-speed-run-flists-p/mh-speed-run-flists-flag/
8448         s/mh-speed-refresh-p/mh-speed-refresh-flag/
8449         (mh-speed-run-flists-flag): Renamed from mh-speed-run-flists-p.
8450         (mh-folder-speedbar-buttons): Use it.
8451         (mh-speed-refresh-flag): Renamed from mh-speed-refresh-p.
8452         (mh-speed-update-current-folder, mh-speed-invalidate-map,
8453         mh-speed-add-folder): Use it.
8454         This addresses part of SF #627015.
8456         * mh-utils.el:
8457         s/mh-xemacs-p/mh-xemacs-flag/
8458         s/mh-tool-bar-reply-3-buttons/mh-tool-bar-reply-3-buttons-flag/
8459         s/mh-show-use-xface/mh-show-use-xface-flag/
8460         (mh-xemacs-flag): Renamed from mh-xemacs-p.
8461         (mh-show-xface-function): Use it.
8462         (mh-tool-bar-reply-3-buttons-flag): Renamed from
8463         mh-tool-bar-reply-3-buttons.
8464         (mh-show-tool-bar-map): Use it.
8465         (mh-adaptive-cmd-note-flag): Renamed from mh-adaptive-cmd-note.
8466         (mh-cmd-note): Use it in description.
8467         (mh-show-use-xface-flag): Renamed from mh-show-use-xface. Use
8468         mh-xemacs-flag.
8469         (mh-show-xface): Use mh-show-use-xface-flag.
8470         This addresses part of SF #627015.
8472 2002-10-23  Bill Wohler  <wohler@newt.com>
8474         * Makefile (all): Rather than have to run "make clean all" all the
8475         time, make the default target do a clean so all you have to say is
8476         "make".
8478         * mh-e.el (mh-folder-map): Moved "t (mh-toggle-threads)" to T
8479         prefix.
8481 2002-10-22  Satyaki Das  <satyaki@theforce.stanford.edu>
8483         * mh-index.el (mh-indexer-choices, mh-swish-binary): The
8484         executable swish-e can be used to search (just like swish-search).
8485         However the Makefile in swish-e-2.2.2 doesn't install
8486         swish-search. So it is preferable to use swish-e.
8488 2002-10-22  Bill Wohler  <wohler@newt.com>
8490         * mh-comp.el (mh-letter-mode-map): Added aliases for keybindings.
8491         For example, you now have "C-c C-m C-i" in addition to "C-c C-m
8492         i".
8494 2002-10-22  Mark D. Baushke  <mdb@gnu.org>
8496         * mh-mime.el (mh-graphical-smileys-flag): Renamed from
8497          mh-graphical-smileys-p.
8498          (mh-display-smileys): Use it.
8499          (mh-graphical-emphasis-flag): Renamed from
8500          mh-graphical-emphasis-p.
8501          (mh-display-emphasis): Use it. This addresses part of SF #627015.
8503 2002-10-22  Satyaki Das  <satyaki@theforce.stanford.edu>
8505         * mh-mime.el (mh-insert-mime-security-button): A message is
8506         produced if PGP decryption/verification fails. This addresses
8507         SF# 627025.
8509 2002-10-21  Bill Wohler  <wohler@newt.com>
8511         * mh-seq.el (mh-widen): Checkdoc removed the period in the error.
8512         The info node (elisp) Coding Conventions says: "An error message
8513         should start with a capital letter but should not end with a
8514         period."
8516         * mh-e.el, mh-utils.el (mh-tool-bar-reply-3-buttons): Moved
8517         defcustom to mh-utils because I got an error about a nil value for
8518         mh-tool-bar-reply-3-buttons when I fired up mh-rmail.
8520         * mh-comp.el, mh-funcs.el, mh-mime.el, mh-pick.el: Moved (provide)
8521         to the end of the file to be consistent with most other files (see
8522         additional rationale in mh-e.el description below).
8524         * mh-e.el: Had to remove eval-when-compile from the (require 'cl)
8525         here too (because the remove-if generated a warning in CVS Emacs).
8526         Moved (provide) to the end of the file to be consistent with most
8527         other files. My guess is that this is good to keep a feature from
8528         being "provided" if the file craps out while being loaded.
8530 2002-10-21  Satyaki Das  <satyaki@theforce.stanford.edu>
8532         * mh-utils.el (mh-reply, Info-goto-node): Add autoloads to avoid
8533         compiler warnings.
8534         (mh-tool-bar-reply-3-buttons): Add defvar to avoid compiler
8535         warning.
8537         * mh-seq.el (mh-narrow-to-seq): Remember that a narrowing has
8538         occurred.
8539         (mh-valid-view-change-operation-p): New function that checks if
8540         the widening or unthreading that we are about to perform is
8541         allowed.
8542         (mh-widen): Check if widening is applicable.
8543         (mh-thread-inc, mh-thread-folder): Use delete-region instead of
8544         erase-buffer. This means if the buffer is narrowed then the hidden
8545         parts aren't removed. This allows widening of the folder later on.
8546         (mh-toggle-threads): Maintain mh-view-ops.
8548         * mh-e.el (mh-view-ops, mh-folder-mode): New buffer-local variable
8549         that keeps track of the sequence in which threading and narrowing
8550         of the folder buffer has been carried out. This is needed so that
8551         narrowing followed by threading (or vice versa) behaves in a
8552         reasonable manner.
8553         (mh-regenerate-headers): Use delete-region instead of
8554         erase-buffer.
8555         (mh-make-folder-mode-line): Change mh-first-msg-num and
8556         mh-last-msg-num conservatively. This might show a larger range in
8557         the mode-line but allows the unthreading to not miss messages
8558         present initially.
8560 2002-10-21  Bill Wohler  <wohler@newt.com>
8562         * mh-mime.el (mh-graphical-emphasis-p): Added _underline_ to the
8563         docstring, as well as the source of the strings,
8564         gnus-emphasis-alist.
8565         (mh-graphical-emphasis-p, mh-graphical-smileys-p): Set the default
8566         to t.
8568 2002-10-21  Peter S Galbraith  <psg@debian.org>
8570         * mh-utils.el (mh-show-mode): Invoke new toolbar.
8571         (mh-show-tool-bar-map): New tool-bar for mh-show-mode, similar to
8572         mh-letter-mode.
8574 2002-10-21  Satyaki Das  <satyaki@theforce.stanford.edu>
8576         * mh-utils.el (mh-display-msg): Call the smiley display function
8577         after the call to mh-show-mode. This is needed since mh-show-mode
8578         kills all buffer-local variables and resets the variable that
8579         controls display of graphical smileys.
8581 2002-10-21  Bill Wohler  <wohler@newt.com>
8583         * mh-e.el (mh-folder-mime-action): Change mime to MIME in message.
8585         * mh-comp.el (mh-mml-to-mime autoload): Ditto.
8587 2002-10-21  Mark D Baushke  <mdb@gnu.org>
8589         * mh-mime.el (smiley-region): Use load for a non-fatal dependency
8590         on the smiley library.
8592 2002-10-21  Jeffrey C Honig  <jch@honig.net>
8594         * mh-comp.el (mh-forward): Search for a blank line as well as
8595         mail-header-separator.
8596         (mh-letter-mode): Search for a blank line as well as
8597         mail-header-separator.
8598         (mh-send-letter): The default BCC encapsulation will make a MIME
8599         message unreadable.  If we are running nmh and the letter contains
8600         a Bcc: and a Content-Type: field, add the -mime switch to to the
8601         arguments to send.
8603 2002-10-21  Peter S Galbraith  <psg@debian.org>
8605         * mh-utils.el: Add a mh-defun-show-buffer call to define
8606         mh-show-pack-folder.
8608 2002-10-21  Peter S Galbraith  <psg@debian.org>
8610         * mh-mime.el (mh-store-mime-parts): Simplify code a bit.
8612         * mh-e.el (mh-help-messages): Update help message for changed
8613         keybindings.
8615 2002-10-21  Satyaki Das  <satyaki@theforce.stanford.edu>
8617         * mh-speed.el (mh-speed-invalidate-map): Invalidate
8618         mh-speed-folders-cache before it is used by mh-speed-folders. Also
8619         fix indentation of if statement.
8620         (mh-speed-folder-size): The folder name should be extracted from
8621         the speedbar buffer and not from the temp buffer has was happening
8622         before.
8623         (mh-speed-folder-size): Harden the function some more. It
8624         shouldn't produce errors any more unless flist really didn't work.
8626 2002-10-21  Bill Wohler  <wohler@newt.com>
8628         * mh-seq.el (mh-put-msg-in-seq): Formatting only. The reason I was
8629         in there is because I was trying to use mh-put-msg-in-seq and
8630         mh-msg-is-in-seq non-interactively and found that although the
8631         docstring says it uses the current message by default, I got
8632         errors if I passed in nil for the message. Is this expected, or is
8633         this a bug? I suppose the fix would be to make the arguments
8634         optional, right? This would cause the arguments in
8635         mh-put-msg-in-seq to be reversed, however. Might be a backwards
8636         compatibility problem.
8638         * mh-speed.el (mh-speed-view): Convert default size to string
8639         before passing it to read-string. This was done because XEmacs
8640         can't handle a numeric value for the default.
8642 2002-10-20  Satyaki Das  <satyaki@theforce.stanford.edu>
8644         * mh-utils.el (mh-show-mode-map, mh-show-folder-map)
8645         (mh-show-sequence-map, mh-show-thread-map, mh-show-extract-map)
8646         (mh-show-digest-map, mh-show-mime-map): Interactive functions
8647         callable in show buffer are now prefixed with mh-show.
8649         * mh-seq.el (mh-notate-deleted-and-refiled): Take into account the
8650         changes to mh-refile-list and the removal of the 'deleted
8651         sequence.
8652         (mh-toggle-threads): Changing from threaded to normal view doesn't
8653         try to push out message refiles and deletions to MH.
8655         * mh-e.el (mh-rescan-folder, mh-scan-folder): Add a new optional
8656         argument to both functions that prevents them from carrying out
8657         pending refiles and deletes.
8658         (mh-undo): Remove dead code.
8659         (mh-delete-a-msg, mh-undo-msg): Get rid of the 'deleted sequence.
8660         The same information is present in mh-delete-list any way.
8661         (mh-refile-a-msg, mh-undo-msg, mh-process-commands): Change the
8662         semantics of mh-refile-list to make it self-contained. This
8663         variable now contains a list of lists. The first element of each
8664         sublist is the destination folder name. The remaining elements are
8665         the messages that are to be refiled to the destination folder.
8666         (mh-toggle-threads, mh-folder-folder-menu): Use mh-toggle-threads
8667         instead of mh-thread-folder.
8669 2002-10-20  Peter S Galbraith  <psg@debian.org>
8671         * mh-mime.el (mh-store-mime-parts): Bug fix?  Make this command
8672         work when in the show buffer, and not just in the folder buffer
8673         pointing to a message.
8675 2002-10-20  Peter S Galbraith  <psg@debian.org>
8677         * mh-seq.el (mh-narrow-to-subject-sequence): Renamed from
8678         mh-narrow-to-subject-thread.
8679         (mh-subject-to-sequence): Renamed from mh-subject-thread-to-sequence.
8680         (mh-delete-subject-sequence): Renamed from mh-delete-subject-thread.
8681         (mh-next-unseen-subject-sequence): Renamed from
8682         mh-next-unseen-subject-thread.
8683         (mh-toggle-subject-thread): Removed.  :-(
8685         * mh-e.el: s/subject-thread/subject-sequence/
8686         (mh-thread-map): Bind mh-widen to "w".
8688         * mh-utils.el: s/subject-thread/subject-sequence/
8689         (mh-show-thread-map): Bind mh-widen to "w".
8691 2002-10-20  Satyaki Das  <satyaki@theforce.stanford.edu>
8693         * mh-seq.el (mh-thread-folder): This function is no longer
8694         interactive. The mh-toggle-threads is the interactive function
8695         that gets called by the user. Also the already computed values in
8696         mh-first-msg-num and mh-last-msg-num are used instead of
8697         recomputing the first and last message indices in the current
8698         folder.
8699         (mh-toggle-threads): New interactive function that toggles
8700         threaded view of the folder.
8702         * mh-utils.el (mh-letter-toggle-threads): New interactive function
8703         which toggles thread view from show buffer. This function replaces
8704         mh-letter-thread-folder.
8705         (mh-show-folder-map): Use mh-letter-toggle-threads instead of
8706         mh-letter-thread-folder.
8708         * mh-e.el (mh-folder-map): Use mh-toggle-threads instead of
8709         mh-thread-folder.
8711 2002-10-20  Bill Wohler  <wohler@newt.com>
8713         * mh-e.el (mh-scan-folder): Formatting only.
8714         (mh-goto-cur-msg): Removed call to mh-last-msg in those cases
8715         where there isn't a current message. Since I've started using the
8716         speedbar to read my mh-e mail, I've had to use M-< every time to
8717         go to the beginning of the new messages. Very annoying! Thus, if
8718         there isn't a current message, the cursor is left alone, which
8719         sounds like the right thing to do anyway.
8721 2002-10-19  Peter S Galbraith  <psg@debian.org>
8723         * mh-seq.el (mh-subject-thread-to-sequence): Bug fix.  After
8724         making the 'subject sequence real, I now have to delete it globally.
8726         * mh-seq.el (mh-toggle-subject-thread): Make toggle back to full
8727         scan exactly mh-widen (removed moving to current message).
8729         * mh-seq.el (mh-subject-thread-to-sequence): Make 'subject
8730         sequence a real one, exported to MH.  This means you can, for
8731         example, mh-forward it.  But it also shows up with a mark in the
8732         scan output.  (Closes SF #489445).
8734 2002-10-19  Bill Wohler  <wohler@newt.com>
8736         * mh-speed.el (mh-speed-view): If there weren't any unseen
8737         messages, and you specified a string (a sequence like "last") when
8738         prompted for the number of messages to display, you got an error.
8739         This has been fixed.
8741 2002-10-19  Mark D Baushke  <mdb@gnu.org>
8743         * mh-e.el (mh-last-destination-folder): Destination of last refile
8744         command.
8745         (mh-last-destination-write): Destination of last write command.
8746         (mh-refile-msg): Use 'mh-last-destination-folder and update both it
8747         and 'mh-last-destination.
8748         (mh-write-msg-to-file): Use 'mh-last-destination-write and update
8749         both it and 'mh-last-destination (Closes SF #580772).
8751 2002-10-19  Bill Wohler  <wohler@newt.com>
8753         * mh-comp.el (mh-yank-from-start-of-msg): Changed default to
8754         'attribution.
8755         (mh-letter-mode-map): Removed commented-out keybindings as well as
8756         alias "C-c C-m a (mh-compose-insertion)." Prefer "C-c C-m i."
8758         * mh-utils.el: Removed autoload of help. It no longer appears to
8759         be necessary in cvs Emacs (21.4).
8761 2002-10-18  Bill Wohler  <wohler@newt.com>
8763         * mh-e.el (mh-execute-commands): Doc fix.
8764         (mh-compat-write-file-hook): Renamed to
8765         mh-write-file-functions-compat.
8766         (mh-folder-mode): Add mh-write-file-functions-compat instead of
8767         mh-compat-write-file-hook
8769 2002-10-18  Peter S Galbraith  <psg@debian.org>
8771         * mh-utils.el (mh-invisible-headers-show-xface): Killed this
8772         variable.
8773         (mh-invisible-headers): Use 'mh-show-use-xface instead of
8774         'mh-invisible-headers-show-xface to determine whether to render
8775         the X-Face header line visible or not.
8777 2002-10-18  Satyaki Das  <satyaki@theforce.stanford.edu>
8779         * mh-e.el (mh-compat-write-file-hook, mh-folder-mode): Use the new
8780         macro mh-compat-write-file-hook to use write-file-functions for
8781         Emacs 21.4 and local-write-file-hooks for older versions.
8783 2002-10-18  Mark D Baushke  <mdb@gnu.org>
8785         * mh-utils.el (mh-invisible-headers): Add more anti-spam headers.
8787 2002-10-18  Peter S Galbraith  <psg@debian.org>
8789         * mh-mime.el (mh-mml-forward-message): mml-attach-file constructs
8790         a malformed composition if the description string is empty, so
8791         test for that and call mml-attach-file without that argument if
8792         it's an empty string (closes SF #625168).
8794 2002-10-17  Satyaki Das  <satyaki@theforce.stanford.edu>
8796         * mh-index.el (mh-index-keymap): Removed extra binding of " ".
8797         (mh-index-folder-mode-help-messages): Made the cheat sheet entry
8798         of quit like the others.
8799         (mh-index-search): If space was pressed in the index buffer before
8800         a search result has been shown with ".", the old show buffer would
8801         be scrolled. This is confusing since the index and show buffer
8802         contents are contradictory. Killing the show buffer here avoids
8803         this problem.
8804         (mh-index-configure-windows): Refine the window configuration
8805         logic. Avoid the two window view unless there is a message being
8806         displayed in the show buffer.
8807         (mh-index-scroll-up): Rewrite this function. The old version had a
8808         bizarre problem where the show buffer wouldn't be scrolled if the
8809         speedbar was present.
8810         (mh-index-scroll-down): Rewritten because of similar reason as
8811         above.
8813 2002-10-17  Peter S Galbraith  <psg@debian.org>
8815         * mh-comp.el (mh-reply): Add an undo boundary in the undo list
8816         before calling 'mh-yank-cur-msg (closes SF #623693).
8818 2002-10-17  Satyaki Das  <satyaki@theforce.stanford.edu>
8820         * mh-e.el (mh-folder-mode): Use local-write-file-hooks instead of
8821         write-file-hooks. This is required for XEmacs and also the right
8822         thing according to GNU Emacs21 documentation.
8824 2002-10-16  Satyaki Das  <satyaki@theforce.stanford.edu>
8826         * mh-seq.el (mh-thread-generate): Get threading to work correctly
8827         on partial folders. The fix here disregards messages that aren't
8828         already present in the buffer.
8829         (mh-thread-folder): When querying scan about thread info try to
8830         avoid asking about messages that aren't present in the folder
8831         buffer. A more efficient fix would be to ask scan about just the
8832         messages that are present instead of a range of messages. However
8833         that runs the risk of sending long command lines to scan. Another
8834         change was to populate the mh-scan-line-map early so that the
8835         change in mh-thread-generate would work.
8836         (mh-thread-generate-scan-lines): In case duplicates are present
8837         make one of them the pseudo parent of the rest. This makes it look
8838         prettier if there are multiple duplicates at top level.
8840         * mh-comp.el (mh-edit-again): If a buffer in show-mode is being
8841         reused then reinsert message file. This should fix SF #624283.
8843         * mh-mime.el (mh-mm-display-part): Make sure mh-display-part is
8844         always called when we want to remove the displayed MIME part.
8846 2002-10-16  Bill Wohler  <wohler@newt.com>
8848         * mh-speed.el (mh-speed-folder-size): checkdoc fix.
8849         (mh-speed-view): Tweaked output to mirror gnus verbiage. Offer
8850         to view number of messages in folder rather than mh-large-folder.
8851         Replaced (intern mh-unseen-seq) with mh-unseen-seq since the
8852         former was generating errors.
8854 2002-10-15  Satyaki Das  <satyaki@theforce.stanford.edu>
8856         * mh-speed.el (mh-large-folder): New customizable variable to
8857         control mh-e's perception of large folders.
8858         (mh-speed-folder-size): New function which computes the size of
8859         folder on current line.
8860         (mh-speed-view): Modified to handle large folders. If the folder
8861         being clicked has unseen messages then only those messages are
8862         shown. Otherwise if number of messages in folder is larger than
8863         mh-large-folders then the user is asked for the number of messages
8864         to be shown. If the folder satisfies neither of the above cases
8865         then it is displayed in its entirety
8867 2002-10-15  Bill Wohler  <wohler@newt.com>
8869         * mh-index.el (mh-index-keymap): Use gnus-define-keys. Sorted.
8870         Noticed that there were two key bindings for SPACE...
8872         * mh-speed.el (mh-folder-speedbar-key-map): Ditto (except for the
8873         dup SPACE binding).
8875         Completed help in other modes:
8877         * mh-utils.el (mh-xemacs-p): Fixed doc.
8878         (mh-show-mode-map, mh-show-folder-map, mh-show-sequence-map)
8879         (mh-show-thread-map, mh-show-extract-map): Added binding for
8880         mh-help.
8882         * mh-pick.el (mh-search-folder): Added startup help message.
8883         (mh-pick-mode-help-messages): New variable that contains help
8884         messages for pick buffer.
8885         (mh-pick-mode): Set local buffer variable mh-help-messages to
8886         mh-pick-mode-help-messages.
8888         * mh-index.el (mh-index-keymap): Added binding for mh-help
8889         (mh-index-folder-mode-help-messages): New variable that contains
8890         help messages for MH Index buffer.
8891         (mh-index-folder-mode): Set local buffer variable mh-help-messages
8892         to mh-index-mode-help-messages.
8894         * mh-funcs.el (mh-help, mh-prefix-help): Call
8895         substitute-command-keys on the help messages.
8897         * mh-e.el (mh-help-messages): Added ,. Ran C-M-q.
8898         (mh-help): This autoload doc is now used for more than just the
8899         MH-Folder, so drop that specific text.
8901         * mh-comp.el (mh-edit-again, mh-extract-rejected-mail)
8902         (mh-forward, mh-reply, mh-send-sub): Call mh-letter-mode-message
8903         to display a help message at startup.
8904         (mh-letter-mode): Set local buffer variable mh-help-messages to
8905         mh-letter-mode-help-messages.
8906         (mh-letter-mode-help-messages): New variable with help messages
8907         for the MH-Letter buffer.
8908         (mh-letter-mode-message): New function that displays a startup
8909         help message.
8910         (mh-letter-mode-map): Added binding for mh-help. Sorted.
8912 2002-10-15  Satyaki Das  <satyaki@theforce.stanford.edu>
8914         * mh-speed.el (mh-speedbar-selected-folder-with-unseen-messages-face)
8915         (mh-speedbar-folder-face, mh-speedbar-selected-folder-face)
8916         (mh-speedbar-folder-with-unseen-messages-face): New faces for mh-e
8917         speedbar.
8918         (mh-folder-speedbar-buttons, mh-speed-update-current-folder)
8919         (mh-speed-add-buttons): Use the new faces.
8920         (mh-speed-normal-face, mh-speed-bold-face): Functions to convert
8921         to bold face and back to normal face.
8922         (mh-speed-set-face): Removed.
8923         (mh-speed-highlight): Modified to allow it to be used instead of
8924         mh-speed-set-face. Also changes were made to fontify folders with
8925         unread messages.
8926         (mh-speed-parse-flists-output, mh-speed-parse-flists-output)
8927         (mh-speed-invalidate-map): Use mh-speed-highlight instead of
8928         mh-speed-set-face.
8930 2002-10-15  Bill Wohler  <wohler@newt.com>
8932         * mh-mime.el, mh-seq.el, mh-speed.el, mh-utils.el: It appears that
8933         the cl package has been restructured in 21.4 in such a way that
8934         the use of eval-when-compile no longer suppresses warnings when
8935         compiling so that (require 'cl) must be called directly (maybe
8936         this is a bug in 21.4 ;-). Thus the autoloads of cl are no longer
8937         needed. Now compiles clean under 21.4.
8939         * mh-e.el (mh-folder-mode): The use of local-write-file-hooks is
8940         deprecated in Emacs 21.4, so use add-hook write-file-functions (or
8941         write-file-hook for older versions) with the LOCAL argument
8942         instead. Now compiles clean under 21.4.
8944         * mh-comp.el (mh-yank-cur-msg): Push a mark at the opposite end of
8945         the included text to make it easy to jump or delete to the other
8946         end of the included text.
8948 2002-10-15  Satyaki Das  <satyaki@theforce.stanford.edu>
8950         * mh-comp.el (mh-insert-prefix-string): Remove the erroneous use
8951         of set-mark and other related functions.
8953 2002-10-14  Bill Wohler  <wohler@newt.com>
8955         * mh-comp.el (mh-yank-from-start-of-msg): Fixed documentation. It
8956         isn't ignored if there is a region. It is still used for the
8957         attribution.
8958         (mh-yank-cur-msg): Removed unnecessary push-mark when snarfing the
8959         entire message. Move the cursor to the end of the snarfed message
8960         if there is a region. In this case, push a mark so user can pop to
8961         the beginning of the snarfed fragment.
8962         (mh-insert-prefix-string): This calls set-mark which I find
8963         suspect since I found that my last user mark was deleted after
8964         yanking a message. Added a comment to this effect. Will probably
8965         add a bug report...
8967         * README (Installed, Supported versions): To appear in GNU Emacs
8968         21.3; supported on Emacs 21, 20.7 and XEmacs 21.
8970         * mh-funcs.el (mh-concat-list): Deleted. Use mapconcat instead.
8971         (mh-help, mh-prefix-help): Use mapconcat instead of mh-concat-list.
8972         (mh-ephem-message): Use "%s" in message.
8974         * mh-funcs.el (mh-concat-list): New function to concatenate a list
8975         of strings into a single string. I would have thought elisp
8976         already contained a function like this, but I couldn't find it.
8977         (mh-ephem-message): New function to display a message in the
8978         minibuffer ephemerally. minibuffer-message seemed like the right
8979         function, but it writes to the current buffer oddly enough.
8980         (mh-help, mh-prefix-help): New functions to display command
8981         cheat sheets in the minibuffer (closes SF #493740). It would be
8982         nice to refactor these two into a single function if possible.
8984         * mh-e.el (mh-folder-mode-map, mh-folder-map, mh-sequence-map)
8985         (mh-thread-map, mh-extract-map): Added ? keybinding for `mh-help'
8986         and `mh-prefix-help' (closes SF #493740).
8987         (mh-help-messages): New variable to hold various help messages.
8988         (mh-help, mh-prefix-help): Autoload from mh-funcs.el.
8990 2002-10-13  Bill Wohler  <wohler@newt.com>
8992         * mh-index.el (mh-glimpse-directory, mh-swish-directory,
8993         mh-namazu-directory): New variables that hold the name of the
8994         configuration and indexing directory. All are now hidden `.'
8995         directories.
8997         * mh-e.el, mh-funcs.el, mh-index.el, mh-mime.el, mh-pick.el,
8998         mh-seq.el, mh-xemacs-compat.el (Docstrings): Converted comments to
8999         docstrings, reworded some docstrings to conform to Emacs
9000         documentation conventions, and eliminated all checkdoc warnings
9001         (except for -flag, which we'll fix after 6.2 is released).
9003 2002-10-13  Satyaki Das  <satyaki@theforce.stanford.edu>
9005         * mh-index.el (mh-swish-next-result): Fix a bug in a corner case
9006         where the lack of a trailing "/" caused the function to wrongly
9007         filter out correct hits. This should fix SF #622679.
9009 2002-10-12  Steve Youngs  <youngs@xemacs.org>
9011         * mh-utils.el (mh-xemacs-p): Simplify it, don't test for
9012         'defvaralias' and don't use 'running-xemacs'.
9014 2002-10-11  Bill Wohler  <wohler@newt.com>
9016         * mh-comp.el: (Docstrings): Eliminated all checkdoc warnings by
9017         converting comments to docstrings and rewording some docstrings to
9018         conform to Emacs documentation conventions.
9020 2002-10-11  Steve Youngs  <youngs@xemacs.org>
9022         * mh-utils.el (mh-xemacs-p): New.
9023         (mh-show-use-xface): Use it.
9024         (mh-show-xface-function): Ditto.
9026         * mh-e.el (toplevel): Ditto.
9027         (mh-remove-xemacs-horizontal-scrollbar): Ditto.
9028         (mh-folder-mode-map): Ditto.
9030         * mh-comp.el (mh-insert-x-mailer): Ditto.
9032         * mh-mime.el (gnus-local-map-property): Ditto.
9033         (mh-mml-to-mime): Move (require 'mh-utils) to toplevel.
9034         (mh-prompt-for-folder): Autoloading this not needed because
9035         mh-utils is now required at toplevel.
9036         (mh-show-xface): Ditto.
9037         (mh-show-addr): Ditto.
9039 2002-10-11  Bill Wohler  <wohler@newt.com>
9041         * Makefile (EMACS_HOME): Set default to $(TOP)/../emacs so it
9042         would be useful.
9044         * mh-utils.el (mh-invisible-headers): Added various spam header
9045         fields.
9046         (mh-path-search): Removed argument `func-p' and related code. It
9047         was not documented and no one used it.
9048         (Docstrings): Converted comments to docstrings, reworded some
9049         docstrings to conform to Emacs documentation conventions, and
9050         basically eliminated all checkdoc warnings (except for -flag
9051         warnings).
9053 2002-10-11  Satyaki Das  <satyaki@theforce.stanford.edu>
9055         * mh-seq.el (mh-thread-generate): Kill dead code.
9057 2002-10-10  Satyaki Das  <satyaki@theforce.stanford.edu>
9059         * mh-seq.el (mh-region-to-sequence): Don't include point-max in
9060         region (closes SF #621632).
9062         * mh-utils.el (mh-defun-show-buffer): Fix call of
9063         frame-first-window to work with XEmacs. Also avoid warning about
9064         cur-buffe-name in XEmacs.
9065         (mh-modify, mh-goto-msg): Remove dead code.
9067         * mh-speed.el (mh-speed-toggle, mh-speed-add-buttons): Remove dead
9068         code.
9070         * mh-seq.el (mh-subject-thread-to-sequence, mh-thread-get-message,
9071         mh-thread-generate, mh-thread-folder): Remove dead code.
9073         * mh-mime.el (mh-mm-inline-message): Remove dead code.
9075         * mh-index.el (mh-index-search): Remove dead code.
9077         * mh-comp.el (mh-open-line): Remove dead code.
9079         * mh-e.el (mh-folder-mode): Use the macro
9080         mh-remove-xemacs-horizontal-scrollbar to avoid compiler-warning in
9081         Emacs.
9082         (mh-remove-xemacs-horizontal-scrollbar): New macro to avoid
9083         compiler-warnings.
9085 2002-10-10  Mark D Baushke  <mdb@gnu.org>
9087         * Makefile (EMACS_OPTIONS): New macro for command-line compile
9088         options.
9089         (EMACS): Allow the user to specify which emacs command to use for
9090         the compile.
9091         (COMPILE_COMMAND): Combine the compile command with its options.
9092         (.el.elc): Use the new $(COMPILE_COMMAND).
9094 2002-10-10  Mark D Baushke  <mdb@gnu.org>
9096         * mh-speed.el (mh-speed-select-attached-frame): Define a new
9097         compatibility macro for getting to the attached-frame.
9098         (mh-speed-update-current-folder): Use it.
9100 2002-10-10  Mark D Baushke  <mdb@gnu.org>
9102         * mh-speed.el (mh-speed-update-current-folder): Use
9103         'dframe-select-attached-frame if we are in a newer speedbar
9104         version that no longer supports the 'speedbar-attached-frame
9105         variable.
9107 2002-10-10  Steve Youngs  <youngs@xemacs.org>
9109         * mh-speed.el (mh-speed-update-current-folder): Use
9110         'dframe-select-attached-frame' if we're in XEmacs.
9112         * mh-e.el (mh-folder-mode): Remove the horizontal scrollbar from
9113         the MH-Folder buffer if we're in XEmacs.
9115 2002-10-09  Satyaki Das  <satyaki@theforce.stanford.edu>
9117         * mh-utils.el (mh-show-xface-function): New global that stores
9118         what function needs to be called to display X-Face.
9119         (mh-show-xface): Rewritten to avoid compiler warning.
9121 2002-10-09  Peter S Galbraith  <psg@debian.org>
9123         * mh-utils.el (mh-exchange-point-and-mark-preserving-active-mark):
9124         Simplify code for all emacsen to avoid byte-compilation warnings.
9126 2002-10-09  Satyaki Das  <satyaki@theforce.stanford.edu>
9128         * mh-mime.el (mh-mm-display-part): If a sub-part of the current
9129         part is an inline image then clicking the button keeps the image
9130         around. The change fixes this bug.
9132 2002-10-09  Peter S Galbraith  <psg@debian.org>
9134         * mh-utils.el (mh-exec-cmd-output): Use new function
9135         'mh-exchange-point-and-mark-preserving-active-mark instead of
9136         'exchange-point-and-mark.  Fixes a bug in emacs20 and XEmacs21.
9137         (mh-exchange-point-and-mark-preserving-active-mark): New function.
9138         Does like 'exchange-point-and-mark but doesn't activate the mark.
9140         * mh-comp.el (mh-letter-menu): Allow access to "Pull in All
9141         Compositions" menu entries when edits have really occurred.
9142         Works with "forw: -mime" mh_profile entry, so this fixes a bug.
9144         * mh-mime.el (mh-mime-inline-part, mh-mm-display-part): Use
9145         line-beginning-position and line-end-position instead of
9146         point-at-bol and point-at-eol XEmacs functions.
9147         * mh-xemacs-compat.el: Added line-end-position and
9148         line-beginning-position compatibility aliases.
9150 2002-10-08  Mark D. Baushke  <mdb@gnu.org>
9152         * mh-utils.el (mh-scan-msg-format-regexp): The regexp to find
9153         %number(msg).
9154         (mh-scan-msg-format-string): Format to be used with the current
9155         maximum width of message number for the folder in the
9156         `mh-upate-scan-format' function.
9157         (mh-update-scan-format): Use `mh-scan-msg-format-regexp' for greater
9158         flexibility. The message number is no longer anchored to the
9159         beginning of the `mh-scan-format-nmh' or `mh-scan-format-mh' format
9160         strings. The `mh-update-scan-format' allows for using zero-filled
9161         message numbers.
9163 2002-10-08  Peter S Galbraith  <psg@debian.org>
9165         * mh-e.el (mh-folder-folder-menu): Add entry for "Thread Folder".
9167 2002-10-07  Satyaki Das  <satyaki@theforce.stanford.edu>
9169         * mh-seq.el (mh-thread-generate): Use mh-progs to get path to mh
9170         executables.
9172         * mh-speed.el (mh-speed-flists): Use mh-progs to get path to mh
9173         executables right.
9174         (mh-speed-folders-actual): Same as above.
9176 2002-10-05  Steve Youngs  <youngs@xemacs.org>
9178         * mh-comp.el (mh-yank-from-start-of-msg): Make default setting 't'
9179         a const.
9181         * mh-xemacs-compat.el (match-string-no-properties): Rewrite as a
9182         defsubst using 'buffer-substring-no-properties' so we don't grab
9183         any extents.
9184         (rfc822-goto-eoh): Removed.  This exists in the XEmacs mail-lib
9185         package.
9186         (mail-header-end): Ditto.
9187         (mail-mode-fill-paragraph): Ditto.
9189 2002-10-05  Satyaki Das  <satyaki@theforce.stanford.edu>
9191         * mh-speed.el (mh-speed-invalidate-map): When called interactively
9192         the function will clear mh-speed-folders-cache.
9194 2002-10-02  Satyaki Das  <satyaki@theforce.stanford.edu>
9196         * mh-mime.el (mh-insert-mime-button): Rewrite without using
9197         replace-match.
9199 2002-10-01  Satyaki Das  <satyaki@theforce.stanford.edu>
9201         * mh-mime.el (mh-file-mime-type-substitutions): Reorder code to
9202         avoid compiler warning.
9204 2002-10-01  Bill Wohler  <wohler@newt.com>
9206         * Makefile (MH-E-ETC): Moved ChangeLog into MH-E-ETC-ETC since it
9207         shouldn't get installed in Emacs.
9208         (install-emacs): Install MH-E-IMG into Emacs' lisp/toolbar and
9209         MH-E-IMG2 into Emacs' lisp/mail.
9211 2002-10-01  Peter S Galbraith  <psg@debian.org>
9213         * mh-e.el (mh-tool-bar-reply-3-buttons): New customization.
9214         Non-nil means use three buttons for reply commands in tool-bar.
9215         If you have room on your tool-bar because you are using a large
9216         font, you may set this variable to expand the single reply
9217         button into three buttons that won't lead to minibuffer prompt
9218         about who to reply to.
9219         (mh-folder-tool-bar-map): Use mh-tool-bar-reply-3-buttons to
9220         decide how many buttons to use for replying.
9222         * mh-mime.el (mh-file-mime-type-substitutions)
9223         (mh-file-mime-type-substitute):  Fix typos and doc strings.
9225 2002-09-30  Peter S Galbraith  <psg@debian.org>
9227         * mh-mime.el (mh-file-mime-type): Run Content-Type string returned
9228         by file command through mh-file-mime-type-substitute (see below).
9229         (mh-file-mime-type-substitute): Possibly change Content-Type
9230         string using mh-file-mime-type-substitutions variable.  This is
9231         mostly because all MS-Office file are seen as application/msword
9232         by the file command.
9233         (mh-file-mime-type-substitutions): New variable.  Defines
9234         substitutions to make for Content-Type returned from file command.
9236 2002-09-27  Bill Wohler  <wohler@newt.com>
9238         * README: Moved Id to end of file since it broke outline mode at
9239         the beginning.
9241         * import-emacs (release): Renamed "mainline" tag to
9242         "emacs-mainline" to correspond with existing CVS tag.
9243         (EMACS_HOME): Fixed typo in docstring.
9245         * mh-utils.el (mh-folder-name-p, mh-defun-show-buffer): Lowercase
9246         NIL and T in docstring.
9247         (mh-update-scan-format): Fixed typo.
9249         * mh-comp.el, mh-e.el, mh-pick.el, mh-utils.el: Updated from CVS
9250         Emacs. The only new thing appears to be to downcase NIL and T in
9251         the documentation.
9253 2002-09-26  Satyaki Das  <satyaki@theforce.stanford.edu>
9255         * mh-seq.el (mh-thread-generate): The threading code will now be
9256         more resistant to corruption of messages. Before the change any
9257         corruption of message x would cause all messages with indices
9258         higher than x to be neglected when threading!
9260 2002-09-23  Peter S Galbraith  <psg@debian.org>
9262         * mh-mime.el (mh-store-mime-parts): Don't store value into
9263         user-customizable variable mh-store-mime-parts-default-directory
9264         and use  mh-store-mime-parts-directory instead.
9266 2002-09-20  Satyaki Das  <satyaki@theforce.stanford.edu>
9268         * mh-seq.el (mh-thread-prune-subject): Use regular expressions to
9269         make the subject pruning behave the way it is specified in the
9270         imap-thread RFC.
9272         * mh-speed.el (mh-speed-folders-actual): Don't use pop when we
9273         are not going to use the first element. This avoids a compilation
9274         warning with cvs emacs.
9276 2002-09-19  Satyaki Das  <satyaki@theforce.stanford.edu>
9278         * mh-utils.el (mh-display-msg): Put the call to
9279         set-buffer-modified after mh-show-mode. This is needed for CVS
9280         emacs since calling mh-show-mode marks the buffer as modified if
9281         font-lock is on.
9283 2002-09-17  Peter S Galbraith  <psg@debian.org>
9285         * mh-mime.el (mh-store-mime-parts-default-directory): Renamed from
9286         mh-store-mime-parts-directory
9287         (mh-store-mime-parts-directory): Renamed from
9288         mh-store-mime-parts-directory-default.
9290 2002-09-16  Peter S Galbraith  <psg@debian.org>
9292         * mh-comp.el (mail-citation-hook): Doc tweaks suggested by Bill.
9294 2002-09-08  Satyaki Das  <satyaki@theforce.stanford.edu>
9296         * mh-e.el (autoloads): Reorder autoload of mh-reply to avoid
9297         compiler warning.
9299 2002-09-03  Peter S Galbraith  <psg@debian.org>
9301         * mh-mime.el (mh-store-mime-parts-directory): New defcustom.
9302         Default directory to use for mh-store-mime-parts.
9303         (mh-store-mime-parts): New Command.  Store the MIME parts of the
9304          current message.
9305         (mh-store-mime-parts-directory-default): New internal working
9306         variable.  Default to use for mh-store-mime-parts-directory, set
9307         from last use.
9309         * mh-e.el (mh-folder-seq-tool-bar-map): Add mh-store-mime-parts to
9310         toolbar.
9313 2002-08-22  Satyaki Das  <satyaki@theforce.stanford.edu>
9315         * mh-seq.el (mh-thread-generate-scan-lines): In threaded view,
9316         complete scan lines are printed for all messages (not just the
9317         ones at the top of a thread).
9319         * mh-index.el (mh-index-insert-scan): Replace use of kill-line
9320         since that pollutes the kill-ring.
9322         * mh-comp.el (autoloads): Add autoloads for search and subseq to
9323         get rid of compiler warnings.
9325 2002-08-19  Peter S Galbraith  <psg@debian.org>
9327         * reply-to.xpm, reply-to.pbm, reply-from.xpm, reply-from.pbm,
9328         * reply-all.xpm, reply-all.bpm:  New icons for various reply methods.
9329         * mh-e.el (mh-folder-tool-bar-map): Split reply button into three
9330         that won't prompt for "from", "to" and "all".
9331         * mh-comp.el (mh-reply): Put variable reply-to in the interactive
9332         list since it's specified on the command line for the new toolbar.
9334         * mh-comp.el (mail-citation-hook): Tweak docs concerning
9335         historical usage for supercite.
9336         (mh-yank-from-start-of-msg): Add settings 'supercite and
9337         'autosupercite.  Rename 'automatic to 'autoattrib.
9338         (mh-insert-prefix-string): Invoke sc-cite-original if
9339         mh-yank-from-start-of-msg is et to 'supercite or 'autosupercite.
9341 2002-08-17  Satyaki Das  <satyaki@theforce.stanford.edu>
9343         * mh-comp.el (compilation-fix): Reorder defvars to avoid warnings
9344         during compilation.
9346 2002-08-17  Peter S Galbraith  <psg@debian.org>
9348         * mh-comp.el (mh-yank-from-start-of-msg): Add 'automatic choice.
9349         Do as for `attribution' automatically when show buffer matches the
9350         message being replied-to.
9351         (mh-reply): Call 'mh-yank-cur-msg when mh-yank-from-start-of-msg
9352         is set to 'automatic and show buffer matches message number being
9353         replied-to.
9354         (mh-show-buffer-message-number): New helper function to get the
9355         message number of the current show-buffer.
9356         (mh-yank-cur-msg): Handle 'automatic choice the same as 'attribution.
9357         (mh-yank-cur-msg): Bug fix.  It would bail on error if
9358         mh-show-buffer didn't exists.
9360 2002-08-16  Peter S Galbraith  <psg@debian.org>
9362         * mh-comp.el (mh-insert-x-mailer): It wrongly assumed that Emacs
9363         was used even when XEmacs was used.  Fixed so X-Mailer header is
9364         more exact about what we are using.
9366 2002-08-15  Peter S Galbraith  <psg@debian.org>
9368         * mh-e.el (mh-version): Change CVS version number to 6.1+cvs just
9369         so X-Mailer header is more exact about what we are using.
9371         * mh-mime.el (mh-mhn-compose-insertion, mh-mhn-compose-anon-ftp,
9372         mh-mml-attach-file):
9373         "Jeffrey P. Morgenthaler" <jpmorgen@congee.gsfc.nasa.go> reported
9374         that "require" in emacs 20.3 doesn't handle 3 arguments.  We
9375         use "load" at the top of file elsewhere anyway to handle such a
9376         case of non-essential loading, so switch to that here.
9378 2002-08-06  Satyaki Das  <satyaki@theforce.stanford.edu>
9380         * mh-funcs.el (autoload): Add autoload for mh-speed-invalidate-map.
9382         * mh-speed.el (mh-speed-add-folder): New function to make the
9383         speedbar aware of new folders when they are created by mh-e.
9385         * mh-utils.el (mh-prompt-for-folder): Use mh-speed-add-folder to
9386         tell speedbar that new folder is being created. Also use folder
9387         instead of mkdir to create new folders.
9389 2002-08-01  Peter S Galbraith  <psg@debian.org>
9391         * mh-utils.el (mh-decode-quoted-printable): Conditionalize the
9392         limit of search for quoted-printable.  If we're using mm-decode
9393         for MIME decoding, it's possible that `mimedecode' could mess our
9394         message, so we only run a full search for quoted-printable parts
9395         when not using gnus' mm-decode.  When using mm-decode, mimedecode
9396         can still help by handling the case of the whole message being
9397         quoted-printable as opposed to only a part.
9399 2002-07-31  Peter S Galbraith  <psg@debian.org>
9401         * mh-comp.el (mh-compose-insertion): Moved from mh-mime.el because
9402         the pulldown menu were broken in XEmacs21 from this variable being
9403         undefined.
9405 2002-07-28  Mark D. Baushke  <mdb@gnu.org>
9407         * mh-utils.el (mh-show-mode): Use the default paragraph-start
9408         rather than the inherited text-mode value.
9410 2002-07-28  Satyaki Das  <satyaki@theforce.stanford.edu>
9412         * mh-seq.el (mh-thread-duplicates): New hash table to track
9413         duplicate messages.
9414         (mh-thread-get-message): Remove debug code.
9415         (mh-thread-canonicalize-id): Modified to handle messages without
9416         message-id header. Such messages are given distinct copies of the
9417         empty string as message-id.
9418         (mh-thread-generate): The function was inadvertently rebuilding
9419         the thread tree when message refiles and message deletes are
9420         processed. The change here fixes that. Also code has been added to
9421         keep track of duplicate message-id's.
9422         (mh-thread-generate-scan-lines): Modified to print scan lines for
9423         duplicate messages (that is messages with the same message-id).
9424         (mh-thread-forget-message): Modified to maintain
9425         mh-thread-duplicates.
9427 2002-07-22  Satyaki Das  <satyaki@theforce.stanford.edu>
9429         * mh-speed.el (mh-speed-parse-flists-output): Use delete-region
9430         instead of kill-region. Otherwise the kill ring gets polluted.
9432 2002-07-16  Satyaki Das  <satyaki@theforce.stanford.edu>
9434         * mh-seq.el (mh-thread-update-scan-line-map): New function to
9435         refresh the stale scan lines.
9436         (mh-thread-inc): Update old scan lines when mh-thread-inc is
9437         called. Otherwise notations for deleted and refiled messages get
9438         lost and the folder display gets out of sync with real mh-e state.
9440         * mh-mime.el (mh-mm-display-part): Call Gnus citation highlight
9441         code when text part is displayed. Otherwise buttonized text parts
9442         aren't correctly fontified when they are displayed.
9444 2002-07-15  Mark D. Baushke  <mdb@gnu.org>
9446         * mh-utils.el (mm-decode): Use load for the Non-fatal depencency
9447         on the mm-decode library.
9448         * mh-mime.el (mm-decode, mm-uu, mm-view): Use load for the
9449         Non-fatal depencencies on the mm-decode, mm-uu and mm-view
9450         libraries.
9452 2002-07-15  Satyaki Das <satyaki@theforce.stanford.edu>
9454         * mh-utils.el (mh-require, mh-autoload): Remove these macros.
9455         (mh-decode-mime): Initialized to t iff the mm-decode library is
9456         present in the load-path.
9457         * mh-mime.el (mh-require): Don't use it anymore.
9459 2002-07-15  Mark D Baushke  <mdb@gnu.org>
9461         * mh-utils.el (mh-update-scan-format): Rewrite for compatibility
9462         with Xemacs as replace-match appears not to have identical
9463         functionality with FSF emacs.
9464         (mh-scan-msg-format-regexp): Deleted. This regexp is now hardcoded
9465         into the mh-update-scan-format function.
9467 2002-07-12  Satyaki Das  <satyaki@theforce.stanford.edu>
9469         * mh-seq.el: Add message threading code.
9471         * mh-utils.el (mh-letter-thread-folder): New interactive function
9472         that allows switching to threaded view from show buffer.
9473         (mh-show-folder-map): Bound "F t" to call mh-letter-thread-folder.
9474         (mh-goto-msg): Replace the function to not assume that messages
9475         are sorted in the folder buffer.
9477         * mh-e.el (mh-folder-threaded-view-p): New buffer local variable
9478         in the folder buffer that records whether threaded view is being
9479         used currently.
9480         (mh-scan-subject-regexp, mh-scan-format-regexp): Get font lock
9481         working for threaded view as well.
9482         (mh-regenerate-headers): Reset mh-folder-threaded-view-p to nil.
9483         (mh-get-new-mail, mh-process-commands): Do incremental threading
9484         if folder is in threaded view.
9485         (mh-delete-scan-msgs): Update thread tables if folder is in
9486         threaded view.
9487         (mh-folder-map): Add "F t" as key binding for mh-thread-folder
9489         * mh-comp.el (mh-yank-cur-msg): Bug fix. mh-show-buffer is only
9490         has a meaningful value in the folder buffer.
9492 2002-07-11  Peter S Galbraith  <psg@debian.org>
9494         * mh-comp.el (mh-yank-cur-msg): Run only if mh-show-buffer
9495         actually exists (otherwise a back-traceable error occurred).
9497         * mh-utils.el (mh-find-progs): Run PATH search only when mh-progs,
9498         mh-lib and mh-lib-progs are not all already set.  This allows the
9499         user to set them using a simple setq prior to loading mh-e.  This
9500         is useful for implementation of mh-e on win32.  Note that many
9501         commands still call mh-find-path which also parses the mh_profile
9502         file (that may still fail on win32), so this is still done often.
9503         But it lets us change the mh_profile file and have mh-e see the
9504         changed file without exiting emacs and starting over so I left
9505         that in.
9507 2002-07-04  Satyaki Das  <satyaki@theforce.stanford.edu>
9509         * mh-index.el (mh-index-show): Fixed a bug in mh-index-show which
9510         caused it to lose track of point when called from show buffer.
9512 2002-07-04  Mark D. Baushke  <mdb@gnu.org>
9514         * Makefile: Add more information and common methods to allow both
9515         GNU make and Berkeley make to properly build everything.
9517 2002-07-04  Satyaki Das  <satyaki@theforce.stanford.edu>
9519         * mh-mime.el (mh-push-button): Bug fix for mime display with
9520         mouse. Select show window before executing the mime display
9521         functions.
9523 2002-07-01  Mark D. Baushke  <mdb@gnu.org>
9525         * Makefile: Use a conditional variable assignment operator rather
9526         than ifndef to let Makefile be used by both GNU make and Berkeley
9527         make (or similar versions of make). This does not help Solaris
9528         /usr/ccs/bin/make, but Solaris make has problems with the ifndef
9529         syntax too.
9531 2002-07-01  Satyaki Das  <satyaki@theforce.stanford.edu>
9533         * mh-index.el (mh-index-search): Check for mh-decode-mime before
9534         adding mh-mime-cleanup to kill-buffer-hook.
9536         * mh-mime.el (mm-destroy-parts): Add definition for old emacs.
9538 2002-06-30  Mark D Baushke  <mdb@gnu.org>
9540         * mh-utils.el (mh-update-scan-format): Add documentation string.
9541         (mh-scan-msg-format-regexp): Update the regexp to find %(msg).
9542         (mh-set-cmd-note): When mh-scan-format-file is not t, dynamic
9543         update of mh-cmd-note is wrong. Do not assume that
9544         mh-scan-format-nmh and mh-scan-format-mh can be kept in lock-step
9545         with mh-cmd-note via mh-set-cmd-note. The mh-scan-format function
9546         is now where the updated mh-cmd-note value is put into the scan
9547         format.
9549         * mh-e.el (mh-generate-new-cmd-note): Add documentation string.
9550         (mh-scan-format): Use mh-update-scan-format to get updated copies
9551         of mh-scan-format-nmh and mh-scan-format-mh to avoid format skew.
9552         (mh-get-new-mail): Do not try to adapt mh-cmd-note unless
9553         mh-scan-format-file is equal to t.
9554         (mh-scan-format-nmh): No longer buffer local.
9555         (mh-scan-format-mh): No longer buffer local.
9557 2002-06-30  Satyaki Das  <satyaki@theforce.stanford.edu>
9559         * mh-index.el (mh-index-max-msg-index): New variable to keep track
9560         of max message index among search results. If mh-adaptive-cmd-note
9561         is non-nil this is used to compute the width of the index field.
9562         (mh-index-search): Keep track of max index seen while parsing the
9563         search results and set it if mh-adaptive-cmd-note is non-nil.
9564         (mh-index-find-max-width): New function to find the required width
9565         of the message index field.
9566         (mh-defun-index): Binding buffer local variables is bad, so don't
9567         do that.
9568         (mh-index-show): New argument display-headers-p decides whether
9569         the message is displayed in raw form or not.
9570         (mh-index-header-display): New interactive function bound to ","
9571         which shows the message in raw form.
9572         (mh-index-keymap): Add appropriate bindings for backtab and ",".
9573         (read-from-string): Add ignore-errors around it so that the code
9574         doesn't die when it gets unexpected input.
9576 2002-06-29  Satyaki Das  <satyaki@theforce.stanford.edu>
9578         * mh-index.el (mh-count-windows): This function works around the
9579         lack of the window-list builtin function in emacs20.
9581 2002-06-29  Mark D Baushke  <mdb@gnu.org>
9583         * mh-utils.el (mh-message-number-width): New function to scan
9584         the last message of a folder and return its width.
9585         (mh-adaptive-cmd-note): New variable, if Non-nil indicates that
9586         mh-set-cmd-note should be called with the message width for the
9587         folder.
9588         (mh-cmd-note): Update documentation.
9589         (mh-update-scan-format): Helper function for updating the
9590         mh-scan-format-nmh and mh-scan-format-mh variables.
9591         (mh-scan-msg-overflow-regexp): New variable to help find problem
9592         messages after an inc.
9593         (mh-scan-msg-format-regexp): New variable to find the old message
9594         width in one of the mh-scan-format-nmh or mh-scan-format-mh
9595         variables.
9596         (mh-set-default-cmd-note): Replaced by mh-set-cmd-note.
9597         (mh-set-cmd-note): New function to replace update mh-cmd-note
9598         value.
9600         * mh-e.el (mh-regenerate-headers): If mh-adaptive-cmd-note is
9601         non-nil, use mh-set-cmd-note on empty folder buffers.
9602         (mh-make-folder): Ditto.
9603         (mh-generate-new-cmd-note): New function to adapt the mh-cmd-note
9604         to fit when mh-get-new-mail gets message number truncation.
9605         (mh-get-new-mail): Maybe use mh-generate-new-cmd-note if
9606         mh-adaptive-cmd-note is Non-nil.
9608 2002-06-29  Satyaki Das  <satyaki@theforce.stanford.edu>
9610         * mh-speed.el (mh-speed-view): The display gets confused if the
9611         cursor is in the show buffer when mh-speed-view is called. This is
9612         a fix for that.
9614 2002-06-27  Satyaki Das  <satyaki@theforce.stanford.edu>
9616         * mh-e.el (mh-next-undeleted-msg): Get rid of optional arg
9617         reverse-p. If there are no more undeleted messages the the point
9618         remains at its original position and a message is produced (closes
9619         SF #494304).
9620         (mh-previous-undeleted-msg): Change similar to
9621         mh-next-undeleted-msg.
9622         (mh-next-msg, mh-refile-msg, mh-delete-msg): Backout previous
9623         change.
9624         (mh-folder-map): Bind "S-tab" and "K S-tab" to mh-prev-button.
9626         * mh-utils.el (mh-show-mode-map): Bind "S-tab" and "K S-tab" to
9627         mh-letter-prev-button.
9629         * mh-mime.el (gnus-newsgroup-name): Initialize it to nil, so that
9630         mm-uu-dissect doesn't cause error.
9632 2002-06-27  Mark D Baushke  <mdb@gnu.org>
9634         * mh-utils.el (mh-cmd-note): Make buffer-local. Changes to this
9635         variable should be made via the new mh-set-default-cmd-note
9636         function.
9637         (mh-set-default-cmd-note): New function to setq-default the
9638         mh-cmd-note, mh-scan-format-mh and mh-scan-format-nmh values to
9639         related values.
9641         * mh-e.el (mh-scan-format-mh): Make buffer-local.
9642         (mh-scan-format-nmh): Ditto.
9643         (mh-scan-good-msg-regexp): Use a more general regular expression
9644         so that the width of message numbers, mh-cmd-note, may vary.
9645         (mh-scan-deleted-msg-regexp): Ditto.
9646         (mh-scan-refiled-msg-regexp): Ditto.
9647         (mh-scan-cur-msg-number-regexp): Ditto.
9648         (mh-scan-cur-msg-regexp): Ditto.
9649         (mh-scan-subject-regexp): Ditto.
9651 2002-06-26  Satyaki Das  <satyaki@theforce.stanford.edu>
9653         * mh-speed.el: Speedbar support code.
9655         * Makefile: Add mh-speed.el to MH-E-SRC.
9657         * mh-utils.el (mh-prompt-for-folder): Add speedbar hook if
9658         speedbar is being used.
9660         * mh-funcs.el (mh-kill-folder): Add speedbar hook if speedbar is
9661         being used.
9663         * mh-e.el (speedbar-autoloads): Autoload speedbar initialization
9664         functions so that speedbar can find them.
9666 2002-06-25  Satyaki Das  <satyaki@theforce.stanford.edu>
9668         * mh-index.el (mh-grep-execute-search, mh-grep-next-result): Allow
9669         grep to be used to search mail.
9670         (mh-index-font-lock-keywords): Modified to avoid bug when using
9671         lazy font-lock.
9673         * mh-e.el (mh-delete-msg, mh-refile-msg): Modify so that if no
9674         undeleted (or unrefiled) message exists in the current movement
9675         direction then try to find an undeleted (or unrefiled) message in
9676         the opposite direction instead.
9677         (mh-next-undeleted-msg): Added a new optional argument. If non-nil
9678         search for undeleted message backwards if none exists in the
9679         forward direction.
9680         (mh-previous-undeleted-msg): Added an optional argument. If
9681         non-nil search for undeleted message in the forward direction if
9682         none exists in the backward direction.
9683         (mh-next-msg): Optional argument to change direction if undeleted
9684         messages are not found in the current direction.
9686         * mh-index.el (mh-cmd-note): Use mh-cmd-note instead of hardcoding
9687         the index field size to 4.
9689         * mh-utils.el (mh-show-addr, mh-show-xface): New functions added
9690         to do xface display and goto-addr interface to allow reuse by the
9691         mime display code.
9692         (mh-show-mode): Use mh-show-addr and mh-show-xface. Only add
9693         mh-mime-cleanup to kill-buffer-hook if mime decoding is enabled.
9694         (mh-modify): Use mh-letter-mode instead of mh-show-mode when
9695         editing messages.
9697         * mh-mime.el (mh-mm-inline-message): Arrange for xface and
9698         highlighting to work in forwarded messages.
9700 2002-06-23  Peter S Galbraith  <psg@debian.org>
9702         * mh-comp.el (mh-yank-from-start-of-msg): Add 'attribution' option
9703         to add an attribution line in mh-yank-cur-msg.
9704         (mh-extract-from-attribution-verb): Verb to use for attribution
9705         when a message is yanked by mh-yank-cur-msg.  Provides a method
9706         for setting a different language.
9707         (mh-yank-cur-msg): Add support for 'attribution' option.
9708         (mh-extract-from-attribution): Function to get the attribution
9709         line, or the sender from the From: line in the current show buffer.
9711 2002-06-20  Satyaki Das  <satyaki@theforce.stanford.edu>
9713         * mh-index.el (mh-index-show): mh-display-msg was not being called
9714         in the show buffer. This causes weird results on some mime messages.
9716         * mh-mime.el (gnus-newsgroup-charset): Defvar to avoid error in
9717         pgp messages if gnus hasn't been used yet.
9719         * mh-comp.el (mh-letter-mode-map): Typo fix.
9721 2002-06-19  Satyaki Das  <satyaki@theforce.stanford.edu>
9723         * mh-mime.el (mh-mml-secure-message-encrypt-pgpmime): Typo fix.
9724         (compiler-warnings): Add autoloads to remove compiler warnings.
9726         * mh-index.el (autoload-fixes): Fix autoload forms.
9728 2002-06-18  Satyaki Das  <satyaki@theforce.stanford.edu>
9730         * mh-comp.el (mh-letter-mode-map): Change binding of "\C-c\C-ma"
9731         to mh-compose-insertion. Remove duplicate binding for "C-c\C-mf".
9732         (compiler-warnings): Add defvar to remove compiler-warning.
9734 2002-06-18  Peter S Galbraith  <psg@debian.org>
9736         * mh-comp.el (mh-letter-menu): Conditionalize GPG function on
9737         mh-gnus-pgp-support-p.
9739         * mh-mime.el (mh-mml-forward-message): s/subseq/substring/.
9740         (mh-compose-forward): cut&paste typo: s/messages/message/.
9741         (mml-minibuffer-read-file): autoload added.
9742         (mml-minibuffer-read-description): autoload added.
9743         (mml-insert-empty-tag): autoload added.
9744         (mh-mml-secure-message-sign-pgpmime): Check mh-gnus-pgp-support-p.
9745         (mh-mml-secure-message-encrypt-pgpmime): Check mh-gnus-pgp-support-p.
9747 2002-06-17  Peter S Galbraith  <psg@debian.org>
9749         * mh-utils.el (mh-show-use-xface): Check for availability of
9750         `uncompface' executable on system.
9752         * mh-mime.el (mh-compose-forward): New front end for both
9753         mh-mml-forward-message and mh-mhn-compose-forw.
9754         (mh-compose-insertion): New front end for both mh-mml-attach-file
9755         and mh-mhn-compose-insertion.
9756         (mh-mml-to-mime): New function. Compose mime message from mml
9757         directives.
9758         (mh-mml-forward-message): New function. Forward a message as
9759         attachment.
9760         (mh-mml-attach-file): New function.  Attach a file to the outgoing
9761         MIME message.
9762         (mh-mml-compose-insert-p): New variable. Buffer-local variable to
9763         know whether MIME insertion was done.  Triggers an automatic call
9764         to `mh-mml-to-mime' in `mh-send-letter'.
9765         (mh-mml-secure-message-sign-pgpmime): New function.
9766         Front end to mml-secure-message-sign-pgpmime.
9767         (mh-mml-secure-message-encrypt-pgpmime):  New function.
9768         Front end to mml-secure-message-encrypt-pgpmime.
9770         * mh-comp.el (mh-send-letter): automatic call to `mh-mml-to-mime'
9771         if mh-mml-compose-insert-p is set.
9772         (mh-letter-mode-map): Add keys for new mh-mime functions above.
9773         * mh-comp.el:  Added autoloads for new mh-mime functions above.
9775 2002-06-17  Peter S Galbraith  <psg@debian.org>
9777         * mh-utils.el (mh-show-use-xface): new defcustom to determine
9778         whether to call external package x-face to display the x-face.
9779         (mh-invisible-headers-show-xface): variable now defaults to value
9780         of mh-show-use-xface.
9781         (mh-show-mode): When mh-show-use-xface is t, invoke
9782         external package x-face to display the x-face.
9784 2002-06-15  Satyaki Das  <satyaki@theforce.stanford.edu>
9786         * mh-e.el (mh-prev-button): New interactive function which moves
9787         point to the previous mime button in the show buffer.
9788         (mh-folder-mode-map): Bind M-TAB and K M-TAB to mh-prev-button.
9790         * mh-utils.el (mh-show-mode-map): Bind M-TAB and K M-TAB to call
9791         mh-letter-prev-button (which is analogous to mh-prev-button).
9792         (mh-gnus-pgp-support-p): New global variable to replace the
9793         variable mh-recent-gnus-p. The name better describes what it is
9794         used for.
9796         * mh-mime.el (mh-mime-display-part, mh-mime-display-single): Use
9797         mh-gnus-pgp-support-p instead of mh-recent-gnus-p.
9799 2002-06-12  Satyaki Das  <satyaki@theforce.stanford.edu>
9801         * mh-mime.el (mh-display-buttons-for-inline-parts): New
9802         customizable variable. When non-nil inline parts have are
9803         displayed with a button (that is initially expanded).
9804         (mh-maybe-insert-newline): The function has been removed.
9805         (mh-mime-display-single): Add code to display buttons for inline
9806         parts. Reduce the insertion of extra newlines between inline parts
9807         and also for pgp signature parts.
9808         (mh-mm-display-part): The function has been rewritten and cleaned
9809         up. There was a bug which could change the show buffer if the user
9810         pressed C-g while a mime part was being displayed has been fixed.
9811         (mh-press-button, mh-push-button): Use unwind-protect to make sure
9812         that set-buffer-modified-p is always called after mime display.
9813         (mh-mime-inline-part): The behavior of the function has been
9814         changed so that it toggles the display of the raw bytes.
9815         (mh-mime-display-security): Remove the display of too many
9816         newlines.
9817         (documentation): Remove most check-doc warnings.
9819         * mh-comp.el (mh-filter-out-non-text): Updated since whitespace
9820         added around mime buttons have changed.
9822 2002-06-10  Satyaki Das  <satyaki@theforce.stanford.edu>
9824         * mh-index.el (mh-index-last-search, mh-index-search): The default
9825         prompt in mh-index-search has been removed since currently there
9826         is no good way of reading "+" with mh-prompt-for-folder.
9827         (mh-index-folder-mode, mh-index-show-mode): New major modes
9828         derived from mh-folder-mode and mh-show-mode respectively. They
9829         use a restricted keymap compared to the parent modes.
9830         (mh-index-folder-face): New customizable face to display folder
9831         names in the index buffer.
9832         (documentation): Change two spaces after period back to one.
9834 2002-06-08  Satyaki Das  <satyaki@theforce.stanford.edu>
9836         * mh-e.el (mh-folder-toggle-mime-part): New interactive function
9837         to control mime display from folder buffer.
9838         (mh-folder-inline-mime-part): New interactive function to inline
9839         raw mime part from folder buffer.
9840         (mh-folder-save-mime-part): New interactive function to save mime
9841         part from folder buffer.
9842         (mh-folder-mode-map): Add keybindings for "K v", "K o", "K i" and
9843         "K \t" to mh-folder-mode-map.
9844         (mh-goto-next-button): Modified to allow searching for next button
9845         that satisfies some condition.
9846         (mh-folder-mime-action): Support function for
9847         mh-folder-save-mime-part, mh-folder-inline-mime-part and
9848         mh-folder-toggle-mime-part.
9850         * mh-utils.el (mh-show-mode-map): Modify keymap to add appropriate
9851         bindings for "K v", "K o", "K i" and "K \t".
9853         * mh-index.el (documentation): Fix docs according to checkdoc
9854         format.
9856 2002-06-07  Satyaki Das  <satyaki@theforce.stanford.edu>
9858         * mh-seq.el, mh-funcs.el (Compiler): Remove (require 'view) and
9859         instead add defvar for view-exit-action.
9861 2002-06-06  Satyaki Das  <satyaki@theforce.stanford.edu>
9863         * mh-comp.el (mh-insert-x-face): If transient-mark-mode is enabled
9864         the call to mark returns error. So avoid using mark.
9866         * mh-index.el: Support for new interactive function
9867         mh-index-search.
9869         * mh-e.el (mh-next-button, mh-goto-next-button): Refactor
9870         mh-next-button so that the code may be reused by mh-index.el.
9871         (mh-folder-map): Add key "F i" to call mh-index-search.
9873         * mh-utils.el (mh-recent-gnus-p): Fix documentation.
9874         (mh-msg-folder, mh-display-msg): The new function mh-msg-folder
9875         maps a MH folder name to the buffer displaying it. In normal
9876         operation the two names are identical but they are different in a
9877         folder buffer generated by index search. Minor modification to
9878         mh-display-msg to use mh-msg-folder to enable mh-index-search to
9879         reuse code.
9880         (mh-show-mode-map): Add key "F i" to call mh-index-search.
9882         * Makefile: Add mh-index.el
9884 2002-06-05  Peter S Galbraith  <psg@debian.org>
9886         * mh-e.el (mh-folder-message-menu): Add an entry for mh-modify.
9888 2002-05-31  Satyaki Das  <satyaki@theforce.stanford.edu>
9890         * mh-utils.el (mh-decode-quoted-printable): Only decode if the
9891         whole message is encoded. So restrict the search for the
9892         content-transfer-encoding header to the headers of the message
9893         itself.
9895         * mh-mime.el (mh-mime-display-alternative): Make sure that point
9896         is moved after mm-display-part is called.
9898 2002-05-29  Satyaki Das  <satyaki@theforce.stanford.edu>
9900         * mh-mime.el (mh-mime-display-single): Fix the logic that
9901         determines when an attachment is buttonized. For inline parts that
9902         can't be displayed a button is now created.
9904 2002-05-29  Satyaki Das  <satyaki@theforce.stanford.edu>
9906         * mh-e.el (mh-regenerate-headers): Fix an error in which the
9907         mh-mode-line-annotation was not being set properly.
9909         * mh-mime.el, mh-utils.el (compilation): Macros mh-require and
9910         mh-autoload are used to make sure that emacs20 doesn't croak when
9911         it tries to load non-existent mm-* files.
9912         (mh-decode-mime): Make it default to nil for Emacs major version
9913         below 21.
9915 2002-05-28  Satyaki Das  <satyaki@theforce.stanford.edu>
9917         * mh-e.el (mh-regenerate-headers): Generalize the function to
9918         handle multiple ranges.
9920 2002-05-25  Satyaki Das  <satyaki@theforce.stanford.edu>
9922         * compilation: Reduce use of eval-when-compile so that load-path
9923         is not changed if lisp files are loaded without compilation. Small
9924         changes were made to Makefile, mh-comp.el mh-e.el, mh-funcs.el,
9925         mh-seq.el, mh-utils.el
9927         * mh-e.el (mh-next-button, mh-folder-mode-map): New interactive
9928         function to advance point to next MIME button. It is bound to TAB.
9930         * mh-utils.el (mh-letter-next-button, mh-show-mode-map): New
9931         interactive function mh-letter-next-button has been added to
9932         advance point to the next MIME button. It is bound to TAB.
9934         * mh-mime.el (comments): Added some comments.
9936 2002-05-24  Satyaki Das  <satyaki@theforce.stanford.edu>
9938         * mh-mime.el (compilation): Replace (eval-when-compile ...) by
9939         (eval-when (compile) ...) to remove a bug when mh-e is loaded
9940         without compilation.
9942 2002-05-23  Satyaki Das  <satyaki@theforce.stanford.edu>
9944         * mh-comp.el (compilation): Some code was rearranged to avoid
9945         compiler warnings.
9947         * mh-e.el (compilation): Code rearrangement and extra autoloads to
9948         remove compiler warnings
9949         (mh-quit): Add call to mh-destroy-postponed-handles to remove
9950         handles that are associated with external viewers. Also fixed a
9951         bug that I accidentally introduced by adding an extra line when
9952         cut and pasting my changes.
9954         * mh-func.el (compilation): Code rearrangement to remove compiler
9955         warnings.
9957         * mh-mime.el (compilation): Code rearrangement to remove compiler
9958         warnings.
9959         (mh-defun-compat): New macro to define to useful functions that
9960         aren't present present in old Gnus.
9961         (mh-destroy-postponed-handles): New function to cleanup handles
9962         that are associated with external viewers.
9963         (mh-handle-set-external-undisplayer): New function to replace
9964         mm-handle-set-external-undisplayer. It associates handles for
9965         external viewers with the folder buffer. These are released when
9966         the user quits the folder.
9967         (mh-mime-display, mh-press-button, mh-push-button): Hook in
9968         mh-handle-set-external-undisplayer.
9969         (mh-maybe-insert-newline): New function to avoid inserting too
9970         many newlines between mime parts.
9971         (mh-mm-display-part): Workaround for Gnus bug which causes new
9972         lines to be inserted when images are shown inline.
9973         (mh-mime-display-security): Cut down on newlines inserted.
9975         * mh-pick.el (compilation): Code rearrangement to remove compiler
9976         warnings.
9978         * mh-seq.el (compilation): Code rearrangement to remove compiler
9979         warnings.
9980         (comments): Remove @SD from comments.
9982         * mh-utils.el (compilation): Slight code rearrangement.
9983         (mh-defun-show-buffer): Fix documentation so that the first line
9984         is not too long as was the case earlier. Use
9985         mh-previous-window-config to remember where the cursor should
9986         return functions like mh-reply.
9987         (mh-display-msg): Initialize handles data-structure for the folder
9988         buffer so that postponed handles can be added to it.
9989         (mh-add-msgs-to-seq): Always keep messages in the sequences
9990         sorted. This removes some unexpected behavior when working with
9991         sequences that go out of sync with the corresponding MH sequences.
9992         (mh-canonicalize-sequence): New function to sort and remove
9993         duplicates from mh-e sequence.
9995 2002-05-21  Satyaki Das  <satyaki@theforce.stanford.edu>
9997         * mh-utils.el (require): Load mm-decode.el here so that
9998         mm-inline-media-tests is properly initialized.
10000         * mh-comp.el (mh-yank-cur-msg): Don't try to remove the displayed
10001         mime parts when yanking the message. This also fixes the problem
10002         of regions not being respected during the yank.
10004 2002-05-20  Satyaki Das  <satyaki@theforce.stanford.edu>
10006         * mh-utils.el (compiler-warnings): Some code was rearranged to
10007         remove all compiler warnings.
10008         (mh-decode-mime): New defcustom to control whether
10009         mime attachments are shown using Gnus.
10010         (mh-globals-hash): New global variable which maps a given buffer
10011         to the corresponding mime data structures.
10012         (mh-recent-gnus-p): New global variable which checks if Gnus is
10013         recent enough so that PGP/GPG encrypted messages can be handled.
10014         (mh-mm-inline-media-tests): Tests to determine whether a mime part
10015         can be shown inline.
10016         (mh-gnus-article-highlight-citation): Shadow the Gnus function,
10017         gnus-article-add-button before gnus-article-highlight-citation is
10018         called. This prevents the insertion of useless buttons in the
10019         message.
10020         (mh-show-mode): Don't set font-lock-support-mode to nil. Modify
10021         kill-buffer-hook to call mh-mime-cleanup.
10022         (mh-modify): Only the edit buffer is shown.
10023         (mh-display-msg): Add call to mh-mime-display, mh-display-smileys,
10024         mh-display-emphasis when mh-decode-mime is non-nil.
10026         * mh-mime.el (mh-buffer-data): New structure to keep track of
10027         per-buffer mime information.
10028         (compiler-warnings): Some code was rearranged to get rid of all
10029         compiler warnings.
10030         (mh-graphical-smileys-p): New defcustom which controls whether
10031         graphical smileys are shown.
10032         (mh-graphical-emphasis-p): New defcustom for graphical emphasis.
10033         (mh-max-inline-image-width, mh-max-inline-image-height): New
10034         defcustoms for inlining image.
10035         (gnus-local-map-property, mm-merge-handles): Copy utility
10036         functions for use with version of Gnus that ships with Emacs21.1.
10037         (mh-mime-cleanup): New function to free mime data-structures.
10038         (mh-add-missing-mime-version-header): New function to add missing
10039         Mime-Version header if a Content-Type header exists.
10040         (mh-display-smileys): New function to show graphical smileys.
10041         (mh-display-emphasis): New function to show graphical emphasis.
10042         (new-globals): New variables mh-mime-button-* and
10043         mh-mime-security-* were added to control mime buttons.
10044         (mh-mime-display): New function to display mime messages. The
10045         functions mh-mime-display-part, mh-mime-display-alternative,
10046         mh-mime-display-mixed, mh-mime-part-index, mh-small-image-p,
10047         mh-mime-display-single, mh-insert-mime-button, mh-mm-display-part,
10048         mh-press-button, mh-push-button, mh-mime-save-part,
10049         mh-mime-inline-part, mh-widget-press-button, mh-mm-inline-message,
10050         mh-mime-display-security, mh-mime-security-show-details,
10051         mh-mime-security-press-button and mh-insert-mime-security-button
10052         were added to support mh-mime-display.
10054         * mh-e.el (mh-header-display): Bind mh-decode-mime to nil when
10055         mh-show-msg is called, so that mime isn't decoded when headers are
10056         displayed.
10057         (mh-quit): The show buffer is killed instead of invalidating and
10058         burying it.
10060         * mh-comp.el (mh-yank-cur-msg): Filter out the mime buttons from
10061         the yanked message.
10062         (mh-filter-out-non-text): New function to filter out attachments
10063         from message being yanked.
10065 2002-05-20  Bill Wohler <Bill.Wohler@openwave.com>
10067         * mh-utils.el (mh-invisible-headers-show-xface): First sentence of
10068         docstring was not entirely on first line so was truncated in
10069         customize and help buffers. Reworded so first sentence could fit
10070         within 80 columns per checkdoc recommendation.
10071         (mh-defun-show-buffer): Reworded per checkdoc recommendations.
10072         Removed @SD while I was in there.
10074 2002-05-18  Satyaki Das  <satyaki@theforce.stanford.edu>
10076         * mh-seq.el (mh-narrow-to-seq): This function now removes the
10077         current message notation in the folder. Otherwise, two current
10078         message notations may be present after mh-widen is called. Also
10079         mh-copy-seq-to-eob is called instead of mh-copy-seq-to-point since
10080         the latter has a bug.
10081         (mh-copy-seq-to-point): This function has a tricky problem. It
10082         calls mh-map-to-seq-msgs which uses mh-goto-msg. mh-goto-msg
10083         assumes that the folder is sorted (since it uses binary
10084         search). The assumption isn't true, so it may not copy all the
10085         messages. Since this function is not used any more it has been
10086         removed.
10087         (mh-copy-seq-to-eob): This function is a specialized (and
10088         hopefully correct) replacement for mh-copy-seq-to-point.
10090 2002-05-17  Satyaki Das  <satyaki@theforce.stanford.edu>
10092         * mh-utils.el (mh-gnus-article-highlight-citation): Workaround for
10093         problem caused by low value of recursive-load-depth-limit in
10094         Emacs21.1 and CVS version of Gnus.
10095         (mh-show-mode-map): New keymap variable to facilitate use of
10096         summary commands from the show buffer.
10097         (mh-show-folder-buffer): New local variable which keeps track of
10098         the folder-buffer corresponding to the message being shown.
10099         (mh-defun-show-buffer): New macro to convert interactive functions
10100         callable in the summary buffer to interactive functions callable
10101         in the show buffer.
10102         (mh-show-mode): Make buffer read-only and use mh-show-mode-map as
10103         keymap (closes SF #527946).
10104         (mh-modify): New interactive function to edit a message in-place.
10106         * mh-e.el (mh-goto-cur-msg): Add an optional argument,
10107         minimal-changes-p. If non-nil, the function will just change
10108         the point to current message and do not change folder display.
10109         (mh-folder-mode-map): Make "M" call mh-modify.
10111 2002-05-07  Peter S Galbraith  <psg@debian.org>
10113         * mh-utils.el (mh-invisible-headers-show-xface): New defcustom
10114         variable. If non-nil, the X-Face header line will be excluded from
10115         the variable `mh-invisible-headers'.  Set this when using a
10116         package such as x-face-el to display X-Face icons in mh-show-mode.
10117         This variable's setting will eventually be set automatically when
10118         mh-e does its own X-Face decoding (or this variable will be replaced
10119         by one telling mh-e to decode the X-Face).  We may not ship the
10120         next release with this variable.
10122 2002-05-07  Peter S Galbraith  <psg@debian.org>
10124         * mh-comp.el (mh-x-face-file): New defcustom variable. File name
10125         containing the encoded X-Face string to insert in outgoing mail.
10126         (mh-insert-x-face): New function.  Appends an X-Face field to the
10127         header, but only if it doesn't already exist and if 'mh-x-face-file'
10128         is non-nil and points to an existing file.
10129         (mh-send-letter): Invoke mh-insert-x-face.
10131 2002-04-29  Mike Kupfer  <m.kupfer@acm.org>
10133         * mh-e.el (mh-delete-msg, mh-refile-msg, mh-undo): Check
10134         whether XEmacs region is actually active (needed at least for 21.1).
10135         [Patch committed by psg]
10137 2002-04-29  Mike Kupfer  <m.kupfer@acm.org>
10139         * mh-utils.el (mh-prompt-for-folder): Remove "default" argument
10140         from completing-read as XEmacs-21.1 doesn't have it (21.4 does
10141         however) and using the argument adds no functionality.
10142         [Patch committed by psg]
10144 2002-04-11  Peter S Galbraith  <psg@debian.org>
10146         * mh-e.el (mh-delete-msg, mh-refile-msg, mh-undo): Add support for
10147         XEmacs to act on selected region when active.
10149 2002-04-10  Peter S Galbraith  <psg@debian.org>
10151         * mh-e.el (mh-delete-msg, mh-refile-msg, mh-undo): XEmacs fix; Add
10152         check to see if mark-active is bound, because Mandrake Linux include
10153         XEmacs initialization code that binds transient-mark-mode.  This
10154         fix gets around a problem in Mandrake only.  It wasn't a problem
10155         on XEmacs generally.  Fixes SF #541915.
10157 2002-04-08  Bill Wohler  <wohler@newt.com>
10159         Released mh-e version 6.1.
10161         * mh-e.el (mh-folder-unseen-seq-name): Use "mhparam -component
10162         Unseen-Sequence" command and "Unseen-Sequence: \\(.*\\)$" regexp
10163         to increase robustness.
10164         (mh-folder-unseen-seq-list): Use `expand-file-name' as
10165         `mh-expand-file-name' isn't needed and the former saves function
10166         call.
10167         (Version, mh-version): Updated for release 6.1.
10169 2002-04-08  Peter S Galbraith  <psg@debian.org>
10171         * mh-e.el (mh-folder-unseen-seq-list): Specify mh-progs path in
10172         call to mark command.  Fixes a bug in which unseen messages
10173         weren't highlighted if "mark" wasn't in the path.
10175 2002-04-07  Bill Wohler  <wohler@newt.com>
10177         * MH-E-NEWS: Updated for release 6.1.
10179         * README: Updated for release 6.1. Updated verbiage about reading
10180         MH-E-NEWS.
10182         * mh-comp.el, mh-e.el, mh-funcs.el, mh-mime.el, mh-seq.el,
10183         mh-utils.el, mh-xemacs-compat.el: Updated copyright in files
10184         modified this year.
10186         * mh-xemacs-compat.el: Put Author field back in, but set to FSF.
10188         * mh-comp.el, mh-funcs.el, mh-mime.el, mh-seq.el,
10189         mh-utils.el: Fixed all checkdoc errors, except for no
10190         documentation, and documentation in comments. Also removed the-
10191         prefix from certain local variables.
10193         * mh-e.el: Fixed all checkdoc errors, except for no documentation,
10194         and documentation in comments. Also removed the- prefix from
10195         certain local variables.
10196         (mh-folder-unseen-seq-name): Refactored to make default sequence
10197         name more explicit and to handle undefined Unseen-Sequence MH
10198         profile entry better.
10200 2002-04-02  Peter S Galbraith  <psg@debian.org>
10202         * mh-e.el: 'defvar mh-folder-unseen-seq-name' called a function to
10203         set it's value, and this happens also on byte-compilation (where
10204         it can fail if the user's MH environment is not setup correctly).
10205         I now set the value of mh-folder-unseen-seq-name at runtime when I
10206         first need it.  This should fix Debian bugs
10207         http://bugs.debian.org/140232 and http://bugs.debian.org/140817
10209 2002-03-25  Peter S Galbraith  <psg@debian.org>
10211         * mh-utils.el: remove "(require 'mh-e)" since mh-utils.el should
10212         be at the bottom of the dependency tree.
10213         * mh-e.el (mh-folder-unseen-seq-name): Make sure mh-progs is set
10214         and use it as path to mhparam command in call-process.
10216 2002-01-23  Peter S Galbraith  <psg@debian.org>
10218         * mh-e.el (mh-folder-font-lock-keywords): Add call to
10219         mh-folder-font-lock-unseen to fontify unseen messages in bold.
10220         (mh-folder-unseen-seq-name): Provide name of unseen sequence from
10221         mhparam.  Used as default for variable of same name.
10222         (mh-folder-unseen-seq-list): Returns a list of unseen messages
10223         numbers for current folder.
10224         (mh-folder-unseen-seq-cache): Cache variable to hold list of
10225         unseen message numbers while font-lock iterates.  This variable is
10226         buffer-local.
10227         (mh-folder-font-lock-unseen): Returns unseen message lines to
10228         font-lock one by one.
10230 2002-01-15  Peter S Galbraith  <psg@debian.org>
10232         * mh-comp.el (mh-insert-prefix-string): Wrap a
10233         "(let ((zmacs-regions nil))" around (mark) so it works in XEmacs.
10234         Bug reported and fix suggested by Will Partain <partain@dcs.gla.ac.uk>
10235         Indeed, this is how it appears in XEmacs-21's mh-comp.el.
10237 2001-12-16  Jeffrey C Honig  <jch@honig.net>
10239         * mh-comp.el (mh-forward): Move the assignment to `fwd-msg-file'
10240         to before the assignment to `draft' as the later changes buffers
10241         and invalidates `mh-seq-list' (which is used in a function called
10242         by (mh-seq-to-msgs)).  Resolves SF #489448.
10244         * mh-utils.el: Add defcustoms for `mh-temp-folders-buffer' and
10245         `mh-temp-sequences-buffer'.
10247         * mh-e.el (mh-quit): If they exist, kill 'mh-temp-buffer,
10248         'mh-temp-folders-buffer and 'mh-temp-sequences-buffer when
10249         quitting.
10251         * mh-funcs.el (mh-list-folders): Use `mh-temp-folders-buffer'
10252         (a defcustom initialized to "*Folders*") for folder listing.  Put
10253         into view mode and set it up to kill the buffer when exiting view
10254         mode.
10256         * mh-seq.el (mh-list-sequences): Use `mh-temp-sequences-buffer'
10257         (a defcustom initialized to "*Sequences") for sequences listing.
10258         Put into view mode and set it up to kill the buffer when exiting
10259         view mode.
10261 2001-12-16  Bill Wohler  <wohler@newt.com>
10263         Released mh-e version 6.0.
10265         * MH-E-NEWS: Be a little more specific about incompatible changes.
10266         Added info about outdated manual.
10267         Removed variables in mh-scan regexp table that did not exist in
10268         5.0.2.
10269         Added helpful documentation about finding relevant variables
10270         containing regexps to mh-scan-format-file's description.
10272         * mh-e.el (mh-scan-format-file): Added information about getting a
10273         list of regexp variables that you'll need to change if you
10274         customize your scan's output.
10275         (mh-folder-mode): Added documentation about `mh-scan-format-file'
10276         for those users who modify their scan formats.
10278         * README: New file. Describes packages and provides simple
10279         installation instructions.
10281         * Makefile (clean, dist, install-emacs): Replaced $(RM) with rm
10282         -rf (closes SF #488661).
10284 2001-12-14  Bill Wohler  <wohler@newt.com>
10286         Released mh-e version 5.0.93.
10288         * Makefile (MH-E-SRC): Added mh-xemacs-compat.el.
10289         (MH-E-IMG): Added .pbm images for all. Removed mail_ prefix from
10290         all.
10291         (MH-E-IMG2): New variable to hold images in mail sub-directory.
10292         (dist): Updated target to make mail sub-directory and copy
10293         MH-E-IMG2 images there.
10295         * mh-xemacs-compat.el: Modified docs per GNU coding conventions.
10297         * mh-e.el: Reorganized variables having to do with the scan line.
10298         Moved some random variables that were interspersed out of the
10299         middle. Moved `mh-scan-format-file' first and let the variables
10300         flow from there.
10302         As the number of variables increases, it is becoming important to
10303         organize the mh-e namespace. Several variables having to do with
10304         the format of scan lines were renamed, as follows:
10305         (mh-good-msg-regexp): Renamed to mh-scan-good-msg-regexp.
10306         (mh-deleted-msg-regexp): Renamed to mh-scan-deleted-msg-regexp.
10307         (mh-refiled-msg-regexp): Renamed to mh-scan-refiled-msg-regexp.
10308         (mh-valid-scan-line): Renamed to mh-scan-valid-regexp.
10309         (mh-cur-msg-number-regexp): Renamed to mh-scan-cur-msg-number-regexp.
10310         (mh-cur-msg-line-regexp): Renamed to mh-scan-cur-msg-regexp.
10311         (mh-scan-rcpt-addr-regexp): Renamed to mh-scan-rcpt-regexp.
10312         (mh-scan.font-lock-regexp): Renamed to mh-scan-format-regexp.
10313         (mh-folder-scan-font-lock-face): Renamed to
10314         mh-folder-scan-format-face.
10315         (mh-folder-cur-msg-line-face): Renamed to mh-folder-cur-msg-face).
10317 2001-12-13  Bill Wohler  <wohler@newt.com>
10319         * mh-utils.el (mh-msg-number-regexp): Renamed to
10320         mh-scan-msg-number-regexp.
10321         (mh-msg-search-regexp): Renamed to mh-scan-msg-search-regexp.
10323         * Corrected typos, quoted variables in doc strings, and made minor
10324         wording changes in docs.
10326 2001-12-13  Peter S Galbraith  <psg@debian.org>
10328         * mh-xemacs-compat.el: defalias 'match-string-no-properties to
10329         'match-string for XEmacs.  I've seen a better function for this
10330         that actually removes text properties, but this will do for now.
10332         * mh-utils.el (mh-decode-quoted-printable): deactivate-mark not
10333         bound in XEmacs.
10335         * mh-xemacs-compat.el: GNU Emacs Functions needed by XEmacs.
10336         New file.
10337         * mh-e.el: (require 'mh-xemacs-compat) when running XEmacs.
10339 2001-12-12  Peter S Galbraith  <psg@debian.org>
10341         * mh-comp.el (mh-send-letter): function local-variable-p needs two
10342         arguments in XEmacs.
10343         (mh-send-letter): sendmail-coding-system not bound in XEmacs.
10344         (mh-send-letter): default-buffer-file-coding-system not bound in
10345         Xemacs.
10347         * mh-e.el (mh-delete-msg, mh-refile-msg, mh-undo):
10348         transient-mark-mode not bound in XEmacs.  The feature of
10349         operations made on all messages in the selected range when
10350         transient-mark-mode is on doesn't work in XEmacs.
10352         * mh-e.el, mh-utils.el: Conditionalize calls to
10353         'add-to-list 'facemenu-unlisted-faces for XEmacs.
10355 2001-12-11  Jeffrey C Honig  <jch@honig.net>
10357         * mh-e.el (mh-scan-format): Add `mh-scan-format-file' variable to
10358         specify the scan format string or file to use.  Define formats for
10359         MH and nmh that are compatible with the standard format, but
10360         provide hints for font-lock.  Define (mh-scan-format) for use by
10361         (mh-regenerate-headers) and (mh-get-new-mail) to specify the args
10362         necessary to inform the scan program which scan format string or
10363         file to use.
10365 2001-12-07  Peter S Galbraith  <psg@debian.org>
10367         * mh-e.el (scan.font-lock): New format file documented in comments.
10368         (mh-scan.font-lock-regexp): Adapted to new format.
10369         (mh-folder-font-lock-keywords): Use new format.
10371         * mh-e.el (page-down.xpm): Icon renamed from nextpage.
10373         * mh-utils.el (mh-decode-quoted-printable): Bug fix.  Better check
10374         on what actually is a quoted-printable attachment.
10376 2001-12-06  Eric Ding  <ericding@alum.mit.edu>
10378         * mh-mime.el (mh-mhn-compose-insertion, mh-mhn-compose-anon-ftp):
10379         require mailcap.el here rather than using autoload at top of
10380         mh-mime.
10381         (mh-file-mime-type): get rid of unused variables (why were they
10382         there to begin with?)
10384 2001-12-06  Peter S Galbraith  <psg@debian.org>
10386         * mh-e.el (mh-cur-msg-number-regexp, mh-cur-msg-line-regexp):
10387         mh-cur-scan-msg-regexp splits into these two variables.
10388         The whole-line fontification is disabled, but easily restored by a
10389         user (although it could be a defcustom with choices DISABLED or
10390         the correct regexp?)
10391         (mh-folder-cur-msg-line-face): mh-folder-current-msg-face renamed
10392         to this.
10393         (mh-folder-cur-msg-number-face): mh-folder-current-face renamed to
10394         this.
10396         * cabinet.xpm: Revert to rescan icon name.
10397         * mh-e.el (mh-folder-tool-bar-map): s/cabinet/rescan/
10399         * mh-e.el (mh-folder-font-lock-keywords): Reorder and tweak such
10400         that current message line highlight doesn't mess up other highlights.
10402 2001-12-05  Eric Ding  <ericding@alum.mit.edu>
10404         * mh-utils.el (mh-show-from-face): Change mh-show-from-face to
10405         cyan on dark backgrounds; through a series of changes, it had
10406         become the same color as mh-show-subject-face!
10408 2001-12-05  Bill Wohler  <Bill.Wohler@openwave.com>
10410         * mh-e.el, mh-utils.el: Fixed typos in face definitions, and made
10411         a couple of small doc string tweaks while I was in there. Peter,
10412         if you don't agree, let me know and I'll back them out. I thought
10413         the "mh-e" in the text was redundant since the variables start
10414         with "mh"; I was also thinking ahead to how the documentation may
10415         read.
10417 2001-12-05  Peter S Galbraith  <psg@debian.org>
10419         * mh-e.el (mh-cur-scan-msg-regexp): Match 0 is the whole line.
10420         (mh-folder-current-msg-face): New face with only a background
10421         settings, used in font-lock for the current message.
10422         (mh-folder-font-lock-keywords): Use mh-folder-current-msg-face for
10423         mh-cur-scan-msg-regexp.
10425         * mh-utils.el (mh-show-from-face): Use red3 instead of red for
10426         light backgrounds.  It's not as bright on the eyes.
10427         (mh-show-subject-face): copy from mh-folder-subject-face instead.
10428         Makes the look consistent with folder-mode.
10430         * mh-e.el (mh-folder-subject-face): Moved to mh-utils since we
10431         need it to copy to mh-show-subject-face.
10433 2001-12-05  Bill Wohler  <wohler@newt.com>
10435         * mh-e.el (mh-folder-mode-map): Moved `mh-extract-rejected-mail'
10436         from "a" to "E". Better mnemonic, nicer to folks used to using a
10437         for `mh-reply'.
10439 2001-12-04  Bill Wohler  <wohler@newt.com>
10441         * mh-e.el (mh-folder-map): Added "S" for `mh-sort-folder'.
10443 2001-12-04  Peter S Galbraith  <psg@debian.org>
10445         * mh-e.el (mh-folder-subject-face et al.): Yet another attempt at
10446         colours for folder-mode.  Still themed, but fewer and darker
10447         colours (Blame Eric this time!).  I'll get to underlining tomorrow
10448         night.
10450         * mh-e.el (mh-folder-tool-bar-map): Renamed all icons so they
10451         don't have the word mail in them.  Also generated a pbm format of
10452         each icon for users without XPM support conpiled into Emacs.
10454 2001-12-04  Eric Ding  <ericding@alum.mit.edu>
10456         * mh-utils.el (mh-show-font-lock-keywords): Use
10457         mh-header-subject-font-lock instead of regexp for subject headers,
10458         which may go multiple lines.
10459         (mh-header-subject-font-lock): New function.
10460         Fix typos (hightlight -> highlight).
10462 2001-12-04  Eric Ding  <ericding@alum.mit.edu>
10464         * mh-e.el: changes to face colors on dark backgrounds.
10465         (mh-folder-followup-face): change to LightGoldenRod.
10466         (mh-folder-date-face): change to snow3.
10467         (mh-folder-msg-number-face): change to snow4.
10469 2001-12-04  Bill Wohler  <wohler@newt.com>
10471         Released mh-e version 5.0.92.
10473         * mh-utils.el (gnus-cite-face-list)
10474         (mh-gnus-article-highlight-citation): Don't autoload. Revert to
10475         requiring in `mh-gnus-article-highlight-citation' as before. With
10476         the autoloads, if you ran mh-e before gnus, you'd get an undefined
10477         gnus variable when viewing an article in gnus. Go figure.
10479 2001-12-03  Bill Wohler  <wohler@newt.com>
10481         Released mh-e version 5.0.91.
10483         * MH-E-NEWS: Removed info about bumping up `max-specpdl-size' now
10484         that workaround has been implemented.
10486         * Makefile (MH-E-OBJ): New variable to hold .elc files.
10487         (all): Just compile.
10488         (clean): New target that blows away MH-E-OBJ.
10489         (dist): Added $(MH-E-OBJ) to tarball.
10492         Attempt to quiet compilation errors to a dull roar.
10494         * mh-e.el: Require easymenu, added autoload of info.
10495         (mh-smail, mh-smail-other-window): Comment says these were needed
10496         by Emacs 18. Out!
10498         * mh-utils.el: Don't require sendmail, but require mh-e.
10499         Moved autoloads to top of file, and autoload gnus-cite and
10500         sendmail too.
10502         * mh-pick.el: Require easymenu. Remove cond on
10503         `easy-menu-define'--it exists.
10505         * mh-mime.el: Autoload mailcap.
10507         * mh-comp.el: Require mh-e and easymenu, moved autoloads to top of
10508         file.
10511         * Makefile: (EMACS): New constant to hold emacs calling sequence.
10512         (install): Renamed to install-emacs.
10513         (compile): New target to compile all files.
10514         (dist): Make dependent on compile.
10515         (import): Renamed to import-emacs.
10516         (%.elc): New implicit rule to compile elisp files.
10518         * mh-e.el (mh-thread-map): Added "Td" for
10519         mh-delete-subject-thread.
10521 2001-12-03  Peter S Galbraith  <psg@debian.org>
10523         * mh-e.el (mh-folder-tool-bar-map): Change tooltip for exec icon.
10525         * mh-e.el (mh-folder-subject-face): Change to IndianRed1.
10526         (mh-folder-followup-face): Change to IndianRed.
10527         (mh-folder-deleted-face): Use sedate face instead of bright one.
10529 2001-12-03  Bill Wohler  <wohler@newt.com>
10531         * mh-utils.el (mh-invisible-headers): Increase size of
10532         `max-specpdl-size' locally to work around insufficient default.
10533         (mh-invisible-headers): Added X-Info and X-VSMLoop (NTMail).
10535 2001-12-03  Jeffrey C Honig  <jch@honig.net>
10537         * mh-utils.el (mh-find-progs): Searches should not stop if the
10538         strings are not found, there is error detection at the end of the
10539         routine (closes SF #488231).
10541 2001-12-02  Bill Wohler  <wohler@newt.com>
10543         * MH-E-NEWS: Added info about bumping up `max-specpdl-size'.
10545         * Makefile (MH-E-IMG): New variable that contains images used by
10546         mh-e. Add these files to release.
10548         * MH-E-NEWS: Second draft of mh-e 6.0 (was 5.1) release notes.
10550         * mh-e.el (mh-folder-updated-hook): Reworded to avoid ambiguity.
10551         Is the hook called when you type `d' or when you type `x'?
10552         (mh-unseen-updated-hook): Reworded to be consistent with
10553         `mh-folder-updated-hook.'
10555         * mh-utils.el (mh-recenter): Accepted Gerd's change which is
10556         evaluated at compile time.
10558 2001-12-02  Bill Wohler  <wohler@newt.com>
10560         * mh-e.el Major, major keymap changes. The specific changes are
10561         listed below, but view the sources, or use "C-h m" in MH Folder
10562         mode for the complete list.
10564         Use of sub-keymaps inspired by gnus. The changes tripped me up at
10565         first too, but after about 5 minutes of shock (which is to be
10566         expected, I've been using the old keybindings for 16 years), I
10567         honestly found the new bindings to be nice indeed. It will also
10568         provide flexibility to allow for future functionality. I hate to
10569         do this on the eve of the beta release, but you asked for it! It's
10570         likely I'll have to pull an Eric and back this change out, but if
10571         we can live with pink subjects, this can't be so bad ;-).
10572         Question: will the users revolt? If they do, I suppose we can
10573         release 6.0.1 the next day ;-).
10574         (mh-folder-map, mh-sequence-map, mh-extract-map, mh-digest-map):
10575         New keymaps which start with F, S, X, and D, respectively. The
10576         mhstore commands can go in the mh-extract-map eventually.
10577         (mh-thread-map): Renamed from mh-folder-thread-map.
10579         Keymap changes and rationale. The sub-keymaps allowed some
10580         consistency (e.g., esp. with l(ist) and k(ill).
10582         e               Deleted. Already have x. Now used by mh-edit-again.
10583         a               Deleted. Already have r. Now used by mh-extract-rej..
10584         j               Deleted. Already have g.
10586         M-a -> e        Better mnemonic. Matches rmail. Frees movement cmd.
10587         M-e -> a        Try `a'gain!
10589         M-f -> Fv       Frees movement command
10590         M-f -> Ff       Alias (keep?)
10591         M-f -> Fo       Alias (keep?)
10592         M-k -> Fk       No reason but to keep with folder commands
10593         M-l -> Fl       No reason but to keep with folder commands
10594         M-p -> Fp       No reason but to keep with folder commands
10595         M-r -> Fr       Frees movement command
10596         M-s -> Fs       No reason but to keep with folder commands
10597         M-u -> Fu       No reason but to keep with folder commands
10599         M-% -> Sd       Better mnemonic
10600         M-# -> Sk       Better mnemonic
10601         M-q -> Sl       Better mnemonic
10602         C-xn -> Sn      Frees up standard key binding
10603         % -> Sp         Better mnemonic for putting a message in a sequence
10604         ? -> Ss         Shows sequences that message is in
10605         C-xw -> Sw      Frees up standard key binding
10607         M-n -> Xs       Better mnemonic (shar)
10608         M-n -> Xu       Better mnemonic (uuencode)
10610         M-SPC -> DSPC   Frees mark command
10611         M-\177 -> D\177 No reason but to keep with digest commands
10612         M-b -> Db       Frees movement command
10614 2001-12-01  Bill Wohler  <wohler@newt.com>
10616         * mh-e.el: Use gnus style of keymaps. Now requires gnus-util.
10617         (mh-folder-thread-map): New map, created by gnus-define-keys.
10618         Reached when typing T in mh-folder-mode-map. Moved threading
10619         functions to this new keymap so we can use dired again.
10620         (mh-folder-mode-map): Defined by gnus-define-keys. Otherwise than
10621         the new threading functions, no changes to the UI were made at
10622         this point--saving that for the next check-in.
10624         * mh-pick.el (mh-pick-mode-map): Use gnus-define-keys. Now
10625         requires gnus-util.
10627         * mh-comp.el (mh-letter-mode-map): Use gnus-define-keys. Now
10628         requires gnus-util.
10630 2001-12-01  Jeffrey C Honig  <jch@honig.net>
10632         * mh-e.el: Update the documentation for the regexps used by
10633         `mh-folder-font-lock-keywords' to specify how many parethesized
10634         expressions they are expected to have and what those expressions
10635         are expected to match.
10637 2001-12-01  Bill Wohler  <wohler@newt.com>
10639         * mh-e.el (mh-folder-mode): Removed iteration of key bindings,
10640         \\{mh-folder-mode-map} suffices. Removed variable documentation
10641         also as this is already out of date and a maintenance hassle.
10642         Reference new mh customization group instead.
10644         * mh-comp.el (mh-letter-mode): Ditto. Also added new information
10645         about MIME directives getting processed automatically if inserted
10646         via mh-e commands.
10648         * mh-pick.el (mh-pick-mode): Edited documentation so it reads like
10649         the other modes.
10651         * mh-e.el (mh-compat-quit): Deleted obsolete and unused function.
10652         Comment in this function said that `b' shouldn't be used for
10653         burst-digest, as it is used for `back' in info, less, and rn. But
10654         what does `back' mean in MH Folder? I suppose if you visit a
10655         folder, you would go `back' to the original folder. Hmmm, I guess
10656         we'll leave the `b' binding alone for now.
10658         * mh-utils.el: Moved some of the variable comments to the first
10659         column so they wouldn't wrap in such an ugly fashion.
10660         (mh-showing-mode): Renamed variable and function from mh-showing
10661         to conform with minor mode conventions. Added optional arg to
10662         function so it would behave like a normal minor mode: no or nil
10663         arg toggles mode, 0 arg turns off, non-nil turns on. It also turns
10664         out that desktop-create-buffer would barf when recreating mh-e
10665         buffers because it was calling mh-show with an arg.
10666         (mh-show-mode): Use define-derived-mode to simplify definition a
10667         *lot*.
10668         (mh-set-mode-name): Deprecated by use of define-derived-mode.
10669         Removed.
10671         * mh-pick.el (mh-pick-mode): Use define-derived-mode to simplify
10672         definition a *lot*.
10674         * mh-e.el (mh-scan-prog): Removed message about "Buffer local" as
10675         this message will appear in a future version of Emacs.
10676         (mh-inc-folder): mh-showing renamed to mh-show-mode and made a
10677         real minor mode.
10678         (mh-folder-mode): Use define-derived-mode to simplify definition a
10679         *lot*.
10681         * import-emacs (release): Change `(none)' to `mainline' so import
10682         doesn't choke after running `cvs up -A' on Emacs.
10683         (COPYING): Moved from $EMACS_HOME/etc to $EMACS_HOME.
10684         (cvs update): Whoops! Forgot the second join (-jemacs).
10685         make import works fine again.
10687 2001-11-30  Peter S Galbraith  <psg@debian.org>
10689         * mh-e.el (mh-folder-font-lock-keywords): Change order of
10690         font-lock patterns such that subject body text doesn't get date
10691         fontification.
10693         * mh-e.el (mh-scan-subject-regexp): Bug fix.  Remove a dot.
10694         scan.font-lock users have to setq it separately.
10696 2001-11-30  Eric Ding  <ericding@alum.mit.edu>
10698         * mh-utils.el (mh-clean-msg-header): Go back to using
10699         mh-delete-line.  Using invisible text property is nicer in some
10700         ways, but winds up with somewhat mysterious behavior should user
10701         kill/yank stuff from the header (i.e., text gets yanked invisibly
10702         and won't be seen by user until file is reloaded).
10704 2001-11-29  Bill Wohler  <wohler@newt.com>
10706         * mh-e.el (mh-page-msg): Use mh-next-direction to page in the
10707         right direction.
10709 2001-11-29  Jeffrey C Honig  <jch@honig.net>
10711         * mh-e.el (mh-scan-folder): Fix logic to not attempt to go to
10712         the current message if there are no messages in the folder.
10714 2001-11-29  Peter S Galbraith  <psg@debian.org>
10716         * mh-e.el (mh-folder-font-lock-subject): New fontifier function
10717         for subject lines in folder-mode
10718         (mh-scan-followup-regexp): Deleted obsolete regexp.  Use
10719         mh-scan-subject-regexp instead.
10720         (mh-folder-font-lock-keywords): Use mh-folder-font-lock-subject
10721         instead of obsolete mh-scan-followup-regexp variable.
10722         (mh-folder-date-face, mh-folder-msg-number-face):
10723         (mh-folder-subject-face, mh-folder-followup-face):
10724         Now defined as proper faces instead of copied from font-lock
10725         faces.
10727         * mh-mime.el (mh-media-type-regexp): New variable. Regexp matching
10728         valid media types used in MIME attachment compositions.
10729         (mh-file-mime-type): Use mh-media-type-regexp instead of
10730         hard-wiring its value.
10732         * mh-utils.el (mh-show-unquote-From): New function to unquote
10733         "^>From" in mh-show-mode (not saved to disk).
10734         (mh-show-mode): Call mh-show-unquote-From.
10736 2001-11-29  Eric Ding  <ericding@alum.mit.edu>
10738         * mh-utils.el (mh-clean-msg-header): Use mh-make-line-invisible
10739         rather than mh-delete-line.
10740         (mh-make-line-invisible): New function to make line(s) invisible
10741         rather than deleting line(s).  Optional argument specifies number
10742         of lines to delete.
10743         (mh-show-msg): screen-height has been deprecated; use no more.
10744         (mh-notate): screen-width has been deprecated; use no more.
10746 2001-11-29  Jeffrey C Honig  <jch@honig.net>
10748         * mh-utils.el: (mh-find-progs): Change mh-find-progs to rely on
10749         the existence of mhparam.  The location of mhparam is used to find
10750         `mh-progs'.  It uses the libdir and etcdir to find the
10751         `mh-lib-progs' and `mh-lib' directories.  If etcdir doesn't return
10752         anything we assume `mh-lib-progs' is the same as `mh-lib' and that
10753         we are using MH instead of nmh.
10755 2001-11-29  Peter S Galbraith  <psg@debian.org>
10757         * mh-e.el (mh-scan.font-lock-regexp): Change docs to reflect that
10758         second paren expression is the user match.
10759         (mh-folder-font-lock-keywords): Change from 1st to 2nd parenthesized
10760         expression to match user name, after Jeffrey's change to the regexps.
10762 2001-11-29  Bill Wohler  <Bill.Wohler@openwave.com>
10764         * mh-utils.el (mh-clean-message-header): Default is now t.
10765         (mh-invisible-headers): Padded out to contain all the headers that
10766         the mh-e developers don't like to see (closes SF #415759).
10768 2001-11-28  Bill Wohler  <Bill.Wohler@openwave.com>
10770         * mh-comp.el (mh-rejected-letter-start): Added MIME MDN. While
10771         this allows mh-extract-rejected-mail to strip the start of the
10772         MDN, there is still a closing MIME marker at the end. This should
10773         be cleaned up eventually.
10775 2001-11-28  Peter S Galbraith  <psg@debian.org>
10777         * mh-e.el (mh-folder-seq-tool-bar-map): New tool-bar used for
10778         folder-mode when narrowed to sequence.
10779         * mh-seq.el (mh-narrow-to-seq): Set tool-bar to
10780         mh-folder-seq-tool-bar-map.
10781         (mh-widen): Set tool-bar to mh-folder-tool-bar-map.
10782         * widen.xpm: New icon used in mh-folder-seq-tool-bar-map.
10784         * mh-mime.el (mh-file-mime-type): Much better check on validity of
10785         'file' output.
10787         * mh-e.el (mh-scan-subject-regexp): New regexp variable for
10788         subject string in folder mode.  Used to extract subject sequence,
10789         and will be used for font-lock soon.
10790         * mh-seq.el (mh-subject-thread-to-sequence): More robust code by
10791         using mh-scan-subject-regexp, allows users with non-standard
10792         scan format to use subject sequences.
10794         * mh-comp.el (mh-letter-fill-column): Fill column to use in
10795         mh-letter-mode.  (Yes, I'm doing this in spite of what Bill said;
10796         Someone can always undo it later)
10797         (mh-letter-mode): setq fill-column to mh-letter-fill-column.
10799 2001-11-28  Bill Wohler  <wohler@newt.com>
10801         * mh-e.el (mh-page-msg): The first time the end of page is hit,
10802         set mh-page-to-next-msg-p to t. The second time the end of page is
10803         hit, go to the next message.
10805         * mh-utils.el: (mh-show-msg): Initialize mh-page-to-next-msg-p to
10806         nil.
10808 2001-11-27  Bill Wohler  <wohler@newt.com>
10810         * mh-mime.el (mh-mime-content-types): Updated list of types to
10811         contain types used by mh-e developers, but not including types not
10812         listed in
10813         http://www.isi.edu/in-notes/iana/assignments/media-types/media-types.
10815 2001-11-27  Peter S Galbraith  <psg@debian.org>
10817         * mh-seq.el (mh-subject-thread-to-sequence) New function placing
10818         all messages with similar subject line into a sequence named
10819         'subject.
10820         (mh-narrow-to-subject-thread): New command to narrow to all
10821         messages with similar subject line into a sequence named 'subject.
10822         (mh-toggle-subject-thread): New command to toggle between a new
10823         'subject sequence or the wide view of a folder.
10824         (mh-delete-subject-thread): New command to delete all following
10825         messages with similar subject lines (leaving preceeding ones
10826         untouched).
10827         (mh-next-unseen-subject-thread): New command to create and move to
10828         a new subject thread created from the next unseen message as a
10829         starting point.
10830         * mh-e.el (mh-folder-message-menu): New menu entries for subject
10831         threads.
10832         (mh-folder-mode-map): New keybindings for subject threads.
10833         (mh-lessp): New function to sort messages.
10835         * mh-utils.el (mh-show-font-lock-keywords): and various
10836         faces... scoped within eval-after-load "font-lock" to avoid
10837         requiring font-lock to use its faces.
10838         * mh-e.el (mh-folder-font-lock-keywords): Same.
10840 2001-11-27  Jeffrey C Honig  <jch@honig.net>
10842         * mh-mime.el (mh-file-mime-type): Use mh-temp-buffer instead of
10843         " *mh-temp".
10845         * mh-comp.el (mh-insert-x-mailer): Kill mh-temp-buffer after use.
10847 2001-11-26  Eric Ding  <ericding@alum.mit.edu>
10849         * mh-utils.el: revert to using external mimedecode to decode
10850         MIME quoted-printable parts
10852 2001-11-26  Jeffrey C Honig  <jch@honig.net>
10854         * mh-e.el (mh-process-commands): Added mh-folder-updated-hook.
10855         * mh-e.el (mh-update-unseen): Added mh-unseen-updated-hook.
10857 2001-11-26  Peter S Galbraith  <psg@debian.org>
10859         * mh-mime.el (mh-file-mime-type): Make sure output from file
10860         command is known to mailcap file, otherwise prompt the user.
10861         (mh-mime-content-types): Add "image/png" type.
10863         * mh-e.el (mh-folder-font-lock-keywords): Use a bunch of new
10864         mh-folder-*-face faces.
10865         * mh-utils.el (mh-show-font-lock-keywords): Use a bunch of new
10866         mh-show-*-face faces.
10868         * mh-utils.el (mh-letter-header-font-lock): Bug fix.  Fix infinite
10869         loop in emacs20 font-locking.
10870         (mh-header-field-font-lock): Preventive fix with similar change.
10872         * mh-comp.el (mh-reply-show-message-p): Typo.  diplayed -> displayed.
10873         * MH-E-NEWS: Same.
10875         * mh-e.el (mh-folder-tool-bar-map): Bug fix.  I had
10876         mh-repack-folder instead of mh-pack-folder.
10878 2001-11-26  Bill Wohler  <wohler@phone.com>
10880         * mh-e.el:
10881         Updated header for consistency and to conform with (elisp)Library
10882         Headers.
10883         (mh-do-not-confirm): Updated documentation string to reflect
10884         reality (e.g., is no longer used by mh-kill-folder and is used by
10885         more functions than just mh-undo-folder).
10886         (mh-page-msg): Now shows the next undeleted message if looking at the
10887         bottom of the current message.
10888         (mh-process-or-undo-commands): Fixed indentation.
10890         * mh-mime.el:
10891         (mh-mhn-compose-insertion, mh-mhn-compose-anon-ftp): If MIME type
10892         cannot be determined with file command, use mailcap-mime-types (if
10893         available) to provide list for completing read.
10895         * MH-E-NEWS: First draft of mh-e 5.1 release notes.
10897 2001-11-26  Eric Ding  <ericding@alum.mit.edu>
10899         * mh-utils.el (mh-decode-quoted-printable): Implement
10900         quoted-printable decoding in elisp (starting with code copied
10901         from FLIM).
10902         (mh-decode-quoted-printable-region): Move (require 'hexl) outside
10903         while loop.
10904         (mh-decode-quoted-printable): give user a choice between using
10905         internal code or external program to decode quoted-printable
10906         content.  Resurrect code that calls external mimedecode program.
10908 2001-11-25  Peter S Galbraith  <psg@debian.org>
10910         * mh-utils.el (mh-highlight-citation-p): New variable to determine
10911         whether to hightlight citations in message body with gnus,
10912         font-lock or not at all.
10913         (mh-show-font-lock-keywords): removed citations from keywords.
10914         (mh-show-font-lock-keywords-with-cite): New variable, equivalent
10915         to prior mh-show-font-lock-keywords.
10916         (mh-gnus-article-highlight-citation): hook into gnus for
10917         multi-level citation highlighting.
10918         (mh-show-mode): Use either mh-show-font-lock-keywords or
10919         mh-show-font-lock-keywords-with-cite, depending on value of
10920         mh-highlight-citation-p, and possibly call
10921         mh-gnus-article-highlight-citation.
10922         * mh-comp.el (mh-letter-mode): Same as for mh-show-mode above.
10924 2001-11-25  Jeffrey C Honig  <jch@honig.net>
10926         * mh-comp.el (mh-redistribute): Added mh-redist-background
10927         variable to cause mh-redistribute to run the redist command in the
10928         background.  This causes the transaction log to be visible, like
10929         with send.
10931 2001-11-25  Peter S Galbraith  <psg@debian.org>
10933         * mh-e.el (mh-inc-folder): 'inc' finishes by displaying the first
10934         new message if already showing messages.
10936 2001-11-22  Peter S Galbraith  <psg@debian.org>
10938         * mh-utils.el (mh-prompt-for-folder): Exit with error if no folder
10939         specified, otherwise mh-refile-msg may try to create a folder with
10940         empty name, and this creates problems;  even mh-undo can't handle
10941         it (Closes SF #476824).
10943         * mh-comp.el (mh-letter-tool-bar-map): Info button needed to
10944         require 'info.  Also tweaked help texts.
10945         (mh-letter-menu): Use headline capitalization (Closes SF #483203).
10946         * mh-e.el (mh-folder-tool-bar-map): Same as above.
10947         (mh-folder-folder-menu, mh-folder-message-menu):
10948         (mh-folder-sequence-menu): Same as above.
10949         * mh-pick.el (mh-pick-menu): Same as above.
10951 2001-11-21  Peter S Galbraith  <psg@debian.org>
10953         * mh-comp.el (mh-reply-show-message-p): The setting of this
10954         variable determines whether the MH show-buffer is diplayed with
10955         the current message when using mh-reply without a prefix argument.
10956         Set it to nil if you already include the message automatically in
10957         your draft using "repl: -filter repl.filter" in your ~/.mh_profile
10958         file.
10959         (mh-reply): Don't show message in other window if
10960         mh-reply-show-message-p is nil.
10962         * mh-e.el (mh-folder-tool-bar-map): Add mail_exec.xpm icon for
10963         mh-execute-commands.
10965         * mh-utils.el (mh-show-mouse): New function to click on a message
10966         in folder-mode and show that message.
10967         * mh-e.el (mh-folder-mode-map): Bind mh-show-mouse to mouse-2.
10969         * mh-e.el (mh-page-msg): Show buffer first if not displayed,
10970         instead of simply complaining there's no other window.
10972         * mh-e.el (mh-folder-tool-bar-map): New tool-bar for folder mode!
10973         (mh-folder-mode): Setup tool-bar.
10975         * mh-mime.el (mh-have-file-command): try to non-fatally load
10976         executable.el because emacs20 doesn't autoload it.
10977         * mh-utils.el (load "executable" t t): Idem.
10979         * mh-utils.el (mh-clean-msg-header): Bug fix. locally bind
10980         after-change-functions to nil, working around a strange font-lock
10981         bug in emacs20 when (add-hook 'mh-show-mode-hook 'turn-on-font-lock)
10982         was used.
10984         * mh-comp.el (require 'sendmail): Moved from mh-comp.el to
10985         mh-utils.el because it is needed in reading mail too.
10986         (mh-header-field-end, mh-in-header-p): Moved to mh-utils.el
10987         because they are needed by mh-show-mode's font-lock code.
10988         Unfortunately, this splits the field related code into two files.
10989         Perhaps it should all go into mh-utils?
10991 2001-11-20  Eric Ding  <ericding@alum.mit.edu>
10993         * mh-utils.el (mh-show-from-face): Fix typo in defface
10995 2001-11-20  Bill Wohler  <wohler@newt.com>
10997         * mh-utils.el (mh-mail-header-separator): Set to -------- as
10998         defined by MH (components, and replcomps files). This variable
10999         cannot be a regexp since it is used as an argument to insert and
11000         is passed through regexp-quote before being used. The previous
11001         value broke a lot of code, including mailcrypt.
11003         * mh-comp.el (mh-letter-mode, mh-send-letter): Insert X-Mailer
11004         header field from mh-send-letter.
11005         (mh-edit-again, mh-extract-rejected-mail): Call
11006         mh-insert-header-separator to ensure that there is a separator.
11007         Packages such as mailcrypt depend on it.
11008         (mh-insert-header-separator): New function to insert
11009         mh-mail-header-separator if it doesn't exist.
11011 2001-11-20  Peter S Galbraith  <psg@debian.org>
11013         * mh-comp.el (mh-letter-mode): Make font-lock-defaults a local variable
11014         * mh-e.el (mh-folder-mode):  Same.
11015         * mh-utils.el (mh-show-mode):  Same.
11017         * mh-e.el (mh-scan-msg-num-regexp): Delete variable and replace
11018         with mh-good-msg-regexp.
11020         * mh-utils.el (mh-mail-header-separator): Bug fix.  Moved from
11021         mh-comp.el to mh-utils.el (which mh-comp.el loads).
11023         * mh-comp.el (mh-in-header-p): Recycle sendmail.el code (as
11024         suggested by Bill).
11025         * mh-utils.el (mh-letter-header-font-lock): Use mh-in-header-p.
11027         * mh-comp.el (mh-letter-tool-bar-map): tool-bar customize button goes
11028         to customizing mh-compose group.
11030         * mh-utils.el (mh-show-mode): font-lock bug fix. Locally set
11031         font-lock-support-mode to nil.
11032         (mh-letter-header-font-lock, mh-header-field-font-lock): font-lock
11033         bug fix. Don't return match beyond font-lock search limit.
11035         * mh-comp.el (mh-letter-mode): Emacs20 bug fix. tool-bar-mode is
11036         not a bound variable.
11038 2001-11-19  Peter S Galbraith  <psg@debian.org>
11040         * mh-comp.el (mh-letter-tool-bar-map): tool-bar help button goes
11041         to 'Draft Editing' info node.
11043         * mh-utils.el (mh-show-from-face, mh-show-to-face): New faces used
11044         for font-lock.
11045         (mh-header-to-font-lock, mh-header-cc-font-lock)
11046         (mh-header-field-font-lock): New helper function returning whole
11047         header field arguments to font-lock.
11048         (mh-show-font-lock-keywords): Heavily modified using the above.
11050         * mh-e.el (mh-scan-msg-num-regexp): Regexp matching the message
11051         number in scan lines.
11052         (mh-scan-date-regexp): Regexp matching a valid date in scan lines.
11053         (mh-scan-rcpt-addr-regexp): Regexp specifying the recipient in
11054         scan lines for messages we sent.
11055         (mh-scan-followup-regexp): Regexp matching a followup subject
11056         line, starting with Re:
11057         (mh-scan-body-regexp):
11058         Regexp matching the message body beginning displayed in scan lines.
11059         (mh-scan.font-lock-regexp): Regexp matching output of the the
11060         optional scan.font-lock format file.
11061         (mh-folder-font-lock-keywords): New font-lock for folder-mode that
11062         uses the above regexps.
11064 2001-11-19  chad  <y@mit.edu>
11066         * mh-comp.el (mh-letter-tool-bar-map): made both references to
11067         mh-letter-tool-bar-map conditional on tool-bar-mode, instead of
11068         just one.
11070 2001-11-19  Bill Wohler  <wohler@newt.com>
11072         * mh-comp.el (mh-position-on-field): Move to the end of the header
11073         if the field is not present. This function was documented to do
11074         this, but wasn't doing so.
11075         (mh-insert-x-mailer): Simplified by using existing
11076         mh-goto-header-field and mh-insert-fields functions. Now that
11077         mh-insert-fields is used to insert X-Mailer header field, no
11078         longer need to include X-Mailer in mh-x-mailer-string.
11080 2001-11-18  Peter S Galbraith  <psg@debian.org>
11082         * mh-comp.el (mh-letter-tool-bar-map): New version of
11083         mh-letter-mode tool-bar.  Changed order of buttons; made customize
11084         and info buttons specific to mh-e.
11086         * mh-e.el (mh-folder-font-lock-keywords): New font-lock regexp
11087         uses variables mh-deleted-msg-regexp, mh-refiled-msg-regexp and
11088         mh-cur-scan-msg-regexp, so will better adapt to non-default scan
11089         formats.  Also, lines marked for refiling are now fontified.
11091 2001-11-18  Bill Wohler  <wohler@newt.com>
11093         * mh-utils.el (mh-show-mode): Added local variable
11094         mail-header-separator which is initialized to
11095         mh-mail-header-separator.
11097         * mh-comp.el (mh-mail-header-separator): Updated to include ^$.
11098         Needed when running mh-edit-again, since by then the separator is
11099         gone. Added documentation saying one should use
11100         mail-header-separator and initialize it from
11101         mh-mail-header-separator.
11102         (mh-forward): Initialize mail-header-separator since
11103         mh-letter-mode hasn't kicked in yet (which does initialize
11104         mail-header-separator).
11105         (mh-letter-mode): Initialize mail-header-separator from
11106         mh-mail-header-separator, not hard-coded string.
11108         * mh-comp.el (mh-insert-x-mailer-p): New variable to control
11109         whether X-Mailer string is inserted. Default: t.
11110         (mh-x-mailer-string): New variable that caches actual X-Mailer
11111         string.
11112         (mh-letter-mode): Call mh-insert-x-mailer if mh-insert-x-mailer-p
11113         is t.
11114         (mh-insert-x-mailer): New function that inserts X-Mailer header
11115         field.
11117 2001-11-17  Peter S Galbraith  <psg@debian.org>
11119         * mh-utils.el (mh-letter-header-font-lock): New function to return
11120         the entire mail header to font-lock for sedate font-locking.
11121         (mh-show-font-lock-keywords): Modified to fontify whole lines and use
11122         mh-letter-header-font-lock above to fontify whole header.
11124 2001-11-17  Bill Wohler  <wohler@newt.com>
11126         * mh-comp.el (mail-header-separator): Added ^ and $ to make more
11127         specific.
11128         (mh-forward, mh-letter-mode): Replaced hard-coded string with
11129         mail-header-separator.
11131 2001-11-16  Bill Wohler  <wohler@newt.com>
11133         * mh-e.el (mh-e-RCS-id): Renamed to mh-version.
11134         (mh-version): The variable: Set to a number instead of Id since
11135         the Id didn't have the mh-e version number, and both Emacs and
11136         gnus do it this way too.
11137         (mh-version): The function: Fixed for nmh. Now displays mh-e
11138         version correctly. Cleaned up output and display mh-progs, etc.
11139         (Closes SF #405620.)
11141 2001-11-15  Peter S Galbraith  <psg@debian.org>
11143         * mh-comp.el (mh-letter-tool-bar-map): New tool-bar support for
11144         mh-letter-mode in emacs21.  Uses icons from gnus/message.el.
11145         * mh-comp.el (mh-letter-mode): Add buffer-local binding of
11146         tool-bar-map to mh-letter-tool-bar-map.
11148 2001-11-15  Peter S Galbraith  <psg@debian.org>
11150         * mh-mime.el (mh-have-file-command): Add check for existence of
11151         executable-find command, which Jeffrey didn't exist in emacs-20.4.
11152         * mh-utils.el (mh-decode-quoted-printable-have-mimedecode): same
11153         as above.
11154         * mh-mime.el (mh-file-mime-type): Bug Fix.  Some versions of
11155         'file' output a string like "file: Using regular magic file..."
11156         to stderr, so discard stderr when using call-process with 'file'.
11158 2001-11-14  Peter S Galbraith  <psg@debian.org>
11160         * mh-mime.el (mh-have-file-command): Check if 'file' command on
11161         system accepts arguments -i -b before accepting it for our use.
11163 2001-11-14  Peter S Galbraith  <psg@debian.org>
11165         * mh-utils.el (mh-find-progs): Use expand-file-name instead of
11166         concatenating together strings into a path.
11168 2001-11-14  Peter S Galbraith  <psg@debian.org>
11170         * mh-e.el (mh-folder-sequence-menu): Enable mh-widen in sequence
11171         menu only when mh-narrowed-to-seq is t.
11173 2001-11-14  Peter S Galbraith  <psg@debian.org>
11175         * mh-mime.el (mh-have-file-command): Use 'executable-find' instead
11176         of more complicated and error-prone call-process to which command.
11177         * mh-utils.el (mh-decode-quoted-printable-have-mimedecode): Same
11178         change as above.
11180 2001-11-14  Jeffrey C Honig  <jch@honig.net>
11182         * mh-e.el (mh-make-folder-mode-line): Bug fix.  Properly deal with
11183         folders that do not have any lines in them.  Print "no msgs"
11184         instead of "0 msgs".  Do not try to print a range when there are
11185         no messages.
11186         * mh-e.el (mh-regenerate-headers): Bug fix.  Catch and remove the
11187         "scan: band message list" message.
11189 2001-11-13  Jeffrey C Honig  <jch@honig.net>
11191         * mh-utils.el (mh-find-progs): Bug fix.  Add "mh/etc" to the
11192         subdirectories to search for "components".  On BSD/OS, nmh is in
11193         "/usr/contrib/mh/*".
11195 2001-11-13  Peter S Galbraith  <psg@debian.org>
11197         * mh-comp.el (mh-letter-mode): Bug fix.  Load mh-mime before
11198         setting mh-mhn-compose-insert-p (when looking at a "forw: -mime"
11199         message containing a MIME composition) such that the variable is
11200         properly declared as buffer-local.
11202 2001-11-12  Bill Wohler  <wohler@newt.com>
11204         * mh-funcs.el (mh-print-msg): mhl is in the mh-lib-progs
11205         directory, not mh-lib (closes SF #481128).
11207 2001-11-12  Peter S Galbraith  <psg@debian.org>
11209         * mh-seq.el (mh-widen): Bug fix (closes SF #481036).
11210         In a sequence with pending deletes and refiles, running mh-widen
11211         would wipe out their notations, even though the sequences are still
11212         defined.  Fixed by calling a new function,
11213         mh-notate-deleted-and-refiled.  Also changed the coping of
11214         mh-goto-msg-num since it didn't work consistently.
11215         * mh-seq.el (mh-notate-deleted-and-refiled): New functions written
11216         to fix above mh-widen bug.  It's a first cut, we may want to clear
11217         all notations first, and notate the current-message sequence and
11218         user sequences.  Time will tell.
11220 2001-11-12  Peter S Galbraith  <psg@debian.org>
11222         * mh-seq.el (mh-widen): Make it attempt to stay on the same
11223         message number (closes SF bug #480922).
11225 2001-11-11  Bill Wohler  <wohler@newt.com>
11227         * import-emacs: New shell script to import Emacs changes to mh-e.
11229         * Makefile (import): New target to import Emacs changes.
11231 2001-11-09  Peter S Galbraith  <psg@debian.org>
11233         * mh-mime.el (mh-file-mime-type): Bug fix.  Change regexp to
11234         extract mime type from 'file -i' command output.
11236 2001-11-08  Peter S Galbraith  <psg@debian.org>
11238         * mh-utils.el (mh-update-sequences-after-mh-show):
11239         New customizable variable telling whether to run
11240         mh-update-sequences in mh-show-mode.  Default is t.
11241         * mh-utils.el (mh-show-msg): Run mh-update-sequences when
11242         mh-update-sequences-after-mh-show is set.
11244 2001-11-08  Peter S Galbraith  <psg@debian.org>
11246         * mh-utils.el (mh-decode-quoted-printable-have-mimedecode):
11247         New variable telling whether command 'mimedecode' is on system.
11248         (http://www.freesoft.org/CIE/FAQ/mimedeco.c)
11249         * mh-utils.el (mh-decode-quoted-printable):
11250         New customizable variable telling whether to run mimedecode on
11251         MIME message containing quoted-printable parts.  mimedecode will
11252         only alter quoted-printable parts , leaving others intact, and the
11253         resulting message is still fully MIME.
11254         * mh-utils.el (mh-decode-quoted-printable): New function to run
11255         mimedecode on the current buffer.
11256         * mh-utils.el (mh-display-msg): Conditionnaly call
11257         mh-decode-quoted-printable function if mh-decode-quoted-printable
11258         variable is set, to view messages containing quoted-printable
11259         characters into 8-bit.
11261 2001-11-08  Peter S Galbraith  <psg@debian.org>
11263         * mh-comp.el (mh-letter-mode): Set mh-mhn-compose-insert-p if
11264         looking at a "forw: -mime" message containing a MIME composition.
11265         * mh-mime.el (mh-file-mime-type): Bug fix.  Failed on files like
11266         "~/.mh_profile" because of shell construct.  Wrapped filename with
11267         expand-file-name.
11268         * mh-comp.el (mh-letter-mode-map): C-cC-o keybinding in
11269         mh-letter-mode-map for mh-open-line.
11271 2001-11-07  Peter S Galbraith  <psg@debian.org>
11273         * mh-comp.el (mh-open-line): New user function to split open a line
11274         when editing a reply with included text.
11275         * mh-comp.el (mh-current-fill-prefix): New function used by
11276         mh-open-line to get the fill-prefix on the current line.
11277         * mh-comp.el: Add mh-open-line to mh-letter-mode menubar.
11279 2001-11-06  Peter S Galbraith  <psg@debian.org>
11281         * mh-seq.el (mh-region-to-sequence): New function, creating a
11282         sequence named 'region containing the message list in the selected
11283         region.
11284         * mh-e.el (mh-delete-msg): Mark messages in region for deletion if
11285         mark is active and in transient-mark-mode.
11286         * mh-e.el (mh-refile-msg): Mark messages in region for refiling if
11287         mark is active and in transient-mark-mode.
11288         * mh-e.el (mh-undo): Undo message marks for refile or deletion if
11289         region if mark is active and in transient-mark-mode.
11291 2001-11-06  Peter S Galbraith  <psg@debian.org>
11293         * mh-comp.el (mh-letter-mode): Use sendmail.el's fill-paragraph.
11294         Copy its settings for paragraph-start, paragraph-separate,
11295         fill-paragraph-function, adaptive-fill-regexp and
11296         adaptive-fill-first-line-regexp.  This make M-q (fill-paragraph)
11297         work correctly!
11299 2001-11-05  Peter S Galbraith  <psg@debian.org>
11301         * mh-funcs.el (mh-kill-folder): Remove mh-do-not-confirm condition
11302         and always prompt the user for such a drastic step.  Also change
11303         the prompt a bit to clarify it.
11305 2001-11-04  Peter S Galbraith  <psg@debian.org>
11307         * mh-mime.el (mh-mhn-compose-insert-p): New buffer-local variable
11308         to tell when a MIME insertion was done in a letter.
11309         * mh-mime.el (mh-mhn-compose-type): Set mh-mhn-compose-insert-p.
11310         * mh-mime.el (mh-mhn-compose-external-type):
11311         Set mh-mhn-compose-insert-p.
11312         * mh-mime.el (mh-mhn-compose-forw): Set mh-mhn-compose-insert-p.
11313         * mh-mime.el (mh-edit-mhn): Clear mh-mhn-compose-insert-p.
11314         * mh-comp.el (mh-send-letter): Run mh-edit-mhn when
11315         mh-mhn-compose-insert-p is set.
11317 2001-11-03  Peter S Galbraith  <psg@debian.org>
11319         * mh-mime.el (mh-have-file-command): new function testing whether
11320         file command is on the system.
11321         * mh-mime.el (mh-file-mime-type): new function returning MIME type
11322         from file command.
11323         * mh-mime.el (mh-mhn-compose-insertion): Make use of
11324         mh-file-mime-type function instead of prompting.
11326 2001-10-30  Peter S Galbraith  <psg@debian.org>
11328         * mh-utils.el (mh-show-use-goto-addr): defcustom this new
11329         variable, determining whether to call goto-addr in mh-show-mode.
11330         * mh-utils.el (mh-show-mode): Call goto-address when
11331         mh-show-use-goto-addr is t.
11333 2001-10-25  Peter S Galbraith  <psg@debian.org>
11335         * mh-utils.el (mh-recenter): Clarify docs and change '(t) to
11336         (list 4) to match elisp doc on what C-u prefix argument actually is.
11338 2001-10-23  Peter S Galbraith  <psg@debian.org>
11340         * mh-utils.el (mh-summary-height): In my quest to make mh-e more
11341         useful out-of-the-box for new users, set mh-summary-height to a
11342         minimum of 4 and a maximum of 10 depending on frame height.  I
11343         typically have 70 lines in my Emacs frame, so having a default of
11344         4 was silly for my case.
11345         * mh-e.el (mh-update-sequences): Check for nil value of
11346         mh-current-folder, which happens if mh-summary-height < 4
11347         although I haven't tracked doen why that happens.
11349 2001-10-22  Peter S Galbraith  <psg@debian.org>
11351         * mh-comp.el (mh-insert-fields): Test for nil value when inserting
11352         field.
11354 2001-10-20  Peter S Galbraith  <psg@debian.org>
11356         * mh-comp.el (mh-user-agent-compose): Merged-in from XEmacs-21.4 source
11357         * mh-comp.el (mh-letter-mode): Add easy-menu-add statement for XEmacs21
11358         * mh-pick.el (mh-pick-mode): Add easy-menu-add statement for XEmacs21.
11359         * mh-e.el (mh-folder-mode): Add easy-menu-add statements for XEmacs21.
11360         * mh-utils.el: defalias 'screen-height to 'frame-height for XEmacs21.
11362 2001-10-19  Peter S Galbraith  <psg@debian.org>
11364         * mh-mime.el (mh-edit-mhn): Use mhbuild in nmh context.
11365         * mh-utils.el (mh-find-progs): The variable mh-nmh-p (t when nmh
11366         is in use rather than MH) was set assuming that the string "nmh"
11367         will be in mh-lib-progs or mh-lib.  This failed on Debian systems.
11368         Better to check for the existence of mhbuild in directory mh-progs.
11369         (closes SF bug #441776)
11371 2001-10-18  Peter S Galbraith  <psg@debian.org>
11373         * mh-e.el: Add menubar entry from contrib/mh-menubar.el
11374         * mh-comp.el: Add menubar entry from contrib/mh-menubar.el
11375         * mh-pick.el: Add menubar entry from contrib/mh-menubar.el
11377 2001-07-30  Peter S Galbraith  <psg@debian.org>
11379         * mh-e.el: Change font-lock patterns for folders.
11380         Fontify scan.font-lock patterns (which will be documented)
11381         and fontify subject lines prefixed with "Re:" differently.
11382         * mh-comp.el (mh-letter-mode): Add font-lock support as in
11383         mh-show-mode.
11385 2001-04-14  chad brown  <y@mit.edu>
11387         Rearrange the font-lock keywords a bit.
11389 2001-04-12  chad brown  <y@mit.edu>
11391         Preliminary (somewhat boring) font-lock support for mh-e.  More
11392         interesting font-lock support probably wants to have better
11393         support for multiple format files
11395 2001-02-24  chad brown  <y@mit.edu>
11397         Add default nmh paths to mh-find-prog in mh-utils.el.
11398         change to mh-kill-folder in mh-funcs.el to make it more general.
11400 2001-02-19  Bill Wohler  <wohler@newt.com>
11402         * Makefile (EMACS): Renamed to EMACS_HOME. Also, don't define if
11403         EMACS_HOME already exists to give developer a chance to set
11404         environment variable.
11405         (install): $MH-E-SRC is copied to $(EMACS_HOME)/lisp/mail, not
11406         $(EMACS_HOME)/src.
11407         (dist): Leave release in current directory.
11410   Copyright (C) 2003, 2004, 2005, 2006, 2007, 2008  Free Software Foundation, Inc.
11412   This file is part of GNU Emacs.
11414   GNU Emacs is free software; you can redistribute it and/or modify
11415   it under the terms of the GNU General Public License as published by
11416   the Free Software Foundation; either version 3, or (at your option)
11417   any later version.
11419   GNU Emacs is distributed in the hope that it will be useful,
11420   but WITHOUT ANY WARRANTY; without even the implied warranty of
11421   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
11422   GNU General Public License for more details.
11424   You should have received a copy of the GNU General Public License
11425   along with GNU Emacs; see the file COPYING.  If not, write to the
11426   Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
11427   Boston, MA 02110-1301, USA.
11429 ;; arch-tag: 2577172b-b1bf-4d87-acfb-c9d8780e8851