1 2003-04-25 Bill Wohler <wohler@newt.com>
3 * mh-e.el (mh-version): Set to 7.3+cvs.
5 2003-04-24 Bill Wohler <wohler@newt.com>
7 * Released MH-E version 7.3.
9 * MH-E-NEWS, README: Updated for release 7.3.
11 * mh-e.el (Version, mh-version): Updated for release 7.3.
13 2003-04-24 Satyaki Das <satyakid@stanford.edu>
15 * mh-xemacs-compat.el (mh-utils): Require mh-utils at compile
16 time, since the mh-do-in-xemacs macro is used.
18 * mh-inc.el (cl): Require cl at compile time since we are using
19 the loop and setf macros.
21 2003-04-24 Satyaki Das <satyakid@stanford.edu>
23 * mh-unit.el (mh-files): Fix the list of files to check.
25 2003-04-24 Bill Wohler <wohler@newt.com>
27 * ChangeLog: Appended copyright to end of file.
29 * Makefile: Added copyright and license.
31 * README: Added copyright.
33 * import-emacs: Changed copyright from Newt Software to Bill
34 Wohler and use license from mh-e.el, except that this file is
35 a part of MH-E, not GNU Emacs.
37 * mh-alias.el: Updated copyright so that it doesn't wrap upon
38 advice from Richard Stallman who said to use two-digit years when
39 they are surrounded by 4-digit years that are in the same century
40 and to break up copyrights on multiple lines.
44 * mh-identity.el: Ditto.
48 * mh-xemacs-compat.el: Ditto.
50 * mh-unit.el: New file. Unit tests for MH-E. This version merely
51 runs checkdoc and lm-verify which is useful before releasing the
52 software. It can and should be expanded to do real unit tests.
54 2003-04-22 Mark D Baushke <mdb@gnu.org>
56 * mh-alias.el: Update Copyright.
58 * mh-customize.el: Ditto.
61 * mh-identity.el: Ditto.
68 * mh-xemacs-compat.el: Ditto.
70 2003-04-22 Satyaki Das <satyaki@theforce.stanford.edu>
72 * mh-utils.el (mh-normalize-folder-name): Make the completion
73 code work properly with XEmacs. This change is neeeded since
74 split-string behaves differently in XEmacs than it does in GNU
76 (mh-exec-cmd-error): Add a comment, so that we change it later on.
78 2003-04-18 Steve Youngs <youngs@xemacs.org>
80 * mh-xemacs-icons.el (mh-xemacs-icons): Provide 'mh-xemacs-icons'
81 not 'mh-xemacs-toolbar'.
83 * mh-xemacs-compat.el (mh-xemacs-toolbar): Remove require, it's
84 now called 'mh-xemacs-icons' and it is required from
87 * mh-customize.el: Require 'mh-xemacs-icons' instead of
90 2003-04-17 Peter S Galbraith <psg@debian.org>
92 * mh-xemacs-icons.el: New file (renamed from mh-xemacs-toolbar.el).
95 * mh-xemacs-toolbar.el: Deleted.
97 * Makefile: Incorporate the file renaming.
99 2003-04-15 Bill Wohler <wohler@newt.com>
101 * mh-comp.el (mh-forward): Pass a list of messages into
102 mh-compose-and-send-mail instead of msg-or-seq.
103 (mh-annotate-msg): The previous version called
104 mh-iterate-on-msg-or-seq in the letter buffer. The new version
105 simply adds the ability to operate on message lists. Thanks to
106 Satyaki for the fix and suggestion for passing a list from
109 2003-04-14 Bill Wohler <wohler@newt.com>
111 * mh-comp.el (mh-annotate-msg): Updated to handle msg-or-seq for
112 mh-forward was passing a msg-or-seq to mh-compose-and-send-mail
113 which in turn passed the msg-or-seq to mh-annotate-msg. In
114 particular, forwarding a region failed. Note that the msgs
115 argument in much of mh-comp.el should really be converted to
116 msg-or-seq accordingly. But not now, unless something is broken as
117 was the case here. We can revamp after the release.
119 2003-04-13 Bill Wohler <wohler@newt.com>
121 * mh-funcs.el (mh-kill-folder): Added space after prompt to give
122 the (yes or no) bit a little elbow room.
124 * mh-xemacs-toolbar.el: Removing a copyright is a no-no.
125 Reinstated Steve's copyright.
127 2003-04-12 Satyaki Das <satyaki@theforce.stanford.edu>
129 * mh-utils.el (mh-do-in-gnu-emacs, mh-do-in-xemacs): Add
130 indentation hooks for the macros.
132 2003-04-11 Bill Wohler <wohler@newt.com>
134 * mh-alias.el, mh-comp.el, mh-customize.el, mh-funcs.el,
135 mh-identity.el, mh-inc.el, mh-index.el, mh-junk.el, mh-utils.el:
136 Merged in changes from CVS GNU Emacs. These included the removal
137 of trailing whitespace.
139 * mh-customize.el: The "anti-entropy" check-in. Moved groups
140 around slightly to reflect commentary. Moved defcustoms around
141 to preserve alphabetization. Big diff, little content.
142 (mh-xemacs-use-toolbar-flag): Doc fix.
143 (mh-xemacs-toolbar-position): Fixed typo in docstring.
144 (mh-default-folder-list): Updated docstring to reflect new Check
145 Recipient tag. Also, set type of Address to regexp.
146 (mh-x-mailer-string): Moved to mh-comp.el where it is used.
148 * mh-comp.el (mh-x-mailer-string): Moved here from customize.el.
149 Not quite sure how it got to mh-customize.el in the first place.
151 * mh-e.el (mh-folder-folder-menu): Added Folder -> View New
154 * mh-utils.el (mh-show-folder-menu): Ditto.
156 * mh-inc.el: Added Change Log comment (lm-verify fix).
158 * mh-index.el (mh-index-search): Added documentation about prefix
159 argument for users, in addition to documentation for programmers.
161 * mh-mime.el (mh-edit-mhn, mh-edit-mhn, mh-mml-to-mime): Docstring
162 fixes germaine to the change whereby we now check for MIME
163 directives before sending.
165 * mh-xemacs-toolbar.el: Fixed copyright. Added Change Log comment
166 (lm-verify fix). Added standard MH-E local variables. Removed
169 2003-04-11 Satyaki Das <satyaki@theforce.stanford.edu>
171 * mh-seq.el (mh-iterate-on-msg-or-seq): Add a missed comma.
173 2003-04-10 Satyaki Das <satyaki@theforce.stanford.edu>
175 * mh-index.el (mh-index-visit-folder): Prompt before reusing
176 existing folder buffer.
178 * mh-xemacs-toolbar.el (require): Require mh-utils at compile
179 time to avoid compilation error when doing "make bootstrap" in
182 * mh-inc.el (mh-inc-spool-list): Declare it so that a compile
183 time warning is avoided when doing "make bootstrap" in CVS Emacs.
185 2003-04-10 Peter S Galbraith <psg@debian.org>
187 * mh-inc.el (mh-inc-spool-generator): Changed to a defun instead
188 of a defmacro, applying Satyaki's patch.
189 (mh-inc-spool-def-key): same.
190 (mh-inc-spool-make): same.
192 * mh-utils.el: define-key "I" in mh-show-mode-map for
195 * mh-comp.el (mh-modify-header-field): Remove debug message.
197 2003-04-10 Peter S Galbraith <psg@debian.org>
199 * mh-inc.el (mh-inc-spool-map-help): Default to nil.
200 (mh-inc-spool-map): Make "?" key display message when
201 `mh-inc-spool-map-help' is nil (instead of mh-inc-spool-map-help
202 containing the message).
204 * mh-e.el: require mh-inc.el
205 * mh-e.el: define-key "I" in mh-folder-mode-map for mh-inc-spool-map.
206 (mh-help-messages): Add help string for "I" key.
208 2003-04-09 Peter S Galbraith <psg@debian.org>
210 * mh-inc.el: New file. New feature to `inc' mail from various
211 spool files into different folders.
213 * mh-loaddefs.el: Regenerate for mh-inc's mh-inc-spool-list-set.
215 * Makefile (MH-E-IMG): Add highlight icon.
216 (MH-E-SRC): Add mh-inc.el file.
218 * mh-customize.el (mh-inc-spool-list): New variable for new
219 feature to `inc' mail from various spool files into different
222 2003-04-09 Satyaki Das <satyaki@theforce.stanford.edu>
224 * mh-utils.el (mh-mail-delivery-buffer): Add a defconst for
225 mh-mail-delivery-buffer.
227 * mh-comp.el (mh-send-letter): Use mh-mail-delivery-buffer.
229 * mh-mime.el (mh-small-image-p): Add mh-funcall-if-exists to
230 avoid compiler warning in GNU Emacs.
232 2003-04-08 Satyaki Das <satyaki@theforce.stanford.edu>
234 * mh-mime.el (mh-small-image-p): Make the function slightly more
235 error-resistant in XEmacs.
237 * mh-seq.el (mh-narrow-to-seq, mh-widen): Update tool-bar-map in
238 the show buffer if needed. This allows us to display the widen
239 button in the show buffer only when the folder is narrowed.
241 * mh-customize.el (mh-tool-bar-define): Changed so that a
242 separate tool-bar-map is used in show-mode when folder is
243 narrowed to a sequence.
245 2003-04-08 Satyaki Das <satyaki@theforce.stanford.edu>
247 * mh-seq.el (mh-iterate-on-msg-or-seq): Reinstate the use of
248 make-symbol since using gensym causes compiler warnings in CVS
251 2003-04-08 Bill Wohler <wohler@newt.com>
253 * mh-comp.el (mh-forward): Function didn't handle a region of
254 messages. Use new function mh-msg-or-seq-to-msg-list to get a list
255 of messages in all circumstances. Also, use mh-coalesce-msg-list
256 on message list before submitting to forw since this should always
257 be done when calling a program to reduce the chance of exceeding
260 * mh-seq.el (mh-iterate-on-msg-or-seq): Backed out previous
261 change. A nil msg-or-seq should mean no messages, and Satyaki is
262 going to use gensym instead of make-symbol.
263 (mh-msg-or-seq-to-msg-list): New function to convert a msg-or-seq
264 to a list of message numbers.
266 * mh-e.el (mh-coalesce-msg-list): Touched up the docstring a
269 * mh-funcs.el (mh-print-msg): Can now print regions, message
270 lists, sequences and, of course, single messages. This version
271 works a little differently from the old version. Instead of
272 calling mhl | lpr once on all messages, mhl | lpr is called once
273 per message in order to put each message's number in the header.
274 Thanks to Satyaki for some code and ideas.
276 * mh-seq.el (mh-iterate-on-msg-or-seq): The argument msg-or-seq
277 can now be nil which means the current message. Make local symbols
278 so that local variables don't step on user's symbols (the msgs
281 2003-04-06 Bill Wohler <wohler@newt.com>
283 * mh-comp.el (mh-forward): Updated docstrings to indicate that a
284 list of messages is acceptable as well.
286 * mh-e.el (mh-delete-msg, mh-delete-msg-no-motion, mh-refile-msg)
287 (mh-undo, mh-notate-user-sequences, mh-delete-msg-from-seq): Ditto.
289 * mh-funcs.el (mh-copy-msg, mh-print-msg): Ditto.
291 * mh-junk.el (mh-junk-blacklist, mh-junk-whitelist): Ditto.
293 * mh-seq.el (mh-put-msg-in-seq, mh-iterate-on-msg-or-seq)
294 (mh-interactive-msg-or-seq): Ditto.
296 2003-04-06 Satyaki Das <satyaki@theforce.stanford.edu>
298 * mh-junk.el (mh-junk-blacklist, mh-junk-whitelist): Call
299 mh-refile-a-msg and mh-delete-a-msg with nil as the message
300 number since that is more efficient.
302 * mh-seq.el (mh-iterate-on-msg-or-seq): Extended so that it will
303 handle lists of messages numbers as well.
304 (mh-put-msg-in-seq): Use mh-iterate-on-msg-or-seq to simplify the
307 * mh-funcs.el (mh-copy-msg): Same as above.
309 * mh-e.el (mh-refile-msg): Make it more efficient. Using nil in
310 mh-refile-a-msg avoids needing to re-search-forward to that
312 (mh-undo): Fix typo in interactive spec.
313 (mh-notate-user-sequences): Generalize the function to take a
314 msg-or-seq as argument.
315 (mh-delete-msg-from-seq): Extend the function so that it is now
316 able to subtract messages belonging in one sequence from another.
317 (mh-undo): Unify the region and sequence handling. The message
318 number branch of the function does extra stuff, so we can't merge
321 2003-04-06 Bill Wohler <wohler@newt.com>
323 * mh-comp.el (mh-forward): Use mh-interactive-msg-or-seq. Inserted
324 consistent verbiage in docstring for msg-or-seq.
325 (mh-reply): Don't mention default in opening line in all
328 * mh-e.el (mh-delete-msg, mh-refile-msg)
329 (mh-undo, mh-delete-msg-from-seq): Use mh-interactive-msg-or-seq.
330 Inserted consistent verbiage in docstring for msg-or-seq. In
331 mh-delete-msg-from-seq, renamed msg-or-region to msg-or-seq.
333 * mh-funcs.el (mh-copy-msg, mh-print-msg): Use
334 mh-interactive-msg-or-seq. Inserted consistent verbiage in
335 docstring for msg-or-seq.
337 * mh-junk.el (mh-junk-blacklist, mh-junk-whitelist): Inserted
338 consistent verbiage in docstring for msg-or-seq.
340 * mh-seq.el (mh-msg-is-in-seq): Don't mention default in opening
341 line in all docstrings.
342 (mh-put-msg-in-seq): Use mh-interactive-msg-or-seq. Inserted
343 consistent verbiage in docstring for msg-or-seq.
345 * mh-e.el (mh-delete-msg, mh-delete-msg-no-motion, mh-refile-msg):
346 Rewritten to use new mh-interactive-msg-or-seq function and
347 mh-iterate-on-msg-or-seq macro. mh-delete-msg-no-motion gained the
348 ability to operate on regions.
350 * mh-junk.el (mh-junk-blacklist, mh-junk-whitelist): Rewritten to
351 use new mh-interactive-msg-or-seq function and
352 mh-iterate-on-msg-or-seq macro thereby gaining the ability to
353 operate on sequences or regions.
355 * mh-seq.el (mh-iterate-on-msg-or-seq): New macro to execute code
356 on a message, a region of messages, or a sequence. This macro
357 should be in all functions that operate on messages to provide a
359 (mh-interactive-msg-or-seq): New function used in interactive
360 calls to obtain a message number, region, or sequence. This
361 function should be in all functions that operate on messages to
362 provide a uniform interface.
364 * mh-utils.el (with-mh-folder-updating, mh-in-show-buffer): Use
365 'defun lisp-indent-hook property instead of 1 to fix indentation
368 2003-04-05 Peter S Galbraith <psg@debian.org>
370 * mh-loaddefs.el: Regenerated.
371 * mh-funcs.el (mh-ephem-message): autoload.
373 2003-04-04 Peter S Galbraith <psg@debian.org>
375 * mh-e.el (mh-folder-from-address): Minor Fix. Wrong ending of
378 2003-04-04 Satyaki Das <satyaki@theforce.stanford.edu>
380 * mh-mime.el (mh-mml-directive-present-p): The regexp has been
381 modified to recognize directives to encrypt/sign messages.
383 2003-04-03 Mark D. Baushke <mdb@gnu.org>
385 * mh-e.el (mh-folder-from-address): E-mail messages missing the
386 To: field, but which have a Cc: field should also be handled.
388 2003-04-03 Bill Wohler <wohler@newt.com>
390 * mh-e.el (mh-inc-folder): Modified the prompt text to read
393 * mh-comp.el (mh-forward): Deleted local variable `compose'.
394 Deleted obsolete setting of mh-{mmh|mml}-compose-insert-flag.
395 (mh-letter-menu): Use mh-{mmh|mml}-directive-present-p instead of
396 obsolete. mh-{mmh|mml}-compose-insert-flag.
397 (mh-letter-mode): Deleted obsolete setting of
398 mh-{mmh|mml}-compose-insert-flag.
399 (mh-send-letter): This function now automatically runs the
400 directive-to-MIME conversion if any directives are detected,
401 rather than relying on the unreliable
402 mh-{mmh|mml}-compose-insert-flag variables. Updated docstring
405 * mh-identity.el (mh-insert-identity): Use
406 mh-{mmh|mml}-directive-present-p instead of obsolete.
407 mh-{mmh|mml}-compose-insert-flag.
409 * mh-loaddefs.el: Regenerated.
411 * mh-mime.el (mh-mhn-compose-type, mh-mhn-compose-external-type)
412 (mh-mhn-compose-forw, mh-edit-mhn, mh-mml-to-mime)
413 (mh-mml-forward-message, mh-mml-attach-file)
414 (mh-mml-secure-message-sign-pgpmime)
415 (mh-mml-secure-message-encrypt-pgpmime): Deleted obsolete setting
416 of mh-{mmh|mml}-compose-insert-flag.
417 (mh-mml-directive-present-p): Checkdoc fix.
419 * mh-utils.el (mh-mhn-compose-insert-flag,
420 mh-mml-compose-insert-flag): Deleted. Replaced by
421 mh-{mhn|mml}-directive-present-p.
423 2003-04-03 Mark D. Baushke <mdb@gnu.org>
425 * mh-e.el (mh-folder-from-address): Fix minor problem with To:
428 * mh-e.el (mh-folder-from-address): Bugfix match ?+ character not
431 2003-04-03 Peter S Galbraith <psg@debian.org>
433 * mh-e.el (mh-inc-folder): Add second optional argument for the
434 folder to inc new mail into instead of mh-inbox.
436 2003-04-03 Peter S Galbraith <psg@debian.org>
438 * mh-e.el (mh-folder-from-address): The first match found in
439 `mh-default-folder-list' is used.
441 * mh-customize.el (mh-default-folder-list): Tweak docs
443 2003-04-03 Satyaki Das <satyaki@theforce.stanford.edu>
445 * mh-loaddefs.el: Regenerated.
447 * mh-mime.el (mh-mhn-directive-present-p): New function to test if
448 a MHN directive is present in the current buffer.
449 (mh-mml-directive-present-p): New function to test if a MML
450 directive is present in the current buffer.
452 * mh-comp.el (mh-letter-mode): Originally this function checked if
453 a #forw directive was present and set mh-mhn-compose-insert-flag
454 to t. The modification generalizes this test so that one of the
455 variables mh-{mml|mhn}-compose-insert-flag will get set if we have
456 any sort of MHN or MML directive is already present.
458 * mh-seq.el (tool-bar-map): Add a defvar to avoid compiler
459 warnings in CVS version of GNU Emacs.
461 * mh-utils.el (tool-bar-map): Same as above.
463 * mh-e.el (tool-bar-map): same as above.
465 2003-04-02 Satyaki Das <satyaki@theforce.stanford.edu>
467 * mh-xemacs-toolbar.el (mh-xemacs-toolbar-toggle-tick-icon):
468 Change color to match mh-folder-tick-face.
470 * highlight.xpm: Same as above.
472 2003-04-02 Peter S Galbraith <psg@debian.org>
474 * mh-e.el (mh-folder-from-address): Check `mh-default-folder-list'
475 for cases against the recipient instead of the originator.
477 * mh-customize.el (mh-default-folder-list): Add extra boolean flag
478 to conditionally check the recipient address instead of the
481 2003-04-02 Peter S Galbraith <psg@debian.org>
483 * mh-customize.el (mh-folder-tick-face): Change tick highlight
484 face to a background yellow-green, as suggested by Bill.
486 2003-04-01 Peter S Galbraith <psg@debian.org>
488 * highlight.xpm: New icon for mh-toggle-tick.
490 * mh-xemacs-toolbar.el (mh-xemacs-icon-map): Add tool-bar entry
492 (mh-xemacs-toolbar-toggle-tick-icon): New constant.
494 * mh-customize.el: Add tool-bar entry for mh-toggle-tick.
496 2003-03-31 Satyaki Das <satyaki@theforce.stanford.edu>
498 * mh-loaddefs.el: Regenerated.
500 * mh-utils.el (mh-show-narrow-to-tick, mh-show-limit-map)
501 (mh-show-sequence-menu): Add new interactive function
502 mh-show-narrow-to-tick callable from the show buffer and arrange
503 for a key binding and a menu entry.
505 * mh-seq.el (mh-narrow-to-tick): New interactive function that
506 narrows to the tick sequence.
508 * mh-e.el (mh-folder-sequence-menu, mh-limit-map): Arrange for a
509 key binding and a menu entry for mh-narrow-to-tick.
511 * mh-comp.el (mh-letter-mode): Enable undo since we could be
512 reusing a show buffer where undo is disabled (closes SF #712777).
514 2003-03-31 Peter S Galbraith <psg@debian.org>
516 * mh-e.el (mh-folder-sequence-menu): Add entry for mh-toggle-tick.
518 * mh-utils.el (mh-show-sequence-menu): Add entry for
521 2003-03-28 Satyaki Das <satyaki@theforce.stanford.edu>
523 * mh-seq.el (mh-delete-seq): If the tick sequence is killed with
524 "S k" then the highlighting wasn't getting removed. The change
527 2003-03-27 Satyaki Das <satyaki@theforce.stanford.edu>
529 * mh-e.el (mh-notate-user-sequences): Extend it so that only the
530 messages in a part of the folder are notated.
531 (mh-delete-msg-from-seq): Extend it so that it will delete all
532 messages in the marked region.
533 (mh-delete-a-msg-from-seq): New function that deletes a single
534 message from a sequence.
535 (mh-clear-text-properties): If there is a ticked unseen message
536 and the message is removed from the unseen list with "S d" then
537 unticking the message doesn't change the highlight. This change
540 2003-03-27 Peter S Galbraith <psg@debian.org>
542 * mh-xemacs-toolbar.el (mh-xemacs-toolbar-*-icon): Use original
543 24x24 icons, changing background only.
545 2003-03-27 Satyaki Das <satyaki@theforce.stanford.edu>
547 * mh-junk.el (mh-spamassassin-identify-spammers): Remove unused
548 variable buffer-exists.
549 (mh-spamassassin-identify-spammers): Remove unused variable user.
551 * mh-customize.el (mh-junk-choose): Tweak it to remove XEmacs
554 2003-03-26 Satyaki Das <satyaki@theforce.stanford.edu>
556 * mh-seq.el (mh-thread-print-scan-lines): Handling of a boundary
557 condition when messages from the last source folder had been
558 removed was incorrect. This caused a folder header to appear
559 without any messages listed under it. This change fixes this.
560 (mh-thread-forget-message): Remove the entry from the scan line
561 table as well. This is needed for proper display of threaded view
564 2003-03-26 Bill Wohler <wohler@newt.com>
566 * Makefile, README, import-emacs, mh-alias.el, mh-comp.el,
567 mh-customize.el, mh-e.el, mh-funcs.el, mh-identity.el,
568 mh-index.el, mh-loaddefs.el, mh-mime.el, mh-pick.el, mh-seq.el,
569 mh-speed.el, mh-utils.el, mh-xemacs-compat.el,
570 mh-xemacs-toolbar.el: Removed RCS keywords per Emacs conventions
574 2003-03-26 Satyaki Das <satyaki@theforce.stanford.edu>
576 * mh-index.el: Fix commentary to mention that mairix is supported
579 * mh-loaddefs.el: Regenerated.
581 * mh-utils.el (mh-show-junk-blacklist, mh-show-junk-whitelist):
582 Interactive functions callable from the show buffer.
583 (mh-show-junk-map): Key bindings in show mode.
585 * mh-e.el (mh-junk-map): Key bindings to call spam program.
586 (mh-help-messages): Update help text.
588 * mh-customize.el (mh-junk): New customization group for spam
590 (mh-junk-choice, mh-junk-function-alist, mh-junk-choose):
591 Functions and variables that decide which junk program is used.
592 (mh-junk-program, mh-junk-mail-folder): User customizable
593 variables that control the choice of spam program and the action
594 performed on received spam.
596 * Makefile (MH-E-SRC): Add mh-junk.el.
598 2003-03-26 Satyaki Das <satyaki@theforce.stanford.edu>
600 * mh-loaddefs.el: Regenerated.
602 * mh-utils.el (mh-show-toggle-tick, mh-show-mode-map): New
603 interactive function callable from the show buffer and a key
606 * mh-seq.el (mh-delete-seq): Remove highlight from tick sequence.
607 (mh-put-msg-in-seq): Disable adding messages to tick sequence.
608 (mh-widen): Reset mh-tick-seq-changed-when-narrowed-flag.
609 (mh-tick-add-overlay, mh-tick-remove-overlay, mh-notate-tick)
610 (mh-toggle-tick): New functions to highlight/unhighlight tick
611 sequence and the interactive function that is used to toggle
614 * mh-e.el (mh-tick-seq-changed-when-narrowed-flag): New variable
615 that remembers if we are narrowed to the tick sequence. In that
616 case the highlighting isn't shown, since it adds no extra info.
617 (mh-folder-mode): Initialize mh-tick-seq-changed-when-narrowed-flag.
618 (mh-notate-user-sequences): Notate the tick sequence.
619 (mh-internal-seq): Treat mh-tick-seq like an internal sequence.
620 (mh-delete-msg-from-seq): Don't allow deletion from tick sequence.
621 (mh-folder-mode-map): Add key binding for "'"
623 * mh-customize.el (mh-tick-seq, mh-folder-tick-face): New
624 customizable variables that contain the name of the tick sequence
625 and the face to use to highlight it.
627 2003-03-25 Satyaki Das <satyaki@theforce.stanford.edu>
629 * mh-loaddefs.el: Regenerated.
631 * mh-seq.el (mh-thread-print-scan-lines): New function which
632 prints out thread tree. It maintains the original folder info if
633 the folder was created by index search (closes SF #709672).
634 (mh-copy-seq-to-eob, mh-thread-inc, mh-thread-folder): Use
635 factored out function mh-thread-print-scan-lines.
636 (mh-toggle-threads): Since threading is allowed in index folders
637 there can be lines in the folder which aren't valid message scan
638 lines. So it is OK for mh-get-msg-num to fail once in a while.
640 * mh-index.el (mh-index-update-maps): Make the parsing of messages
641 that need to annotated with the X-MHE-Checksum header more robust.
642 If the search yielded no results then an error was being produced.
643 (mh-index-search): Enable automatic threading of index folders if
644 mh-show-threads-flag is non-nil (closes SF #709667).
645 (mh-index-next-folder): Relax error checking since index folder
646 can be threaded while the source folder info is visible.
647 (mh-index-group-by-folder): New function that is used in
648 mh-thread-folder to keep source folder info visible during
651 2003-03-25 Bill Wohler <wohler@newt.com>
653 * mh-loaddefs.el: Regenerated.
655 * mh-customize.el (mh-index-new-messages-folders): New variable
656 that controls which folders "F n (mh-index-new-messages)"
657 accesses. Was mh-flists-search-folders.
659 * mh-index.el (mh-flists-search-folders): Still used internally,
660 but users now use new option mh-index-new-messages-folders.
661 Removed documentation since to avoid duplication with
662 mh-index-new-messages-folders.
663 (mh-flists-recursive-search-flag): Deleted. Use
664 mh-recursive-folders-flag instead.
665 (mh-flists-execute): Updated docs to specify which global
666 variables are used. Use mh-recursive-folders-flag instead of
667 mh-flists-recursive-search-flag.
668 (mh-index-new-messages): Edited doc, and refer to new option
669 mh-index-new-messages-folders. Ditto within code. Don't need to
670 prepend + to folder name as flists does that for us. Use
672 2003-03-24 Satyaki Das <satyaki@theforce.stanford.edu>
674 * mh-e.el (mh-refile-msg): Add optional argument that controls
675 whether mh-last-destination-folder is updated or not.
677 2003-03-22 Satyaki Das <satyaki@theforce.stanford.edu>
679 * mh-customize.el (mh-tool-bar-define): Fix a problem in the
680 XEmacs version which caused the show mode toolbar to have the
681 buttons in the reverse order. Also the add-hooks are no longer
682 needed since mh-toolbar-init is called in the appropriate modes.
684 * mh-comp.el (mh-letter-mode): Call mh-toolbar-init in XEmacs to
687 * mh-utils.el (mh-show-mode): Same as above.
689 * mh-e.el (mh-folder-mode): Same as above.
691 2003-03-21 Satyaki Das <satyaki@theforce.stanford.edu>
693 * mh-utils.el (mh-exec-cmd-env-daemon): New function which
694 executes a command asynchronously with its own environment.
696 * mh-comp.el (mh-redistribute): The function has been modified so
697 that /bin/sh isn't used to run send. It has also been refactored
698 so that the same code isn't repeated.
700 2003-03-21 Bill Wohler <wohler@newt.com>
702 * mh-customize.el (mh-invisible-header-fields): Added X-Bogosity
705 2003-03-21 Satyaki Das <satyaki@theforce.stanford.edu>
707 * mh-loaddefs.el: Regenerated.
709 * mh-xemacs-toolbar.el: Remove the code since that gets generated
710 when mh-tool-bar-define is expanded.
711 (mh-xemacs-icon-map): A alist to map GNU Emacs icon names to the
712 actual icons to be used in XEmacs. This is used in
715 * mh-customize.el (mh-toolbar): Use this group in XEmacs as well.
716 (mh-tool-bar-item-*): All these constants have been removed since
717 they aren't needed in the new scheme.
718 (mh-tool-bar-reply-3-buttons-flag): This variable has been
720 (mh-tool-bar-search-function): This is now used in XEmacs as well.
721 (mh-tool-bar-folder-set, mh-tool-bar-folder-buttons-set)
722 (mh-tool-bar-letter-buttons-set, mh-tool-bar-show-set)
723 (mh-tool-bar-letter-set): These functions aren't defined at the
725 (mh-tool-bar-reply-generator): A macro to generate the required
726 functions for the three reply buttons.
727 (mh-tool-bar-search, mh-tool-bar-customize)
728 (mh-tool-bar-folder-help, mh-tool-bar-letter-help)
729 (mh-tool-bar-reply-from, mh-show-tool-bar-reply-from)
730 (mh-tool-bar-reply-to, mh-show-tool-bar-reply-to)
731 (mh-tool-bar-reply-all, mh-show-tool-bar-reply-all): New
732 interactive functions that are called when tool bar buttons are
734 (mh-xemacs-use-toolbar-flag, mh-xemacs-toolbar-position):
735 Additional customizable variables that are present only for
737 (mh-tool-bar-define): A macro that generates the required code
738 for GNU Emacs and XEmacs tool bar.
739 (mh-tool-bar-define): Define the MH-E tool bar.
741 2003-03-17 Satyaki Das <satyaki@theforce.stanford.edu>
743 * mh-seq.el (mh-notate-cur): Notate current message only if it
744 hasn't been marked for deletion or refiling.
746 2003-03-15 Bill Wohler <wohler@newt.com>
748 * mh-customize.el (mh-invisible-header-fields): Added
749 X-Spam-Checker-Version.
750 (mh-auto-fields-list): checkdoc fix.
752 2003-03-12 Satyaki Das <satyaki@theforce.stanford.edu>
754 * mh-index.el (mh-index-new-messages): If the destination folder
755 where the unseen messages are supposed to be copied to was
756 already present, but MH-E doesn't have it open, then a new folder
757 was being created. The change fixes this.
758 (mh-index-update-unseen, mh-flists-recursive-search-flag): Fix
761 * mh-loaddefs.el: Regenerated.
763 2003-03-11 Satyaki Das <satyaki@theforce.stanford.edu>
765 * mh-index.el (mh-flists-results-folder): Subfolder under
766 +mhe-index where the results of the flists call is put.
767 (mh-index-generate-pretty-name): Make sure that normal index
768 searching will never use the folder reserved for the flists
770 (mh-index-search): Add an extra parameter that marks all the
771 messages in the index folder to the unseen sequence.
772 (mh-index-update-unseen): Function to keep unseen sequence of
773 index folder synced with the actual folders from where the
774 messages were copied. This works only if the unseen messages are
775 displayed with mh-show. Killing the unseen sequence in the index
776 folder or adding/removing messages to it doesn't change the
777 unseen sequence in the source folders yet.
778 (mh-flists-search-folders): Variable that decides the folders on
780 (mh-flists-recursive-search-flag): If non-nil, flists is passed
782 (mh-flists-execute): Function which uses /bin/sh to execute
783 flists and then print out the list of message files that match.
784 (mh-index-new-messages): New interactive function which searches
785 for messages in the unseen sequence (closes SF #701756).
787 * mh-utils.el (mh-show-folder-map): Add binding for
788 mh-index-new-messages.
789 (mh-show-msg): Update the unseen sequence in the source folder.
791 * mh-e.el (mh-folder-font-lock-unseen): The function assumes that
792 the end of buffer is reached when there isn't a valid scan line
793 on the current line. This doesn't work in the index folder since
794 we have lines containing the folder name and empty lines in
795 between the actual scan lines. The modification removes this
797 (mh-folder-map): Add key binding for "Fn"
799 * mh-seq.el (mh-iterate-on-messages-in-region): If the point is
800 not at the beginning of the line, then the first message in the
801 region would be missed. The fix avoids this.
803 * mh-mime.el (mh-inline-vcard-p): Don't try to inline vcards if
804 we don't have the right libraries.
806 2003-03-10 Satyaki Das <satyaki@theforce.stanford.edu>
808 * mh-e.el (mh-next-undeleted-msg, mh-previous-undeleted-msg)
809 (mh-next-msg): Add optional argument wait-after-complaining-flag.
810 If non-nil and there are no undeleted messages after (or before)
811 the current one, then pause for a second after printing out the
813 (mh-refile-or-write-again): Modify call to mh-next-msg to use the
814 wait-after-complaining-flag.
816 2003-03-10 Satyaki Das <satyaki@theforce.stanford.edu>
818 * mh-e.el (mh-refile-or-write-again): If mh-next-msg fails to find
819 a message to go to it prints out a diagnostic, which overwrites
820 the diagnostic about the folder the message was refiled to. The
823 2003-03-09 Satyaki Das <satyaki@theforce.stanford.edu>
825 * mh-seq.el (mh-widen, mh-narrow-to-seq): Update
826 mh-narrowed-to-seq before notating sequences. This is a bit
827 helpful for mh-tick.el.
828 (mh-put-msg-in-seq): Fix a minor bug. No internal sequence should
829 be notated -- the original code was doing the right thing only for
830 the "unseen" sequence.
832 * mh-index.el (mh-index-choose): Add autoload cookie for
833 mh-index-choose. This is needed for GNU Emacs 20.5.
835 * mh-loaddefs.el: Regenerated.
837 2003-03-09 Bill Wohler <wohler@newt.com>
839 * mh-mime.el (mh-display-smileys): This function originally had a
840 test to see if font-lock-maximum-size was bound, but this was
841 recently removed. The test was put in for a reason; if
842 font-lock-maximum-size isn't bound, void-variable errors would
843 ensue. I put the bound test back in.
845 2003-03-08 Steve Youngs <youngs@xemacs.org>
847 * mh-mime.el (mh-mime-security-button-map): Use 'mh-push-button'
850 2003-03-07 Satyaki Das <satyaki@theforce.stanford.edu>
852 * mh-xemacs-toolbar.el: Declare a whole bunch of stuff for GNU
853 Emacs, so that we don't get so many compiler warnings. Also
854 surround calls to set-specifier and toolbar-make-button-list with
855 mh-funcall-if-exists. Maybe GNU Emacs shouldn't try to compile
856 this file in the first place.
858 * mh-xemacs-compat.el (mh-modeline-glyph): Declare it within
859 mh-do-in-xemacs to avoid compiler warning in GNU Emacs.
860 (mh-xemacs-push-button): Removed.
862 * mh-mime.el (mh-mime-button-map): Use the generalized
863 mh-push-button function.
864 (mh-push-button): Enhance it so that it works on XEmacs too.
866 2003-03-08 Steve Youngs <youngs@xemacs.org>
868 * mh-xemacs-compat.el (mh-modeline-logo): New constant holding the
870 (mh-modeline-glyph): Use it.
872 2003-03-08 Steve Youngs <youngs@xemacs.org>
874 * mh-xemacs-toolbar.el: New file that defines and displays a
877 * mh-xemacs-compat.el (mh-xemacs-toolbar): Require it here.
879 * Makefile (MH-E-SRC): Add mh-xemacs-toolbar.el.
881 * mh-customize.el (mh-toolbar):
882 (mh-tool-bar-letter-buttons):
883 (mh-tool-bar-letter-buttons-set):
884 (mh-tool-bar-folder-buttons):
885 (mh-tool-bar-folder-buttons-set):
886 (mh-tool-bar-search-function):
887 (mh-tool-bar-reply-3-buttons-flag):
888 (mh-tool-bar-item-inc):
889 (mh-tool-bar-item-save-mime):
890 (mh-tool-bar-item-prev-msg):
891 (mh-tool-bar-item-page-msg):
892 (mh-tool-bar-item-next-msg):
893 (mh-tool-bar-item-delete):
894 (mh-tool-bar-item-refile):
895 (mh-tool-bar-item-undo):
896 (mh-tool-bar-item-perform):
897 (mh-tool-bar-item-toggle-show):
898 (mh-tool-bar-item-reply-from):
899 (mh-tool-bar-item-reply-to):
900 (mh-tool-bar-item-reply-all):
901 (mh-tool-bar-item-reply):
902 (mh-tool-bar-item-alias):
903 (mh-tool-bar-item-compose):
904 (mh-tool-bar-item-rescan):
905 (mh-tool-bar-item-repack):
906 (mh-tool-bar-item-search):
907 (mh-tool-bar-item-visit):
908 (mh-tool-bar-item-prefs):
909 (mh-tool-bar-item-help):
910 (mh-tool-bar-item-widen):
911 (mh-tool-bar-item-send):
912 (mh-tool-bar-item-attach):
913 (mh-tool-bar-item-spell):
914 (mh-tool-bar-item-save):
915 (mh-tool-bar-item-undo-op):
916 (mh-tool-bar-item-kill):
917 (mh-tool-bar-item-copy):
918 (mh-tool-bar-item-paste):
919 (mh-tool-bar-item-kill-draft):
920 (mh-tool-bar-item-comp-prefs):
921 The MH-E toolbar for XEmacs is defined differently from the
922 GNU/Emacs version, so only define these if we're in GNU/Emacs.
923 XEmacs doesn't need to see them and it's always good to cut down
926 2003-03-08 Steve Youngs <youngs@xemacs.org>
928 * mh-mime.el (mh-mime-button-map): Bind the 2nd mouse button to
929 `mh-xemacs-push-button' in XEmacs.
930 (mh-mime-security-button-map): Ditto.
932 * mh-xemacs-compat.el: Shush the byte-compiler.
933 (mh-xemacs-push-button): New function to make MIME buttons work in
936 2003-03-08 Steve Youngs <youngs@xemacs.org>
938 * mh-mime.el (mh-display-emphasis): Don't test
939 `font-lock-maximum-size' to see if it is bound, just test for a
940 non-nil value. This variable can have a nil value which makes it
941 bound and dividing nil by 8 throws an error.
942 This fixes a bug in MH-E under XEmacs when
943 `font-lock-maximum-size' is nil that prevented article emphasis
944 and smiley display which in turn was causing the "Flush changes in
945 article x y/n" errors.
946 (mh-display-smileys): Ditto.
948 2003-03-08 Steve Youngs <youngs@xemacs.org>
950 * mh-utils.el (mh-logo-display): Display logo in XEmacs as well.
952 * mh-xemacs-compat.el (mh-modeline-glyph): New. The MH-E modeline
955 2003-03-06 Satyaki Das <satyaki@theforce.stanford.edu>
957 * mh-utils.el (mh-allow-root-folder-flag): New global variable
958 that decides if "+" is an acceptable folder name.
959 (mh-folder-completion-function): Refine the test for existing
960 folders to take mh-allow-root-folder-flag into account.
961 (mh-folder-completing-read, mh-prompt-for-folder): Use the
962 allow-root-folder-flag argument of mh-prompt-for-folder and add a
963 similar argument to mh-folder-completing-read.
964 (mh-exec-cmd-error): Make the function nicer by using
965 process-environment to pass the environment variable assignments.
967 2003-03-05 Satyaki Das <satyaki@theforce.stanford.edu>
969 * mh-mime.el (mh-push-button): Preserve point in the show buffer
970 if the mouse is used to expand/contract a button.
972 * mh-customize.el (mh-x-face-file): Mention X-Image-URL in
975 * mh-comp.el (mh-insert-x-face): Modified to allow insertion of
976 X-Image-URL header field.
978 2003-03-04 Satyaki Das <satyaki@theforce.stanford.edu>
980 * mh-utils.el (mh-face-display-function): Modified to facilitate
981 display of X-Image-URL images.
982 (mh-find-path): Initialize X-Image-URL cache directory.
983 (mh-x-image-url-cache-canonicalize, mh-x-image-url-fetch-image)
984 (mh-x-image-scale-and-display, mh-x-image-url-display)
985 (mh-x-image-display): New functions for X-Image-URL image display
986 and cache management.
988 * mh-customize.el (mh-show-use-xface-flag): Add info about
989 requirements for X-Image-URL display.
990 (mh-fetch-x-image-url): New customizable variable that controls
991 fetching of X-Image-URL.
993 2003-03-04 Satyaki Das <satyaki@theforce.stanford.edu>
995 * mh-utils.el (mh-make-local-hook): New macro which works around
996 API changes in add-hook. Version of GNU Emacs before 21.1 and
997 XEmacs require a call to make-local-hook and just the LOCAL
998 argument of add-hook is not sufficient.
999 (mh-show-mode): Make kill-buffer-hook buffer local.
1001 * mh-e.el (mh-folder-mode): Same as above.
1003 * mh-comp.el (mh-compose-and-send-mail): Same as above.
1005 2003-03-02 Satyaki Das <satyaki@theforce.stanford.edu>
1007 * mh-mime.el (mh-push-button): Clicking on a MIME button used to
1008 cause the window with the show buffer to be selected. With this
1009 change the selected window doesn't change.
1011 2003-03-01 Satyaki Das <satyaki@theforce.stanford.edu>
1013 * mh-speed.el (mh-speed-flists): Avoid a potential race condition.
1014 When flists is called manually, or when an unseen message is read,
1015 mh-speed-partial-line was not reinitialized.
1017 * mh-e.el (mh-visit-folder): If mh-visit-folder is used to visit
1018 the folder currently being visited (effectively doing a rescan)
1019 then mh-previous-window-config is erroneously set. The change
1022 * mh-customize.el (mh-index-show-hook): Remove unused variable.
1024 2003-02-28 Satyaki Das <satyaki@theforce.stanford.edu>
1026 * mh-e.el (mh-scan-folder): Call mh-reset-threads-and-narrowing
1027 only after the user has replied to question. This avoids premature
1028 clearing of the folder.
1029 (mh-rescan-folder, mh-visit-folder): Remove calls to
1030 mh-reset-threads-and-narrowing since it is now called in
1031 mh-scan-folder anyway.
1033 * mh-funcs.el (mh-sort-folder): Same as above.
1035 2003-02-26 Satyaki Das <satyaki@theforce.stanford.edu>
1037 * mh-alias.el (mh-alias-alist): Change initial value to a symbol,
1038 so that it is different from the empty list, which could also
1039 mean that there are no aliases.
1040 (mh-alias-reload-maybe): Change test so that empty alist of
1041 aliases is properly handled (closes SF #693859).
1043 2003-02-25 Satyaki Das <satyaki@theforce.stanford.edu>
1045 * mh-mime.el (mh-decode-message-header): The message header could
1046 be encoded, for instance the author's name could contain
1047 characters not in ASCII. This function will decode such header
1049 (mh-mm-inline-message): Use mh-decode-message-header.
1051 * mh-utils.el (mh-display-msg): Use mh-decode-message-header.
1052 (mh-message-number-width): Use mh-scan-prog instead of "scan".
1054 * mh-loaddefs.el: Regenerated.
1056 2003-02-24 Satyaki Das <satyaki@theforce.stanford.edu>
1058 * mh-utils.el (mh-truncate-log-buffer): Refine it so that the
1059 function will do the right thing even if called from a buffer
1060 other than mh-log-buffer.
1062 2003-02-22 Peter S Galbraith <psg@debian.org>
1064 * mh-alias.el (mh-alias-add-alias): Really fix SF #690216.
1065 This functions needs to strip brackets on standalone addresses as
1068 2003-02-21 Satyaki Das <satyaki@theforce.stanford.edu>
1070 * mh-xemacs-compat.el (replace-regexp-in-string): Remove the
1071 definition since it isn't used any more.
1073 2003-02-20 Peter S Galbraith <psg@debian.org>
1075 * mh-alias.el (mh-alias-which-file-has-alias): Bug fix. Needed to
1076 specify `noerror' on search.
1078 * mh-alias.el (mh-alias-suggest-alias): Add condition for input
1079 string being an email address in brackets. We need to strip out
1080 the brackets. (closes SF #690216)
1082 2003-02-20 Satyaki Das <satyaki@theforce.stanford.edu>
1084 * mh-pick.el (mh-search-folder): The function was setting the
1085 global value of the variables mh-current-folder and
1086 mh-previous-window-config. This can lead to problems in code which
1087 assumes that these variables are nil when we aren't in a folder
1088 buffer. So make the variables local before setting them.
1090 2003-02-19 Satyaki Das <satyaki@theforce.stanford.edu>
1092 * mh-mime.el (mh-mime-display): All the MIME display code has been
1093 wrapped in a condition-case so that if something goes wrong, the
1094 raw message will be displayed.
1096 * mh-funcs.el (mh-undo-folder): Comment out call to sit-for that
1099 * mh-e.el (mh-scan-folder): Messages marked for deletion or
1100 refiling weren't getting annotated properly. The change fixes
1102 (mh-process-or-undo-commands): Change prompt to reflect what
1103 really happens in the code.
1105 2003-02-18 Satyaki Das <satyaki@theforce.stanford.edu>
1107 * mh-comp.el (mh-folder-expand-at-point): The function
1108 mail-abbrev-complete-alias often returns nil. This had the
1109 unfortunate consequence of always causing an error. The change
1112 * mh-alias.el (mh-alias-canonicalize-suggestion): New function
1113 which obviates the our need replace-regexp-in-string.
1114 (mh-alias-suggest-alias): Use mh-alias-canonicalize-suggestion to
1115 eliminate calls to replace-regexp-in-string. This avoids problems
1118 * mh-utils.el (mh-notate): Handle the case when nil is passed as
1119 notation gracefully.
1120 (mh-speed-flists-active-p): New function that returns non-nil if
1121 flists is being used in the speedbar to update message counts.
1123 * mh-seq.el (mh-put-msg-in-seq): Fix a bug which made it
1124 impossible to add messages to the unseen sequence. Also adding
1125 messages to the unseen sequence will now update the speedbar
1126 message counts immediately.
1128 * mh-e.el (mh-get-new-mail, mh-process-commands)
1129 (mh-undefine-sequence): Update speedbar message counts, if the
1130 speedbar is active and is displaying message counts.
1131 (mh-delete-msg-from-seq): In addition to updating message counts,
1132 unhighlight the message so that interactively removing messages
1133 from the unseen sequence makes the bold highlight of unseen
1134 messages in the scan buffer go away.
1135 (mh-clear-text-properties): New function that removes all text
1136 properties from the current scan line.
1138 2003-02-15 Satyaki Das <satyaki@theforce.stanford.edu>
1140 * mh-utils.el (mh-face-display-function): Wrap call of
1141 insert-image in mh-funcall-if-exists. This avoids a compiler
1144 * mh-speed.el (mh-speed-flists): Weaken test a bit to avoid
1145 compiler warning in Emacs20.
1146 (mh-speedbar-change-expand-button-char): Wrap call of
1147 speedbar-insert-image-button-maybe in mh-funcall-if-exists. This
1148 function isn't present in the speedbar that ships with Emacs20, so
1149 calling it there causes an error.
1151 * mh-seq.el (mh-msg-is-in-seq): Adjust loop call a bit to avoid
1152 compiler warning in XEmacs. The XEmacs compiler should be improved
1153 so that such spurious warnings from builtin macros are suppressed.
1155 * mh-index.el (mh-index-search): Same as above.
1157 * mh-e.el (tool-bar-mode): The declaration is needed for Emacs20
1160 * mh-comp.el (mailabbrev): Try loading it any way. Some day XEmacs
1161 will get it and then MH-E will just use it.
1162 (tool-bar-mode, tool-bar-map): These declarations are needed for
1164 (mh-mail-abbrev-make-syntax-table, mh-folder-expand-at-point):
1165 Remove mh-mail-abbrev-make-syntax-table since mh-funcall-if-exists
1166 can be used instead.
1168 * mh-alias.el (require): Avoid autoloading functions that may not
1170 (mh-read-address, mh-alias-letter-expand-alias): Rewrite using
1171 mh-funcall-if-exists.
1173 2003-02-15 Satyaki Das <satyaki@theforce.stanford.edu>
1175 * mh-loaddefs.el: Regenerated.
1177 * mh-speed.el (mh-folder-speedbar-buttons, mh-speed-add-buttons)
1178 (mh-speed-toggle): Reuse markers instead of creating more of them.
1179 (mh-speed-flists-folder, mh-speed-flists): Add optional folder
1180 argument to mh-speed-flists so that message counts are updated
1181 only for that one folder.
1182 (mh-speed-parse-flists-output): If no change in counts then avoid
1185 * mh-index.el (mh-index-execute): Rewritten to use a temporary
1186 buffer that is not left behind.
1188 * mh-funcs.el (mh-store-buffer): Use mh-log-buffer instead of the
1189 special purpose *Store Output* buffer.
1191 2003-02-14 Satyaki Das <satyaki@theforce.stanford.edu>
1193 * mh-customize.el (mh-show-xface-face): Make it always be black
1194 foreground on a white background (the reverse of that can make
1195 some X-Face images look creepy).
1197 * mh-utils.el (mh-truncate-log-buffer): Modify the function to
1198 return the current size of mh-log-buffer. Also we are now a bit
1199 more careful in adding separators between consecutive messages.
1200 (mh-exec-cmd): Fix a bug where the the log buffer would be
1201 displayed even if no error happened in the current command but
1202 the log buffer had messages from a previous error.
1204 * mh-mime.el (mh-mime-save-parts): Use mh-log-buffer to show
1207 * mh-alias.el (mh-alias-local-users): Add a space between parens.
1209 2003-02-14 Steve Youngs <youngs@xemacs.org>
1211 * mh-utils.el (mh-face-display-function): Call
1212 `x-face-xmas-wl-display-x-face' using `mh-funcall-if-exists'.
1214 * mh-xemacs-compat.el (replace-regexp-in-string): New.
1216 2003-02-13 Satyaki Das <satyaki@theforce.stanford.edu>
1218 * mh-utils.el (mh-log-buffer-lines): New variable that keeps
1219 track of the number of lines to keep in mh-log-buffer.
1220 (mh-truncate-log-buffer): New function that is used to make sure
1221 that the log buffer doesn't grow to unbounded size.
1222 (mh-exec-cmd, mh-exec-cmd-daemon, mh-handle-process-error): Use
1223 mh-truncate-log-buffer instead of erase-buffer to keep some
1224 number of previous log messages around (closes SF #685476).
1226 2003-02-13 Satyaki Das <satyaki@theforce.stanford.edu>
1228 * mh-e.el (tool-bar-mode): Declare it in XEmacs.
1229 (mh-folder-mode): Use mh-funcall-if-exists to call hl-line-mode.
1231 * mh-utils.el (mh-funcall-if-exists): New macro that calls a
1232 function only if it exists.
1233 (mh-logo-display, mh-defun-show-buffer): Use mh-funcall-if-exists
1234 to call the functions find-image and deactivate-mark.
1236 * mh-mime.el (mh-mime-cleanup, mh-small-image-p)
1237 (mh-mm-display-part): Use mh-funcall-if-exists to call the
1238 functions image-size and remove-images.
1240 * mh-comp.el (tool-bar-map, tool-bar-mode): Declare the variables
1242 (mh-folder-expand-at-point): Use mh-funcall-if-exists to call
1243 mail-abbrev-complete-alias if it exists.
1245 * mh-alias.el (mh-read-address): Use mh-funcall-if-exists for
1246 future extensibility.
1248 2003-02-13 Satyaki Das <satyaki@theforce.stanford.edu>
1250 * mh-utils.el (mh-logo-display): The function find-image is
1251 present only in GNU Emacs.
1252 (mh-defun-show-buffer): The function deactivate-mark is present
1254 (default-enable-multibyte-characters): Declare it in XEmacs to
1255 avoid compiler warning.
1256 (mh-face-display-function): Avoid inserting space if there isn't
1257 any Face or X-Face header field to display.
1259 * mh-seq.el (mh-thread-last-ancestor): Move declaration of
1260 variable before its first use to silence XEmacs warning.
1262 * mh-mime.el (default-enable-multibyte-characters, dots, type):
1263 Declare these in XEmacs to remove compiler warnings in XEmacs.
1264 (mh-mime-cleanup, mh-mm-display-part): Call remove-images only in
1266 (mh-small-image-p): Call image-size only in GNU Emacs.
1268 * mh-index.el (mh-mairix-next-result): Fix a bug where a quote
1270 (mh-swish++-regexp-builder): Remove the unused binding meta.
1272 * mh-e.el (mh-folder-size): Pass on an extra value to remove
1274 (mh-folder-mode): Surround calls to hl-line-mode and
1275 tool-bar-mode with mh-do-in-gnu-emacs since these functions
1276 aren't present in XEmacs.
1278 * mh-customize.el (mh-tool-bar-show-set, mh-tool-bar-letter-set)
1279 (mh-tool-bar-folder-set): These functions call tool-bar-*
1280 functions which are present only in GNU Emacs. So surround them
1281 with mh-do-in-gnu-emacs.
1283 * mh-comp.el (mh-letter-mode, mh-folder-expand-at-point): Only
1284 call these functions in GNU Emacs.
1285 (mail-abbrevs): Declare it in XEmacs.
1287 * mh-alias.el (mh-read-address): Call completing-read-multiple
1289 (mail-abbrevs): Declare it in XEmacs.
1290 (mh-alias-add-alias-to-file): Remove unused code.
1292 2003-02-14 Ville Skyttä <scop@xemacs.org>
1294 * mh-comp.el: Add autoloaded auto-mode-alist association.
1296 2003-02-13 Satyaki Das <satyaki@theforce.stanford.edu>
1298 * mh-utils.el (mh-face-display-function): Make the XEmacs part a
1301 2003-02-14 Steve Youngs <youngs@xemacs.org>
1303 * mh-customize.el (mh-show-xface-face): XEmacs doesn't have the
1304 ':inherit' keyword for defface, rewrite with sane defaults.
1306 * mh-utils.el (mh-face-display-function): Fix bug that was
1307 corrupting xface images when displayed with XEmacs' internal
1308 xface image support. Also make XEmacs honour 'mh-show-xface-face'
1309 when using internal xface image support.
1311 2003-02-12 Peter S Galbraith <psg@debian.org>
1313 * mh-comp.el (mh-modify-header-field): New function. To header
1314 FIELD add VALUE. If OVERWRITE-FLAG is non-nil then the old value,
1315 if present, is discarded. This is more flexible than before.
1316 (mh-insert-auto-fields): Use it. This and the new function are a
1317 courtesy of Satyaki. Thanks!
1319 * mh-customize.el (mh-auto-fields-list): Doc tweaks suggested by
1322 2003-02-12 Satyaki Das <satyaki@theforce.stanford.edu>
1324 * mh-comp.el (mh-folder-expand-at-point): Tweak the error
1325 message. Completion in the Fcc header field is only supported in
1328 2003-02-12 Peter S Galbraith <psg@debian.org>
1330 * mh-customize.el (mh-auto-fields-list): Reorder after
1331 `mh-identity-list' since it needs it to be defined. Move to
1332 mh-identity customization group.
1334 2003-02-11 Peter S Galbraith <psg@debian.org>
1336 * mh-customize.el (mh-insert-mail-followup-to-flag): Removed.
1338 (mh-insert-mail-followup-to-list): Removed. Obsolete. Use
1339 `mh-auto-fields-list' instead, which is a more general solution.
1340 (mh-auto-fields-list): New defcustom. Alist of addresses for
1341 which header lines are automatically inserted. Replaces
1342 `mh-insert-mail-followup-to-list'.
1344 * mh-comp.el (mh-insert-mail-followup-to): Removed. Obsolete.
1345 (mh-insert-auto-fields): New function. Insert custom fields if To
1346 or Cc match `mh-auto-fields-list', replacing
1347 mh-insert-mail-followup-to with a more general solution.
1348 (mh-compose-and-send-mail): Call mh-insert-auto-fields instead of
1349 mh-insert-mail-followup-to. Also don't call mh-insert-identity to
1350 insert default setting if mh-insert-auto-fields inserted an
1353 2003-02-11 Satyaki Das <satyaki@theforce.stanford.edu>
1355 * mh-utils.el (mh-show-xface-function): Try to load the external
1356 x-face library only if XEmacs doesn't have xface support.
1357 (mh-face-display-function): Renamed. Also handle various
1358 permutations of x-face and xface support in XEmacs better.
1360 * mh-customize.el (mh-show-use-xface-flag): Any emacs whose
1361 major version is greater than or equal to 21 supports display of
1362 X-Face and Face header fields.
1364 2003-02-11 Satyaki Das <satyaki@theforce.stanford.edu>
1366 * mh-utils.el (mh-do-in-gnu-emacs, mh-do-in-xemacs): Macros that
1367 execute code only in GNU Emacs and XEmacs respectively.
1368 (mh-emacs21-face-display-function): Refactor to make it slightly
1369 nicer. Get rid of compiler warnings in GNU Emacs by using the
1370 above macros. Also check for presence of xface feature (in XEmacs
1371 specific code) before trying to display X-Face header field image.
1373 2003-02-11 Steve Youngs <youngs@xemacs.org>
1375 * mh-customize.el (mh-show-use-xface-flag): If using XEmacs and
1376 can't find the external x-face pkg still enable X-Face images if
1377 feature 'xface is present.
1378 Update the doc string.
1380 * mh-utils.el (mh-emacs21-face-display-function): Make it work in
1382 (mh-show-xface-function): If using XEmacs without xface support,
1383 use x-face.el pkg. If using XEmacs with xface support, or Emacs
1384 21, use mh-emacs21-face-display-function.
1386 2003-02-11 Mark D. Baushke <mdb@gnu.org>
1388 * mh-customize.el (mh-invisible-header-fields): Add
1389 "X-Notes-Item:" which is generated by Lotus Notes Domino. See
1390 URL<http://www-12.lotus.com/ldd/doc/domino_notes/Rnext/help6_admin.nsf
1391 /f4b82fbb75e942a6852566ac0037f284/5eda03c647f879c285256c1d00396051
1392 ?OpenDocument&Highlight=0,x-notes-item> for details on how Domino
1393 users may disable (restore the default) generation of these headers.
1395 2003-02-10 Satyaki Das <satyaki@theforce.stanford.edu>
1397 * mh-comp.el (mh-folder-expand-at-point): Add function doc string
1398 and produce a nicer error message for Emacs versions that lack
1399 mail-abbrev-complete-alias.
1401 * mh-utils.el (mh-handle-process-error): Check doc fix.
1403 * mh-e.el (mh-folder-from-address): Same as above.
1405 2003-02-10 Peter S Galbraith <psg@debian.org>
1407 * mh-comp.el: require mailabbrev, except in XEmacs.
1408 (mh-mail-abbrev-make-syntax-table): New defmacro to call
1409 mail-abbrev-make-syntax-table introduced in Emacs21.
1410 (mh-folder-expand-at-point): Handle nested folders.
1411 All of the above was written by Satyaki. I just applied the patch
1414 2003-02-09 Satyaki Das <satyaki@theforce.stanford.edu>
1416 * mh-comp.el: Fixes to keep the byte compiler happy.
1418 * mh-customize.el (mh-invisible-header-fields): Modified to
1419 remove space after ":" in header field names.
1421 2003-02-09 Peter S Galbraith <psg@mixed.dyndns.org>
1423 * mh-comp.el (mh-letter-complete): Add completion for fcc lines.
1424 (mh-folder-expand-at-point): Do completion at point for folder
1425 name. Like `mh-alias-letter-expand-alias' for aliases, it doesn't
1426 work on XEmacs because it relies on `mail-abbrev-complete-alias'
1427 to do completion. Maybe Steve could update XEmacs' mailabbrev.el?
1429 2003-02-09 Peter S Galbraith <psg@debian.org>
1431 * mh-customize.el (mh-invisible-header-fields): Remove trailing
1432 space in "X-Face: " and "Face: " entries since those line often
1435 2003-02-08 Satyaki Das <satyaki@theforce.stanford.edu>
1437 * mh-utils.el (mh-emacs21-face-display-function): Use
1438 mh-show-xface-face to colorize X-Face image.
1440 * mh-customize.el (mh-invisible-header-fields): Add extra headers
1442 (mh-show-xface-face): Allow customization of the X-Face colors.
1444 2003-02-07 Satyaki Das <satyaki@theforce.stanford.edu>
1446 * mh-utils.el (mh-uncompface-executable, mh-uncompface): Remember
1447 the path of the uncompface executable so that we don't need to
1448 search for it every time.
1449 (mh-emacs21-face-display-function): If more than one X-Face (or
1450 Face) header field was present then the fields would get
1451 concatenated, leading to garbled output. The change only displays
1454 * mh-customize.el (mh-x-face-file): Change documentation since it
1455 can now be used to insert a Face header field.
1457 * mh-comp.el (mh-insert-x-face): Generalized to allow insertion
1458 of Face header field.
1460 2003-02-06 Bill Wohler <wohler@newt.com>
1462 * mh-utils.el (mh-emacs21-face-display-function): Updated
1463 docstring. It is a common mistake to refer to a header field as a
1464 header. The term header refers to the entire header while the term
1465 header field refers to a single field.
1467 * mh-customize.el (mh-show-use-xface-flag): Ditto.
1469 2003-02-06 Satyaki Das <satyaki@theforce.stanford.edu>
1471 * mh-utils.el (mh-show-xface-function): Modified to use
1472 mh-emacs21-face-display-function if we are running GNU Emacs 21.
1473 (mh-face-to-png): New function to convert a Face header to a png
1475 (mh-uncompface): New function which converts an X-Face header to
1477 (mh-icontopbm): New function that does the job of icontopbm.
1478 (mh-emacs21-face-display-function): New function that displays
1479 Face/X-Face image in GNU Emacs 21.
1480 (mh-show-xface): Modified to test if we are running in X.
1481 Otherwise face display is suppressed.
1483 * mh-customize.el (mh-show-use-xface-flag): Tweak it, now that
1484 MH-E supports face display natively on Emacs 21. Also remove the
1485 check for window-system since it doesn't belong in a customizable
1488 2003-02-06 Satyaki Das <satyaki@theforce.stanford.edu>
1490 * mh-utils.el (sendmail): Require it so that XEmacs can find
1492 (mh-mail-header-end): A substitute for mail-header-end that
1493 doesn't widen the buffer. This is essential to avoid problems when
1494 dealing with nested messages.
1495 (mh-in-header-p, mh-letter-header-font-lock)
1496 (mh-header-field-font-lock, mh-show-font-lock-fontify-region)
1497 (mh-show-unquote-From): Use mh-mail-header-end instead of
1500 * mh-mime.el (mh-decode-message-body): same as above (closes SF
1503 * mh-comp.el (mh-yank-cur-msg): same as above.
1505 2003-02-05 Satyaki Das <satyaki@theforce.stanford.edu>
1507 * mh-utils.el (mh-display-msg): Call mh-show-mode before invisible
1508 headers are cleaned. This means that any surviving X-Face header
1509 can be removed unconditionally in mh-clean-msg-header.
1510 (mh-clean-msg-header): Since the function is now called with a
1511 read-only buffer, make the buffer temporarily writable.
1513 * mh-mime.el (mh-mm-inline-message): Do X-Face display before
1514 invisible headers are removed.
1516 * mh-customize.el (mh-invisible-headers): Simplified since the
1517 X-Face header isn't treated specially any more.
1518 (mh-invisible-header-fields): Add Face: and X-Face: to list of
1521 * mh-mime.el (mh-mime-display): If body is empty the headers would
1522 be treated like the body. The change fixes this (closes SF #681162).
1523 (mh-mime-display): This change really fixes the above problem.
1525 2003-02-04 Satyaki Das <satyaki@theforce.stanford.edu>
1527 * mh-utils.el (mh-current-folder-name): Global variable that
1528 keeps track of current folder.
1529 (mh-normalize-folder-name): Substitute @ with
1530 mh-current-folder-name (closes SF #666774).
1531 (mh-prompt-for-folder): Bind mh-current-folder-name. Also
1532 invalidate cache if we are visiting a folder that wasn't found in
1533 the sub-folder cache. This is an indication that folders may have
1534 been created outside of MH-E and so the cache may be stale.
1536 2003-02-03 Satyaki Das <satyaki@theforce.stanford.edu>
1538 * mh-utils.el (mh-decode-content-transfer-encoded-message): Removed.
1539 (mh-display-msg): Remove the use of the above function.
1540 (mh-normalize-folder-name): Leading "/" characters were being
1541 lost. The change fixes this (closes SF #676890).
1543 * mh-mime.el (mh-decode-message-body): New function, factored out
1544 from mh-mime-display and enhanced, to decode message based on
1545 charset and content-transfer-encoding. This eliminates the need
1546 for the external mimencode (closes SF #674857).
1547 (mh-mime-display): Use mh-decode-message-body.
1549 * mh-e.el (mh-header-display): Don't need the binding since the
1550 variable isn't present any more.
1551 (mh-inc-folder): Avoid calling mh-show if point is not on a valid
1552 scan line (closes SF #678115).
1555 (mh-decode-content-transfer-encoded-message-flag): Removed.
1557 2003-02-03 Bill Wohler <wohler@newt.com>
1559 * import-emacs: MH-E now has its own directory in Emacs.
1561 * mh-e.el: (mh-version): Set to 7.2+cvs.
1563 2003-02-03 Bill Wohler <wohler@newt.com>
1565 * Released MH-E version 7.2.
1567 * MH-E-NEWS, README: Updated for release 7.2.
1569 * mh-e.el (Version, mh-version): Updated for release 7.2.
1571 2003-02-03 Bill Wohler <wohler@newt.com>
1573 * Makefile (dist): mkdir needs to happen *before* files are
1576 * MH-E-NEWS: Fixed some awkward verbiage.
1578 2003-02-02 Bill Wohler <wohler@newt.com>
1580 * mh-customize.el (mh-invisible-headers): Surround regexp-opt
1581 expression in parens to avoid problems viewing certain messages.
1583 2003-01-30 Satyaki Das <satyaki@theforce.stanford.edu>
1585 * mh-speed.el (mh-speed-flists): Search for flists in mh-progs.
1586 The original was inadvertently searching for flists in the user's
1589 2003-01-27 Bill Wohler <wohler@newt.com>
1591 * mh-customize.el (mh-default-folder-must-exist-flag): Changed
1592 default to t according to the principle of least surprise.
1594 2003-01-26 Bill Wohler <wohler@newt.com>
1596 * mh-utils.el: Checkdoc fixes.
1598 * mh-pick.el (mh-do-search, mh-search-folder): Checkdoc fixes.
1600 * mh-loaddefs.el: Regenerated (lm-verify fixes).
1602 * mh-index.el (mh-mairix-next-result): Checkdoc fixes.
1604 * mh-alias.el: lm-verify fix.
1606 * Makefile (MH-E-SRC): Added ChangeLog, now that Emacs has a
1607 lisp/mh-e directory.
1608 (MH-E-ETC-ETC): Removed ChangeLog.
1609 (dist): Moved creation of mail directory next to copy of files
1610 into mail directory.
1611 (install-emacs): Copy $(MH-E-SRC) into new directory
1612 $(EMACS_HOME/lisp/mh-e.
1613 (MH-E-SRC): Moved ChangeLog into new variable MH-E-OTHERS and
1614 include MH-E-LOADDEFS there too.
1615 (mh-loaddefs.el): Added lines so that lm-verify passes.
1616 (dist, install-emacs): Use MH-E-OTHERS instead of MH-E-LOADDEFS.
1618 2003-01-26 Jeffrey C Honig <jch@honig.net>
1620 * mh-comp.el (mh-tidy-draft-buffer, mh-compose-and-send-mail):
1621 Rename mh-kill-draft-hook to mh-tidy-draft-buffer.
1623 2003-01-25 Jeffrey C Honig <jch@honig.net>
1625 * mh-utils.el (mh-exec-cmd, mh-exec-cmd-daemon)
1626 (mh-process-daemon): Use mh-log-buffer for the output of commands
1629 * mh-utils.el (mh-temp-folders-buffer): Sequences and folders
1630 loose the -temp from their buffer names as they are interesting to
1633 * mh-seq.el (mh-list-sequences): New name, mh-sequences-buffer as
1634 it is intended to be interesting to the user.
1636 * mh-funcs.el (mh-list-folders): New name, mh-folders-buffer as it
1637 is intended to be interesting to the user.
1639 * mh-comp.el (mh-check-whom, mh-compose-and-send-mail): Use
1640 mh-recipients-buffer constant. Add a kill buffer hook to delete
1641 the recipients buffer when a draft buffer is killed.
1643 2003-01-25 Satyaki Das <satyaki@theforce.stanford.edu>
1645 * mh-customize.el (mh-customize): New interactive argument
1646 deletes other windows.
1647 (mh-tool-bar-show-set, mh-tool-bar-letter-set)
1648 (mh-tool-bar-folder-set): Modified so that clicking the customize
1649 and help buttons deletes the other windows in the frame.
1651 * mh-mime.el (mh-mm-inline-message): Remove unused code.
1653 * mh-seq.el (mh-notate-deleted-and-refiled): Fix a small bug where
1654 the wrong notation was being used.
1655 (mh-toggle-threads): The function had a bug if you did the
1656 following starting from an unthreaded wide folder:
1657 (1) Create a sequence with S p
1658 (2) Narrow to new sequence with S n
1659 (3) Thread narrowed folder with T t
1660 (4) Kill sequence with S k
1661 (5) Unthread narrowed folder with T t
1662 At this point we would have an empty folder. The change fixes
1664 (mh-toggle-threads): Fix documentation.
1666 * mh-customize.el (mh-invisible-header-fields): Add
1667 X-MHE-Checksum to invisible headers.
1669 * mh-comp.el (mh-insert-x-mailer): Slightly more informative
1672 2003-01-24 Satyaki Das <satyaki@theforce.stanford.edu>
1674 * mh-e.el (mh-header-display): Modified so that quoted-printable
1675 or base64 encoded messages are left untouched.
1677 * mh-utils.el (mh-decode-content-transfer-encoded-message): Munge
1678 the Content-Transfer-Encoding header so that the MIME decoding
1679 routines of Gnus doesn't get confused.
1680 (mh-display-msg): Use insert-file-contents-literally so that
1681 display will work for non-ascii.
1683 * mh-mime.el (mh-mime-display): Use charset info to decode
1684 message file (closes SF #655123).
1686 2003-01-24 Bill Wohler <wohler@newt.com>
1688 * mh-alias.el (mh-alias-add-alias-to-file): Removed period from
1689 error message and added parens around error function.
1691 2003-01-24 Satyaki Das <satyaki@theforce.stanford.edu>
1693 * mh-customize.el (mh-decode-quoted-printable-flag): Removed.
1694 (mh-decode-content-transfer-encoded-message-flag): This replaces
1695 mh-decode-quoted-printable-flag.
1697 * mh-utils.el (mh-decode-content-transfer-encoded-message): New
1698 function which handles messages that are encoded as base64 or
1699 quoted-printable (closes SF #674190).
1700 (mh-decode-quoted-printable): Removed.
1701 (mh-display-msg): Use mh-decode-content-transfer-encoded-message
1702 instead of mh-decode-quoted-printable.
1704 2003-01-23 Satyaki Das <satyaki@theforce.stanford.edu>
1706 * mh-seq.el (mh-thread-generate-scan-lines): Fix a little bug
1707 that would occasionally cause angles ('<' and '>') to appear at
1710 2003-01-21 Satyaki Das <satyaki@theforce.stanford.edu>
1712 * mh-seq.el (mh-notate-cur): Enable overlay arrow display in text
1715 * mh-e.el (mh-folder-mode): Initialize overlay-arrow-string so
1716 that a '>' is displayed in text mode.
1718 2003-01-20 Satyaki Das <satyaki@theforce.stanford.edu>
1720 * mh-utils.el (mh-scan-msg-overflow-regexp): Change the variable
1721 so that a space is always maintained in the beginning of the scan
1724 * mh-seq.el (mh-notate-seq, mh-notate-cur): Make the functions
1725 faster by cutting down on the use of mh-goto-msg.
1726 (mh-toggle-threads): Add call to mh-notate-cur, since inserting
1727 the folder names in a search results folder screws up the
1728 location of the overlay arrow.
1730 * mh-index.el (mh-index-delete-folder-headers): Position the
1731 point on a message line if possible.
1733 * mh-funcs.el (mh-copy-msg): Use the mh-iterate macro to make the
1736 * mh-e.el (mh-scan-folder): Reuse mh-notate-deleted-and-refiled.
1738 * mh-loaddefs.el: Regenerated.
1740 * mh-utils.el (mh-add-msgs-to-seq): Add a new parameter that
1741 suppresses the annotation of the sequence since it is
1744 * mh-seq.el (mh-delete-seq): Speed up the part of the function
1745 that removes the sequence notation.
1746 (mh-put-msg-in-seq, mh-notate-deleted-and-refiled): Use
1747 mh-iterate-on-messages-in-region to make the function fasters when
1748 operating on regions. The key idea is to loop over the folder
1749 buffer exactly once and do all annotations. The existing algo
1750 would walk over the buffer multiple times thereby slowing things
1752 (mh-iterate-on-messages-in-region): Added an extra parameter which
1753 is bound to the message index as the loop is executed.
1754 (mh-region-to-msg-list, mh-thread-delete, mh-thread-refile): Use
1755 the new mh-iterate-on-messages-in-region macro.
1757 * mh-e.el (mh-delete-msg-no-motion, mh-refile-msg, mh-undo): Same
1759 (mh-notate-user-sequences): Change algorithm to make notating of
1760 user sequences fast.
1762 2003-01-19 Satyaki Das <satyaki@theforce.stanford.edu>
1764 * mh-logo.xpm: New image file that contains the MH-E logo.
1765 Change foreground color to the blue in the MH-E logo.
1767 * Makefile (MH-E-IMG): Add mh-logo.xpm to list of image files.
1769 * mh-utils.el (mh-show-buffer-mode-line-buffer-id): Adjust it to
1770 keep space in the beginning for the logo.
1771 (mh-logo-cache): New variable that caches the logo image file
1773 (mh-logo-display): Display the MH-E logo on the mode line.
1774 (mh-display-msg): Display logo in mh-show-mode.
1776 * mh-e.el (mh-make-folder-mode-line): Display logo in
1779 * mh-comp.el (mh-compose-and-send-mail): Display logo in
1782 * mh-loaddefs.el: Regenerated.
1784 * mh-seq.el (mh-iterate-on-messages-in-region): New macro to
1785 iterate on all messages in a region.
1786 (mh-region-to-msg-list): Simplified since it uses
1787 mh-iterate-on-messages-in-region now.
1789 * mh-e.el (mh-delete-msg, mh-refile-msg): Change interactive spec
1790 to pass the region that is to be deleted when appropriate.
1791 (mh-delete-msg-no-motion, mh-refile-msg, mh-undo): Operate on
1792 regions directly without creating the list of messages to be
1794 (mh-delete-a-msg, mh-refile-a-msg, mh-undo-msg): The msg
1795 parameter in these functions can now be nil. If so, the current
1796 message is deleted, refiled or undone respectively. Avoids the
1797 use of mh-goto-msg in this case and speeds up operations on
1798 regions quite a bit.
1800 2003-01-19 Peter S Galbraith <psg@debian.org>
1802 * mh-alias.el (mh-read-address): Bug Fix. In XEmacs and Emacs20,
1803 it would always prompt using "To: " instead of using the command
1804 argument (closes SF #670913).
1806 2003-01-19 Satyaki Das <satyaki@theforce.stanford.edu>
1808 * mh-utils.el (mh-folder-completion-function): If there is a
1809 +foo/bar folder and the user types foo//bar then the completion
1810 function would say a match happened without showing the
1811 normalized folder name. This change fixes that.
1813 2003-01-18 Satyaki Das <satyaki@theforce.stanford.edu>
1815 * mh-e.el (mh-rmail): Modified so that new and unseen messages
1816 are shown (closes SF #667542).
1818 2003-01-17 Satyaki Das <satyaki@theforce.stanford.edu>
1820 * mh-index.el (mh-index-generate-pretty-name): Generate nicer
1821 names. In particular all '-' characters are removed.
1823 2003-01-16 Satyaki Das <satyaki@theforce.stanford.edu>
1825 * mh-customize.el (mh-index-program): Documentation fix.
1827 * mh-loaddefs.el: Regenerated.
1829 * mh-customize.el (mh-index-program): Add choices for mairix and
1832 * mh-index.el (mh-indexer-choices): Add search interfaces for
1834 (mh-index-search): Add links for mairix and pick.
1835 (mh-index-pick-folder, mh-pick-binary): Variables needed to
1836 implement pick support.
1837 (mh-pick-execute-search, mh-pick-next-result): New functions to
1838 implement pick support.
1839 (mh-mairix-binary, mh-mairix-directory, mh-mairix-folder): New
1840 variables for mairix support.
1841 (mh-mairix-execute-search, mh-mairix-next-result)
1842 (mh-mairix-regexp-builder, mh-mairix-convert-to-sop*): New
1843 functions for mairix.
1845 * mh-funcs.el (mh-kill-folder): Move message to the end.
1847 * mh-e.el (mh-folder-mode): Make overlay-arrow-position and
1848 overlay-arrow-string local variables so that the arrow will
1849 remain even if some other folder is visited.
1850 (mh-remove-cur-notation, mh-remove-all-notation): The test isn't
1851 required any more since overlay-arrow-position is local.
1852 (mh-goto-cur-msg): Remove overlay arrow if current message
1855 * mh-seq.el (mh-notate-cur): Don't need to set
1856 overlay-arrow-string any more since it is local and has been set
1859 2003-01-15 Satyaki Das <satyaki@theforce.stanford.edu>
1861 * mh-speed.el (mh-speed-current-folder): Keep track of current
1862 folder when flists is called.
1863 (mh-speed-flists, mh-speed-parse-flists-output): Try to avoid
1864 ambiguity when folders are present with + at the end of the name.
1865 Unfortunately it can't always be avoided.
1867 * mh-e.el (mh-folder-size): Remove the unnecessary error check.
1868 (mh-parse-flist-output-line): Add extra argument which
1869 occasionally avoid problems with folder names that end with '+'.
1871 * mh-utils.el (mh-sub-folders-actual): Fix the folder name
1872 parsing so that it doesn't get confused by trailing '+' chars in
1875 2003-01-14 Satyaki Das <satyaki@theforce.stanford.edu>
1877 * mh-utils.el (mh-normalize-folder-name): Enhanced so that it can
1878 now handle ".." and "." correctly during folder name completion.
1879 (mh-normalize-folder-name): Avoid error in boundary condition
1880 where the folder string is empty.
1882 2003-01-14 Mark D. Baushke <mdb@gnu.org>
1884 * mh-e.el (mh-visit-folder): Pass `current-prefix-arg' to
1885 the `mh-read-msg-range' function as the optional
1888 2003-01-14 Satyaki Das <satyaki@theforce.stanford.edu>
1890 * mh-utils.el (mh-normalize-folder-name): New function that
1891 normalizes folder names.
1892 (mh-sub-folders): Use mh-normalize-folder-name. Also the function
1893 has been modified so that a trailing slash is only added if the
1894 folder potentially has subfolders.
1895 (mh-sub-folders-actual): Simplified since the folder has already
1896 been normalized in mh-sub-folders.
1897 (mh-remove-from-sub-folders-cache): Modified so that the cached
1898 results of two of the folders ancestors are invalidated.
1899 (mh-folder-completion-map): Ugly hack to make the error go away
1900 when minibuffer-complete-word is called.
1901 (mh-folder-completion-function): The completion function will now
1902 be more selective in adding '/' at the end of completed folder
1904 (mh-folder-completing-read): The folder name is normalized before
1905 return. The minibuffer-local-completion-map is shadowed to avoid
1906 error with SPC (bound to minibuffer-complete-word). We really
1907 need a better solution.
1909 2003-01-13 Bill Wohler <wohler@newt.com>
1911 * mh-seq.el: Edited comment and docstring text to conform with RFC
1912 2822 terminology. Message-ID is the header field. It contains a
1915 2003-01-13 Satyaki Das <satyaki@theforce.stanford.edu>
1917 * mh-utils.el (mh-sub-folders): Add an argument that returns
1918 sub-folders with a / character appended at the end.
1919 (mh-folder-completion-function): Modify the function so that one
1920 tab is now sufficient to complete the folder name and add a
1922 (mh-folder-completing-read): Remove the trailing / that the
1923 completion function now adds to the folder name. Also multiple /
1924 characters in the folder input are removed. So if the user inputs
1925 +foo///bar//baz///// then that will be converted to +foo/bar/baz.
1926 This will improve the performance of caching.
1928 * mh-seq.el (mh-notate-cur): Check that a valid current message
1929 exists before trying to notate (closes SF #667331).
1930 (mh-message-id-regexp): New variable to store regexp to recognize
1932 (mh-thread-generate): Use mh-message-id-regexp to filter out non
1933 message-id's from the References: header.
1935 2003-01-12 Satyaki Das <satyaki@theforce.stanford.edu>
1937 * mh-seq.el (mh-notate-cur): Disable overlay-arrow display if we
1938 aren't on a graphic display.
1940 2003-01-11 Satyaki Das <satyaki@theforce.stanford.edu>
1942 * mh-seq.el (mh-notate-cur): New function to notate the current
1943 message. The marker in the fringe is updated too.
1944 (mh-narrow-to-seq, mh-widen, mh-thread-inc, mh-thread-folder): Use
1945 the specialized function mh-notate-cur instead of mh-notate-seq.
1947 * mh-e.el (mh-arrow-marker): New buffer local variable to store
1948 the position where the marker in the fringe is going to be
1949 displayed (closes SF #664824).
1950 (mh-folder-mode): Create a marker for the fringe.
1951 (mh-update-sequences, mh-get-new-mail, mh-goto-cur-msg): Call the
1952 specialized function mh-notate-cur instead of mh-notate-seq or
1954 (mh-remove-cur-notation, mh-remove-all-notation): Reset the
1955 overlay-arrow-position if needed.
1957 * mh-loaddefs.el: Regenerated.
1959 2003-01-10 Satyaki Das <satyaki@theforce.stanford.edu>
1961 * mh-utils.el (mh-remove-from-sub-folders-cache): Modified so that
1962 creating nested folders doesn't produce inconsistent results.
1963 (mh-prompt-for-folder): Remove call of mh-folder-list-change-hook.
1965 * mh-funcs.el (mh-kill-folder): Don't ask for confirmation if
1966 called on a folder holding index search results. Also the now
1967 removed mh-folder-list-change-hook is called no more.
1969 * mh-customize.el (mh-auto-folder-collect-flag)
1970 (mh-folder-list-change-hook): Removed.
1972 * mh-loaddefs.el: Regenerated.
1974 2003-01-10 Bill Wohler <wohler@newt.com>
1976 * mh-customize.el (mh-default-folder-must-exist-flag): New
1977 variable to suppress suggested folder if the folder doesn't
1978 already exist (closes SF #657096).
1979 (mh-default-folder-list): New variable that
1980 holds mapping between an address and the desired folder for
1981 filing (closes SF #657096).
1982 (mh-default-folder-prefix, mh-default-folder-must-exist-flag): In
1983 docstring, refer to documentation for mh-prompt-for-refile-folder
1984 and mh-folder-from-address.
1985 (mh-highlight-citation-p, mh-compose-insertion,
1986 (mh-insert-mail-followup-to-list, mh-index-program,
1987 (mh-identity-default): Fixed case of tags.
1989 * mh-e.el (mh-folder-from-address): Use new variable
1990 mh-default-folder-must-exist-flag to return nil if this variable
1991 is t and the folder doesn't already exist. In addition, can now
1992 look up a default folder in the new variable
1993 mh-default-folder-list (closes SF #657096).
1994 (mh-prompt-for-refile-folder): In docstring, refer to
1995 documentation in mh-folder-from-address.
1997 * mh-index.el (mh-swish-execute-search): Changed \..* to \\..* in
1998 the FileRules filename in the sample config file. Otherwise, the
1999 users don't see the backslash at all, and no files are indexed!
2000 (closes SF #665888).
2002 2003-01-10 Satyaki Das <satyaki@theforce.stanford.edu>
2004 * mh-seq.el (mh-thread-folder): Get headers for exactly the
2005 messages that are present. If only messages 1-10 and 3800-3900
2006 are being shown then we will now scan exactly those messages and
2007 not the full range from 1-3900 as was being done earlier.
2008 (mh-toggle-threads): When converting from threaded to normal view
2009 only the messages present in the buffer are scanned. Earlier all
2010 messages from the minimum to the maximum would be scanned (closes
2013 * mh-pick.el (mh-search-folder): Fix typo.
2014 (mh-pick-do-search): Fix bug from cut and paste. Also set window
2017 * mh-utils.el (mh-prompt-for-folder): Add new argument to allow
2018 it to accept + as a folder name. This allows the user to search
2019 all folders when "Fs" is used.
2021 * mh-pick.el (mh-search-folder): Fix interactive spec of function.
2022 (mh-pick-do-search): Rewritten to call pick in one go. This will
2023 make adding pick as a default index search program easier. Also
2024 pick now accepts the same query syntax as the index search
2025 programs (closes SF #664816).
2026 (mh-next-pick-field): Removed.
2027 (mh-pick-parse-search-buffer): New function to parse the search
2029 (mh-pick-construct-regexp, mh-pick-regexp-builder): New function
2030 to produce a pick query from the parsed representation.
2032 * mh-index.el (mh-index-do-search): Refactor the search pattern
2033 parser into a new function and use that instead.
2035 * mh-loaddefs.el: Regenerated.
2037 2003-01-10 Satyaki Das <satyaki@theforce.stanford.edu>
2039 * mh-loaddefs.el: Regenerated.
2041 * mh-utils.el (mh-remove-from-sub-folders-cache)
2042 (mh-prompt-for-folder): Replace mh-update-sub-folders-cache with
2043 mh-remove-from-sub-folders-cache.
2044 (mh-exec-cmd-daemon): Mention set-process-filter in documentation.
2046 * mh-pick.el (mh-searching-function): New buffer local variable
2047 that keeps track of the default searching function to be used.
2048 (mh-pick-mode): Make mh-searching-function buffer local.
2049 (mh-search-folder): Set mh-searching-function to use pick.
2050 (mh-search-folder, mh-pick-menu, mh-pick-mode-help-messages)
2051 (mh-pick-mode, mh-do-pick-search, mh-pick-do-search): Rename
2052 mh-do-pick-search to mh-pick-do-search. But keep
2053 mh-do-pick-search as a deprecated function.
2054 (mh-do-search): New interactive function that performs the
2056 (mh-pick-mode-map): Update keymap.
2058 * mh-index.el (mh-index-search): Set mh-searching-function to do
2060 (mh-index-new-folder): Replace mh-update-sub-folders-cache with
2061 mh-remover-from-sub-folders-cache.
2063 * mh-funcs.el (mh-kill-folder): Same as above.
2065 * mh-index.el (mh-index-evaluate, mh-swish++-regexp-builder):
2068 * mh-customize.el: Fixes to make byte compiler in CVS Emacs
2071 2003-01-09 Bill Wohler <wohler@newt.com>
2073 * mh-e.el (mh-folder-from-address): New function that proposes the
2074 name of a folder with an alias for the address in the current message.
2075 (mh-prompt-for-refile-folder): Use it (closes SF #657096).
2077 * mh-customize.el (mh-default-folder-prefix): New variable used by
2078 mh-folder-from-address.
2079 (mh-invisible-header-fields): Edited docstring.
2081 * mh-alias.el (mh-alias-address-to-alias): Added ;;;###mh-autoload
2082 cookie (used by mh-folder-from-address in mh-e.el). Edited text in
2085 * mh-utils.el: Provided naming conventions for buffer and buffer
2087 (mh-temp-folders-buffer): Renamed buffer to " *mh-folders*".
2088 (mh-temp-sequences-buffer): Renamed buffer to " *mh-sequences*".
2089 (mh-info-buffer): Renamed from mh-temp-info-buffer.
2090 (mh-log-buffer): New buffer variable to hold name of "*MH-E Log*"
2091 buffer which is expected to be used for the output of MH commands.
2092 Perhaps we always create this buffer at initialization and append
2093 to it rather than erase it each time?
2095 * mh-e.el (mh-quit): Loop over all buffers and delete MH-E
2096 temporary and working buffers. As long as the buffer naming
2097 conventions are followed, new buffers will be automatically
2099 (mh-version): Renamed mh-temp-info-buffer to mh-info-buffer.
2101 * mh-comp.el (mh-insert-x-mailer): Renamed mh-temp-info-buffer to
2104 2003-01-09 Satyaki Das <satyaki@theforce.stanford.edu>
2106 * mh-e.el (mh-folder-size): If the user doesn't have a
2107 Unseen-Sequence definition in .mh_profile then an error was
2108 produced. This change fixes that.
2110 * mh-seq.el (mh-thread-generate): Replace the *mh-thread* buffer
2111 with a temporary buffer which is cleaned up when the function
2114 * mh-e.el (mh-prompt-for-refile-folder): New function which
2115 refactors out the intelligent folder guessing code from
2117 (mh-refile-msg): Use mh-prompt-for-refile-folder.
2119 * mh-seq.el (mh-thread-refile): Use mh-prompt-for-refile-folder to
2120 do the same intelligent destination folder guessing as
2121 mh-refile-msg (closes SF #664829).
2123 * mh-utils.el (mh-folder-list, mh-make-folder-list-process)
2124 (mh-folder-list-temp, mh-folder-list-partial-line)
2125 (mh-set-folder-list): Removed.
2126 (mh-sub-folders-cache, mh-sub-folders, mh-sub-folders-actual):
2127 Moved over from mh-speed.el to implement hierarchical completion.
2128 (mh-update-sub-folders-cache): Utility function called when
2129 new folders are created or folders are removed.
2130 (mh-folder-completion-function): New function is the folder name
2131 completion function used in completing-read.
2132 (mh-folder-completing-read): A thin wrapper function that is used
2133 instead of completing-read directly. In the future we might want
2134 to allow the user a customizable variable which will turn off
2135 folders based completion.
2136 (mh-prompt-for-folder): Use mh-folder-completing-read to read in
2137 the folder name with hierachical completion (closes SF #664821).
2139 * mh-speed.el (mh-speed-folders, mh-speed-folders-cache)
2140 (mh-speed-folders-actual): Moved to mh-utils.el as mh-sub-folders,
2141 mh-sub-folders-cache and mh-sub-folders-actual respectively.
2142 (mh-speed-invalidate-map, mh-speed-invalidate-map)
2143 (mh-speed-add-folder): Use the new names.
2145 * mh-funcs.el (mh-kill-folder): Remove code that used to update
2146 mh-folder-list which is no longer present. Instead
2147 mh-update-sub-folders-cache is called.
2149 * mh-index.el (mh-index-new-folder): Same as above.
2151 2003-01-08 Satyaki Das <satyaki@theforce.stanford.edu>
2153 * mh-utils.el (mh-exec-cmd-daemon): An argument was added which
2154 controls what is done with the process output.
2156 * mh-funcs.el (mh-kill-folder): Use mh-previous-window-config to
2157 restore window configuration. Also the call to mh-exec-cmd-daemon
2158 only displays output if an error happened (closes SF #664828).
2159 (mh-rmf-daemon): Check rmf output and display it only if
2160 something went wrong.
2161 (mh-print-msg): Pass in nil argument to mh-exec-cmd-daemon.
2163 * mh-comp.el (mh-redistribute, mh-send-letter): Pass in nil
2164 argument to mh-exec-cmd-daemon so that the functions will behave
2167 * mh-pick.el (mh-search-folder): The current window config is
2169 (mh-make-pick-template): Make the message headers read-only.
2170 (mh-pick-mode-help-messages): Update help message.
2171 (mh-do-pick-search): Fix problem when buffer isn't showing any
2173 (mh-next-pick-field): Use buffer-substring-no-properties is
2175 (mh-pick-mode-map): Add key bindings (partially addresses
2178 * mh-index.el (mh-indexer-choices): Add a new field for each
2179 index program choice. If it is non-nil then it is the name of a
2180 function that given a lisp expression to search for generates a
2181 pattern that is acceptable to the search program.
2182 (mh-index-regexp-builder): New variable that stores the function
2183 to be used to convert from the lisp expression syntax to
2184 something that the search program understands.
2185 (mh-index-generate-pretty-name): Generalized so that it can take
2186 a list of strings as input.
2187 (mh-index-search): Modified so that if the configured program has
2188 a corresponding regexp-builder then a search buffer like pick
2189 search is produced. Otherwise the previous behavior is maintained.
2190 (mh-index-do-search): New interactive function that takes the
2191 contents of the search buffer, generates an appropriate query and
2192 produces the search results buffer by calling mh-index-search.
2193 (mh-replace-string, mh-index-parse-search-regexp)
2194 (mh-index-add-implicit-ops, mh-index-evaluate): New functions
2195 which parses the infix search expression that the user enters. A
2196 parse tree from which queries for different search programs can
2197 be produced is produced.
2198 (mh-swish++-regexp-builder, mh-swish++-print-regexp): Takes the
2199 internal form of the query and produces input suitable for
2202 * mh-loaddefs.el: Regenerated.
2204 2003-01-08 Bill Wohler <wohler@newt.com>
2206 * Makefile (emacs-logs): New target for viewing CVS Emacs logs.
2207 Useful to see if an Emacs developer has changed MH-E.
2209 * MH-E-NEWS: Fixed case of MH-E in the "Changes" title.
2211 * mh-utils.el (mh-temp-info-buffer): New variable to hold name of
2212 buffer that contains version info.
2214 * mh-e.el (mh-version): Use mh-temp-info-buffer instead of
2215 mh-temp-buffer since version information was getting clobbered by
2216 the aliasing code before it could be seen (closes SF #664467).
2217 (mh-quit): Delete mh-temp-info-buffer.
2219 * mh-comp.el (mh-insert-x-mailer): Use mh-temp-info-buffer to find
2220 version info instead of mh-temp-buffer. You kind of need this
2223 2003-01-07 Bill Wohler <wohler@newt.com>
2225 * mh-e.el (Version, mh-version): Set to 7.1+cvs.
2227 2003-01-07 Bill Wohler <wohler@newt.com>
2229 * Released MH-E version 7.1.
2231 * MH-E-NEWS, README: Updated for release 7.1.
2233 * mh-e.el (Version, mh-version): Updated for release 7.1.
2235 2003-01-07 Bill Wohler <wohler@newt.com>
2237 * mh-customize.el (mh-auto-folder-collect-flag,
2238 mh-alias-system-aliases, mh-alias-insert-file): Edited docstrings.
2240 * Makefile (MH-E-IMG): Added alias.pbm and alias.xpm.
2242 * mh-alias.el (mh-alias-insert-file, mh-alias-add-alias): Fixed
2245 2003-01-07 Satyaki Das <satyaki@theforce.stanford.edu>
2247 * mh-utils.el (mh-search-from-end): New function that is used to
2248 replace our usage of the CL function search.
2249 (font-lock): The library is loaded to avoid compilation warning
2252 * mh-speed.el (mh-speed-goto-folder, mh-speed-add-folder)
2253 (mh-speed-extract-folder-name, mh-speed-invalidate-map): Use
2254 mh-search-from-end instead of search.
2256 * mh-seq.el (mh-thread-remove-parent-link): Use loop instead of
2258 (mh-thread-process-in-reply-to): Use mh-search-from-end instead
2261 * mh-index.el (mh-md5-parser): Fix name of function.
2262 (mh-index-update-single-msg, mh-index-update-maps): Avoid using
2263 destructuring-bind since Emacs-20.7 can't handle this particular
2265 (mh-namazu-next-result): Use mh-search-from-end instead of
2268 * mh-e.el (recursive-load-depth-limit): Add a defvar since CVS
2269 emacs which doesn't have the variable defined causes a compiler
2271 (mh-refile-a-msg): Rewritten to avoid using pushnew.
2272 (mh-undo-msg): Use loop instead of remove-if.
2274 * mh-comp.el (mh-show-buffer-message-number): Use
2275 mh-search-from-end instead of search.
2277 2003-01-01 Satyaki Das <satyaki@theforce.stanford.edu>
2279 * mh-e.el (mh-visit-folder): Modified so that if RANGE is nil then
2280 all messages are displayed. Documentation modified so that this is
2282 (mh-visit-folder): Really fix it this time.
2284 2003-01-01 Mark D Baushke <mdb@gnu.org>
2286 * mh-alias.el (mh-alias-from-has-no-alias-p): Needs the
2287 mh-autoload comment or mh-customize may have problems finding the
2290 * mh-loaddefs.el: Regenerated.
2292 2002-12-28 Satyaki Das <satyaki@theforce.stanford.edu>
2294 * mh-index.el (mh-namazu-execute-search): Fix bug in documentation.
2296 2002-12-28 Bill Wohler <wohler@newt.com>
2298 * mh-comp.el (mh-letter-mode): Mention mh-compose-insertion
2299 variable in docstring, explain how to expand directives, and
2300 don't mention mh-mhn-compose-insertion which isn't used directly
2302 (mh-send-letter): Mention that X-Mailer and X-Face are inserted
2303 automatically so that a user isn't tempted to do so himself in
2304 mh-before-send-letter-hook.
2305 (mh-insert-letter): Use "variable" prefix for mh-invisible-headers
2306 now that we have both a function and a variable. Clarified
2309 2002-12-26 Satyaki Das <satyaki@theforce.stanford.edu>
2311 * mh-utils.el (mh-show-xface-function): Only load x-face-e21 if
2312 the emacs is not XEmacs.
2314 * mh-index.el (mh-index-new-folder): The folder created should
2315 always be added to mh-folder-list. Otherwise folder name
2316 completion doesn't find the new folder created.
2318 2002-12-24 Satyaki Das <satyaki@theforce.stanford.edu>
2320 * mh-customize.el (mh-clean-message-header-flag)
2321 (mh-visible-headers, mh-invisible-headers)
2322 (mh-invisible-header-fields-set): Reworded to satisfy checkdoc.
2324 * mh-loaddefs.el: Regenerated.
2326 * mh-e.el (mh-inc-folder, mh-visit-folder, mh-read-msg-range):
2327 Handle nil value of mh-large-folder properly.
2329 * mh-customize.el (mh-tool-bar-show-set, mh-tool-bar-letter-set)
2330 (mh-tool-bar-folder-set, mh-tool-bar-folder-buttons)
2331 (mh-invisible-headers, mh-invisible-header-fields-set): Checkdoc
2333 (mh-large-folder): Updated to allow for infinity. If
2334 mh-large-folder is nil then all folders are deemed small.
2336 2002-12-23 Satyaki Das <satyaki@theforce.stanford.edu>
2338 * mh-e.el (mh-inc-folder, mh-visit-folder): Emit a message if
2339 threading was suppressed because the number of messages exceed
2342 2002-12-23 Peter S Galbraith <psg@debian.org>
2344 * mh-utils.el (mh-invisible-headers): Deleted. Moved to
2347 * mh-customize.el (mh-invisible-header-fields): New
2348 defcustom. Simple user interface to change mh-invisible-headers.
2349 (mh-invisible-header-fields-set): New function called when
2350 mh-invisible-header-fields is set.
2351 (mh-invisible-headers): New function. Does the actual work of
2352 building the variable mh-invisible-headers from
2353 mh-invisible-header-fields.
2354 (mh-invisible-headers): defvar moved from mh-utils.el
2356 2002-12-22 Satyaki Das <satyaki@theforce.stanford.edu>
2358 * mh-speed.el (mh-speed-folder-size): Removed. Something very
2359 similar appears as mh-folder-size.
2360 (mh-speed-view): Simplified since the range selection logic has
2361 been moved to mh-read-msg-range.
2362 (mh-speed-parse-flists-output-line): Moved to mh-e.el as
2363 mh-parse-flist-output-line.
2365 * mh-funcs.el (mh-pack-folder): Use the new mh-read-msg-range.
2367 * mh-e.el (mh-rescan-folder): Use the new mh-read-msg-range.
2368 (mh-parse-flist-output-line): Moved from mh-speed.el where this
2369 function was called mh-speed-parse-flists-output-line.
2370 (mh-folder-size): Renamed from mh-speed-folder-size. The function
2371 has been made more general and can be called from any buffer and
2372 not just the speedbar buffer.
2373 (mh-visit-folder): Use the new mh-read-msg-range (addresses SF
2375 (mh-read-msg-range): Rewritten.
2377 2002-12-21 Satyaki Das <satyaki@theforce.stanford.edu>
2379 * mh-seq.el (mh-delete-subject-or-thread): New interactive
2380 function that intelligently deletes messages based on threading,
2381 if the folder is threaded, or on subject if folder isn't threaded.
2383 * mh-utils.el (mh-show-delete-subject-or-thread): New interactive
2384 function, callable from the show buffer, to intelligently delete
2385 messages based on threading info or subject.
2386 (mh-show-mode-map): Change binding of "k" to call
2387 mh-show-delete-subject-or-thread.
2389 * mh-e.el (mh-folder-mode-map): Change binding of "k" to call
2390 mh-delete-subject-or-thread.
2392 * mh-comp.el (mh-letter-mode-map): Add key binding for
2395 * mh-loaddefs.el: Regenerated.
2397 2002-12-21 Peter S Galbraith <psg@debian.org>
2399 * mh-customize.el (mh-tool-bar-letter-set): Bug fix. The
2400 `tool-bar-add-item-from-menu' items were broken. I can't use my
2403 2002-12-21 Peter S Galbraith <psg@debian.org>
2405 * mh-alias.el (mh-alias-insert-file): Bug fix. I never checked
2406 that an AliasFile entry existed in .mh_profile.
2408 2002-12-21 Peter S Galbraith <psg@debian.org>
2410 * mh-customize.el (mh-alias-insertion-location): New defustom.
2411 Specifies where new aliases are entered in alias files.
2413 * mh-alias.el (mh-alias-add-alias-to-file): Use it.
2415 2002-12-21 Peter S Galbraith <psg@debian.org>
2417 * mh-alias.el (mh-alias-add-alias-to-file): If ALIAS matches
2418 exactly, prompt to [i]nsert before old value or [a]ppend after it.
2419 (mh-alias-insert-file): Make sure we don't edit the passwd file.
2420 Add optional argument for alias; If ALIAS is specified and it
2421 already exists, try to return the file that contains it.
2422 (mh-alias-which-file-has-alias): New function. Return the name of
2423 writable file which defines ALIAS from list FILE-LIST.
2424 (mh-alias-add-alias): Remove prompts for case of alias already
2425 defined; done in mh-alias-add-alias-to-file.
2427 2002-12-21 Satyaki Das <satyaki@theforce.stanford.edu>
2429 * mh-speed.el (mh-speed-folders-actual): Fix bug in parsing of
2430 folder names that have spaces in them. The original function would
2431 truncate the folder name at the first space.
2432 (mh-speed-flists): Add -sequence option to flists. This guards
2433 against the user specifying something other than the unseen
2434 sequence in his .mh_profile.
2435 (mh-speed-parse-flists-output-line): New function that parses a
2436 single line in the output of flists to find the folder name and
2437 the counts of unseesn and total messages.
2438 (mh-speed-parse-flists-output): Fix parsing bug which truncates
2439 the folder names at the first space.
2441 * mh-index.el (mh-index-generate-pretty-name): New function which
2442 generates a nicer name for the search results. It trims white
2443 space at the beginning and end and replaces white space with
2444 underscores within the search regexp.
2445 (mh-index-search): Use mh-index-generate-pretty-name.
2447 * mh-loaddefs.el: Regenerated.
2449 2002-12-20 Satyaki Das <satyaki@theforce.stanford.edu>
2451 * mh-index.el (mh-index-new-folder): Add new folder to
2452 mh-folder-list to enable name completion.
2453 (mh-glimpse-execute-search, mh-swish-execute-search)
2454 (mh-swish++-execute-search): Fix documentation.
2456 * mh-seq.el (mh-thread-generate): Fixed a stupid bug where the wrong
2457 folder could get 'scan'ed when generating the threaded view.
2459 * mh-index.el (mh-index-search): If optional prefix arg is given
2460 then the search in the current index buffer is redone.
2461 (mh-glimpse-execute-search, mh-swish-execute-search)
2462 (mh-namazu-execute-search): Documentation fixes.
2464 * mh-e.el (mh-index-previous-search): New buffer local variable
2465 stores parameters of search that created the buffer.
2466 (mh-folder-mode): Make mh-index-previous-search buffer local.
2467 (mh-visit-folder): Tweak the function so that only a single window
2468 with the folder buffer is shown if mh-showing-mode is nil.
2470 * mh-loaddefs.el: Regenerated.
2472 2002-12-19 Peter S Galbraith <psg@debian.org>
2474 * mh-alias.el (mh-alias-add-alias): Bug fix.
2476 2002-12-19 Peter S Galbraith <psg@debian.org>
2478 * mh-alias.el (mh-alias-add-alias): New interactive command. Add
2479 ALIAS for ADDRESS in personal alias file.
2480 (mh-alias-grab-from-field): New interactive command. Add ALIAS for
2481 ADDRESS in personal alias file.
2482 (mh-alias-add-address-under-point): New interactive
2483 command. Insert an alias for email address under point.
2484 (mh-alias-suggest-alias): New function. Suggest an alias for STRING.
2485 (mh-alias-insert-file): New function. Return the alias file to
2486 write a new entry in.
2487 (mh-alias-address-to-alias): New function. Return the ADDRESS
2488 alias if defined, or nil."
2489 (mh-alias-from-has-no-alias-p): New function. Return t is From has
2490 no current alias set. Used as tool-bar button enable function.
2491 (mh-alias-add-alias-to-file): New function. Add ALIAS for ADDRESS
2492 in alias FILE without alias check or prompts.
2494 * alias.xpm, alias.pbm: New tool-bar icon for
2495 mh-alias-grab-from-field.
2497 * mh-e.el (mh-folder-line-matches-show-buffer-p): New function.
2498 Return t if the message under point in folder-mode is in the show
2501 * mh-utils.el (mh-goto-address-find-address-at-point): New
2502 function copied from goto-addr.el, which we don't want to
2503 force-load on users. Find e-mail address around or before point.
2504 (mh-address-mail-regexp): New defvar. A regular expression
2505 probably matching an e-mail address.
2507 * mh-customize.el (mh-alias-insert-file): New defcustom.
2508 Filename to use to store new MH-E aliases.
2509 (mh-tool-bar-folder-buttons): Enable mh-tool-bar-item-alias icon.
2511 * mh-comp.el (mh-extract-from-header-value): New function.
2512 Extract From: string from header.
2514 2002-12-19 Satyaki Das <satyaki@theforce.stanford.edu>
2516 * mh-index.el (mh-index-update-single-msg): New defvar controls
2517 max number of command line args.
2518 (mh-index-execute): New function which is to be used
2519 instead of xargs so that we don't give the shell too many command
2521 (mh-index-update-maps): Use mh-index-execute instead of xargs.
2522 (mh-index-search): Remove unused code. Also the first message in
2523 folder buffer is made current.
2525 2002-12-18 Peter S Galbraith <psg@debian.org>
2527 * mh-loaddefs.el: Regenerated.
2529 * mh-comp.el (mh-letter-tool-bar-map): Moved to mh-customize.el
2531 * mh-e.el (mh-folder-tool-bar-map): Moved to mh-customize.el
2533 * mh-utils.el (mh-get-msg-num): autoloaded.
2534 (mh-show-tool-bar-map): Moved to mh-customize.el
2536 * mh-customize.el (mh-tool-bar-item-*): 33 new defconsts for
2537 tool-bar setup and customization.
2538 (mh-tool-bar-folder-buttons-set): New function to setup the
2539 tool-bar after customization.
2540 (mh-tool-bar-folder-buttons): New defcustom to specify which icons
2541 appears in the tool-bar.
2542 (mh-tool-bar-letter-buttons-set): New function to setup the
2543 tool-bar after customization.
2544 (mh-tool-bar-letter-buttons): New defcustom to specify which icons
2545 appears in the tool-bar.
2546 (mh-tool-bar-show-set): New function to setup mh-letter-tool-bar-map.
2547 (mh-tool-bar-letter-set): New function to setup
2548 mh-letter-tool-bar-map.
2550 2002-12-18 Satyaki Das <satyaki@theforce.stanford.edu>
2552 * mh-e.el (mh-folder-mode-map): Change entries for "\t", "\M-\t"
2553 and backtab to call mh-index-next-folder and
2554 mh-index-previous-folder as appropriate.
2556 * mh-index.el (mh-index-next-folder, mh-index-previous-folder):
2557 New interactive functions which jumps to search results of next
2558 and previous folders respectively.
2560 * mh-loadddefs.el: Regenerated.
2562 * mh-index.el (mh-index-delete-folder-headers): Arrange for
2563 mh-goto-cur-msg to just go to the current message.
2565 * mh-e.el (mh-visit-folder): Since mh-scan-folder erases the whole
2566 buffer anyway, we don't need to delete the folder headers. Also
2567 index-data is non-nil only when the buffer folder doesn't exist.
2568 So we need to call mh-make-folder.
2569 (mh-folder-mode): Fix bug in that mh-index-checksum-origin-map was
2570 not being made buffer local!
2572 2002-12-17 Satyaki Das <satyaki@theforce.stanford.edu>
2574 * mh-e.el (mh-visit-folder): Fix bug.
2576 * mh-index.el (mh-md5sum-buffer): Buffer from which md5sum is run.
2577 (mh-index-folder-first, mh-index-folder-last)
2578 (mh-index-original-msg-list): Convenience macros aren't needed
2579 anymore since the data structure has been changed.
2580 (mh-index-update-single-msg): New function to update maps that
2581 relate MD5 checksums to actual messages and vice-versa for a
2583 (mh-index-update-maps): Do the above for all messages. If some
2584 messages don't have MD5 checksums, they are annotated with the
2586 (mh-index-search): Updated for the new version of mh-index-data.
2587 (mh-msg-exists-p): New function to test a message exists.
2588 (mh-index-insert-folder-headers): Updated for new mh-index-data.
2589 (mh-index-delete-folder-headers): New function used to eliminate
2590 original folder names from the buffer and make it look like a
2591 plain folder buffer. This is used from mh-process-commands.
2592 (mh-index-visit-folder): Use new version of mh-index-data.
2593 (mh-index-match-checksum): New function which checks if the
2594 X-MHE-Checksum header of a message matches.
2595 (mh-index-execute-commands): New function that rmm's the original
2596 messages. Then after mh-execute-commands executes it will seem
2597 that the original messages were executed upon. This completes the
2599 (mh-checksum-buffer): Renamed from mh-md5sum-buffer.
2600 (mh-checksum-cmd, mh-checksum-parser): New globals to allow
2601 different checksum programs to be used.
2602 (mh-checksum-choose): New functions to find a checksum program.
2603 (mh-openssl-parser, mh-md5sum-parser, mh-md5-parser): Functions to
2604 parse the output of md5, md5sum and openssl.
2605 (mh-index-update-maps): Use checksum parsing function.
2606 (mh-index-search): Set checksum choice. Add a call to recenter,
2607 otherwise the window point in the index buffer doesn't get set
2610 * mh-funcs.el (mh-pack-folder, mh-sort-folder): Enable these
2611 functions in folders created by index search.
2613 * mh-e.el (mh-index-msg-checksum-map)
2614 (mh-index-checksum-origin-map): New buffer local variables that
2615 keep track of message checksums (used to implement
2616 refiling/deletion for folders created by index folders).
2617 (mh-last-msg): Make the function behave like mh-first-msg.
2618 (mh-visit-folder): Add new optional argument which initializes
2619 folders created by mh-index-search.
2620 (mh-folder-mode): Make the variables mh-index-msg-checksum-map and
2621 mh-index-checksum-origin-map buffer local.
2622 (mh-process-commands): Call mh-index-execute-commands when called
2623 from an index search buffer. This will reflect the changes being
2624 made in the search folder to the original folders.
2626 * mh-loaddefs.el: Regenerated.
2628 2002-12-16 Satyaki Das <satyaki@theforce.stanford.edu>
2630 * mh-index.el (mh-index-insert-folder-headers): Fix a bug which
2631 caused the folder buffer to be marked as modified after rescanning
2634 2002-12-15 Satyaki Das <satyaki@theforce.stanford.edu>
2636 * mh-e.el (mh-visit-folder): The function should insert folder
2637 names if it is visiting a folder created by index search.
2639 * mh-index.el (mh-index-insert-folder-headers): The function now
2640 maintains the old value of buffer-modified-p and temporarily makes
2641 the buffer writable.
2643 * mh-utils.el (mh-show-index-visit-folder): New interactive
2644 function callable from show buffer that displays search results
2646 (mh-show-mode-map): Key binding for "v".
2648 * mh-speed.el: Fix credits.
2649 (mh-index-folder-speedbar-buttons)
2650 (mh-index-show-speedbar-buttons)
2651 (mh-index-folder-speedbar-key-map)
2652 (mh-index-show-speedbar-key-map)
2653 (mh-index-folder-speedbar-menu-items)
2654 (mh-index-show-speedbar-menu-items): Removed since the modes
2655 mh-index-folder-mode and mh-index-show-mode no longer exist.
2656 (mh-speed-extract-folder-name): Remove the bits about
2657 mh-index-folder-mode and mh-index-show-mode.
2659 * mh-seq.el (mh-copy-seq-to-eob): Updated to work properly with
2660 index search results.
2661 (mh-region-to-msg-list): Skip over non-scan lines.
2662 (mh-thread-inc, mh-thread-add-spaces, mh-thread-folder): Skip
2663 non-scan lines when populating mh-thread-scan-line-map.
2664 (mh-thread-folder, mh-toggle-threads): Move the check for buffer
2665 modification from mh-thread-folder to mh-toggle-threads.
2666 (mh-toggle-threads): When returning to unthreaded view insert the
2667 folder names if called from a index folder.
2669 * mh-index.el: Fix credits and update commentary.
2670 (font-lock-defaults, mh-index-buffer, mh-index-show-buffer)
2671 (mh-index-ma-x-msg-index, mh-index-other-buffer)
2672 (mh-index-matches, mh-index-previous-window-configuration)
2673 (mh-index-current-msg, mh-index-folder-mode-keymap)
2674 (mh-index-button-map, mh-index-folder-mode-help-messages): Remove
2675 eliminated variables.
2676 (mh-index-folder): New variable sets the MH folder under which the
2677 index searches are stored.
2678 (mh-index-folder-first, mh-index-folder-last)
2679 (mh-index-original-msg-list): Convenience macros used to pull data
2680 elements out of a list. If needed setf can be used to change them
2682 (mh-index-search): Rewritten to create real folders where all the
2683 normal folder operation. This partially fixes SF #623321 (refiles
2684 and deletes doesn't work on original messages).
2685 (mh-index-find-max-width, mh-index-search-again)
2686 (mh-index-insert-scan, mh-index-callback, mh-index-search)
2687 (mh-index-notate, mh-index-show, mh-index-header-display)
2688 (mh-index-next, mh-index-folder-mode, mh-index-show-mode):
2689 Functions, macros and modes removed.
2690 (mh-folder-exists-p): New function to check if a folder exists.
2691 (mh-index-new-folder): Generate a new folder name from a given
2692 base string that mimics the way emacs generates buffer names.
2693 (mh-index-insert-folder-headers): Insert folder names among the
2695 (mh-index-visit-folder): New interactive function to show the
2696 search results of one individual folder.
2697 (mh-swish++-execute-search): Update documentation.
2699 * mh-funcs.el (mh-pack-folder, mh-sort-folder): Disable these
2700 functions if index search results are being viewed.
2702 * mh-e.el (mh-folder-font-lock-keywords): Add highlight for
2704 (mh-index-data): New buffer local variable that will be used to
2705 store info about index search results.
2706 (mh-rescan-folder): Implement rescanning for index search results.
2707 (mh-folder-mode): Make mh-index-data buffer local.
2708 (mh-remove-all-notation): Modified to take into account not all
2709 lines in the folder buffer are normal scan lines.
2710 (mh-folder-mode-map): Add key binding for "v" to jump to original
2711 folder narrowed to search results.
2713 * mh-customize.el (mh-index-folder-face): Make it bold so that it
2714 will look like before.
2716 * mh-loaddefs.el: Regenerated.
2718 2002-12-12 Satyaki Das <satyaki@theforce.stanford.edu>
2720 * mh-seq.el (mh-map-to-seq-msgs): Modified so that it can be given
2721 a list of messages in addition to a sequence.
2722 (mh-region-to-sequence, mh-region-to-msg-list): The function
2723 mh-region-to-msg-list replaces mh-region-to-sequence. The new
2724 function avoids creating a dummy sequence in MH-E.
2725 (mh-thread-delete, mh-thread-refile, mh-put-msg-in-seq): Modified
2726 to use mh-region-to-msg-list.
2728 * mh-funcs.el (mh-copy-msg): Modified to use mh-region-to-msg-list.
2730 * mh-e.el (mh-delete-msg, mh-refile-msg, mh-undo): Modified to use
2731 mh-region-to-msg-list.
2733 * mh-comp.el (mh-forward): Modified to use mh-region-to-msg-list.
2734 The buffer-local variable mail-header-separator is no longer
2735 bound. This fixes a bug where the default value of
2736 mail-header-separator gets used if mh-forward is called in a fresh
2738 (mh-annotate-msg): Update this so that it will handle message
2740 (mh-insert-letter): Make the test stronger. Since %d is being used
2741 the argument better be an integer.
2743 * mh-loaddefs.el: Regenerated.
2745 2002-12-11 Satyaki Das <satyaki@theforce.stanford.edu>
2747 * mh-funcs.el (mh-copy-msg): Add support for transient-mark-mode.
2748 If mark is active and transient-mark-mode is enabled then all the
2749 messages in the region are copied.
2751 * mh-seq.el (mh-list-sequences): Use mh-coalesce-msg-list to print
2752 messages in sequence nicely. The prompt for the folder is removed
2753 (the current folder is always used) and the output is made nicer
2754 by not overflowing the screen width.
2756 * mh-loaddefs.el: Regenerated.
2758 2002-12-09 Satyaki Das <satyaki@theforce.stanford.edu>
2760 * mh-comp.el (mh-letter-complete): Checkdoc fix.
2762 * mh-seq.el (mh-thread-current-indentation-level): New function
2763 which returns the thread indentation level of current message.
2764 (mh-thread-next-sibling, mh-thread-previous-sibling): New
2765 interactive functions to jump to the next and previous siblings in
2766 thread tree respectively.
2767 (mh-thread-immediate-ancestor): New function to jump to ancestor
2768 of current message in thread tree.
2769 (mh-thread-ancestor): New interactive function to jump to
2770 immediate ancestor or to root message of current thread depending
2771 on optional argument.
2773 * mh-utils.el (mh-show-thread-ancestor)
2774 (mh-show-thread-next-sibling, mh-show-thread-previous-sibling):
2775 Interactive functions callable from the show buffer.
2776 (mh-show-thread-map): Bindings for Tu, Tp and Tn.
2778 * mh-e.el (mh-thread-map): Bindings for Tu, Tp and Tn.
2780 * mh-loaddefs.el: Regenerated.
2782 2002-12-09 Satyaki Das <satyaki@theforce.stanford.edu>
2784 * mh-seq.el (mh-region-to-sequence): Change name of region
2785 sequence created to 'mhe-region. This avoids any chance of
2786 collision with actual MH sequences.
2787 (mh-put-msg-in-seq, mh-thread-delete, mh-thread-refile): Change
2788 name of region sequence used to 'mhe-region. Also delete the
2789 'mhe-region sequence when done.
2791 * mh-e.el (mh-delete-msg, mh-refile-msg, mh-undo): Same as above.
2793 * mh-comp.el (mh-forward): Same as above.
2795 * mh-loaddefs.el: Regenerated.
2797 2002-12-08 Bill Wohler <wohler@newt.com>
2799 * mh-alias.el: Edited documentation. Broke up file into 2
2800 sections: Alias Loading and Alias Expansion. Made terminology
2801 consistent (replaced expand, substitute, and translate with
2803 (mh-alias-reload): Brought message in line with coding conventions
2804 and made more concise too.
2805 (mh-alias-translate): Renamed to mh-alias-expand.
2806 (mh-alias-substitute-aliases-flag): Renamed to
2807 mh-alias-expand-aliases-flag.
2808 (mh-alias-reload-local-users): Renamed to mh-alias-local-users.
2809 Now just returns an alist of local users rather than have
2811 (mh-alias-reload): Set timestamp at beginning of function to catch
2812 edge case when alias added just after ali runs. Changed logic to
2813 reflect return value of mh-alias-local-users.
2815 * mh-customize.el (mh-alias-substitute-aliases-flag): Renamed to
2816 mh-alias-expand-aliases-flag.
2817 (mh-alias-local-users): Fixed documentation.
2819 * mh-loaddefs.el: Regenerated
2821 2002-12-08 Satyaki Das <satyaki@theforce.stanford.edu>
2823 * mh-e.el (require): Load Gnus at compile time so that the
2824 constant gnus-version is defined when MH-E is being compiled.
2825 (mh-macro-expansion-time-gnus-version, mh-run-time-gnus-version):
2826 Use the constant gnus-version instead of the function gnus-version
2827 to find out about gnus version information.
2828 (gnus-version): Remove the autoload since it is not needed any
2831 2002-12-08 Bill Wohler <wohler@newt.com>
2833 * mh-e.el (mh-version): Moved compilation information in front of
2834 Emacs information. The idea is that you start at MH-E and move
2835 outwards. Show N/A if Gnus not compiled (be explicit). Matched
2836 coding style with other output statements. (Aside: not that
2837 efficiency matters here, but fewer calls to format have to be
2838 faster, right? ;-). Matched output style of old output to new
2839 statement--liked Satyaki's indentation better ;-).
2841 2002-12-08 Satyaki Das <satyaki@theforce.stanford.edu>
2843 * mh-e.el (gnus-version): Autoload the function for use in
2845 (mh-macro-expansion-time-gnus-version): New macro that finds the
2846 Gnus version at macro expansion time.
2847 (mh-run-time-gnus-version): New function to find the Gnus version
2849 (mh-version): Add information about Gnus versions available at
2850 compile time and run time.
2852 2002-12-07 Peter S Galbraith <psg@debian.org>
2854 * mh-alias.el (mh-alias-ali): Add optional argument. if USER is
2855 t, then assume ALIAS is an address and call ali with option -user.
2857 * mh-alias.el (mh-alias-filenames): if ARG is t, appends list of
2858 files from `mh-alias-system-aliases' to output list obtained from
2859 mhparam output user list only.
2860 (mh-alias-tstamp): Use it.
2862 2002-12-05 Satyaki Das <satyaki@theforce.stanford.edu>
2864 * mh-mime.el (mh-inline-vcard-p): A new function which decides if
2865 a vcard should be displayed inline.
2866 (mh-mime-display-single): Use mh-inline-vcard-p to display
2867 attached vcard as a signature if no other signature is present
2868 (this partially addresses SF #649216).
2870 2002-12-05 Peter S Galbraith <psg@debian.org>
2872 * mh-comp.el (mh-send-letter): Edits docs for mh-mml-to-mime
2873 getting run if variable `mh-mml-compose-insert-flag' is set.
2874 (mh-get-header-field): use buffer-substring-no-properties instead
2875 of buffer-substring.
2877 2002-12-04 Peter S Galbraith <psg@debian.org>
2879 * mh-loaddefs.el: Regenerated.
2881 * mh-customize.el (mh-customize): Add ;;;###mh-autoload tag.
2883 2002-12-04 Peter S Galbraith <psg@debian.org>
2885 * mh-loaddefs.el: Regenerated.
2887 * mh-comp.el (mh-letter-complete): New command to do alias or word
2888 completion in letter-mode.
2889 (mh-letter-mode-map): Add \M-\t binding for mh-letter-complete.
2891 * mh-alias.el (mh-alias-letter-mode-expand-alias-hook): Obsolete.
2892 Replaced by mh-letter-complete command.
2893 (mh-alias-reload-maybe): New function to rebuild alias table if
2895 (mh-alias-letter-expand-alias): No longer interactive. Use
2896 mh-letter-complete instead.
2898 2002-12-04 Peter S Galbraith <psg@debian.org>
2900 * mh-customize.el (mh-letter-complete-function): New defcustom.
2901 Function to call when completing outside of fields specified to
2904 * mh-alias.el (mh-alias-filenames):
2905 s/mh-mhparam-component/mh-profile-component/
2906 (mh-profile-component): Move to mh-utils.el and make interactive.
2907 (mh-read-address): Make it autoloaded.
2909 * mh-loaddefs.el: Regenerated.
2911 * mh-comp.el (mh-read-address): Removed. Replaced by mh-alias
2914 * mh-utils.el (mh-profile-component): Moved from mh-alias.el.
2916 2002-12-04 Satyaki Das <satyaki@theforce.stanford.edu>
2918 * mh-seq.el (mh-msg-is-in-seq): Formatting change.
2920 * mh-index.el (mh-index-insert-scan): Remove unused variable.
2922 2002-12-04 Bill Wohler <wohler@newt.com>
2924 * mh-loaddefs.el: Regenerated.
2926 * Makefile (MH-E-SRC): Moved mh-loaddefs.el into MH-E-LOADDEFS as
2927 this was causing a cycle.
2928 (MH-E-LOADDEFS): New variable to house mh-loaddefs.el.
2929 (emacs): Reintroduced autoloads.
2930 (autoloads): We're baaa-aack!
2931 (dist, install-emacs): Use MH-E-LOADDEFS.
2933 * mh-comp.el (mh-customize): Moved to mh-customize.el.
2935 * mh-customize.el (mh-customize): Moved here from mh-comp. Makes
2936 more sense, doesn't it?
2938 * mh-alias.el, mh-comp.el, mh-e.el, mh-index.el, mh-mime.el,
2939 mh-pick.el, mh-speed.el: Added mh-autoload cookie to all
2940 interactive functions.
2942 2002-12-04 Satyaki Das <satyaki@theforce.stanford.edu>
2944 * Makefile (world): Remove target.
2945 (mh-loaddefs.el): Add comment that only GNU Emacs can be used to
2946 regenerate mh-loaddefs.el.
2948 * mh-make.el: Removed.
2950 2002-12-04 Mark D. Baushke <mdb@gnu.org>
2952 * mh-e.el (recursive-load-depth-limit): Only modify the limit
2953 if it is an integer.
2955 2002-12-04 Peter S Galbraith <psg@debian.org>
2957 * mh-utils.el (mh-header-field-beginning): New function. Move to
2958 the beginning of the current header field.
2960 2002-12-04 Satyaki Das <satyaki@theforce.stanford.edu>
2962 * mh-make.el (mh-files): Read in the MH-E filenames from the
2963 environment variable where the Makefile puts it.
2964 (mh-generate-autoloads, step2): Simplified since we now have the
2965 complete file names.
2967 * Makefile (world): Pass the MH-E files into the script, so that
2968 the filenames don't need to be repeated in the script.
2970 2002-12-04 Bill Wohler <wohler@newt.com>
2972 * mh-loaddefs.el: New file. Check in automatically generated file
2973 and include in package for the benefit of those who don't want to
2976 * Makefile (MH-E-SRC): Added mh-loaddefs.el now that it is checked
2977 in and will be packaged.
2978 (emacs): Removed autoloads. Adding mh-loaddefs.el to MH-E-SRC is
2979 sufficient to build it.
2980 (compile): Depend on MH-E-SRC instead of MH-E-OBJ and pass $? into
2981 emacs so that Emacs is only invoked once to compile files. This
2982 speeds things up by a factor of 3. It would be nice to only pass
2983 those files that have been modified, but Emacs 21.4 will have
2984 batch-byte-compile-if-not-done which we might be able to copy into
2985 mh-make.el (or my proposed mh-e-dev.el which would be more
2987 (.SUFFIXES): Removed. Now that compile works directly on the
2988 sources, the implicit rule is obsolete.
2989 (autoloads): Deleted. See emacs change above.
2991 2002-12-03 Bill Wohler <wohler@newt.com>
2993 * Makefile (MH-E-SRC, emacs):
2995 2002-12-03 Satyaki Das <satyaki@theforce.stanford.edu>
2997 * mh-make.el (mh-emacs): Make failing condition more strict.
2998 (mh-loaddefs-end): Remove redundant statement.
3000 * Makefile (world): A little typo. The bug didn't seem to make any
3003 * mh-make.el: New script that compiles MH-E.
3004 (mh-loaddefs-beginning, mh-loaddefs-end): Don't save the autoloads
3005 file in between. Only save at the end.
3006 (mh-emacs-generate-autoloads, mh-xemacs-generate-autoloads)
3007 (mh-generate-autoloads): Replace the separate functions in Emacs
3008 and XEmacs with one that works in both variants. This simplifies
3010 (mh-generate-autoloads): doc fix.
3012 * Makefile (world): New target which works for both GNU Emacs and
3015 2002-12-03 Peter S Galbraith <psg@debian.org>
3017 * mh-alias.el (mh-mhparam-component): Don't raise error if call to
3020 * mh-alias.el (mh-alias-letter-expand-alias): Build alias table if
3021 not already available.
3023 2002-12-03 Bill Wohler <wohler@newt.com>
3025 * mh-customize.el (mh-show-threads-flag): Alphabetized.
3027 2002-12-03 Jeffrey C Honig <jch@honig.net>
3029 * Makefile: Moved .PHONY rule after all rule for compatibility
3030 with BSD/OS's old pmake.
3032 2002-12-03 Mark D Baushke <mdb@gnu.org>
3034 * mh-e.el (mh-get-new-mail): Simplify no-new-mail test.
3035 (mh-add-cur-notation): Remove unnecessary function.
3037 2002-12-03 Peter S Galbraith <psg@debian.org>
3039 * mh-identity.el (mh-identity-make-menu): Check if
3040 'mh-letter-mode-map' is bound, since this code also gets run when
3041 mh-customize.el is loaded at startup.
3043 2002-12-03 Satyaki Das <satyaki@theforce.stanford.edu>
3045 * mh-customize.el (mh-show-threads-flag): New customizable
3046 variable which controls if new folders start of in threaded mode
3047 (closes SF #646794).
3049 * mh-e.el (mh-rescan-folder): Fix the function so that threading
3050 is preserved across rescans.
3051 (mh-visit-folder, mh-inc-folder): The folder is threaded if it was
3052 already threaded or if mh-show-threads-flag is non-nil and the
3053 number of scan lines is fewer than mh-large-folders (closes SF
3056 2002-12-02 Mark D Baushke <mdb@gnu.org>
3058 * mh-e.el (mh-add-cur-notation): New function to mark the
3059 current message with the mh-note-cur character.
3060 (mh-get-new-mail): Use mh-add-cur-notation to undo the work of
3061 mh-remove-cur-notation if there was no new mail (closes SF #647681).
3063 * mh-e.el (mh-set-cmd-note): Do not update the default mh-cmd-note
3064 value (closes SF #643701).
3066 2002-12-02 Peter S Galbraith <psg@debian.org>
3068 * mh-alias.el (mh-alias-reload): Renamed from mh-alias-learn-aliases.
3069 (mh-alias-load-local-users): Renamed from mh-alias-learn-local-users.
3070 (mh-alias-passwd-alist): New variable, holding aliases extracted
3071 from the passwd file.
3072 (mh-alias-tstamp): New variable storing the timestamp for alias
3074 (mh-read-address, mh-alias-reload, mh-alias-reload-local-users):
3076 (mh-alias-minibuffer-confirm-address): Use mh-alias-translate.
3077 (mh-alias-translate): New function. Return translation for alias,
3078 checking if in blind or passwd list.
3079 (mh-alias-letter-expand-alias): Rewrite using
3080 mail-abbrev-complete-alias from mailabbrev.el
3081 (mh-alias-expand-alias-map): New variable.
3082 (mh-alias-ali): New function. Return formatted string of
3083 translated ALIAS from ali.
3084 (mh-mhparam-component): New function. Return COMPONENT value from
3085 mhparam, or nil if unset.
3086 (mh-alias-filenames): New function. Provide list of alias
3087 filenames from mhparam, or nil if none are set.
3089 * mh-customize.el (mh-alias-display-blind-name-on-completion-flag):
3091 (mh-alias-timestamp): Renamed to mh-alias-system-aliases.
3093 2002-12-02 Bill Wohler <wohler@newt.com>
3095 * Makefile (mh-loaddefs.el): Suppress creation of backup file.
3097 2002-12-02 Mark D. Baushke <mdb@gnu.org>
3099 * Makefile (mh-loaddefs.el): Simplify rule.
3101 * Makefile (clean): Remove mh-loaddefs.el* for good measure.
3102 ($(MH-E-OBJ)): Depend on mh-loaddefs.el to compile these.
3103 (autoloads, mh-loaddefs.el): Revamp rules.
3104 (mh-loaddefs.el-tail, autoloads-gen): Remove rules.
3106 * mh-e.el (recursive-load-depth-limit): Do not try to
3107 bump the value unless the variable exists.
3109 * mh-e.el (recursive-load-depth-limit): Bump value of
3110 recursive-load-depth-limit to 50 to allow emacs 21.1 which
3111 normally has a default value of 10 to be able to compile MH-E.
3113 2002-12-02 Satyaki Das <satyaki@theforce.stanford.edu>
3115 * mh-funcs.el (mh-pack-folder, mh-sort-folder): Fix the functions
3116 so that threading is preserved (needed for SF #646794).
3118 * mh-identity.el (mh-identity-signature-start)
3119 (mh-identity-signature-end): Checkdoc fixes.
3121 * mh-e.el (mh-previous-unread-msg, mh-next-unread-msg): Checkdoc
3124 2002-12-01 Satyaki Das <satyaki@theforce.stanford.edu>
3126 * mh-identity.el (compile): Make mh-identity.el compile without
3129 * mh-e.el (mh-previous-unread-msg, mh-next-unread-msg): New
3130 interactive functions that go to next and previous unread
3131 messages (closes SF #630328).
3132 (mh-folder-mode-map): Add key bindings for M-n and M-p to
3135 * mh-utils.el (mh-show-next-unread-msg)
3136 (mh-show-previous-unread-msg): New interactive functions that go
3137 to the next and previous unread messages respectively. These are
3138 callable from the show buffer.
3139 (mh-show-mode-map): Add key bindings for M-n and M-p to
3142 2002-12-01 Bill Wohler <wohler@newt.com>
3144 * mh-mime.el (mh-defun-compat): Make it indent like a defun.
3146 * mh-index.el (mh-defun-index): Make it indent like a defun.
3148 * mh-customize.el: New file (closes SF #643722).
3150 * Makefile (MH-E-SRC): Added mh-customize.el (closes SF #643722).
3152 * mh-speed.el, mh-pick.el, mh-mime.el, mh-index.el, mh-e.el,
3153 mh-comp.el: Moved all defgroups, defcustoms, and deffaces to
3154 mh-customize.el (closes SF #643722).
3156 * mh-utils.el (mh-xemacs-flag): Moved here from below since
3157 needed by mh-customize.el.
3158 (mh-customize): Required. mh-invisible-headers)
3159 (mh-bury-show-buffer-flag, mhl-formfile):
3160 Moved all defgroups, defcustoms, and deffaces to mh-customize.el
3161 (closes SF #643722) .
3163 * mh-identity.el (mh-comp-loaded): New variable in a desparate
3164 attempt to prevent an infinite loop.
3165 (eval-when-compile): Was able to remove these defvars as they are
3166 now predefined in mh-loaddefs and mh-customize.
3167 (mh-identity-list-set): Added ;;;###mh-autoload cookie.
3168 Moved all defgroups, defcustoms, and deffaces to mh-customize.el
3169 (closes SF #643722).
3171 * mh-alias.el (mh-e): Require this, as it needs defcustoms, which
3172 is in mh-customize which is required by mh-utils which is required
3174 Moved all defgroups, defcustoms, and deffaces to mh-customize.el
3175 (closes SF #643722).
3177 2002-11-30 Satyaki Das <satyaki@theforce.stanford.edu>
3179 * mh-e.el (mh-thread-map): Add key bindings "Td" and "To" (closes
3181 (mh-help-messages): Update help message for prefix map.
3182 (mh-help-messages): Doc fix.
3183 (mh-help-messages): Really fix it.
3185 * mh-utils.el (mh-show-thread-delete, mh-show-thread-refile): New
3186 interactive functions corresponding to mh-thread-delete and
3187 mh-thread-refile callable from the show buffer.
3188 (mh-show-thread-map): Add key bindings for "Td" "To".
3190 * mh-seq.el (mh-narrow-to-seq, mh-put-msg-in-seq, mh-rename-seq)
3191 (mh-narrow-to-subject, mh-delete-subject, mh-toggle-threads): Add
3192 mh-autoload cookies.
3193 (mh-thread-find-children): New function which finds the region
3194 containing all children of a message.
3195 (mh-thread-delete): New interactive function that marks for
3196 deletion the current message and its children.
3197 (mh-thread-refile): New interactive function that marks for
3198 refiling the current message and its children.
3200 2002-11-30 Bill Wohler <wohler@newt.com>
3202 * mh-funcs.el, mh-identity.el, mh-index.el, mh-pick.el, mh-seq.el:
3203 Removed MH-E autoloads. These are now provided by mh-loaddefs.el.
3204 Added ;;;###mh-autoload tag to selected functions so that
3205 autoloads for those functions can be automatically created in
3206 mh-loaddefs.el (closes half of SF #643722).
3208 * mh-mime.el (mh-buffer-data): Moved to mh-utils where it is used.
3209 Added ;;;###mh-autoload tag to selected functions so that
3210 autoloads for those functions can be automatically created in
3211 mh-loaddefs.el (closes half of SF #643722)..
3213 * mh-utils.el (mh-loaddefs): Added require.
3214 (mh-buffer-data): Moved here from mh-mime.el as it is used in
3216 (mh-set-cmd-note): Moved to mh-e.el.
3217 Removed MH-E autoloads. These are now provided by mh-loaddefs.el.
3218 Added ;;;###mh-autoload tag to selected functions so that
3219 autoloads for those functions can be automatically created in
3220 mh-loaddefs.el (closes half of SF #643722)..
3222 * mh-e.el (mh-set-cmd-note): Moved here from mh-utils.el since it
3223 uses mh-scan-format-file which is defined here.
3224 Removed MH-E autoloads. These are now provided by mh-loaddefs.el.
3225 Added ;;;###mh-autoload tag to selected functions so that
3226 autoloads for those functions can be automatically created in
3227 mh-loaddefs.el (closes half of SF #643722)..
3229 * mh-comp.el, mh-speed.el (mh-utils): Removed require. mh-utils is
3230 provided via mh-e.el.
3231 Removed MH-E autoloads. These are now provided by mh-loaddefs.el.
3232 Added ;;;###mh-autoload tag to selected functions so that
3233 autoloads for those functions can be automatically created in
3234 mh-loaddefs.el (closes half of SF #643722)..
3236 * Makefile (emacs): Add dependency on autoloads.
3237 (clean): Remove mh-loaddefs.el too.
3238 (autoloads): New target. Builds mh-loaddefs.el.
3239 (mh-loaddefs.el): New target. Initializes mh-loaddefs.el.
3240 (mh-loaddefs.el-tail): New target. Appends to mh-loaddefs.el.
3241 (autoloads-gen): Runs batch-update-autoloads to populate
3242 mh-loaddefs.el (closes half of SF #643722)..
3243 (auto-autoloads.elc): Renamed from autoloads to be explicit about
3244 file that's created.
3245 (custom-load.elc): Ditto.
3247 2002-11-30 Satyaki Das <satyaki@theforce.stanford.edu>
3249 * mh-seq.el (mh-thread-last-ancestor): New variable which keeps
3250 track of oldest ancestor of last message. If due to narrowing the
3251 common ancestor of two messages is lost then one of them is
3252 promoted to be the parent of the other. This variable helps in
3254 (mh-thread-generate-scan-lines): Group messages which belong to
3255 the same thread tree, even if a common ancestor is no longer
3257 (mh-thread-folder, mh-copy-seq-to-eob, mh-thread-inc): Bind
3258 mh-thread-last-ancestor to nil when calling
3259 mh-thread-generate-scan-lines.
3261 * mh-mime.el (font-lock): Font-lock required at compile time to
3262 avoid warning about font-lock-maximum-size
3263 (mh-display-smileys, mh-display-emphasis): Show graphical smileys
3264 and emphasis only if message isn't too large.
3266 * mh-e.el (mh-visit-folder): Revisiting a buried folder which has
3267 been threaded or narrowed confuses MH-E. Even though the folder is
3268 displayed as not threaded and not narrowed, MH-E still believes
3269 the folder is in the previous state. This can cause problems when
3270 trying to narrow/thread the folder. The change fixes this.
3272 * mh-mime.el (mh-mime-display-alternative): The setting of
3273 mh-display-buttons-for-inline-parts-flag was not being used when
3274 displaying one of the alternatives. This change fixes that.
3276 * mh-comp.el (mh-show-buffer-message-number): Replace subseq with
3278 (mh-filter-out-non-text): When filtering out MIME buttons from
3279 yanked text, the last line of the MIME part was getting lost. The
3280 fix avoids that and removes only the last new line instead.
3282 2002-11-29 Peter S Galbraith <psg@debian.org>
3284 * Makefile (MH-E-SRC): Add mh-alias.
3286 * mh-alias.el: Assign copyright to FSF instead of myself.
3287 (mh-read-address): Add support for emacs-21's
3288 completing-read-multiple to prompt for multiple entries.
3289 (mh-alias-PC-complete-address): Deleted.
3290 (mh-alias-learn-aliases): Use mh-exec-cmd-quiet instead of old kludge.
3291 (mh-alias-letter-mode-expand-alias-hook): Simplify.
3292 (mh-alias-hostname): Deleted.
3293 (mh-alias-substitute-aliases-flag): Change default to nil.
3294 (mh-alias-display-blind-name-on-completion-flag) Change default to
3296 (mh-alias-alist): Now holds alias values.
3297 (mh-alias-lowercase-alist): Deleted.
3298 (mh-alias-minibuffer-confirm-address, mh-alias-learn-aliases)
3299 (mh-alias-learn-local-users, mh-alias-letter-expand-alias): Use
3300 new mh-alias-alist instead of old mh-alias-lowercase-alist.
3302 * mh-alias.el: Moved from contrib/ directory. Now part of MH-E!
3304 * Makefile (MH-E-SRC): Add mh-identity.
3306 * mh-identity.el (mh-compose-and-send-mail, mh-insert-identity)
3307 (mh-identity-make-menu, mh-identity-default, mh-identity-menu):
3308 Moved to mh-comp.el.
3310 * mh-comp.el (mh-compose-and-send-mail): Add mh-identity support.
3311 (mh-insert-identity, mh-identity-make-menu, mh-identity-default)
3312 (mh-identity-menu): Added from mh-identity.el
3314 2002-11-29 Bill Wohler <wohler@newt.com>
3316 * mh-comp.el, mh-e.el, mh-funcs.el, mh-identity.el, mh-index.el,
3317 mh-mime.el, mh-pick.el, mh-seq.el, mh-speed.el, mh-utils.el:
3318 Ran indent-region, reformatted long lines, ran untabify.
3319 (indent-tabs-mode): Set file local variable to nil.
3321 2002-11-29 Bill Wohler <wohler@newt.com>
3323 * Released MH-E version 7.0.
3325 * mh-e.el (Version, mh-version): Updated for release 7.0.
3327 * mh-comp.el (subseq, search): Require cl instead of autoloading
3328 these due to compilation warnings in CVS Emacs.
3330 2002-11-23 Bill Wohler <wohler@newt.com>
3332 * MH-E-NEWS: Emphasize the renaming of the variables at the top of
3335 2002-11-22 Satyaki Das <satyaki@theforce.stanford.edu>
3337 * mh-utils.el (mh-show-mode-map): Remove binding for RET since it
3338 is not needed and the binding is more useful to toggle display of
3341 * mh-mime.el (mh-mime-button-commands): Remove bindings for "i"
3342 and "o" from MIME buttons.
3343 (mh-insert-mime-button): Change comment to reflect change in
3346 2002-11-21 Bill Wohler <wohler@newt.com>
3348 * Released MH-E version 6.1.91.
3350 * mh-e.el (Version, mh-version): Updated for release 6.1.91.
3352 * MH-E-NEWS: Inline HTML parts supported with Gnus 5.10, not 5.9.
3354 2002-11-21 Mark D. Baushke <mdb@gnu.org>
3356 * mh-comp.el (mh-letter-insert-signature-hook): This should be in
3357 customize-group mh-compose.
3359 2002-11-21 Satyaki Das <satyaki@theforce.stanford.edu>
3361 * mh-utils.el (load): Load mm-view.el here so that
3362 mm-inline-text-html would be defined if available.
3363 (mh-mm-inline-media-tests): If mm-inline-text-html is available
3364 then use it, otherwise fall back on using mm-inline-text (closes
3367 * mh-mime.el (load): Remove the load of mm-view here since it
3368 happens in mh-utils.el now.
3370 2002-11-15 Bill Wohler <wohler@newt.com>
3372 * Released MH-E version 6.1.90.
3374 * README (Compile): New section. Users must now compile MH-E due
3375 to the vagaries of the various versions of gnus.
3377 * Makefile (MH-E-IMG): Added reply-all.pbm, reply-all.xpm,
3378 reply-from.pbm, reply-from.xpm, reply-to.pbm, reply-to.xpm.
3379 (MH-E-ETC-ETC): Added Makefile and README.
3380 (dist): Depend on all, so clean happens. Don't add .elc files to
3381 tarball as they are built upon installation now.
3383 2002-11-15 Satyaki Das <satyaki@theforce.stanford.edu>
3385 * mh-e.el (mh-process-commands): Fix a bug in mh-execute-commands.
3386 If called in threaded mode, cur was always getting set to the last
3387 message in the folder.
3389 2002-11-14 Bill Wohler <wohler@newt.com>
3391 * mh-e.el (Version, mh-version): Updated for release 6.1.90.
3393 * MH-E-NEWS, README: Updated for release 7.0.
3395 * mh-utils.el (mh-index-search): Added full docstring which new
3396 users will need before they run a search!
3397 (mh-swish++-execute-search, mh-swish-execute-search,
3398 mh-namazu-execute-search mh-glimpse-execute-search): Added
3399 autoloads with full docstrings for the same reason!
3401 * mh-e.el (mh-limit-map): Removed / / alias for
3402 mh-narrow-to-subject.
3404 * mh-utils.el (mh-show-thread-map): Removed / / alias for
3405 mh-show-narrow-to-subject.
3407 * mh-seq.el (mh-delete-subject): Checkdoc fix.
3409 * mh-e.el (mh-help-messages): Added / prefix character to help
3410 string. Tweaked / helpstring a little.
3412 2002-11-14 Mark D. Baushke <mdb@gnu.org>
3414 * mh-utils.el (mh-set-cmd-note): Fix nitpick by adding one to the
3415 width for cosmetic reasons.
3417 2002-11-14 Peter S Galbraith <psg@debian.org>
3419 * mh-identity.el (mh-insert-identity): Fix a few things undone by
3421 (mml-insert-tag): Add autoload.
3423 2002-11-13 Mark D. Baushke <mdb@gnu.org>
3425 * mh-identity.el (mh-insert-identity): A value of either nil or
3426 "" should cause the field to be removed.
3427 (mh-identity-list): Update the docstring.
3429 2002-11-13 Peter S Galbraith <psg@debian.org>
3431 * mh-e.el (mh-limit-map): New key map for limits (subject for now).
3432 * mh-utils.el (mh-show-limit-map): Same.
3434 * mh-seq.el (mh-delete-subject): Renamed from
3435 mh-delete-subject-sequence.
3436 (mh-narrow-to-subject): Renamed from mh-narrow-to-subject-sequence.
3437 (mh-next-unseen-subject-sequence): Removed. :-(
3439 * mh-seq.el: Use 'em.
3441 2002-11-13 Mark D. Baushke <mdb@gnu.org>
3443 * mh-e.el (mh-alt-show): New defalias for mh-show.
3444 (mh-alt-refile-msg): New defalias for mh-refile-msg.
3445 (mh-alt-send): New defalias for mh-send.
3446 (mh-folder-mode-map): Use mh-alt-show, mh-alt-refile-msg and
3447 mh-alt-send for the alias bindings.
3448 (mh-alt-visit-folder): New defalias for mh-visit-folder.
3449 (mh-folder-map): Use it.
3450 (mh-folder-message-menu): Revert previous change.
3452 2002-11-13 Peter S Galbraith <psg@debian.org>
3454 * mh-e.el (mh-folder-message-menu): Make key binding "o" appear in
3455 menu for mh-refile-msg.
3457 2002-11-13 Satyaki Das <satyaki@theforce.stanford.edu>
3459 * mh-seq.el (mh-thread-generate-scan-lines): In threaded view,
3460 scan lines of duplicate messages were too long. The change fixes
3463 2002-11-13 Bill Wohler <wohler@newt.com>
3465 * mh-utils.el (mh-adaptive-cmd-note-flag): Improved grammar in
3468 * mh-speed.el (mh-speed-run-flists-flag): While documenting this
3469 variable in the release notes, I was unsure what would happen if
3470 set to nil. So, I clarified the docstring and indicated
3471 implications of setting this variable to nil, and offered manual
3474 2002-11-13 Satyaki Das <satyaki@theforce.stanford.edu>
3476 * mh-index.el (mh-index-quit): Fix documentation and run
3477 mh-before-quit-hook and mh-quit-hook.
3479 2002-11-13 Bill Wohler <wohler@newt.com>
3481 * mh-utils.el (with-mh-folder-updating): Renamed local variable
3482 mh-save-modification-flag to save-modification-flag.
3484 2002-11-12 Bill Wohler <wohler@newt.com>
3486 * mh-index.el (mh-index-keymap): Renamed to
3487 mh-index-folder-mode-keymap to be a closer to the usual keymap
3488 naming convention. Since we want our own keymap and not inherit
3489 the one in mh-folder-mode, we need to use a suffix other than
3492 * mh-e.el (mh-folder-sequence-menu): s/Msg/Message.
3494 (mh-folder-message-menu): s/Msg/Message. Removed redundant refile
3496 (mh-folder-folder-menu): Aligned symbols.
3498 * mh-index.el (mh-index-folder-message-menu): s/Msg/Message.
3500 * mh-utils.el (mh-show-sequence-menu): s/Msg/Message.
3502 (mh-show-message-menu): s/Msg/Message. Removed redundant refile
3504 (mh-show-folder-menu): Aligned symbols.
3506 2002-11-12 Satyaki Das <satyaki@theforce.stanford.edu>
3508 * mh-index.el (mh-index-matches, mh-index-current-match): Remove
3509 these variables since they were only used for glimpse and grep.
3510 Now the functionality of all the indexing programs will be
3512 (mh-index-search, mh-index-insert-scan, mh-defun-index)
3513 (mh-index-show): Simplify functions since matches are no longer
3515 (mh-index-parse-match): Remove function.
3517 * mh-e.el (mh-scan-cmd-note-width, mh-scan-destination-width)
3518 (mh-scan-date-width, mh-scan-date-flag-width)
3519 (mh-scan-from-mbox-width, mh-scan-from-mbox-sep-width): New
3520 variables to keep track of the widths of the different fields in
3522 (mh-scan-field-from-start-offset, mh-scan-field-from-end-offset)
3523 (mh-scan-field-subject-start-offset): Offsets that are computed
3524 from the scan line widths.
3526 * mh-seq.el (mh-copy-seq-to-eob, mh-thread-inc)
3527 (mh-thread-parse-scan-line): Use new variables that remember the
3528 various offsets in place of integer constants.
3529 (mh-thread-generate-scan-lines): Space shouldn't be added here!
3531 2002-11-12 Bill Wohler <wohler@newt.com>
3533 * mh-e.el (mh-scan-format-mh, mh-scan-format-nmh): Noted that the
3534 first column is column number 0 and changed "sixth column" to
3535 "fifth column" accordingly.
3537 * mh-index.el (mh-index-folder-mode): Clarified method of replying
3538 in mode documentation.
3539 (mh-index-folder-tool-bar-map): s/mh-e/MH-E/.
3541 * mh-e.el (mh-generate-new-cmd-note): Try not to mention internal
3542 variable mh-cmd-note in docstrings.
3544 * mh-utils.el (mh-adaptive-cmd-note-flag): Set default value to t.
3545 Reworded docstring so it doesn't mention internal variable
3546 mh-cmd-note. Added information about using fixed-width message
3548 (mh-cmd-note): Mention mh-set-cmd-note in docstring. Also suggest
3549 that it is updated dynamically only if mh-scan-format-file is t.
3550 (mh-set-cmd-note): Grammer fix in docstring.
3551 (mh-cmd-note): Noted that the first column is column number 0.
3553 * mh-e.el (mh-scan-format-file): Added information about
3554 mh-set-cmd-note and mh-adaptive-cmd-note-flag to docstring.
3556 * mh-index.el (mh-index-keymap): Added bindings for i
3557 (mh-inc-folder), m (mh-send alias), and s (mh-send) since these
3558 appear to be supported and are found in the toolbar.
3559 (mh-index-folder-key-map): Ditto for f (mh-visit-folder alias), o
3560 (mh-visit-folder) alias, and v (mh-visit-folder).
3561 (mh-index-folder-mode-help-messages): Changes for above.
3562 (mh-index-folder-message-menu, mh-index-folder-folder-menu): New
3563 menus. I decided to delete the unavailable items since greying out
3564 implies that the user can do something to access them. In this
3565 case, that's not the case. Well, that's not entirely true--the
3566 user could write code for those functions ;-).
3567 (mh-index-folder-mode): Use new menus.
3569 * mh-utils.el (mh-prompt-for-folder): Added optional argument
3570 default-string which can be used in case the string for default
3571 isn't intuitive enough.
3573 * mh-index.el (mh-index-search): Made default prompt more
3574 intuitive (I hope!).
3576 2002-11-11 Peter S Galbraith <psg@debian.org>
3578 * mh-identity.el (mh-header-field-delete): Remove save-excursion.
3579 Strange that this worked for me before... Thanks to Jeff for the
3581 (mh-insert-identity): Numerous tweaks and fixes from Jeff who also
3582 adds a nicer-looking MIME header for signatures inserted after
3585 2002-11-11 Satyaki Das <satyaki@theforce.stanford.edu>
3587 * mh-seq.el (mh-thread-parse-scan-line): Generalize this function
3588 so that it can take a string containing the scan-line as argument
3589 in addition to using the line at point.
3590 (mh-thread-add-spaces): New function to pad each scan line to the
3591 appropriate length. This is called when mh-cmd-note is increased.
3593 * mh-e.el (mh-generate-new-cmd-note): Make this work on a threaded
3594 folder by using mh-thread-add-spaces to pad the pre-existing lines
3595 in mh-thread-scan-line-map appropriately.
3596 (mh-thread-add-spaces): Autoload from mh-seq.
3598 2002-11-11 Mark D. Baushke <mdb@gnu.org>
3600 * mh-index.el: Fix checkdoc nit.
3602 * mh-mime.el (mh-display-buttons-for-inline-parts-flag): Renamed
3603 from mh-display-buttons-for-inline-parts.
3604 (mh-mime-display-single): Use it.
3605 This addresses part of SF #627015.
3607 * mh-e.el (mh-print-background-flag): Renamed from
3608 mh-print-background.
3609 * mh-funcs.el (mh-print-msg): Use it.
3610 This addresses part of SF #627015.
3612 * mh-comp.el (mh-delete-yanked-msg-window-flag): Renamed from
3613 mh-delete-yanked-msg-window.
3614 (mh-yank-from-start-of-msg, mh-yank-cur-msg): Use it.
3615 This addresses part of SF #627015.
3617 * mh-utils.el (mh-update-sequences-after-mh-show-flag): Renamed
3618 from mh-update-sequences-after-mh-show.
3619 (mh-show-msg): Use it.
3620 This addresses part of SF #627015.
3622 * mh-utils.el (mh-decode-quoted-printable-flag): Renamed from
3623 mh-decode-quoted-printable
3624 (mh-display-msg, mh-decode-quoted-printable-have-mimedecode):
3626 This addresses part of SF #627015.
3628 * mh-utils.el (mh-recursive-folders-flag): Renamed from
3629 mh-recursive-folders.
3630 (mh-make-folder-list-background): Use it.
3631 * mh-funcs.el (mh-list-folders): Ditto.
3632 This addresses part of SF #627015.
3634 * mh-utils.el (mh-auto-folder-collect-flag): Renamed from
3635 mh-auto-folder-collect.
3636 (mh-find-path): Use it.
3637 This addresses part of SF #627015.
3639 * mh-utils.el (mh-decode-mime-flag): Renamed from
3641 * mh-utils.el (mh-show-mode, mh-show-xface)
3642 (mh-decode-quoted-printable, mh-display-msg, mh-display-msg): Use it.
3643 * mh-mime.el (mh-graphical-smileys-flag)
3644 (mh-graphical-emphasis-flag): Ditto.
3645 * mh-index.el (mh-index-search, mh-index-show): Ditto.
3646 * mh-e.el (mh-header-display): Ditto.
3647 This addresses part of SF #627015.
3649 * mh-e.el (mh-make-folder-mode-line): Use save-window-excursion
3650 to get back to the current message.
3652 2002-11-10 Satyaki Das <satyaki@theforce.stanford.edu>
3654 * mh-index.el (mh-index-keymap, mh-index-page-msg)
3655 (mh-index-folder-tool-bar-map): Replace mh-index-scroll-up with
3657 (mh-index-keymap, mh-index-previous-page): Replace
3658 mh-index-scroll-down with mh-index-previous-page.
3660 2002-11-09 Satyaki Das <satyaki@theforce.stanford.edu>
3662 * mh-index.el (autoload/require): Load mh-mime when mh-index.el is
3663 loaded. This fixes the infinite load loop. I am not sure what the
3664 actual problem is. Also removed the nop requires/autoloads.
3665 (mh-defun-index): Use the right argument for mh-recenter.
3666 Otherwise it misbehaves for the default value of
3669 * mh-e.el (mh-goto-next-button): Fix infinite loop when S-Tab was
3670 used on first line of index folder buffer.
3672 2002-11-09 Peter S Galbraith <psg@debian.org>
3674 * mh-index.el (mh-index-folder-tool-bar-map): Tool-bar for
3676 (mh-index-folder-mode): Use it.
3677 (mh-index-keymap): Added mouse-2 binding, like in regular
3680 2002-11-08 Satyaki Das <satyaki@theforce.stanford.edu>
3682 * mh-index.el (mh-index-folder-mode): Fix doc string for major
3683 mode. It was pointing to the wrong keymap.
3684 (mh-index-show-mode): Fix doc string for mode. Also add mh-help
3687 * mh-comp.el (mh-forward, mh-yank-cur-msg): Use new macro
3688 mh-mark-active-p instead. This does the right thing for different
3690 (mh-yank-cur-msg): Add a space between sexprs.
3692 * mh-utils.el (mh-mark-active-p): New macro which papers over
3693 diffences between GNU Emacs and XEmacs. The variables mark-active
3694 and transient-mark-mode are used in GNU Emacs while zmacs-regions
3695 and region-active-p are used in XEmacs.
3697 * mh-seq.el (mh-put-msg-in-seq, mh-thread-ancestor-p): Use
3698 mh-mark-active-p as above.
3700 * mh-e.el (mh-delete-msg, mh-refile-msg, mh-undo): Use
3701 mh-mark-active-p as above.
3703 2002-11-06 Peter S Galbraith <psg@debian.org>
3705 * mh-comp.el (mh-yank-cur-msg): Fix for XEmacs. It didn't work
3706 with a selected region, and left the inserted text selected (in
3707 reverse video). I didn't use SF patch #402315 to implement this.
3709 2002-11-05 Peter S Galbraith <psg@debian.org>
3711 * mh-utils.el (mh-show-tool-bar-map): Change call to
3712 mh-tool-bar-search-command such that user can customize it for the
3715 * mh-e.el (mh-folder-tool-bar-map): Same.
3717 2002-11-05 Bill Wohler <wohler@newt.com>
3719 * mh-utils.el, mh-e.el (mh-tool-bar-search-function): Renamed from
3720 mh-tool-bar-search-command.
3722 * mh-index.el (mh-index-search): Backed out previous change to
3723 prompt. There ain't no folder named "all."
3725 * mh-utils.el (mh-tool-bar-search-command): Added mh-search-folder
3726 and mh-index-search to the docstring so that user can easily click
3727 on them for more information.
3729 * mh-pick.el (mh-search-folder): Mention that this function uses
3730 the MH pick command to give the user more information when
3731 choosing between mh-search-folder and mh-index-folder.
3733 * mh-index.el (mh-index-search): Edited the docstring. Direct the
3734 user to mh-index-program if necessary.
3735 (mh-index-program): Edited this docstring too. Viewing the help
3736 in a *Help* buffer really exposes grammatical flaws.
3738 2002-11-05 Peter S Galbraith <psg@debian.org>
3740 * mh-utils.el (mh-tool-bar-search-command): New defcustom to set
3741 what search function to use in tool-bar.
3742 (mh-show-tool-bar-map): Use it.
3744 * mh-e.el (mh-folder-tool-bar-map): Use it.
3746 2002-11-05 Bill Wohler <wohler@newt.com>
3748 * mh-index.el (mh-index-search): Changed default prompt from "+"
3749 to "all". mh-prompt-for-folder doesn't seem to mind.
3751 * mh-e.el (mh-folder-folder-menu): Added menu entry for
3754 * mh-utils.el (mh-show-folder-menu): Added menu entry for
3757 * mh-index.el: Added commentary on supported search engines and
3758 for getting started (initializing database).
3760 2002-11-04 Satyaki Das <satyaki@theforce.stanford.edu>
3762 * mh-index.el (mh-index-keymap, mh-index-folder-key-map): Move key
3763 binding of "i" to "Fi".
3764 (mh-index-folder-mode-help-messages): Change help message to
3765 reflect above change.
3767 2002-11-04 Bill Wohler <wohler@newt.com>
3769 * mh-index.el (mh-index-program, mh-indexer): Swapped names since
3770 the former seems like a better user variable name. If you've
3771 customized mh-indexer, be sure to toss it out and customize
3774 2002-11-04 Satyaki Das <satyaki@theforce.stanford.edu>
3776 * mh-index.el (mh-indexer-choices): Not having the quotes in the
3777 binary names is a bit nicer since that maintains uniformity with
3779 (mh-index-choose): Use symbol-value instead of eval. Eval should
3780 be avoided except when it can't be :-).
3782 2002-11-04 Bill Wohler <wohler@newt.com>
3784 * mh-index.el (mh-index-program): New variable to hold the name of
3785 the indexer that was found; use this instead of clobbering
3786 user-customizable variable mh-indexer.
3787 (mh-index-search): Use it. Added comments to keep others from
3788 doing what I had done (fortunately, I caught myself before
3790 (mh-index-choose): Set mh-index-program instead of mh-indexer.
3791 Update docstring to describe side-effects.
3793 * mh-index.el (mh-indexer): Added swish++ to docstring. Chances
3794 are good that if someone has both swish++ and swish, they want to
3795 use the much faster, much smaller swish, so move it up in the
3797 (mh-indexer-choices): Ditto for rationale for moving swish++ up in
3798 priority over swish. Also, use -binary symbols instead of
3799 hard-coding binary names. This allows package installers to
3800 customize the location of the binaries in site-lisp and still have
3801 the auto-detection code work. It also allows one to have alternate
3802 binary names (see mh-swish++-binary).
3803 (mh-index-search): Ditto (moving swish++ up).
3804 (mh-swish++-binary): Look for search++, then search. The rationale
3805 is that a package maintainer may rename search to search++ if
3806 search is already in use (e.g., Debian) so try it first.
3807 (mh-swish++-execute-search): Replaced Satyaki's path with dummy
3808 path in docstring. Also removed RecurseSubdirs since this is the
3809 default. Added comment that index might be named index++ on some
3810 systems (e.g., Debian).
3811 (mh-index-choose): Updated to work with new mh-indexer-choices.
3813 2002-11-04 Peter S Galbraith <psg@debian.org>
3815 * mh-identity.el (mh-identity-list-set): Don't call easy-menu-add
3816 here, since that adds the menu to the Customize buffer in XEmacs.
3818 2002-11-04 Peter S Galbraith <psg@debian.org>
3820 * mh-comp.el (mh-mhn-compose-insert-flag)
3821 (mh-mml-compose-insert-flag): Removed eval-when-compile defvar.
3823 * mh-mime.el (mh-mhn-compose-insert-flag)
3824 (mh-mml-compose-insert-flag): Move variables to mh-utils.el.
3825 Fixes mh-letter-menu for XEmacs.
3827 2002-11-04 Eric Ding <eding@rational.com>
3829 * mh-comp.el (mh-rejected-letter-start): add another string
3831 2002-11-04 Eric Ding <ericding@alum.mit.edu>
3833 * mh-comp.el (mh-rejected-letter-start): regexp-opt doesn't take
3834 regexps as args, only regular strings
3836 2002-11-04 Peter S Galbraith <psg@debian.org>
3838 * mh-comp.el (mh-insert-mail-followup-to): Don't modify a
3839 pre-existing M-F-T field. If a nmh replgroupcomps propagates a
3840 M-F-T field in a message reply, then we have to have it alone.
3842 2002-11-02 Bill Wohler <wohler@newt.com>
3844 * mh-comp.el, mh-e.el, mh-funcs.el, mh-identity.el, mh-index.el,
3845 mh-mime.el, mh-pick.el, mh-seq.el, mh-speed.el, mh-utils.el,
3846 mh-xemacs-compat.el: Added Local Variables section. Defined
3847 sentence-end-double-space to be nil so that those who might not
3848 buy my setting of this variable can at least run checkdoc without
3849 a whole lot of noise.
3851 2002-11-02 Peter S Galbraith <psg@debian.org>
3853 * mh-identity.el: New file. Multiple Identify support for MH-E.
3854 Used to easily set different fields such as From and Organization,
3855 as well as diffrent signature files. This file won't be included
3858 2002-11-02 Bill Wohler <wohler@newt.com>
3860 * mh-mime.el (mh-mm-save-part): New function to wrap mm-save-part
3861 from Gnus 5.10 to make it explicit which code has been
3863 (mh-mime-save-part): Call mh-mm-save-part instead of cut-n-pasted
3864 code from Gnus 5.10.
3866 2002-11-02 Peter S Galbraith <psg@debian.org>
3868 * mh-comp.el (mh-yank-from-start-of-msg): Edit docstring to
3869 mention related variables mh-reply-show-message-flag and
3870 mh-delete-yanked-msg-window.
3871 (mh-reply): Change the "Reply to whom" prompt.
3873 2002-11-01 Bill Wohler <wohler@newt.com>
3875 * mh-e.el (mh-show-hook): Moved to mh-utils.el where it is used.
3876 (mh-folder-list-change-hook): Converted this from defvar in other
3877 files to defcustom here. It is called, not documented as
3878 obsolete, and might as well be documented.
3879 (mh-inc-folder, mh-quit, mh-delete-a-msg, mh-refile-a-msg,
3880 mh-process-commands, mh-update-unseen): Added missing
3881 documentation about hook, or made verbiage about hook consistent
3882 throughout, even if the function isn't interactive.
3884 * mh-utils.el (mh-folder-list-change-hook): Moved defvar to mh-e
3885 and made it a defcustom.
3886 (mh-show-mode-hook): Put it back in (actually, it was in mh-e.el,
3887 but this is the place where it is called).
3888 (mh-show-hook): Moved here from mh-e.el since it's called here.
3889 (mh-show-mode): Call mh-show-mode-hook.
3890 (mh-show-mode, mh-show-msg, mh-find-path, mh-prompt-for-folder,
3891 mh-prompt-for-folder, mh-set-folder-list): Added missing
3892 documentation about hook, or made verbiage about hook consistent
3893 throughout, even if the function isn't interactive.
3895 * mh-comp.el (mh-send-letter): Made verbiage about hook consistent
3897 (mh-insert-prefix-string): Made docstring more descriptive of what
3900 * mh-funcs.el (mh-kill-folder): Added missing documentation about
3903 * mh-index.el (mh-index-show-hook): Moved defvar to defcustom.
3904 (mh-index-show): Made verbiage about hook consistent throughout.
3906 * mh-mime.el (mh-edit-mhn-hook): Moved defvar to defcustom.
3907 (mh-edit-mhn): Added missing documentation about hook.
3909 * mh-pick.el (mh-pick-mode): Made verbiage about hook consistent
3910 throughout. Call the damn hook.
3912 2002-11-01 Satyaki Das <satyaki@theforce.stanford.edu>
3914 * mh-comp.el (mh-insert-mail-followup-to-list): Fix typo so that
3915 it will look right in info.
3917 * mh-index.el (mh-index-search): Change argument name from
3918 new-buffer-p to new-buffer-flag.
3919 (mh-index-search-again, mh-index-search): New index-buffers were
3920 being named *mh-index*<2>, *m-index*<2><2> and so on. This problem
3922 (mh-index-scroll-up, mh-index-scroll-down): Scrolling in index
3923 show buffers (after the first one) was broken.
3924 (mh-index-quit): Bury show buffer instead of killing it. Killing
3925 it, without killing the corresponding folder buffer, can cause
3926 confusion with two folder buffers trying to display in the same
3929 * mh-seq.el (mh-thread-prune-containers): Rewritten without
3930 recursion. Also removed the top-level-p argument since it isn't
3932 (mh-thread-sort-containers): New function factored out from
3933 previous definition of mh-thread-prune-containers. It sorts
3934 message containers in ascending order wrt their message indices.
3935 (mh-thread-generate): Use new mh-thread-prune-containers.
3937 * mh-e.el (mh-remove-all-notation): Fix the test. It was testing
3940 2002-10-31 Bill Wohler <wohler@newt.com>
3942 * Makefile, README, import-emacs, mh-comp.el, mh-e.el,
3943 mh-funcs.el, mh-index.el, mh-mime.el, mh-pick.el, mh-seq.el,
3944 mh-speed.el, mh-utils.el: Replaced mh-e with MH-E.
3946 2002-10-31 Satyaki Das <satyaki@theforce.stanford.edu>
3948 * mh-seq.el (mh-thread-parse-scan-line): Modified to remove user
3949 sequence notation and leave notation for other things alone. This
3950 ensures that threading doesn't lose notations for replied-to
3953 * mh-e.el (mh-inc-folder): Remove call to mh-widen here and
3954 instead do it in mh-get-new-mail. This way the widening happens
3955 only if new mail is incorporated.
3956 (mh-generate-new-cmd-note): The function now returns the point
3957 from which the new messages start. This will allow threading to do
3959 (mh-get-new-mail): Always call mh-remove-cur-notation. Otherwise
3960 adaptive scan mode leaves two messages marked as current in
3961 certain cases. Fix indentation of if statement. If there are
3962 messages to be incorporated, the folder is widened. If mh-cmd-note
3963 changes set start-of-inc correctly.
3964 (mh-remove-all-notation): Change this function to only remove user
3965 sequence notation and leave notation for replied-to messages and
3966 similar notation alone. This means operations like narrowing to
3967 subject sequence and widening don't lose notations.
3969 2002-10-31 Bill Wohler <wohler@newt.com>
3971 * mh-comp.el (mh-insert-mail-followup-to-list): Fixed typo in
3972 docstring and other minor edits. Checkdoc removed trailing spaces.
3973 (mh-insert-signature): Checkdoc flagged docstring. Reverted to
3974 previous value. Added specific name of hook that is run.
3975 (mh-regexp-in-field-p, mh-insert-letter): Checkdoc removed
3978 2002-10-31 Jeffrey C Honig <jch@honig.net>
3980 * mh-e.el (mh-show-mode-hook): Remove the unused
3981 mh-show-mode-hook, mh-show-hook is the one that is used.
3983 * mh-utils.el (mh-show-mode): Change the documentation to refer to
3984 mh-show-hook instead of the unused mh-show-mode-hook.
3986 2002-10-31 Peter S Galbraith <psg@debian.org>
3988 * mh-comp.el (mh-insert-mail-followup-to-list): Set default to nil
3989 and include example in doc string.
3991 2002-10-31 Satyaki Das <satyaki@theforce.stanford.edu>
3993 * mh-index.el (mh-indexer): Add customization choice for swish++.
3994 (mh-indexer-choices): Add swish++ choice.
3995 (mh-index-search): Change doc to reflect addition of swish++ option.
3996 (mh-swish++-binary, mh-swish++-directory): New variables for
3998 (mh-swish++-execute-search): New function to execute swish++
4000 (mh-swish++-next-result): Function aliased to mh-swish-next-result
4001 since the result format of swish++ is the same as that of swish-e.
4002 (mh-index-search): Always overwrite window-configuration with new
4003 value. This is needed since we don't kill the index-buffer when
4004 quitting which means the window configuration wasn't getting set
4006 (mh-index-search-again): If index buffer is reused, reset the old
4007 window config to its original value.
4009 2002-10-30 Bill Wohler <wohler@newt.com>
4011 * Makefile (emacs, xemacs): New targets.
4012 (all): Use these targets instead of calling specific targets.
4013 (.PHONY): Added emacs, xemacs, autoloads, custom-loads. Broke up
4014 target and moved pieces into their own sections.
4017 2002-10-30 Peter S Galbraith <psg@debian.org>
4019 * mh-utils.el (mh-show-font-lock-keywords): Wrap an
4020 'eval-and-compile around its defvar, otherwise byte-compilation
4021 fails on `mh-show-font-lock-keywords-with-cite'.
4023 2002-10-29 Jeffrey C Honig <jch@honig.net>
4025 * mh-comp.el (mh-letter-insert-signature-hook)
4026 (mh-insert-signature): Add a hook to be called before inserting
4027 the signature. Do not attempt to insert the signature if
4028 mh-insert-signature-file-name is nil.
4030 2002-10-29 Peter S Galbraith <psg@debian.org>
4032 * mh-e.el (mh-inc-folder): Call mh-widen when mh-narrowed-to-seq
4033 (Closes SF #629233: inc in narrowed folder suboptimal)
4035 * mh-comp.el (mh-insert-letter): Stop using mhl to include a
4036 message before it mangles the header, and supercite fails
4037 (Closes SF #629153: mh-insert-letter uses mhl?).
4038 (mh-insert-prefix-string): Leave point at beginning instead of
4039 end, since that's what sc-cite-original does.
4040 (mh-yank-cur-msg): Adjust for mh-insert-prefix-string change.
4042 2002-10-30 Steve Youngs <youngs@xemacs.org>
4044 * mh-e.el (mh-folder-mode): Check for 'font-lock-auto-fontify'
4045 when in XEmacs so we don't do font-locking unconditionally.
4047 * mh-utils.el (mh-show-mode): Ditto.
4049 2002-10-29 Peter S Galbraith <psg@debian.org>
4051 * mh-e.el (mh-folder-refiled-face, mh-folder-cur-msg-number-face)
4052 (mh-folder-to-face, mh-folder-body-face): Define faces instead of
4053 copying them from font-lock faces. This mh-e will look the same
4054 in XEmacs as it does in Emacs.
4055 * mh-utils.el (mh-show-cc-face, mh-show-date-face)
4056 (mh-show-header-face): Ditto.
4058 2002-10-29 Jeffrey C Honig <jch@honig.net>
4060 * mh-comp.el (mh-send-letter): I meant to use
4061 mh-goto-header-field, not mh-get-header-field. The former returns
4062 nil if the header is not found and doesn't need a conditional.
4064 2002-10-29 Peter S Galbraith <psg@debian.org>
4066 * mh-comp.el (mh-forward): Bug fix. Change 'kill-line for a
4067 'delete-region, because I don't want that text yanked with C-y.
4069 * mh-seq.el (mh-put-msg-in-seq): Add support for selected
4070 region (Closes SF feature request #630324).
4072 2002-10-28 Satyaki Das <satyaki@theforce.stanford.edu>
4074 * mh-seq.el (mh-thread-prune-subject): Make the regexp a little
4075 general so that a subject of the form "Re[218]: howdy" would be
4078 * mh-mime.el (mh-mime-save-part): Copy function definition of
4079 mm-save-part from cvs gnus since that function is buggy in gnus
4080 that comes with emacs21.2.
4082 2002-10-28 Peter S Galbraith <psg@debian.org>
4084 * mh-e.el (mh-scan-subject-regexp): Add an expression to match an
4085 optional bracketed number after "Re", such as in "Re[2]:"
4086 (Patch by Satyaki; I checked it and applied).
4087 (mh-folder-font-lock-subject): Adapt to new mh-scan-subject-regexp.
4088 * mh-seq.el (mh-subject-to-sequence): Ditto.
4090 * mh-e.el (mh-folder-sequence-menu): Remove "Toggle Subject
4091 Thread" from menu. mh-toggle-threads is in the Folder menu.
4093 * mh-e.el (mh-folder-sequence-menu): Minor menu text edits.
4095 * mh-utils.el (mh-show-update-sequences): Added to
4096 mh-defun-show-buffer builds; needed for menu.
4097 (mh-show-sequence-menu, mh-show-message-menu)
4098 (mh-show-folder-menu): 3 new menus in mh-show-mode-map that mirror
4099 the menus used in mh-folder-mode.
4100 (mh-show-mode): easy-menu-add the 3 menus.
4102 2002-10-28 Satyaki Das <satyaki@theforce.stanford.edu>
4104 * mh-utils.el (mh-goto-msg): Fix the regexp to search so that we
4105 go to the right message. In a threaded folder message 2 may be
4106 present after 26 and the previous regexp would go to 26 when we
4107 really wanted to go to 2!
4109 * mh-seq.el (mh-widen): Add call to mh-recenter to make it like
4112 2002-10-28 Bill Wohler <wohler@newt.com>
4114 * mh-utils.el (mh-show-mime-save-parts): Deleted definition.
4115 (mh-show-mime-map, tool-bar-map): Use mh-mime-save-parts instead
4116 of mh-show-mime-save-parts.
4118 2002-10-28 Peter S Galbraith <psg@debian.org>
4120 * mh-comp.el (mh-letter-tool-bar-map): tool-bar-add-item key name
4122 * mh-utils.el (mh-show-tool-bar-map): Same.
4123 * mh-e.el (mh-folder-tool-bar-map, mh-folder-seq-tool-bar-map): Same
4125 2002-10-27 Satyaki Das <satyaki@theforce.stanford.edu>
4127 * mh-seq.el (mh-toggle-threads): Add call to mh-recenter to make
4128 its behavior like that of mh-narrow-to-seq.
4130 2002-10-27 Bill Wohler <wohler@newt.com>
4132 * mh-mime.el (mh-mime-save-parts): Renamed from
4133 mh-store-mime-parts for consistency with mh-mime-save-part. Fixed
4134 bug whereby mh-mime-save-parts-directory was not getting
4135 initialized properly from a string-valued
4136 mh-mime-save-parts-default-directory.
4137 (mh-mime-save-parts-default-directory): Ditto. Check your
4139 (mh-mime-save-parts-directory): Ditto.
4141 * mh-utils.el (mh-show-mime-save-parts): Renamed from
4142 mh-store-mime-parts.
4143 (mh-show-mime-map): Added keybinding "K a" for
4144 mh-show-mime-save-parts.
4146 * mh-e.el (mh-mime-save-parts) Renamed from mh-store-mime-parts.
4147 (mh-mime-map): Added keybinding "K a" for mh-mime-save-parts.
4148 (mh-help-messages): Added help for "K a".
4150 2002-10-27 Peter S Galbraith <psg@debian.org>
4152 * mh-comp.el (mh-search-addr-regexp, mh-regexp-in-field-p): Rename
4153 the first to the second (and recode a bit).
4154 (mh-insert-mail-followup-to): Use it.
4156 2002-10-27 Bill Wohler <wohler@newt.com>
4158 * mh-utils.el (mh-invisible-headers): Backed out change. Removed
4159 Mail-Followup-To due to objections from Peter and Mark.
4161 2002-10-27 Satyaki Das <satyaki@theforce.stanford.edu>
4163 * mh-seq.el (mh-msg-is-in-seq): Modified to show info about
4164 whether the message being queried about has been marked to be
4167 * mh-mime.el (mh-insert-mime-security-button): Make
4168 pressed-details a local.
4170 2002-10-27 Steve Youngs <youngs@xemacs.org>
4172 * .cvsignore: New file.
4174 2002-10-26 Steve Youngs <youngs@xemacs.org>
4176 * mh-seq.el (mh-notate-deleted-and-refiled): Don't bind local
4177 variable 'dest', it isn't used anywhere.
4179 * mh-pick.el (mh-do-pick-search): Don't bind local variable
4180 'finding-messages', it isn't used anywhere.
4182 * mh-utils.el: Byte-compiler warning suppression.
4183 (mh-gnus-article-highlight-citation): Rather than redefining
4184 'gnus-cite-face-list', just re-order it.
4185 (mh-show-mode): Force turning on font-lock in XEmacs.
4187 * mh-seq.el: Byte-compiler warning suppression.
4189 * mh-index.el: Byte-compiler warning suppression.
4191 * mh-comp.el: Byte-compiler warning suppression.
4193 * mh-xemacs-compat.el: Add defaliases for 'timerp' &
4194 'cancel-timer' to the equivalent 'itimer' functions.
4195 (rfc822): Require it for 'rfc822-goto-eoh'.
4196 Byte-compiler warning suppression.
4198 * mh-e.el (mh-folder-mode): Force turning on font-lock in XEmacs.
4199 (mh-toggle-threads): Remove duplicate autoload.
4200 Byte-compiler warning suppression.
4201 (mh-folder-unseen-seq-list): Use 'with-temp-buffer' to fix a bug
4202 in XEmacs when font-lock is on.
4203 (mh-folder-unseen-seq-name): Ditto.
4205 2002-10-27 Mark D. Baushke <mdb@gnu.org>
4207 * Makefile: Reorganize to allow for building also compiling for
4208 XEmacs too. Sanitize so that it will work using least-common
4209 denominator versions of 'make'. Tested using GNU make, Solaris make,
4211 (all): Use recursive invokation based on the emacs or xemacs
4212 executable passed on the 'make EMACS=xemacs' command line.
4213 (XEMACS_OPTIONS): The incantation to be passed to an xemacs editor
4214 to compile things properly.
4215 (AUTO_PRELOADS): Magic XEmacs glue.
4218 (custom-loads): Ditto.
4220 2002-10-26 Satyaki Das <satyaki@theforce.stanford.edu>
4222 * mh-e.el (mh-last-msg): Add call to mh-recenter.
4224 2002-10-26 Peter S Galbraith <psg@debia.org>
4226 * mh-comp.el (mh-search-addr-regexp, mh-re-search-to-cc): Remove
4227 `mh-re-search-to-cc' in favour of more generalized new function
4228 `mh-search-addr-regexp'.
4229 (mh-insert-mail-followup-to): Use it.
4231 2002-10-26 Satyaki Das <satyaki@theforce.stanford.edu>
4233 * mh-seq.el (mh-copy-seq-to-eob): Avoid rethreading when the
4234 folder is already threaded. This is more efficient and also avoids
4235 problems when the folder is widened.
4236 (mh-thread-inc): Don't try to restore the point to original
4237 location since mh-inc-folder from where this is called changes
4238 point location after calling this function.
4240 * mh-e.el (mh-make-folder-mode-line): Fix a small bug where the
4243 2002-10-26 Peter S Galbraith <psg@debian.org>
4245 * mh-comp.el (mh-insert-mail-followup-to): Fix for new defcustom.
4247 2002-10-26 Satyaki Das <satyaki@theforce.stanford.edu>
4249 * mh-seq.el (mh-notate-deleted-and-refiled): Remove unused binding
4250 of dest. The problem was pointed out by Steve as well.
4252 * mh-e.el (mh-toggle-threads): Remove duplicate autoload as
4253 pointed out by Steve.
4255 2002-10-26 Bill Wohler <wohler@newt.com>
4257 * mh-utils.el (mh-invisible-headers): Added Mail-Followup-To.
4259 2002-10-26 Peter S Galbraith <psg@debian.org>
4261 * mh-comp.el (mh-insert-mail-followup-to-list): Change defvar to
4264 2002-10-25 Satyaki Das <satyaki@theforce.stanford.edu>
4266 * mh-e.el (mh-remove-all-notation): New function that removes all
4269 * mh-seq.el (mh-narrow-to-seq): When hiding the original folder
4270 remove all notation. This avoids stale notation hanging around.
4271 Also changes in show buffer and position in folder buffer are
4272 avoided if possible.
4273 (mh-widen): When widening the scan-lines are notated based on the
4274 current state of the folder. This means any changes made when the
4275 folder was narrowed are shown consistently.
4276 (mh-notate-deleted-and-refiled): Update the documentation.
4277 (mh-thread-parse-scan-line): For some reason the ASCII value of
4278 the space character was being used here. This is fixed.
4279 (mh-thread-inc, mh-toggle-threads): Avoid change of point in
4280 folder and message being displayed in shown buffer.
4282 * mh-utils.el (mh-recenter): Rewrite mh-recenter to show fewer
4283 blank lines when point is towards the end of the folder buffer.
4285 2002-10-25 Peter S Galbraith <psg@debian.org>
4287 * mh-comp.el (mh-insert-mail-followup-to-flag): New boolean
4288 defcustom to append a Mail-Followup-To field to the header. The
4289 insertion is done if the To: or Cc: fields matches an entry in
4290 `mh-insert-mail-followup-to-list'."
4291 (mh-insert-mail-followup-to-list): New defvar. List of addresses
4292 for which a Mail-Followup-To field is inserted.
4293 (mh-re-search-to-cc): New function. Search for REGEXP in To: and
4295 (mh-insert-mail-followup-to): New function. Insert
4296 Mail-Followup-To: if To or Cc match `mh-insert-mail-followup-to-list'.
4297 (mh-compose-and-send-mail): Call mh-insert-mail-followup-to if
4298 mh-insert-mail-followup-to-flag is true.
4300 2002-10-25 Mark D. Baushke <mdb@gnu.org>
4302 * mh-utils.el (mh-show-maximum-size): New variable to control
4303 the display of large messages.
4304 (mh-display-msg): Use it (Closes SF #488696).
4306 * mh-seq.el (mh-toggle-threads): Checkdoc fix.
4308 * mh-e.el (mh-reset-threads-and-narrowing): Checkdoc fix.
4310 * mh-comp.el (mh-insert-x-mailer-flag): Renamed from
4311 mh-insert-x-mailer-p. Update docstring.
4312 (mh-send-letter): Use it.
4313 (mh-reply-show-message-flag): Renamed from
4314 mh-reply-show-message-p. Update docstring.
4316 This addresses part of SF #627015.
4318 * mh-e.el (mh-recenter-summary-flag): Renamed from
4319 mh-recenter-summary-p. Update docstring.
4320 (mh-set-scan-mode): Use it.
4321 This addresses part of SF #627015.
4323 2002-10-25 Satyaki Das <satyaki@theforce.stanford.edu>
4325 * mh-e.el (mh-reset-threads-and-narrowing): New function which
4326 resets all thread and narrowing state to completely unthreaded and
4327 widened state. As a side effect, the folder buffer is erased.
4328 (mh-rescan-folder): Reset threads and narrowing state.
4330 * mh-funcs.el (mh-pack-folder-1): Reset threads and narrowing state.
4332 * mh-seq.el (mh-copy-seq-to-eob): Change mh-view-ops after
4333 threading is over so that if user aborts threading, it doesn't
4334 leave mh-e in an inconsistent state.
4335 (mh-toggle-threads): Use mh-scan-folder to populate the folder
4336 buffer instead of mh-rescan-folder which resets threading and
4339 2002-10-24 Bill Wohler <wohler@newt.com>
4341 * mh-e is completely checkdoc clean now.
4343 * mh-utils.el (mh-clean-message-header-flag): Renamed from
4344 mh-clean-message-header.
4345 (mh-bury-show-buffer-flag): Renamed from mh-bury-show-buffer.
4346 (mh-show-use-goto-addr-flag): Renamed from mh-show-use-goto-addr.
4347 This addresses part of SF #627015.
4349 * mh-mime.el (mh-clean-message-header-flag): Renamed from
4350 mh-clean-message-header.
4351 Checkdoc fixes. This addresses part of SF #627015.
4353 * mh-index.el (mh-clean-message-header-flag): Renamed from
4354 mh-clean-message-header. This addresses part of SF #627015.
4356 * mh-funcs.el (mh-do-not-confirm-flag): Renamed from
4357 mh-do-not-confirm. This addresses part of SF #627015.
4359 * mh-e.el (mh-do-not-confirm-flag): Renamed from
4361 (mh-clean-message-header-flag): Renamed from
4362 mh-clean-message-header.
4363 This addresses part of SF #627015.
4365 * mh-comp.el: checkdoc fixes.
4367 2002-10-24 Satyaki Das <satyaki@theforce.stanford.edu>
4369 * mh-seq.el (mh-copy-seq-to-eob): Rewritten to scan the headers
4370 fresh instead of yanking from buffer. This is needed to get
4371 correct threading in copied sequence.
4372 (mh-thread-inc, mh-thread-update-scan-line-map)
4373 (mh-thread-parse-scan-line): Eliminate the use, and hence the
4374 definition of, the kludgy mh-thread-update-scan-line-map. Instead
4375 the functions mh-notate-deleted-and-refiled and
4376 mh-notate-user-sequences are used to get the message marks right.
4377 (mh-thread-generate-scan-lines): Updated to allow the thread tree
4378 to be used in a narrowed folder buffer.
4379 (mh-thread-folder, mh-toggle-threads): Remove
4380 mh-folder-threaded-view-flag.
4381 (mh-thread-old-scan-line-map): New buffer-local variable that
4382 remembers the original scan-line map so that the sequence thread,
4383 narrow, widen will work.
4384 (mh-narrow-to-seq, mh-widen): Remember the scan-line map when
4385 narrowing and restore it when widening.
4387 * mh-e.el (mh-folder-threaded-view-flag, mh-folder-folder-menu)
4388 (mh-regenerate-headers, mh-get-new-mail)
4389 (mh-make-folder-mode-line, mh-process-commands)
4390 (mh-delete-scan-msgs): Remove mh-folder-threaded-view-flag.
4391 Instead (memq 'unthread mh-view-ops) is used to test if the folder
4394 * mh-mime.el (mh-display-emphasis): Shadow article-goto-body here
4395 since we want to do emphasis on the whole of the region and not
4396 just after the first blank line.
4397 (mh-mm-display-part): When displaying a text part show smilies and
4400 * mh-index.el (mh-index-insert-scan): Attempt to keep number of
4401 args to scan small if there are lots of adjacent matches.
4402 (mh-index-quit): Bury index-buffer on quit instead of killing it.
4403 This behavior is more like that of mh-quit.
4405 * mh-seq.el (mh-widen): If folder was threaded after narrowing
4406 then make mh-widen undo the threading instead of erroring out.
4408 2002-10-24 Peter S Galbraith <psg@debian.org>
4410 * mh-seq.el (mh-toggle-threads): Add a cond (as suggested by
4411 Satyaki) to properly unthread a narrowed-to-sequence.
4413 * mh-seq.el (mh-thread-generate-scan-lines): Fix threading
4414 breakage from partial switch to mh-container-real-child-flag and
4417 * mh-comp.el (mh-yank-cur-msg): Bug fix: specify
4418 (eq t mh-yank-from-start-of-msg) when that's what we want.
4420 2002-10-24 Mark D. Baushke <mdb@gnu.org>
4422 * mh-seq.el (mh-thread-prune-subject): Renamed subject-pruned-p as
4423 subject-pruned-flag.
4424 (mh-thread-inc): Renamed old-buffer-modified-p as
4425 old-buffer-modified-flag.
4426 (mh-thread-generate-scan-lines): Renamed dupl-p as dupl-flag.
4427 This addresses part of SF #627015.
4429 * mh-index.el (mh-index-advance): Renamed backward-p
4430 local variable as backward-flag.
4431 (mh-index-next-button): Renamed backward-p
4432 argument as backward-flag.
4433 (mh-index-show): Renamed display-headers-p argument as
4434 display-headers-flag.
4435 This addresses part of SF #627015.
4437 * mh-e.el (mh-scan-format, mh-version): Use mh-nmh-flag.
4438 (mh-folder-mime-action): Renamed include-security-p
4439 argument as include-security-flag.
4440 (mh-goto-next-button, mh-next-button): Renamed backward-p
4441 argument as backward-flag.
4442 (mh-get-new-mail): Renamed new-mail-p local variable as
4444 (mh-goto-cur-msg): Renamed minimal-changes-p argument as
4445 minimal-changes-flag.
4446 (redraw-needed-flag): Renamed redraw-needed-p local variable as
4448 (mh-seq-containing-msg): Renamed include-internal-p argument as
4449 include-internal-flag.
4450 (mh-page-msg): Use mh-page-to-next-msg-flag.
4451 This addresses part of SF #627015.
4453 * mh-mime.el (mh-mhn-compose-insert-flag): Renamed from
4454 mh-mhn-compose-insert-p. Make it buffer-local.
4455 (mh-mhn-compose-type, mh-mhn-compose-external-type,
4456 mh-mhn-compose-forw, mh-edit-mhn): Use mh-mhn-compose-insert-flag.
4457 (mh-mml-to-mime, mh-mml-secure-message-encrypt-pgpmime,
4458 mh-mime-display-part, mh-mime-display-single): Use
4459 mh-gnus-pgp-support-flag renamed from mh-gnus-pgp-support-p.
4460 (mh-mime-display-single): Renamed small-image-p local
4461 variable as small-image-flag.
4462 (mh-mime-inline-part): Renamed local variable inserted-p as
4464 (mh-mime-inline-part): Renamed local variable displayed-p as
4466 This addresses part of SF #627015.
4468 * mh-comp.el (mh-letter-menu, mh-letter-mode, mh-send-letter):
4469 mh-mhn-compose-insert-flag.
4470 (mh-repl-group-formfile, mh-forward): Use mh-nmh-flag
4471 renamed from mh-nmh-p.
4472 (mh-reply, mh-insert-x-mailer, mh-send-letter): Use mh-nmh-flag.
4473 (mh-letter-mode-map): Use mh-gnus-pgp-support-flag renamed from
4474 mh-gnus-pgp-support-p.
4475 (mh-mml-secure-message-sign-pgpmime): Use
4476 mh-gnus-pgp-support-flag.
4477 This addresses part of SF #627015.
4479 * mh-utils.el (mh-page-to-next-msg-flag): Renamed from
4480 mh-page-to-next-msg-p.
4481 (mh-show-msg): Use mh-page-to-next-msg-flag.
4482 (mh-gnus-pgp-support-flag): Renamed from
4483 mh-gnus-pgp-support-p.
4484 (mh-show-font-lock-fontify-region): Fix docstring per checkdoc.
4485 (with-mh-folder-updating): Renamed argument
4486 save-modification-flag-p as mh-save-modification-flag.
4487 (mh-prompt-for-folder): Renamed new-file-p local
4488 variable as new-file-flag.
4489 This addresses part of SF #627015.
4491 2002-10-24 Mark D Baushke <mdb@gnu.org>
4493 * mh-comp.el (mh-forward): Fix mh-mml-compose-insert-p reference
4494 in last commit to be mh-mml-compose-insert-flag.
4495 (mh-mml-compose-insert-flag): Move defvar to fix compiler warning.
4497 2002-10-24 Jeffrey C Honig <jch@honig.net>
4499 * mh-comp.el (mh-forward): Add support for transient-mark mode.
4500 When using nmh, always specify -mime so as to preserve the
4501 original message(s). If mh-compose-insertion is 'gnus, convert
4502 the mhbuild format forwarding directives into MML.
4504 2002-10-24 Eric Ding <ericding@alum.mit.edu>
4506 * mh-comp.el (mh-send-letter): Fix for earlier change that added
4507 "-mime" for bcc'ed MIME mail; still doesn't work with nmh 1.0, but
4508 at least no longer triggered for every outgoing message!
4510 2002-10-24 Peter S Galbraith <psg@debian.org>
4512 * mh-comp.el (mh-yank-cur-msg): Fix selected regions for supercite
4515 * mh-comp.el (mh-yank-cur-msg): Fix for supercite. Someone played
4516 with the point and mark setting prior to the call to
4517 'mh-insert-prefix-string and that broke supercite. I put comments
4518 to make it obvious to future coders why those settings exists.
4519 Note that supercite is still broken when a region is selected in
4520 the show buffer. Presumably it's been like that for a long time.
4521 We need to insert the header as well as the selected region oin
4522 that case. I'll submit an SF bug.
4524 2002-10-24 Jeffrey C Honig <jch@honig.net>
4526 * mh-comp.el (mh-yank-from-start-of-msg, mh-reply): Use -noformat
4527 flag to reply when 'autosupercite or 'autoattrib are specified to
4528 prevent duplicate cites of the body of a message.
4530 2002-10-23 Satyaki Das <satyaki@theforce.stanford.edu>
4532 * mh-utils.el (font-lock-default-fontify-region): Add autoload to
4533 avoid compiler warning.
4535 2002-10-23 Peter S Galbraith <psg@debian.org>
4537 * mh-comp.el (mh-letter-mode): set fill-paragraph-function to our
4538 own 'mh-fill-paragraph-function instead of simply
4539 'mail-mode-fill-paragraph (because it doesn't handle a non-nil
4540 fill-prefix correctly).
4541 (mh-fill-paragraph-function): New function for mh-letter-mode
4542 fill-paragraph-function in order to handle non-nil fill-prefix.
4543 Call sendmail's mail-mode-fill-paragraph if in the mail header,
4544 else call default fill-paragraph with fill-prefix set to nil.
4547 * mh-comp.el (mh-letter-mode): Let's use font-lock even if gnus is
4548 used in show-mode. The reason is that gnus uses static text
4549 properties which are not appropriate for a buffer that will be
4550 edited. So the choice here is either fontify the citations and
4551 header or the header only.
4553 * mh-utils.el (mh-show-font-lock-fontify-region): Limit font-lock
4554 in mh-show-mode to the header. Used when mh-highlight-citation-p
4555 is set to gnus, leaving the body to be dealt with by gnus
4556 highlighting. This fixes gnus text emphasis in mh-show-mode.
4557 (mh-show-mode): In font-lock-defaults, set
4558 font-lock-fontify-region-function to mh-show-font-lock-fontify-region.
4560 2002-10-23 Bill Wohler <wohler@newt.com>
4562 * mh-mime.el (mh-mml-attach-file): Prompt for disposition should
4563 be Disposition, not Content-Type. The Content-Type has been
4564 determined automatically.
4566 2002-10-23 Mark D. Baushke <mdb@gnu.org>
4569 s/mh-adaptive-cmd-note/mh-adaptive-cmd-note-flag/
4570 s/mh-show-use-xface/mh-show-use-xface-flag/
4571 s/mh-tool-bar-reply-3-buttons/mh-tool-bar-reply-3-buttons-flag/
4572 This addresses part of SF #627015.
4575 s/mh-mml-compose-insert-p/mh-mml-compose-insert-flag/
4576 s/mh-xemacs-p/mh-xemacs-flag/
4577 (mh-letter-menu): Use mh-mml-compose-insert-flag.
4578 (mh-insert-x-mailer): Use mh-xemacs-flag.
4579 (mh-mml-compose-insert-flag): Renamed from
4580 mh-mml-compose-insert-p.
4581 (mh-send-letter): Use mh-mml-compose-insert-flag.
4582 This addresses part of SF #627015.
4585 s/mh-folder-threaded-view-p/mh-folder-threaded-view-flag/
4586 s/mh-adaptive-cmd-note/mh-adaptive-cmd-note-flag/
4587 s/mh-xemacs-p/mh-xemacs-flag/
4588 (mh-folder-threaded-view-flag): Renamed from
4589 mh-folder-threaded-view-p. Make it buffer local.
4590 (mh-folder-tool-bar-map): Use mh-tool-bar-reply-3-buttons-flag.
4591 (mh-remove-xemacs-horizontal-scrollbar): Use mh-xemacs-flag.
4592 (mh-make-folder, mh-regenerate-headers, mh-get-new-mail): Use
4593 mh-adaptive-cmd-note-flag.
4594 (mh-folder-folder-menu, mh-regenerate-headers, mh-get-new-mail,
4595 mh-make-folder-mode-line, mh-process-commands,
4596 mh-delete-scan-msgs): Use mh-folder-threaded-view-flag.
4597 This addresses part of SF #627015.
4600 s/mh-adaptive-cmd-note/mh-adaptive-cmd-note-flag/
4601 (mh-index-search): Use mh-adaptive-cmd-note-flag.
4602 This addresses part of SF #627015.
4605 s/mh-mml-compose-insert-p/mh-mml-compose-insert-flag/
4606 s/mh-xemacs-p/mh-xemacs-flag/
4607 (mh-mml-compose-insert-flag): Renamed from
4608 mh-mml-compose-insert-p. Make it buffer local.
4609 (mh-mml-attach-file, mh-mml-secure-message-sign-pgpmime,
4610 mh-mml-secure-message-encrypt-pgpmime): Use it.
4611 (gnus-local-map-property): Use mh-xemacs-flag.
4612 This addresses part of SF #627015.
4615 s/mh-folder-threaded-view-p/mh-folder-threaded-view-flag/
4616 (mh-thread-generate, mh-thread-folder, mh-toggle-threads): Use
4617 mh-folder-threaded-view-flag.
4618 This addresses part of SF #627015.
4621 s/mh-speed-run-flists-p/mh-speed-run-flists-flag/
4622 s/mh-speed-refresh-p/mh-speed-refresh-flag/
4623 (mh-speed-run-flists-flag): Renamed from mh-speed-run-flists-p.
4624 (mh-folder-speedbar-buttons): Use it.
4625 (mh-speed-refresh-flag): Renamed from mh-speed-refresh-p.
4626 (mh-speed-update-current-folder, mh-speed-invalidate-map,
4627 mh-speed-add-folder): Use it.
4628 This addresses part of SF #627015.
4631 s/mh-xemacs-p/mh-xemacs-flag/
4632 s/mh-tool-bar-reply-3-buttons/mh-tool-bar-reply-3-buttons-flag/
4633 s/mh-show-use-xface/mh-show-use-xface-flag/
4634 (mh-xemacs-flag): Renamed from mh-xemacs-p.
4635 (mh-show-xface-function): Use it.
4636 (mh-tool-bar-reply-3-buttons-flag): Renamed from
4637 mh-tool-bar-reply-3-buttons.
4638 (mh-show-tool-bar-map): Use it.
4639 (mh-adaptive-cmd-note-flag): Renamed from mh-adaptive-cmd-note.
4640 (mh-cmd-note): Use it in description.
4641 (mh-show-use-xface-flag): Renamed from mh-show-use-xface. Use
4643 (mh-show-xface): Use mh-show-use-xface-flag.
4644 This addresses part of SF #627015.
4646 2002-10-23 Bill Wohler <wohler@newt.com>
4648 * Makefile (all): Rather than have to run "make clean all" all the
4649 time, make the default target do a clean so all you have to say is
4652 * mh-e.el (mh-folder-map): Moved "t (mh-toggle-threads)" to T
4655 2002-10-22 Satyaki Das <satyaki@theforce.stanford.edu>
4657 * mh-index.el (mh-indexer-choices, mh-swish-binary): The
4658 executable swish-e can be used to search (just like swish-search).
4659 However the Makefile in swish-e-2.2.2 doesn't install
4660 swish-search. So it is preferable to use swish-e.
4662 2002-10-22 Bill Wohler <wohler@newt.com>
4664 * mh-comp.el (mh-letter-mode-map): Added aliases for keybindings.
4665 For example, you now have "C-c C-m C-i" in addition to "C-c C-m
4668 2002-10-22 Mark D. Baushke <mdb@gnu.org>
4670 * mh-mime.el (mh-graphical-smileys-flag): Renamed from
4671 mh-graphical-smileys-p.
4672 (mh-display-smileys): Use it.
4673 (mh-graphical-emphasis-flag): Renamed from
4674 mh-graphical-emphasis-p.
4675 (mh-display-emphasis): Use it. This addresses part of SF #627015.
4677 2002-10-22 Satyaki Das <satyaki@theforce.stanford.edu>
4679 * mh-mime.el (mh-insert-mime-security-button): A message is
4680 produced if PGP decryption/verification fails. This addresses
4683 2002-10-21 Bill Wohler <wohler@newt.com>
4685 * mh-seq.el (mh-widen): Checkdoc removed the period in the error.
4686 The info node (elisp) Coding Conventions says: "An error message
4687 should start with a capital letter but should not end with a
4690 * mh-e.el, mh-utils.el (mh-tool-bar-reply-3-buttons): Moved
4691 defcustom to mh-utils because I got an error about a nil value for
4692 mh-tool-bar-reply-3-buttons when I fired up mh-rmail.
4694 * mh-comp.el, mh-funcs,el, mh-mime.el, mh-pick.el: Moved (provide)
4695 to the end of the file to be consistent with most other files (see
4696 additional rationale in mh-e.el description below).
4698 * mh-e.el: Had to remove eval-when-compile from the (require 'cl)
4699 here too (because the remove-if generated a warning in CVS Emacs).
4700 Moved (provide) to the end of the file to be consistent with most
4701 other files. My guess is that this is good to keep a feature from
4702 being "provided" if the file craps out while being loaded.
4704 2002-10-21 Satyaki Das <satyaki@theforce.stanford.edu>
4706 * mh-utils.el (mh-reply, Info-goto-node): Add autoloads to avoid
4708 (mh-tool-bar-reply-3-buttons): Add defvar to avoid compiler
4711 * mh-seq.el (mh-narrow-to-seq): Remember that a narrowing has
4713 (mh-valid-view-change-operation-p): New function that checks if
4714 the widening or unthreading that we are about to perform is
4716 (mh-widen): Check if widening is applicable.
4717 (mh-thread-inc, mh-thread-folder): Use delete-region instead of
4718 erase-buffer. This means if the buffer is narrowed then the hidden
4719 parts aren't removed. This allows widening of the folder later on.
4720 (mh-toggle-threads): Maintain mh-view-ops.
4722 * mh-e.el (mh-view-ops, mh-folder-mode): New buffer-local variable
4723 that keeps track of the sequence in which threading and narrowing
4724 of the folder buffer has been carried out. This is needed so that
4725 narrowing followed by threading (or vice versa) behaves in a
4727 (mh-regenerate-headers): Use delete-region instead of
4729 (mh-make-folder-mode-line): Change mh-first-msg-num and
4730 mh-last-msg-num conservatively. This might show a larger range in
4731 the mode-line but allows the unthreading to not miss messages
4734 2002-10-21 Bill Wohler <wohler@newt.com>
4736 * mh-mime.el (mh-graphical-emphasis-p): Added _underline_ to the
4737 docstring, as well as the source of the strings,
4738 gnus-emphasis-alist.
4739 (mh-graphical-emphasis-p, mh-graphical-smileys-p): Set the default
4742 2002-10-21 Peter S Galbraith <psg@debian.org>
4744 * mh-utils.el (mh-show-mode): Invoke new toolbar.
4745 (mh-show-tool-bar-map): New tool-bar for mh-show-mode, similar to
4748 2002-10-21 Satyaki Das <satyaki@theforce.stanford.edu>
4750 * mh-utils.el (mh-display-msg): Call the smiley display function
4751 after the call to mh-show-mode. This is needed since mh-show-mode
4752 kills all buffer-local variables and resets the variable that
4753 controls display of graphical smileys.
4755 2002-10-21 Bill Wohler <wohler@newt.com>
4757 * mh-e.el (mh-folder-mime-action): Change mime to MIME in message.
4759 * mh-comp.el (mh-mml-to-mime autoload): Ditto.
4761 2002-10-21 Mark D Baushke <mdb@gnu.org>
4763 * mh-mime.el (smiley-region): Use load for a non-fatal dependency
4764 on the smiley library.
4766 2002-10-21 Jeffrey C Honig <jch@honig.net>
4768 * mh-comp.el (mh-forward): Search for a blank line as well as
4769 mail-header-separator.
4770 (mh-letter-mode): Search for a blank line as well as
4771 mail-header-separator.
4772 (mh-send-letter): The default BCC encapsulation will make a MIME
4773 message unreadable. If we are running nmh and the letter contains
4774 a Bcc: and a Content-Type: field, add the -mime switch to to the
4777 2002-10-21 Peter S Galbraith <psg@debian.org>
4779 * mh-utils.el: Add a mh-defun-show-buffer call to define
4780 mh-show-pack-folder.
4782 2002-10-21 Peter S Galbraith <psg@debian.org>
4784 * mh-mime.el (mh-store-mime-parts): Simplify code a bit.
4786 * mh-e.el (mh-help-messages): Update help message for changed
4789 2002-10-21 Satyaki Das <satyaki@theforce.stanford.edu>
4791 * mh-speed.el (mh-speed-invalidate-map): Invalidate
4792 mh-speed-folders-cache before it is used by mh-speed-folders. Also
4793 fix indentation of if statement.
4794 (mh-speed-folder-size): The folder name should be extracted from
4795 the speedbar buffer and not from the temp buffer has was happening
4797 (mh-speed-folder-size): Harden the function some more. It
4798 shouldn't produce errors any more unless flist really didn't work.
4800 2002-10-21 Bill Wohler <wohler@newt.com>
4802 * mh-seq.el (mh-put-msg-in-seq): Formatting only. The reason I was
4803 in there is because I was trying to use mh-put-msg-in-seq and
4804 mh-msg-is-in-seq non-interactively and found that although the
4805 docstring says it uses the current message by default, I got
4806 errors if I passed in nil for the message. Is this expected, or is
4807 this a bug? I suppose the fix would be to make the arguments
4808 optional, right? This would cause the arguments in
4809 mh-put-msg-in-seq to be reversed, however. Might be a backwards
4810 compatibility problem.
4812 * mh-speed.el (mh-speed-view): Convert default size to string
4813 before passing it to read-string. This was done because XEmacs
4814 can't handle a numeric value for the default.
4816 2002-10-20 Satyaki Das <satyaki@theforce.stanford.edu>
4818 * mh-utils.el (mh-show-mode-map, mh-show-folder-map)
4819 (mh-show-sequence-map, mh-show-thread-map, mh-show-extract-map)
4820 (mh-show-digest-map, mh-show-mime-map): Interactive functions
4821 callable in show buffer are now prefixed with mh-show.
4823 * mh-seq.el (mh-notate-deleted-and-refiled): Take into account the
4824 changes to mh-refile-list and the removal of the 'deleted
4826 (mh-toggle-threads): Changing from threaded to normal view doesn't
4827 try to push out message refiles and deletions to MH.
4829 * mh-e.el (mh-rescan-folder, mh-scan-folder): Add a new optional
4830 argument to both functions that prevents them from carrying out
4831 pending refiles and deletes.
4832 (mh-undo): Remove dead code.
4833 (mh-delete-a-msg, mh-undo-msg): Get rid of the 'deleted sequence.
4834 The same information is present in mh-delete-list any way.
4835 (mh-refile-a-msg, mh-undo-msg, mh-process-commands): Change the
4836 semantics of mh-refile-list to make it self-contained. This
4837 variable now contains a list of lists. The first element of each
4838 sublist is the destination folder name. The remaining elements are
4839 the messages that are to be refiled to the destination folder.
4840 (mh-toggle-threads, mh-folder-folder-menu): Use mh-toggle-threads
4841 instead of mh-thread-folder.
4843 2002-10-20 Peter S Galbraith <psg@debian.org>
4845 * mh-mime.el (mh-store-mime-parts): Bug fix? Make this command
4846 work when in the show buffer, and not just in the folder buffer
4847 pointing to a message.
4849 2002-10-20 Peter S Galbraith <psg@debian.org>
4851 * mh-seq.el (mh-narrow-to-subject-sequence): Renamed from
4852 mh-narrow-to-subject-thread.
4853 (mh-subject-to-sequence): Renamed from mh-subject-thread-to-sequence.
4854 (mh-delete-subject-sequence): Renamed from mh-delete-subject-thread.
4855 (mh-next-unseen-subject-sequence): Renamed from
4856 mh-next-unseen-subject-thread.
4857 (mh-toggle-subject-thread): Removed. :-(
4859 * mh-e.el: s/subject-thread/subject-sequence/
4860 (mh-thread-map): Bind mh-widen to "w".
4862 * mh-utils.el: s/subject-thread/subject-sequence/
4863 (mh-show-thread-map): Bind mh-widen to "w".
4865 2002-10-20 Satyaki Das <satyaki@theforce.stanford.edu>
4867 * mh-seq.el (mh-thread-folder): This function is no longer
4868 interactive. The mh-toggle-threads is the interactive function
4869 that gets called by the user. Also the already computed values in
4870 mh-first-msg-num and mh-last-msg-num are used instead of
4871 recomputing the first and last message indices in the current
4873 (mh-toggle-threads): New interactive function that toggles
4874 threaded view of the folder.
4876 * mh-utils.el (mh-letter-toggle-threads): New interactive function
4877 which toggles thread view from show buffer. This function replaces
4878 mh-letter-thread-folder.
4879 (mh-show-folder-map): Use mh-letter-toggle-threads instead of
4880 mh-letter-thread-folder.
4882 * mh-e.el (mh-folder-map): Use mh-toggle-threads instead of
4885 2002-10-20 Bill Wohler <wohler@newt.com>
4887 * mh-e.el (mh-scan-folder): Formatting only.
4888 (mh-goto-cur-msg): Removed call to mh-last-msg in those cases
4889 where there isn't a current message. Since I've started using the
4890 speedbar to read my mh-e mail, I've had to use M-< every time to
4891 go to the beginning of the new messages. Very annoying! Thus, if
4892 there isn't a current message, the cursor is left alone, which
4893 sounds like the right thing to do anyway.
4895 2002-10-19 Peter S Galbraith <psg@debian.org>
4897 * mh-seq.el (mh-subject-thread-to-sequence): Bug fix. After
4898 making the 'subject sequence real, I now have to delete it globally.
4900 * mh-seq.el (mh-toggle-subject-thread): Make toggle back to full
4901 scan exactly mh-widen (removed moving to current message).
4903 * mh-seq.el (mh-subject-thread-to-sequence): Make 'subject
4904 sequence a real one, exported to MH. This means you can, for
4905 example, mh-forward it. But it also shows up with a mark in the
4906 scan output. (Closes SF #489445).
4908 2002-10-19 Bill Wohler <wohler@newt.com>
4910 * mh-speed.el (mh-speed-view): If there weren't any unseen
4911 messages, and you specified a string (a sequence like "last") when
4912 prompted for the number of messages to display, you got an error.
4913 This has been fixed.
4915 2002-10-19 Mark D Baushke <mdb@gnu.org>
4917 * mh-e.el (mh-last-destination-folder): Destination of last refile
4919 (mh-last-destination-write): Destination of last write command.
4920 (mh-refile-msg): Use 'mh-last-destination-folder and update both it
4921 and 'mh-last-destination.
4922 (mh-write-msg-to-file): Use 'mh-last-destination-write and update
4923 both it and 'mh-last-destination (Closes SF #580772).
4925 2002-10-19 Bill Wohler <wohler@newt.com>
4927 * mh-comp.el (mh-yank-from-start-of-msg): Changed default to
4929 (mh-letter-mode-map): Removed commented-out keybindings as well as
4930 alias "C-c C-m a (mh-compose-insertion)." Prefer "C-c C-m i."
4932 * mh-utils.el: Removed autoload of help. It no longer appears to
4933 be necessary in cvs Emacs (21.4).
4935 2002-10-18 Bill Wohler <wohler@newt.com>
4937 * mh-e.el (mh-execute-commands): Doc fix.
4938 (mh-compat-write-file-hook): Renamed to
4939 mh-write-file-functions-compat.
4940 (mh-folder-mode): Add mh-write-file-functions-compat instead of
4941 mh-compat-write-file-hook
4943 2002-10-18 Peter S Galbraith <psg@debian.org>
4945 * mh-utils.el (mh-invisible-headers-show-xface): Killed this
4947 (mh-invisible-headers): Use 'mh-show-use-xface instead of
4948 'mh-invisible-headers-show-xface to determine whether to render
4949 the X-Face header line visible or not.
4951 2002-10-18 Satyaki Das <satyaki@theforce.stanford.edu>
4953 * mh-e.el (mh-compat-write-file-hook, mh-folder-mode): Use the new
4954 macro mh-compat-write-file-hook to use write-file-functions for
4955 Emacs 21.4 and local-write-file-hooks for older versions.
4957 2002-10-18 Mark D Baushke <mdb@gnu.org>
4959 * mh-utils.el (mh-invisible-headers): Add more anti-spam headers.
4961 2002-10-18 Peter S Galbraith <psg@debian.org>
4963 * mh-mime.el (mh-mml-forward-message): mml-attach-file constructs
4964 a malformed composition if the description string is empty, so
4965 test for that and call mml-attach-file without that argument if
4966 it's an empty string (closes SF #625168).
4968 2002-10-17 Satyaki Das <satyaki@theforce.stanford.edu>
4970 * mh-index.el (mh-index-keymap): Removed extra binding of " ".
4971 (mh-index-folder-mode-help-messages): Made the cheat sheet entry
4972 of quit like the others.
4973 (mh-index-search): If space was pressed in the index buffer before
4974 a search result has been shown with ".", the old show buffer would
4975 be scrolled. This is confusing since the index and show buffer
4976 contents are contradictory. Killing the show buffer here avoids
4978 (mh-index-configure-windows): Refine the window configuration
4979 logic. Avoid the two window view unless there is a message being
4980 displayed in the show buffer.
4981 (mh-index-scroll-up): Rewrite this function. The old version had a
4982 bizarre problem where the show buffer wouldn't be scrolled if the
4983 speedbar was present.
4984 (mh-index-scroll-down): Rewritten because of similar reason as
4987 2002-10-17 Peter S Galbraith <psg@debian.org>
4989 * mh-comp.el (mh-reply): Add an undo boundary in the undo list
4990 before calling 'mh-yank-cur-msg (closes SF #623693).
4992 2002-10-17 Satyaki Das <satyaki@theforce.stanford.edu>
4994 * mh-e.el (mh-folder-mode): Use local-write-file-hooks instead of
4995 write-file-hooks. This is required for XEmacs and also the right
4996 thing according to GNU Emacs21 documentation.
4998 2002-10-16 Satyaki Das <satyaki@theforce.stanford.edu>
5000 * mh-seq.el (mh-thread-generate): Get threading to work correctly
5001 on partial folders. The fix here disregards messages that aren't
5002 already present in the buffer.
5003 (mh-thread-folder): When querying scan about thread info try to
5004 avoid asking about messages that aren't present in the folder
5005 buffer. A more efficient fix would be to ask scan about just the
5006 messages that are present instead of a range of messages. However
5007 that runs the risk of sending long command lines to scan. Another
5008 change was to populate the mh-scan-line-map early so that the
5009 change in mh-thread-generate would work.
5010 (mh-thread-generate-scan-lines): In case duplicates are present
5011 make one of them the pseudo parent of the rest. This makes it look
5012 prettier if there are multiple duplicates at top level.
5014 * mh-comp.el (mh-edit-again): If a buffer in show-mode is being
5015 reused then reinsert message file. This should fix SF #624283.
5017 * mh-mime.el (mh-mm-display-part): Make sure mh-display-part is
5018 always called when we want to remove the displayed MIME part.
5020 2002-10-16 Bill Wohler <wohler@newt.com>
5022 * mh-speed.el (mh-speed-folder-size): checkdoc fix.
5023 (mh-speed-view): Tweaked output to mirror gnus verbiage. Offer
5024 to view number of messages in folder rather than mh-large-folder.
5025 Replaced (intern mh-unseen-seq) with mh-unseen-seq since the
5026 former was generating errors.
5028 2002-10-15 Satyaki Das <satyaki@theforce.stanford.edu>
5030 * mh-speed.el (mh-large-folder): New customizable variable to
5031 control mh-e's perception of large folders.
5032 (mh-speed-folder-size): New function which computes the size of
5033 folder on current line.
5034 (mh-speed-view): Modified to handle large folders. If the folder
5035 being clicked has unseen messages then only those messages are
5036 shown. Otherwise if number of messages in folder is larger than
5037 mh-large-folders then the user is asked for the number of messages
5038 to be shown. If the folder satisfies neither of the above cases
5039 then it is displayed in its entirety
5041 2002-10-15 Bill Wohler <wohler@newt.com>
5043 * mh-index.el (mh-index-keymap): Use gnus-define-keys. Sorted.
5044 Noticed that there were two key bindings for SPACE...
5046 * mh-speed.el (mh-folder-speedbar-key-map): Ditto (except for the
5049 Completed help in other modes:
5051 * mh-utils.el (mh-xemacs-p): Fixed doc.
5052 (mh-show-mode-map, mh-show-folder-map, mh-show-sequence-map)
5053 (mh-show-thread-map, mh-show-extract-map): Added binding for
5056 * mh-pick.el (mh-search-folder): Added startup help message.
5057 (mh-pick-mode-help-messages): New variable that contains help
5058 messages for pick buffer.
5059 (mh-pick-mode): Set local buffer variable mh-help-messages to
5060 mh-pick-mode-help-messages.
5062 * mh-index.el (mh-index-keymap): Added binding for mh-help
5063 (mh-index-folder-mode-help-messages): New variable that contains
5064 help messages for MH Index buffer.
5065 (mh-index-folder-mode): Set local buffer variable mh-help-messages
5066 to mh-index-mode-help-messages.
5068 * mh-funcs.el (mh-help, mh-prefix-help): Call
5069 substitute-command-keys on the help messages.
5071 * mh-e.el (mh-help-messages): Added ,. Ran C-M-q.
5072 (mh-help): This autoload doc is now used for more than just the
5073 MH-Folder, so drop that specific text.
5075 * mh-comp.el (mh-edit-again, mh-extract-rejected-mail)
5076 (mh-forward, mh-reply, mh-send-sub): Call mh-letter-mode-message
5077 to display a help message at startup.
5078 (mh-letter-mode): Set local buffer variable mh-help-messages to
5079 mh-letter-mode-help-messages.
5080 (mh-letter-mode-help-messages): New variable with help messages
5081 for the MH-Letter buffer.
5082 (mh-letter-mode-message): New function that displays a startup
5084 (mh-letter-mode-map): Added binding for mh-help. Sorted.
5086 2002-10-15 Satyaki Das <satyaki@theforce.stanford.edu>
5088 * mh-speed.el (mh-speedbar-selected-folder-with-unseen-messages-face)
5089 (mh-speedbar-folder-face, mh-speedbar-selected-folder-face)
5090 (mh-speedbar-folder-with-unseen-messages-face): New faces for mh-e
5092 (mh-folder-speedbar-buttons, mh-speed-update-current-folder)
5093 (mh-speed-add-buttons): Use the new faces.
5094 (mh-speed-normal-face, mh-speed-bold-face): Functions to convert
5095 to bold face and back to normal face.
5096 (mh-speed-set-face): Removed.
5097 (mh-speed-highlight): Modified to allow it to be used instead of
5098 mh-speed-set-face. Also changes were made to fontify folders with
5100 (mh-speed-parse-flists-output, mh-speed-parse-flists-output)
5101 (mh-speed-invalidate-map): Use mh-speed-highlight instead of
5104 2002-10-15 Bill Wohler <wohler@newt.com>
5106 * mh-mime.el, mh-seq.el, mh-speed.el, mh-utils.el: It appears that
5107 the cl package has been restructured in 21.4 in such a way that
5108 the use of eval-when-compile no longer suppresses warnings when
5109 compiling so that (require 'cl) must be called directly (maybe
5110 this is a bug in 21.4 ;-). Thus the autoloads of cl are no longer
5111 needed. Now compiles clean under 21.4.
5113 * mh-e.el (mh-folder-mode): The use of local-write-file-hooks is
5114 deprecated in Emacs 21.4, so use add-hook write-file-functions (or
5115 write-file-hook for older versions) with the LOCAL argument
5116 instead. Now compiles clean under 21.4.
5118 * mh-comp.el (mh-yank-cur-msg): Push a mark at the opposite end of
5119 the included text to make it easy to jump or delete to the other
5120 end of the included text.
5122 2002-10-15 Satyaki Das <satyaki@theforce.stanford.edu>
5124 * mh-comp.el (mh-insert-prefix-string): Remove the erroneous use
5125 of set-mark and other related functions.
5127 2002-10-14 Bill Wohler <wohler@newt.com>
5129 * mh-comp.el (mh-yank-from-start-of-msg): Fixed documentation. It
5130 isn't ignored if there is a region. It is still used for the
5132 (mh-yank-cur-msg): Removed unnecessary push-mark when snarfing the
5133 entire message. Move the cursor to the end of the snarfed message
5134 if there is a region. In this case, push a mark so user can pop to
5135 the beginning of the snarfed fragment.
5136 (mh-insert-prefix-string): This calls set-mark which I find
5137 suspect since I found that my last user mark was deleted after
5138 yanking a message. Added a comment to this effect. Will probably
5141 * README (Installed, Supported versions): To appear in GNU Emacs
5142 21.3; supported on Emacs 21, 20.7 and XEmacs 21.
5144 * mh-funcs.el (mh-concat-list): Deleted. Use mapconcat instead.
5145 (mh-help, mh-prefix-help): Use mapconcat instead of mh-concat-list.
5146 (mh-ephem-message): Use "%s" in message.
5148 * mh-funcs.el (mh-concat-list): New function to concatenate a list
5149 of strings into a single string. I would have thought elisp
5150 already contained a function like this, but I couldn't find it.
5151 (mh-ephem-message): New function to display a message in the
5152 minibuffer ephemerally. minibuffer-message seemed like the right
5153 function, but it writes to the current buffer oddly enough.
5154 (mh-help, mh-prefix-help): New functions to display command
5155 cheat sheets in the minibuffer (closes SF #493740). It would be
5156 nice to refactor these two into a single function if possible.
5158 * mh-e.el (mh-folder-mode-map, mh-folder-map, mh-sequence-map)
5159 (mh-thread-map, mh-extract-map): Added ? keybinding for `mh-help'
5160 and `mh-prefix-help' (closes SF #493740).
5161 (mh-help-messages): New variable to hold various help messages.
5162 (mh-help, mh-prefix-help): Autoload from mh-funcs.el.
5164 2002-10-13 Bill Wohler <wohler@newt.com>
5166 * mh-index.el (mh-glimpse-directory, mh-swish-directory,
5167 mh-namazu-directory): New variables that hold the name of the
5168 configuration and indexing directory. All are now hidden `.'
5171 * mh-e.el, mh-funcs.el, mh-index.el, mh-mime.el, mh-pick.el,
5172 mh-seq.el, mh-xemacs-compat.el (Docstrings): Converted comments to
5173 docstrings, reworded some docstrings to conform to Emacs
5174 documentation conventions, and eliminated all checkdoc warnings
5175 (except for -flag, which we'll fix after 6.2 is released).
5177 2002-10-13 Satyaki Das <satyaki@theforce.stanford.edu>
5179 * mh-index.el (mh-swish-next-result): Fix a bug in a corner case
5180 where the lack of a trailing "/" caused the function to wrongly
5181 filter out correct hits. This should fix SF #622679.
5183 2002-10-12 Steve Youngs <youngs@xemacs.org>
5185 * mh-utils.el (mh-xemacs-p): Simplify it, don't test for
5186 'defvaralias' and don't use 'running-xemacs'.
5188 2002-10-11 Bill Wohler <wohler@newt.com>
5190 * mh-comp.el: (Docstrings): Eliminated all checkdoc warnings by
5191 converting comments to docstrings and rewording some docstrings to
5192 conform to Emacs documentation conventions.
5194 2002-10-11 Steve Youngs <youngs@xemacs.org>
5196 * mh-utils.el (mh-xemacs-p): New.
5197 (mh-show-use-xface): Use it.
5198 (mh-show-xface-function): Ditto.
5200 * mh-e.el (toplevel): Ditto.
5201 (mh-remove-xemacs-horizontal-scrollbar): Ditto.
5202 (mh-folder-mode-map): Ditto.
5204 * mh-comp.el (mh-insert-x-mailer): Ditto.
5206 * mh-mime.el (gnus-local-map-property): Ditto.
5207 (mh-mml-to-mime): Move (require 'mh-utils) to toplevel.
5208 (mh-prompt-for-folder): Autoloading this not needed because
5209 mh-utils is now required at toplevel.
5210 (mh-show-xface): Ditto.
5211 (mh-show-addr): Ditto.
5213 2002-10-11 Bill Wohler <wohler@newt.com>
5215 * Makefile (EMACS_HOME): Set default to $(TOP)/../emacs so it
5218 * mh-utils.el (mh-invisible-headers): Added various spam header
5220 (mh-path-search): Removed argument `func-p' and related code. It
5221 was not documented and no one used it.
5222 (Docstrings): Converted comments to docstrings, reworded some
5223 docstrings to conform to Emacs documentation conventions, and
5224 basically eliminated all checkdoc warnings (except for -flag
5227 2002-10-11 Satyaki Das <satyaki@theforce.stanford.edu>
5229 * mh-seq.el (mh-thread-generate): Kill dead code.
5231 2002-10-10 Satyaki Das <satyaki@theforce.stanford.edu>
5233 * mh-seq.el (mh-region-to-sequence): Don't include point-max in
5234 region (closes SF #621632).
5236 * mh-utils.el (mh-defun-show-buffer): Fix call of
5237 frame-first-window to work with XEmacs. Also avoid warning about
5238 cur-buffe-name in XEmacs.
5239 (mh-modify, mh-goto-msg): Remove dead code.
5241 * mh-speed.el (mh-speed-toggle, mh-speed-add-buttons): Remove dead
5244 * mh-seq.el (mh-subject-thread-to-sequence, mh-thread-get-message,
5245 mh-thread-generate, mh-thread-folder): Remove dead code.
5247 * mh-mime.el (mh-mm-inline-message): Remove dead code.
5249 * mh-index.el (mh-index-search): Remove dead code.
5251 * mh-comp.el (mh-open-line): Remove dead code.
5253 * mh-e.el (mh-folder-mode): Use the macro
5254 mh-remove-xemacs-horizontal-scrollbar to avoid compiler-warning in
5256 (mh-remove-xemacs-horizontal-scrollbar): New macro to avoid
5259 2002-10-10 Mark D Baushke <mdb@gnu.org>
5261 * Makefile (EMACS_OPTIONS): New macro for command-line compile
5263 (EMACS): Allow the user to specify which emacs command to use for
5265 (COMPILE_COMMAND): Combine the compile command with its options.
5266 (.el.elc): Use the new $(COMPILE_COMMAND).
5268 2002-10-10 Mark D Baushke <mdb@gnu.org>
5270 * mh-speed.el (mh-speed-select-attached-frame): Define a new
5271 compatibility macro for getting to the attached-frame.
5272 (mh-speed-update-current-folder): Use it.
5274 2002-10-10 Mark D Baushke <mdb@gnu.org>
5276 * mh-speed.el (mh-speed-update-current-folder): Use
5277 'dframe-select-attached-frame if we are in a newer speedbar
5278 version that no longer supports the 'speedbar-attached-frame
5281 2002-10-10 Steve Youngs <youngs@xemacs.org>
5283 * mh-speed.el (mh-speed-update-current-folder): Use
5284 'dframe-select-attached-frame' if we're in XEmacs.
5286 * mh-e.el (mh-folder-mode): Remove the horizontal scrollbar from
5287 the MH-Folder buffer if we're in XEmacs.
5289 2002-10-09 Satyaki Das <satyaki@theforce.stanford.edu>
5291 * mh-utils.el (mh-show-xface-function): New global that stores
5292 what function needs to be called to display X-Face.
5293 (mh-show-xface): Rewritten to avoid compiler warning.
5295 2002-10-09 Peter S Galbraith <psg@debian.org>
5297 * mh-utils.el (mh-exchange-point-and-mark-preserving-active-mark):
5298 Simplify code for all emacsen to avoid byte-compilation warnings.
5300 2002-10-09 Satyaki Das <satyaki@theforce.stanford.edu>
5302 * mh-mime.el (mh-mm-display-part): If a sub-part of the current
5303 part is an inline image then clicking the button keeps the image
5304 around. The change fixes this bug.
5306 2002-10-09 Peter S Galbraith <psg@debian.org>
5308 * mh-utils.el (mh-exec-cmd-output): Use new function
5309 'mh-exchange-point-and-mark-preserving-active-mark instead of
5310 'exchange-point-and-mark. Fixes a bug in emacs20 and XEmacs21.
5311 (mh-exchange-point-and-mark-preserving-active-mark): New function.
5312 Does like 'exchange-point-and-mark but doesn't activate the mark.
5314 * mh-comp.el (mh-letter-menu): Allow access to "Pull in All
5315 Compositions" menu entries when edits have really occurred.
5316 Works with "forw: -mime" mh_profile entry, so this fixes a bug.
5318 * mh-mime.el (mh-mime-inline-part, mh-mm-display-part): Use
5319 line-beginning-position and line-end-position instead of
5320 point-at-bol and point-at-eol XEmacs functions.
5321 * mh-xemacs-compat.el: Added line-end-position and
5322 line-beginning-position compatibility aliases.
5324 2002-10-08 Mark D. Baushke <mdb@gnu.org>
5326 * mh-utils.el (mh-scan-msg-format-regexp): The regexp to find
5328 (mh-scan-msg-format-string): Format to be used with the current
5329 maximum width of message number for the folder in the
5330 `mh-upate-scan-format' function.
5331 (mh-update-scan-format): Use `mh-scan-msg-format-regexp' for greater
5332 flexibility. The message number is no longer anchored to the
5333 beginning of the `mh-scan-format-nmh' or `mh-scan-format-mh' format
5334 strings. The `mh-update-scan-format' allows for using zero-filled
5337 2002-10-08 Peter S Galbraith <psg@debian.org>
5339 * mh-e.el (mh-folder-folder-menu): Add entry for "Thread Folder".
5341 2002-10-07 Satyaki Das <satyaki@theforce.stanford.edu>
5343 * mh-seq.el (mh-thread-generate): Use mh-progs to get path to mh
5346 * mh-speed.el (mh-speed-flists): Use mh-progs to get path to mh
5348 (mh-speed-folders-actual): Same as above.
5350 2002-10-05 Steve Youngs <youngs@xemacs.org>
5352 * mh-comp.el (mh-yank-from-start-of-msg): Make default setting 't'
5355 * mh-xemacs-compat.el (match-string-no-properties): Rewrite as a
5356 defsubst using 'buffer-substring-no-properties' so we don't grab
5358 (rfc822-goto-eoh): Removed. This exists in the XEmacs mail-lib
5360 (mail-header-end): Ditto.
5361 (mail-mode-fill-paragraph): Ditto.
5363 2002-10-05 Satyaki Das <satyaki@theforce.stanford.edu>
5365 * mh-speed.el (mh-speed-invalidate-map): When called interactively
5366 the function will clear mh-speed-folders-cache.
5368 2002-10-02 Satyaki Das <satyaki@theforce.stanford.edu>
5370 * mh-mime.el (mh-insert-mime-button): Rewrite without using
5373 2002-10-01 Satyaki Das <satyaki@theforce.stanford.edu>
5375 * mh-mime.el (mh-file-mime-type-substitutions): Reorder code to
5376 avoid compiler warning.
5378 2002-10-01 Bill Wohler <wohler@newt.com>
5380 * Makefile (MH-E-ETC): Moved ChangeLog into MH-E-ETC-ETC since it
5381 shouldn't get installed in Emacs.
5382 (install-emacs): Install MH-E-IMG into Emacs' lisp/toolbar and
5383 MH-E-IMG2 into Emacs' lisp/mail.
5385 2002-10-01 Peter S Galbraith <psg@debian.org>
5387 * mh-e.el (mh-tool-bar-reply-3-buttons): New customization.
5388 Non-nil means use three buttons for reply commands in tool-bar.
5389 If you have room on your tool-bar because you are using a large
5390 font, you may set this variable to expand the single reply
5391 button into three buttons that won't lead to minibuffer prompt
5392 about who to reply to.
5393 (mh-folder-tool-bar-map): Use mh-tool-bar-reply-3-buttons to
5394 decide how many buttons to use for replying.
5396 * mh-mime.el (mh-file-mime-type-substitutions)
5397 (mh-file-mime-type-substitute): Fix typos and doc strings.
5399 2002-09-30 Peter S Galbraith <psg@debian.org>
5401 * mh-mime.el (mh-file-mime-type): Run Content-Type string returned
5402 by file command through mh-file-mime-type-substitute (see below).
5403 (mh-file-mime-type-substitute): Possibly change Content-Type
5404 string using mh-file-mime-type-substitutions variable. This is
5405 mostly because all MS-Office file are seen as application/msword
5406 by the file command.
5407 (mh-file-mime-type-substitutions): New variable. Defines
5408 substitutions to make for Content-Type returned from file command.
5410 2002-09-27 Bill Wohler <wohler@newt.com>
5412 * README: Moved Id to end of file since it broke outline mode at
5415 * import-emacs (release): Renamed "mainline" tag to
5416 "emacs-mainline" to correspond with existing CVS tag.
5417 (EMACS_HOME): Fixed typo in docstring.
5419 * mh-utils.el (mh-folder-name-p, mh-defun-show-buffer): Lowercase
5420 NIL and T in docstring.
5421 (mh-update-scan-format): Fixed typo.
5423 * mh-comp.el, mh-e.el, mh-pick.el, mh-utils.el: Updated from CVS
5424 Emacs. The only new thing appears to be to downcase NIL and T in
5427 2002-09-26 Satyaki Das <satyaki@theforce.stanford.edu>
5429 * mh-seq.el (mh-thread-generate): The threading code will now be
5430 more resistant to corruption of messages. Before the change any
5431 corruption of message x would cause all messages with indices
5432 higher than x to be neglected when threading!
5434 2002-09-23 Peter S Galbraith <psg@debian.org>
5436 * mh-mime.el (mh-store-mime-parts): Don't store value into
5437 user-customizable variable mh-store-mime-parts-default-directory
5438 and use mh-store-mime-parts-directory instead.
5440 2002-09-20 Satyaki Das <satyaki@theforce.stanford.edu>
5442 * mh-seq.el (mh-thread-prune-subject): Use regular expressions to
5443 make the subject pruning behave the way it is specified in the
5446 * mh-speed.el (mh-speed-folders-actual): Don't use pop when we
5447 are not going to use the first element. This avoids a compilation
5448 warning with cvs emacs.
5450 2002-09-19 Satyaki Das <satyaki@theforce.stanford.edu>
5452 * mh-utils.el (mh-display-msg): Put the call to
5453 set-buffer-modified after mh-show-mode. This is needed for CVS
5454 emacs since calling mh-show-mode marks the buffer as modified if
5457 2002-09-17 Peter S Galbraith <psg@debian.org>
5459 * mh-mime.el (mh-store-mime-parts-default-directory): Renamed from
5460 mh-store-mime-parts-directory
5461 (mh-store-mime-parts-directory): Renamed from
5462 mh-store-mime-parts-directory-default.
5464 2002-09-16 Peter S Galbraith <psg@debian.org>
5466 * mh-comp.el (mail-citation-hook): Doc tweaks suggested by Bill.
5468 2002-09-08 Satyaki Das <satyaki@theforce.stanford.edu>
5470 * mh-e.el (autoloads): Reorder autoload of mh-reply to avoid
5473 2002-09-03 Peter S Galbraith <psg@debian.org>
5475 * mh-mime.el (mh-store-mime-parts-directory): New defcustom.
5476 Default directory to use for mh-store-mime-parts.
5477 (mh-store-mime-parts): New Command. Store the MIME parts of the
5479 (mh-store-mime-parts-directory-default): New internal working
5480 variable. Default to use for mh-store-mime-parts-directory, set
5483 * mh-e.el (mh-folder-seq-tool-bar-map): Add mh-store-mime-parts to
5487 2002-08-22 Satyaki Das <satyaki@theforce.stanford.edu>
5489 * mh-seq.el (mh-thread-generate-scan-lines): In threaded view,
5490 complete scan lines are printed for all messages (not just the
5491 ones at the top of a thread).
5493 * mh-index.el (mh-index-insert-scan): Replace use of kill-line
5494 since that pollutes the kill-ring.
5496 * mh-comp.el (autoloads): Add autoloads for search and subseq to
5497 get rid of compiler warnings.
5499 2002-08-19 Peter S Galbraith <psg@debian.org>
5501 * reply-to.xpm, reply-to.pbm, reply-from.xpm, reply-from.pbm,
5502 reply-all.xpm, reply-all.bpm: New icons for various reply methods.
5503 * mh-e.el (mh-folder-tool-bar-map): Split reply button into three
5504 that won't prompt for "from", "to" and "all".
5505 * mh-comp.el (mh-reply): Put variable reply-to in the interactive
5506 list since it's specified on the command line for the new toolbar.
5508 * mh-comp.el (mail-citation-hook): Tweak docs concerning
5509 historical usage for supercite.
5510 (mh-yank-from-start-of-msg): Add settings 'supercite and
5511 'autosupercite. Rename 'automatic to 'autoattrib.
5512 (mh-insert-prefix-string): Invoke sc-cite-original if
5513 mh-yank-from-start-of-msg is et to 'supercite or 'autosupercite.
5515 2002-08-17 Satyaki Das <satyaki@theforce.stanford.edu>
5517 * mh-comp.el (compilation-fix): Reorder defvars to avoid warnings
5520 2002-08-17 Peter S Galbraith <psg@debian.org>
5522 * mh-comp.el (mh-yank-from-start-of-msg): Add 'automatic choice.
5523 Do as for `attribution' automatically when show buffer matches the
5524 message being replied-to.
5525 (mh-reply): Call 'mh-yank-cur-msg when mh-yank-from-start-of-msg
5526 is set to 'automatic and show buffer matches message number being
5528 (mh-show-buffer-message-number): New helper function to get the
5529 message number of the current show-buffer.
5530 (mh-yank-cur-msg): Handle 'automatic choice the same as 'attribution.
5531 (mh-yank-cur-msg): Bug fix. It would bail on error if
5532 mh-show-buffer didn't exists.
5534 2002-08-16 Peter S Galbraith <psg@debian.org>
5536 * mh-comp.el (mh-insert-x-mailer): It wrongly assumed that Emacs
5537 was used even when XEmacs was used. Fixed so X-Mailer header is
5538 more exact about what we are using.
5540 2002-08-15 Peter S Galbraith <psg@debian.org>
5542 * mh-e.el (mh-version): Change CVS version number to 6.1+cvs just
5543 so X-Mailer header is more exact about what we are using.
5545 * mh-mime.el (mh-mhn-compose-insertion, mh-mhn-compose-anon-ftp,
5546 mh-mml-attach-file):
5547 "Jeffrey P. Morgenthaler" <jpmorgen@congee.gsfc.nasa.go> reported
5548 that "require" in emacs 20.3 doesn't handle 3 arguments. We
5549 use "load" at the top of file elsewhere anyway to handle such a
5550 case of non-essential loading, so switch to that here.
5552 2002-08-06 Satyaki Das <satyaki@theforce.stanford.edu>
5554 * mh-funcs.el (autoload): Add autoload for mh-speed-invalidate-map.
5556 * mh-speed.el (mh-speed-add-folder): New function to make the
5557 speedbar aware of new folders when they are created by mh-e.
5559 * mh-utils.el (mh-prompt-for-folder): Use mh-speed-add-folder to
5560 tell speedbar that new folder is being created. Also use folder
5561 instead of mkdir to create new folders.
5563 2002-08-01 Peter S Galbraith <psg@debian.org>
5565 * mh-utils.el (mh-decode-quoted-printable): Conditionalize the
5566 limit of search for quoted-printable. If we're using mm-decode
5567 for MIME decoding, it's possible that `mimedecode' could mess our
5568 message, so we only run a full search for quoted-printable parts
5569 when not using gnus' mm-decode. When using mm-decode, mimedecode
5570 can still help by handling the case of the whole message being
5571 quoted-printable as opposed to only a part.
5573 2002-07-31 Peter S Galbraith <psg@debian.org>
5575 * mh-comp.el (mh-compose-insertion): Moved from mh-mime.el because
5576 the pulldown menu were broken in XEmacs21 from this variable being
5579 2002-07-28 Mark D. Baushke <mdb@gnu.org>
5581 * mh-utils.el (mh-show-mode): Use the default paragraph-start
5582 rather than the inherited text-mode value.
5584 2002-07-28 Satyaki Das <satyaki@theforce.stanford.edu>
5586 * mh-seq.el (mh-thread-duplicates): New hash table to track
5588 (mh-thread-get-message): Remove debug code.
5589 (mh-thread-canonicalize-id): Modified to handle messages without
5590 message-id header. Such messages are given distinct copies of the
5591 empty string as message-id.
5592 (mh-thread-generate): The function was inadvertently rebuilding
5593 the thread tree when message refiles and message deletes are
5594 processed. The change here fixes that. Also code has been added to
5595 keep track of duplicate message-id's.
5596 (mh-thread-generate-scan-lines): Modified to print scan lines for
5597 duplicate messages (that is messages with the same message-id).
5598 (mh-thread-forget-message): Modified to maintain
5599 mh-thread-duplicates.
5601 2002-07-22 Satyaki Das <satyaki@theforce.stanford.edu>
5603 * mh-speed.el (mh-speed-parse-flists-output): Use delete-region
5604 instead of kill-region. Otherwise the kill ring gets polluted.
5606 2002-07-16 Satyaki Das <satyaki@theforce.stanford.edu>
5608 * mh-seq.el (mh-thread-update-scan-line-map): New function to
5609 refresh the stale scan lines.
5610 (mh-thread-inc): Update old scan lines when mh-thread-inc is
5611 called. Otherwise notations for deleted and refiled messages get
5612 lost and the folder display gets out of sync with real mh-e state.
5614 * mh-mime.el (mh-mm-display-part): Call Gnus citation highlight
5615 code when text part is displayed. Otherwise buttonized text parts
5616 aren't correctly fontified when they are displayed.
5618 2002-07-15 Mark D. Baushke <mdb@gnu.org>
5620 * mh-utils.el (mm-decode): Use load for the Non-fatal depencency
5621 on the mm-decode library.
5622 * mh-mime.el (mm-decode, mm-uu, mm-view): Use load for the
5623 Non-fatal depencencies on the mm-decode, mm-uu and mm-view
5626 2002-07-15 Satyaki Das <satyaki@theforce.stanford.edu>
5628 * mh-utils.el (mh-require, mh-autoload): Remove these macros.
5629 (mh-decode-mime): Initialized to t iff the mm-decode library is
5630 present in the load-path.
5631 * mh-mime.el (mh-require): Don't use it anymore.
5633 2002-07-15 Mark D Baushke <mdb@gnu.org>
5635 * mh-utils.el (mh-update-scan-format): Rewrite for compatibility
5636 with Xemacs as replace-match appears not to have identical
5637 functionality with FSF emacs.
5638 (mh-scan-msg-format-regexp): Deleted. This regexp is now hardcoded
5639 into the mh-update-scan-format function.
5641 2002-07-12 Satyaki Das <satyaki@theforce.stanford.edu>
5643 * mh-seq.el: Add message threading code.
5645 * mh-utils.el (mh-letter-thread-folder): New interactive function
5646 that allows switching to threaded view from show buffer.
5647 (mh-show-folder-map): Bound "F t" to call mh-letter-thread-folder.
5648 (mh-goto-msg): Replace the function to not assume that messages
5649 are sorted in the folder buffer.
5651 * mh-e.el (mh-folder-threaded-view-p): New buffer local variable
5652 in the folder buffer that records whether threaded view is being
5654 (mh-scan-subject-regexp, mh-scan-format-regexp): Get font lock
5655 working for threaded view as well.
5656 (mh-regenerate-headers): Reset mh-folder-threaded-view-p to nil.
5657 (mh-get-new-mail, mh-process-commands): Do incremental threading
5658 if folder is in threaded view.
5659 (mh-delete-scan-msgs): Update thread tables if folder is in
5661 (mh-folder-map): Add "F t" as key binding for mh-thread-folder
5663 * mh-comp.el (mh-yank-cur-msg): Bug fix. mh-show-buffer is only
5664 has a meaningful value in the folder buffer.
5666 2002-07-11 Peter S Galbraith <psg@debian.org>
5668 * mh-comp.el (mh-yank-cur-msg): Run only if mh-show-buffer
5669 actually exists (otherwise a back-traceable error occurred).
5671 * mh-utils.el (mh-find-progs): Run PATH search only when mh-progs,
5672 mh-lib and mh-lib-progs are not all already set. This allows the
5673 user to set them using a simple setq prior to loading mh-e. This
5674 is useful for implementation of mh-e on win32. Note that many
5675 commands still call mh-find-path which also parses the mh_profile
5676 file (that may still fail on win32), so this is still done often.
5677 But it lets us change the mh_profile file and have mh-e see the
5678 changed file without exiting emacs and starting over so I left
5681 2002-07-04 Satyaki Das <satyaki@theforce.stanford.edu>
5683 * mh-index.el (mh-index-show): Fixed a bug in mh-index-show which
5684 caused it to lose track of point when called from show buffer.
5686 2002-07-04 Mark D. Baushke <mdb@gnu.org>
5688 * Makefile: Add more information and common methods to allow both
5689 GNU make and Berkeley make to properly build everything.
5691 2002-07-04 Satyaki Das <satyaki@theforce.stanford.edu>
5693 * mh-mime.el (mh-push-button): Bug fix for mime display with
5694 mouse. Select show window before executing the mime display
5697 2002-07-01 Mark D. Baushke <mdb@gnu.org>
5699 * Makefile: Use a conditional variable assignment operator rather
5700 than ifndef to let Makefile be used by both GNU make and Berkeley
5701 make (or similar versions of make). This does not help Solaris
5702 /usr/ccs/bin/make, but Solaris make has problems with the ifndef
5705 2002-07-01 Satyaki Das <satyaki@theforce.stanford.edu>
5707 * mh-index.el (mh-index-search): Check for mh-decode-mime before
5708 adding mh-mime-cleanup to kill-buffer-hook.
5710 * mh-mime.el (mm-destroy-parts): Add definition for old emacs.
5712 2002-06-30 Mark D Baushke <mdb@gnu.org>
5714 * mh-utils.el (mh-update-scan-format): Add documentation string.
5715 (mh-scan-msg-format-regexp): Update the regexp to find %(msg).
5716 (mh-set-cmd-note): When mh-scan-format-file is not t, dynamic
5717 update of mh-cmd-note is wrong. Do not assume that
5718 mh-scan-format-nmh and mh-scan-format-mh can be kept in lock-step
5719 with mh-cmd-note via mh-set-cmd-note. The mh-scan-format function
5720 is now where the updated mh-cmd-note value is put into the scan
5723 * mh-e.el (mh-generate-new-cmd-note): Add documentation string.
5724 (mh-scan-format): Use mh-update-scan-format to get updated copies
5725 of mh-scan-format-nmh and mh-scan-format-mh to avoid format skew.
5726 (mh-get-new-mail): Do not try to adapt mh-cmd-note unless
5727 mh-scan-format-file is equal to t.
5728 (mh-scan-format-nmh): No longer buffer local.
5729 (mh-scan-format-mh): No longer buffer local.
5731 2002-06-30 Satyaki Das <satyaki@theforce.stanford.edu>
5733 * mh-index.el (mh-index-max-msg-index): New variable to keep track
5734 of max message index among search results. If mh-adaptive-cmd-note
5735 is non-nil this is used to compute the width of the index field.
5736 (mh-index-search): Keep track of max index seen while parsing the
5737 search results and set it if mh-adaptive-cmd-note is non-nil.
5738 (mh-index-find-max-width): New function to find the required width
5739 of the message index field.
5740 (mh-defun-index): Binding buffer local variables is bad, so don't
5742 (mh-index-show): New argument display-headers-p decides whether
5743 the message is displayed in raw form or not.
5744 (mh-index-header-display): New interactive function bound to ","
5745 which shows the message in raw form.
5746 (mh-index-keymap): Add appropriate bindings for backtab and ",".
5747 (read-from-string): Add ignore-errors around it so that the code
5748 doesn't die when it gets unexpected input.
5750 2002-06-29 Satyaki Das <satyaki@theforce.stanford.edu>
5752 * mh-index.el (mh-count-windows): This function works around the
5753 lack of the window-list builtin function in emacs20.
5755 2002-06-29 Mark D Baushke <mdb@gnu.org>
5757 * mh-utils.el (mh-message-number-width): New function to scan
5758 the last message of a folder and return its width.
5759 (mh-adaptive-cmd-note): New variable, if Non-nil indicates that
5760 mh-set-cmd-note should be called with the message width for the
5762 (mh-cmd-note): Update documentation.
5763 (mh-update-scan-format): Helper function for updating the
5764 mh-scan-format-nmh and mh-scan-format-mh variables.
5765 (mh-scan-msg-overflow-regexp): New variable to help find problem
5766 messages after an inc.
5767 (mh-scan-msg-format-regexp): New variable to find the old message
5768 width in one of the mh-scan-format-nmh or mh-scan-format-mh
5770 (mh-set-default-cmd-note): Replaced by mh-set-cmd-note.
5771 (mh-set-cmd-note): New function to replace update mh-cmd-note
5774 * mh-e.el (mh-regenerate-headers): If mh-adaptive-cmd-note is
5775 non-nil, use mh-set-cmd-note on empty folder buffers.
5776 (mh-make-folder): Ditto.
5777 (mh-generate-new-cmd-note): New function to adapt the mh-cmd-note
5778 to fit when mh-get-new-mail gets message number truncation.
5779 (mh-get-new-mail): Maybe use mh-generate-new-cmd-note if
5780 mh-adaptive-cmd-note is Non-nil.
5782 2002-06-29 Satyaki Das <satyaki@theforce.stanford.edu>
5784 * mh-speed.el (mh-speed-view): The display gets confused if the
5785 cursor is in the show buffer when mh-speed-view is called. This is
5788 2002-06-27 Satyaki Das <satyaki@theforce.stanford.edu>
5790 * mh-e.el (mh-next-undeleted-msg): Get rid of optional arg
5791 reverse-p. If there are no more undeleted messages the the point
5792 remains at its original position and a message is produced (closes
5794 (mh-previous-undeleted-msg): Change similar to
5795 mh-next-undeleted-msg.
5796 (mh-next-msg, mh-refile-msg, mh-delete-msg): Backout previous
5798 (mh-folder-map): Bind "S-tab" and "K S-tab" to mh-prev-button.
5800 * mh-utils.el (mh-show-mode-map): Bind "S-tab" and "K S-tab" to
5801 mh-letter-prev-button.
5803 * mh-mime.el (gnus-newsgroup-name): Initialize it to nil, so that
5804 mm-uu-dissect doesn't cause error.
5806 2002-06-27 Mark D Baushke <mdb@gnu.org>
5808 * mh-utils.el (mh-cmd-note): Make buffer-local. Changes to this
5809 variable should be made via the new mh-set-default-cmd-note
5811 (mh-set-default-cmd-note): New function to setq-default the
5812 mh-cmd-note, mh-scan-format-mh and mh-scan-format-nmh values to
5815 * mh-e.el (mh-scan-format-mh): Make buffer-local.
5816 (mh-scan-format-nmh): Ditto.
5817 (mh-scan-good-msg-regexp): Use a more general regular expression
5818 so that the width of message numbers, mh-cmd-note, may vary.
5819 (mh-scan-deleted-msg-regexp): Ditto.
5820 (mh-scan-refiled-msg-regexp): Ditto.
5821 (mh-scan-cur-msg-number-regexp): Ditto.
5822 (mh-scan-cur-msg-regexp): Ditto.
5823 (mh-scan-subject-regexp): Ditto.
5825 2002-06-26 Satyaki Das <satyaki@theforce.stanford.edu>
5827 * mh-speed.el: Speedbar support code.
5829 * Makefile: Add mh-speed.el to MH-E-SRC.
5831 * mh-utils.el (mh-prompt-for-folder): Add speedbar hook if
5832 speedbar is being used.
5834 * mh-funcs.el (mh-kill-folder): Add speedbar hook if speedbar is
5837 * mh-e.el (speedbar-autoloads): Autoload speedbar initialization
5838 functions so that speedbar can find them.
5840 2002-06-25 Satyaki Das <satyaki@theforce.stanford.edu>
5842 * mh-index.el (mh-grep-execute-search, mh-grep-next-result): Allow
5843 grep to be used to search mail.
5844 (mh-index-font-lock-keywords): Modified to avoid bug when using
5847 * mh-e.el (mh-delete-msg, mh-refile-msg): Modify so that if no
5848 undeleted (or unrefiled) message exists in the current movement
5849 direction then try to find an undeleted (or unrefiled) message in
5850 the opposite direction instead.
5851 (mh-next-undeleted-msg): Added a new optional argument. If non-nil
5852 search for undeleted message backwards if none exists in the
5854 (mh-previous-undeleted-msg): Added an optional argument. If
5855 non-nil search for undeleted message in the forward direction if
5856 none exists in the backward direction.
5857 (mh-next-msg): Optional argument to change direction if undeleted
5858 messages are not found in the current direction.
5860 * mh-index.el (mh-cmd-note): Use mh-cmd-note instead of hardcoding
5861 the index field size to 4.
5863 * mh-utils.el (mh-show-addr, mh-show-xface): New functions added
5864 to do xface display and goto-addr interface to allow reuse by the
5866 (mh-show-mode): Use mh-show-addr and mh-show-xface. Only add
5867 mh-mime-cleanup to kill-buffer-hook if mime decoding is enabled.
5868 (mh-modify): Use mh-letter-mode instead of mh-show-mode when
5871 * mh-mime.el (mh-mm-inline-message): Arrange for xface and
5872 highlighting to work in forwarded messages.
5874 2002-06-23 Peter S Galbraith <psg@debian.org>
5876 * mh-comp.el (mh-yank-from-start-of-msg): Add 'attribution' option
5877 to add an attribution line in mh-yank-cur-msg.
5878 (mh-extract-from-attribution-verb): Verb to use for attribution
5879 when a message is yanked by mh-yank-cur-msg. Provides a method
5880 for setting a different language.
5881 (mh-yank-cur-msg): Add support for 'attribution' option.
5882 (mh-extract-from-attribution): Function to get the attribution
5883 line, or the sender from the From: line in the current show buffer.
5885 2002-06-20 Satyaki Das <satyaki@theforce.stanford.edu>
5887 * mh-index.el (mh-index-show): mh-display-msg was not being called
5888 in the show buffer. This causes weird results on some mime messages.
5890 * mh-mime.el (gnus-newsgroup-charset): Defvar to avoid error in
5891 pgp messages if gnus hasn't been used yet.
5893 * mh-comp.el (mh-letter-mode-map): Typo fix.
5895 2002-06-19 Satyaki Das <satyaki@theforce.stanford.edu>
5897 * mh-mime.el (mh-mml-secure-message-encrypt-pgpmime): Typo fix.
5898 (compiler-warnings): Add autoloads to remove compiler warnings.
5900 * mh-index.el (autoload-fixes): Fix autoload forms.
5902 2002-06-18 Satyaki Das <satyaki@theforce.stanford.edu>
5904 * mh-comp.el (mh-letter-mode-map): Change binding of "\C-c\C-ma"
5905 to mh-compose-insertion. Remove duplicate binding for "C-c\C-mf".
5906 (compiler-warnings): Add defvar to remove compiler-warning.
5908 2002-06-18 Peter S Galbraith <psg@debian.org>
5910 * mh-comp.el (mh-letter-menu): Conditionalize GPG function on
5911 mh-gnus-pgp-support-p.
5913 * mh-mime.el (mh-mml-forward-message): s/subseq/substring/.
5914 (mh-compose-forward): cut&paste typo: s/messages/message/.
5915 (mml-minibuffer-read-file): autoload added.
5916 (mml-minibuffer-read-description): autoload added.
5917 (mml-insert-empty-tag): autoload added.
5918 (mh-mml-secure-message-sign-pgpmime): Check mh-gnus-pgp-support-p.
5919 (mh-mml-secure-message-encrypt-pgpmime): Check mh-gnus-pgp-support-p.
5921 2002-06-17 Peter S Galbraith <psg@debian.org>
5923 * mh-utils.el (mh-show-use-xface): Check for availability of
5924 `uncompface' executable on system.
5926 * mh-mime.el (mh-compose-forward): New front end for both
5927 mh-mml-forward-message and mh-mhn-compose-forw.
5928 (mh-compose-insertion): New front end for both mh-mml-attach-file
5929 and mh-mhn-compose-insertion.
5930 (mh-mml-to-mime): New function. Compose mime message from mml
5932 (mh-mml-forward-message): New function. Forward a message as
5934 (mh-mml-attach-file): New function. Attach a file to the outgoing
5936 (mh-mml-compose-insert-p): New variable. Buffer-local variable to
5937 know whether MIME insertion was done. Triggers an automatic call
5938 to `mh-mml-to-mime' in `mh-send-letter'.
5939 (mh-mml-secure-message-sign-pgpmime): New function.
5940 Front end to mml-secure-message-sign-pgpmime.
5941 (mh-mml-secure-message-encrypt-pgpmime): New function.
5942 Front end to mml-secure-message-encrypt-pgpmime.
5944 * mh-comp.el (mh-send-letter): automatic call to `mh-mml-to-mime'
5945 if mh-mml-compose-insert-p is set.
5946 (mh-letter-mode-map): Add keys for new mh-mime functions above.
5947 * mh-comp.el: Added autoloads for new mh-mime functions above.
5949 2002-06-17 Peter S Galbraith <psg@debian.org>
5951 * mh-utils.el (mh-show-use-xface): new defcustom to determine
5952 whether to call external package x-face to display the x-face.
5953 (mh-invisible-headers-show-xface): variable now defaults to value
5954 of mh-show-use-xface.
5955 (mh-show-mode): When mh-show-use-xface is t, invoke
5956 external package x-face to display the x-face.
5958 2002-06-15 Satyaki Das <satyaki@theforce.stanford.edu>
5960 * mh-e.el (mh-prev-button): New interactive function which moves
5961 point to the previous mime button in the show buffer.
5962 (mh-folder-mode-map): Bind M-TAB and K M-TAB to mh-prev-button.
5964 * mh-utils.el (mh-show-mode-map): Bind M-TAB and K M-TAB to call
5965 mh-letter-prev-button (which is analogous to mh-prev-button).
5966 (mh-gnus-pgp-support-p): New global variable to replace the
5967 variable mh-recent-gnus-p. The name better describes what it is
5970 * mh-mime.el (mh-mime-display-part, mh-mime-display-single): Use
5971 mh-gnus-pgp-support-p instead of mh-recent-gnus-p.
5973 2002-06-12 Satyaki Das <satyaki@theforce.stanford.edu>
5975 * mh-mime.el (mh-display-buttons-for-inline-parts): New
5976 customizable variable. When non-nil inline parts have are
5977 displayed with a button (that is initially expanded).
5978 (mh-maybe-insert-newline): The function has been removed.
5979 (mh-mime-display-single): Add code to display buttons for inline
5980 parts. Reduce the insertion of extra newlines between inline parts
5981 and also for pgp signature parts.
5982 (mh-mm-display-part): The function has been rewritten and cleaned
5983 up. There was a bug which could change the show buffer if the user
5984 pressed C-g while a mime part was being displayed has been fixed.
5985 (mh-press-button, mh-push-button): Use unwind-protect to make sure
5986 that set-buffer-modified-p is always called after mime display.
5987 (mh-mime-inline-part): The behavior of the function has been
5988 changed so that it toggles the display of the raw bytes.
5989 (mh-mime-display-security): Remove the display of too many
5991 (documentation): Remove most check-doc warnings.
5993 * mh-comp.el (mh-filter-out-non-text): Updated since whitespace
5994 added around mime buttons have changed.
5996 2002-06-10 Satyaki Das <satyaki@theforce.stanford.edu>
5998 * mh-index.el (mh-index-last-search, mh-index-search): The default
5999 prompt in mh-index-search has been removed since currently there
6000 is no good way of reading "+" with mh-prompt-for-folder.
6001 (mh-index-folder-mode, mh-index-show-mode): New major modes
6002 derived from mh-folder-mode and mh-show-mode respectively. They
6003 use a restricted keymap compared to the parent modes.
6004 (mh-index-folder-face): New customizable face to display folder
6005 names in the index buffer.
6006 (documentation): Change two spaces after period back to one.
6008 2002-06-08 Satyaki Das <satyaki@theforce.stanford.edu>
6010 * mh-e.el (mh-folder-toggle-mime-part): New interactive function
6011 to control mime display from folder buffer.
6012 (mh-folder-inline-mime-part): New interactive function to inline
6013 raw mime part from folder buffer.
6014 (mh-folder-save-mime-part): New interactive function to save mime
6015 part from folder buffer.
6016 (mh-folder-mode-map): Add keybindings for "K v", "K o", "K i" and
6017 "K \t" to mh-folder-mode-map.
6018 (mh-goto-next-button): Modified to allow searching for next button
6019 that satisfies some condition.
6020 (mh-folder-mime-action): Support function for
6021 mh-folder-save-mime-part, mh-folder-inline-mime-part and
6022 mh-folder-toggle-mime-part.
6024 * mh-utils.el (mh-show-mode-map): Modify keymap to add appropriate
6025 bindings for "K v", "K o", "K i" and "K \t".
6027 * mh-index.el (documentation): Fix docs according to checkdoc
6030 2002-06-07 Satyaki Das <satyaki@theforce.stanford.edu>
6032 * mh-seq.el, mh-funcs.el (Compiler): Remove (require 'view) and
6033 instead add defvar for view-exit-action.
6035 2002-06-06 Satyaki Das <satyaki@theforce.stanford.edu>
6037 * mh-comp.el (mh-insert-x-face): If transient-mark-mode is enabled
6038 the call to mark returns error. So avoid using mark.
6040 * mh-index.el: Support for new interactive function
6043 * mh-e.el (mh-next-button, mh-goto-next-button): Refactor
6044 mh-next-button so that the code may be reused by mh-index.el.
6045 (mh-folder-map): Add key "F i" to call mh-index-search.
6047 * mh-utils.el (mh-recent-gnus-p): Fix documentation.
6048 (mh-msg-folder, mh-display-msg): The new function mh-msg-folder
6049 maps a MH folder name to the buffer displaying it. In normal
6050 operation the two names are identical but they are different in a
6051 folder buffer generated by index search. Minor modification to
6052 mh-display-msg to use mh-msg-folder to enable mh-index-search to
6054 (mh-show-mode-map): Add key "F i" to call mh-index-search.
6056 * Makefile: Add mh-index.el
6058 2002-06-05 Peter S Galbraith <psg@debian.org>
6060 * mh-e.el (mh-folder-message-menu): Add an entry for mh-modify.
6062 2002-05-31 Satyaki Das <satyaki@theforce.stanford.edu>
6064 * mh-utils.el (mh-decode-quoted-printable): Only decode if the
6065 whole message is encoded. So restrict the search for the
6066 content-transfer-encoding header to the headers of the message
6069 * mh-mime.el (mh-mime-display-alternative): Make sure that point
6070 is moved after mm-display-part is called.
6072 2002-05-29 Satyaki Das <satyaki@theforce.stanford.edu>
6074 * mh-mime.el (mh-mime-display-single): Fix the logic that
6075 determines when an attachment is buttonized. For inline parts that
6076 can't be displayed a button is now created.
6078 2002-05-29 Satyaki Das <satyaki@theforce.stanford.edu>
6080 * mh-e.el (mh-regenerate-headers): Fix an error in which the
6081 mh-mode-line-annotation was not being set properly.
6083 * mh-mime.el, mh-utils.el (compilation): Macros mh-require and
6084 mh-autoload are used to make sure that emacs20 doesn't croak when
6085 it tries to load non-existent mm-* files.
6086 (mh-decode-mime): Make it default to nil for Emacs major version
6089 2002-05-28 Satyaki Das <satyaki@theforce.stanford.edu>
6091 * mh-e.el (mh-regenerate-headers): Generalize the function to
6092 handle multiple ranges.
6094 2002-05-25 Satyaki Das <satyaki@theforce.stanford.edu>
6096 * compilation: Reduce use of eval-when-compile so that load-path
6097 is not changed if lisp files are loaded without compilation. Small
6098 changes were made to Makefile, mh-comp.el mh-e.el, mh-funcs.el,
6099 mh-seq.el, mh-utils.el
6101 * mh-e.el (mh-next-button, mh-folder-mode-map): New interactive
6102 function to advance point to next MIME button. It is bound to TAB.
6104 * mh-utils.el (mh-letter-next-button, mh-show-mode-map): New
6105 interactive function mh-letter-next-button has been added to
6106 advance point to the next MIME button. It is bound to TAB.
6108 * mh-mime.el (comments): Added some comments.
6110 2002-05-24 Satyaki Das <satyaki@theforce.stanford.edu>
6112 * mh-mime.el (compilation): Replace (eval-when-compile ...) by
6113 (eval-when (compile) ...) to remove a bug when mh-e is loaded
6114 without compilation.
6116 2002-05-23 Satyaki Das <satyaki@theforce.stanford.edu>
6118 * mh-comp.el (compilation): Some code was rearranged to avoid
6121 * mh-e.el (compilation): Code rearrangement and extra autoloads to
6122 remove compiler warnings
6123 (mh-quit): Add call to mh-destroy-postponed-handles to remove
6124 handles that are associated with external viewers. Also fixed a
6125 bug that I accidentally introduced by adding an extra line when
6126 cut and pasting my changes.
6128 * mh-func.el (compilation): Code rearrangement to remove compiler
6131 * mh-mime.el (compilation): Code rearrangement to remove compiler
6133 (mh-defun-compat): New macro to define to useful functions that
6134 aren't present present in old Gnus.
6135 (mh-destroy-postponed-handles): New function to cleanup handles
6136 that are associated with external viewers.
6137 (mh-handle-set-external-undisplayer): New function to replace
6138 mm-handle-set-external-undisplayer. It associates handles for
6139 external viewers with the folder buffer. These are released when
6140 the user quits the folder.
6141 (mh-mime-display, mh-press-button, mh-push-button): Hook in
6142 mh-handle-set-external-undisplayer.
6143 (mh-maybe-insert-newline): New function to avoid inserting too
6144 many newlines between mime parts.
6145 (mh-mm-display-part): Workaround for Gnus bug which causes new
6146 lines to be inserted when images are shown inline.
6147 (mh-mime-display-security): Cut down on newlines inserted.
6149 * mh-pick.el (compilation): Code rearrangement to remove compiler
6152 * mh-seq.el (compilation): Code rearrangement to remove compiler
6154 (comments): Remove @SD from comments.
6156 * mh-utils.el (compilation): Slight code rearrangement.
6157 (mh-defun-show-buffer): Fix documentation so that the first line
6158 is not too long as was the case earlier. Use
6159 mh-previous-window-config to remember where the cursor should
6160 return functions like mh-reply.
6161 (mh-display-msg): Initialize handles data-structure for the folder
6162 buffer so that postponed handles can be added to it.
6163 (mh-add-msgs-to-seq): Always keep messages in the sequences
6164 sorted. This removes some unexpected behavior when working with
6165 sequences that go out of sync with the corresponding MH sequences.
6166 (mh-canonicalize-sequence): New function to sort and remove
6167 duplicates from mh-e sequence.
6169 2002-05-21 Satyaki Das <satyaki@theforce.stanford.edu>
6171 * mh-utils.el (require): Load mm-decode.el here so that
6172 mm-inline-media-tests is properly initialized.
6174 * mh-comp.el (mh-yank-cur-msg): Don't try to remove the displayed
6175 mime parts when yanking the message. This also fixes the problem
6176 of regions not being respected during the yank.
6178 2002-05-20 Satyaki Das <satyaki@theforce.stanford.edu>
6180 * mh-utils.el (compiler-warnings): Some code was rearranged to
6181 remove all compiler warnings.
6182 (mh-decode-mime): New defcustom to control whether
6183 mime attachments are shown using Gnus.
6184 (mh-globals-hash): New global variable which maps a given buffer
6185 to the corresponding mime data structures.
6186 (mh-recent-gnus-p): New global variable which checks if Gnus is
6187 recent enough so that PGP/GPG encrypted messages can be handled.
6188 (mh-mm-inline-media-tests): Tests to determine whether a mime part
6189 can be shown inline.
6190 (mh-gnus-article-highlight-citation): Shadow the Gnus function,
6191 gnus-article-add-button before gnus-article-highlight-citation is
6192 called. This prevents the insertion of useless buttons in the
6194 (mh-show-mode): Don't set font-lock-support-mode to nil. Modify
6195 kill-buffer-hook to call mh-mime-cleanup.
6196 (mh-modify): Only the edit buffer is shown.
6197 (mh-display-msg): Add call to mh-mime-display, mh-display-smileys,
6198 mh-display-emphasis when mh-decode-mime is non-nil.
6200 * mh-mime.el (mh-buffer-data): New structure to keep track of
6201 per-buffer mime information.
6202 (compiler-warnings): Some code was rearranged to get rid of all
6204 (mh-graphical-smileys-p): New defcustom which controls whether
6205 graphical smileys are shown.
6206 (mh-graphical-emphasis-p): New defcustom for graphical emphasis.
6207 (mh-max-inline-image-width, mh-max-inline-image-height): New
6208 defcustoms for inlining image.
6209 (gnus-local-map-property, mm-merge-handles): Copy utility
6210 functions for use with version of Gnus that ships with Emacs21.1.
6211 (mh-mime-cleanup): New function to free mime data-structures.
6212 (mh-add-missing-mime-version-header): New function to add missing
6213 Mime-Version header if a Content-Type header exists.
6214 (mh-display-smileys): New function to show graphical smileys.
6215 (mh-display-emphasis): New function to show graphical emphasis.
6216 (new-globals): New variables mh-mime-button-* and
6217 mh-mime-security-* were added to control mime buttons.
6218 (mh-mime-display): New function to display mime messages. The
6219 functions mh-mime-display-part, mh-mime-display-alternative,
6220 mh-mime-display-mixed, mh-mime-part-index, mh-small-image-p,
6221 mh-mime-display-single, mh-insert-mime-button, mh-mm-display-part,
6222 mh-press-button, mh-push-button, mh-mime-save-part,
6223 mh-mime-inline-part, mh-widget-press-button, mh-mm-inline-message,
6224 mh-mime-display-security, mh-mime-security-show-details,
6225 mh-mime-security-press-button and mh-insert-mime-security-button
6226 were added to support mh-mime-display.
6228 * mh-e.el (mh-header-display): Bind mh-decode-mime to nil when
6229 mh-show-msg is called, so that mime isn't decoded when headers are
6231 (mh-quit): The show buffer is killed instead of invalidating and
6234 * mh-comp.el (mh-yank-cur-msg): Filter out the mime buttons from
6236 (mh-filter-out-non-text): New function to filter out attachments
6237 from message being yanked.
6239 2002-05-20 Bill Wohler <Bill.Wohler@openwave.com>
6241 * mh-utils.el (mh-invisible-headers-show-xface): First sentence of
6242 docstring was not entirely on first line so was truncated in
6243 customize and help buffers. Reworded so first sentence could fit
6244 within 80 columns per checkdoc recommendation.
6245 (mh-defun-show-buffer): Reworded per checkdoc recommendations.
6246 Removed @SD while I was in there.
6248 2002-05-18 Satyaki Das <satyaki@theforce.stanford.edu>
6250 * mh-seq.el (mh-narrow-to-seq): This function now removes the
6251 current message notation in the folder. Otherwise, two current
6252 message notations may be present after mh-widen is called. Also
6253 mh-copy-seq-to-eob is called instead of mh-copy-seq-to-point since
6254 the latter has a bug.
6255 (mh-copy-seq-to-point): This function has a tricky problem. It
6256 calls mh-map-to-seq-msgs which uses mh-goto-msg. mh-goto-msg
6257 assumes that the folder is sorted (since it uses binary
6258 search). The assumption isn't true, so it may not copy all the
6259 messages. Since this function is not used any more it has been
6261 (mh-copy-seq-to-eob): This function is a specialized (and
6262 hopefully correct) replacement for mh-copy-seq-to-point.
6264 2002-05-17 Satyaki Das <satyaki@theforce.stanford.edu>
6266 * mh-utils.el (mh-gnus-article-highlight-citation): Workaround for
6267 problem caused by low value of recursive-load-depth-limit in
6268 Emacs21.1 and CVS version of Gnus.
6269 (mh-show-mode-map): New keymap variable to facilitate use of
6270 summary commands from the show buffer.
6271 (mh-show-folder-buffer): New local variable which keeps track of
6272 the folder-buffer corresponding to the message being shown.
6273 (mh-defun-show-buffer): New macro to convert interactive functions
6274 callable in the summary buffer to interactive functions callable
6276 (mh-show-mode): Make buffer read-only and use mh-show-mode-map as
6277 keymap (closes SF #527946).
6278 (mh-modify): New interactive function to edit a message in-place.
6280 * mh-e.el (mh-goto-cur-msg): Add an optional argument,
6281 minimal-changes-p. If non-nil, the function will just change
6282 the point to current message and do not change folder display.
6283 (mh-folder-mode-map): Make "M" call mh-modify.
6285 2002-05-07 Peter S Galbraith <psg@debian.org>
6287 * mh-utils.el (mh-invisible-headers-show-xface): New defcustom
6288 variable. If non-nil, the X-Face header line will be excluded from
6289 the variable `mh-invisible-headers'. Set this when using a
6290 package such as x-face-el to display X-Face icons in mh-show-mode.
6291 This variable's setting will eventually be set automatically when
6292 mh-e does its own X-Face decoding (or this variable will be replaced
6293 by one telling mh-e to decode the X-Face). We may not ship the
6294 next release with this variable.
6296 2002-05-07 Peter S Galbraith <psg@debian.org>
6298 * mh-comp.el (mh-x-face-file): New defcustom variable. File name
6299 containing the encoded X-Face string to insert in outgoing mail.
6300 (mh-insert-x-face): New function. Appends an X-Face field to the
6301 header, but only if it doesn't already exist and if 'mh-x-face-file'
6302 is non-nil and points to an existing file.
6303 (mh-send-letter): Invoke mh-insert-x-face.
6305 2002-04-29 Mike Kupfer <m.kupfer@acm.org>
6307 * mh-e.el (mh-delete-msg, mh-refile-msg, mh-undo): Check
6308 whether XEmacs region is actually active (needed at least for 21.1).
6309 [Patch committed by psg]
6311 2002-04-29 Mike Kupfer <m.kupfer@acm.org>
6313 * mh-utils.el (mh-prompt-for-folder): Remove "default" argument
6314 from completing-read as XEmacs-21.1 doesn't have it (21.4 does
6315 however) and using the argument adds no functionality.
6316 [Patch committed by psg]
6318 2002-04-11 Peter S Galbraith <psg@debian.org>
6320 * mh-e.el (mh-delete-msg, mh-refile-msg, mh-undo): Add support for
6321 XEmacs to act on selected region when active.
6323 2002-04-10 Peter S Galbraith <psg@debian.org>
6325 * mh-e.el (mh-delete-msg, mh-refile-msg, mh-undo): XEmacs fix; Add
6326 check to see if mark-active is bound, because Mandrake Linux include
6327 XEmacs initialization code that binds transient-mark-mode. This
6328 fix gets around a problem in Mandrake only. It wasn't a problem
6329 on XEmacs generally. Fixes SF #541915.
6331 2002-04-08 Bill Wohler <wohler@newt.com>
6333 * Released mh-e version 6.1.
6335 * mh-e.el (mh-folder-unseen-seq-name): Use "mhparam -component
6336 Unseen-Sequence" command and "Unseen-Sequence: \\(.*\\)$" regexp
6337 to increase robustness.
6338 (mh-folder-unseen-seq-list): Use `expand-file-name' as
6339 `mh-expand-file-name' isn't needed and the former saves function
6341 (Version, mh-version): Updated for release 6.1.
6343 2002-04-08 Peter S Galbraith <psg@debian.org>
6345 * mh-e.el (mh-folder-unseen-seq-list): Specify mh-progs path in
6346 call to mark command. Fixes a bug in which unseen messages
6347 weren't highlighted if "mark" wasn't in the path.
6349 2002-04-07 Bill Wohler <wohler@newt.com>
6351 * MH-E-NEWS: Updated for release 6.1.
6353 * README: Updated for release 6.1. Updated verbiage about reading
6356 * mh-comp.el, mh-e.el, mh-funcs.el, mh-mime.el, mh-seq.el,
6357 mh-utils.el, mh-xemacs-compat.el: Updated copyright in files
6360 * mh-xemacs-compat.el: Put Author field back in, but set to FSF.
6362 * mh-comp.el, mh-funcs.el, mh-mime.el, mh-seq.el,
6363 mh-utils.el: Fixed all checkdoc errors, except for no
6364 documentation, and documentation in comments. Also removed the-
6365 prefix from certain local variables.
6367 * mh-e.el: Fixed all checkdoc errors, except for no documentation,
6368 and documentation in comments. Also removed the- prefix from
6369 certain local variables.
6370 (mh-folder-unseen-seq-name): Refactored to make default sequence
6371 name more explicit and to handle undefined Unseen-Sequence MH
6372 profile entry better.
6374 2002-04-02 Peter S Galbraith <psg@debian.org>
6376 * mh-e.el: 'defvar mh-folder-unseen-seq-name' called a function to
6377 set it's value, and this happens also on byte-compilation (where
6378 it can fail if the user's MH environment is not setup correctly).
6379 I now set the value of mh-folder-unseen-seq-name at runtime when I
6380 first need it. This should fix Debian bugs
6381 http://bugs.debian.org/140232 and http://bugs.debian.org/140817
6383 2002-03-25 Peter S Galbraith <psg@debian.org>
6385 * mh-utils.el: remove "(require 'mh-e)" since mh-utils.el should
6386 be at the bottom of the dependency tree.
6387 * mh-e.el (mh-folder-unseen-seq-name): Make sure mh-progs is set
6388 and use it as path to mhparam command in call-process.
6390 2002-01-23 Peter S Galbraith <psg@debian.org>
6392 * mh-e.el (mh-folder-font-lock-keywords): Add call to
6393 mh-folder-font-lock-unseen to fontify unseen messages in bold.
6394 (mh-folder-unseen-seq-name): Provide name of unseen sequence from
6395 mhparam. Used as default for variable of same name.
6396 (mh-folder-unseen-seq-list): Returns a list of unseen messages
6397 numbers for current folder.
6398 (mh-folder-unseen-seq-cache): Cache variable to hold list of
6399 unseen message numbers while font-lock iterates. This variable is
6401 (mh-folder-font-lock-unseen): Returns unseen message lines to
6402 font-lock one by one.
6404 2002-01-15 Peter S Galbraith <psg@debian.org>
6406 * mh-comp.el (mh-insert-prefix-string): Wrap a
6407 "(let ((zmacs-regions nil))" around (mark) so it works in XEmacs.
6408 Bug reported and fix suggested by Will Partain <partain@dcs.gla.ac.uk>
6409 Indeed, this is how it appears in XEmacs-21's mh-comp.el.
6411 2001-12-16 Jeffrey C Honig <jch@honig.net>
6413 * mh-comp.el (mh-forward): Move the assignment to `fwd-msg-file'
6414 to before the assignment to `draft' as the later changes buffers
6415 and invalidates `mh-seq-list' (which is used in a function called
6416 by (mh-seq-to-msgs)). Resolves SF #489448.
6418 * mh-utils.el: Add defcustoms for `mh-temp-folders-buffer' and
6419 `mh-temp-sequences-buffer'.
6421 * mh-e.el (mh-quit): If they exist, kill 'mh-temp-buffer,
6422 'mh-temp-folders-buffer and 'mh-temp-sequences-buffer when
6425 * mh-funcs.el (mh-list-folders): Use `mh-temp-folders-buffer'
6426 (a defcustom initialized to "*Folders*") for folder listing. Put
6427 into view mode and set it up to kill the buffer when exiting view
6430 * mh-seq.el (mh-list-sequences): Use `mh-temp-sequences-buffer'
6431 (a defcustom initialized to "*Sequences") for sequences listing.
6432 Put into view mode and set it up to kill the buffer when exiting
6435 2001-12-16 Bill Wohler <wohler@newt.com>
6437 * Released mh-e version 6.0.
6439 * MH-E-NEWS: Be a little more specific about incompatible changes.
6440 Added info about outdated manual.
6441 Removed variables in mh-scan regexp table that did not exist in
6443 Added helpful documentation about finding relevant variables
6444 containing regexps to mh-scan-format-file's description.
6446 * mh-e.el (mh-scan-format-file): Added information about getting a
6447 list of regexp variables that you'll need to change if you
6448 customize your scan's output.
6449 (mh-folder-mode): Added documentation about `mh-scan-format-file'
6450 for those users who modify their scan formats.
6452 * README: New file. Describes packages and provides simple
6453 installation instructions.
6455 * Makefile (clean, dist, install-emacs): Replaced $(RM) with rm
6456 -rf (closes SF #488661).
6458 2001-12-14 Bill Wohler <wohler@newt.com>
6460 * Released mh-e version 5.0.93.
6462 * Makefile (MH-E-SRC): Added mh-xemacs-compat.el.
6463 (MH-E-IMG): Added .pbm images for all. Removed mail_ prefix from
6465 (MH-E-IMG2): New variable to hold images in mail sub-directory.
6466 (dist): Updated target to make mail sub-directory and copy
6467 MH-E-IMG2 images there.
6469 * mh-xemacs-compat.el: Modified docs per GNU coding conventions.
6471 * mh-e.el: Reorganized variables having to do with the scan line.
6472 Moved some random variables that were interspersed out of the
6473 middle. Moved `mh-scan-format-file' first and let the variables
6476 As the number of variables increases, it is becoming important to
6477 organize the mh-e namespace. Several variables having to do with
6478 the format of scan lines were renamed, as follows:
6479 (mh-good-msg-regexp): Renamed to mh-scan-good-msg-regexp.
6480 (mh-deleted-msg-regexp): Renamed to mh-scan-deleted-msg-regexp.
6481 (mh-refiled-msg-regexp): Renamed to mh-scan-refiled-msg-regexp.
6482 (mh-valid-scan-line): Renamed to mh-scan-valid-regexp.
6483 (mh-cur-msg-number-regexp): Renamed to mh-scan-cur-msg-number-regexp.
6484 (mh-cur-msg-line-regexp): Renamed to mh-scan-cur-msg-regexp.
6485 (mh-scan-rcpt-addr-regexp): Renamed to mh-scan-rcpt-regexp.
6486 (mh-scan.font-lock-regexp): Renamed to mh-scan-format-regexp.
6487 (mh-folder-scan-font-lock-face): Renamed to
6488 mh-folder-scan-format-face.
6489 (mh-folder-cur-msg-line-face): Renamed to mh-folder-cur-msg-face).
6491 2001-12-13 Bill Wohler <wohler@newt.com>
6493 * mh-utils.el (mh-msg-number-regexp): Renamed to
6494 mh-scan-msg-number-regexp.
6495 (mh-msg-search-regexp): Renamed to mh-scan-msg-search-regexp.
6497 * Corrected typos, quoted variables in doc strings, and made minor
6498 wording changes in docs.
6500 2001-12-13 Peter S Galbraith <psg@debian.org>
6502 * mh-xemacs-compat.el: defalias 'match-string-no-properties to
6503 'match-string for XEmacs. I've seen a better function for this
6504 that actually removes text properties, but this will do for now.
6506 * mh-utils.el (mh-decode-quoted-printable): deactivate-mark not
6509 * mh-xemacs-compat.el: GNU Emacs Functions needed by XEmacs.
6511 * mh-e.el: (require 'mh-xemacs-compat) when running XEmacs.
6513 2001-12-12 Peter S Galbraith <psg@debian.org>
6515 * mh-comp.el (mh-send-letter): function local-variable-p needs two
6516 arguments in XEmacs.
6517 (mh-send-letter): sendmail-coding-system not bound in XEmacs.
6518 (mh-send-letter): default-buffer-file-coding-system not bound in
6521 * mh-e.el (mh-delete-msg, mh-refile-msg, mh-undo):
6522 transient-mark-mode not bound in XEmacs. The feature of
6523 operations made on all messages in the selected range when
6524 transient-mark-mode is on doesn't work in XEmacs.
6526 * mh-e.el, mh-utils: Conditionalize calls to
6527 'add-to-list 'facemenu-unlisted-faces for XEmacs.
6529 2001-12-11 Jeffrey C Honig <jch@honig.net>
6531 * mh-e.el (mh-scan-format): Add `mh-scan-format-file' variable to
6532 specify the scan format string or file to use. Define formats for
6533 MH and nmh that are compatible with the standard format, but
6534 provide hints for font-lock. Define (mh-scan-format) for use by
6535 (mh-regenerate-headers) and (mh-get-new-mail) to specify the args
6536 necessary to inform the scan program which scan format string or
6539 2001-12-07 Peter S Galbraith <psg@debian.org>
6541 * mh-e.el (scan.font-lock): New format file documented in comments.
6542 (mh-scan.font-lock-regexp): Adapted to new format.
6543 (mh-folder-font-lock-keywords): Use new format.
6545 * mh-e.el (page-down.xpm): Icon renamed from nextpage.
6547 * mh-utils.el (mh-decode-quoted-printable): Bug fix. Better check
6548 on what actually is a quoted-printable attachment.
6550 2001-12-06 Eric Ding <ericding@alum.mit.edu>
6552 * mh-mime.el (mh-mhn-compose-insertion, mh-mhn-compose-anon-ftp):
6553 require mailcap.el here rather than using autoload at top of
6555 (mh-file-mime-type): get rid of unused variables (why were they
6556 there to begin with?)
6558 2001-12-06 Peter S Galbraith <psg@debian.org>
6560 * mh-e.el (mh-cur-msg-number-regexp, mh-cur-msg-line-regexp):
6561 mh-cur-scan-msg-regexp splits into these two variables.
6562 The whole-line fontification is disabled, but easily restored by a
6563 user (although it could be a defcustom with choices DISABLED or
6564 the correct regexp?)
6565 (mh-folder-cur-msg-line-face): mh-folder-current-msg-face renamed
6567 (mh-folder-cur-msg-number-face): mh-folder-current-face renamed to
6570 * cabinet.xpm: Revert to rescan icon name.
6571 * mh-e.el (mh-folder-tool-bar-map): s/cabinet/rescan/
6573 * mh-e.el (mh-folder-font-lock-keywords): Reorder and tweak such
6574 that current message line highlight doesn't mess up other highlights.
6576 2001-12-05 Eric Ding <ericding@alum.mit.edu>
6578 * mh-utils.el (mh-show-from-face): Change mh-show-from-face to
6579 cyan on dark backgrounds; through a series of changes, it had
6580 become the same color as mh-show-subject-face!
6582 2001-12-05 Bill Wohler <Bill.Wohler@openwave.com>
6584 * mh-e.el, mh-utils.el: Fixed typos in face definitions, and made
6585 a couple of small doc string tweaks while I was in there. Peter,
6586 if you don't agree, let me know and I'll back them out. I thought
6587 the "mh-e" in the text was redundant since the variables start
6588 with "mh"; I was also thinking ahead to how the documentation may
6591 2001-12-05 Peter S Galbraith <psg@debian.org>
6593 * mh-e.el (mh-cur-scan-msg-regexp): Match 0 is the whole line.
6594 (mh-folder-current-msg-face): New face with only a background
6595 settings, used in font-lock for the current message.
6596 (mh-folder-font-lock-keywords): Use mh-folder-current-msg-face for
6597 mh-cur-scan-msg-regexp.
6599 * mh-utils.el (mh-show-from-face): Use red3 instead of red for
6600 light backgrounds. It's not as bright on the eyes.
6601 (mh-show-subject-face): copy from mh-folder-subject-face instead.
6602 Makes the look consistent with folder-mode.
6604 * mh-e.el (mh-folder-subject-face): Moved to mh-utils since we
6605 need it to copy to mh-show-subject-face.
6607 2001-12-05 Bill Wohler <wohler@newt.com>
6609 * mh-e.el (mh-folder-mode-map): Moved `mh-extract-rejected-mail'
6610 from "a" to "E". Better mnemonic, nicer to folks used to using a
6613 2001-12-04 Bill Wohler <wohler@newt.com>
6615 * mh-e.el (mh-folder-map): Added "S" for `mh-sort-folder'.
6617 2001-12-04 Peter S Galbraith <psg@debian.org>
6619 * mh-e.el (mh-folder-subject-face et al.): Yet another attempt at
6620 colours for folder-mode. Still themed, but fewer and darker
6621 colours (Blame Eric this time!). I'll get to underlining tomorrow
6624 * mh-e.el (mh-folder-tool-bar-map): Renamed all icons so they
6625 don't have the word mail in them. Also generated a pbm format of
6626 each icon for users without XPM support conpiled into Emacs.
6628 2001-12-04 Eric Ding <ericding@alum.mit.edu>
6630 * mh-utils.el (mh-show-font-lock-keywords): Use
6631 mh-header-subject-font-lock instead of regexp for subject headers,
6632 which may go multiple lines.
6633 (mh-header-subject-font-lock): New function.
6634 Fix typos (hightlight -> highlight).
6636 2001-12-04 Eric Ding <ericding@alum.mit.edu>
6638 * mh-e.el: changes to face colors on dark backgrounds.
6639 (mh-folder-followup-face): change to LightGoldenRod.
6640 (mh-folder-date-face): change to snow3.
6641 (mh-folder-msg-number-face): change to snow4.
6643 2001-12-04 Bill Wohler <wohler@newt.com>
6645 * Released mh-e version 5.0.92.
6647 * mh-utils.el (gnus-cite-face-list)
6648 (mh-gnus-article-highlight-citation): Don't autoload. Revert to
6649 requiring in `mh-gnus-article-highlight-citation' as before. With
6650 the autoloads, if you ran mh-e before gnus, you'd get an undefined
6651 gnus variable when viewing an article in gnus. Go figure.
6653 2001-12-03 Bill Wohler <wohler@newt.com>
6655 * Released mh-e version 5.0.91.
6657 * MH-E-NEWS: Removed info about bumping up `max-specpdl-size' now
6658 that workaround has been implemented.
6660 * Makefile (MH-E-OBJ): New variable to hold .elc files.
6661 (all): Just compile.
6662 (clean): New target that blows away MH-E-OBJ.
6663 (dist): Added $(MH-E-OBJ) to tarball.
6666 Attempt to quiet compilation errors to a dull roar.
6668 * mh-e.el: Require easymenu, added autoload of info.
6669 (mh-smail, mh-smail-other-window): Comment says these were needed
6672 * mh-utils.el: Don't require sendmail, but require mh-e.
6673 Moved autoloads to top of file, and autoload gnus-cite and
6676 * mh-pick.el: Require easymenu. Remove cond on
6677 `easy-menu-define'--it exists.
6679 * mh-mime.el: Autoload mailcap.
6681 * mh-comp.el: Require mh-e and easymenu, moved autoloads to top of
6685 * Makefile: (EMACS): New constant to hold emacs calling sequence.
6686 (install): Renamed to install-emacs.
6687 (compile): New target to compile all files.
6688 (dist): Make dependent on compile.
6689 (import): Renamed to import-emacs.
6690 (%.elc): New implicit rule to compile elisp files.
6692 * mh-e.el (mh-thread-map): Added "Td" for
6693 mh-delete-subject-thread.
6695 2001-12-03 Peter S Galbraith <psg@debian.org>
6697 * mh-e.el (mh-folder-tool-bar-map): Change tooltip for exec icon.
6699 * mh-e.el (mh-folder-subject-face): Change to IndianRed1.
6700 (mh-folder-followup-face): Change to IndianRed.
6701 (mh-folder-deleted-face): Use sedate face instead of bright one.
6703 2001-12-03 Bill Wohler <wohler@newt.com>
6705 * mh-utils.el (mh-invisible-headers): Increase size of
6706 `max-specpdl-size' locally to work around insufficient default.
6707 (mh-invisible-headers): Added X-Info and X-VSMLoop (NTMail).
6709 2001-12-03 Jeffrey C Honig <jch@honig.net>
6711 * mh-utils.el (mh-find-progs): Searches should not stop if the
6712 strings are not found, there is error detection at the end of the
6713 routine (closes SF #488231).
6715 2001-12-02 Bill Wohler <wohler@newt.com>
6717 * MH-E-NEWS: Added info about bumping up `max-specpdl-size'.
6719 * Makefile (MH-E-IMG): New variable that contains images used by
6720 mh-e. Add these files to release.
6722 * MH-E-NEWS: Second draft of mh-e 6.0 (was 5.1) release notes.
6724 * mh-e.el (mh-folder-updated-hook): Reworded to avoid ambiguity.
6725 Is the hook called when you type `d' or when you type `x'?
6726 (mh-unseen-updated-hook): Reworded to be consistent with
6727 `mh-folder-updated-hook.'
6729 * mh-utils.el (mh-recenter): Accepted Gerd's change which is
6730 evaluated at compile time.
6732 2001-12-02 Bill Wohler <wohler@newt.com>
6734 * mh-e.el Major, major keymap changes. The specific changes are
6735 listed below, but view the sources, or use "C-h m" in MH Folder
6736 mode for the complete list.
6738 Use of sub-keymaps inspired by gnus. The changes tripped me up at
6739 first too, but after about 5 minutes of shock (which is to be
6740 expected, I've been using the old keybindings for 16 years), I
6741 honestly found the new bindings to be nice indeed. It will also
6742 provide flexibility to allow for future functionality. I hate to
6743 do this on the eve of the beta release, but you asked for it! It's
6744 likely I'll have to pull an Eric and back this change out, but if
6745 we can live with pink subjects, this can't be so bad ;-).
6746 Question: will the users revolt? If they do, I suppose we can
6747 release 6.0.1 the next day ;-).
6748 (mh-folder-map, mh-sequence-map, mh-extract-map, mh-digest-map):
6749 New keymaps which start with F, S, X, and D, respectively. The
6750 mhstore commands can go in the mh-extract-map eventually.
6751 (mh-thread-map): Renamed from mh-folder-thread-map.
6753 Keymap changes and rationale. The sub-keymaps allowed some
6754 consistency (e.g., esp. with l(ist) and k(ill).
6756 e Deleted. Already have x. Now used by mh-edit-again.
6757 a Deleted. Already have r. Now used by mh-extract-rej..
6758 j Deleted. Already have g.
6760 M-a -> e Better mnemonic. Matches rmail. Frees movement cmd.
6761 M-e -> a Try `a'gain!
6763 M-f -> Fv Frees movement command
6764 M-f -> Ff Alias (keep?)
6765 M-f -> Fo Alias (keep?)
6766 M-k -> Fk No reason but to keep with folder commands
6767 M-l -> Fl No reason but to keep with folder commands
6768 M-p -> Fp No reason but to keep with folder commands
6769 M-r -> Fr Frees movement command
6770 M-s -> Fs No reason but to keep with folder commands
6771 M-u -> Fu No reason but to keep with folder commands
6773 M-% -> Sd Better mnemonic
6774 M-# -> Sk Better mnemonic
6775 M-q -> Sl Better mnemonic
6776 C-xn -> Sn Frees up standard key binding
6777 % -> Sp Better mnemonic for putting a message in a sequence
6778 ? -> Ss Shows sequences that message is in
6779 C-xw -> Sw Frees up standard key binding
6781 M-n -> Xs Better mnemonic (shar)
6782 M-n -> Xu Better mnemonic (uuencode)
6784 M-SPC -> DSPC Frees mark command
6785 M-\177 -> D\177 No reason but to keep with digest commands
6786 M-b -> Db Frees movement command
6788 2001-12-01 Bill Wohler <wohler@newt.com>
6790 * mh-e.el: Use gnus style of keymaps. Now requires gnus-util.
6791 (mh-folder-thread-map): New map, created by gnus-define-keys.
6792 Reached when typing T in mh-folder-mode-map. Moved threading
6793 functions to this new keymap so we can use dired again.
6794 (mh-folder-mode-map): Defined by gnus-define-keys. Otherwise than
6795 the new threading functions, no changes to the UI were made at
6796 this point--saving that for the next check-in.
6798 * mh-pick.el (mh-pick-mode-map): Use gnus-define-keys. Now
6801 * mh-comp.el (mh-letter-mode-map): Use gnus-define-keys. Now
6804 2001-12-01 Jeffrey C Honig <jch@honig.net>
6806 * mh-e.el: Update the documentation for the regexps used by
6807 `mh-folder-font-lock-keywords' to specify how many parethesized
6808 expressions they are expected to have and what those expressions
6809 are expected to match.
6811 2001-12-01 Bill Wohler <wohler@newt.com>
6813 * mh-e.el (mh-folder-mode): Removed iteration of key bindings,
6814 \\{mh-folder-mode-map} suffices. Removed variable documentation
6815 also as this is already out of date and a maintenance hassle.
6816 Reference new mh customization group instead.
6818 * mh-comp.el (mh-letter-mode): Ditto. Also added new information
6819 about MIME directives getting processed automatically if inserted
6822 * mh-pick.el (mh-pick-mode): Edited documentation so it reads like
6825 * mh-e.el (mh-compat-quit): Deleted obsolete and unused function.
6826 Comment in this function said that `b' shouldn't be used for
6827 burst-digest, as it is used for `back' in info, less, and rn. But
6828 what does `back' mean in MH Folder? I suppose if you visit a
6829 folder, you would go `back' to the original folder. Hmmm, I guess
6830 we'll leave the `b' binding alone for now.
6832 * mh-utils.el: Moved some of the variable comments to the first
6833 column so they wouldn't wrap in such an ugly fashion.
6834 (mh-showing-mode): Renamed variable and function from mh-showing
6835 to conform with minor mode conventions. Added optional arg to
6836 function so it would behave like a normal minor mode: no or nil
6837 arg toggles mode, 0 arg turns off, non-nil turns on. It also turns
6838 out that desktop-create-buffer would barf when recreating mh-e
6839 buffers because it was calling mh-show with an arg.
6840 (mh-show-mode): Use define-derived-mode to simplify definition a
6842 (mh-set-mode-name): Deprecated by use of define-derived-mode.
6845 * mh-pick.el (mh-pick-mode): Use define-derived-mode to simplify
6848 * mh-e.el (mh-scan-prog): Removed message about "Buffer local" as
6849 this message will appear in a future version of Emacs.
6850 (mh-inc-folder): mh-showing renamed to mh-show-mode and made a
6852 (mh-folder-mode): Use define-derived-mode to simplify definition a
6855 * import-emacs (release): Change `(none)' to `mainline' so import
6856 doesn't choke after running `cvs up -A' on Emacs.
6857 (COPYING): Moved from $EMACS_HOME/etc to $EMACS_HOME.
6858 (cvs update): Whoops! Forgot the second join (-jemacs).
6859 make import works fine again.
6861 2001-11-30 Peter S Galbraith <psg@debian.org>
6863 * mh-e.el (mh-folder-font-lock-keywords): Change order of
6864 font-lock patterns such that subject body text doesn't get date
6867 * mh-e.el (mh-scan-subject-regexp): Bug fix. Remove a dot.
6868 scan.font-lock users have to setq it separately.
6870 2001-11-30 Eric Ding <ericding@alum.mit.edu>
6872 * mh-utils.el (mh-clean-msg-header): Go back to using
6873 mh-delete-line. Using invisible text property is nicer in some
6874 ways, but winds up with somewhat mysterious behavior should user
6875 kill/yank stuff from the header (i.e., text gets yanked invisibly
6876 and won't be seen by user until file is reloaded).
6878 2001-11-29 Bill Wohler <wohler@newt.com>
6880 * mh-e.el (mh-page-msg): Use mh-next-direction to page in the
6883 2001-11-29 Jeffrey C Honig <jch@honig.net>
6885 * mh-e.el (mh-scan-folder): Fix logic to not attempt to go to
6886 the current message if there are no messages in the folder.
6888 2001-11-29 Peter S Galbraith <psg@debian.org>
6890 * mh-e.el (mh-folder-font-lock-subject): New fontifier function
6891 for subject lines in folder-mode
6892 (mh-scan-followup-regexp): Deleted obsolete regexp. Use
6893 mh-scan-subject-regexp instead.
6894 (mh-folder-font-lock-keywords): Use mh-folder-font-lock-subject
6895 instead of obsolete mh-scan-followup-regexp variable.
6896 (mh-folder-date-face, mh-folder-msg-number-face):
6897 (mh-folder-subject-face, mh-folder-followup-face):
6898 Now defined as proper faces instead of copied from font-lock
6901 * mh-mime.el (mh-media-type-regexp): New variable. Regexp matching
6902 valid media types used in MIME attachment compositions.
6903 (mh-file-mime-type): Use mh-media-type-regexp instead of
6904 hard-wiring its value.
6906 * mh-utils.el (mh-show-unquote-From): New function to unquote
6907 "^>From" in mh-show-mode (not saved to disk).
6908 (mh-show-mode): Call mh-show-unquote-From.
6910 2001-11-29 Eric Ding <ericding@alum.mit.edu>
6912 * mh-utils.el (mh-clean-msg-header): Use mh-make-line-invisible
6913 rather than mh-delete-line.
6914 (mh-make-line-invisible): New function to make line(s) invisible
6915 rather than deleting line(s). Optional argument specifies number
6917 (mh-show-msg): screen-height has been deprecated; use no more.
6918 (mh-notate): screen-width has been deprecated; use no more.
6920 2001-11-29 Jeffrey C Honig <jch@honig.net>
6922 * mh-utils.el: (mh-find-progs): Change mh-find-progs to rely on
6923 the existence of mhparam. The location of mhparam is used to find
6924 `mh-progs'. It uses the libdir and etcdir to find the
6925 `mh-lib-progs' and `mh-lib' directories. If etcdir doesn't return
6926 anything we assume `mh-lib-progs' is the same as `mh-lib' and that
6927 we are using MH instead of nmh.
6929 2001-11-29 Peter S Galbraith <psg@debian.org>
6931 * mh-e.el (mh-scan.font-lock-regexp): Change docs to reflect that
6932 second paren expression is the user match.
6933 (mh-folder-font-lock-keywords): Change from 1st to 2nd parenthesized
6934 expression to match user name, after Jeffrey's change to the regexps.
6936 2001-11-29 Bill Wohler <Bill.Wohler@openwave.com>
6938 * mh-utils.el (mh-clean-message-header): Default is now t.
6939 (mh-invisible-headers): Padded out to contain all the headers that
6940 the mh-e developers don't like to see (closes SF #415759).
6942 2001-11-28 Bill Wohler <Bill.Wohler@openwave.com>
6944 * mh-comp.el (mh-rejected-letter-start): Added MIME MDN. While
6945 this allows mh-extract-rejected-mail to strip the start of the
6946 MDN, there is still a closing MIME marker at the end. This should
6947 be cleaned up eventually.
6949 2001-11-28 Peter S Galbraith <psg@debian.org>
6951 * mh-e.el (mh-folder-seq-tool-bar-map): New tool-bar used for
6952 folder-mode when narrowed to sequence.
6953 * mh-seq.el (mh-narrow-to-seq): Set tool-bar to
6954 mh-folder-seq-tool-bar-map.
6955 (mh-widen): Set tool-bar to mh-folder-tool-bar-map.
6956 * widen.xpm: New icon used in mh-folder-seq-tool-bar-map.
6958 * mh-mime.el (mh-file-mime-type): Much better check on validity of
6961 * mh-e.el (mh-scan-subject-regexp): New regexp variable for
6962 subject string in folder mode. Used to extract subject sequence,
6963 and will be used for font-lock soon.
6964 * mh-seq.el (mh-subject-thread-to-sequence): More robust code by
6965 using mh-scan-subject-regexp, allows users with non-standard
6966 scan format to use subject sequences.
6968 * mh-comp.el (mh-letter-fill-column): Fill column to use in
6969 mh-letter-mode. (Yes, I'm doing this in spite of what Bill said;
6970 Someone can always undo it later)
6971 (mh-letter-mode): setq fill-column to mh-letter-fill-column.
6973 2001-11-28 Bill Wohler <wohler@newt.com>
6975 * mh-e.el (mh-page-msg): The first time the end of page is hit,
6976 set mh-page-to-next-msg-p to t. The second time the end of page is
6977 hit, go to the next message.
6979 * mh-utils.el: (mh-show-msg): Initialize mh-page-to-next-msg-p to
6982 2001-11-27 Bill Wohler <wohler@newt.com>
6984 * mh-mime.el (mh-mime-content-types): Updated list of types to
6985 contain types used by mh-e developers, but not including types not
6987 http://www.isi.edu/in-notes/iana/assignments/media-types/media-types.
6989 2001-11-27 Peter S Galbraith <psg@debian.org>
6991 * mh-seq.el (mh-subject-thread-to-sequence) New function placing
6992 all messages with similar subject line into a sequence named
6994 (mh-narrow-to-subject-thread): New command to narrow to all
6995 messages with similar subject line into a sequence named 'subject.
6996 (mh-toggle-subject-thread): New command to toggle between a new
6997 'subject sequence or the wide view of a folder.
6998 (mh-delete-subject-thread): New command to delete all following
6999 messages with similar subject lines (leaving preceeding ones
7001 (mh-next-unseen-subject-thread): New command to create and move to
7002 a new subject thread created from the next unseen message as a
7004 * mh-e.el (mh-folder-message-menu): New menu entries for subject
7006 (mh-folder-mode-map): New keybindings for subject threads.
7007 (mh-lessp): New function to sort messages.
7009 * mh-utils.el (mh-show-font-lock-keywords): and various
7010 faces... scoped within eval-after-load "font-lock" to avoid
7011 requiring font-lock to use its faces.
7012 * mh-e.el (mh-folder-font-lock-keywords): Same.
7014 2001-11-27 Jeffrey C Honig <jch@honig.net>
7016 * mh-mime.el (mh-file-mime-type): Use mh-temp-buffer instead of
7019 * mh-comp.el (mh-insert-x-mailer): Kill mh-temp-buffer after use.
7021 2001-11-26 Eric Ding <ericding@alum.mit.edu>
7023 * mh-utils.el: revert to using external mimedecode to decode
7024 MIME quoted-printable parts
7026 2001-11-26 Jeffrey C Honig <jch@honig.net>
7028 * mh-e.el (mh-process-commands): Added mh-folder-updated-hook.
7029 * mh-e.el (mh-update-unseen): Added mh-unseen-updated-hook.
7031 2001-11-26 Peter S Galbraith <psg@debian.org>
7033 * mh-mime.el (mh-file-mime-type): Make sure output from file
7034 command is known to mailcap file, otherwise prompt the user.
7035 (mh-mime-content-types): Add "image/png" type.
7037 * mh-e.el (mh-folder-font-lock-keywords): Use a bunch of new
7038 mh-folder-*-face faces.
7039 * mh-utils.el (mh-show-font-lock-keywords): Use a bunch of new
7040 mh-show-*-face faces.
7042 * mh-utils.el (mh-letter-header-font-lock): Bug fix. Fix infinite
7043 loop in emacs20 font-locking.
7044 (mh-header-field-font-lock): Preventive fix with similar change.
7046 * mh-comp.el (mh-reply-show-message-p): Typo. diplayed -> displayed.
7049 * mh-e.el (mh-folder-tool-bar-map): Bug fix. I had
7050 mh-repack-folder instead of mh-pack-folder.
7052 2001-11-26 Bill Wohler <wohler@phone.com>
7055 Updated header for consistency and to conform with (elisp)Library
7057 (mh-do-not-confirm): Updated documentation string to reflect
7058 reality (e.g., is no longer used by mh-kill-folder and is used by
7059 more functions than just mh-undo-folder).
7060 (mh-page-msg): Now shows the next undeleted message if looking at the
7061 bottom of the current message.
7062 (mh-process-or-undo-commands): Fixed indentation.
7065 (mh-mhn-compose-insertion, mh-mhn-compose-anon-ftp): If MIME type
7066 cannot be determined with file command, use mailcap-mime-types (if
7067 available) to provide list for completing read.
7069 * MH-E-NEWS: First draft of mh-e 5.1 release notes.
7071 2001-11-26 Eric Ding <ericding@alum.mit.edu>
7073 * mh-utils.el (mh-decode-quoted-printable): Implement
7074 quoted-printable decoding in elisp (starting with code copied
7076 (mh-decode-quoted-printable-region): Move (require 'hexl) outside
7078 (mh-decode-quoted-printable): give user a choice between using
7079 internal code or external program to decode quoted-printable
7080 content. Resurrect code that calls external mimedecode program.
7082 2001-11-25 Peter S Galbraith <psg@debian.org>
7084 * mh-utils.el (mh-highlight-citation-p): New variable to determine
7085 whether to hightlight citations in message body with gnus,
7086 font-lock or not at all.
7087 (mh-show-font-lock-keywords): removed citations from keywords.
7088 (mh-show-font-lock-keywords-with-cite): New variable, equivalent
7089 to prior mh-show-font-lock-keywords.
7090 (mh-gnus-article-highlight-citation): hook into gnus for
7091 multi-level citation highlighting.
7092 (mh-show-mode): Use either mh-show-font-lock-keywords or
7093 mh-show-font-lock-keywords-with-cite, depending on value of
7094 mh-highlight-citation-p, and possibly call
7095 mh-gnus-article-highlight-citation.
7096 * mh-comp.el (mh-letter-mode): Same as for mh-show-mode above.
7098 2001-11-25 Jeffrey C Honig <jch@honig.net>
7100 * mh-comp.el (mh-redistribute): Added mh-redist-background
7101 variable to cause mh-redistribute to run the redist command in the
7102 background. This causes the transaction log to be visible, like
7105 2001-11-25 Peter S Galbraith <psg@debian.org>
7107 * mh-e.el (mh-inc-folder): 'inc' finishes by displaying the first
7108 new message if already showing messages.
7110 2001-11-22 Peter S Galbraith <psg@debian.org>
7112 * mh-utils.el (mh-prompt-for-folder): Exit with error if no folder
7113 specified, otherwise mh-refile-msg may try to create a folder with
7114 empty name, and this creates problems; even mh-undo can't handle
7115 it (Closes SF #476824).
7117 * mh-comp.el (mh-letter-tool-bar-map): Info button needed to
7118 require 'info. Also tweaked help texts.
7119 (mh-letter-menu): Use headline capitalization (Closes SF #483203).
7120 * mh-e.el (mh-folder-tool-bar-map): Same as above.
7121 (mh-folder-folder-menu, mh-folder-message-menu):
7122 (mh-folder-sequence-menu): Same as above.
7123 * mh-pick.el (mh-pick-menu): Same as above.
7125 2001-11-21 Peter S Galbraith <psg@debian.org>
7127 * mh-comp.el (mh-reply-show-message-p): The setting of this
7128 variable determines whether the MH show-buffer is diplayed with
7129 the current message when using mh-reply without a prefix argument.
7130 Set it to nil if you already include the message automatically in
7131 your draft using "repl: -filter repl.filter" in your ~/.mh_profile
7133 (mh-reply): Don't show message in other window if
7134 mh-reply-show-message-p is nil.
7136 * mh-e.el (mh-folder-tool-bar-map): Add mail_exec.xpm icon for
7137 mh-execute-commands.
7139 * mh-utils.el (mh-show-mouse): New function to click on a message
7140 in folder-mode and show that message.
7141 * mh-e.el (mh-folder-mode-map): Bind mh-show-mouse to mouse-2.
7143 * mh-e.el (mh-page-msg): Show buffer first if not displayed,
7144 instead of simply complaining there's no other window.
7146 * mh-e.el (mh-folder-tool-bar-map): New tool-bar for folder mode!
7147 (mh-folder-mode): Setup tool-bar.
7149 * mh-mime.el (mh-have-file-command): try to non-fatally load
7150 executable.el because emacs20 doesn't autoload it.
7151 * mh-utils.el (load "executable" t t): Idem.
7153 * mh-utils.el (mh-clean-msg-header): Bug fix. locally bind
7154 after-change-functions to nil, working around a strange font-lock
7155 bug in emacs20 when (add-hook 'mh-show-mode-hook 'turn-on-font-lock)
7158 * mh-comp.el (require 'sendmail): Moved from mh-comp.el to
7159 mh-utils.el because it is needed in reading mail too.
7160 (mh-header-field-end, mh-in-header-p): Moved to mh-utils.el
7161 because they are needed by mh-show-mode's font-lock code.
7162 Unfortunately, this splits the field related code into two files.
7163 Perhaps it should all go into mh-utils?
7165 2001-11-20 Eric Ding <ericding@alum.mit.edu>
7167 * mh-utils.el (mh-show-from-face): Fix typo in defface
7169 2001-11-20 Bill Wohler <wohler@newt.com>
7171 * mh-utils.el (mh-mail-header-separator): Set to -------- as
7172 defined by MH (components, and replcomps files). This variable
7173 cannot be a regexp since it is used as an argument to insert and
7174 is passed through regexp-quote before being used. The previous
7175 value broke a lot of code, including mailcrypt.
7177 * mh-comp.el (mh-letter-mode, mh-send-letter): Insert X-Mailer
7178 header field from mh-send-letter.
7179 (mh-edit-again, mh-extract-rejected-mail): Call
7180 mh-insert-header-separator to ensure that there is a separator.
7181 Packages such as mailcrypt depend on it.
7182 (mh-insert-header-separator): New function to insert
7183 mh-mail-header-separator if it doesn't exist.
7185 2001-11-20 Peter S Galbraith <psg@debian.org>
7187 * mh-comp.el (mh-letter-mode): Make font-lock-defaults a local variable
7188 * mh-e.el (mh-folder-mode): Same.
7189 * mh-utils.el (mh-show-mode): Same.
7191 * mh-e.el (mh-scan-msg-num-regexp): Delete variable and replace
7192 with mh-good-msg-regexp.
7194 * mh-utils.el (mh-mail-header-separator): Bug fix. Moved from
7195 mh-comp.el to mh-utils.el (which mh-comp.el loads).
7197 * mh-comp.el (mh-in-header-p): Recycle sendmail.el code (as
7199 * mh-utils.el (mh-letter-header-font-lock): Use mh-in-header-p.
7201 * mh-comp.el (mh-letter-tool-bar-map): tool-bar customize button goes
7202 to customizing mh-compose group.
7204 * mh-utils.el (mh-show-mode): font-lock bug fix. Locally set
7205 font-lock-support-mode to nil.
7206 (mh-letter-header-font-lock, mh-header-field-font-lock): font-lock
7207 bug fix. Don't return match beyond font-lock search limit.
7209 * mh-comp.el (mh-letter-mode): Emacs20 bug fix. tool-bar-mode is
7210 not a bound variable.
7212 2001-11-19 Peter S Galbraith <psg@debian.org>
7214 * mh-comp.el (mh-letter-tool-bar-map): tool-bar help button goes
7215 to 'Draft Editing' info node.
7217 * mh-utils.el (mh-show-from-face, mh-show-to-face): New faces used
7219 (mh-header-to-font-lock, mh-header-cc-font-lock)
7220 (mh-header-field-font-lock): New helper function returning whole
7221 header field arguments to font-lock.
7222 (mh-show-font-lock-keywords): Heavily modified using the above.
7224 * mh-e.el (mh-scan-msg-num-regexp): Regexp matching the message
7225 number in scan lines.
7226 (mh-scan-date-regexp): Regexp matching a valid date in scan lines.
7227 (mh-scan-rcpt-addr-regexp): Regexp specifying the recipient in
7228 scan lines for messages we sent.
7229 (mh-scan-followup-regexp): Regexp matching a followup subject
7230 line, starting with Re:
7231 (mh-scan-body-regexp):
7232 Regexp matching the message body beginning displayed in scan lines.
7233 (mh-scan.font-lock-regexp): Regexp matching output of the the
7234 optional scan.font-lock format file.
7235 (mh-folder-font-lock-keywords): New font-lock for folder-mode that
7236 uses the above regexps.
7238 2001-11-19 chad <y@mit.edu>
7240 * mh-comp.el (mh-letter-tool-bar-map): made both references to
7241 mh-letter-tool-bar-map conditional on tool-bar-mode, instead of
7244 2001-11-19 Bill Wohler <wohler@newt.com>
7246 * mh-comp.el (mh-position-on-field): Move to the end of the header
7247 if the field is not present. This function was documented to do
7248 this, but wasn't doing so.
7249 (mh-insert-x-mailer): Simplified by using existing
7250 mh-goto-header-field and mh-insert-fields functions. Now that
7251 mh-insert-fields is used to insert X-Mailer header field, no
7252 longer need to include X-Mailer in mh-x-mailer-string.
7254 2001-11-18 Peter S Galbraith <psg@debian.org>
7256 * mh-comp.el (mh-letter-tool-bar-map): New version of
7257 mh-letter-mode tool-bar. Changed order of buttons; made customize
7258 and info buttons specific to mh-e.
7260 * mh-e.el (mh-folder-font-lock-keywords): New font-lock regexp
7261 uses variables mh-deleted-msg-regexp, mh-refiled-msg-regexp and
7262 mh-cur-scan-msg-regexp, so will better adapt to non-default scan
7263 formats. Also, lines marked for refiling are now fontified.
7265 2001-11-18 Bill Wohler <wohler@newt.com>
7267 * mh-utils.el (mh-show-mode): Added local variable
7268 mail-header-separator which is initialized to
7269 mh-mail-header-separator.
7271 * mh-comp.el (mh-mail-header-separator): Updated to include ^$.
7272 Needed when running mh-edit-again, since by then the separator is
7273 gone. Added documentation saying one should use
7274 mail-header-separator and initialize it from
7275 mh-mail-header-separator.
7276 (mh-forward): Initialize mail-header-separator since
7277 mh-letter-mode hasn't kicked in yet (which does initialize
7278 mail-header-separator).
7279 (mh-letter-mode): Initialize mail-header-separator from
7280 mh-mail-header-separator, not hard-coded string.
7282 * mh-comp.el (mh-insert-x-mailer-p): New variable to control
7283 whether X-Mailer string is inserted. Default: t.
7284 (mh-x-mailer-string): New variable that caches actual X-Mailer
7286 (mh-letter-mode): Call mh-insert-x-mailer if mh-insert-x-mailer-p
7288 (mh-insert-x-mailer): New function that inserts X-Mailer header
7291 2001-11-17 Peter S Galbraith <psg@debian.org>
7293 * mh-utils.el (mh-letter-header-font-lock): New function to return
7294 the entire mail header to font-lock for sedate font-locking.
7295 (mh-show-font-lock-keywords): Modified to fontify whole lines and use
7296 mh-letter-header-font-lock above to fontify whole header.
7298 2001-11-17 Bill Wohler <wohler@newt.com>
7300 * mh-comp.el (mail-header-separator): Added ^ and $ to make more
7302 (mh-forward, mh-letter-mode): Replaced hard-coded string with
7303 mail-header-separator.
7305 2001-11-16 Bill Wohler <wohler@newt.com>
7307 * mh-e.el (mh-e-RCS-id): Renamed to mh-version.
7308 (mh-version): The variable: Set to a number instead of Id since
7309 the Id didn't have the mh-e version number, and both Emacs and
7310 gnus do it this way too.
7311 (mh-version): The function: Fixed for nmh. Now displays mh-e
7312 version correctly. Cleaned up output and display mh-progs, etc.
7313 (Closes SF #405620.)
7315 2001-11-15 Peter S Galbraith <psg@debian.org>
7317 * mh-comp.el (mh-letter-tool-bar-map): New tool-bar support for
7318 mh-letter-mode in emacs21. Uses icons from gnus/message.el.
7319 * mh-comp.el (mh-letter-mode): Add buffer-local binding of
7320 tool-bar-map to mh-letter-tool-bar-map.
7322 2001-11-15 Peter S Galbraith <psg@debian.org>
7324 * mh-mime.el (mh-have-file-command): Add check for existence of
7325 executable-find command, which Jeffrey didn't exist in emacs-20.4.
7326 * mh-utils.el (mh-decode-quoted-printable-have-mimedecode): same
7328 * mh-mime.el (mh-file-mime-type): Bug Fix. Some versions of
7329 'file' output a string like "file: Using regular magic file..."
7330 to stderr, so discard stderr when using call-process with 'file'.
7332 2001-11-14 Peter S Galbraith <psg@debian.org>
7334 * mh-mime.el (mh-have-file-command): Check if 'file' command on
7335 system accepts arguments -i -b before accepting it for our use.
7337 2001-11-14 Peter S Galbraith <psg@debian.org>
7339 * mh-utils.el (mh-find-progs): Use expand-file-name instead of
7340 concatenating together strings into a path.
7342 2001-11-14 Peter S Galbraith <psg@debian.org>
7344 * mh-e.el (mh-folder-sequence-menu): Enable mh-widen in sequence
7345 menu only when mh-narrowed-to-seq is t.
7347 2001-11-14 Peter S Galbraith <psg@debian.org>
7349 * mh-mime.el (mh-have-file-command): Use 'executable-find' instead
7350 of more complicated and error-prone call-process to which command.
7351 * mh-utils.el (mh-decode-quoted-printable-have-mimedecode): Same
7354 2001-11-14 Jeffrey C Honig <jch@honig.net>
7356 * mh-e.el (mh-make-folder-mode-line): Bug fix. Properly deal with
7357 folders that do not have any lines in them. Print "no msgs"
7358 instead of "0 msgs". Do not try to print a range when there are
7360 * mh-e.el (mh-regenerate-headers): Bug fix. Catch and remove the
7361 "scan: band message list" message.
7363 2001-11-13 Jeffrey C Honig <jch@honig.net>
7365 * mh-utils.el (mh-find-progs): Bug fix. Add "mh/etc" to the
7366 subdirectories to search for "components". On BSD/OS, nmh is in
7367 "/usr/contrib/mh/*".
7369 2001-11-13 Peter S Galbraith <psg@debian.org>
7371 * mh-comp.el (mh-letter-mode): Bug fix. Load mh-mime before
7372 setting mh-mhn-compose-insert-p (when looking at a "forw: -mime"
7373 message containing a MIME composition) such that the variable is
7374 properly declared as buffer-local.
7376 2001-11-12 Bill Wohler <wohler@newt.com>
7378 * mh-funcs.el (mh-print-msg): mhl is in the mh-lib-progs
7379 directory, not mh-lib (closes SF #481128).
7381 2001-11-12 Peter S Galbraith <psg@debian.org>
7383 * mh-seq.el (mh-widen): Bug fix (closes SF #481036).
7384 In a sequence with pending deletes and refiles, running mh-widen
7385 would wipe out their notations, even though the sequences are still
7386 defined. Fixed by calling a new function,
7387 mh-notate-deleted-and-refiled. Also changed the coping of
7388 mh-goto-msg-num since it didn't work consistently.
7389 * mh-seq.el (mh-notate-deleted-and-refiled): New functions written
7390 to fix above mh-widen bug. It's a first cut, we may want to clear
7391 all notations first, and notate the current-message sequence and
7392 user sequences. Time will tell.
7394 2001-11-12 Peter S Galbraith <psg@debian.org>
7396 * mh-seq.el (mh-widen): Make it attempt to stay on the same
7397 message number (closes SF bug #480922).
7399 2001-11-11 Bill Wohler <wohler@newt.com>
7401 * import-emacs: New shell script to import Emacs changes to mh-e.
7403 * Makefile (import): New target to import Emacs changes.
7405 2001-11-09 Peter S Galbraith <psg@debian.org>
7407 * mh-mime.el (mh-file-mime-type): Bug fix. Change regexp to
7408 extract mime type from 'file -i' command output.
7410 2001-11-08 Peter S Galbraith <psg@debian.org>
7412 * mh-utils.el (mh-update-sequences-after-mh-show):
7413 New customizable variable telling whether to run
7414 mh-update-sequences in mh-show-mode. Default is t.
7415 * mh-utils.el (mh-show-msg): Run mh-update-sequences when
7416 mh-update-sequences-after-mh-show is set.
7418 2001-11-08 Peter S Galbraith <psg@debian.org>
7420 * mh-utils.el (mh-decode-quoted-printable-have-mimedecode):
7421 New variable telling whether command 'mimedecode' is on system.
7422 (http://www.freesoft.org/CIE/FAQ/mimedeco.c)
7423 * mh-utils.el (mh-decode-quoted-printable):
7424 New customizable variable telling whether to run mimedecode on
7425 MIME message containing quoted-printable parts. mimedecode will
7426 only alter quoted-printable parts , leaving others intact, and the
7427 resulting message is still fully MIME.
7428 * mh-utils.el (mh-decode-quoted-printable): New function to run
7429 mimedecode on the current buffer.
7430 * mh-utils.el (mh-display-msg): Conditionnaly call
7431 mh-decode-quoted-printable function if mh-decode-quoted-printable
7432 variable is set, to view messages containing quoted-printable
7433 characters into 8-bit.
7435 2001-11-08 Peter S Galbraith <psg@debian.org>
7437 * mh-comp.el (mh-letter-mode): Set mh-mhn-compose-insert-p if
7438 looking at a "forw: -mime" message containing a MIME composition.
7439 * mh-mime.el (mh-file-mime-type): Bug fix. Failed on files like
7440 "~/.mh_profile" because of shell construct. Wrapped filename with
7442 * mh-comp.el (mh-letter-mode-map): C-cC-o keybinding in
7443 mh-letter-mode-map for mh-open-line.
7445 2001-11-07 Peter S Galbraith <psg@debian.org>
7447 * mh-comp.el (mh-open-line): New user function to split open a line
7448 when editing a reply with included text.
7449 * mh-comp.el (mh-current-fill-prefix): New function used by
7450 mh-open-line to get the fill-prefix on the current line.
7451 * mh-comp.el: Add mh-open-line to mh-letter-mode menubar.
7453 2001-11-06 Peter S Galbraith <psg@debian.org>
7455 * mh-seq.el (mh-region-to-sequence): New function, creating a
7456 sequence named 'region containing the message list in the selected
7458 * mh-e.el (mh-delete-msg): Mark messages in region for deletion if
7459 mark is active and in transient-mark-mode.
7460 * mh-e.el (mh-refile-msg): Mark messages in region for refiling if
7461 mark is active and in transient-mark-mode.
7462 * mh-e.el (mh-undo): Undo message marks for refile or deletion if
7463 region if mark is active and in transient-mark-mode.
7465 2001-11-06 Peter S Galbraith <psg@debian.org>
7467 * mh-comp.el (mh-letter-mode): Use sendmail.el's fill-paragraph.
7468 Copy its settings for paragraph-start, paragraph-separate,
7469 fill-paragraph-function, adaptive-fill-regexp and
7470 adaptive-fill-first-line-regexp. This make M-q (fill-paragraph)
7473 2001-11-05 Peter S Galbraith <psg@debian.org>
7475 * mh-funcs.el (mh-kill-folder): Remove mh-do-not-confirm condition
7476 and always prompt the user for such a drastic step. Also change
7477 the prompt a bit to clarify it.
7479 2001-11-04 Peter S Galbraith <psg@debian.org>
7481 * mh-mime.el (mh-mhn-compose-insert-p): New buffer-local variable
7482 to tell when a MIME insertion was done in a letter.
7483 * mh-mime.el (mh-mhn-compose-type): Set mh-mhn-compose-insert-p.
7484 * mh-mime.el (mh-mhn-compose-external-type):
7485 Set mh-mhn-compose-insert-p.
7486 * mh-mime.el (mh-mhn-compose-forw): Set mh-mhn-compose-insert-p.
7487 * mh-mime.el (mh-edit-mhn): Clear mh-mhn-compose-insert-p.
7488 * mh-comp.el (mh-send-letter): Run mh-edit-mhn when
7489 mh-mhn-compose-insert-p is set.
7491 2001-11-03 Peter S Galbraith <psg@debian.org>
7493 * mh-mime.el (mh-have-file-command): new function testing whether
7494 file command is on the system.
7495 * mh-mime.el (mh-file-mime-type): new function returning MIME type
7497 * mh-mime.el (mh-mhn-compose-insertion): Make use of
7498 mh-file-mime-type function instead of prompting.
7500 2001-10-30 Peter S Galbraith <psg@debian.org>
7502 * mh-utils.el (mh-show-use-goto-addr): defcustom this new
7503 variable, determining whether to call goto-addr in mh-show-mode.
7504 * mh-utils.el (mh-show-mode): Call goto-address when
7505 mh-show-use-goto-addr is t.
7507 2001-10-25 Peter S Galbraith <psg@debian.org>
7509 * mh-utils.el (mh-recenter): Clarify docs and change '(t) to
7510 (list 4) to match elisp doc on what C-u prefix argument actually is.
7512 2001-10-23 Peter S Galbraith <psg@debian.org>
7514 * mh-utils.el (mh-summary-height): In my quest to make mh-e more
7515 useful out-of-the-box for new users, set mh-summary-height to a
7516 minimum of 4 and a maximum of 10 depending on frame height. I
7517 typically have 70 lines in my Emacs frame, so having a default of
7518 4 was silly for my case.
7519 * mh-e.el (mh-update-sequences): Check for nil value of
7520 mh-current-folder, which happens if mh-summary-height < 4
7521 although I haven't tracked doen why that happens.
7523 2001-10-22 Peter S Galbraith <psg@debian.org>
7525 * mh-comp.el (mh-insert-fields): Test for nil value when inserting
7528 2001-10-20 Peter S Galbraith <psg@debian.org>
7530 * mh-comp.el (mh-user-agent-compose): Merged-in from XEmacs-21.4 source
7531 * mh-comp.el (mh-letter-mode): Add easy-menu-add statement for XEmacs21
7532 * mh-pick.el (mh-pick-mode): Add easy-menu-add statement for XEmacs21.
7533 * mh-e.el (mh-folder-mode): Add easy-menu-add statements for XEmacs21.
7534 * mh-utils.el: defalias 'screen-height to 'frame-height for XEmacs21.
7536 2001-10-19 Peter S Galbraith <psg@debian.org>
7538 * mh-mime.el (mh-edit-mhn): Use mhbuild in nmh context.
7539 * mh-utils.el (mh-find-progs): The variable mh-nmh-p (t when nmh
7540 is in use rather than MH) was set assuming that the string "nmh"
7541 will be in mh-lib-progs or mh-lib. This failed on Debian systems.
7542 Better to check for the existence of mhbuild in directory mh-progs.
7543 (closes SF bug #441776)
7545 2001-10-18 Peter S Galbraith <psg@debian.org>
7547 * mh-e.el: Add menubar entry from contrib/mh-menubar.el
7548 * mh-comp.el: Add menubar entry from contrib/mh-menubar.el
7549 * mh-pick.el: Add menubar entry from contrib/mh-menubar.el
7551 2001-07-30 Peter S Galbraith <psg@debian.org>
7553 * mh-e.el: Change font-lock patterns for folders.
7554 Fontify scan.font-lock patterns (which will be documented)
7555 and fontify subject lines prefixed with "Re:" differently.
7556 * mh-comp.el (mh-letter-mode): Add font-lock support as in
7559 2001-04-14 chad brown <y@mit.edu>
7561 * rearrange the font-lock keywords a bit
7563 2001-04-12 chad brown <y@mit.edu>
7565 * preliminary (somewhat boring) font-lock support for mh-e. More
7566 interesting font-lock support probably wants to have better
7567 support for multiple format files
7569 2001-02-24 chad brown <y@mit.edu>
7571 * add default nmh paths to mh-find-prog in mh-utils.el.
7572 change to mh-kill-folder in mh-funcs.el to make it more general.
7574 2001-02-19 Bill Wohler <wohler@newt.com>
7576 * Makefile (EMACS): Renamed to EMACS_HOME. Also, don't define if
7577 EMACS_HOME already exists to give developer a chance to set
7578 environment variable.
7579 (install): $MH-E-SRC is copied to $(EMACS_HOME)/lisp/mail, not
7581 (dist): Leave release in current directory.
7584 Copyright (C) 2003 Free Software Foundation, Inc.
7586 Copying and distribution of this file, with or without modification,
7587 are permitted in any medium without royalty provided the copyright
7588 notice and this notice are preserved.