1 2004-04-26 Lars Hansen <larsh@math.ku.dk>
2 * mh-e.el (mh-folder-mode): Bind desktop-save-buffer to t.
4 2003-04-24 Bill Wohler <wohler@newt.com>
6 * Released MH-E version 7.3.
8 * MH-E-NEWS, README: Updated for release 7.3.
10 * mh-e.el (Version, mh-version): Updated for release 7.3.
12 2003-04-24 Satyaki Das <satyakid@stanford.edu>
14 * mh-xemacs-compat.el (mh-utils): Require mh-utils at compile
15 time, since the mh-do-in-xemacs macro is used.
17 * mh-inc.el (cl): Require cl at compile time since we are using
18 the loop and setf macros.
20 2003-04-24 Satyaki Das <satyakid@stanford.edu>
22 * mh-unit.el (mh-files): Fix the list of files to check.
24 2003-04-24 Bill Wohler <wohler@newt.com>
26 * ChangeLog: Appended copyright to end of file.
28 * Makefile: Added copyright and license.
30 * README: Added copyright.
32 * import-emacs: Changed copyright from Newt Software to Bill
33 Wohler and use license from mh-e.el, except that this file is
34 a part of MH-E, not GNU Emacs.
36 * mh-alias.el: Updated copyright so that it doesn't wrap upon
37 advice from Richard Stallman who said to use two-digit years when
38 they are surrounded by 4-digit years that are in the same century
39 and to break up copyrights on multiple lines.
43 * mh-identity.el: Ditto.
47 * mh-xemacs-compat.el: Ditto.
49 * mh-unit.el: New file. Unit tests for MH-E. This version merely
50 runs checkdoc and lm-verify which is useful before releasing the
51 software. It can and should be expanded to do real unit tests.
53 2004-04-22 Lars Hansen <larsh@math.ku.dk>
55 * mh-e.el (mh-restore-desktop-buffer): Delete with-no-warnings.
57 2003-04-22 Mark D Baushke <mdb@gnu.org>
59 * mh-alias.el: Update Copyright.
61 * mh-customize.el: Ditto.
64 * mh-identity.el: Ditto.
71 * mh-xemacs-compat.el: Ditto.
73 2003-04-22 Satyaki Das <satyaki@theforce.stanford.edu>
75 * mh-utils.el (mh-normalize-folder-name): Make the completion
76 code work properly with XEmacs. This change is neeeded since
77 split-string behaves differently in XEmacs than it does in GNU
79 (mh-exec-cmd-error): Add a comment, so that we change it later on.
81 2004-04-21 Lars Hansen <larsh@math.ku.dk>
83 * mh-e.el (mh-restore-desktop-buffer): Move from
84 desktop.el. Add Parameters.
86 2003-04-18 Steve Youngs <youngs@xemacs.org>
88 * mh-xemacs-icons.el (mh-xemacs-icons): Provide 'mh-xemacs-icons'
89 not 'mh-xemacs-toolbar'.
91 * mh-xemacs-compat.el (mh-xemacs-toolbar): Remove require, it's
92 now called 'mh-xemacs-icons' and it is required from
95 * mh-customize.el: Require 'mh-xemacs-icons' instead of
98 2003-04-17 Peter S Galbraith <psg@debian.org>
100 * mh-xemacs-icons.el: New file (renamed from mh-xemacs-toolbar.el).
103 * mh-xemacs-toolbar.el: Deleted.
105 * Makefile: Incorporate the file renaming.
107 2003-04-15 Bill Wohler <wohler@newt.com>
109 * mh-comp.el (mh-forward): Pass a list of messages into
110 mh-compose-and-send-mail instead of msg-or-seq.
111 (mh-annotate-msg): The previous version called
112 mh-iterate-on-msg-or-seq in the letter buffer. The new version
113 simply adds the ability to operate on message lists. Thanks to
114 Satyaki for the fix and suggestion for passing a list from
117 2003-04-14 Bill Wohler <wohler@newt.com>
119 * mh-comp.el (mh-annotate-msg): Updated to handle msg-or-seq for
120 mh-forward was passing a msg-or-seq to mh-compose-and-send-mail
121 which in turn passed the msg-or-seq to mh-annotate-msg. In
122 particular, forwarding a region failed. Note that the msgs
123 argument in much of mh-comp.el should really be converted to
124 msg-or-seq accordingly. But not now, unless something is broken as
125 was the case here. We can revamp after the release.
127 2003-04-13 Bill Wohler <wohler@newt.com>
129 * mh-funcs.el (mh-kill-folder): Added space after prompt to give
130 the (yes or no) bit a little elbow room.
132 * mh-xemacs-toolbar.el: Removing a copyright is a no-no.
133 Reinstated Steve's copyright.
135 2003-04-12 Satyaki Das <satyaki@theforce.stanford.edu>
137 * mh-utils.el (mh-do-in-gnu-emacs, mh-do-in-xemacs): Add
138 indentation hooks for the macros.
140 2003-04-11 Bill Wohler <wohler@newt.com>
142 * mh-alias.el, mh-comp.el, mh-customize.el, mh-funcs.el,
143 mh-identity.el, mh-inc.el, mh-index.el, mh-junk.el, mh-utils.el:
144 Merged in changes from CVS GNU Emacs. These included the removal
145 of trailing whitespace.
147 * mh-customize.el: The "anti-entropy" check-in. Moved groups
148 around slightly to reflect commentary. Moved defcustoms around
149 to preserve alphabetization. Big diff, little content.
150 (mh-xemacs-use-toolbar-flag): Doc fix.
151 (mh-xemacs-toolbar-position): Fixed typo in docstring.
152 (mh-default-folder-list): Updated docstring to reflect new Check
153 Recipient tag. Also, set type of Address to regexp.
154 (mh-x-mailer-string): Moved to mh-comp.el where it is used.
156 * mh-comp.el (mh-x-mailer-string): Moved here from customize.el.
157 Not quite sure how it got to mh-customize.el in the first place.
159 * mh-e.el (mh-folder-folder-menu): Added Folder -> View New
162 * mh-utils.el (mh-show-folder-menu): Ditto.
164 * mh-inc.el: Added Change Log comment (lm-verify fix).
166 * mh-index.el (mh-index-search): Added documentation about prefix
167 argument for users, in addition to documentation for programmers.
169 * mh-mime.el (mh-edit-mhn, mh-edit-mhn, mh-mml-to-mime): Docstring
170 fixes germaine to the change whereby we now check for MIME
171 directives before sending.
173 * mh-xemacs-toolbar.el: Fixed copyright. Added Change Log comment
174 (lm-verify fix). Added standard MH-E local variables. Removed
177 2003-04-11 Satyaki Das <satyaki@theforce.stanford.edu>
179 * mh-seq.el (mh-iterate-on-msg-or-seq): Add a missed comma.
181 2003-04-10 Satyaki Das <satyaki@theforce.stanford.edu>
183 * mh-index.el (mh-index-visit-folder): Prompt before reusing
184 existing folder buffer.
186 * mh-xemacs-toolbar.el (require): Require mh-utils at compile
187 time to avoid compilation error when doing "make bootstrap" in
190 * mh-inc.el (mh-inc-spool-list): Declare it so that a compile
191 time warning is avoided when doing "make bootstrap" in CVS Emacs.
193 2003-04-10 Peter S Galbraith <psg@debian.org>
195 * mh-inc.el (mh-inc-spool-generator): Changed to a defun instead
196 of a defmacro, applying Satyaki's patch.
197 (mh-inc-spool-def-key): same.
198 (mh-inc-spool-make): same.
200 * mh-utils.el: define-key "I" in mh-show-mode-map for
203 * mh-comp.el (mh-modify-header-field): Remove debug message.
205 2003-04-10 Peter S Galbraith <psg@debian.org>
207 * mh-inc.el (mh-inc-spool-map-help): Default to nil.
208 (mh-inc-spool-map): Make "?" key display message when
209 `mh-inc-spool-map-help' is nil (instead of mh-inc-spool-map-help
210 containing the message).
212 * mh-e.el: require mh-inc.el
213 * mh-e.el: define-key "I" in mh-folder-mode-map for mh-inc-spool-map.
214 (mh-help-messages): Add help string for "I" key.
216 2003-04-09 Peter S Galbraith <psg@debian.org>
218 * mh-inc.el: New file. New feature to `inc' mail from various
219 spool files into different folders.
221 * mh-loaddefs.el: Regenerate for mh-inc's mh-inc-spool-list-set.
223 * Makefile (MH-E-IMG): Add highlight icon.
224 (MH-E-SRC): Add mh-inc.el file.
226 * mh-customize.el (mh-inc-spool-list): New variable for new
227 feature to `inc' mail from various spool files into different
230 2003-04-09 Satyaki Das <satyaki@theforce.stanford.edu>
232 * mh-utils.el (mh-mail-delivery-buffer): Add a defconst for
233 mh-mail-delivery-buffer.
235 * mh-comp.el (mh-send-letter): Use mh-mail-delivery-buffer.
237 * mh-mime.el (mh-small-image-p): Add mh-funcall-if-exists to
238 avoid compiler warning in GNU Emacs.
240 2003-04-08 Satyaki Das <satyaki@theforce.stanford.edu>
242 * mh-mime.el (mh-small-image-p): Make the function slightly more
243 error-resistant in XEmacs.
245 * mh-seq.el (mh-narrow-to-seq, mh-widen): Update tool-bar-map in
246 the show buffer if needed. This allows us to display the widen
247 button in the show buffer only when the folder is narrowed.
249 * mh-customize.el (mh-tool-bar-define): Changed so that a
250 separate tool-bar-map is used in show-mode when folder is
251 narrowed to a sequence.
253 2003-04-08 Satyaki Das <satyaki@theforce.stanford.edu>
255 * mh-seq.el (mh-iterate-on-msg-or-seq): Reinstate the use of
256 make-symbol since using gensym causes compiler warnings in CVS
259 2003-04-08 Bill Wohler <wohler@newt.com>
261 * mh-comp.el (mh-forward): Function didn't handle a region of
262 messages. Use new function mh-msg-or-seq-to-msg-list to get a list
263 of messages in all circumstances. Also, use mh-coalesce-msg-list
264 on message list before submitting to forw since this should always
265 be done when calling a program to reduce the chance of exceeding
268 * mh-seq.el (mh-iterate-on-msg-or-seq): Backed out previous
269 change. A nil msg-or-seq should mean no messages, and Satyaki is
270 going to use gensym instead of make-symbol.
271 (mh-msg-or-seq-to-msg-list): New function to convert a msg-or-seq
272 to a list of message numbers.
274 * mh-e.el (mh-coalesce-msg-list): Touched up the docstring a
277 * mh-funcs.el (mh-print-msg): Can now print regions, message
278 lists, sequences and, of course, single messages. This version
279 works a little differently from the old version. Instead of
280 calling mhl | lpr once on all messages, mhl | lpr is called once
281 per message in order to put each message's number in the header.
282 Thanks to Satyaki for some code and ideas.
284 * mh-seq.el (mh-iterate-on-msg-or-seq): The argument msg-or-seq
285 can now be nil which means the current message. Make local symbols
286 so that local variables don't step on user's symbols (the msgs
289 2003-04-06 Bill Wohler <wohler@newt.com>
291 * mh-comp.el (mh-forward): Updated docstrings to indicate that a
292 list of messages is acceptable as well.
294 * mh-e.el (mh-delete-msg, mh-delete-msg-no-motion, mh-refile-msg)
295 (mh-undo, mh-notate-user-sequences, mh-delete-msg-from-seq): Ditto.
297 * mh-funcs.el (mh-copy-msg, mh-print-msg): Ditto.
299 * mh-junk.el (mh-junk-blacklist, mh-junk-whitelist): Ditto.
301 * mh-seq.el (mh-put-msg-in-seq, mh-iterate-on-msg-or-seq)
302 (mh-interactive-msg-or-seq): Ditto.
304 2003-04-06 Satyaki Das <satyaki@theforce.stanford.edu>
306 * mh-junk.el (mh-junk-blacklist, mh-junk-whitelist): Call
307 mh-refile-a-msg and mh-delete-a-msg with nil as the message
308 number since that is more efficient.
310 * mh-seq.el (mh-iterate-on-msg-or-seq): Extended so that it will
311 handle lists of messages numbers as well.
312 (mh-put-msg-in-seq): Use mh-iterate-on-msg-or-seq to simplify the
315 * mh-funcs.el (mh-copy-msg): Same as above.
317 * mh-e.el (mh-refile-msg): Make it more efficient. Using nil in
318 mh-refile-a-msg avoids needing to re-search-forward to that
320 (mh-undo): Fix typo in interactive spec.
321 (mh-notate-user-sequences): Generalize the function to take a
322 msg-or-seq as argument.
323 (mh-delete-msg-from-seq): Extend the function so that it is now
324 able to subtract messages belonging in one sequence from another.
325 (mh-undo): Unify the region and sequence handling. The message
326 number branch of the function does extra stuff, so we can't merge
329 2003-04-06 Bill Wohler <wohler@newt.com>
331 * mh-comp.el (mh-forward): Use mh-interactive-msg-or-seq. Inserted
332 consistent verbiage in docstring for msg-or-seq.
333 (mh-reply): Don't mention default in opening line in all
336 * mh-e.el (mh-delete-msg, mh-refile-msg)
337 (mh-undo, mh-delete-msg-from-seq): Use mh-interactive-msg-or-seq.
338 Inserted consistent verbiage in docstring for msg-or-seq. In
339 mh-delete-msg-from-seq, renamed msg-or-region to msg-or-seq.
341 * mh-funcs.el (mh-copy-msg, mh-print-msg): Use
342 mh-interactive-msg-or-seq. Inserted consistent verbiage in
343 docstring for msg-or-seq.
345 * mh-junk.el (mh-junk-blacklist, mh-junk-whitelist): Inserted
346 consistent verbiage in docstring for msg-or-seq.
348 * mh-seq.el (mh-msg-is-in-seq): Don't mention default in opening
349 line in all docstrings.
350 (mh-put-msg-in-seq): Use mh-interactive-msg-or-seq. Inserted
351 consistent verbiage in docstring for msg-or-seq.
353 * mh-e.el (mh-delete-msg, mh-delete-msg-no-motion, mh-refile-msg):
354 Rewritten to use new mh-interactive-msg-or-seq function and
355 mh-iterate-on-msg-or-seq macro. mh-delete-msg-no-motion gained the
356 ability to operate on regions.
358 * mh-junk.el (mh-junk-blacklist, mh-junk-whitelist): Rewritten to
359 use new mh-interactive-msg-or-seq function and
360 mh-iterate-on-msg-or-seq macro thereby gaining the ability to
361 operate on sequences or regions.
363 * mh-seq.el (mh-iterate-on-msg-or-seq): New macro to execute code
364 on a message, a region of messages, or a sequence. This macro
365 should be in all functions that operate on messages to provide a
367 (mh-interactive-msg-or-seq): New function used in interactive
368 calls to obtain a message number, region, or sequence. This
369 function should be in all functions that operate on messages to
370 provide a uniform interface.
372 * mh-utils.el (with-mh-folder-updating, mh-in-show-buffer): Use
373 'defun lisp-indent-hook property instead of 1 to fix indentation
376 2003-04-05 Peter S Galbraith <psg@debian.org>
378 * mh-loaddefs.el: Regenerated.
379 * mh-funcs.el (mh-ephem-message): autoload.
381 2003-04-04 Peter S Galbraith <psg@debian.org>
383 * mh-e.el (mh-folder-from-address): Minor Fix. Wrong ending of
386 2003-04-04 Satyaki Das <satyaki@theforce.stanford.edu>
388 * mh-mime.el (mh-mml-directive-present-p): The regexp has been
389 modified to recognize directives to encrypt/sign messages.
391 2003-04-03 Mark D. Baushke <mdb@gnu.org>
393 * mh-e.el (mh-folder-from-address): E-mail messages missing the
394 To: field, but which have a Cc: field should also be handled.
396 2003-04-03 Bill Wohler <wohler@newt.com>
398 * mh-e.el (mh-inc-folder): Modified the prompt text to read
401 * mh-comp.el (mh-forward): Deleted local variable `compose'.
402 Deleted obsolete setting of mh-{mmh|mml}-compose-insert-flag.
403 (mh-letter-menu): Use mh-{mmh|mml}-directive-present-p instead of
404 obsolete. mh-{mmh|mml}-compose-insert-flag.
405 (mh-letter-mode): Deleted obsolete setting of
406 mh-{mmh|mml}-compose-insert-flag.
407 (mh-send-letter): This function now automatically runs the
408 directive-to-MIME conversion if any directives are detected,
409 rather than relying on the unreliable
410 mh-{mmh|mml}-compose-insert-flag variables. Updated docstring
413 * mh-identity.el (mh-insert-identity): Use
414 mh-{mmh|mml}-directive-present-p instead of obsolete.
415 mh-{mmh|mml}-compose-insert-flag.
417 * mh-loaddefs.el: Regenerated.
419 * mh-mime.el (mh-mhn-compose-type, mh-mhn-compose-external-type)
420 (mh-mhn-compose-forw, mh-edit-mhn, mh-mml-to-mime)
421 (mh-mml-forward-message, mh-mml-attach-file)
422 (mh-mml-secure-message-sign-pgpmime)
423 (mh-mml-secure-message-encrypt-pgpmime): Deleted obsolete setting
424 of mh-{mmh|mml}-compose-insert-flag.
425 (mh-mml-directive-present-p): Checkdoc fix.
427 * mh-utils.el (mh-mhn-compose-insert-flag,
428 mh-mml-compose-insert-flag): Deleted. Replaced by
429 mh-{mhn|mml}-directive-present-p.
431 2003-04-03 Mark D. Baushke <mdb@gnu.org>
433 * mh-e.el (mh-folder-from-address): Fix minor problem with To:
436 * mh-e.el (mh-folder-from-address): Bugfix match ?+ character not
439 2003-04-03 Peter S Galbraith <psg@debian.org>
441 * mh-e.el (mh-inc-folder): Add second optional argument for the
442 folder to inc new mail into instead of mh-inbox.
444 2003-04-03 Peter S Galbraith <psg@debian.org>
446 * mh-e.el (mh-folder-from-address): The first match found in
447 `mh-default-folder-list' is used.
449 * mh-customize.el (mh-default-folder-list): Tweak docs
451 2003-04-03 Satyaki Das <satyaki@theforce.stanford.edu>
453 * mh-loaddefs.el: Regenerated.
455 * mh-mime.el (mh-mhn-directive-present-p): New function to test if
456 a MHN directive is present in the current buffer.
457 (mh-mml-directive-present-p): New function to test if a MML
458 directive is present in the current buffer.
460 * mh-comp.el (mh-letter-mode): Originally this function checked if
461 a #forw directive was present and set mh-mhn-compose-insert-flag
462 to t. The modification generalizes this test so that one of the
463 variables mh-{mml|mhn}-compose-insert-flag will get set if we have
464 any sort of MHN or MML directive is already present.
466 * mh-seq.el (tool-bar-map): Add a defvar to avoid compiler
467 warnings in CVS version of GNU Emacs.
469 * mh-utils.el (tool-bar-map): Same as above.
471 * mh-e.el (tool-bar-map): same as above.
473 2003-04-02 Satyaki Das <satyaki@theforce.stanford.edu>
475 * mh-xemacs-toolbar.el (mh-xemacs-toolbar-toggle-tick-icon):
476 Change color to match mh-folder-tick-face.
478 * highlight.xpm: Same as above.
480 2003-04-02 Peter S Galbraith <psg@debian.org>
482 * mh-e.el (mh-folder-from-address): Check `mh-default-folder-list'
483 for cases against the recipient instead of the originator.
485 * mh-customize.el (mh-default-folder-list): Add extra boolean flag
486 to conditionally check the recipient address instead of the
489 2003-04-02 Peter S Galbraith <psg@debian.org>
491 * mh-customize.el (mh-folder-tick-face): Change tick highlight
492 face to a background yellow-green, as suggested by Bill.
494 2003-04-01 Peter S Galbraith <psg@debian.org>
496 * highlight.xpm: New icon for mh-toggle-tick.
498 * mh-xemacs-toolbar.el (mh-xemacs-icon-map): Add tool-bar entry
500 (mh-xemacs-toolbar-toggle-tick-icon): New constant.
502 * mh-customize.el: Add tool-bar entry for mh-toggle-tick.
504 2003-03-31 Satyaki Das <satyaki@theforce.stanford.edu>
506 * mh-loaddefs.el: Regenerated.
508 * mh-utils.el (mh-show-narrow-to-tick, mh-show-limit-map)
509 (mh-show-sequence-menu): Add new interactive function
510 mh-show-narrow-to-tick callable from the show buffer and arrange
511 for a key binding and a menu entry.
513 * mh-seq.el (mh-narrow-to-tick): New interactive function that
514 narrows to the tick sequence.
516 * mh-e.el (mh-folder-sequence-menu, mh-limit-map): Arrange for a
517 key binding and a menu entry for mh-narrow-to-tick.
519 * mh-comp.el (mh-letter-mode): Enable undo since we could be
520 reusing a show buffer where undo is disabled (closes SF #712777).
522 2003-03-31 Peter S Galbraith <psg@debian.org>
524 * mh-e.el (mh-folder-sequence-menu): Add entry for mh-toggle-tick.
526 * mh-utils.el (mh-show-sequence-menu): Add entry for
529 2003-03-28 Satyaki Das <satyaki@theforce.stanford.edu>
531 * mh-seq.el (mh-delete-seq): If the tick sequence is killed with
532 "S k" then the highlighting wasn't getting removed. The change
535 2003-03-27 Satyaki Das <satyaki@theforce.stanford.edu>
537 * mh-e.el (mh-notate-user-sequences): Extend it so that only the
538 messages in a part of the folder are notated.
539 (mh-delete-msg-from-seq): Extend it so that it will delete all
540 messages in the marked region.
541 (mh-delete-a-msg-from-seq): New function that deletes a single
542 message from a sequence.
543 (mh-clear-text-properties): If there is a ticked unseen message
544 and the message is removed from the unseen list with "S d" then
545 unticking the message doesn't change the highlight. This change
548 2003-03-27 Peter S Galbraith <psg@debian.org>
550 * mh-xemacs-toolbar.el (mh-xemacs-toolbar-*-icon): Use original
551 24x24 icons, changing background only.
553 2003-03-27 Satyaki Das <satyaki@theforce.stanford.edu>
555 * mh-junk.el (mh-spamassassin-identify-spammers): Remove unused
556 variable buffer-exists.
557 (mh-spamassassin-identify-spammers): Remove unused variable user.
559 * mh-customize.el (mh-junk-choose): Tweak it to remove XEmacs
562 2003-03-26 Satyaki Das <satyaki@theforce.stanford.edu>
564 * mh-seq.el (mh-thread-print-scan-lines): Handling of a boundary
565 condition when messages from the last source folder had been
566 removed was incorrect. This caused a folder header to appear
567 without any messages listed under it. This change fixes this.
568 (mh-thread-forget-message): Remove the entry from the scan line
569 table as well. This is needed for proper display of threaded view
572 2003-03-26 Bill Wohler <wohler@newt.com>
574 * Makefile, README, import-emacs, mh-alias.el, mh-comp.el,
575 mh-customize.el, mh-e.el, mh-funcs.el, mh-identity.el,
576 mh-index.el, mh-loaddefs.el, mh-mime.el, mh-pick.el, mh-seq.el,
577 mh-speed.el, mh-utils.el, mh-xemacs-compat.el,
578 mh-xemacs-toolbar.el: Removed RCS keywords per Emacs conventions
582 2003-03-26 Satyaki Das <satyaki@theforce.stanford.edu>
584 * mh-index.el: Fix commentary to mention that mairix is supported
587 * mh-loaddefs.el: Regenerated.
589 * mh-utils.el (mh-show-junk-blacklist, mh-show-junk-whitelist):
590 Interactive functions callable from the show buffer.
591 (mh-show-junk-map): Key bindings in show mode.
593 * mh-e.el (mh-junk-map): Key bindings to call spam program.
594 (mh-help-messages): Update help text.
596 * mh-customize.el (mh-junk): New customization group for spam
598 (mh-junk-choice, mh-junk-function-alist, mh-junk-choose):
599 Functions and variables that decide which junk program is used.
600 (mh-junk-program, mh-junk-mail-folder): User customizable
601 variables that control the choice of spam program and the action
602 performed on received spam.
604 * Makefile (MH-E-SRC): Add mh-junk.el.
606 2003-03-26 Satyaki Das <satyaki@theforce.stanford.edu>
608 * mh-loaddefs.el: Regenerated.
610 * mh-utils.el (mh-show-toggle-tick, mh-show-mode-map): New
611 interactive function callable from the show buffer and a key
614 * mh-seq.el (mh-delete-seq): Remove highlight from tick sequence.
615 (mh-put-msg-in-seq): Disable adding messages to tick sequence.
616 (mh-widen): Reset mh-tick-seq-changed-when-narrowed-flag.
617 (mh-tick-add-overlay, mh-tick-remove-overlay, mh-notate-tick)
618 (mh-toggle-tick): New functions to highlight/unhighlight tick
619 sequence and the interactive function that is used to toggle
622 * mh-e.el (mh-tick-seq-changed-when-narrowed-flag): New variable
623 that remembers if we are narrowed to the tick sequence. In that
624 case the highlighting isn't shown, since it adds no extra info.
625 (mh-folder-mode): Initialize mh-tick-seq-changed-when-narrowed-flag.
626 (mh-notate-user-sequences): Notate the tick sequence.
627 (mh-internal-seq): Treat mh-tick-seq like an internal sequence.
628 (mh-delete-msg-from-seq): Don't allow deletion from tick sequence.
629 (mh-folder-mode-map): Add key binding for "'"
631 * mh-customize.el (mh-tick-seq, mh-folder-tick-face): New
632 customizable variables that contain the name of the tick sequence
633 and the face to use to highlight it.
635 2003-03-25 Satyaki Das <satyaki@theforce.stanford.edu>
637 * mh-loaddefs.el: Regenerated.
639 * mh-seq.el (mh-thread-print-scan-lines): New function which
640 prints out thread tree. It maintains the original folder info if
641 the folder was created by index search (closes SF #709672).
642 (mh-copy-seq-to-eob, mh-thread-inc, mh-thread-folder): Use
643 factored out function mh-thread-print-scan-lines.
644 (mh-toggle-threads): Since threading is allowed in index folders
645 there can be lines in the folder which aren't valid message scan
646 lines. So it is OK for mh-get-msg-num to fail once in a while.
648 * mh-index.el (mh-index-update-maps): Make the parsing of messages
649 that need to annotated with the X-MHE-Checksum header more robust.
650 If the search yielded no results then an error was being produced.
651 (mh-index-search): Enable automatic threading of index folders if
652 mh-show-threads-flag is non-nil (closes SF #709667).
653 (mh-index-next-folder): Relax error checking since index folder
654 can be threaded while the source folder info is visible.
655 (mh-index-group-by-folder): New function that is used in
656 mh-thread-folder to keep source folder info visible during
659 2003-03-25 Bill Wohler <wohler@newt.com>
661 * mh-loaddefs.el: Regenerated.
663 * mh-customize.el (mh-index-new-messages-folders): New variable
664 that controls which folders "F n (mh-index-new-messages)"
665 accesses. Was mh-flists-search-folders.
667 * mh-index.el (mh-flists-search-folders): Still used internally,
668 but users now use new option mh-index-new-messages-folders.
669 Removed documentation since to avoid duplication with
670 mh-index-new-messages-folders.
671 (mh-flists-recursive-search-flag): Deleted. Use
672 mh-recursive-folders-flag instead.
673 (mh-flists-execute): Updated docs to specify which global
674 variables are used. Use mh-recursive-folders-flag instead of
675 mh-flists-recursive-search-flag.
676 (mh-index-new-messages): Edited doc, and refer to new option
677 mh-index-new-messages-folders. Ditto within code. Don't need to
678 prepend + to folder name as flists does that for us. Use
680 2003-03-24 Satyaki Das <satyaki@theforce.stanford.edu>
682 * mh-e.el (mh-refile-msg): Add optional argument that controls
683 whether mh-last-destination-folder is updated or not.
685 2003-03-22 Satyaki Das <satyaki@theforce.stanford.edu>
687 * mh-customize.el (mh-tool-bar-define): Fix a problem in the
688 XEmacs version which caused the show mode toolbar to have the
689 buttons in the reverse order. Also the add-hooks are no longer
690 needed since mh-toolbar-init is called in the appropriate modes.
692 * mh-comp.el (mh-letter-mode): Call mh-toolbar-init in XEmacs to
695 * mh-utils.el (mh-show-mode): Same as above.
697 * mh-e.el (mh-folder-mode): Same as above.
699 2003-03-21 Satyaki Das <satyaki@theforce.stanford.edu>
701 * mh-utils.el (mh-exec-cmd-env-daemon): New function which
702 executes a command asynchronously with its own environment.
704 * mh-comp.el (mh-redistribute): The function has been modified so
705 that /bin/sh isn't used to run send. It has also been refactored
706 so that the same code isn't repeated.
708 2003-03-21 Bill Wohler <wohler@newt.com>
710 * mh-customize.el (mh-invisible-header-fields): Added X-Bogosity
713 2003-03-21 Satyaki Das <satyaki@theforce.stanford.edu>
715 * mh-loaddefs.el: Regenerated.
717 * mh-xemacs-toolbar.el: Remove the code since that gets generated
718 when mh-tool-bar-define is expanded.
719 (mh-xemacs-icon-map): A alist to map GNU Emacs icon names to the
720 actual icons to be used in XEmacs. This is used in
723 * mh-customize.el (mh-toolbar): Use this group in XEmacs as well.
724 (mh-tool-bar-item-*): All these constants have been removed since
725 they aren't needed in the new scheme.
726 (mh-tool-bar-reply-3-buttons-flag): This variable has been
728 (mh-tool-bar-search-function): This is now used in XEmacs as well.
729 (mh-tool-bar-folder-set, mh-tool-bar-folder-buttons-set)
730 (mh-tool-bar-letter-buttons-set, mh-tool-bar-show-set)
731 (mh-tool-bar-letter-set): These functions aren't defined at the
733 (mh-tool-bar-reply-generator): A macro to generate the required
734 functions for the three reply buttons.
735 (mh-tool-bar-search, mh-tool-bar-customize)
736 (mh-tool-bar-folder-help, mh-tool-bar-letter-help)
737 (mh-tool-bar-reply-from, mh-show-tool-bar-reply-from)
738 (mh-tool-bar-reply-to, mh-show-tool-bar-reply-to)
739 (mh-tool-bar-reply-all, mh-show-tool-bar-reply-all): New
740 interactive functions that are called when tool bar buttons are
742 (mh-xemacs-use-toolbar-flag, mh-xemacs-toolbar-position):
743 Additional customizable variables that are present only for
745 (mh-tool-bar-define): A macro that generates the required code
746 for GNU Emacs and XEmacs tool bar.
747 (mh-tool-bar-define): Define the MH-E tool bar.
749 2003-03-17 Satyaki Das <satyaki@theforce.stanford.edu>
751 * mh-seq.el (mh-notate-cur): Notate current message only if it
752 hasn't been marked for deletion or refiling.
754 2003-03-15 Bill Wohler <wohler@newt.com>
756 * mh-customize.el (mh-invisible-header-fields): Added
757 X-Spam-Checker-Version.
758 (mh-auto-fields-list): checkdoc fix.
760 2003-03-12 Satyaki Das <satyaki@theforce.stanford.edu>
762 * mh-index.el (mh-index-new-messages): If the destination folder
763 where the unseen messages are supposed to be copied to was
764 already present, but MH-E doesn't have it open, then a new folder
765 was being created. The change fixes this.
766 (mh-index-update-unseen, mh-flists-recursive-search-flag): Fix
769 * mh-loaddefs.el: Regenerated.
771 2003-03-11 Satyaki Das <satyaki@theforce.stanford.edu>
773 * mh-index.el (mh-flists-results-folder): Subfolder under
774 +mhe-index where the results of the flists call is put.
775 (mh-index-generate-pretty-name): Make sure that normal index
776 searching will never use the folder reserved for the flists
778 (mh-index-search): Add an extra parameter that marks all the
779 messages in the index folder to the unseen sequence.
780 (mh-index-update-unseen): Function to keep unseen sequence of
781 index folder synced with the actual folders from where the
782 messages were copied. This works only if the unseen messages are
783 displayed with mh-show. Killing the unseen sequence in the index
784 folder or adding/removing messages to it doesn't change the
785 unseen sequence in the source folders yet.
786 (mh-flists-search-folders): Variable that decides the folders on
788 (mh-flists-recursive-search-flag): If non-nil, flists is passed
790 (mh-flists-execute): Function which uses /bin/sh to execute
791 flists and then print out the list of message files that match.
792 (mh-index-new-messages): New interactive function which searches
793 for messages in the unseen sequence (closes SF #701756).
795 * mh-utils.el (mh-show-folder-map): Add binding for
796 mh-index-new-messages.
797 (mh-show-msg): Update the unseen sequence in the source folder.
799 * mh-e.el (mh-folder-font-lock-unseen): The function assumes that
800 the end of buffer is reached when there isn't a valid scan line
801 on the current line. This doesn't work in the index folder since
802 we have lines containing the folder name and empty lines in
803 between the actual scan lines. The modification removes this
805 (mh-folder-map): Add key binding for "Fn"
807 * mh-seq.el (mh-iterate-on-messages-in-region): If the point is
808 not at the beginning of the line, then the first message in the
809 region would be missed. The fix avoids this.
811 * mh-mime.el (mh-inline-vcard-p): Don't try to inline vcards if
812 we don't have the right libraries.
814 2003-03-10 Satyaki Das <satyaki@theforce.stanford.edu>
816 * mh-e.el (mh-next-undeleted-msg, mh-previous-undeleted-msg)
817 (mh-next-msg): Add optional argument wait-after-complaining-flag.
818 If non-nil and there are no undeleted messages after (or before)
819 the current one, then pause for a second after printing out the
821 (mh-refile-or-write-again): Modify call to mh-next-msg to use the
822 wait-after-complaining-flag.
824 2003-03-10 Satyaki Das <satyaki@theforce.stanford.edu>
826 * mh-e.el (mh-refile-or-write-again): If mh-next-msg fails to find
827 a message to go to it prints out a diagnostic, which overwrites
828 the diagnostic about the folder the message was refiled to. The
831 2003-03-09 Satyaki Das <satyaki@theforce.stanford.edu>
833 * mh-seq.el (mh-widen, mh-narrow-to-seq): Update
834 mh-narrowed-to-seq before notating sequences. This is a bit
835 helpful for mh-tick.el.
836 (mh-put-msg-in-seq): Fix a minor bug. No internal sequence should
837 be notated -- the original code was doing the right thing only for
838 the "unseen" sequence.
840 * mh-index.el (mh-index-choose): Add autoload cookie for
841 mh-index-choose. This is needed for GNU Emacs 20.5.
843 * mh-loaddefs.el: Regenerated.
845 2003-03-09 Bill Wohler <wohler@newt.com>
847 * mh-mime.el (mh-display-smileys): This function originally had a
848 test to see if font-lock-maximum-size was bound, but this was
849 recently removed. The test was put in for a reason; if
850 font-lock-maximum-size isn't bound, void-variable errors would
851 ensue. I put the bound test back in.
853 2003-03-08 Steve Youngs <youngs@xemacs.org>
855 * mh-mime.el (mh-mime-security-button-map): Use 'mh-push-button'
858 2003-03-07 Satyaki Das <satyaki@theforce.stanford.edu>
860 * mh-xemacs-toolbar.el: Declare a whole bunch of stuff for GNU
861 Emacs, so that we don't get so many compiler warnings. Also
862 surround calls to set-specifier and toolbar-make-button-list with
863 mh-funcall-if-exists. Maybe GNU Emacs shouldn't try to compile
864 this file in the first place.
866 * mh-xemacs-compat.el (mh-modeline-glyph): Declare it within
867 mh-do-in-xemacs to avoid compiler warning in GNU Emacs.
868 (mh-xemacs-push-button): Removed.
870 * mh-mime.el (mh-mime-button-map): Use the generalized
871 mh-push-button function.
872 (mh-push-button): Enhance it so that it works on XEmacs too.
874 2003-03-08 Steve Youngs <youngs@xemacs.org>
876 * mh-xemacs-compat.el (mh-modeline-logo): New constant holding the
878 (mh-modeline-glyph): Use it.
880 2003-03-08 Steve Youngs <youngs@xemacs.org>
882 * mh-xemacs-toolbar.el: New file that defines and displays a
885 * mh-xemacs-compat.el (mh-xemacs-toolbar): Require it here.
887 * Makefile (MH-E-SRC): Add mh-xemacs-toolbar.el.
889 * mh-customize.el (mh-toolbar):
890 (mh-tool-bar-letter-buttons):
891 (mh-tool-bar-letter-buttons-set):
892 (mh-tool-bar-folder-buttons):
893 (mh-tool-bar-folder-buttons-set):
894 (mh-tool-bar-search-function):
895 (mh-tool-bar-reply-3-buttons-flag):
896 (mh-tool-bar-item-inc):
897 (mh-tool-bar-item-save-mime):
898 (mh-tool-bar-item-prev-msg):
899 (mh-tool-bar-item-page-msg):
900 (mh-tool-bar-item-next-msg):
901 (mh-tool-bar-item-delete):
902 (mh-tool-bar-item-refile):
903 (mh-tool-bar-item-undo):
904 (mh-tool-bar-item-perform):
905 (mh-tool-bar-item-toggle-show):
906 (mh-tool-bar-item-reply-from):
907 (mh-tool-bar-item-reply-to):
908 (mh-tool-bar-item-reply-all):
909 (mh-tool-bar-item-reply):
910 (mh-tool-bar-item-alias):
911 (mh-tool-bar-item-compose):
912 (mh-tool-bar-item-rescan):
913 (mh-tool-bar-item-repack):
914 (mh-tool-bar-item-search):
915 (mh-tool-bar-item-visit):
916 (mh-tool-bar-item-prefs):
917 (mh-tool-bar-item-help):
918 (mh-tool-bar-item-widen):
919 (mh-tool-bar-item-send):
920 (mh-tool-bar-item-attach):
921 (mh-tool-bar-item-spell):
922 (mh-tool-bar-item-save):
923 (mh-tool-bar-item-undo-op):
924 (mh-tool-bar-item-kill):
925 (mh-tool-bar-item-copy):
926 (mh-tool-bar-item-paste):
927 (mh-tool-bar-item-kill-draft):
928 (mh-tool-bar-item-comp-prefs):
929 The MH-E toolbar for XEmacs is defined differently from the
930 GNU/Emacs version, so only define these if we're in GNU/Emacs.
931 XEmacs doesn't need to see them and it's always good to cut down
934 2003-03-08 Steve Youngs <youngs@xemacs.org>
936 * mh-mime.el (mh-mime-button-map): Bind the 2nd mouse button to
937 `mh-xemacs-push-button' in XEmacs.
938 (mh-mime-security-button-map): Ditto.
940 * mh-xemacs-compat.el: Shush the byte-compiler.
941 (mh-xemacs-push-button): New function to make MIME buttons work in
944 2003-03-08 Steve Youngs <youngs@xemacs.org>
946 * mh-mime.el (mh-display-emphasis): Don't test
947 `font-lock-maximum-size' to see if it is bound, just test for a
948 non-nil value. This variable can have a nil value which makes it
949 bound and dividing nil by 8 throws an error.
950 This fixes a bug in MH-E under XEmacs when
951 `font-lock-maximum-size' is nil that prevented article emphasis
952 and smiley display which in turn was causing the "Flush changes in
953 article x y/n" errors.
954 (mh-display-smileys): Ditto.
956 2003-03-08 Steve Youngs <youngs@xemacs.org>
958 * mh-utils.el (mh-logo-display): Display logo in XEmacs as well.
960 * mh-xemacs-compat.el (mh-modeline-glyph): New. The MH-E modeline
963 2003-03-06 Satyaki Das <satyaki@theforce.stanford.edu>
965 * mh-utils.el (mh-allow-root-folder-flag): New global variable
966 that decides if "+" is an acceptable folder name.
967 (mh-folder-completion-function): Refine the test for existing
968 folders to take mh-allow-root-folder-flag into account.
969 (mh-folder-completing-read, mh-prompt-for-folder): Use the
970 allow-root-folder-flag argument of mh-prompt-for-folder and add a
971 similar argument to mh-folder-completing-read.
972 (mh-exec-cmd-error): Make the function nicer by using
973 process-environment to pass the environment variable assignments.
975 2003-03-05 Satyaki Das <satyaki@theforce.stanford.edu>
977 * mh-mime.el (mh-push-button): Preserve point in the show buffer
978 if the mouse is used to expand/contract a button.
980 * mh-customize.el (mh-x-face-file): Mention X-Image-URL in
983 * mh-comp.el (mh-insert-x-face): Modified to allow insertion of
984 X-Image-URL header field.
986 2003-03-04 Satyaki Das <satyaki@theforce.stanford.edu>
988 * mh-utils.el (mh-face-display-function): Modified to facilitate
989 display of X-Image-URL images.
990 (mh-find-path): Initialize X-Image-URL cache directory.
991 (mh-x-image-url-cache-canonicalize, mh-x-image-url-fetch-image)
992 (mh-x-image-scale-and-display, mh-x-image-url-display)
993 (mh-x-image-display): New functions for X-Image-URL image display
994 and cache management.
996 * mh-customize.el (mh-show-use-xface-flag): Add info about
997 requirements for X-Image-URL display.
998 (mh-fetch-x-image-url): New customizable variable that controls
999 fetching of X-Image-URL.
1001 2003-03-04 Satyaki Das <satyaki@theforce.stanford.edu>
1003 * mh-utils.el (mh-make-local-hook): New macro which works around
1004 API changes in add-hook. Version of GNU Emacs before 21.1 and
1005 XEmacs require a call to make-local-hook and just the LOCAL
1006 argument of add-hook is not sufficient.
1007 (mh-show-mode): Make kill-buffer-hook buffer local.
1009 * mh-e.el (mh-folder-mode): Same as above.
1011 * mh-comp.el (mh-compose-and-send-mail): Same as above.
1013 2003-03-02 Satyaki Das <satyaki@theforce.stanford.edu>
1015 * mh-mime.el (mh-push-button): Clicking on a MIME button used to
1016 cause the window with the show buffer to be selected. With this
1017 change the selected window doesn't change.
1019 2003-03-01 Satyaki Das <satyaki@theforce.stanford.edu>
1021 * mh-speed.el (mh-speed-flists): Avoid a potential race condition.
1022 When flists is called manually, or when an unseen message is read,
1023 mh-speed-partial-line was not reinitialized.
1025 * mh-e.el (mh-visit-folder): If mh-visit-folder is used to visit
1026 the folder currently being visited (effectively doing a rescan)
1027 then mh-previous-window-config is erroneously set. The change
1030 * mh-customize.el (mh-index-show-hook): Remove unused variable.
1032 2003-02-28 Satyaki Das <satyaki@theforce.stanford.edu>
1034 * mh-e.el (mh-scan-folder): Call mh-reset-threads-and-narrowing
1035 only after the user has replied to question. This avoids premature
1036 clearing of the folder.
1037 (mh-rescan-folder, mh-visit-folder): Remove calls to
1038 mh-reset-threads-and-narrowing since it is now called in
1039 mh-scan-folder anyway.
1041 * mh-funcs.el (mh-sort-folder): Same as above.
1043 2003-02-26 Satyaki Das <satyaki@theforce.stanford.edu>
1045 * mh-alias.el (mh-alias-alist): Change initial value to a symbol,
1046 so that it is different from the empty list, which could also
1047 mean that there are no aliases.
1048 (mh-alias-reload-maybe): Change test so that empty alist of
1049 aliases is properly handled (closes SF #693859).
1051 2003-02-25 Satyaki Das <satyaki@theforce.stanford.edu>
1053 * mh-mime.el (mh-decode-message-header): The message header could
1054 be encoded, for instance the author's name could contain
1055 characters not in ASCII. This function will decode such header
1057 (mh-mm-inline-message): Use mh-decode-message-header.
1059 * mh-utils.el (mh-display-msg): Use mh-decode-message-header.
1060 (mh-message-number-width): Use mh-scan-prog instead of "scan".
1062 * mh-loaddefs.el: Regenerated.
1064 2003-02-24 Satyaki Das <satyaki@theforce.stanford.edu>
1066 * mh-utils.el (mh-truncate-log-buffer): Refine it so that the
1067 function will do the right thing even if called from a buffer
1068 other than mh-log-buffer.
1070 2003-02-22 Peter S Galbraith <psg@debian.org>
1072 * mh-alias.el (mh-alias-add-alias): Really fix SF #690216.
1073 This functions needs to strip brackets on standalone addresses as
1076 2003-02-21 Satyaki Das <satyaki@theforce.stanford.edu>
1078 * mh-xemacs-compat.el (replace-regexp-in-string): Remove the
1079 definition since it isn't used any more.
1081 2003-02-20 Peter S Galbraith <psg@debian.org>
1083 * mh-alias.el (mh-alias-which-file-has-alias): Bug fix. Needed to
1084 specify `noerror' on search.
1086 * mh-alias.el (mh-alias-suggest-alias): Add condition for input
1087 string being an email address in brackets. We need to strip out
1088 the brackets. (closes SF #690216)
1090 2003-02-20 Satyaki Das <satyaki@theforce.stanford.edu>
1092 * mh-pick.el (mh-search-folder): The function was setting the
1093 global value of the variables mh-current-folder and
1094 mh-previous-window-config. This can lead to problems in code which
1095 assumes that these variables are nil when we aren't in a folder
1096 buffer. So make the variables local before setting them.
1098 2003-02-19 Satyaki Das <satyaki@theforce.stanford.edu>
1100 * mh-mime.el (mh-mime-display): All the MIME display code has been
1101 wrapped in a condition-case so that if something goes wrong, the
1102 raw message will be displayed.
1104 * mh-funcs.el (mh-undo-folder): Comment out call to sit-for that
1107 * mh-e.el (mh-scan-folder): Messages marked for deletion or
1108 refiling weren't getting annotated properly. The change fixes
1110 (mh-process-or-undo-commands): Change prompt to reflect what
1111 really happens in the code.
1113 2003-02-18 Satyaki Das <satyaki@theforce.stanford.edu>
1115 * mh-comp.el (mh-folder-expand-at-point): The function
1116 mail-abbrev-complete-alias often returns nil. This had the
1117 unfortunate consequence of always causing an error. The change
1120 * mh-alias.el (mh-alias-canonicalize-suggestion): New function
1121 which obviates the our need replace-regexp-in-string.
1122 (mh-alias-suggest-alias): Use mh-alias-canonicalize-suggestion to
1123 eliminate calls to replace-regexp-in-string. This avoids problems
1126 * mh-utils.el (mh-notate): Handle the case when nil is passed as
1127 notation gracefully.
1128 (mh-speed-flists-active-p): New function that returns non-nil if
1129 flists is being used in the speedbar to update message counts.
1131 * mh-seq.el (mh-put-msg-in-seq): Fix a bug which made it
1132 impossible to add messages to the unseen sequence. Also adding
1133 messages to the unseen sequence will now update the speedbar
1134 message counts immediately.
1136 * mh-e.el (mh-get-new-mail, mh-process-commands)
1137 (mh-undefine-sequence): Update speedbar message counts, if the
1138 speedbar is active and is displaying message counts.
1139 (mh-delete-msg-from-seq): In addition to updating message counts,
1140 unhighlight the message so that interactively removing messages
1141 from the unseen sequence makes the bold highlight of unseen
1142 messages in the scan buffer go away.
1143 (mh-clear-text-properties): New function that removes all text
1144 properties from the current scan line.
1146 2003-02-15 Satyaki Das <satyaki@theforce.stanford.edu>
1148 * mh-utils.el (mh-face-display-function): Wrap call of
1149 insert-image in mh-funcall-if-exists. This avoids a compiler
1152 * mh-speed.el (mh-speed-flists): Weaken test a bit to avoid
1153 compiler warning in Emacs20.
1154 (mh-speedbar-change-expand-button-char): Wrap call of
1155 speedbar-insert-image-button-maybe in mh-funcall-if-exists. This
1156 function isn't present in the speedbar that ships with Emacs20, so
1157 calling it there causes an error.
1159 * mh-seq.el (mh-msg-is-in-seq): Adjust loop call a bit to avoid
1160 compiler warning in XEmacs. The XEmacs compiler should be improved
1161 so that such spurious warnings from builtin macros are suppressed.
1163 * mh-index.el (mh-index-search): Same as above.
1165 * mh-e.el (tool-bar-mode): The declaration is needed for Emacs20
1168 * mh-comp.el (mailabbrev): Try loading it any way. Some day XEmacs
1169 will get it and then MH-E will just use it.
1170 (tool-bar-mode, tool-bar-map): These declarations are needed for
1172 (mh-mail-abbrev-make-syntax-table, mh-folder-expand-at-point):
1173 Remove mh-mail-abbrev-make-syntax-table since mh-funcall-if-exists
1174 can be used instead.
1176 * mh-alias.el (require): Avoid autoloading functions that may not
1178 (mh-read-address, mh-alias-letter-expand-alias): Rewrite using
1179 mh-funcall-if-exists.
1181 2003-02-15 Satyaki Das <satyaki@theforce.stanford.edu>
1183 * mh-loaddefs.el: Regenerated.
1185 * mh-speed.el (mh-folder-speedbar-buttons, mh-speed-add-buttons)
1186 (mh-speed-toggle): Reuse markers instead of creating more of them.
1187 (mh-speed-flists-folder, mh-speed-flists): Add optional folder
1188 argument to mh-speed-flists so that message counts are updated
1189 only for that one folder.
1190 (mh-speed-parse-flists-output): If no change in counts then avoid
1193 * mh-index.el (mh-index-execute): Rewritten to use a temporary
1194 buffer that is not left behind.
1196 * mh-funcs.el (mh-store-buffer): Use mh-log-buffer instead of the
1197 special purpose *Store Output* buffer.
1199 2003-02-14 Satyaki Das <satyaki@theforce.stanford.edu>
1201 * mh-customize.el (mh-show-xface-face): Make it always be black
1202 foreground on a white background (the reverse of that can make
1203 some X-Face images look creepy).
1205 * mh-utils.el (mh-truncate-log-buffer): Modify the function to
1206 return the current size of mh-log-buffer. Also we are now a bit
1207 more careful in adding separators between consecutive messages.
1208 (mh-exec-cmd): Fix a bug where the the log buffer would be
1209 displayed even if no error happened in the current command but
1210 the log buffer had messages from a previous error.
1212 * mh-mime.el (mh-mime-save-parts): Use mh-log-buffer to show
1215 * mh-alias.el (mh-alias-local-users): Add a space between parens.
1217 2003-02-14 Steve Youngs <youngs@xemacs.org>
1219 * mh-utils.el (mh-face-display-function): Call
1220 `x-face-xmas-wl-display-x-face' using `mh-funcall-if-exists'.
1222 * mh-xemacs-compat.el (replace-regexp-in-string): New.
1224 2003-02-13 Satyaki Das <satyaki@theforce.stanford.edu>
1226 * mh-utils.el (mh-log-buffer-lines): New variable that keeps
1227 track of the number of lines to keep in mh-log-buffer.
1228 (mh-truncate-log-buffer): New function that is used to make sure
1229 that the log buffer doesn't grow to unbounded size.
1230 (mh-exec-cmd, mh-exec-cmd-daemon, mh-handle-process-error): Use
1231 mh-truncate-log-buffer instead of erase-buffer to keep some
1232 number of previous log messages around (closes SF #685476).
1234 2003-02-13 Satyaki Das <satyaki@theforce.stanford.edu>
1236 * mh-e.el (tool-bar-mode): Declare it in XEmacs.
1237 (mh-folder-mode): Use mh-funcall-if-exists to call hl-line-mode.
1239 * mh-utils.el (mh-funcall-if-exists): New macro that calls a
1240 function only if it exists.
1241 (mh-logo-display, mh-defun-show-buffer): Use mh-funcall-if-exists
1242 to call the functions find-image and deactivate-mark.
1244 * mh-mime.el (mh-mime-cleanup, mh-small-image-p)
1245 (mh-mm-display-part): Use mh-funcall-if-exists to call the
1246 functions image-size and remove-images.
1248 * mh-comp.el (tool-bar-map, tool-bar-mode): Declare the variables
1250 (mh-folder-expand-at-point): Use mh-funcall-if-exists to call
1251 mail-abbrev-complete-alias if it exists.
1253 * mh-alias.el (mh-read-address): Use mh-funcall-if-exists for
1254 future extensibility.
1256 2003-02-13 Satyaki Das <satyaki@theforce.stanford.edu>
1258 * mh-utils.el (mh-logo-display): The function find-image is
1259 present only in GNU Emacs.
1260 (mh-defun-show-buffer): The function deactivate-mark is present
1262 (default-enable-multibyte-characters): Declare it in XEmacs to
1263 avoid compiler warning.
1264 (mh-face-display-function): Avoid inserting space if there isn't
1265 any Face or X-Face header field to display.
1267 * mh-seq.el (mh-thread-last-ancestor): Move declaration of
1268 variable before its first use to silence XEmacs warning.
1270 * mh-mime.el (default-enable-multibyte-characters, dots, type):
1271 Declare these in XEmacs to remove compiler warnings in XEmacs.
1272 (mh-mime-cleanup, mh-mm-display-part): Call remove-images only in
1274 (mh-small-image-p): Call image-size only in GNU Emacs.
1276 * mh-index.el (mh-mairix-next-result): Fix a bug where a quote
1278 (mh-swish++-regexp-builder): Remove the unused binding meta.
1280 * mh-e.el (mh-folder-size): Pass on an extra value to remove
1282 (mh-folder-mode): Surround calls to hl-line-mode and
1283 tool-bar-mode with mh-do-in-gnu-emacs since these functions
1284 aren't present in XEmacs.
1286 * mh-customize.el (mh-tool-bar-show-set, mh-tool-bar-letter-set)
1287 (mh-tool-bar-folder-set): These functions call tool-bar-*
1288 functions which are present only in GNU Emacs. So surround them
1289 with mh-do-in-gnu-emacs.
1291 * mh-comp.el (mh-letter-mode, mh-folder-expand-at-point): Only
1292 call these functions in GNU Emacs.
1293 (mail-abbrevs): Declare it in XEmacs.
1295 * mh-alias.el (mh-read-address): Call completing-read-multiple
1297 (mail-abbrevs): Declare it in XEmacs.
1298 (mh-alias-add-alias-to-file): Remove unused code.
1300 2003-02-14 Ville Skyttä <scop@xemacs.org>
1302 * mh-comp.el: Add autoloaded auto-mode-alist association.
1304 2003-02-13 Satyaki Das <satyaki@theforce.stanford.edu>
1306 * mh-utils.el (mh-face-display-function): Make the XEmacs part a
1309 2003-02-14 Steve Youngs <youngs@xemacs.org>
1311 * mh-customize.el (mh-show-xface-face): XEmacs doesn't have the
1312 ':inherit' keyword for defface, rewrite with sane defaults.
1314 * mh-utils.el (mh-face-display-function): Fix bug that was
1315 corrupting xface images when displayed with XEmacs' internal
1316 xface image support. Also make XEmacs honour 'mh-show-xface-face'
1317 when using internal xface image support.
1319 2003-02-12 Peter S Galbraith <psg@debian.org>
1321 * mh-comp.el (mh-modify-header-field): New function. To header
1322 FIELD add VALUE. If OVERWRITE-FLAG is non-nil then the old value,
1323 if present, is discarded. This is more flexible than before.
1324 (mh-insert-auto-fields): Use it. This and the new function are a
1325 courtesy of Satyaki. Thanks!
1327 * mh-customize.el (mh-auto-fields-list): Doc tweaks suggested by
1330 2003-02-12 Satyaki Das <satyaki@theforce.stanford.edu>
1332 * mh-comp.el (mh-folder-expand-at-point): Tweak the error
1333 message. Completion in the Fcc header field is only supported in
1336 2003-02-12 Peter S Galbraith <psg@debian.org>
1338 * mh-customize.el (mh-auto-fields-list): Reorder after
1339 `mh-identity-list' since it needs it to be defined. Move to
1340 mh-identity customization group.
1342 2003-02-11 Peter S Galbraith <psg@debian.org>
1344 * mh-customize.el (mh-insert-mail-followup-to-flag): Removed.
1346 (mh-insert-mail-followup-to-list): Removed. Obsolete. Use
1347 `mh-auto-fields-list' instead, which is a more general solution.
1348 (mh-auto-fields-list): New defcustom. Alist of addresses for
1349 which header lines are automatically inserted. Replaces
1350 `mh-insert-mail-followup-to-list'.
1352 * mh-comp.el (mh-insert-mail-followup-to): Removed. Obsolete.
1353 (mh-insert-auto-fields): New function. Insert custom fields if To
1354 or Cc match `mh-auto-fields-list', replacing
1355 mh-insert-mail-followup-to with a more general solution.
1356 (mh-compose-and-send-mail): Call mh-insert-auto-fields instead of
1357 mh-insert-mail-followup-to. Also don't call mh-insert-identity to
1358 insert default setting if mh-insert-auto-fields inserted an
1361 2003-02-11 Satyaki Das <satyaki@theforce.stanford.edu>
1363 * mh-utils.el (mh-show-xface-function): Try to load the external
1364 x-face library only if XEmacs doesn't have xface support.
1365 (mh-face-display-function): Renamed. Also handle various
1366 permutations of x-face and xface support in XEmacs better.
1368 * mh-customize.el (mh-show-use-xface-flag): Any emacs whose
1369 major version is greater than or equal to 21 supports display of
1370 X-Face and Face header fields.
1372 2003-02-11 Satyaki Das <satyaki@theforce.stanford.edu>
1374 * mh-utils.el (mh-do-in-gnu-emacs, mh-do-in-xemacs): Macros that
1375 execute code only in GNU Emacs and XEmacs respectively.
1376 (mh-emacs21-face-display-function): Refactor to make it slightly
1377 nicer. Get rid of compiler warnings in GNU Emacs by using the
1378 above macros. Also check for presence of xface feature (in XEmacs
1379 specific code) before trying to display X-Face header field image.
1381 2003-02-11 Steve Youngs <youngs@xemacs.org>
1383 * mh-customize.el (mh-show-use-xface-flag): If using XEmacs and
1384 can't find the external x-face pkg still enable X-Face images if
1385 feature 'xface is present.
1386 Update the doc string.
1388 * mh-utils.el (mh-emacs21-face-display-function): Make it work in
1390 (mh-show-xface-function): If using XEmacs without xface support,
1391 use x-face.el pkg. If using XEmacs with xface support, or Emacs
1392 21, use mh-emacs21-face-display-function.
1394 2003-02-11 Mark D. Baushke <mdb@gnu.org>
1396 * mh-customize.el (mh-invisible-header-fields): Add
1397 "X-Notes-Item:" which is generated by Lotus Notes Domino. See
1398 URL<http://www-12.lotus.com/ldd/doc/domino_notes/Rnext/help6_admin.nsf
1399 /f4b82fbb75e942a6852566ac0037f284/5eda03c647f879c285256c1d00396051
1400 ?OpenDocument&Highlight=0,x-notes-item> for details on how Domino
1401 users may disable (restore the default) generation of these headers.
1403 2003-02-10 Satyaki Das <satyaki@theforce.stanford.edu>
1405 * mh-comp.el (mh-folder-expand-at-point): Add function doc string
1406 and produce a nicer error message for Emacs versions that lack
1407 mail-abbrev-complete-alias.
1409 * mh-utils.el (mh-handle-process-error): Check doc fix.
1411 * mh-e.el (mh-folder-from-address): Same as above.
1413 2003-02-10 Peter S Galbraith <psg@debian.org>
1415 * mh-comp.el: require mailabbrev, except in XEmacs.
1416 (mh-mail-abbrev-make-syntax-table): New defmacro to call
1417 mail-abbrev-make-syntax-table introduced in Emacs21.
1418 (mh-folder-expand-at-point): Handle nested folders.
1419 All of the above was written by Satyaki. I just applied the patch
1422 2003-02-09 Satyaki Das <satyaki@theforce.stanford.edu>
1424 * mh-comp.el: Fixes to keep the byte compiler happy.
1426 * mh-customize.el (mh-invisible-header-fields): Modified to
1427 remove space after ":" in header field names.
1429 2003-02-09 Peter S Galbraith <psg@mixed.dyndns.org>
1431 * mh-comp.el (mh-letter-complete): Add completion for fcc lines.
1432 (mh-folder-expand-at-point): Do completion at point for folder
1433 name. Like `mh-alias-letter-expand-alias' for aliases, it doesn't
1434 work on XEmacs because it relies on `mail-abbrev-complete-alias'
1435 to do completion. Maybe Steve could update XEmacs' mailabbrev.el?
1437 2003-02-09 Peter S Galbraith <psg@debian.org>
1439 * mh-customize.el (mh-invisible-header-fields): Remove trailing
1440 space in "X-Face: " and "Face: " entries since those line often
1443 2003-02-08 Satyaki Das <satyaki@theforce.stanford.edu>
1445 * mh-utils.el (mh-emacs21-face-display-function): Use
1446 mh-show-xface-face to colorize X-Face image.
1448 * mh-customize.el (mh-invisible-header-fields): Add extra headers
1450 (mh-show-xface-face): Allow customization of the X-Face colors.
1452 2003-02-07 Satyaki Das <satyaki@theforce.stanford.edu>
1454 * mh-utils.el (mh-uncompface-executable, mh-uncompface): Remember
1455 the path of the uncompface executable so that we don't need to
1456 search for it every time.
1457 (mh-emacs21-face-display-function): If more than one X-Face (or
1458 Face) header field was present then the fields would get
1459 concatenated, leading to garbled output. The change only displays
1462 * mh-customize.el (mh-x-face-file): Change documentation since it
1463 can now be used to insert a Face header field.
1465 * mh-comp.el (mh-insert-x-face): Generalized to allow insertion
1466 of Face header field.
1468 2003-02-06 Bill Wohler <wohler@newt.com>
1470 * mh-utils.el (mh-emacs21-face-display-function): Updated
1471 docstring. It is a common mistake to refer to a header field as a
1472 header. The term header refers to the entire header while the term
1473 header field refers to a single field.
1475 * mh-customize.el (mh-show-use-xface-flag): Ditto.
1477 2003-02-06 Satyaki Das <satyaki@theforce.stanford.edu>
1479 * mh-utils.el (mh-show-xface-function): Modified to use
1480 mh-emacs21-face-display-function if we are running GNU Emacs 21.
1481 (mh-face-to-png): New function to convert a Face header to a png
1483 (mh-uncompface): New function which converts an X-Face header to
1485 (mh-icontopbm): New function that does the job of icontopbm.
1486 (mh-emacs21-face-display-function): New function that displays
1487 Face/X-Face image in GNU Emacs 21.
1488 (mh-show-xface): Modified to test if we are running in X.
1489 Otherwise face display is suppressed.
1491 * mh-customize.el (mh-show-use-xface-flag): Tweak it, now that
1492 MH-E supports face display natively on Emacs 21. Also remove the
1493 check for window-system since it doesn't belong in a customizable
1496 2003-02-06 Satyaki Das <satyaki@theforce.stanford.edu>
1498 * mh-utils.el (sendmail): Require it so that XEmacs can find
1500 (mh-mail-header-end): A substitute for mail-header-end that
1501 doesn't widen the buffer. This is essential to avoid problems when
1502 dealing with nested messages.
1503 (mh-in-header-p, mh-letter-header-font-lock)
1504 (mh-header-field-font-lock, mh-show-font-lock-fontify-region)
1505 (mh-show-unquote-From): Use mh-mail-header-end instead of
1508 * mh-mime.el (mh-decode-message-body): same as above (closes SF
1511 * mh-comp.el (mh-yank-cur-msg): same as above.
1513 2003-02-05 Satyaki Das <satyaki@theforce.stanford.edu>
1515 * mh-utils.el (mh-display-msg): Call mh-show-mode before invisible
1516 headers are cleaned. This means that any surviving X-Face header
1517 can be removed unconditionally in mh-clean-msg-header.
1518 (mh-clean-msg-header): Since the function is now called with a
1519 read-only buffer, make the buffer temporarily writable.
1521 * mh-mime.el (mh-mm-inline-message): Do X-Face display before
1522 invisible headers are removed.
1524 * mh-customize.el (mh-invisible-headers): Simplified since the
1525 X-Face header isn't treated specially any more.
1526 (mh-invisible-header-fields): Add Face: and X-Face: to list of
1529 * mh-mime.el (mh-mime-display): If body is empty the headers would
1530 be treated like the body. The change fixes this (closes SF #681162).
1531 (mh-mime-display): This change really fixes the above problem.
1533 2003-02-04 Satyaki Das <satyaki@theforce.stanford.edu>
1535 * mh-utils.el (mh-current-folder-name): Global variable that
1536 keeps track of current folder.
1537 (mh-normalize-folder-name): Substitute @ with
1538 mh-current-folder-name (closes SF #666774).
1539 (mh-prompt-for-folder): Bind mh-current-folder-name. Also
1540 invalidate cache if we are visiting a folder that wasn't found in
1541 the sub-folder cache. This is an indication that folders may have
1542 been created outside of MH-E and so the cache may be stale.
1544 2003-02-03 Satyaki Das <satyaki@theforce.stanford.edu>
1546 * mh-utils.el (mh-decode-content-transfer-encoded-message): Removed.
1547 (mh-display-msg): Remove the use of the above function.
1548 (mh-normalize-folder-name): Leading "/" characters were being
1549 lost. The change fixes this (closes SF #676890).
1551 * mh-mime.el (mh-decode-message-body): New function, factored out
1552 from mh-mime-display and enhanced, to decode message based on
1553 charset and content-transfer-encoding. This eliminates the need
1554 for the external mimencode (closes SF #674857).
1555 (mh-mime-display): Use mh-decode-message-body.
1557 * mh-e.el (mh-header-display): Don't need the binding since the
1558 variable isn't present any more.
1559 (mh-inc-folder): Avoid calling mh-show if point is not on a valid
1560 scan line (closes SF #678115).
1563 (mh-decode-content-transfer-encoded-message-flag): Removed.
1565 2003-02-03 Bill Wohler <wohler@newt.com>
1567 * import-emacs: MH-E now has its own directory in Emacs.
1569 * mh-e.el: (mh-version): Set to 7.2+cvs.
1571 2003-02-03 Bill Wohler <wohler@newt.com>
1573 * Released MH-E version 7.2.
1575 * MH-E-NEWS, README: Updated for release 7.2.
1577 * mh-e.el (Version, mh-version): Updated for release 7.2.
1579 2003-02-03 Bill Wohler <wohler@newt.com>
1581 * Makefile (dist): mkdir needs to happen *before* files are
1584 * MH-E-NEWS: Fixed some awkward verbiage.
1586 2003-02-02 Bill Wohler <wohler@newt.com>
1588 * mh-customize.el (mh-invisible-headers): Surround regexp-opt
1589 expression in parens to avoid problems viewing certain messages.
1591 2003-01-30 Satyaki Das <satyaki@theforce.stanford.edu>
1593 * mh-speed.el (mh-speed-flists): Search for flists in mh-progs.
1594 The original was inadvertently searching for flists in the user's
1597 2003-01-27 Bill Wohler <wohler@newt.com>
1599 * mh-customize.el (mh-default-folder-must-exist-flag): Changed
1600 default to t according to the principle of least surprise.
1602 2003-01-26 Bill Wohler <wohler@newt.com>
1604 * mh-utils.el: Checkdoc fixes.
1606 * mh-pick.el (mh-do-search, mh-search-folder): Checkdoc fixes.
1608 * mh-loaddefs.el: Regenerated (lm-verify fixes).
1610 * mh-index.el (mh-mairix-next-result): Checkdoc fixes.
1612 * mh-alias.el: lm-verify fix.
1614 * Makefile (MH-E-SRC): Added ChangeLog, now that Emacs has a
1615 lisp/mh-e directory.
1616 (MH-E-ETC-ETC): Removed ChangeLog.
1617 (dist): Moved creation of mail directory next to copy of files
1618 into mail directory.
1619 (install-emacs): Copy $(MH-E-SRC) into new directory
1620 $(EMACS_HOME/lisp/mh-e.
1621 (MH-E-SRC): Moved ChangeLog into new variable MH-E-OTHERS and
1622 include MH-E-LOADDEFS there too.
1623 (mh-loaddefs.el): Added lines so that lm-verify passes.
1624 (dist, install-emacs): Use MH-E-OTHERS instead of MH-E-LOADDEFS.
1626 2003-01-26 Jeffrey C Honig <jch@honig.net>
1628 * mh-comp.el (mh-tidy-draft-buffer, mh-compose-and-send-mail):
1629 Rename mh-kill-draft-hook to mh-tidy-draft-buffer.
1631 2003-01-25 Jeffrey C Honig <jch@honig.net>
1633 * mh-utils.el (mh-exec-cmd, mh-exec-cmd-daemon)
1634 (mh-process-daemon): Use mh-log-buffer for the output of commands
1637 * mh-utils.el (mh-temp-folders-buffer): Sequences and folders
1638 loose the -temp from their buffer names as they are interesting to
1641 * mh-seq.el (mh-list-sequences): New name, mh-sequences-buffer as
1642 it is intended to be interesting to the user.
1644 * mh-funcs.el (mh-list-folders): New name, mh-folders-buffer as it
1645 is intended to be interesting to the user.
1647 * mh-comp.el (mh-check-whom, mh-compose-and-send-mail): Use
1648 mh-recipients-buffer constant. Add a kill buffer hook to delete
1649 the recipients buffer when a draft buffer is killed.
1651 2003-01-25 Satyaki Das <satyaki@theforce.stanford.edu>
1653 * mh-customize.el (mh-customize): New interactive argument
1654 deletes other windows.
1655 (mh-tool-bar-show-set, mh-tool-bar-letter-set)
1656 (mh-tool-bar-folder-set): Modified so that clicking the customize
1657 and help buttons deletes the other windows in the frame.
1659 * mh-mime.el (mh-mm-inline-message): Remove unused code.
1661 * mh-seq.el (mh-notate-deleted-and-refiled): Fix a small bug where
1662 the wrong notation was being used.
1663 (mh-toggle-threads): The function had a bug if you did the
1664 following starting from an unthreaded wide folder:
1665 (1) Create a sequence with S p
1666 (2) Narrow to new sequence with S n
1667 (3) Thread narrowed folder with T t
1668 (4) Kill sequence with S k
1669 (5) Unthread narrowed folder with T t
1670 At this point we would have an empty folder. The change fixes
1672 (mh-toggle-threads): Fix documentation.
1674 * mh-customize.el (mh-invisible-header-fields): Add
1675 X-MHE-Checksum to invisible headers.
1677 * mh-comp.el (mh-insert-x-mailer): Slightly more informative
1680 2003-01-24 Satyaki Das <satyaki@theforce.stanford.edu>
1682 * mh-e.el (mh-header-display): Modified so that quoted-printable
1683 or base64 encoded messages are left untouched.
1685 * mh-utils.el (mh-decode-content-transfer-encoded-message): Munge
1686 the Content-Transfer-Encoding header so that the MIME decoding
1687 routines of Gnus doesn't get confused.
1688 (mh-display-msg): Use insert-file-contents-literally so that
1689 display will work for non-ascii.
1691 * mh-mime.el (mh-mime-display): Use charset info to decode
1692 message file (closes SF #655123).
1694 2003-01-24 Bill Wohler <wohler@newt.com>
1696 * mh-alias.el (mh-alias-add-alias-to-file): Removed period from
1697 error message and added parens around error function.
1699 2003-01-24 Satyaki Das <satyaki@theforce.stanford.edu>
1701 * mh-customize.el (mh-decode-quoted-printable-flag): Removed.
1702 (mh-decode-content-transfer-encoded-message-flag): This replaces
1703 mh-decode-quoted-printable-flag.
1705 * mh-utils.el (mh-decode-content-transfer-encoded-message): New
1706 function which handles messages that are encoded as base64 or
1707 quoted-printable (closes SF #674190).
1708 (mh-decode-quoted-printable): Removed.
1709 (mh-display-msg): Use mh-decode-content-transfer-encoded-message
1710 instead of mh-decode-quoted-printable.
1712 2003-01-23 Satyaki Das <satyaki@theforce.stanford.edu>
1714 * mh-seq.el (mh-thread-generate-scan-lines): Fix a little bug
1715 that would occasionally cause angles ('<' and '>') to appear at
1718 2003-01-21 Satyaki Das <satyaki@theforce.stanford.edu>
1720 * mh-seq.el (mh-notate-cur): Enable overlay arrow display in text
1723 * mh-e.el (mh-folder-mode): Initialize overlay-arrow-string so
1724 that a '>' is displayed in text mode.
1726 2003-01-20 Satyaki Das <satyaki@theforce.stanford.edu>
1728 * mh-utils.el (mh-scan-msg-overflow-regexp): Change the variable
1729 so that a space is always maintained in the beginning of the scan
1732 * mh-seq.el (mh-notate-seq, mh-notate-cur): Make the functions
1733 faster by cutting down on the use of mh-goto-msg.
1734 (mh-toggle-threads): Add call to mh-notate-cur, since inserting
1735 the folder names in a search results folder screws up the
1736 location of the overlay arrow.
1738 * mh-index.el (mh-index-delete-folder-headers): Position the
1739 point on a message line if possible.
1741 * mh-funcs.el (mh-copy-msg): Use the mh-iterate macro to make the
1744 * mh-e.el (mh-scan-folder): Reuse mh-notate-deleted-and-refiled.
1746 * mh-loaddefs.el: Regenerated.
1748 * mh-utils.el (mh-add-msgs-to-seq): Add a new parameter that
1749 suppresses the annotation of the sequence since it is
1752 * mh-seq.el (mh-delete-seq): Speed up the part of the function
1753 that removes the sequence notation.
1754 (mh-put-msg-in-seq, mh-notate-deleted-and-refiled): Use
1755 mh-iterate-on-messages-in-region to make the function fasters when
1756 operating on regions. The key idea is to loop over the folder
1757 buffer exactly once and do all annotations. The existing algo
1758 would walk over the buffer multiple times thereby slowing things
1760 (mh-iterate-on-messages-in-region): Added an extra parameter which
1761 is bound to the message index as the loop is executed.
1762 (mh-region-to-msg-list, mh-thread-delete, mh-thread-refile): Use
1763 the new mh-iterate-on-messages-in-region macro.
1765 * mh-e.el (mh-delete-msg-no-motion, mh-refile-msg, mh-undo): Same
1767 (mh-notate-user-sequences): Change algorithm to make notating of
1768 user sequences fast.
1770 2003-01-19 Satyaki Das <satyaki@theforce.stanford.edu>
1772 * mh-logo.xpm: New image file that contains the MH-E logo.
1773 Change foreground color to the blue in the MH-E logo.
1775 * Makefile (MH-E-IMG): Add mh-logo.xpm to list of image files.
1777 * mh-utils.el (mh-show-buffer-mode-line-buffer-id): Adjust it to
1778 keep space in the beginning for the logo.
1779 (mh-logo-cache): New variable that caches the logo image file
1781 (mh-logo-display): Display the MH-E logo on the mode line.
1782 (mh-display-msg): Display logo in mh-show-mode.
1784 * mh-e.el (mh-make-folder-mode-line): Display logo in
1787 * mh-comp.el (mh-compose-and-send-mail): Display logo in
1790 * mh-loaddefs.el: Regenerated.
1792 * mh-seq.el (mh-iterate-on-messages-in-region): New macro to
1793 iterate on all messages in a region.
1794 (mh-region-to-msg-list): Simplified since it uses
1795 mh-iterate-on-messages-in-region now.
1797 * mh-e.el (mh-delete-msg, mh-refile-msg): Change interactive spec
1798 to pass the region that is to be deleted when appropriate.
1799 (mh-delete-msg-no-motion, mh-refile-msg, mh-undo): Operate on
1800 regions directly without creating the list of messages to be
1802 (mh-delete-a-msg, mh-refile-a-msg, mh-undo-msg): The msg
1803 parameter in these functions can now be nil. If so, the current
1804 message is deleted, refiled or undone respectively. Avoids the
1805 use of mh-goto-msg in this case and speeds up operations on
1806 regions quite a bit.
1808 2003-01-19 Peter S Galbraith <psg@debian.org>
1810 * mh-alias.el (mh-read-address): Bug Fix. In XEmacs and Emacs20,
1811 it would always prompt using "To: " instead of using the command
1812 argument (closes SF #670913).
1814 2003-01-19 Satyaki Das <satyaki@theforce.stanford.edu>
1816 * mh-utils.el (mh-folder-completion-function): If there is a
1817 +foo/bar folder and the user types foo//bar then the completion
1818 function would say a match happened without showing the
1819 normalized folder name. This change fixes that.
1821 2003-01-18 Satyaki Das <satyaki@theforce.stanford.edu>
1823 * mh-e.el (mh-rmail): Modified so that new and unseen messages
1824 are shown (closes SF #667542).
1826 2003-01-17 Satyaki Das <satyaki@theforce.stanford.edu>
1828 * mh-index.el (mh-index-generate-pretty-name): Generate nicer
1829 names. In particular all '-' characters are removed.
1831 2003-01-16 Satyaki Das <satyaki@theforce.stanford.edu>
1833 * mh-customize.el (mh-index-program): Documentation fix.
1835 * mh-loaddefs.el: Regenerated.
1837 * mh-customize.el (mh-index-program): Add choices for mairix and
1840 * mh-index.el (mh-indexer-choices): Add search interfaces for
1842 (mh-index-search): Add links for mairix and pick.
1843 (mh-index-pick-folder, mh-pick-binary): Variables needed to
1844 implement pick support.
1845 (mh-pick-execute-search, mh-pick-next-result): New functions to
1846 implement pick support.
1847 (mh-mairix-binary, mh-mairix-directory, mh-mairix-folder): New
1848 variables for mairix support.
1849 (mh-mairix-execute-search, mh-mairix-next-result)
1850 (mh-mairix-regexp-builder, mh-mairix-convert-to-sop*): New
1851 functions for mairix.
1853 * mh-funcs.el (mh-kill-folder): Move message to the end.
1855 * mh-e.el (mh-folder-mode): Make overlay-arrow-position and
1856 overlay-arrow-string local variables so that the arrow will
1857 remain even if some other folder is visited.
1858 (mh-remove-cur-notation, mh-remove-all-notation): The test isn't
1859 required any more since overlay-arrow-position is local.
1860 (mh-goto-cur-msg): Remove overlay arrow if current message
1863 * mh-seq.el (mh-notate-cur): Don't need to set
1864 overlay-arrow-string any more since it is local and has been set
1867 2003-01-15 Satyaki Das <satyaki@theforce.stanford.edu>
1869 * mh-speed.el (mh-speed-current-folder): Keep track of current
1870 folder when flists is called.
1871 (mh-speed-flists, mh-speed-parse-flists-output): Try to avoid
1872 ambiguity when folders are present with + at the end of the name.
1873 Unfortunately it can't always be avoided.
1875 * mh-e.el (mh-folder-size): Remove the unnecessary error check.
1876 (mh-parse-flist-output-line): Add extra argument which
1877 occasionally avoid problems with folder names that end with '+'.
1879 * mh-utils.el (mh-sub-folders-actual): Fix the folder name
1880 parsing so that it doesn't get confused by trailing '+' chars in
1883 2003-01-14 Satyaki Das <satyaki@theforce.stanford.edu>
1885 * mh-utils.el (mh-normalize-folder-name): Enhanced so that it can
1886 now handle ".." and "." correctly during folder name completion.
1887 (mh-normalize-folder-name): Avoid error in boundary condition
1888 where the folder string is empty.
1890 2003-01-14 Mark D. Baushke <mdb@gnu.org>
1892 * mh-e.el (mh-visit-folder): Pass `current-prefix-arg' to
1893 the `mh-read-msg-range' function as the optional
1896 2003-01-14 Satyaki Das <satyaki@theforce.stanford.edu>
1898 * mh-utils.el (mh-normalize-folder-name): New function that
1899 normalizes folder names.
1900 (mh-sub-folders): Use mh-normalize-folder-name. Also the function
1901 has been modified so that a trailing slash is only added if the
1902 folder potentially has subfolders.
1903 (mh-sub-folders-actual): Simplified since the folder has already
1904 been normalized in mh-sub-folders.
1905 (mh-remove-from-sub-folders-cache): Modified so that the cached
1906 results of two of the folders ancestors are invalidated.
1907 (mh-folder-completion-map): Ugly hack to make the error go away
1908 when minibuffer-complete-word is called.
1909 (mh-folder-completion-function): The completion function will now
1910 be more selective in adding '/' at the end of completed folder
1912 (mh-folder-completing-read): The folder name is normalized before
1913 return. The minibuffer-local-completion-map is shadowed to avoid
1914 error with SPC (bound to minibuffer-complete-word). We really
1915 need a better solution.
1917 2003-01-13 Bill Wohler <wohler@newt.com>
1919 * mh-seq.el: Edited comment and docstring text to conform with RFC
1920 2822 terminology. Message-ID is the header field. It contains a
1923 2003-01-13 Satyaki Das <satyaki@theforce.stanford.edu>
1925 * mh-utils.el (mh-sub-folders): Add an argument that returns
1926 sub-folders with a / character appended at the end.
1927 (mh-folder-completion-function): Modify the function so that one
1928 tab is now sufficient to complete the folder name and add a
1930 (mh-folder-completing-read): Remove the trailing / that the
1931 completion function now adds to the folder name. Also multiple /
1932 characters in the folder input are removed. So if the user inputs
1933 +foo///bar//baz///// then that will be converted to +foo/bar/baz.
1934 This will improve the performance of caching.
1936 * mh-seq.el (mh-notate-cur): Check that a valid current message
1937 exists before trying to notate (closes SF #667331).
1938 (mh-message-id-regexp): New variable to store regexp to recognize
1940 (mh-thread-generate): Use mh-message-id-regexp to filter out non
1941 message-id's from the References: header.
1943 2003-01-12 Satyaki Das <satyaki@theforce.stanford.edu>
1945 * mh-seq.el (mh-notate-cur): Disable overlay-arrow display if we
1946 aren't on a graphic display.
1948 2003-01-11 Satyaki Das <satyaki@theforce.stanford.edu>
1950 * mh-seq.el (mh-notate-cur): New function to notate the current
1951 message. The marker in the fringe is updated too.
1952 (mh-narrow-to-seq, mh-widen, mh-thread-inc, mh-thread-folder): Use
1953 the specialized function mh-notate-cur instead of mh-notate-seq.
1955 * mh-e.el (mh-arrow-marker): New buffer local variable to store
1956 the position where the marker in the fringe is going to be
1957 displayed (closes SF #664824).
1958 (mh-folder-mode): Create a marker for the fringe.
1959 (mh-update-sequences, mh-get-new-mail, mh-goto-cur-msg): Call the
1960 specialized function mh-notate-cur instead of mh-notate-seq or
1962 (mh-remove-cur-notation, mh-remove-all-notation): Reset the
1963 overlay-arrow-position if needed.
1965 * mh-loaddefs.el: Regenerated.
1967 2003-01-10 Satyaki Das <satyaki@theforce.stanford.edu>
1969 * mh-utils.el (mh-remove-from-sub-folders-cache): Modified so that
1970 creating nested folders doesn't produce inconsistent results.
1971 (mh-prompt-for-folder): Remove call of mh-folder-list-change-hook.
1973 * mh-funcs.el (mh-kill-folder): Don't ask for confirmation if
1974 called on a folder holding index search results. Also the now
1975 removed mh-folder-list-change-hook is called no more.
1977 * mh-customize.el (mh-auto-folder-collect-flag)
1978 (mh-folder-list-change-hook): Removed.
1980 * mh-loaddefs.el: Regenerated.
1982 2003-01-10 Bill Wohler <wohler@newt.com>
1984 * mh-customize.el (mh-default-folder-must-exist-flag): New
1985 variable to suppress suggested folder if the folder doesn't
1986 already exist (closes SF #657096).
1987 (mh-default-folder-list): New variable that
1988 holds mapping between an address and the desired folder for
1989 filing (closes SF #657096).
1990 (mh-default-folder-prefix, mh-default-folder-must-exist-flag): In
1991 docstring, refer to documentation for mh-prompt-for-refile-folder
1992 and mh-folder-from-address.
1993 (mh-highlight-citation-p, mh-compose-insertion,
1994 (mh-insert-mail-followup-to-list, mh-index-program,
1995 (mh-identity-default): Fixed case of tags.
1997 * mh-e.el (mh-folder-from-address): Use new variable
1998 mh-default-folder-must-exist-flag to return nil if this variable
1999 is t and the folder doesn't already exist. In addition, can now
2000 look up a default folder in the new variable
2001 mh-default-folder-list (closes SF #657096).
2002 (mh-prompt-for-refile-folder): In docstring, refer to
2003 documentation in mh-folder-from-address.
2005 * mh-index.el (mh-swish-execute-search): Changed \..* to \\..* in
2006 the FileRules filename in the sample config file. Otherwise, the
2007 users don't see the backslash at all, and no files are indexed!
2008 (closes SF #665888).
2010 2003-01-10 Satyaki Das <satyaki@theforce.stanford.edu>
2012 * mh-seq.el (mh-thread-folder): Get headers for exactly the
2013 messages that are present. If only messages 1-10 and 3800-3900
2014 are being shown then we will now scan exactly those messages and
2015 not the full range from 1-3900 as was being done earlier.
2016 (mh-toggle-threads): When converting from threaded to normal view
2017 only the messages present in the buffer are scanned. Earlier all
2018 messages from the minimum to the maximum would be scanned (closes
2021 * mh-pick.el (mh-search-folder): Fix typo.
2022 (mh-pick-do-search): Fix bug from cut and paste. Also set window
2025 * mh-utils.el (mh-prompt-for-folder): Add new argument to allow
2026 it to accept + as a folder name. This allows the user to search
2027 all folders when "Fs" is used.
2029 * mh-pick.el (mh-search-folder): Fix interactive spec of function.
2030 (mh-pick-do-search): Rewritten to call pick in one go. This will
2031 make adding pick as a default index search program easier. Also
2032 pick now accepts the same query syntax as the index search
2033 programs (closes SF #664816).
2034 (mh-next-pick-field): Removed.
2035 (mh-pick-parse-search-buffer): New function to parse the search
2037 (mh-pick-construct-regexp, mh-pick-regexp-builder): New function
2038 to produce a pick query from the parsed representation.
2040 * mh-index.el (mh-index-do-search): Refactor the search pattern
2041 parser into a new function and use that instead.
2043 * mh-loaddefs.el: Regenerated.
2045 2003-01-10 Satyaki Das <satyaki@theforce.stanford.edu>
2047 * mh-loaddefs.el: Regenerated.
2049 * mh-utils.el (mh-remove-from-sub-folders-cache)
2050 (mh-prompt-for-folder): Replace mh-update-sub-folders-cache with
2051 mh-remove-from-sub-folders-cache.
2052 (mh-exec-cmd-daemon): Mention set-process-filter in documentation.
2054 * mh-pick.el (mh-searching-function): New buffer local variable
2055 that keeps track of the default searching function to be used.
2056 (mh-pick-mode): Make mh-searching-function buffer local.
2057 (mh-search-folder): Set mh-searching-function to use pick.
2058 (mh-search-folder, mh-pick-menu, mh-pick-mode-help-messages)
2059 (mh-pick-mode, mh-do-pick-search, mh-pick-do-search): Rename
2060 mh-do-pick-search to mh-pick-do-search. But keep
2061 mh-do-pick-search as a deprecated function.
2062 (mh-do-search): New interactive function that performs the
2064 (mh-pick-mode-map): Update keymap.
2066 * mh-index.el (mh-index-search): Set mh-searching-function to do
2068 (mh-index-new-folder): Replace mh-update-sub-folders-cache with
2069 mh-remover-from-sub-folders-cache.
2071 * mh-funcs.el (mh-kill-folder): Same as above.
2073 * mh-index.el (mh-index-evaluate, mh-swish++-regexp-builder):
2076 * mh-customize.el: Fixes to make byte compiler in CVS Emacs
2079 2003-01-09 Bill Wohler <wohler@newt.com>
2081 * mh-e.el (mh-folder-from-address): New function that proposes the
2082 name of a folder with an alias for the address in the current message.
2083 (mh-prompt-for-refile-folder): Use it (closes SF #657096).
2085 * mh-customize.el (mh-default-folder-prefix): New variable used by
2086 mh-folder-from-address.
2087 (mh-invisible-header-fields): Edited docstring.
2089 * mh-alias.el (mh-alias-address-to-alias): Added ;;;###mh-autoload
2090 cookie (used by mh-folder-from-address in mh-e.el). Edited text in
2093 * mh-utils.el: Provided naming conventions for buffer and buffer
2095 (mh-temp-folders-buffer): Renamed buffer to " *mh-folders*".
2096 (mh-temp-sequences-buffer): Renamed buffer to " *mh-sequences*".
2097 (mh-info-buffer): Renamed from mh-temp-info-buffer.
2098 (mh-log-buffer): New buffer variable to hold name of "*MH-E Log*"
2099 buffer which is expected to be used for the output of MH commands.
2100 Perhaps we always create this buffer at initialization and append
2101 to it rather than erase it each time?
2103 * mh-e.el (mh-quit): Loop over all buffers and delete MH-E
2104 temporary and working buffers. As long as the buffer naming
2105 conventions are followed, new buffers will be automatically
2107 (mh-version): Renamed mh-temp-info-buffer to mh-info-buffer.
2109 * mh-comp.el (mh-insert-x-mailer): Renamed mh-temp-info-buffer to
2112 2003-01-09 Satyaki Das <satyaki@theforce.stanford.edu>
2114 * mh-e.el (mh-folder-size): If the user doesn't have a
2115 Unseen-Sequence definition in .mh_profile then an error was
2116 produced. This change fixes that.
2118 * mh-seq.el (mh-thread-generate): Replace the *mh-thread* buffer
2119 with a temporary buffer which is cleaned up when the function
2122 * mh-e.el (mh-prompt-for-refile-folder): New function which
2123 refactors out the intelligent folder guessing code from
2125 (mh-refile-msg): Use mh-prompt-for-refile-folder.
2127 * mh-seq.el (mh-thread-refile): Use mh-prompt-for-refile-folder to
2128 do the same intelligent destination folder guessing as
2129 mh-refile-msg (closes SF #664829).
2131 * mh-utils.el (mh-folder-list, mh-make-folder-list-process)
2132 (mh-folder-list-temp, mh-folder-list-partial-line)
2133 (mh-set-folder-list): Removed.
2134 (mh-sub-folders-cache, mh-sub-folders, mh-sub-folders-actual):
2135 Moved over from mh-speed.el to implement hierarchical completion.
2136 (mh-update-sub-folders-cache): Utility function called when
2137 new folders are created or folders are removed.
2138 (mh-folder-completion-function): New function is the folder name
2139 completion function used in completing-read.
2140 (mh-folder-completing-read): A thin wrapper function that is used
2141 instead of completing-read directly. In the future we might want
2142 to allow the user a customizable variable which will turn off
2143 folders based completion.
2144 (mh-prompt-for-folder): Use mh-folder-completing-read to read in
2145 the folder name with hierachical completion (closes SF #664821).
2147 * mh-speed.el (mh-speed-folders, mh-speed-folders-cache)
2148 (mh-speed-folders-actual): Moved to mh-utils.el as mh-sub-folders,
2149 mh-sub-folders-cache and mh-sub-folders-actual respectively.
2150 (mh-speed-invalidate-map, mh-speed-invalidate-map)
2151 (mh-speed-add-folder): Use the new names.
2153 * mh-funcs.el (mh-kill-folder): Remove code that used to update
2154 mh-folder-list which is no longer present. Instead
2155 mh-update-sub-folders-cache is called.
2157 * mh-index.el (mh-index-new-folder): Same as above.
2159 2003-01-08 Satyaki Das <satyaki@theforce.stanford.edu>
2161 * mh-utils.el (mh-exec-cmd-daemon): An argument was added which
2162 controls what is done with the process output.
2164 * mh-funcs.el (mh-kill-folder): Use mh-previous-window-config to
2165 restore window configuration. Also the call to mh-exec-cmd-daemon
2166 only displays output if an error happened (closes SF #664828).
2167 (mh-rmf-daemon): Check rmf output and display it only if
2168 something went wrong.
2169 (mh-print-msg): Pass in nil argument to mh-exec-cmd-daemon.
2171 * mh-comp.el (mh-redistribute, mh-send-letter): Pass in nil
2172 argument to mh-exec-cmd-daemon so that the functions will behave
2175 * mh-pick.el (mh-search-folder): The current window config is
2177 (mh-make-pick-template): Make the message headers read-only.
2178 (mh-pick-mode-help-messages): Update help message.
2179 (mh-do-pick-search): Fix problem when buffer isn't showing any
2181 (mh-next-pick-field): Use buffer-substring-no-properties is
2183 (mh-pick-mode-map): Add key bindings (partially addresses
2186 * mh-index.el (mh-indexer-choices): Add a new field for each
2187 index program choice. If it is non-nil then it is the name of a
2188 function that given a lisp expression to search for generates a
2189 pattern that is acceptable to the search program.
2190 (mh-index-regexp-builder): New variable that stores the function
2191 to be used to convert from the lisp expression syntax to
2192 something that the search program understands.
2193 (mh-index-generate-pretty-name): Generalized so that it can take
2194 a list of strings as input.
2195 (mh-index-search): Modified so that if the configured program has
2196 a corresponding regexp-builder then a search buffer like pick
2197 search is produced. Otherwise the previous behavior is maintained.
2198 (mh-index-do-search): New interactive function that takes the
2199 contents of the search buffer, generates an appropriate query and
2200 produces the search results buffer by calling mh-index-search.
2201 (mh-replace-string, mh-index-parse-search-regexp)
2202 (mh-index-add-implicit-ops, mh-index-evaluate): New functions
2203 which parses the infix search expression that the user enters. A
2204 parse tree from which queries for different search programs can
2205 be produced is produced.
2206 (mh-swish++-regexp-builder, mh-swish++-print-regexp): Takes the
2207 internal form of the query and produces input suitable for
2210 * mh-loaddefs.el: Regenerated.
2212 2003-01-08 Bill Wohler <wohler@newt.com>
2214 * Makefile (emacs-logs): New target for viewing CVS Emacs logs.
2215 Useful to see if an Emacs developer has changed MH-E.
2217 * MH-E-NEWS: Fixed case of MH-E in the "Changes" title.
2219 * mh-utils.el (mh-temp-info-buffer): New variable to hold name of
2220 buffer that contains version info.
2222 * mh-e.el (mh-version): Use mh-temp-info-buffer instead of
2223 mh-temp-buffer since version information was getting clobbered by
2224 the aliasing code before it could be seen (closes SF #664467).
2225 (mh-quit): Delete mh-temp-info-buffer.
2227 * mh-comp.el (mh-insert-x-mailer): Use mh-temp-info-buffer to find
2228 version info instead of mh-temp-buffer. You kind of need this
2231 2003-01-07 Bill Wohler <wohler@newt.com>
2233 * mh-e.el (Version, mh-version): Set to 7.1+cvs.
2235 2003-01-07 Bill Wohler <wohler@newt.com>
2237 * Released MH-E version 7.1.
2239 * MH-E-NEWS, README: Updated for release 7.1.
2241 * mh-e.el (Version, mh-version): Updated for release 7.1.
2243 2003-01-07 Bill Wohler <wohler@newt.com>
2245 * mh-customize.el (mh-auto-folder-collect-flag,
2246 mh-alias-system-aliases, mh-alias-insert-file): Edited docstrings.
2248 * Makefile (MH-E-IMG): Added alias.pbm and alias.xpm.
2250 * mh-alias.el (mh-alias-insert-file, mh-alias-add-alias): Fixed
2253 2003-01-07 Satyaki Das <satyaki@theforce.stanford.edu>
2255 * mh-utils.el (mh-search-from-end): New function that is used to
2256 replace our usage of the CL function search.
2257 (font-lock): The library is loaded to avoid compilation warning
2260 * mh-speed.el (mh-speed-goto-folder, mh-speed-add-folder)
2261 (mh-speed-extract-folder-name, mh-speed-invalidate-map): Use
2262 mh-search-from-end instead of search.
2264 * mh-seq.el (mh-thread-remove-parent-link): Use loop instead of
2266 (mh-thread-process-in-reply-to): Use mh-search-from-end instead
2269 * mh-index.el (mh-md5-parser): Fix name of function.
2270 (mh-index-update-single-msg, mh-index-update-maps): Avoid using
2271 destructuring-bind since Emacs-20.7 can't handle this particular
2273 (mh-namazu-next-result): Use mh-search-from-end instead of
2276 * mh-e.el (recursive-load-depth-limit): Add a defvar since CVS
2277 emacs which doesn't have the variable defined causes a compiler
2279 (mh-refile-a-msg): Rewritten to avoid using pushnew.
2280 (mh-undo-msg): Use loop instead of remove-if.
2282 * mh-comp.el (mh-show-buffer-message-number): Use
2283 mh-search-from-end instead of search.
2285 2003-01-01 Satyaki Das <satyaki@theforce.stanford.edu>
2287 * mh-e.el (mh-visit-folder): Modified so that if RANGE is nil then
2288 all messages are displayed. Documentation modified so that this is
2290 (mh-visit-folder): Really fix it this time.
2292 2003-01-01 Mark D Baushke <mdb@gnu.org>
2294 * mh-alias.el (mh-alias-from-has-no-alias-p): Needs the
2295 mh-autoload comment or mh-customize may have problems finding the
2298 * mh-loaddefs.el: Regenerated.
2300 2002-12-28 Satyaki Das <satyaki@theforce.stanford.edu>
2302 * mh-index.el (mh-namazu-execute-search): Fix bug in documentation.
2304 2002-12-28 Bill Wohler <wohler@newt.com>
2306 * mh-comp.el (mh-letter-mode): Mention mh-compose-insertion
2307 variable in docstring, explain how to expand directives, and
2308 don't mention mh-mhn-compose-insertion which isn't used directly
2310 (mh-send-letter): Mention that X-Mailer and X-Face are inserted
2311 automatically so that a user isn't tempted to do so himself in
2312 mh-before-send-letter-hook.
2313 (mh-insert-letter): Use "variable" prefix for mh-invisible-headers
2314 now that we have both a function and a variable. Clarified
2317 2002-12-26 Satyaki Das <satyaki@theforce.stanford.edu>
2319 * mh-utils.el (mh-show-xface-function): Only load x-face-e21 if
2320 the emacs is not XEmacs.
2322 * mh-index.el (mh-index-new-folder): The folder created should
2323 always be added to mh-folder-list. Otherwise folder name
2324 completion doesn't find the new folder created.
2326 2002-12-24 Satyaki Das <satyaki@theforce.stanford.edu>
2328 * mh-customize.el (mh-clean-message-header-flag)
2329 (mh-visible-headers, mh-invisible-headers)
2330 (mh-invisible-header-fields-set): Reworded to satisfy checkdoc.
2332 * mh-loaddefs.el: Regenerated.
2334 * mh-e.el (mh-inc-folder, mh-visit-folder, mh-read-msg-range):
2335 Handle nil value of mh-large-folder properly.
2337 * mh-customize.el (mh-tool-bar-show-set, mh-tool-bar-letter-set)
2338 (mh-tool-bar-folder-set, mh-tool-bar-folder-buttons)
2339 (mh-invisible-headers, mh-invisible-header-fields-set): Checkdoc
2341 (mh-large-folder): Updated to allow for infinity. If
2342 mh-large-folder is nil then all folders are deemed small.
2344 2002-12-23 Satyaki Das <satyaki@theforce.stanford.edu>
2346 * mh-e.el (mh-inc-folder, mh-visit-folder): Emit a message if
2347 threading was suppressed because the number of messages exceed
2350 2002-12-23 Peter S Galbraith <psg@debian.org>
2352 * mh-utils.el (mh-invisible-headers): Deleted. Moved to
2355 * mh-customize.el (mh-invisible-header-fields): New
2356 defcustom. Simple user interface to change mh-invisible-headers.
2357 (mh-invisible-header-fields-set): New function called when
2358 mh-invisible-header-fields is set.
2359 (mh-invisible-headers): New function. Does the actual work of
2360 building the variable mh-invisible-headers from
2361 mh-invisible-header-fields.
2362 (mh-invisible-headers): defvar moved from mh-utils.el
2364 2002-12-22 Satyaki Das <satyaki@theforce.stanford.edu>
2366 * mh-speed.el (mh-speed-folder-size): Removed. Something very
2367 similar appears as mh-folder-size.
2368 (mh-speed-view): Simplified since the range selection logic has
2369 been moved to mh-read-msg-range.
2370 (mh-speed-parse-flists-output-line): Moved to mh-e.el as
2371 mh-parse-flist-output-line.
2373 * mh-funcs.el (mh-pack-folder): Use the new mh-read-msg-range.
2375 * mh-e.el (mh-rescan-folder): Use the new mh-read-msg-range.
2376 (mh-parse-flist-output-line): Moved from mh-speed.el where this
2377 function was called mh-speed-parse-flists-output-line.
2378 (mh-folder-size): Renamed from mh-speed-folder-size. The function
2379 has been made more general and can be called from any buffer and
2380 not just the speedbar buffer.
2381 (mh-visit-folder): Use the new mh-read-msg-range (addresses SF
2383 (mh-read-msg-range): Rewritten.
2385 2002-12-21 Satyaki Das <satyaki@theforce.stanford.edu>
2387 * mh-seq.el (mh-delete-subject-or-thread): New interactive
2388 function that intelligently deletes messages based on threading,
2389 if the folder is threaded, or on subject if folder isn't threaded.
2391 * mh-utils.el (mh-show-delete-subject-or-thread): New interactive
2392 function, callable from the show buffer, to intelligently delete
2393 messages based on threading info or subject.
2394 (mh-show-mode-map): Change binding of "k" to call
2395 mh-show-delete-subject-or-thread.
2397 * mh-e.el (mh-folder-mode-map): Change binding of "k" to call
2398 mh-delete-subject-or-thread.
2400 * mh-comp.el (mh-letter-mode-map): Add key binding for
2403 * mh-loaddefs.el: Regenerated.
2405 2002-12-21 Peter S Galbraith <psg@debian.org>
2407 * mh-customize.el (mh-tool-bar-letter-set): Bug fix. The
2408 `tool-bar-add-item-from-menu' items were broken. I can't use my
2411 2002-12-21 Peter S Galbraith <psg@debian.org>
2413 * mh-alias.el (mh-alias-insert-file): Bug fix. I never checked
2414 that an AliasFile entry existed in .mh_profile.
2416 2002-12-21 Peter S Galbraith <psg@debian.org>
2418 * mh-customize.el (mh-alias-insertion-location): New defustom.
2419 Specifies where new aliases are entered in alias files.
2421 * mh-alias.el (mh-alias-add-alias-to-file): Use it.
2423 2002-12-21 Peter S Galbraith <psg@debian.org>
2425 * mh-alias.el (mh-alias-add-alias-to-file): If ALIAS matches
2426 exactly, prompt to [i]nsert before old value or [a]ppend after it.
2427 (mh-alias-insert-file): Make sure we don't edit the passwd file.
2428 Add optional argument for alias; If ALIAS is specified and it
2429 already exists, try to return the file that contains it.
2430 (mh-alias-which-file-has-alias): New function. Return the name of
2431 writable file which defines ALIAS from list FILE-LIST.
2432 (mh-alias-add-alias): Remove prompts for case of alias already
2433 defined; done in mh-alias-add-alias-to-file.
2435 2002-12-21 Satyaki Das <satyaki@theforce.stanford.edu>
2437 * mh-speed.el (mh-speed-folders-actual): Fix bug in parsing of
2438 folder names that have spaces in them. The original function would
2439 truncate the folder name at the first space.
2440 (mh-speed-flists): Add -sequence option to flists. This guards
2441 against the user specifying something other than the unseen
2442 sequence in his .mh_profile.
2443 (mh-speed-parse-flists-output-line): New function that parses a
2444 single line in the output of flists to find the folder name and
2445 the counts of unseesn and total messages.
2446 (mh-speed-parse-flists-output): Fix parsing bug which truncates
2447 the folder names at the first space.
2449 * mh-index.el (mh-index-generate-pretty-name): New function which
2450 generates a nicer name for the search results. It trims white
2451 space at the beginning and end and replaces white space with
2452 underscores within the search regexp.
2453 (mh-index-search): Use mh-index-generate-pretty-name.
2455 * mh-loaddefs.el: Regenerated.
2457 2002-12-20 Satyaki Das <satyaki@theforce.stanford.edu>
2459 * mh-index.el (mh-index-new-folder): Add new folder to
2460 mh-folder-list to enable name completion.
2461 (mh-glimpse-execute-search, mh-swish-execute-search)
2462 (mh-swish++-execute-search): Fix documentation.
2464 * mh-seq.el (mh-thread-generate): Fixed a stupid bug where the wrong
2465 folder could get 'scan'ed when generating the threaded view.
2467 * mh-index.el (mh-index-search): If optional prefix arg is given
2468 then the search in the current index buffer is redone.
2469 (mh-glimpse-execute-search, mh-swish-execute-search)
2470 (mh-namazu-execute-search): Documentation fixes.
2472 * mh-e.el (mh-index-previous-search): New buffer local variable
2473 stores parameters of search that created the buffer.
2474 (mh-folder-mode): Make mh-index-previous-search buffer local.
2475 (mh-visit-folder): Tweak the function so that only a single window
2476 with the folder buffer is shown if mh-showing-mode is nil.
2478 * mh-loaddefs.el: Regenerated.
2480 2002-12-19 Peter S Galbraith <psg@debian.org>
2482 * mh-alias.el (mh-alias-add-alias): Bug fix.
2484 2002-12-19 Peter S Galbraith <psg@debian.org>
2486 * mh-alias.el (mh-alias-add-alias): New interactive command. Add
2487 ALIAS for ADDRESS in personal alias file.
2488 (mh-alias-grab-from-field): New interactive command. Add ALIAS for
2489 ADDRESS in personal alias file.
2490 (mh-alias-add-address-under-point): New interactive
2491 command. Insert an alias for email address under point.
2492 (mh-alias-suggest-alias): New function. Suggest an alias for STRING.
2493 (mh-alias-insert-file): New function. Return the alias file to
2494 write a new entry in.
2495 (mh-alias-address-to-alias): New function. Return the ADDRESS
2496 alias if defined, or nil."
2497 (mh-alias-from-has-no-alias-p): New function. Return t is From has
2498 no current alias set. Used as tool-bar button enable function.
2499 (mh-alias-add-alias-to-file): New function. Add ALIAS for ADDRESS
2500 in alias FILE without alias check or prompts.
2502 * alias.xpm, alias.pbm: New tool-bar icon for
2503 mh-alias-grab-from-field.
2505 * mh-e.el (mh-folder-line-matches-show-buffer-p): New function.
2506 Return t if the message under point in folder-mode is in the show
2509 * mh-utils.el (mh-goto-address-find-address-at-point): New
2510 function copied from goto-addr.el, which we don't want to
2511 force-load on users. Find e-mail address around or before point.
2512 (mh-address-mail-regexp): New defvar. A regular expression
2513 probably matching an e-mail address.
2515 * mh-customize.el (mh-alias-insert-file): New defcustom.
2516 Filename to use to store new MH-E aliases.
2517 (mh-tool-bar-folder-buttons): Enable mh-tool-bar-item-alias icon.
2519 * mh-comp.el (mh-extract-from-header-value): New function.
2520 Extract From: string from header.
2522 2002-12-19 Satyaki Das <satyaki@theforce.stanford.edu>
2524 * mh-index.el (mh-index-update-single-msg): New defvar controls
2525 max number of command line args.
2526 (mh-index-execute): New function which is to be used
2527 instead of xargs so that we don't give the shell too many command
2529 (mh-index-update-maps): Use mh-index-execute instead of xargs.
2530 (mh-index-search): Remove unused code. Also the first message in
2531 folder buffer is made current.
2533 2002-12-18 Peter S Galbraith <psg@debian.org>
2535 * mh-loaddefs.el: Regenerated.
2537 * mh-comp.el (mh-letter-tool-bar-map): Moved to mh-customize.el
2539 * mh-e.el (mh-folder-tool-bar-map): Moved to mh-customize.el
2541 * mh-utils.el (mh-get-msg-num): autoloaded.
2542 (mh-show-tool-bar-map): Moved to mh-customize.el
2544 * mh-customize.el (mh-tool-bar-item-*): 33 new defconsts for
2545 tool-bar setup and customization.
2546 (mh-tool-bar-folder-buttons-set): New function to setup the
2547 tool-bar after customization.
2548 (mh-tool-bar-folder-buttons): New defcustom to specify which icons
2549 appears in the tool-bar.
2550 (mh-tool-bar-letter-buttons-set): New function to setup the
2551 tool-bar after customization.
2552 (mh-tool-bar-letter-buttons): New defcustom to specify which icons
2553 appears in the tool-bar.
2554 (mh-tool-bar-show-set): New function to setup mh-letter-tool-bar-map.
2555 (mh-tool-bar-letter-set): New function to setup
2556 mh-letter-tool-bar-map.
2558 2002-12-18 Satyaki Das <satyaki@theforce.stanford.edu>
2560 * mh-e.el (mh-folder-mode-map): Change entries for "\t", "\M-\t"
2561 and backtab to call mh-index-next-folder and
2562 mh-index-previous-folder as appropriate.
2564 * mh-index.el (mh-index-next-folder, mh-index-previous-folder):
2565 New interactive functions which jumps to search results of next
2566 and previous folders respectively.
2568 * mh-loadddefs.el: Regenerated.
2570 * mh-index.el (mh-index-delete-folder-headers): Arrange for
2571 mh-goto-cur-msg to just go to the current message.
2573 * mh-e.el (mh-visit-folder): Since mh-scan-folder erases the whole
2574 buffer anyway, we don't need to delete the folder headers. Also
2575 index-data is non-nil only when the buffer folder doesn't exist.
2576 So we need to call mh-make-folder.
2577 (mh-folder-mode): Fix bug in that mh-index-checksum-origin-map was
2578 not being made buffer local!
2580 2002-12-17 Satyaki Das <satyaki@theforce.stanford.edu>
2582 * mh-e.el (mh-visit-folder): Fix bug.
2584 * mh-index.el (mh-md5sum-buffer): Buffer from which md5sum is run.
2585 (mh-index-folder-first, mh-index-folder-last)
2586 (mh-index-original-msg-list): Convenience macros aren't needed
2587 anymore since the data structure has been changed.
2588 (mh-index-update-single-msg): New function to update maps that
2589 relate MD5 checksums to actual messages and vice-versa for a
2591 (mh-index-update-maps): Do the above for all messages. If some
2592 messages don't have MD5 checksums, they are annotated with the
2594 (mh-index-search): Updated for the new version of mh-index-data.
2595 (mh-msg-exists-p): New function to test a message exists.
2596 (mh-index-insert-folder-headers): Updated for new mh-index-data.
2597 (mh-index-delete-folder-headers): New function used to eliminate
2598 original folder names from the buffer and make it look like a
2599 plain folder buffer. This is used from mh-process-commands.
2600 (mh-index-visit-folder): Use new version of mh-index-data.
2601 (mh-index-match-checksum): New function which checks if the
2602 X-MHE-Checksum header of a message matches.
2603 (mh-index-execute-commands): New function that rmm's the original
2604 messages. Then after mh-execute-commands executes it will seem
2605 that the original messages were executed upon. This completes the
2607 (mh-checksum-buffer): Renamed from mh-md5sum-buffer.
2608 (mh-checksum-cmd, mh-checksum-parser): New globals to allow
2609 different checksum programs to be used.
2610 (mh-checksum-choose): New functions to find a checksum program.
2611 (mh-openssl-parser, mh-md5sum-parser, mh-md5-parser): Functions to
2612 parse the output of md5, md5sum and openssl.
2613 (mh-index-update-maps): Use checksum parsing function.
2614 (mh-index-search): Set checksum choice. Add a call to recenter,
2615 otherwise the window point in the index buffer doesn't get set
2618 * mh-funcs.el (mh-pack-folder, mh-sort-folder): Enable these
2619 functions in folders created by index search.
2621 * mh-e.el (mh-index-msg-checksum-map)
2622 (mh-index-checksum-origin-map): New buffer local variables that
2623 keep track of message checksums (used to implement
2624 refiling/deletion for folders created by index folders).
2625 (mh-last-msg): Make the function behave like mh-first-msg.
2626 (mh-visit-folder): Add new optional argument which initializes
2627 folders created by mh-index-search.
2628 (mh-folder-mode): Make the variables mh-index-msg-checksum-map and
2629 mh-index-checksum-origin-map buffer local.
2630 (mh-process-commands): Call mh-index-execute-commands when called
2631 from an index search buffer. This will reflect the changes being
2632 made in the search folder to the original folders.
2634 * mh-loaddefs.el: Regenerated.
2636 2002-12-16 Satyaki Das <satyaki@theforce.stanford.edu>
2638 * mh-index.el (mh-index-insert-folder-headers): Fix a bug which
2639 caused the folder buffer to be marked as modified after rescanning
2642 2002-12-15 Satyaki Das <satyaki@theforce.stanford.edu>
2644 * mh-e.el (mh-visit-folder): The function should insert folder
2645 names if it is visiting a folder created by index search.
2647 * mh-index.el (mh-index-insert-folder-headers): The function now
2648 maintains the old value of buffer-modified-p and temporarily makes
2649 the buffer writable.
2651 * mh-utils.el (mh-show-index-visit-folder): New interactive
2652 function callable from show buffer that displays search results
2654 (mh-show-mode-map): Key binding for "v".
2656 * mh-speed.el: Fix credits.
2657 (mh-index-folder-speedbar-buttons)
2658 (mh-index-show-speedbar-buttons)
2659 (mh-index-folder-speedbar-key-map)
2660 (mh-index-show-speedbar-key-map)
2661 (mh-index-folder-speedbar-menu-items)
2662 (mh-index-show-speedbar-menu-items): Removed since the modes
2663 mh-index-folder-mode and mh-index-show-mode no longer exist.
2664 (mh-speed-extract-folder-name): Remove the bits about
2665 mh-index-folder-mode and mh-index-show-mode.
2667 * mh-seq.el (mh-copy-seq-to-eob): Updated to work properly with
2668 index search results.
2669 (mh-region-to-msg-list): Skip over non-scan lines.
2670 (mh-thread-inc, mh-thread-add-spaces, mh-thread-folder): Skip
2671 non-scan lines when populating mh-thread-scan-line-map.
2672 (mh-thread-folder, mh-toggle-threads): Move the check for buffer
2673 modification from mh-thread-folder to mh-toggle-threads.
2674 (mh-toggle-threads): When returning to unthreaded view insert the
2675 folder names if called from a index folder.
2677 * mh-index.el: Fix credits and update commentary.
2678 (font-lock-defaults, mh-index-buffer, mh-index-show-buffer)
2679 (mh-index-ma-x-msg-index, mh-index-other-buffer)
2680 (mh-index-matches, mh-index-previous-window-configuration)
2681 (mh-index-current-msg, mh-index-folder-mode-keymap)
2682 (mh-index-button-map, mh-index-folder-mode-help-messages): Remove
2683 eliminated variables.
2684 (mh-index-folder): New variable sets the MH folder under which the
2685 index searches are stored.
2686 (mh-index-folder-first, mh-index-folder-last)
2687 (mh-index-original-msg-list): Convenience macros used to pull data
2688 elements out of a list. If needed setf can be used to change them
2690 (mh-index-search): Rewritten to create real folders where all the
2691 normal folder operation. This partially fixes SF #623321 (refiles
2692 and deletes doesn't work on original messages).
2693 (mh-index-find-max-width, mh-index-search-again)
2694 (mh-index-insert-scan, mh-index-callback, mh-index-search)
2695 (mh-index-notate, mh-index-show, mh-index-header-display)
2696 (mh-index-next, mh-index-folder-mode, mh-index-show-mode):
2697 Functions, macros and modes removed.
2698 (mh-folder-exists-p): New function to check if a folder exists.
2699 (mh-index-new-folder): Generate a new folder name from a given
2700 base string that mimics the way emacs generates buffer names.
2701 (mh-index-insert-folder-headers): Insert folder names among the
2703 (mh-index-visit-folder): New interactive function to show the
2704 search results of one individual folder.
2705 (mh-swish++-execute-search): Update documentation.
2707 * mh-funcs.el (mh-pack-folder, mh-sort-folder): Disable these
2708 functions if index search results are being viewed.
2710 * mh-e.el (mh-folder-font-lock-keywords): Add highlight for
2712 (mh-index-data): New buffer local variable that will be used to
2713 store info about index search results.
2714 (mh-rescan-folder): Implement rescanning for index search results.
2715 (mh-folder-mode): Make mh-index-data buffer local.
2716 (mh-remove-all-notation): Modified to take into account not all
2717 lines in the folder buffer are normal scan lines.
2718 (mh-folder-mode-map): Add key binding for "v" to jump to original
2719 folder narrowed to search results.
2721 * mh-customize.el (mh-index-folder-face): Make it bold so that it
2722 will look like before.
2724 * mh-loaddefs.el: Regenerated.
2726 2002-12-12 Satyaki Das <satyaki@theforce.stanford.edu>
2728 * mh-seq.el (mh-map-to-seq-msgs): Modified so that it can be given
2729 a list of messages in addition to a sequence.
2730 (mh-region-to-sequence, mh-region-to-msg-list): The function
2731 mh-region-to-msg-list replaces mh-region-to-sequence. The new
2732 function avoids creating a dummy sequence in MH-E.
2733 (mh-thread-delete, mh-thread-refile, mh-put-msg-in-seq): Modified
2734 to use mh-region-to-msg-list.
2736 * mh-funcs.el (mh-copy-msg): Modified to use mh-region-to-msg-list.
2738 * mh-e.el (mh-delete-msg, mh-refile-msg, mh-undo): Modified to use
2739 mh-region-to-msg-list.
2741 * mh-comp.el (mh-forward): Modified to use mh-region-to-msg-list.
2742 The buffer-local variable mail-header-separator is no longer
2743 bound. This fixes a bug where the default value of
2744 mail-header-separator gets used if mh-forward is called in a fresh
2746 (mh-annotate-msg): Update this so that it will handle message
2748 (mh-insert-letter): Make the test stronger. Since %d is being used
2749 the argument better be an integer.
2751 * mh-loaddefs.el: Regenerated.
2753 2002-12-11 Satyaki Das <satyaki@theforce.stanford.edu>
2755 * mh-funcs.el (mh-copy-msg): Add support for transient-mark-mode.
2756 If mark is active and transient-mark-mode is enabled then all the
2757 messages in the region are copied.
2759 * mh-seq.el (mh-list-sequences): Use mh-coalesce-msg-list to print
2760 messages in sequence nicely. The prompt for the folder is removed
2761 (the current folder is always used) and the output is made nicer
2762 by not overflowing the screen width.
2764 * mh-loaddefs.el: Regenerated.
2766 2002-12-09 Satyaki Das <satyaki@theforce.stanford.edu>
2768 * mh-comp.el (mh-letter-complete): Checkdoc fix.
2770 * mh-seq.el (mh-thread-current-indentation-level): New function
2771 which returns the thread indentation level of current message.
2772 (mh-thread-next-sibling, mh-thread-previous-sibling): New
2773 interactive functions to jump to the next and previous siblings in
2774 thread tree respectively.
2775 (mh-thread-immediate-ancestor): New function to jump to ancestor
2776 of current message in thread tree.
2777 (mh-thread-ancestor): New interactive function to jump to
2778 immediate ancestor or to root message of current thread depending
2779 on optional argument.
2781 * mh-utils.el (mh-show-thread-ancestor)
2782 (mh-show-thread-next-sibling, mh-show-thread-previous-sibling):
2783 Interactive functions callable from the show buffer.
2784 (mh-show-thread-map): Bindings for Tu, Tp and Tn.
2786 * mh-e.el (mh-thread-map): Bindings for Tu, Tp and Tn.
2788 * mh-loaddefs.el: Regenerated.
2790 2002-12-09 Satyaki Das <satyaki@theforce.stanford.edu>
2792 * mh-seq.el (mh-region-to-sequence): Change name of region
2793 sequence created to 'mhe-region. This avoids any chance of
2794 collision with actual MH sequences.
2795 (mh-put-msg-in-seq, mh-thread-delete, mh-thread-refile): Change
2796 name of region sequence used to 'mhe-region. Also delete the
2797 'mhe-region sequence when done.
2799 * mh-e.el (mh-delete-msg, mh-refile-msg, mh-undo): Same as above.
2801 * mh-comp.el (mh-forward): Same as above.
2803 * mh-loaddefs.el: Regenerated.
2805 2002-12-08 Bill Wohler <wohler@newt.com>
2807 * mh-alias.el: Edited documentation. Broke up file into 2
2808 sections: Alias Loading and Alias Expansion. Made terminology
2809 consistent (replaced expand, substitute, and translate with
2811 (mh-alias-reload): Brought message in line with coding conventions
2812 and made more concise too.
2813 (mh-alias-translate): Renamed to mh-alias-expand.
2814 (mh-alias-substitute-aliases-flag): Renamed to
2815 mh-alias-expand-aliases-flag.
2816 (mh-alias-reload-local-users): Renamed to mh-alias-local-users.
2817 Now just returns an alist of local users rather than have
2819 (mh-alias-reload): Set timestamp at beginning of function to catch
2820 edge case when alias added just after ali runs. Changed logic to
2821 reflect return value of mh-alias-local-users.
2823 * mh-customize.el (mh-alias-substitute-aliases-flag): Renamed to
2824 mh-alias-expand-aliases-flag.
2825 (mh-alias-local-users): Fixed documentation.
2827 * mh-loaddefs.el: Regenerated
2829 2002-12-08 Satyaki Das <satyaki@theforce.stanford.edu>
2831 * mh-e.el (require): Load Gnus at compile time so that the
2832 constant gnus-version is defined when MH-E is being compiled.
2833 (mh-macro-expansion-time-gnus-version, mh-run-time-gnus-version):
2834 Use the constant gnus-version instead of the function gnus-version
2835 to find out about gnus version information.
2836 (gnus-version): Remove the autoload since it is not needed any
2839 2002-12-08 Bill Wohler <wohler@newt.com>
2841 * mh-e.el (mh-version): Moved compilation information in front of
2842 Emacs information. The idea is that you start at MH-E and move
2843 outwards. Show N/A if Gnus not compiled (be explicit). Matched
2844 coding style with other output statements. (Aside: not that
2845 efficiency matters here, but fewer calls to format have to be
2846 faster, right? ;-). Matched output style of old output to new
2847 statement--liked Satyaki's indentation better ;-).
2849 2002-12-08 Satyaki Das <satyaki@theforce.stanford.edu>
2851 * mh-e.el (gnus-version): Autoload the function for use in
2853 (mh-macro-expansion-time-gnus-version): New macro that finds the
2854 Gnus version at macro expansion time.
2855 (mh-run-time-gnus-version): New function to find the Gnus version
2857 (mh-version): Add information about Gnus versions available at
2858 compile time and run time.
2860 2002-12-07 Peter S Galbraith <psg@debian.org>
2862 * mh-alias.el (mh-alias-ali): Add optional argument. if USER is
2863 t, then assume ALIAS is an address and call ali with option -user.
2865 * mh-alias.el (mh-alias-filenames): if ARG is t, appends list of
2866 files from `mh-alias-system-aliases' to output list obtained from
2867 mhparam output user list only.
2868 (mh-alias-tstamp): Use it.
2870 2002-12-05 Satyaki Das <satyaki@theforce.stanford.edu>
2872 * mh-mime.el (mh-inline-vcard-p): A new function which decides if
2873 a vcard should be displayed inline.
2874 (mh-mime-display-single): Use mh-inline-vcard-p to display
2875 attached vcard as a signature if no other signature is present
2876 (this partially addresses SF #649216).
2878 2002-12-05 Peter S Galbraith <psg@debian.org>
2880 * mh-comp.el (mh-send-letter): Edits docs for mh-mml-to-mime
2881 getting run if variable `mh-mml-compose-insert-flag' is set.
2882 (mh-get-header-field): use buffer-substring-no-properties instead
2883 of buffer-substring.
2885 2002-12-04 Peter S Galbraith <psg@debian.org>
2887 * mh-loaddefs.el: Regenerated.
2889 * mh-customize.el (mh-customize): Add ;;;###mh-autoload tag.
2891 2002-12-04 Peter S Galbraith <psg@debian.org>
2893 * mh-loaddefs.el: Regenerated.
2895 * mh-comp.el (mh-letter-complete): New command to do alias or word
2896 completion in letter-mode.
2897 (mh-letter-mode-map): Add \M-\t binding for mh-letter-complete.
2899 * mh-alias.el (mh-alias-letter-mode-expand-alias-hook): Obsolete.
2900 Replaced by mh-letter-complete command.
2901 (mh-alias-reload-maybe): New function to rebuild alias table if
2903 (mh-alias-letter-expand-alias): No longer interactive. Use
2904 mh-letter-complete instead.
2906 2002-12-04 Peter S Galbraith <psg@debian.org>
2908 * mh-customize.el (mh-letter-complete-function): New defcustom.
2909 Function to call when completing outside of fields specified to
2912 * mh-alias.el (mh-alias-filenames):
2913 s/mh-mhparam-component/mh-profile-component/
2914 (mh-profile-component): Move to mh-utils.el and make interactive.
2915 (mh-read-address): Make it autoloaded.
2917 * mh-loaddefs.el: Regenerated.
2919 * mh-comp.el (mh-read-address): Removed. Replaced by mh-alias
2922 * mh-utils.el (mh-profile-component): Moved from mh-alias.el.
2924 2002-12-04 Satyaki Das <satyaki@theforce.stanford.edu>
2926 * mh-seq.el (mh-msg-is-in-seq): Formatting change.
2928 * mh-index.el (mh-index-insert-scan): Remove unused variable.
2930 2002-12-04 Bill Wohler <wohler@newt.com>
2932 * mh-loaddefs.el: Regenerated.
2934 * Makefile (MH-E-SRC): Moved mh-loaddefs.el into MH-E-LOADDEFS as
2935 this was causing a cycle.
2936 (MH-E-LOADDEFS): New variable to house mh-loaddefs.el.
2937 (emacs): Reintroduced autoloads.
2938 (autoloads): We're baaa-aack!
2939 (dist, install-emacs): Use MH-E-LOADDEFS.
2941 * mh-comp.el (mh-customize): Moved to mh-customize.el.
2943 * mh-customize.el (mh-customize): Moved here from mh-comp. Makes
2944 more sense, doesn't it?
2946 * mh-alias.el, mh-comp.el, mh-e.el, mh-index.el, mh-mime.el,
2947 mh-pick.el, mh-speed.el: Added mh-autoload cookie to all
2948 interactive functions.
2950 2002-12-04 Satyaki Das <satyaki@theforce.stanford.edu>
2952 * Makefile (world): Remove target.
2953 (mh-loaddefs.el): Add comment that only GNU Emacs can be used to
2954 regenerate mh-loaddefs.el.
2956 * mh-make.el: Removed.
2958 2002-12-04 Mark D. Baushke <mdb@gnu.org>
2960 * mh-e.el (recursive-load-depth-limit): Only modify the limit
2961 if it is an integer.
2963 2002-12-04 Peter S Galbraith <psg@debian.org>
2965 * mh-utils.el (mh-header-field-beginning): New function. Move to
2966 the beginning of the current header field.
2968 2002-12-04 Satyaki Das <satyaki@theforce.stanford.edu>
2970 * mh-make.el (mh-files): Read in the MH-E filenames from the
2971 environment variable where the Makefile puts it.
2972 (mh-generate-autoloads, step2): Simplified since we now have the
2973 complete file names.
2975 * Makefile (world): Pass the MH-E files into the script, so that
2976 the filenames don't need to be repeated in the script.
2978 2002-12-04 Bill Wohler <wohler@newt.com>
2980 * mh-loaddefs.el: New file. Check in automatically generated file
2981 and include in package for the benefit of those who don't want to
2984 * Makefile (MH-E-SRC): Added mh-loaddefs.el now that it is checked
2985 in and will be packaged.
2986 (emacs): Removed autoloads. Adding mh-loaddefs.el to MH-E-SRC is
2987 sufficient to build it.
2988 (compile): Depend on MH-E-SRC instead of MH-E-OBJ and pass $? into
2989 emacs so that Emacs is only invoked once to compile files. This
2990 speeds things up by a factor of 3. It would be nice to only pass
2991 those files that have been modified, but Emacs 21.4 will have
2992 batch-byte-compile-if-not-done which we might be able to copy into
2993 mh-make.el (or my proposed mh-e-dev.el which would be more
2995 (.SUFFIXES): Removed. Now that compile works directly on the
2996 sources, the implicit rule is obsolete.
2997 (autoloads): Deleted. See emacs change above.
2999 2002-12-03 Bill Wohler <wohler@newt.com>
3001 * Makefile (MH-E-SRC, emacs):
3003 2002-12-03 Satyaki Das <satyaki@theforce.stanford.edu>
3005 * mh-make.el (mh-emacs): Make failing condition more strict.
3006 (mh-loaddefs-end): Remove redundant statement.
3008 * Makefile (world): A little typo. The bug didn't seem to make any
3011 * mh-make.el: New script that compiles MH-E.
3012 (mh-loaddefs-beginning, mh-loaddefs-end): Don't save the autoloads
3013 file in between. Only save at the end.
3014 (mh-emacs-generate-autoloads, mh-xemacs-generate-autoloads)
3015 (mh-generate-autoloads): Replace the separate functions in Emacs
3016 and XEmacs with one that works in both variants. This simplifies
3018 (mh-generate-autoloads): doc fix.
3020 * Makefile (world): New target which works for both GNU Emacs and
3023 2002-12-03 Peter S Galbraith <psg@debian.org>
3025 * mh-alias.el (mh-mhparam-component): Don't raise error if call to
3028 * mh-alias.el (mh-alias-letter-expand-alias): Build alias table if
3029 not already available.
3031 2002-12-03 Bill Wohler <wohler@newt.com>
3033 * mh-customize.el (mh-show-threads-flag): Alphabetized.
3035 2002-12-03 Jeffrey C Honig <jch@honig.net>
3037 * Makefile: Moved .PHONY rule after all rule for compatibility
3038 with BSD/OS's old pmake.
3040 2002-12-03 Mark D Baushke <mdb@gnu.org>
3042 * mh-e.el (mh-get-new-mail): Simplify no-new-mail test.
3043 (mh-add-cur-notation): Remove unnecessary function.
3045 2002-12-03 Peter S Galbraith <psg@debian.org>
3047 * mh-identity.el (mh-identity-make-menu): Check if
3048 'mh-letter-mode-map' is bound, since this code also gets run when
3049 mh-customize.el is loaded at startup.
3051 2002-12-03 Satyaki Das <satyaki@theforce.stanford.edu>
3053 * mh-customize.el (mh-show-threads-flag): New customizable
3054 variable which controls if new folders start of in threaded mode
3055 (closes SF #646794).
3057 * mh-e.el (mh-rescan-folder): Fix the function so that threading
3058 is preserved across rescans.
3059 (mh-visit-folder, mh-inc-folder): The folder is threaded if it was
3060 already threaded or if mh-show-threads-flag is non-nil and the
3061 number of scan lines is fewer than mh-large-folders (closes SF
3064 2002-12-02 Mark D Baushke <mdb@gnu.org>
3066 * mh-e.el (mh-add-cur-notation): New function to mark the
3067 current message with the mh-note-cur character.
3068 (mh-get-new-mail): Use mh-add-cur-notation to undo the work of
3069 mh-remove-cur-notation if there was no new mail (closes SF #647681).
3071 * mh-e.el (mh-set-cmd-note): Do not update the default mh-cmd-note
3072 value (closes SF #643701).
3074 2002-12-02 Peter S Galbraith <psg@debian.org>
3076 * mh-alias.el (mh-alias-reload): Renamed from mh-alias-learn-aliases.
3077 (mh-alias-load-local-users): Renamed from mh-alias-learn-local-users.
3078 (mh-alias-passwd-alist): New variable, holding aliases extracted
3079 from the passwd file.
3080 (mh-alias-tstamp): New variable storing the timestamp for alias
3082 (mh-read-address, mh-alias-reload, mh-alias-reload-local-users):
3084 (mh-alias-minibuffer-confirm-address): Use mh-alias-translate.
3085 (mh-alias-translate): New function. Return translation for alias,
3086 checking if in blind or passwd list.
3087 (mh-alias-letter-expand-alias): Rewrite using
3088 mail-abbrev-complete-alias from mailabbrev.el
3089 (mh-alias-expand-alias-map): New variable.
3090 (mh-alias-ali): New function. Return formatted string of
3091 translated ALIAS from ali.
3092 (mh-mhparam-component): New function. Return COMPONENT value from
3093 mhparam, or nil if unset.
3094 (mh-alias-filenames): New function. Provide list of alias
3095 filenames from mhparam, or nil if none are set.
3097 * mh-customize.el (mh-alias-display-blind-name-on-completion-flag):
3099 (mh-alias-timestamp): Renamed to mh-alias-system-aliases.
3101 2002-12-02 Bill Wohler <wohler@newt.com>
3103 * Makefile (mh-loaddefs.el): Suppress creation of backup file.
3105 2002-12-02 Mark D. Baushke <mdb@gnu.org>
3107 * Makefile (mh-loaddefs.el): Simplify rule.
3109 * Makefile (clean): Remove mh-loaddefs.el* for good measure.
3110 ($(MH-E-OBJ)): Depend on mh-loaddefs.el to compile these.
3111 (autoloads, mh-loaddefs.el): Revamp rules.
3112 (mh-loaddefs.el-tail, autoloads-gen): Remove rules.
3114 * mh-e.el (recursive-load-depth-limit): Do not try to
3115 bump the value unless the variable exists.
3117 * mh-e.el (recursive-load-depth-limit): Bump value of
3118 recursive-load-depth-limit to 50 to allow emacs 21.1 which
3119 normally has a default value of 10 to be able to compile MH-E.
3121 2002-12-02 Satyaki Das <satyaki@theforce.stanford.edu>
3123 * mh-funcs.el (mh-pack-folder, mh-sort-folder): Fix the functions
3124 so that threading is preserved (needed for SF #646794).
3126 * mh-identity.el (mh-identity-signature-start)
3127 (mh-identity-signature-end): Checkdoc fixes.
3129 * mh-e.el (mh-previous-unread-msg, mh-next-unread-msg): Checkdoc
3132 2002-12-01 Satyaki Das <satyaki@theforce.stanford.edu>
3134 * mh-identity.el (compile): Make mh-identity.el compile without
3137 * mh-e.el (mh-previous-unread-msg, mh-next-unread-msg): New
3138 interactive functions that go to next and previous unread
3139 messages (closes SF #630328).
3140 (mh-folder-mode-map): Add key bindings for M-n and M-p to
3143 * mh-utils.el (mh-show-next-unread-msg)
3144 (mh-show-previous-unread-msg): New interactive functions that go
3145 to the next and previous unread messages respectively. These are
3146 callable from the show buffer.
3147 (mh-show-mode-map): Add key bindings for M-n and M-p to
3150 2002-12-01 Bill Wohler <wohler@newt.com>
3152 * mh-mime.el (mh-defun-compat): Make it indent like a defun.
3154 * mh-index.el (mh-defun-index): Make it indent like a defun.
3156 * mh-customize.el: New file (closes SF #643722).
3158 * Makefile (MH-E-SRC): Added mh-customize.el (closes SF #643722).
3160 * mh-speed.el, mh-pick.el, mh-mime.el, mh-index.el, mh-e.el,
3161 mh-comp.el: Moved all defgroups, defcustoms, and deffaces to
3162 mh-customize.el (closes SF #643722).
3164 * mh-utils.el (mh-xemacs-flag): Moved here from below since
3165 needed by mh-customize.el.
3166 (mh-customize): Required. mh-invisible-headers)
3167 (mh-bury-show-buffer-flag, mhl-formfile):
3168 Moved all defgroups, defcustoms, and deffaces to mh-customize.el
3169 (closes SF #643722) .
3171 * mh-identity.el (mh-comp-loaded): New variable in a desparate
3172 attempt to prevent an infinite loop.
3173 (eval-when-compile): Was able to remove these defvars as they are
3174 now predefined in mh-loaddefs and mh-customize.
3175 (mh-identity-list-set): Added ;;;###mh-autoload cookie.
3176 Moved all defgroups, defcustoms, and deffaces to mh-customize.el
3177 (closes SF #643722).
3179 * mh-alias.el (mh-e): Require this, as it needs defcustoms, which
3180 is in mh-customize which is required by mh-utils which is required
3182 Moved all defgroups, defcustoms, and deffaces to mh-customize.el
3183 (closes SF #643722).
3185 2002-11-30 Satyaki Das <satyaki@theforce.stanford.edu>
3187 * mh-e.el (mh-thread-map): Add key bindings "Td" and "To" (closes
3189 (mh-help-messages): Update help message for prefix map.
3190 (mh-help-messages): Doc fix.
3191 (mh-help-messages): Really fix it.
3193 * mh-utils.el (mh-show-thread-delete, mh-show-thread-refile): New
3194 interactive functions corresponding to mh-thread-delete and
3195 mh-thread-refile callable from the show buffer.
3196 (mh-show-thread-map): Add key bindings for "Td" "To".
3198 * mh-seq.el (mh-narrow-to-seq, mh-put-msg-in-seq, mh-rename-seq)
3199 (mh-narrow-to-subject, mh-delete-subject, mh-toggle-threads): Add
3200 mh-autoload cookies.
3201 (mh-thread-find-children): New function which finds the region
3202 containing all children of a message.
3203 (mh-thread-delete): New interactive function that marks for
3204 deletion the current message and its children.
3205 (mh-thread-refile): New interactive function that marks for
3206 refiling the current message and its children.
3208 2002-11-30 Bill Wohler <wohler@newt.com>
3210 * mh-funcs.el, mh-identity.el, mh-index.el, mh-pick.el, mh-seq.el:
3211 Removed MH-E autoloads. These are now provided by mh-loaddefs.el.
3212 Added ;;;###mh-autoload tag to selected functions so that
3213 autoloads for those functions can be automatically created in
3214 mh-loaddefs.el (closes half of SF #643722).
3216 * mh-mime.el (mh-buffer-data): Moved to mh-utils where it is used.
3217 Added ;;;###mh-autoload tag to selected functions so that
3218 autoloads for those functions can be automatically created in
3219 mh-loaddefs.el (closes half of SF #643722)..
3221 * mh-utils.el (mh-loaddefs): Added require.
3222 (mh-buffer-data): Moved here from mh-mime.el as it is used in
3224 (mh-set-cmd-note): Moved to mh-e.el.
3225 Removed MH-E autoloads. These are now provided by mh-loaddefs.el.
3226 Added ;;;###mh-autoload tag to selected functions so that
3227 autoloads for those functions can be automatically created in
3228 mh-loaddefs.el (closes half of SF #643722)..
3230 * mh-e.el (mh-set-cmd-note): Moved here from mh-utils.el since it
3231 uses mh-scan-format-file which is defined here.
3232 Removed MH-E autoloads. These are now provided by mh-loaddefs.el.
3233 Added ;;;###mh-autoload tag to selected functions so that
3234 autoloads for those functions can be automatically created in
3235 mh-loaddefs.el (closes half of SF #643722)..
3237 * mh-comp.el, mh-speed.el (mh-utils): Removed require. mh-utils is
3238 provided via mh-e.el.
3239 Removed MH-E autoloads. These are now provided by mh-loaddefs.el.
3240 Added ;;;###mh-autoload tag to selected functions so that
3241 autoloads for those functions can be automatically created in
3242 mh-loaddefs.el (closes half of SF #643722)..
3244 * Makefile (emacs): Add dependency on autoloads.
3245 (clean): Remove mh-loaddefs.el too.
3246 (autoloads): New target. Builds mh-loaddefs.el.
3247 (mh-loaddefs.el): New target. Initializes mh-loaddefs.el.
3248 (mh-loaddefs.el-tail): New target. Appends to mh-loaddefs.el.
3249 (autoloads-gen): Runs batch-update-autoloads to populate
3250 mh-loaddefs.el (closes half of SF #643722)..
3251 (auto-autoloads.elc): Renamed from autoloads to be explicit about
3252 file that's created.
3253 (custom-load.elc): Ditto.
3255 2002-11-30 Satyaki Das <satyaki@theforce.stanford.edu>
3257 * mh-seq.el (mh-thread-last-ancestor): New variable which keeps
3258 track of oldest ancestor of last message. If due to narrowing the
3259 common ancestor of two messages is lost then one of them is
3260 promoted to be the parent of the other. This variable helps in
3262 (mh-thread-generate-scan-lines): Group messages which belong to
3263 the same thread tree, even if a common ancestor is no longer
3265 (mh-thread-folder, mh-copy-seq-to-eob, mh-thread-inc): Bind
3266 mh-thread-last-ancestor to nil when calling
3267 mh-thread-generate-scan-lines.
3269 * mh-mime.el (font-lock): Font-lock required at compile time to
3270 avoid warning about font-lock-maximum-size
3271 (mh-display-smileys, mh-display-emphasis): Show graphical smileys
3272 and emphasis only if message isn't too large.
3274 * mh-e.el (mh-visit-folder): Revisiting a buried folder which has
3275 been threaded or narrowed confuses MH-E. Even though the folder is
3276 displayed as not threaded and not narrowed, MH-E still believes
3277 the folder is in the previous state. This can cause problems when
3278 trying to narrow/thread the folder. The change fixes this.
3280 * mh-mime.el (mh-mime-display-alternative): The setting of
3281 mh-display-buttons-for-inline-parts-flag was not being used when
3282 displaying one of the alternatives. This change fixes that.
3284 * mh-comp.el (mh-show-buffer-message-number): Replace subseq with
3286 (mh-filter-out-non-text): When filtering out MIME buttons from
3287 yanked text, the last line of the MIME part was getting lost. The
3288 fix avoids that and removes only the last new line instead.
3290 2002-11-29 Peter S Galbraith <psg@debian.org>
3292 * Makefile (MH-E-SRC): Add mh-alias.
3294 * mh-alias.el: Assign copyright to FSF instead of myself.
3295 (mh-read-address): Add support for emacs-21's
3296 completing-read-multiple to prompt for multiple entries.
3297 (mh-alias-PC-complete-address): Deleted.
3298 (mh-alias-learn-aliases): Use mh-exec-cmd-quiet instead of old kludge.
3299 (mh-alias-letter-mode-expand-alias-hook): Simplify.
3300 (mh-alias-hostname): Deleted.
3301 (mh-alias-substitute-aliases-flag): Change default to nil.
3302 (mh-alias-display-blind-name-on-completion-flag) Change default to
3304 (mh-alias-alist): Now holds alias values.
3305 (mh-alias-lowercase-alist): Deleted.
3306 (mh-alias-minibuffer-confirm-address, mh-alias-learn-aliases)
3307 (mh-alias-learn-local-users, mh-alias-letter-expand-alias): Use
3308 new mh-alias-alist instead of old mh-alias-lowercase-alist.
3310 * mh-alias.el: Moved from contrib/ directory. Now part of MH-E!
3312 * Makefile (MH-E-SRC): Add mh-identity.
3314 * mh-identity.el (mh-compose-and-send-mail, mh-insert-identity)
3315 (mh-identity-make-menu, mh-identity-default, mh-identity-menu):
3316 Moved to mh-comp.el.
3318 * mh-comp.el (mh-compose-and-send-mail): Add mh-identity support.
3319 (mh-insert-identity, mh-identity-make-menu, mh-identity-default)
3320 (mh-identity-menu): Added from mh-identity.el
3322 2002-11-29 Bill Wohler <wohler@newt.com>
3324 * mh-comp.el, mh-e.el, mh-funcs.el, mh-identity.el, mh-index.el,
3325 mh-mime.el, mh-pick.el, mh-seq.el, mh-speed.el, mh-utils.el:
3326 Ran indent-region, reformatted long lines, ran untabify.
3327 (indent-tabs-mode): Set file local variable to nil.
3329 2002-11-29 Bill Wohler <wohler@newt.com>
3331 * Released MH-E version 7.0.
3333 * mh-e.el (Version, mh-version): Updated for release 7.0.
3335 * mh-comp.el (subseq, search): Require cl instead of autoloading
3336 these due to compilation warnings in CVS Emacs.
3338 2002-11-23 Bill Wohler <wohler@newt.com>
3340 * MH-E-NEWS: Emphasize the renaming of the variables at the top of
3343 2002-11-22 Satyaki Das <satyaki@theforce.stanford.edu>
3345 * mh-utils.el (mh-show-mode-map): Remove binding for RET since it
3346 is not needed and the binding is more useful to toggle display of
3349 * mh-mime.el (mh-mime-button-commands): Remove bindings for "i"
3350 and "o" from MIME buttons.
3351 (mh-insert-mime-button): Change comment to reflect change in
3354 2002-11-21 Bill Wohler <wohler@newt.com>
3356 * Released MH-E version 6.1.91.
3358 * mh-e.el (Version, mh-version): Updated for release 6.1.91.
3360 * MH-E-NEWS: Inline HTML parts supported with Gnus 5.10, not 5.9.
3362 2002-11-21 Mark D. Baushke <mdb@gnu.org>
3364 * mh-comp.el (mh-letter-insert-signature-hook): This should be in
3365 customize-group mh-compose.
3367 2002-11-21 Satyaki Das <satyaki@theforce.stanford.edu>
3369 * mh-utils.el (load): Load mm-view.el here so that
3370 mm-inline-text-html would be defined if available.
3371 (mh-mm-inline-media-tests): If mm-inline-text-html is available
3372 then use it, otherwise fall back on using mm-inline-text (closes
3375 * mh-mime.el (load): Remove the load of mm-view here since it
3376 happens in mh-utils.el now.
3378 2002-11-15 Bill Wohler <wohler@newt.com>
3380 * Released MH-E version 6.1.90.
3382 * README (Compile): New section. Users must now compile MH-E due
3383 to the vagaries of the various versions of gnus.
3385 * Makefile (MH-E-IMG): Added reply-all.pbm, reply-all.xpm,
3386 reply-from.pbm, reply-from.xpm, reply-to.pbm, reply-to.xpm.
3387 (MH-E-ETC-ETC): Added Makefile and README.
3388 (dist): Depend on all, so clean happens. Don't add .elc files to
3389 tarball as they are built upon installation now.
3391 2002-11-15 Satyaki Das <satyaki@theforce.stanford.edu>
3393 * mh-e.el (mh-process-commands): Fix a bug in mh-execute-commands.
3394 If called in threaded mode, cur was always getting set to the last
3395 message in the folder.
3397 2002-11-14 Bill Wohler <wohler@newt.com>
3399 * mh-e.el (Version, mh-version): Updated for release 6.1.90.
3401 * MH-E-NEWS, README: Updated for release 7.0.
3403 * mh-utils.el (mh-index-search): Added full docstring which new
3404 users will need before they run a search!
3405 (mh-swish++-execute-search, mh-swish-execute-search,
3406 mh-namazu-execute-search mh-glimpse-execute-search): Added
3407 autoloads with full docstrings for the same reason!
3409 * mh-e.el (mh-limit-map): Removed / / alias for
3410 mh-narrow-to-subject.
3412 * mh-utils.el (mh-show-thread-map): Removed / / alias for
3413 mh-show-narrow-to-subject.
3415 * mh-seq.el (mh-delete-subject): Checkdoc fix.
3417 * mh-e.el (mh-help-messages): Added / prefix character to help
3418 string. Tweaked / helpstring a little.
3420 2002-11-14 Mark D. Baushke <mdb@gnu.org>
3422 * mh-utils.el (mh-set-cmd-note): Fix nitpick by adding one to the
3423 width for cosmetic reasons.
3425 2002-11-14 Peter S Galbraith <psg@debian.org>
3427 * mh-identity.el (mh-insert-identity): Fix a few things undone by
3429 (mml-insert-tag): Add autoload.
3431 2002-11-13 Mark D. Baushke <mdb@gnu.org>
3433 * mh-identity.el (mh-insert-identity): A value of either nil or
3434 "" should cause the field to be removed.
3435 (mh-identity-list): Update the docstring.
3437 2002-11-13 Peter S Galbraith <psg@debian.org>
3439 * mh-e.el (mh-limit-map): New key map for limits (subject for now).
3440 * mh-utils.el (mh-show-limit-map): Same.
3442 * mh-seq.el (mh-delete-subject): Renamed from
3443 mh-delete-subject-sequence.
3444 (mh-narrow-to-subject): Renamed from mh-narrow-to-subject-sequence.
3445 (mh-next-unseen-subject-sequence): Removed. :-(
3447 * mh-seq.el: Use 'em.
3449 2002-11-13 Mark D. Baushke <mdb@gnu.org>
3451 * mh-e.el (mh-alt-show): New defalias for mh-show.
3452 (mh-alt-refile-msg): New defalias for mh-refile-msg.
3453 (mh-alt-send): New defalias for mh-send.
3454 (mh-folder-mode-map): Use mh-alt-show, mh-alt-refile-msg and
3455 mh-alt-send for the alias bindings.
3456 (mh-alt-visit-folder): New defalias for mh-visit-folder.
3457 (mh-folder-map): Use it.
3458 (mh-folder-message-menu): Revert previous change.
3460 2002-11-13 Peter S Galbraith <psg@debian.org>
3462 * mh-e.el (mh-folder-message-menu): Make key binding "o" appear in
3463 menu for mh-refile-msg.
3465 2002-11-13 Satyaki Das <satyaki@theforce.stanford.edu>
3467 * mh-seq.el (mh-thread-generate-scan-lines): In threaded view,
3468 scan lines of duplicate messages were too long. The change fixes
3471 2002-11-13 Bill Wohler <wohler@newt.com>
3473 * mh-utils.el (mh-adaptive-cmd-note-flag): Improved grammar in
3476 * mh-speed.el (mh-speed-run-flists-flag): While documenting this
3477 variable in the release notes, I was unsure what would happen if
3478 set to nil. So, I clarified the docstring and indicated
3479 implications of setting this variable to nil, and offered manual
3482 2002-11-13 Satyaki Das <satyaki@theforce.stanford.edu>
3484 * mh-index.el (mh-index-quit): Fix documentation and run
3485 mh-before-quit-hook and mh-quit-hook.
3487 2002-11-13 Bill Wohler <wohler@newt.com>
3489 * mh-utils.el (with-mh-folder-updating): Renamed local variable
3490 mh-save-modification-flag to save-modification-flag.
3492 2002-11-12 Bill Wohler <wohler@newt.com>
3494 * mh-index.el (mh-index-keymap): Renamed to
3495 mh-index-folder-mode-keymap to be a closer to the usual keymap
3496 naming convention. Since we want our own keymap and not inherit
3497 the one in mh-folder-mode, we need to use a suffix other than
3500 * mh-e.el (mh-folder-sequence-menu): s/Msg/Message.
3502 (mh-folder-message-menu): s/Msg/Message. Removed redundant refile
3504 (mh-folder-folder-menu): Aligned symbols.
3506 * mh-index.el (mh-index-folder-message-menu): s/Msg/Message.
3508 * mh-utils.el (mh-show-sequence-menu): s/Msg/Message.
3510 (mh-show-message-menu): s/Msg/Message. Removed redundant refile
3512 (mh-show-folder-menu): Aligned symbols.
3514 2002-11-12 Satyaki Das <satyaki@theforce.stanford.edu>
3516 * mh-index.el (mh-index-matches, mh-index-current-match): Remove
3517 these variables since they were only used for glimpse and grep.
3518 Now the functionality of all the indexing programs will be
3520 (mh-index-search, mh-index-insert-scan, mh-defun-index)
3521 (mh-index-show): Simplify functions since matches are no longer
3523 (mh-index-parse-match): Remove function.
3525 * mh-e.el (mh-scan-cmd-note-width, mh-scan-destination-width)
3526 (mh-scan-date-width, mh-scan-date-flag-width)
3527 (mh-scan-from-mbox-width, mh-scan-from-mbox-sep-width): New
3528 variables to keep track of the widths of the different fields in
3530 (mh-scan-field-from-start-offset, mh-scan-field-from-end-offset)
3531 (mh-scan-field-subject-start-offset): Offsets that are computed
3532 from the scan line widths.
3534 * mh-seq.el (mh-copy-seq-to-eob, mh-thread-inc)
3535 (mh-thread-parse-scan-line): Use new variables that remember the
3536 various offsets in place of integer constants.
3537 (mh-thread-generate-scan-lines): Space shouldn't be added here!
3539 2002-11-12 Bill Wohler <wohler@newt.com>
3541 * mh-e.el (mh-scan-format-mh, mh-scan-format-nmh): Noted that the
3542 first column is column number 0 and changed "sixth column" to
3543 "fifth column" accordingly.
3545 * mh-index.el (mh-index-folder-mode): Clarified method of replying
3546 in mode documentation.
3547 (mh-index-folder-tool-bar-map): s/mh-e/MH-E/.
3549 * mh-e.el (mh-generate-new-cmd-note): Try not to mention internal
3550 variable mh-cmd-note in docstrings.
3552 * mh-utils.el (mh-adaptive-cmd-note-flag): Set default value to t.
3553 Reworded docstring so it doesn't mention internal variable
3554 mh-cmd-note. Added information about using fixed-width message
3556 (mh-cmd-note): Mention mh-set-cmd-note in docstring. Also suggest
3557 that it is updated dynamically only if mh-scan-format-file is t.
3558 (mh-set-cmd-note): Grammer fix in docstring.
3559 (mh-cmd-note): Noted that the first column is column number 0.
3561 * mh-e.el (mh-scan-format-file): Added information about
3562 mh-set-cmd-note and mh-adaptive-cmd-note-flag to docstring.
3564 * mh-index.el (mh-index-keymap): Added bindings for i
3565 (mh-inc-folder), m (mh-send alias), and s (mh-send) since these
3566 appear to be supported and are found in the toolbar.
3567 (mh-index-folder-key-map): Ditto for f (mh-visit-folder alias), o
3568 (mh-visit-folder) alias, and v (mh-visit-folder).
3569 (mh-index-folder-mode-help-messages): Changes for above.
3570 (mh-index-folder-message-menu, mh-index-folder-folder-menu): New
3571 menus. I decided to delete the unavailable items since greying out
3572 implies that the user can do something to access them. In this
3573 case, that's not the case. Well, that's not entirely true--the
3574 user could write code for those functions ;-).
3575 (mh-index-folder-mode): Use new menus.
3577 * mh-utils.el (mh-prompt-for-folder): Added optional argument
3578 default-string which can be used in case the string for default
3579 isn't intuitive enough.
3581 * mh-index.el (mh-index-search): Made default prompt more
3582 intuitive (I hope!).
3584 2002-11-11 Peter S Galbraith <psg@debian.org>
3586 * mh-identity.el (mh-header-field-delete): Remove save-excursion.
3587 Strange that this worked for me before... Thanks to Jeff for the
3589 (mh-insert-identity): Numerous tweaks and fixes from Jeff who also
3590 adds a nicer-looking MIME header for signatures inserted after
3593 2002-11-11 Satyaki Das <satyaki@theforce.stanford.edu>
3595 * mh-seq.el (mh-thread-parse-scan-line): Generalize this function
3596 so that it can take a string containing the scan-line as argument
3597 in addition to using the line at point.
3598 (mh-thread-add-spaces): New function to pad each scan line to the
3599 appropriate length. This is called when mh-cmd-note is increased.
3601 * mh-e.el (mh-generate-new-cmd-note): Make this work on a threaded
3602 folder by using mh-thread-add-spaces to pad the pre-existing lines
3603 in mh-thread-scan-line-map appropriately.
3604 (mh-thread-add-spaces): Autoload from mh-seq.
3606 2002-11-11 Mark D. Baushke <mdb@gnu.org>
3608 * mh-index.el: Fix checkdoc nit.
3610 * mh-mime.el (mh-display-buttons-for-inline-parts-flag): Renamed
3611 from mh-display-buttons-for-inline-parts.
3612 (mh-mime-display-single): Use it.
3613 This addresses part of SF #627015.
3615 * mh-e.el (mh-print-background-flag): Renamed from
3616 mh-print-background.
3617 * mh-funcs.el (mh-print-msg): Use it.
3618 This addresses part of SF #627015.
3620 * mh-comp.el (mh-delete-yanked-msg-window-flag): Renamed from
3621 mh-delete-yanked-msg-window.
3622 (mh-yank-from-start-of-msg, mh-yank-cur-msg): Use it.
3623 This addresses part of SF #627015.
3625 * mh-utils.el (mh-update-sequences-after-mh-show-flag): Renamed
3626 from mh-update-sequences-after-mh-show.
3627 (mh-show-msg): Use it.
3628 This addresses part of SF #627015.
3630 * mh-utils.el (mh-decode-quoted-printable-flag): Renamed from
3631 mh-decode-quoted-printable
3632 (mh-display-msg, mh-decode-quoted-printable-have-mimedecode):
3634 This addresses part of SF #627015.
3636 * mh-utils.el (mh-recursive-folders-flag): Renamed from
3637 mh-recursive-folders.
3638 (mh-make-folder-list-background): Use it.
3639 * mh-funcs.el (mh-list-folders): Ditto.
3640 This addresses part of SF #627015.
3642 * mh-utils.el (mh-auto-folder-collect-flag): Renamed from
3643 mh-auto-folder-collect.
3644 (mh-find-path): Use it.
3645 This addresses part of SF #627015.
3647 * mh-utils.el (mh-decode-mime-flag): Renamed from
3649 * mh-utils.el (mh-show-mode, mh-show-xface)
3650 (mh-decode-quoted-printable, mh-display-msg, mh-display-msg): Use it.
3651 * mh-mime.el (mh-graphical-smileys-flag)
3652 (mh-graphical-emphasis-flag): Ditto.
3653 * mh-index.el (mh-index-search, mh-index-show): Ditto.
3654 * mh-e.el (mh-header-display): Ditto.
3655 This addresses part of SF #627015.
3657 * mh-e.el (mh-make-folder-mode-line): Use save-window-excursion
3658 to get back to the current message.
3660 2002-11-10 Satyaki Das <satyaki@theforce.stanford.edu>
3662 * mh-index.el (mh-index-keymap, mh-index-page-msg)
3663 (mh-index-folder-tool-bar-map): Replace mh-index-scroll-up with
3665 (mh-index-keymap, mh-index-previous-page): Replace
3666 mh-index-scroll-down with mh-index-previous-page.
3668 2002-11-09 Satyaki Das <satyaki@theforce.stanford.edu>
3670 * mh-index.el (autoload/require): Load mh-mime when mh-index.el is
3671 loaded. This fixes the infinite load loop. I am not sure what the
3672 actual problem is. Also removed the nop requires/autoloads.
3673 (mh-defun-index): Use the right argument for mh-recenter.
3674 Otherwise it misbehaves for the default value of
3677 * mh-e.el (mh-goto-next-button): Fix infinite loop when S-Tab was
3678 used on first line of index folder buffer.
3680 2002-11-09 Peter S Galbraith <psg@debian.org>
3682 * mh-index.el (mh-index-folder-tool-bar-map): Tool-bar for
3684 (mh-index-folder-mode): Use it.
3685 (mh-index-keymap): Added mouse-2 binding, like in regular
3688 2002-11-08 Satyaki Das <satyaki@theforce.stanford.edu>
3690 * mh-index.el (mh-index-folder-mode): Fix doc string for major
3691 mode. It was pointing to the wrong keymap.
3692 (mh-index-show-mode): Fix doc string for mode. Also add mh-help
3695 * mh-comp.el (mh-forward, mh-yank-cur-msg): Use new macro
3696 mh-mark-active-p instead. This does the right thing for different
3698 (mh-yank-cur-msg): Add a space between sexprs.
3700 * mh-utils.el (mh-mark-active-p): New macro which papers over
3701 diffences between GNU Emacs and XEmacs. The variables mark-active
3702 and transient-mark-mode are used in GNU Emacs while zmacs-regions
3703 and region-active-p are used in XEmacs.
3705 * mh-seq.el (mh-put-msg-in-seq, mh-thread-ancestor-p): Use
3706 mh-mark-active-p as above.
3708 * mh-e.el (mh-delete-msg, mh-refile-msg, mh-undo): Use
3709 mh-mark-active-p as above.
3711 2002-11-06 Peter S Galbraith <psg@debian.org>
3713 * mh-comp.el (mh-yank-cur-msg): Fix for XEmacs. It didn't work
3714 with a selected region, and left the inserted text selected (in
3715 reverse video). I didn't use SF patch #402315 to implement this.
3717 2002-11-05 Peter S Galbraith <psg@debian.org>
3719 * mh-utils.el (mh-show-tool-bar-map): Change call to
3720 mh-tool-bar-search-command such that user can customize it for the
3723 * mh-e.el (mh-folder-tool-bar-map): Same.
3725 2002-11-05 Bill Wohler <wohler@newt.com>
3727 * mh-utils.el, mh-e.el (mh-tool-bar-search-function): Renamed from
3728 mh-tool-bar-search-command.
3730 * mh-index.el (mh-index-search): Backed out previous change to
3731 prompt. There ain't no folder named "all."
3733 * mh-utils.el (mh-tool-bar-search-command): Added mh-search-folder
3734 and mh-index-search to the docstring so that user can easily click
3735 on them for more information.
3737 * mh-pick.el (mh-search-folder): Mention that this function uses
3738 the MH pick command to give the user more information when
3739 choosing between mh-search-folder and mh-index-folder.
3741 * mh-index.el (mh-index-search): Edited the docstring. Direct the
3742 user to mh-index-program if necessary.
3743 (mh-index-program): Edited this docstring too. Viewing the help
3744 in a *Help* buffer really exposes grammatical flaws.
3746 2002-11-05 Peter S Galbraith <psg@debian.org>
3748 * mh-utils.el (mh-tool-bar-search-command): New defcustom to set
3749 what search function to use in tool-bar.
3750 (mh-show-tool-bar-map): Use it.
3752 * mh-e.el (mh-folder-tool-bar-map): Use it.
3754 2002-11-05 Bill Wohler <wohler@newt.com>
3756 * mh-index.el (mh-index-search): Changed default prompt from "+"
3757 to "all". mh-prompt-for-folder doesn't seem to mind.
3759 * mh-e.el (mh-folder-folder-menu): Added menu entry for
3762 * mh-utils.el (mh-show-folder-menu): Added menu entry for
3765 * mh-index.el: Added commentary on supported search engines and
3766 for getting started (initializing database).
3768 2002-11-04 Satyaki Das <satyaki@theforce.stanford.edu>
3770 * mh-index.el (mh-index-keymap, mh-index-folder-key-map): Move key
3771 binding of "i" to "Fi".
3772 (mh-index-folder-mode-help-messages): Change help message to
3773 reflect above change.
3775 2002-11-04 Bill Wohler <wohler@newt.com>
3777 * mh-index.el (mh-index-program, mh-indexer): Swapped names since
3778 the former seems like a better user variable name. If you've
3779 customized mh-indexer, be sure to toss it out and customize
3782 2002-11-04 Satyaki Das <satyaki@theforce.stanford.edu>
3784 * mh-index.el (mh-indexer-choices): Not having the quotes in the
3785 binary names is a bit nicer since that maintains uniformity with
3787 (mh-index-choose): Use symbol-value instead of eval. Eval should
3788 be avoided except when it can't be :-).
3790 2002-11-04 Bill Wohler <wohler@newt.com>
3792 * mh-index.el (mh-index-program): New variable to hold the name of
3793 the indexer that was found; use this instead of clobbering
3794 user-customizable variable mh-indexer.
3795 (mh-index-search): Use it. Added comments to keep others from
3796 doing what I had done (fortunately, I caught myself before
3798 (mh-index-choose): Set mh-index-program instead of mh-indexer.
3799 Update docstring to describe side-effects.
3801 * mh-index.el (mh-indexer): Added swish++ to docstring. Chances
3802 are good that if someone has both swish++ and swish, they want to
3803 use the much faster, much smaller swish, so move it up in the
3805 (mh-indexer-choices): Ditto for rationale for moving swish++ up in
3806 priority over swish. Also, use -binary symbols instead of
3807 hard-coding binary names. This allows package installers to
3808 customize the location of the binaries in site-lisp and still have
3809 the auto-detection code work. It also allows one to have alternate
3810 binary names (see mh-swish++-binary).
3811 (mh-index-search): Ditto (moving swish++ up).
3812 (mh-swish++-binary): Look for search++, then search. The rationale
3813 is that a package maintainer may rename search to search++ if
3814 search is already in use (e.g., Debian) so try it first.
3815 (mh-swish++-execute-search): Replaced Satyaki's path with dummy
3816 path in docstring. Also removed RecurseSubdirs since this is the
3817 default. Added comment that index might be named index++ on some
3818 systems (e.g., Debian).
3819 (mh-index-choose): Updated to work with new mh-indexer-choices.
3821 2002-11-04 Peter S Galbraith <psg@debian.org>
3823 * mh-identity.el (mh-identity-list-set): Don't call easy-menu-add
3824 here, since that adds the menu to the Customize buffer in XEmacs.
3826 2002-11-04 Peter S Galbraith <psg@debian.org>
3828 * mh-comp.el (mh-mhn-compose-insert-flag)
3829 (mh-mml-compose-insert-flag): Removed eval-when-compile defvar.
3831 * mh-mime.el (mh-mhn-compose-insert-flag)
3832 (mh-mml-compose-insert-flag): Move variables to mh-utils.el.
3833 Fixes mh-letter-menu for XEmacs.
3835 2002-11-04 Eric Ding <eding@rational.com>
3837 * mh-comp.el (mh-rejected-letter-start): add another string
3839 2002-11-04 Eric Ding <ericding@alum.mit.edu>
3841 * mh-comp.el (mh-rejected-letter-start): regexp-opt doesn't take
3842 regexps as args, only regular strings
3844 2002-11-04 Peter S Galbraith <psg@debian.org>
3846 * mh-comp.el (mh-insert-mail-followup-to): Don't modify a
3847 pre-existing M-F-T field. If a nmh replgroupcomps propagates a
3848 M-F-T field in a message reply, then we have to have it alone.
3850 2002-11-02 Bill Wohler <wohler@newt.com>
3852 * mh-comp.el, mh-e.el, mh-funcs.el, mh-identity.el, mh-index.el,
3853 mh-mime.el, mh-pick.el, mh-seq.el, mh-speed.el, mh-utils.el,
3854 mh-xemacs-compat.el: Added Local Variables section. Defined
3855 sentence-end-double-space to be nil so that those who might not
3856 buy my setting of this variable can at least run checkdoc without
3857 a whole lot of noise.
3859 2002-11-02 Peter S Galbraith <psg@debian.org>
3861 * mh-identity.el: New file. Multiple Identify support for MH-E.
3862 Used to easily set different fields such as From and Organization,
3863 as well as diffrent signature files. This file won't be included
3866 2002-11-02 Bill Wohler <wohler@newt.com>
3868 * mh-mime.el (mh-mm-save-part): New function to wrap mm-save-part
3869 from Gnus 5.10 to make it explicit which code has been
3871 (mh-mime-save-part): Call mh-mm-save-part instead of cut-n-pasted
3872 code from Gnus 5.10.
3874 2002-11-02 Peter S Galbraith <psg@debian.org>
3876 * mh-comp.el (mh-yank-from-start-of-msg): Edit docstring to
3877 mention related variables mh-reply-show-message-flag and
3878 mh-delete-yanked-msg-window.
3879 (mh-reply): Change the "Reply to whom" prompt.
3881 2002-11-01 Bill Wohler <wohler@newt.com>
3883 * mh-e.el (mh-show-hook): Moved to mh-utils.el where it is used.
3884 (mh-folder-list-change-hook): Converted this from defvar in other
3885 files to defcustom here. It is called, not documented as
3886 obsolete, and might as well be documented.
3887 (mh-inc-folder, mh-quit, mh-delete-a-msg, mh-refile-a-msg,
3888 mh-process-commands, mh-update-unseen): Added missing
3889 documentation about hook, or made verbiage about hook consistent
3890 throughout, even if the function isn't interactive.
3892 * mh-utils.el (mh-folder-list-change-hook): Moved defvar to mh-e
3893 and made it a defcustom.
3894 (mh-show-mode-hook): Put it back in (actually, it was in mh-e.el,
3895 but this is the place where it is called).
3896 (mh-show-hook): Moved here from mh-e.el since it's called here.
3897 (mh-show-mode): Call mh-show-mode-hook.
3898 (mh-show-mode, mh-show-msg, mh-find-path, mh-prompt-for-folder,
3899 mh-prompt-for-folder, mh-set-folder-list): Added missing
3900 documentation about hook, or made verbiage about hook consistent
3901 throughout, even if the function isn't interactive.
3903 * mh-comp.el (mh-send-letter): Made verbiage about hook consistent
3905 (mh-insert-prefix-string): Made docstring more descriptive of what
3908 * mh-funcs.el (mh-kill-folder): Added missing documentation about
3911 * mh-index.el (mh-index-show-hook): Moved defvar to defcustom.
3912 (mh-index-show): Made verbiage about hook consistent throughout.
3914 * mh-mime.el (mh-edit-mhn-hook): Moved defvar to defcustom.
3915 (mh-edit-mhn): Added missing documentation about hook.
3917 * mh-pick.el (mh-pick-mode): Made verbiage about hook consistent
3918 throughout. Call the damn hook.
3920 2002-11-01 Satyaki Das <satyaki@theforce.stanford.edu>
3922 * mh-comp.el (mh-insert-mail-followup-to-list): Fix typo so that
3923 it will look right in info.
3925 * mh-index.el (mh-index-search): Change argument name from
3926 new-buffer-p to new-buffer-flag.
3927 (mh-index-search-again, mh-index-search): New index-buffers were
3928 being named *mh-index*<2>, *m-index*<2><2> and so on. This problem
3930 (mh-index-scroll-up, mh-index-scroll-down): Scrolling in index
3931 show buffers (after the first one) was broken.
3932 (mh-index-quit): Bury show buffer instead of killing it. Killing
3933 it, without killing the corresponding folder buffer, can cause
3934 confusion with two folder buffers trying to display in the same
3937 * mh-seq.el (mh-thread-prune-containers): Rewritten without
3938 recursion. Also removed the top-level-p argument since it isn't
3940 (mh-thread-sort-containers): New function factored out from
3941 previous definition of mh-thread-prune-containers. It sorts
3942 message containers in ascending order wrt their message indices.
3943 (mh-thread-generate): Use new mh-thread-prune-containers.
3945 * mh-e.el (mh-remove-all-notation): Fix the test. It was testing
3948 2002-10-31 Bill Wohler <wohler@newt.com>
3950 * Makefile, README, import-emacs, mh-comp.el, mh-e.el,
3951 mh-funcs.el, mh-index.el, mh-mime.el, mh-pick.el, mh-seq.el,
3952 mh-speed.el, mh-utils.el: Replaced mh-e with MH-E.
3954 2002-10-31 Satyaki Das <satyaki@theforce.stanford.edu>
3956 * mh-seq.el (mh-thread-parse-scan-line): Modified to remove user
3957 sequence notation and leave notation for other things alone. This
3958 ensures that threading doesn't lose notations for replied-to
3961 * mh-e.el (mh-inc-folder): Remove call to mh-widen here and
3962 instead do it in mh-get-new-mail. This way the widening happens
3963 only if new mail is incorporated.
3964 (mh-generate-new-cmd-note): The function now returns the point
3965 from which the new messages start. This will allow threading to do
3967 (mh-get-new-mail): Always call mh-remove-cur-notation. Otherwise
3968 adaptive scan mode leaves two messages marked as current in
3969 certain cases. Fix indentation of if statement. If there are
3970 messages to be incorporated, the folder is widened. If mh-cmd-note
3971 changes set start-of-inc correctly.
3972 (mh-remove-all-notation): Change this function to only remove user
3973 sequence notation and leave notation for replied-to messages and
3974 similar notation alone. This means operations like narrowing to
3975 subject sequence and widening don't lose notations.
3977 2002-10-31 Bill Wohler <wohler@newt.com>
3979 * mh-comp.el (mh-insert-mail-followup-to-list): Fixed typo in
3980 docstring and other minor edits. Checkdoc removed trailing spaces.
3981 (mh-insert-signature): Checkdoc flagged docstring. Reverted to
3982 previous value. Added specific name of hook that is run.
3983 (mh-regexp-in-field-p, mh-insert-letter): Checkdoc removed
3986 2002-10-31 Jeffrey C Honig <jch@honig.net>
3988 * mh-e.el (mh-show-mode-hook): Remove the unused
3989 mh-show-mode-hook, mh-show-hook is the one that is used.
3991 * mh-utils.el (mh-show-mode): Change the documentation to refer to
3992 mh-show-hook instead of the unused mh-show-mode-hook.
3994 2002-10-31 Peter S Galbraith <psg@debian.org>
3996 * mh-comp.el (mh-insert-mail-followup-to-list): Set default to nil
3997 and include example in doc string.
3999 2002-10-31 Satyaki Das <satyaki@theforce.stanford.edu>
4001 * mh-index.el (mh-indexer): Add customization choice for swish++.
4002 (mh-indexer-choices): Add swish++ choice.
4003 (mh-index-search): Change doc to reflect addition of swish++ option.
4004 (mh-swish++-binary, mh-swish++-directory): New variables for
4006 (mh-swish++-execute-search): New function to execute swish++
4008 (mh-swish++-next-result): Function aliased to mh-swish-next-result
4009 since the result format of swish++ is the same as that of swish-e.
4010 (mh-index-search): Always overwrite window-configuration with new
4011 value. This is needed since we don't kill the index-buffer when
4012 quitting which means the window configuration wasn't getting set
4014 (mh-index-search-again): If index buffer is reused, reset the old
4015 window config to its original value.
4017 2002-10-30 Bill Wohler <wohler@newt.com>
4019 * Makefile (emacs, xemacs): New targets.
4020 (all): Use these targets instead of calling specific targets.
4021 (.PHONY): Added emacs, xemacs, autoloads, custom-loads. Broke up
4022 target and moved pieces into their own sections.
4025 2002-10-30 Peter S Galbraith <psg@debian.org>
4027 * mh-utils.el (mh-show-font-lock-keywords): Wrap an
4028 'eval-and-compile around its defvar, otherwise byte-compilation
4029 fails on `mh-show-font-lock-keywords-with-cite'.
4031 2002-10-29 Jeffrey C Honig <jch@honig.net>
4033 * mh-comp.el (mh-letter-insert-signature-hook)
4034 (mh-insert-signature): Add a hook to be called before inserting
4035 the signature. Do not attempt to insert the signature if
4036 mh-insert-signature-file-name is nil.
4038 2002-10-29 Peter S Galbraith <psg@debian.org>
4040 * mh-e.el (mh-inc-folder): Call mh-widen when mh-narrowed-to-seq
4041 (Closes SF #629233: inc in narrowed folder suboptimal)
4043 * mh-comp.el (mh-insert-letter): Stop using mhl to include a
4044 message before it mangles the header, and supercite fails
4045 (Closes SF #629153: mh-insert-letter uses mhl?).
4046 (mh-insert-prefix-string): Leave point at beginning instead of
4047 end, since that's what sc-cite-original does.
4048 (mh-yank-cur-msg): Adjust for mh-insert-prefix-string change.
4050 2002-10-30 Steve Youngs <youngs@xemacs.org>
4052 * mh-e.el (mh-folder-mode): Check for 'font-lock-auto-fontify'
4053 when in XEmacs so we don't do font-locking unconditionally.
4055 * mh-utils.el (mh-show-mode): Ditto.
4057 2002-10-29 Peter S Galbraith <psg@debian.org>
4059 * mh-e.el (mh-folder-refiled-face, mh-folder-cur-msg-number-face)
4060 (mh-folder-to-face, mh-folder-body-face): Define faces instead of
4061 copying them from font-lock faces. This mh-e will look the same
4062 in XEmacs as it does in Emacs.
4063 * mh-utils.el (mh-show-cc-face, mh-show-date-face)
4064 (mh-show-header-face): Ditto.
4066 2002-10-29 Jeffrey C Honig <jch@honig.net>
4068 * mh-comp.el (mh-send-letter): I meant to use
4069 mh-goto-header-field, not mh-get-header-field. The former returns
4070 nil if the header is not found and doesn't need a conditional.
4072 2002-10-29 Peter S Galbraith <psg@debian.org>
4074 * mh-comp.el (mh-forward): Bug fix. Change 'kill-line for a
4075 'delete-region, because I don't want that text yanked with C-y.
4077 * mh-seq.el (mh-put-msg-in-seq): Add support for selected
4078 region (Closes SF feature request #630324).
4080 2002-10-28 Satyaki Das <satyaki@theforce.stanford.edu>
4082 * mh-seq.el (mh-thread-prune-subject): Make the regexp a little
4083 general so that a subject of the form "Re[218]: howdy" would be
4086 * mh-mime.el (mh-mime-save-part): Copy function definition of
4087 mm-save-part from cvs gnus since that function is buggy in gnus
4088 that comes with emacs21.2.
4090 2002-10-28 Peter S Galbraith <psg@debian.org>
4092 * mh-e.el (mh-scan-subject-regexp): Add an expression to match an
4093 optional bracketed number after "Re", such as in "Re[2]:"
4094 (Patch by Satyaki; I checked it and applied).
4095 (mh-folder-font-lock-subject): Adapt to new mh-scan-subject-regexp.
4096 * mh-seq.el (mh-subject-to-sequence): Ditto.
4098 * mh-e.el (mh-folder-sequence-menu): Remove "Toggle Subject
4099 Thread" from menu. mh-toggle-threads is in the Folder menu.
4101 * mh-e.el (mh-folder-sequence-menu): Minor menu text edits.
4103 * mh-utils.el (mh-show-update-sequences): Added to
4104 mh-defun-show-buffer builds; needed for menu.
4105 (mh-show-sequence-menu, mh-show-message-menu)
4106 (mh-show-folder-menu): 3 new menus in mh-show-mode-map that mirror
4107 the menus used in mh-folder-mode.
4108 (mh-show-mode): easy-menu-add the 3 menus.
4110 2002-10-28 Satyaki Das <satyaki@theforce.stanford.edu>
4112 * mh-utils.el (mh-goto-msg): Fix the regexp to search so that we
4113 go to the right message. In a threaded folder message 2 may be
4114 present after 26 and the previous regexp would go to 26 when we
4115 really wanted to go to 2!
4117 * mh-seq.el (mh-widen): Add call to mh-recenter to make it like
4120 2002-10-28 Bill Wohler <wohler@newt.com>
4122 * mh-utils.el (mh-show-mime-save-parts): Deleted definition.
4123 (mh-show-mime-map, tool-bar-map): Use mh-mime-save-parts instead
4124 of mh-show-mime-save-parts.
4126 2002-10-28 Peter S Galbraith <psg@debian.org>
4128 * mh-comp.el (mh-letter-tool-bar-map): tool-bar-add-item key name
4130 * mh-utils.el (mh-show-tool-bar-map): Same.
4131 * mh-e.el (mh-folder-tool-bar-map, mh-folder-seq-tool-bar-map): Same
4133 2002-10-27 Satyaki Das <satyaki@theforce.stanford.edu>
4135 * mh-seq.el (mh-toggle-threads): Add call to mh-recenter to make
4136 its behavior like that of mh-narrow-to-seq.
4138 2002-10-27 Bill Wohler <wohler@newt.com>
4140 * mh-mime.el (mh-mime-save-parts): Renamed from
4141 mh-store-mime-parts for consistency with mh-mime-save-part. Fixed
4142 bug whereby mh-mime-save-parts-directory was not getting
4143 initialized properly from a string-valued
4144 mh-mime-save-parts-default-directory.
4145 (mh-mime-save-parts-default-directory): Ditto. Check your
4147 (mh-mime-save-parts-directory): Ditto.
4149 * mh-utils.el (mh-show-mime-save-parts): Renamed from
4150 mh-store-mime-parts.
4151 (mh-show-mime-map): Added keybinding "K a" for
4152 mh-show-mime-save-parts.
4154 * mh-e.el (mh-mime-save-parts) Renamed from mh-store-mime-parts.
4155 (mh-mime-map): Added keybinding "K a" for mh-mime-save-parts.
4156 (mh-help-messages): Added help for "K a".
4158 2002-10-27 Peter S Galbraith <psg@debian.org>
4160 * mh-comp.el (mh-search-addr-regexp, mh-regexp-in-field-p): Rename
4161 the first to the second (and recode a bit).
4162 (mh-insert-mail-followup-to): Use it.
4164 2002-10-27 Bill Wohler <wohler@newt.com>
4166 * mh-utils.el (mh-invisible-headers): Backed out change. Removed
4167 Mail-Followup-To due to objections from Peter and Mark.
4169 2002-10-27 Satyaki Das <satyaki@theforce.stanford.edu>
4171 * mh-seq.el (mh-msg-is-in-seq): Modified to show info about
4172 whether the message being queried about has been marked to be
4175 * mh-mime.el (mh-insert-mime-security-button): Make
4176 pressed-details a local.
4178 2002-10-27 Steve Youngs <youngs@xemacs.org>
4180 * .cvsignore: New file.
4182 2002-10-26 Steve Youngs <youngs@xemacs.org>
4184 * mh-seq.el (mh-notate-deleted-and-refiled): Don't bind local
4185 variable 'dest', it isn't used anywhere.
4187 * mh-pick.el (mh-do-pick-search): Don't bind local variable
4188 'finding-messages', it isn't used anywhere.
4190 * mh-utils.el: Byte-compiler warning suppression.
4191 (mh-gnus-article-highlight-citation): Rather than redefining
4192 'gnus-cite-face-list', just re-order it.
4193 (mh-show-mode): Force turning on font-lock in XEmacs.
4195 * mh-seq.el: Byte-compiler warning suppression.
4197 * mh-index.el: Byte-compiler warning suppression.
4199 * mh-comp.el: Byte-compiler warning suppression.
4201 * mh-xemacs-compat.el: Add defaliases for 'timerp' &
4202 'cancel-timer' to the equivalent 'itimer' functions.
4203 (rfc822): Require it for 'rfc822-goto-eoh'.
4204 Byte-compiler warning suppression.
4206 * mh-e.el (mh-folder-mode): Force turning on font-lock in XEmacs.
4207 (mh-toggle-threads): Remove duplicate autoload.
4208 Byte-compiler warning suppression.
4209 (mh-folder-unseen-seq-list): Use 'with-temp-buffer' to fix a bug
4210 in XEmacs when font-lock is on.
4211 (mh-folder-unseen-seq-name): Ditto.
4213 2002-10-27 Mark D. Baushke <mdb@gnu.org>
4215 * Makefile: Reorganize to allow for building also compiling for
4216 XEmacs too. Sanitize so that it will work using least-common
4217 denominator versions of 'make'. Tested using GNU make, Solaris make,
4219 (all): Use recursive invokation based on the emacs or xemacs
4220 executable passed on the 'make EMACS=xemacs' command line.
4221 (XEMACS_OPTIONS): The incantation to be passed to an xemacs editor
4222 to compile things properly.
4223 (AUTO_PRELOADS): Magic XEmacs glue.
4226 (custom-loads): Ditto.
4228 2002-10-26 Satyaki Das <satyaki@theforce.stanford.edu>
4230 * mh-e.el (mh-last-msg): Add call to mh-recenter.
4232 2002-10-26 Peter S Galbraith <psg@debia.org>
4234 * mh-comp.el (mh-search-addr-regexp, mh-re-search-to-cc): Remove
4235 `mh-re-search-to-cc' in favour of more generalized new function
4236 `mh-search-addr-regexp'.
4237 (mh-insert-mail-followup-to): Use it.
4239 2002-10-26 Satyaki Das <satyaki@theforce.stanford.edu>
4241 * mh-seq.el (mh-copy-seq-to-eob): Avoid rethreading when the
4242 folder is already threaded. This is more efficient and also avoids
4243 problems when the folder is widened.
4244 (mh-thread-inc): Don't try to restore the point to original
4245 location since mh-inc-folder from where this is called changes
4246 point location after calling this function.
4248 * mh-e.el (mh-make-folder-mode-line): Fix a small bug where the
4251 2002-10-26 Peter S Galbraith <psg@debian.org>
4253 * mh-comp.el (mh-insert-mail-followup-to): Fix for new defcustom.
4255 2002-10-26 Satyaki Das <satyaki@theforce.stanford.edu>
4257 * mh-seq.el (mh-notate-deleted-and-refiled): Remove unused binding
4258 of dest. The problem was pointed out by Steve as well.
4260 * mh-e.el (mh-toggle-threads): Remove duplicate autoload as
4261 pointed out by Steve.
4263 2002-10-26 Bill Wohler <wohler@newt.com>
4265 * mh-utils.el (mh-invisible-headers): Added Mail-Followup-To.
4267 2002-10-26 Peter S Galbraith <psg@debian.org>
4269 * mh-comp.el (mh-insert-mail-followup-to-list): Change defvar to
4272 2002-10-25 Satyaki Das <satyaki@theforce.stanford.edu>
4274 * mh-e.el (mh-remove-all-notation): New function that removes all
4277 * mh-seq.el (mh-narrow-to-seq): When hiding the original folder
4278 remove all notation. This avoids stale notation hanging around.
4279 Also changes in show buffer and position in folder buffer are
4280 avoided if possible.
4281 (mh-widen): When widening the scan-lines are notated based on the
4282 current state of the folder. This means any changes made when the
4283 folder was narrowed are shown consistently.
4284 (mh-notate-deleted-and-refiled): Update the documentation.
4285 (mh-thread-parse-scan-line): For some reason the ASCII value of
4286 the space character was being used here. This is fixed.
4287 (mh-thread-inc, mh-toggle-threads): Avoid change of point in
4288 folder and message being displayed in shown buffer.
4290 * mh-utils.el (mh-recenter): Rewrite mh-recenter to show fewer
4291 blank lines when point is towards the end of the folder buffer.
4293 2002-10-25 Peter S Galbraith <psg@debian.org>
4295 * mh-comp.el (mh-insert-mail-followup-to-flag): New boolean
4296 defcustom to append a Mail-Followup-To field to the header. The
4297 insertion is done if the To: or Cc: fields matches an entry in
4298 `mh-insert-mail-followup-to-list'."
4299 (mh-insert-mail-followup-to-list): New defvar. List of addresses
4300 for which a Mail-Followup-To field is inserted.
4301 (mh-re-search-to-cc): New function. Search for REGEXP in To: and
4303 (mh-insert-mail-followup-to): New function. Insert
4304 Mail-Followup-To: if To or Cc match `mh-insert-mail-followup-to-list'.
4305 (mh-compose-and-send-mail): Call mh-insert-mail-followup-to if
4306 mh-insert-mail-followup-to-flag is true.
4308 2002-10-25 Mark D. Baushke <mdb@gnu.org>
4310 * mh-utils.el (mh-show-maximum-size): New variable to control
4311 the display of large messages.
4312 (mh-display-msg): Use it (Closes SF #488696).
4314 * mh-seq.el (mh-toggle-threads): Checkdoc fix.
4316 * mh-e.el (mh-reset-threads-and-narrowing): Checkdoc fix.
4318 * mh-comp.el (mh-insert-x-mailer-flag): Renamed from
4319 mh-insert-x-mailer-p. Update docstring.
4320 (mh-send-letter): Use it.
4321 (mh-reply-show-message-flag): Renamed from
4322 mh-reply-show-message-p. Update docstring.
4324 This addresses part of SF #627015.
4326 * mh-e.el (mh-recenter-summary-flag): Renamed from
4327 mh-recenter-summary-p. Update docstring.
4328 (mh-set-scan-mode): Use it.
4329 This addresses part of SF #627015.
4331 2002-10-25 Satyaki Das <satyaki@theforce.stanford.edu>
4333 * mh-e.el (mh-reset-threads-and-narrowing): New function which
4334 resets all thread and narrowing state to completely unthreaded and
4335 widened state. As a side effect, the folder buffer is erased.
4336 (mh-rescan-folder): Reset threads and narrowing state.
4338 * mh-funcs.el (mh-pack-folder-1): Reset threads and narrowing state.
4340 * mh-seq.el (mh-copy-seq-to-eob): Change mh-view-ops after
4341 threading is over so that if user aborts threading, it doesn't
4342 leave mh-e in an inconsistent state.
4343 (mh-toggle-threads): Use mh-scan-folder to populate the folder
4344 buffer instead of mh-rescan-folder which resets threading and
4347 2002-10-24 Bill Wohler <wohler@newt.com>
4349 * mh-e is completely checkdoc clean now.
4351 * mh-utils.el (mh-clean-message-header-flag): Renamed from
4352 mh-clean-message-header.
4353 (mh-bury-show-buffer-flag): Renamed from mh-bury-show-buffer.
4354 (mh-show-use-goto-addr-flag): Renamed from mh-show-use-goto-addr.
4355 This addresses part of SF #627015.
4357 * mh-mime.el (mh-clean-message-header-flag): Renamed from
4358 mh-clean-message-header.
4359 Checkdoc fixes. This addresses part of SF #627015.
4361 * mh-index.el (mh-clean-message-header-flag): Renamed from
4362 mh-clean-message-header. This addresses part of SF #627015.
4364 * mh-funcs.el (mh-do-not-confirm-flag): Renamed from
4365 mh-do-not-confirm. This addresses part of SF #627015.
4367 * mh-e.el (mh-do-not-confirm-flag): Renamed from
4369 (mh-clean-message-header-flag): Renamed from
4370 mh-clean-message-header.
4371 This addresses part of SF #627015.
4373 * mh-comp.el: checkdoc fixes.
4375 2002-10-24 Satyaki Das <satyaki@theforce.stanford.edu>
4377 * mh-seq.el (mh-copy-seq-to-eob): Rewritten to scan the headers
4378 fresh instead of yanking from buffer. This is needed to get
4379 correct threading in copied sequence.
4380 (mh-thread-inc, mh-thread-update-scan-line-map)
4381 (mh-thread-parse-scan-line): Eliminate the use, and hence the
4382 definition of, the kludgy mh-thread-update-scan-line-map. Instead
4383 the functions mh-notate-deleted-and-refiled and
4384 mh-notate-user-sequences are used to get the message marks right.
4385 (mh-thread-generate-scan-lines): Updated to allow the thread tree
4386 to be used in a narrowed folder buffer.
4387 (mh-thread-folder, mh-toggle-threads): Remove
4388 mh-folder-threaded-view-flag.
4389 (mh-thread-old-scan-line-map): New buffer-local variable that
4390 remembers the original scan-line map so that the sequence thread,
4391 narrow, widen will work.
4392 (mh-narrow-to-seq, mh-widen): Remember the scan-line map when
4393 narrowing and restore it when widening.
4395 * mh-e.el (mh-folder-threaded-view-flag, mh-folder-folder-menu)
4396 (mh-regenerate-headers, mh-get-new-mail)
4397 (mh-make-folder-mode-line, mh-process-commands)
4398 (mh-delete-scan-msgs): Remove mh-folder-threaded-view-flag.
4399 Instead (memq 'unthread mh-view-ops) is used to test if the folder
4402 * mh-mime.el (mh-display-emphasis): Shadow article-goto-body here
4403 since we want to do emphasis on the whole of the region and not
4404 just after the first blank line.
4405 (mh-mm-display-part): When displaying a text part show smilies and
4408 * mh-index.el (mh-index-insert-scan): Attempt to keep number of
4409 args to scan small if there are lots of adjacent matches.
4410 (mh-index-quit): Bury index-buffer on quit instead of killing it.
4411 This behavior is more like that of mh-quit.
4413 * mh-seq.el (mh-widen): If folder was threaded after narrowing
4414 then make mh-widen undo the threading instead of erroring out.
4416 2002-10-24 Peter S Galbraith <psg@debian.org>
4418 * mh-seq.el (mh-toggle-threads): Add a cond (as suggested by
4419 Satyaki) to properly unthread a narrowed-to-sequence.
4421 * mh-seq.el (mh-thread-generate-scan-lines): Fix threading
4422 breakage from partial switch to mh-container-real-child-flag and
4425 * mh-comp.el (mh-yank-cur-msg): Bug fix: specify
4426 (eq t mh-yank-from-start-of-msg) when that's what we want.
4428 2002-10-24 Mark D. Baushke <mdb@gnu.org>
4430 * mh-seq.el (mh-thread-prune-subject): Renamed subject-pruned-p as
4431 subject-pruned-flag.
4432 (mh-thread-inc): Renamed old-buffer-modified-p as
4433 old-buffer-modified-flag.
4434 (mh-thread-generate-scan-lines): Renamed dupl-p as dupl-flag.
4435 This addresses part of SF #627015.
4437 * mh-index.el (mh-index-advance): Renamed backward-p
4438 local variable as backward-flag.
4439 (mh-index-next-button): Renamed backward-p
4440 argument as backward-flag.
4441 (mh-index-show): Renamed display-headers-p argument as
4442 display-headers-flag.
4443 This addresses part of SF #627015.
4445 * mh-e.el (mh-scan-format, mh-version): Use mh-nmh-flag.
4446 (mh-folder-mime-action): Renamed include-security-p
4447 argument as include-security-flag.
4448 (mh-goto-next-button, mh-next-button): Renamed backward-p
4449 argument as backward-flag.
4450 (mh-get-new-mail): Renamed new-mail-p local variable as
4452 (mh-goto-cur-msg): Renamed minimal-changes-p argument as
4453 minimal-changes-flag.
4454 (redraw-needed-flag): Renamed redraw-needed-p local variable as
4456 (mh-seq-containing-msg): Renamed include-internal-p argument as
4457 include-internal-flag.
4458 (mh-page-msg): Use mh-page-to-next-msg-flag.
4459 This addresses part of SF #627015.
4461 * mh-mime.el (mh-mhn-compose-insert-flag): Renamed from
4462 mh-mhn-compose-insert-p. Make it buffer-local.
4463 (mh-mhn-compose-type, mh-mhn-compose-external-type,
4464 mh-mhn-compose-forw, mh-edit-mhn): Use mh-mhn-compose-insert-flag.
4465 (mh-mml-to-mime, mh-mml-secure-message-encrypt-pgpmime,
4466 mh-mime-display-part, mh-mime-display-single): Use
4467 mh-gnus-pgp-support-flag renamed from mh-gnus-pgp-support-p.
4468 (mh-mime-display-single): Renamed small-image-p local
4469 variable as small-image-flag.
4470 (mh-mime-inline-part): Renamed local variable inserted-p as
4472 (mh-mime-inline-part): Renamed local variable displayed-p as
4474 This addresses part of SF #627015.
4476 * mh-comp.el (mh-letter-menu, mh-letter-mode, mh-send-letter):
4477 mh-mhn-compose-insert-flag.
4478 (mh-repl-group-formfile, mh-forward): Use mh-nmh-flag
4479 renamed from mh-nmh-p.
4480 (mh-reply, mh-insert-x-mailer, mh-send-letter): Use mh-nmh-flag.
4481 (mh-letter-mode-map): Use mh-gnus-pgp-support-flag renamed from
4482 mh-gnus-pgp-support-p.
4483 (mh-mml-secure-message-sign-pgpmime): Use
4484 mh-gnus-pgp-support-flag.
4485 This addresses part of SF #627015.
4487 * mh-utils.el (mh-page-to-next-msg-flag): Renamed from
4488 mh-page-to-next-msg-p.
4489 (mh-show-msg): Use mh-page-to-next-msg-flag.
4490 (mh-gnus-pgp-support-flag): Renamed from
4491 mh-gnus-pgp-support-p.
4492 (mh-show-font-lock-fontify-region): Fix docstring per checkdoc.
4493 (with-mh-folder-updating): Renamed argument
4494 save-modification-flag-p as mh-save-modification-flag.
4495 (mh-prompt-for-folder): Renamed new-file-p local
4496 variable as new-file-flag.
4497 This addresses part of SF #627015.
4499 2002-10-24 Mark D Baushke <mdb@gnu.org>
4501 * mh-comp.el (mh-forward): Fix mh-mml-compose-insert-p reference
4502 in last commit to be mh-mml-compose-insert-flag.
4503 (mh-mml-compose-insert-flag): Move defvar to fix compiler warning.
4505 2002-10-24 Jeffrey C Honig <jch@honig.net>
4507 * mh-comp.el (mh-forward): Add support for transient-mark mode.
4508 When using nmh, always specify -mime so as to preserve the
4509 original message(s). If mh-compose-insertion is 'gnus, convert
4510 the mhbuild format forwarding directives into MML.
4512 2002-10-24 Eric Ding <ericding@alum.mit.edu>
4514 * mh-comp.el (mh-send-letter): Fix for earlier change that added
4515 "-mime" for bcc'ed MIME mail; still doesn't work with nmh 1.0, but
4516 at least no longer triggered for every outgoing message!
4518 2002-10-24 Peter S Galbraith <psg@debian.org>
4520 * mh-comp.el (mh-yank-cur-msg): Fix selected regions for supercite
4523 * mh-comp.el (mh-yank-cur-msg): Fix for supercite. Someone played
4524 with the point and mark setting prior to the call to
4525 'mh-insert-prefix-string and that broke supercite. I put comments
4526 to make it obvious to future coders why those settings exists.
4527 Note that supercite is still broken when a region is selected in
4528 the show buffer. Presumably it's been like that for a long time.
4529 We need to insert the header as well as the selected region oin
4530 that case. I'll submit an SF bug.
4532 2002-10-24 Jeffrey C Honig <jch@honig.net>
4534 * mh-comp.el (mh-yank-from-start-of-msg, mh-reply): Use -noformat
4535 flag to reply when 'autosupercite or 'autoattrib are specified to
4536 prevent duplicate cites of the body of a message.
4538 2002-10-23 Satyaki Das <satyaki@theforce.stanford.edu>
4540 * mh-utils.el (font-lock-default-fontify-region): Add autoload to
4541 avoid compiler warning.
4543 2002-10-23 Peter S Galbraith <psg@debian.org>
4545 * mh-comp.el (mh-letter-mode): set fill-paragraph-function to our
4546 own 'mh-fill-paragraph-function instead of simply
4547 'mail-mode-fill-paragraph (because it doesn't handle a non-nil
4548 fill-prefix correctly).
4549 (mh-fill-paragraph-function): New function for mh-letter-mode
4550 fill-paragraph-function in order to handle non-nil fill-prefix.
4551 Call sendmail's mail-mode-fill-paragraph if in the mail header,
4552 else call default fill-paragraph with fill-prefix set to nil.
4555 * mh-comp.el (mh-letter-mode): Let's use font-lock even if gnus is
4556 used in show-mode. The reason is that gnus uses static text
4557 properties which are not appropriate for a buffer that will be
4558 edited. So the choice here is either fontify the citations and
4559 header or the header only.
4561 * mh-utils.el (mh-show-font-lock-fontify-region): Limit font-lock
4562 in mh-show-mode to the header. Used when mh-highlight-citation-p
4563 is set to gnus, leaving the body to be dealt with by gnus
4564 highlighting. This fixes gnus text emphasis in mh-show-mode.
4565 (mh-show-mode): In font-lock-defaults, set
4566 font-lock-fontify-region-function to mh-show-font-lock-fontify-region.
4568 2002-10-23 Bill Wohler <wohler@newt.com>
4570 * mh-mime.el (mh-mml-attach-file): Prompt for disposition should
4571 be Disposition, not Content-Type. The Content-Type has been
4572 determined automatically.
4574 2002-10-23 Mark D. Baushke <mdb@gnu.org>
4577 s/mh-adaptive-cmd-note/mh-adaptive-cmd-note-flag/
4578 s/mh-show-use-xface/mh-show-use-xface-flag/
4579 s/mh-tool-bar-reply-3-buttons/mh-tool-bar-reply-3-buttons-flag/
4580 This addresses part of SF #627015.
4583 s/mh-mml-compose-insert-p/mh-mml-compose-insert-flag/
4584 s/mh-xemacs-p/mh-xemacs-flag/
4585 (mh-letter-menu): Use mh-mml-compose-insert-flag.
4586 (mh-insert-x-mailer): Use mh-xemacs-flag.
4587 (mh-mml-compose-insert-flag): Renamed from
4588 mh-mml-compose-insert-p.
4589 (mh-send-letter): Use mh-mml-compose-insert-flag.
4590 This addresses part of SF #627015.
4593 s/mh-folder-threaded-view-p/mh-folder-threaded-view-flag/
4594 s/mh-adaptive-cmd-note/mh-adaptive-cmd-note-flag/
4595 s/mh-xemacs-p/mh-xemacs-flag/
4596 (mh-folder-threaded-view-flag): Renamed from
4597 mh-folder-threaded-view-p. Make it buffer local.
4598 (mh-folder-tool-bar-map): Use mh-tool-bar-reply-3-buttons-flag.
4599 (mh-remove-xemacs-horizontal-scrollbar): Use mh-xemacs-flag.
4600 (mh-make-folder, mh-regenerate-headers, mh-get-new-mail): Use
4601 mh-adaptive-cmd-note-flag.
4602 (mh-folder-folder-menu, mh-regenerate-headers, mh-get-new-mail,
4603 mh-make-folder-mode-line, mh-process-commands,
4604 mh-delete-scan-msgs): Use mh-folder-threaded-view-flag.
4605 This addresses part of SF #627015.
4608 s/mh-adaptive-cmd-note/mh-adaptive-cmd-note-flag/
4609 (mh-index-search): Use mh-adaptive-cmd-note-flag.
4610 This addresses part of SF #627015.
4613 s/mh-mml-compose-insert-p/mh-mml-compose-insert-flag/
4614 s/mh-xemacs-p/mh-xemacs-flag/
4615 (mh-mml-compose-insert-flag): Renamed from
4616 mh-mml-compose-insert-p. Make it buffer local.
4617 (mh-mml-attach-file, mh-mml-secure-message-sign-pgpmime,
4618 mh-mml-secure-message-encrypt-pgpmime): Use it.
4619 (gnus-local-map-property): Use mh-xemacs-flag.
4620 This addresses part of SF #627015.
4623 s/mh-folder-threaded-view-p/mh-folder-threaded-view-flag/
4624 (mh-thread-generate, mh-thread-folder, mh-toggle-threads): Use
4625 mh-folder-threaded-view-flag.
4626 This addresses part of SF #627015.
4629 s/mh-speed-run-flists-p/mh-speed-run-flists-flag/
4630 s/mh-speed-refresh-p/mh-speed-refresh-flag/
4631 (mh-speed-run-flists-flag): Renamed from mh-speed-run-flists-p.
4632 (mh-folder-speedbar-buttons): Use it.
4633 (mh-speed-refresh-flag): Renamed from mh-speed-refresh-p.
4634 (mh-speed-update-current-folder, mh-speed-invalidate-map,
4635 mh-speed-add-folder): Use it.
4636 This addresses part of SF #627015.
4639 s/mh-xemacs-p/mh-xemacs-flag/
4640 s/mh-tool-bar-reply-3-buttons/mh-tool-bar-reply-3-buttons-flag/
4641 s/mh-show-use-xface/mh-show-use-xface-flag/
4642 (mh-xemacs-flag): Renamed from mh-xemacs-p.
4643 (mh-show-xface-function): Use it.
4644 (mh-tool-bar-reply-3-buttons-flag): Renamed from
4645 mh-tool-bar-reply-3-buttons.
4646 (mh-show-tool-bar-map): Use it.
4647 (mh-adaptive-cmd-note-flag): Renamed from mh-adaptive-cmd-note.
4648 (mh-cmd-note): Use it in description.
4649 (mh-show-use-xface-flag): Renamed from mh-show-use-xface. Use
4651 (mh-show-xface): Use mh-show-use-xface-flag.
4652 This addresses part of SF #627015.
4654 2002-10-23 Bill Wohler <wohler@newt.com>
4656 * Makefile (all): Rather than have to run "make clean all" all the
4657 time, make the default target do a clean so all you have to say is
4660 * mh-e.el (mh-folder-map): Moved "t (mh-toggle-threads)" to T
4663 2002-10-22 Satyaki Das <satyaki@theforce.stanford.edu>
4665 * mh-index.el (mh-indexer-choices, mh-swish-binary): The
4666 executable swish-e can be used to search (just like swish-search).
4667 However the Makefile in swish-e-2.2.2 doesn't install
4668 swish-search. So it is preferable to use swish-e.
4670 2002-10-22 Bill Wohler <wohler@newt.com>
4672 * mh-comp.el (mh-letter-mode-map): Added aliases for keybindings.
4673 For example, you now have "C-c C-m C-i" in addition to "C-c C-m
4676 2002-10-22 Mark D. Baushke <mdb@gnu.org>
4678 * mh-mime.el (mh-graphical-smileys-flag): Renamed from
4679 mh-graphical-smileys-p.
4680 (mh-display-smileys): Use it.
4681 (mh-graphical-emphasis-flag): Renamed from
4682 mh-graphical-emphasis-p.
4683 (mh-display-emphasis): Use it. This addresses part of SF #627015.
4685 2002-10-22 Satyaki Das <satyaki@theforce.stanford.edu>
4687 * mh-mime.el (mh-insert-mime-security-button): A message is
4688 produced if PGP decryption/verification fails. This addresses
4691 2002-10-21 Bill Wohler <wohler@newt.com>
4693 * mh-seq.el (mh-widen): Checkdoc removed the period in the error.
4694 The info node (elisp) Coding Conventions says: "An error message
4695 should start with a capital letter but should not end with a
4698 * mh-e.el, mh-utils.el (mh-tool-bar-reply-3-buttons): Moved
4699 defcustom to mh-utils because I got an error about a nil value for
4700 mh-tool-bar-reply-3-buttons when I fired up mh-rmail.
4702 * mh-comp.el, mh-funcs,el, mh-mime.el, mh-pick.el: Moved (provide)
4703 to the end of the file to be consistent with most other files (see
4704 additional rationale in mh-e.el description below).
4706 * mh-e.el: Had to remove eval-when-compile from the (require 'cl)
4707 here too (because the remove-if generated a warning in CVS Emacs).
4708 Moved (provide) to the end of the file to be consistent with most
4709 other files. My guess is that this is good to keep a feature from
4710 being "provided" if the file craps out while being loaded.
4712 2002-10-21 Satyaki Das <satyaki@theforce.stanford.edu>
4714 * mh-utils.el (mh-reply, Info-goto-node): Add autoloads to avoid
4716 (mh-tool-bar-reply-3-buttons): Add defvar to avoid compiler
4719 * mh-seq.el (mh-narrow-to-seq): Remember that a narrowing has
4721 (mh-valid-view-change-operation-p): New function that checks if
4722 the widening or unthreading that we are about to perform is
4724 (mh-widen): Check if widening is applicable.
4725 (mh-thread-inc, mh-thread-folder): Use delete-region instead of
4726 erase-buffer. This means if the buffer is narrowed then the hidden
4727 parts aren't removed. This allows widening of the folder later on.
4728 (mh-toggle-threads): Maintain mh-view-ops.
4730 * mh-e.el (mh-view-ops, mh-folder-mode): New buffer-local variable
4731 that keeps track of the sequence in which threading and narrowing
4732 of the folder buffer has been carried out. This is needed so that
4733 narrowing followed by threading (or vice versa) behaves in a
4735 (mh-regenerate-headers): Use delete-region instead of
4737 (mh-make-folder-mode-line): Change mh-first-msg-num and
4738 mh-last-msg-num conservatively. This might show a larger range in
4739 the mode-line but allows the unthreading to not miss messages
4742 2002-10-21 Bill Wohler <wohler@newt.com>
4744 * mh-mime.el (mh-graphical-emphasis-p): Added _underline_ to the
4745 docstring, as well as the source of the strings,
4746 gnus-emphasis-alist.
4747 (mh-graphical-emphasis-p, mh-graphical-smileys-p): Set the default
4750 2002-10-21 Peter S Galbraith <psg@debian.org>
4752 * mh-utils.el (mh-show-mode): Invoke new toolbar.
4753 (mh-show-tool-bar-map): New tool-bar for mh-show-mode, similar to
4756 2002-10-21 Satyaki Das <satyaki@theforce.stanford.edu>
4758 * mh-utils.el (mh-display-msg): Call the smiley display function
4759 after the call to mh-show-mode. This is needed since mh-show-mode
4760 kills all buffer-local variables and resets the variable that
4761 controls display of graphical smileys.
4763 2002-10-21 Bill Wohler <wohler@newt.com>
4765 * mh-e.el (mh-folder-mime-action): Change mime to MIME in message.
4767 * mh-comp.el (mh-mml-to-mime autoload): Ditto.
4769 2002-10-21 Mark D Baushke <mdb@gnu.org>
4771 * mh-mime.el (smiley-region): Use load for a non-fatal dependency
4772 on the smiley library.
4774 2002-10-21 Jeffrey C Honig <jch@honig.net>
4776 * mh-comp.el (mh-forward): Search for a blank line as well as
4777 mail-header-separator.
4778 (mh-letter-mode): Search for a blank line as well as
4779 mail-header-separator.
4780 (mh-send-letter): The default BCC encapsulation will make a MIME
4781 message unreadable. If we are running nmh and the letter contains
4782 a Bcc: and a Content-Type: field, add the -mime switch to to the
4785 2002-10-21 Peter S Galbraith <psg@debian.org>
4787 * mh-utils.el: Add a mh-defun-show-buffer call to define
4788 mh-show-pack-folder.
4790 2002-10-21 Peter S Galbraith <psg@debian.org>
4792 * mh-mime.el (mh-store-mime-parts): Simplify code a bit.
4794 * mh-e.el (mh-help-messages): Update help message for changed
4797 2002-10-21 Satyaki Das <satyaki@theforce.stanford.edu>
4799 * mh-speed.el (mh-speed-invalidate-map): Invalidate
4800 mh-speed-folders-cache before it is used by mh-speed-folders. Also
4801 fix indentation of if statement.
4802 (mh-speed-folder-size): The folder name should be extracted from
4803 the speedbar buffer and not from the temp buffer has was happening
4805 (mh-speed-folder-size): Harden the function some more. It
4806 shouldn't produce errors any more unless flist really didn't work.
4808 2002-10-21 Bill Wohler <wohler@newt.com>
4810 * mh-seq.el (mh-put-msg-in-seq): Formatting only. The reason I was
4811 in there is because I was trying to use mh-put-msg-in-seq and
4812 mh-msg-is-in-seq non-interactively and found that although the
4813 docstring says it uses the current message by default, I got
4814 errors if I passed in nil for the message. Is this expected, or is
4815 this a bug? I suppose the fix would be to make the arguments
4816 optional, right? This would cause the arguments in
4817 mh-put-msg-in-seq to be reversed, however. Might be a backwards
4818 compatibility problem.
4820 * mh-speed.el (mh-speed-view): Convert default size to string
4821 before passing it to read-string. This was done because XEmacs
4822 can't handle a numeric value for the default.
4824 2002-10-20 Satyaki Das <satyaki@theforce.stanford.edu>
4826 * mh-utils.el (mh-show-mode-map, mh-show-folder-map)
4827 (mh-show-sequence-map, mh-show-thread-map, mh-show-extract-map)
4828 (mh-show-digest-map, mh-show-mime-map): Interactive functions
4829 callable in show buffer are now prefixed with mh-show.
4831 * mh-seq.el (mh-notate-deleted-and-refiled): Take into account the
4832 changes to mh-refile-list and the removal of the 'deleted
4834 (mh-toggle-threads): Changing from threaded to normal view doesn't
4835 try to push out message refiles and deletions to MH.
4837 * mh-e.el (mh-rescan-folder, mh-scan-folder): Add a new optional
4838 argument to both functions that prevents them from carrying out
4839 pending refiles and deletes.
4840 (mh-undo): Remove dead code.
4841 (mh-delete-a-msg, mh-undo-msg): Get rid of the 'deleted sequence.
4842 The same information is present in mh-delete-list any way.
4843 (mh-refile-a-msg, mh-undo-msg, mh-process-commands): Change the
4844 semantics of mh-refile-list to make it self-contained. This
4845 variable now contains a list of lists. The first element of each
4846 sublist is the destination folder name. The remaining elements are
4847 the messages that are to be refiled to the destination folder.
4848 (mh-toggle-threads, mh-folder-folder-menu): Use mh-toggle-threads
4849 instead of mh-thread-folder.
4851 2002-10-20 Peter S Galbraith <psg@debian.org>
4853 * mh-mime.el (mh-store-mime-parts): Bug fix? Make this command
4854 work when in the show buffer, and not just in the folder buffer
4855 pointing to a message.
4857 2002-10-20 Peter S Galbraith <psg@debian.org>
4859 * mh-seq.el (mh-narrow-to-subject-sequence): Renamed from
4860 mh-narrow-to-subject-thread.
4861 (mh-subject-to-sequence): Renamed from mh-subject-thread-to-sequence.
4862 (mh-delete-subject-sequence): Renamed from mh-delete-subject-thread.
4863 (mh-next-unseen-subject-sequence): Renamed from
4864 mh-next-unseen-subject-thread.
4865 (mh-toggle-subject-thread): Removed. :-(
4867 * mh-e.el: s/subject-thread/subject-sequence/
4868 (mh-thread-map): Bind mh-widen to "w".
4870 * mh-utils.el: s/subject-thread/subject-sequence/
4871 (mh-show-thread-map): Bind mh-widen to "w".
4873 2002-10-20 Satyaki Das <satyaki@theforce.stanford.edu>
4875 * mh-seq.el (mh-thread-folder): This function is no longer
4876 interactive. The mh-toggle-threads is the interactive function
4877 that gets called by the user. Also the already computed values in
4878 mh-first-msg-num and mh-last-msg-num are used instead of
4879 recomputing the first and last message indices in the current
4881 (mh-toggle-threads): New interactive function that toggles
4882 threaded view of the folder.
4884 * mh-utils.el (mh-letter-toggle-threads): New interactive function
4885 which toggles thread view from show buffer. This function replaces
4886 mh-letter-thread-folder.
4887 (mh-show-folder-map): Use mh-letter-toggle-threads instead of
4888 mh-letter-thread-folder.
4890 * mh-e.el (mh-folder-map): Use mh-toggle-threads instead of
4893 2002-10-20 Bill Wohler <wohler@newt.com>
4895 * mh-e.el (mh-scan-folder): Formatting only.
4896 (mh-goto-cur-msg): Removed call to mh-last-msg in those cases
4897 where there isn't a current message. Since I've started using the
4898 speedbar to read my mh-e mail, I've had to use M-< every time to
4899 go to the beginning of the new messages. Very annoying! Thus, if
4900 there isn't a current message, the cursor is left alone, which
4901 sounds like the right thing to do anyway.
4903 2002-10-19 Peter S Galbraith <psg@debian.org>
4905 * mh-seq.el (mh-subject-thread-to-sequence): Bug fix. After
4906 making the 'subject sequence real, I now have to delete it globally.
4908 * mh-seq.el (mh-toggle-subject-thread): Make toggle back to full
4909 scan exactly mh-widen (removed moving to current message).
4911 * mh-seq.el (mh-subject-thread-to-sequence): Make 'subject
4912 sequence a real one, exported to MH. This means you can, for
4913 example, mh-forward it. But it also shows up with a mark in the
4914 scan output. (Closes SF #489445).
4916 2002-10-19 Bill Wohler <wohler@newt.com>
4918 * mh-speed.el (mh-speed-view): If there weren't any unseen
4919 messages, and you specified a string (a sequence like "last") when
4920 prompted for the number of messages to display, you got an error.
4921 This has been fixed.
4923 2002-10-19 Mark D Baushke <mdb@gnu.org>
4925 * mh-e.el (mh-last-destination-folder): Destination of last refile
4927 (mh-last-destination-write): Destination of last write command.
4928 (mh-refile-msg): Use 'mh-last-destination-folder and update both it
4929 and 'mh-last-destination.
4930 (mh-write-msg-to-file): Use 'mh-last-destination-write and update
4931 both it and 'mh-last-destination (Closes SF #580772).
4933 2002-10-19 Bill Wohler <wohler@newt.com>
4935 * mh-comp.el (mh-yank-from-start-of-msg): Changed default to
4937 (mh-letter-mode-map): Removed commented-out keybindings as well as
4938 alias "C-c C-m a (mh-compose-insertion)." Prefer "C-c C-m i."
4940 * mh-utils.el: Removed autoload of help. It no longer appears to
4941 be necessary in cvs Emacs (21.4).
4943 2002-10-18 Bill Wohler <wohler@newt.com>
4945 * mh-e.el (mh-execute-commands): Doc fix.
4946 (mh-compat-write-file-hook): Renamed to
4947 mh-write-file-functions-compat.
4948 (mh-folder-mode): Add mh-write-file-functions-compat instead of
4949 mh-compat-write-file-hook
4951 2002-10-18 Peter S Galbraith <psg@debian.org>
4953 * mh-utils.el (mh-invisible-headers-show-xface): Killed this
4955 (mh-invisible-headers): Use 'mh-show-use-xface instead of
4956 'mh-invisible-headers-show-xface to determine whether to render
4957 the X-Face header line visible or not.
4959 2002-10-18 Satyaki Das <satyaki@theforce.stanford.edu>
4961 * mh-e.el (mh-compat-write-file-hook, mh-folder-mode): Use the new
4962 macro mh-compat-write-file-hook to use write-file-functions for
4963 Emacs 21.4 and local-write-file-hooks for older versions.
4965 2002-10-18 Mark D Baushke <mdb@gnu.org>
4967 * mh-utils.el (mh-invisible-headers): Add more anti-spam headers.
4969 2002-10-18 Peter S Galbraith <psg@debian.org>
4971 * mh-mime.el (mh-mml-forward-message): mml-attach-file constructs
4972 a malformed composition if the description string is empty, so
4973 test for that and call mml-attach-file without that argument if
4974 it's an empty string (closes SF #625168).
4976 2002-10-17 Satyaki Das <satyaki@theforce.stanford.edu>
4978 * mh-index.el (mh-index-keymap): Removed extra binding of " ".
4979 (mh-index-folder-mode-help-messages): Made the cheat sheet entry
4980 of quit like the others.
4981 (mh-index-search): If space was pressed in the index buffer before
4982 a search result has been shown with ".", the old show buffer would
4983 be scrolled. This is confusing since the index and show buffer
4984 contents are contradictory. Killing the show buffer here avoids
4986 (mh-index-configure-windows): Refine the window configuration
4987 logic. Avoid the two window view unless there is a message being
4988 displayed in the show buffer.
4989 (mh-index-scroll-up): Rewrite this function. The old version had a
4990 bizarre problem where the show buffer wouldn't be scrolled if the
4991 speedbar was present.
4992 (mh-index-scroll-down): Rewritten because of similar reason as
4995 2002-10-17 Peter S Galbraith <psg@debian.org>
4997 * mh-comp.el (mh-reply): Add an undo boundary in the undo list
4998 before calling 'mh-yank-cur-msg (closes SF #623693).
5000 2002-10-17 Satyaki Das <satyaki@theforce.stanford.edu>
5002 * mh-e.el (mh-folder-mode): Use local-write-file-hooks instead of
5003 write-file-hooks. This is required for XEmacs and also the right
5004 thing according to GNU Emacs21 documentation.
5006 2002-10-16 Satyaki Das <satyaki@theforce.stanford.edu>
5008 * mh-seq.el (mh-thread-generate): Get threading to work correctly
5009 on partial folders. The fix here disregards messages that aren't
5010 already present in the buffer.
5011 (mh-thread-folder): When querying scan about thread info try to
5012 avoid asking about messages that aren't present in the folder
5013 buffer. A more efficient fix would be to ask scan about just the
5014 messages that are present instead of a range of messages. However
5015 that runs the risk of sending long command lines to scan. Another
5016 change was to populate the mh-scan-line-map early so that the
5017 change in mh-thread-generate would work.
5018 (mh-thread-generate-scan-lines): In case duplicates are present
5019 make one of them the pseudo parent of the rest. This makes it look
5020 prettier if there are multiple duplicates at top level.
5022 * mh-comp.el (mh-edit-again): If a buffer in show-mode is being
5023 reused then reinsert message file. This should fix SF #624283.
5025 * mh-mime.el (mh-mm-display-part): Make sure mh-display-part is
5026 always called when we want to remove the displayed MIME part.
5028 2002-10-16 Bill Wohler <wohler@newt.com>
5030 * mh-speed.el (mh-speed-folder-size): checkdoc fix.
5031 (mh-speed-view): Tweaked output to mirror gnus verbiage. Offer
5032 to view number of messages in folder rather than mh-large-folder.
5033 Replaced (intern mh-unseen-seq) with mh-unseen-seq since the
5034 former was generating errors.
5036 2002-10-15 Satyaki Das <satyaki@theforce.stanford.edu>
5038 * mh-speed.el (mh-large-folder): New customizable variable to
5039 control mh-e's perception of large folders.
5040 (mh-speed-folder-size): New function which computes the size of
5041 folder on current line.
5042 (mh-speed-view): Modified to handle large folders. If the folder
5043 being clicked has unseen messages then only those messages are
5044 shown. Otherwise if number of messages in folder is larger than
5045 mh-large-folders then the user is asked for the number of messages
5046 to be shown. If the folder satisfies neither of the above cases
5047 then it is displayed in its entirety
5049 2002-10-15 Bill Wohler <wohler@newt.com>
5051 * mh-index.el (mh-index-keymap): Use gnus-define-keys. Sorted.
5052 Noticed that there were two key bindings for SPACE...
5054 * mh-speed.el (mh-folder-speedbar-key-map): Ditto (except for the
5057 Completed help in other modes:
5059 * mh-utils.el (mh-xemacs-p): Fixed doc.
5060 (mh-show-mode-map, mh-show-folder-map, mh-show-sequence-map)
5061 (mh-show-thread-map, mh-show-extract-map): Added binding for
5064 * mh-pick.el (mh-search-folder): Added startup help message.
5065 (mh-pick-mode-help-messages): New variable that contains help
5066 messages for pick buffer.
5067 (mh-pick-mode): Set local buffer variable mh-help-messages to
5068 mh-pick-mode-help-messages.
5070 * mh-index.el (mh-index-keymap): Added binding for mh-help
5071 (mh-index-folder-mode-help-messages): New variable that contains
5072 help messages for MH Index buffer.
5073 (mh-index-folder-mode): Set local buffer variable mh-help-messages
5074 to mh-index-mode-help-messages.
5076 * mh-funcs.el (mh-help, mh-prefix-help): Call
5077 substitute-command-keys on the help messages.
5079 * mh-e.el (mh-help-messages): Added ,. Ran C-M-q.
5080 (mh-help): This autoload doc is now used for more than just the
5081 MH-Folder, so drop that specific text.
5083 * mh-comp.el (mh-edit-again, mh-extract-rejected-mail)
5084 (mh-forward, mh-reply, mh-send-sub): Call mh-letter-mode-message
5085 to display a help message at startup.
5086 (mh-letter-mode): Set local buffer variable mh-help-messages to
5087 mh-letter-mode-help-messages.
5088 (mh-letter-mode-help-messages): New variable with help messages
5089 for the MH-Letter buffer.
5090 (mh-letter-mode-message): New function that displays a startup
5092 (mh-letter-mode-map): Added binding for mh-help. Sorted.
5094 2002-10-15 Satyaki Das <satyaki@theforce.stanford.edu>
5096 * mh-speed.el (mh-speedbar-selected-folder-with-unseen-messages-face)
5097 (mh-speedbar-folder-face, mh-speedbar-selected-folder-face)
5098 (mh-speedbar-folder-with-unseen-messages-face): New faces for mh-e
5100 (mh-folder-speedbar-buttons, mh-speed-update-current-folder)
5101 (mh-speed-add-buttons): Use the new faces.
5102 (mh-speed-normal-face, mh-speed-bold-face): Functions to convert
5103 to bold face and back to normal face.
5104 (mh-speed-set-face): Removed.
5105 (mh-speed-highlight): Modified to allow it to be used instead of
5106 mh-speed-set-face. Also changes were made to fontify folders with
5108 (mh-speed-parse-flists-output, mh-speed-parse-flists-output)
5109 (mh-speed-invalidate-map): Use mh-speed-highlight instead of
5112 2002-10-15 Bill Wohler <wohler@newt.com>
5114 * mh-mime.el, mh-seq.el, mh-speed.el, mh-utils.el: It appears that
5115 the cl package has been restructured in 21.4 in such a way that
5116 the use of eval-when-compile no longer suppresses warnings when
5117 compiling so that (require 'cl) must be called directly (maybe
5118 this is a bug in 21.4 ;-). Thus the autoloads of cl are no longer
5119 needed. Now compiles clean under 21.4.
5121 * mh-e.el (mh-folder-mode): The use of local-write-file-hooks is
5122 deprecated in Emacs 21.4, so use add-hook write-file-functions (or
5123 write-file-hook for older versions) with the LOCAL argument
5124 instead. Now compiles clean under 21.4.
5126 * mh-comp.el (mh-yank-cur-msg): Push a mark at the opposite end of
5127 the included text to make it easy to jump or delete to the other
5128 end of the included text.
5130 2002-10-15 Satyaki Das <satyaki@theforce.stanford.edu>
5132 * mh-comp.el (mh-insert-prefix-string): Remove the erroneous use
5133 of set-mark and other related functions.
5135 2002-10-14 Bill Wohler <wohler@newt.com>
5137 * mh-comp.el (mh-yank-from-start-of-msg): Fixed documentation. It
5138 isn't ignored if there is a region. It is still used for the
5140 (mh-yank-cur-msg): Removed unnecessary push-mark when snarfing the
5141 entire message. Move the cursor to the end of the snarfed message
5142 if there is a region. In this case, push a mark so user can pop to
5143 the beginning of the snarfed fragment.
5144 (mh-insert-prefix-string): This calls set-mark which I find
5145 suspect since I found that my last user mark was deleted after
5146 yanking a message. Added a comment to this effect. Will probably
5149 * README (Installed, Supported versions): To appear in GNU Emacs
5150 21.3; supported on Emacs 21, 20.7 and XEmacs 21.
5152 * mh-funcs.el (mh-concat-list): Deleted. Use mapconcat instead.
5153 (mh-help, mh-prefix-help): Use mapconcat instead of mh-concat-list.
5154 (mh-ephem-message): Use "%s" in message.
5156 * mh-funcs.el (mh-concat-list): New function to concatenate a list
5157 of strings into a single string. I would have thought elisp
5158 already contained a function like this, but I couldn't find it.
5159 (mh-ephem-message): New function to display a message in the
5160 minibuffer ephemerally. minibuffer-message seemed like the right
5161 function, but it writes to the current buffer oddly enough.
5162 (mh-help, mh-prefix-help): New functions to display command
5163 cheat sheets in the minibuffer (closes SF #493740). It would be
5164 nice to refactor these two into a single function if possible.
5166 * mh-e.el (mh-folder-mode-map, mh-folder-map, mh-sequence-map)
5167 (mh-thread-map, mh-extract-map): Added ? keybinding for `mh-help'
5168 and `mh-prefix-help' (closes SF #493740).
5169 (mh-help-messages): New variable to hold various help messages.
5170 (mh-help, mh-prefix-help): Autoload from mh-funcs.el.
5172 2002-10-13 Bill Wohler <wohler@newt.com>
5174 * mh-index.el (mh-glimpse-directory, mh-swish-directory,
5175 mh-namazu-directory): New variables that hold the name of the
5176 configuration and indexing directory. All are now hidden `.'
5179 * mh-e.el, mh-funcs.el, mh-index.el, mh-mime.el, mh-pick.el,
5180 mh-seq.el, mh-xemacs-compat.el (Docstrings): Converted comments to
5181 docstrings, reworded some docstrings to conform to Emacs
5182 documentation conventions, and eliminated all checkdoc warnings
5183 (except for -flag, which we'll fix after 6.2 is released).
5185 2002-10-13 Satyaki Das <satyaki@theforce.stanford.edu>
5187 * mh-index.el (mh-swish-next-result): Fix a bug in a corner case
5188 where the lack of a trailing "/" caused the function to wrongly
5189 filter out correct hits. This should fix SF #622679.
5191 2002-10-12 Steve Youngs <youngs@xemacs.org>
5193 * mh-utils.el (mh-xemacs-p): Simplify it, don't test for
5194 'defvaralias' and don't use 'running-xemacs'.
5196 2002-10-11 Bill Wohler <wohler@newt.com>
5198 * mh-comp.el: (Docstrings): Eliminated all checkdoc warnings by
5199 converting comments to docstrings and rewording some docstrings to
5200 conform to Emacs documentation conventions.
5202 2002-10-11 Steve Youngs <youngs@xemacs.org>
5204 * mh-utils.el (mh-xemacs-p): New.
5205 (mh-show-use-xface): Use it.
5206 (mh-show-xface-function): Ditto.
5208 * mh-e.el (toplevel): Ditto.
5209 (mh-remove-xemacs-horizontal-scrollbar): Ditto.
5210 (mh-folder-mode-map): Ditto.
5212 * mh-comp.el (mh-insert-x-mailer): Ditto.
5214 * mh-mime.el (gnus-local-map-property): Ditto.
5215 (mh-mml-to-mime): Move (require 'mh-utils) to toplevel.
5216 (mh-prompt-for-folder): Autoloading this not needed because
5217 mh-utils is now required at toplevel.
5218 (mh-show-xface): Ditto.
5219 (mh-show-addr): Ditto.
5221 2002-10-11 Bill Wohler <wohler@newt.com>
5223 * Makefile (EMACS_HOME): Set default to $(TOP)/../emacs so it
5226 * mh-utils.el (mh-invisible-headers): Added various spam header
5228 (mh-path-search): Removed argument `func-p' and related code. It
5229 was not documented and no one used it.
5230 (Docstrings): Converted comments to docstrings, reworded some
5231 docstrings to conform to Emacs documentation conventions, and
5232 basically eliminated all checkdoc warnings (except for -flag
5235 2002-10-11 Satyaki Das <satyaki@theforce.stanford.edu>
5237 * mh-seq.el (mh-thread-generate): Kill dead code.
5239 2002-10-10 Satyaki Das <satyaki@theforce.stanford.edu>
5241 * mh-seq.el (mh-region-to-sequence): Don't include point-max in
5242 region (closes SF #621632).
5244 * mh-utils.el (mh-defun-show-buffer): Fix call of
5245 frame-first-window to work with XEmacs. Also avoid warning about
5246 cur-buffe-name in XEmacs.
5247 (mh-modify, mh-goto-msg): Remove dead code.
5249 * mh-speed.el (mh-speed-toggle, mh-speed-add-buttons): Remove dead
5252 * mh-seq.el (mh-subject-thread-to-sequence, mh-thread-get-message,
5253 mh-thread-generate, mh-thread-folder): Remove dead code.
5255 * mh-mime.el (mh-mm-inline-message): Remove dead code.
5257 * mh-index.el (mh-index-search): Remove dead code.
5259 * mh-comp.el (mh-open-line): Remove dead code.
5261 * mh-e.el (mh-folder-mode): Use the macro
5262 mh-remove-xemacs-horizontal-scrollbar to avoid compiler-warning in
5264 (mh-remove-xemacs-horizontal-scrollbar): New macro to avoid
5267 2002-10-10 Mark D Baushke <mdb@gnu.org>
5269 * Makefile (EMACS_OPTIONS): New macro for command-line compile
5271 (EMACS): Allow the user to specify which emacs command to use for
5273 (COMPILE_COMMAND): Combine the compile command with its options.
5274 (.el.elc): Use the new $(COMPILE_COMMAND).
5276 2002-10-10 Mark D Baushke <mdb@gnu.org>
5278 * mh-speed.el (mh-speed-select-attached-frame): Define a new
5279 compatibility macro for getting to the attached-frame.
5280 (mh-speed-update-current-folder): Use it.
5282 2002-10-10 Mark D Baushke <mdb@gnu.org>
5284 * mh-speed.el (mh-speed-update-current-folder): Use
5285 'dframe-select-attached-frame if we are in a newer speedbar
5286 version that no longer supports the 'speedbar-attached-frame
5289 2002-10-10 Steve Youngs <youngs@xemacs.org>
5291 * mh-speed.el (mh-speed-update-current-folder): Use
5292 'dframe-select-attached-frame' if we're in XEmacs.
5294 * mh-e.el (mh-folder-mode): Remove the horizontal scrollbar from
5295 the MH-Folder buffer if we're in XEmacs.
5297 2002-10-09 Satyaki Das <satyaki@theforce.stanford.edu>
5299 * mh-utils.el (mh-show-xface-function): New global that stores
5300 what function needs to be called to display X-Face.
5301 (mh-show-xface): Rewritten to avoid compiler warning.
5303 2002-10-09 Peter S Galbraith <psg@debian.org>
5305 * mh-utils.el (mh-exchange-point-and-mark-preserving-active-mark):
5306 Simplify code for all emacsen to avoid byte-compilation warnings.
5308 2002-10-09 Satyaki Das <satyaki@theforce.stanford.edu>
5310 * mh-mime.el (mh-mm-display-part): If a sub-part of the current
5311 part is an inline image then clicking the button keeps the image
5312 around. The change fixes this bug.
5314 2002-10-09 Peter S Galbraith <psg@debian.org>
5316 * mh-utils.el (mh-exec-cmd-output): Use new function
5317 'mh-exchange-point-and-mark-preserving-active-mark instead of
5318 'exchange-point-and-mark. Fixes a bug in emacs20 and XEmacs21.
5319 (mh-exchange-point-and-mark-preserving-active-mark): New function.
5320 Does like 'exchange-point-and-mark but doesn't activate the mark.
5322 * mh-comp.el (mh-letter-menu): Allow access to "Pull in All
5323 Compositions" menu entries when edits have really occurred.
5324 Works with "forw: -mime" mh_profile entry, so this fixes a bug.
5326 * mh-mime.el (mh-mime-inline-part, mh-mm-display-part): Use
5327 line-beginning-position and line-end-position instead of
5328 point-at-bol and point-at-eol XEmacs functions.
5329 * mh-xemacs-compat.el: Added line-end-position and
5330 line-beginning-position compatibility aliases.
5332 2002-10-08 Mark D. Baushke <mdb@gnu.org>
5334 * mh-utils.el (mh-scan-msg-format-regexp): The regexp to find
5336 (mh-scan-msg-format-string): Format to be used with the current
5337 maximum width of message number for the folder in the
5338 `mh-upate-scan-format' function.
5339 (mh-update-scan-format): Use `mh-scan-msg-format-regexp' for greater
5340 flexibility. The message number is no longer anchored to the
5341 beginning of the `mh-scan-format-nmh' or `mh-scan-format-mh' format
5342 strings. The `mh-update-scan-format' allows for using zero-filled
5345 2002-10-08 Peter S Galbraith <psg@debian.org>
5347 * mh-e.el (mh-folder-folder-menu): Add entry for "Thread Folder".
5349 2002-10-07 Satyaki Das <satyaki@theforce.stanford.edu>
5351 * mh-seq.el (mh-thread-generate): Use mh-progs to get path to mh
5354 * mh-speed.el (mh-speed-flists): Use mh-progs to get path to mh
5356 (mh-speed-folders-actual): Same as above.
5358 2002-10-05 Steve Youngs <youngs@xemacs.org>
5360 * mh-comp.el (mh-yank-from-start-of-msg): Make default setting 't'
5363 * mh-xemacs-compat.el (match-string-no-properties): Rewrite as a
5364 defsubst using 'buffer-substring-no-properties' so we don't grab
5366 (rfc822-goto-eoh): Removed. This exists in the XEmacs mail-lib
5368 (mail-header-end): Ditto.
5369 (mail-mode-fill-paragraph): Ditto.
5371 2002-10-05 Satyaki Das <satyaki@theforce.stanford.edu>
5373 * mh-speed.el (mh-speed-invalidate-map): When called interactively
5374 the function will clear mh-speed-folders-cache.
5376 2002-10-02 Satyaki Das <satyaki@theforce.stanford.edu>
5378 * mh-mime.el (mh-insert-mime-button): Rewrite without using
5381 2002-10-01 Satyaki Das <satyaki@theforce.stanford.edu>
5383 * mh-mime.el (mh-file-mime-type-substitutions): Reorder code to
5384 avoid compiler warning.
5386 2002-10-01 Bill Wohler <wohler@newt.com>
5388 * Makefile (MH-E-ETC): Moved ChangeLog into MH-E-ETC-ETC since it
5389 shouldn't get installed in Emacs.
5390 (install-emacs): Install MH-E-IMG into Emacs' lisp/toolbar and
5391 MH-E-IMG2 into Emacs' lisp/mail.
5393 2002-10-01 Peter S Galbraith <psg@debian.org>
5395 * mh-e.el (mh-tool-bar-reply-3-buttons): New customization.
5396 Non-nil means use three buttons for reply commands in tool-bar.
5397 If you have room on your tool-bar because you are using a large
5398 font, you may set this variable to expand the single reply
5399 button into three buttons that won't lead to minibuffer prompt
5400 about who to reply to.
5401 (mh-folder-tool-bar-map): Use mh-tool-bar-reply-3-buttons to
5402 decide how many buttons to use for replying.
5404 * mh-mime.el (mh-file-mime-type-substitutions)
5405 (mh-file-mime-type-substitute): Fix typos and doc strings.
5407 2002-09-30 Peter S Galbraith <psg@debian.org>
5409 * mh-mime.el (mh-file-mime-type): Run Content-Type string returned
5410 by file command through mh-file-mime-type-substitute (see below).
5411 (mh-file-mime-type-substitute): Possibly change Content-Type
5412 string using mh-file-mime-type-substitutions variable. This is
5413 mostly because all MS-Office file are seen as application/msword
5414 by the file command.
5415 (mh-file-mime-type-substitutions): New variable. Defines
5416 substitutions to make for Content-Type returned from file command.
5418 2002-09-27 Bill Wohler <wohler@newt.com>
5420 * README: Moved Id to end of file since it broke outline mode at
5423 * import-emacs (release): Renamed "mainline" tag to
5424 "emacs-mainline" to correspond with existing CVS tag.
5425 (EMACS_HOME): Fixed typo in docstring.
5427 * mh-utils.el (mh-folder-name-p, mh-defun-show-buffer): Lowercase
5428 NIL and T in docstring.
5429 (mh-update-scan-format): Fixed typo.
5431 * mh-comp.el, mh-e.el, mh-pick.el, mh-utils.el: Updated from CVS
5432 Emacs. The only new thing appears to be to downcase NIL and T in
5435 2002-09-26 Satyaki Das <satyaki@theforce.stanford.edu>
5437 * mh-seq.el (mh-thread-generate): The threading code will now be
5438 more resistant to corruption of messages. Before the change any
5439 corruption of message x would cause all messages with indices
5440 higher than x to be neglected when threading!
5442 2002-09-23 Peter S Galbraith <psg@debian.org>
5444 * mh-mime.el (mh-store-mime-parts): Don't store value into
5445 user-customizable variable mh-store-mime-parts-default-directory
5446 and use mh-store-mime-parts-directory instead.
5448 2002-09-20 Satyaki Das <satyaki@theforce.stanford.edu>
5450 * mh-seq.el (mh-thread-prune-subject): Use regular expressions to
5451 make the subject pruning behave the way it is specified in the
5454 * mh-speed.el (mh-speed-folders-actual): Don't use pop when we
5455 are not going to use the first element. This avoids a compilation
5456 warning with cvs emacs.
5458 2002-09-19 Satyaki Das <satyaki@theforce.stanford.edu>
5460 * mh-utils.el (mh-display-msg): Put the call to
5461 set-buffer-modified after mh-show-mode. This is needed for CVS
5462 emacs since calling mh-show-mode marks the buffer as modified if
5465 2002-09-17 Peter S Galbraith <psg@debian.org>
5467 * mh-mime.el (mh-store-mime-parts-default-directory): Renamed from
5468 mh-store-mime-parts-directory
5469 (mh-store-mime-parts-directory): Renamed from
5470 mh-store-mime-parts-directory-default.
5472 2002-09-16 Peter S Galbraith <psg@debian.org>
5474 * mh-comp.el (mail-citation-hook): Doc tweaks suggested by Bill.
5476 2002-09-08 Satyaki Das <satyaki@theforce.stanford.edu>
5478 * mh-e.el (autoloads): Reorder autoload of mh-reply to avoid
5481 2002-09-03 Peter S Galbraith <psg@debian.org>
5483 * mh-mime.el (mh-store-mime-parts-directory): New defcustom.
5484 Default directory to use for mh-store-mime-parts.
5485 (mh-store-mime-parts): New Command. Store the MIME parts of the
5487 (mh-store-mime-parts-directory-default): New internal working
5488 variable. Default to use for mh-store-mime-parts-directory, set
5491 * mh-e.el (mh-folder-seq-tool-bar-map): Add mh-store-mime-parts to
5495 2002-08-22 Satyaki Das <satyaki@theforce.stanford.edu>
5497 * mh-seq.el (mh-thread-generate-scan-lines): In threaded view,
5498 complete scan lines are printed for all messages (not just the
5499 ones at the top of a thread).
5501 * mh-index.el (mh-index-insert-scan): Replace use of kill-line
5502 since that pollutes the kill-ring.
5504 * mh-comp.el (autoloads): Add autoloads for search and subseq to
5505 get rid of compiler warnings.
5507 2002-08-19 Peter S Galbraith <psg@debian.org>
5509 * reply-to.xpm, reply-to.pbm, reply-from.xpm, reply-from.pbm,
5510 reply-all.xpm, reply-all.bpm: New icons for various reply methods.
5511 * mh-e.el (mh-folder-tool-bar-map): Split reply button into three
5512 that won't prompt for "from", "to" and "all".
5513 * mh-comp.el (mh-reply): Put variable reply-to in the interactive
5514 list since it's specified on the command line for the new toolbar.
5516 * mh-comp.el (mail-citation-hook): Tweak docs concerning
5517 historical usage for supercite.
5518 (mh-yank-from-start-of-msg): Add settings 'supercite and
5519 'autosupercite. Rename 'automatic to 'autoattrib.
5520 (mh-insert-prefix-string): Invoke sc-cite-original if
5521 mh-yank-from-start-of-msg is et to 'supercite or 'autosupercite.
5523 2002-08-17 Satyaki Das <satyaki@theforce.stanford.edu>
5525 * mh-comp.el (compilation-fix): Reorder defvars to avoid warnings
5528 2002-08-17 Peter S Galbraith <psg@debian.org>
5530 * mh-comp.el (mh-yank-from-start-of-msg): Add 'automatic choice.
5531 Do as for `attribution' automatically when show buffer matches the
5532 message being replied-to.
5533 (mh-reply): Call 'mh-yank-cur-msg when mh-yank-from-start-of-msg
5534 is set to 'automatic and show buffer matches message number being
5536 (mh-show-buffer-message-number): New helper function to get the
5537 message number of the current show-buffer.
5538 (mh-yank-cur-msg): Handle 'automatic choice the same as 'attribution.
5539 (mh-yank-cur-msg): Bug fix. It would bail on error if
5540 mh-show-buffer didn't exists.
5542 2002-08-16 Peter S Galbraith <psg@debian.org>
5544 * mh-comp.el (mh-insert-x-mailer): It wrongly assumed that Emacs
5545 was used even when XEmacs was used. Fixed so X-Mailer header is
5546 more exact about what we are using.
5548 2002-08-15 Peter S Galbraith <psg@debian.org>
5550 * mh-e.el (mh-version): Change CVS version number to 6.1+cvs just
5551 so X-Mailer header is more exact about what we are using.
5553 * mh-mime.el (mh-mhn-compose-insertion, mh-mhn-compose-anon-ftp,
5554 mh-mml-attach-file):
5555 "Jeffrey P. Morgenthaler" <jpmorgen@congee.gsfc.nasa.go> reported
5556 that "require" in emacs 20.3 doesn't handle 3 arguments. We
5557 use "load" at the top of file elsewhere anyway to handle such a
5558 case of non-essential loading, so switch to that here.
5560 2002-08-06 Satyaki Das <satyaki@theforce.stanford.edu>
5562 * mh-funcs.el (autoload): Add autoload for mh-speed-invalidate-map.
5564 * mh-speed.el (mh-speed-add-folder): New function to make the
5565 speedbar aware of new folders when they are created by mh-e.
5567 * mh-utils.el (mh-prompt-for-folder): Use mh-speed-add-folder to
5568 tell speedbar that new folder is being created. Also use folder
5569 instead of mkdir to create new folders.
5571 2002-08-01 Peter S Galbraith <psg@debian.org>
5573 * mh-utils.el (mh-decode-quoted-printable): Conditionalize the
5574 limit of search for quoted-printable. If we're using mm-decode
5575 for MIME decoding, it's possible that `mimedecode' could mess our
5576 message, so we only run a full search for quoted-printable parts
5577 when not using gnus' mm-decode. When using mm-decode, mimedecode
5578 can still help by handling the case of the whole message being
5579 quoted-printable as opposed to only a part.
5581 2002-07-31 Peter S Galbraith <psg@debian.org>
5583 * mh-comp.el (mh-compose-insertion): Moved from mh-mime.el because
5584 the pulldown menu were broken in XEmacs21 from this variable being
5587 2002-07-28 Mark D. Baushke <mdb@gnu.org>
5589 * mh-utils.el (mh-show-mode): Use the default paragraph-start
5590 rather than the inherited text-mode value.
5592 2002-07-28 Satyaki Das <satyaki@theforce.stanford.edu>
5594 * mh-seq.el (mh-thread-duplicates): New hash table to track
5596 (mh-thread-get-message): Remove debug code.
5597 (mh-thread-canonicalize-id): Modified to handle messages without
5598 message-id header. Such messages are given distinct copies of the
5599 empty string as message-id.
5600 (mh-thread-generate): The function was inadvertently rebuilding
5601 the thread tree when message refiles and message deletes are
5602 processed. The change here fixes that. Also code has been added to
5603 keep track of duplicate message-id's.
5604 (mh-thread-generate-scan-lines): Modified to print scan lines for
5605 duplicate messages (that is messages with the same message-id).
5606 (mh-thread-forget-message): Modified to maintain
5607 mh-thread-duplicates.
5609 2002-07-22 Satyaki Das <satyaki@theforce.stanford.edu>
5611 * mh-speed.el (mh-speed-parse-flists-output): Use delete-region
5612 instead of kill-region. Otherwise the kill ring gets polluted.
5614 2002-07-16 Satyaki Das <satyaki@theforce.stanford.edu>
5616 * mh-seq.el (mh-thread-update-scan-line-map): New function to
5617 refresh the stale scan lines.
5618 (mh-thread-inc): Update old scan lines when mh-thread-inc is
5619 called. Otherwise notations for deleted and refiled messages get
5620 lost and the folder display gets out of sync with real mh-e state.
5622 * mh-mime.el (mh-mm-display-part): Call Gnus citation highlight
5623 code when text part is displayed. Otherwise buttonized text parts
5624 aren't correctly fontified when they are displayed.
5626 2002-07-15 Mark D. Baushke <mdb@gnu.org>
5628 * mh-utils.el (mm-decode): Use load for the Non-fatal depencency
5629 on the mm-decode library.
5630 * mh-mime.el (mm-decode, mm-uu, mm-view): Use load for the
5631 Non-fatal depencencies on the mm-decode, mm-uu and mm-view
5634 2002-07-15 Satyaki Das <satyaki@theforce.stanford.edu>
5636 * mh-utils.el (mh-require, mh-autoload): Remove these macros.
5637 (mh-decode-mime): Initialized to t iff the mm-decode library is
5638 present in the load-path.
5639 * mh-mime.el (mh-require): Don't use it anymore.
5641 2002-07-15 Mark D Baushke <mdb@gnu.org>
5643 * mh-utils.el (mh-update-scan-format): Rewrite for compatibility
5644 with Xemacs as replace-match appears not to have identical
5645 functionality with FSF emacs.
5646 (mh-scan-msg-format-regexp): Deleted. This regexp is now hardcoded
5647 into the mh-update-scan-format function.
5649 2002-07-12 Satyaki Das <satyaki@theforce.stanford.edu>
5651 * mh-seq.el: Add message threading code.
5653 * mh-utils.el (mh-letter-thread-folder): New interactive function
5654 that allows switching to threaded view from show buffer.
5655 (mh-show-folder-map): Bound "F t" to call mh-letter-thread-folder.
5656 (mh-goto-msg): Replace the function to not assume that messages
5657 are sorted in the folder buffer.
5659 * mh-e.el (mh-folder-threaded-view-p): New buffer local variable
5660 in the folder buffer that records whether threaded view is being
5662 (mh-scan-subject-regexp, mh-scan-format-regexp): Get font lock
5663 working for threaded view as well.
5664 (mh-regenerate-headers): Reset mh-folder-threaded-view-p to nil.
5665 (mh-get-new-mail, mh-process-commands): Do incremental threading
5666 if folder is in threaded view.
5667 (mh-delete-scan-msgs): Update thread tables if folder is in
5669 (mh-folder-map): Add "F t" as key binding for mh-thread-folder
5671 * mh-comp.el (mh-yank-cur-msg): Bug fix. mh-show-buffer is only
5672 has a meaningful value in the folder buffer.
5674 2002-07-11 Peter S Galbraith <psg@debian.org>
5676 * mh-comp.el (mh-yank-cur-msg): Run only if mh-show-buffer
5677 actually exists (otherwise a back-traceable error occurred).
5679 * mh-utils.el (mh-find-progs): Run PATH search only when mh-progs,
5680 mh-lib and mh-lib-progs are not all already set. This allows the
5681 user to set them using a simple setq prior to loading mh-e. This
5682 is useful for implementation of mh-e on win32. Note that many
5683 commands still call mh-find-path which also parses the mh_profile
5684 file (that may still fail on win32), so this is still done often.
5685 But it lets us change the mh_profile file and have mh-e see the
5686 changed file without exiting emacs and starting over so I left
5689 2002-07-04 Satyaki Das <satyaki@theforce.stanford.edu>
5691 * mh-index.el (mh-index-show): Fixed a bug in mh-index-show which
5692 caused it to lose track of point when called from show buffer.
5694 2002-07-04 Mark D. Baushke <mdb@gnu.org>
5696 * Makefile: Add more information and common methods to allow both
5697 GNU make and Berkeley make to properly build everything.
5699 2002-07-04 Satyaki Das <satyaki@theforce.stanford.edu>
5701 * mh-mime.el (mh-push-button): Bug fix for mime display with
5702 mouse. Select show window before executing the mime display
5705 2002-07-01 Mark D. Baushke <mdb@gnu.org>
5707 * Makefile: Use a conditional variable assignment operator rather
5708 than ifndef to let Makefile be used by both GNU make and Berkeley
5709 make (or similar versions of make). This does not help Solaris
5710 /usr/ccs/bin/make, but Solaris make has problems with the ifndef
5713 2002-07-01 Satyaki Das <satyaki@theforce.stanford.edu>
5715 * mh-index.el (mh-index-search): Check for mh-decode-mime before
5716 adding mh-mime-cleanup to kill-buffer-hook.
5718 * mh-mime.el (mm-destroy-parts): Add definition for old emacs.
5720 2002-06-30 Mark D Baushke <mdb@gnu.org>
5722 * mh-utils.el (mh-update-scan-format): Add documentation string.
5723 (mh-scan-msg-format-regexp): Update the regexp to find %(msg).
5724 (mh-set-cmd-note): When mh-scan-format-file is not t, dynamic
5725 update of mh-cmd-note is wrong. Do not assume that
5726 mh-scan-format-nmh and mh-scan-format-mh can be kept in lock-step
5727 with mh-cmd-note via mh-set-cmd-note. The mh-scan-format function
5728 is now where the updated mh-cmd-note value is put into the scan
5731 * mh-e.el (mh-generate-new-cmd-note): Add documentation string.
5732 (mh-scan-format): Use mh-update-scan-format to get updated copies
5733 of mh-scan-format-nmh and mh-scan-format-mh to avoid format skew.
5734 (mh-get-new-mail): Do not try to adapt mh-cmd-note unless
5735 mh-scan-format-file is equal to t.
5736 (mh-scan-format-nmh): No longer buffer local.
5737 (mh-scan-format-mh): No longer buffer local.
5739 2002-06-30 Satyaki Das <satyaki@theforce.stanford.edu>
5741 * mh-index.el (mh-index-max-msg-index): New variable to keep track
5742 of max message index among search results. If mh-adaptive-cmd-note
5743 is non-nil this is used to compute the width of the index field.
5744 (mh-index-search): Keep track of max index seen while parsing the
5745 search results and set it if mh-adaptive-cmd-note is non-nil.
5746 (mh-index-find-max-width): New function to find the required width
5747 of the message index field.
5748 (mh-defun-index): Binding buffer local variables is bad, so don't
5750 (mh-index-show): New argument display-headers-p decides whether
5751 the message is displayed in raw form or not.
5752 (mh-index-header-display): New interactive function bound to ","
5753 which shows the message in raw form.
5754 (mh-index-keymap): Add appropriate bindings for backtab and ",".
5755 (read-from-string): Add ignore-errors around it so that the code
5756 doesn't die when it gets unexpected input.
5758 2002-06-29 Satyaki Das <satyaki@theforce.stanford.edu>
5760 * mh-index.el (mh-count-windows): This function works around the
5761 lack of the window-list builtin function in emacs20.
5763 2002-06-29 Mark D Baushke <mdb@gnu.org>
5765 * mh-utils.el (mh-message-number-width): New function to scan
5766 the last message of a folder and return its width.
5767 (mh-adaptive-cmd-note): New variable, if Non-nil indicates that
5768 mh-set-cmd-note should be called with the message width for the
5770 (mh-cmd-note): Update documentation.
5771 (mh-update-scan-format): Helper function for updating the
5772 mh-scan-format-nmh and mh-scan-format-mh variables.
5773 (mh-scan-msg-overflow-regexp): New variable to help find problem
5774 messages after an inc.
5775 (mh-scan-msg-format-regexp): New variable to find the old message
5776 width in one of the mh-scan-format-nmh or mh-scan-format-mh
5778 (mh-set-default-cmd-note): Replaced by mh-set-cmd-note.
5779 (mh-set-cmd-note): New function to replace update mh-cmd-note
5782 * mh-e.el (mh-regenerate-headers): If mh-adaptive-cmd-note is
5783 non-nil, use mh-set-cmd-note on empty folder buffers.
5784 (mh-make-folder): Ditto.
5785 (mh-generate-new-cmd-note): New function to adapt the mh-cmd-note
5786 to fit when mh-get-new-mail gets message number truncation.
5787 (mh-get-new-mail): Maybe use mh-generate-new-cmd-note if
5788 mh-adaptive-cmd-note is Non-nil.
5790 2002-06-29 Satyaki Das <satyaki@theforce.stanford.edu>
5792 * mh-speed.el (mh-speed-view): The display gets confused if the
5793 cursor is in the show buffer when mh-speed-view is called. This is
5796 2002-06-27 Satyaki Das <satyaki@theforce.stanford.edu>
5798 * mh-e.el (mh-next-undeleted-msg): Get rid of optional arg
5799 reverse-p. If there are no more undeleted messages the the point
5800 remains at its original position and a message is produced (closes
5802 (mh-previous-undeleted-msg): Change similar to
5803 mh-next-undeleted-msg.
5804 (mh-next-msg, mh-refile-msg, mh-delete-msg): Backout previous
5806 (mh-folder-map): Bind "S-tab" and "K S-tab" to mh-prev-button.
5808 * mh-utils.el (mh-show-mode-map): Bind "S-tab" and "K S-tab" to
5809 mh-letter-prev-button.
5811 * mh-mime.el (gnus-newsgroup-name): Initialize it to nil, so that
5812 mm-uu-dissect doesn't cause error.
5814 2002-06-27 Mark D Baushke <mdb@gnu.org>
5816 * mh-utils.el (mh-cmd-note): Make buffer-local. Changes to this
5817 variable should be made via the new mh-set-default-cmd-note
5819 (mh-set-default-cmd-note): New function to setq-default the
5820 mh-cmd-note, mh-scan-format-mh and mh-scan-format-nmh values to
5823 * mh-e.el (mh-scan-format-mh): Make buffer-local.
5824 (mh-scan-format-nmh): Ditto.
5825 (mh-scan-good-msg-regexp): Use a more general regular expression
5826 so that the width of message numbers, mh-cmd-note, may vary.
5827 (mh-scan-deleted-msg-regexp): Ditto.
5828 (mh-scan-refiled-msg-regexp): Ditto.
5829 (mh-scan-cur-msg-number-regexp): Ditto.
5830 (mh-scan-cur-msg-regexp): Ditto.
5831 (mh-scan-subject-regexp): Ditto.
5833 2002-06-26 Satyaki Das <satyaki@theforce.stanford.edu>
5835 * mh-speed.el: Speedbar support code.
5837 * Makefile: Add mh-speed.el to MH-E-SRC.
5839 * mh-utils.el (mh-prompt-for-folder): Add speedbar hook if
5840 speedbar is being used.
5842 * mh-funcs.el (mh-kill-folder): Add speedbar hook if speedbar is
5845 * mh-e.el (speedbar-autoloads): Autoload speedbar initialization
5846 functions so that speedbar can find them.
5848 2002-06-25 Satyaki Das <satyaki@theforce.stanford.edu>
5850 * mh-index.el (mh-grep-execute-search, mh-grep-next-result): Allow
5851 grep to be used to search mail.
5852 (mh-index-font-lock-keywords): Modified to avoid bug when using
5855 * mh-e.el (mh-delete-msg, mh-refile-msg): Modify so that if no
5856 undeleted (or unrefiled) message exists in the current movement
5857 direction then try to find an undeleted (or unrefiled) message in
5858 the opposite direction instead.
5859 (mh-next-undeleted-msg): Added a new optional argument. If non-nil
5860 search for undeleted message backwards if none exists in the
5862 (mh-previous-undeleted-msg): Added an optional argument. If
5863 non-nil search for undeleted message in the forward direction if
5864 none exists in the backward direction.
5865 (mh-next-msg): Optional argument to change direction if undeleted
5866 messages are not found in the current direction.
5868 * mh-index.el (mh-cmd-note): Use mh-cmd-note instead of hardcoding
5869 the index field size to 4.
5871 * mh-utils.el (mh-show-addr, mh-show-xface): New functions added
5872 to do xface display and goto-addr interface to allow reuse by the
5874 (mh-show-mode): Use mh-show-addr and mh-show-xface. Only add
5875 mh-mime-cleanup to kill-buffer-hook if mime decoding is enabled.
5876 (mh-modify): Use mh-letter-mode instead of mh-show-mode when
5879 * mh-mime.el (mh-mm-inline-message): Arrange for xface and
5880 highlighting to work in forwarded messages.
5882 2002-06-23 Peter S Galbraith <psg@debian.org>
5884 * mh-comp.el (mh-yank-from-start-of-msg): Add 'attribution' option
5885 to add an attribution line in mh-yank-cur-msg.
5886 (mh-extract-from-attribution-verb): Verb to use for attribution
5887 when a message is yanked by mh-yank-cur-msg. Provides a method
5888 for setting a different language.
5889 (mh-yank-cur-msg): Add support for 'attribution' option.
5890 (mh-extract-from-attribution): Function to get the attribution
5891 line, or the sender from the From: line in the current show buffer.
5893 2002-06-20 Satyaki Das <satyaki@theforce.stanford.edu>
5895 * mh-index.el (mh-index-show): mh-display-msg was not being called
5896 in the show buffer. This causes weird results on some mime messages.
5898 * mh-mime.el (gnus-newsgroup-charset): Defvar to avoid error in
5899 pgp messages if gnus hasn't been used yet.
5901 * mh-comp.el (mh-letter-mode-map): Typo fix.
5903 2002-06-19 Satyaki Das <satyaki@theforce.stanford.edu>
5905 * mh-mime.el (mh-mml-secure-message-encrypt-pgpmime): Typo fix.
5906 (compiler-warnings): Add autoloads to remove compiler warnings.
5908 * mh-index.el (autoload-fixes): Fix autoload forms.
5910 2002-06-18 Satyaki Das <satyaki@theforce.stanford.edu>
5912 * mh-comp.el (mh-letter-mode-map): Change binding of "\C-c\C-ma"
5913 to mh-compose-insertion. Remove duplicate binding for "C-c\C-mf".
5914 (compiler-warnings): Add defvar to remove compiler-warning.
5916 2002-06-18 Peter S Galbraith <psg@debian.org>
5918 * mh-comp.el (mh-letter-menu): Conditionalize GPG function on
5919 mh-gnus-pgp-support-p.
5921 * mh-mime.el (mh-mml-forward-message): s/subseq/substring/.
5922 (mh-compose-forward): cut&paste typo: s/messages/message/.
5923 (mml-minibuffer-read-file): autoload added.
5924 (mml-minibuffer-read-description): autoload added.
5925 (mml-insert-empty-tag): autoload added.
5926 (mh-mml-secure-message-sign-pgpmime): Check mh-gnus-pgp-support-p.
5927 (mh-mml-secure-message-encrypt-pgpmime): Check mh-gnus-pgp-support-p.
5929 2002-06-17 Peter S Galbraith <psg@debian.org>
5931 * mh-utils.el (mh-show-use-xface): Check for availability of
5932 `uncompface' executable on system.
5934 * mh-mime.el (mh-compose-forward): New front end for both
5935 mh-mml-forward-message and mh-mhn-compose-forw.
5936 (mh-compose-insertion): New front end for both mh-mml-attach-file
5937 and mh-mhn-compose-insertion.
5938 (mh-mml-to-mime): New function. Compose mime message from mml
5940 (mh-mml-forward-message): New function. Forward a message as
5942 (mh-mml-attach-file): New function. Attach a file to the outgoing
5944 (mh-mml-compose-insert-p): New variable. Buffer-local variable to
5945 know whether MIME insertion was done. Triggers an automatic call
5946 to `mh-mml-to-mime' in `mh-send-letter'.
5947 (mh-mml-secure-message-sign-pgpmime): New function.
5948 Front end to mml-secure-message-sign-pgpmime.
5949 (mh-mml-secure-message-encrypt-pgpmime): New function.
5950 Front end to mml-secure-message-encrypt-pgpmime.
5952 * mh-comp.el (mh-send-letter): automatic call to `mh-mml-to-mime'
5953 if mh-mml-compose-insert-p is set.
5954 (mh-letter-mode-map): Add keys for new mh-mime functions above.
5955 * mh-comp.el: Added autoloads for new mh-mime functions above.
5957 2002-06-17 Peter S Galbraith <psg@debian.org>
5959 * mh-utils.el (mh-show-use-xface): new defcustom to determine
5960 whether to call external package x-face to display the x-face.
5961 (mh-invisible-headers-show-xface): variable now defaults to value
5962 of mh-show-use-xface.
5963 (mh-show-mode): When mh-show-use-xface is t, invoke
5964 external package x-face to display the x-face.
5966 2002-06-15 Satyaki Das <satyaki@theforce.stanford.edu>
5968 * mh-e.el (mh-prev-button): New interactive function which moves
5969 point to the previous mime button in the show buffer.
5970 (mh-folder-mode-map): Bind M-TAB and K M-TAB to mh-prev-button.
5972 * mh-utils.el (mh-show-mode-map): Bind M-TAB and K M-TAB to call
5973 mh-letter-prev-button (which is analogous to mh-prev-button).
5974 (mh-gnus-pgp-support-p): New global variable to replace the
5975 variable mh-recent-gnus-p. The name better describes what it is
5978 * mh-mime.el (mh-mime-display-part, mh-mime-display-single): Use
5979 mh-gnus-pgp-support-p instead of mh-recent-gnus-p.
5981 2002-06-12 Satyaki Das <satyaki@theforce.stanford.edu>
5983 * mh-mime.el (mh-display-buttons-for-inline-parts): New
5984 customizable variable. When non-nil inline parts have are
5985 displayed with a button (that is initially expanded).
5986 (mh-maybe-insert-newline): The function has been removed.
5987 (mh-mime-display-single): Add code to display buttons for inline
5988 parts. Reduce the insertion of extra newlines between inline parts
5989 and also for pgp signature parts.
5990 (mh-mm-display-part): The function has been rewritten and cleaned
5991 up. There was a bug which could change the show buffer if the user
5992 pressed C-g while a mime part was being displayed has been fixed.
5993 (mh-press-button, mh-push-button): Use unwind-protect to make sure
5994 that set-buffer-modified-p is always called after mime display.
5995 (mh-mime-inline-part): The behavior of the function has been
5996 changed so that it toggles the display of the raw bytes.
5997 (mh-mime-display-security): Remove the display of too many
5999 (documentation): Remove most check-doc warnings.
6001 * mh-comp.el (mh-filter-out-non-text): Updated since whitespace
6002 added around mime buttons have changed.
6004 2002-06-10 Satyaki Das <satyaki@theforce.stanford.edu>
6006 * mh-index.el (mh-index-last-search, mh-index-search): The default
6007 prompt in mh-index-search has been removed since currently there
6008 is no good way of reading "+" with mh-prompt-for-folder.
6009 (mh-index-folder-mode, mh-index-show-mode): New major modes
6010 derived from mh-folder-mode and mh-show-mode respectively. They
6011 use a restricted keymap compared to the parent modes.
6012 (mh-index-folder-face): New customizable face to display folder
6013 names in the index buffer.
6014 (documentation): Change two spaces after period back to one.
6016 2002-06-08 Satyaki Das <satyaki@theforce.stanford.edu>
6018 * mh-e.el (mh-folder-toggle-mime-part): New interactive function
6019 to control mime display from folder buffer.
6020 (mh-folder-inline-mime-part): New interactive function to inline
6021 raw mime part from folder buffer.
6022 (mh-folder-save-mime-part): New interactive function to save mime
6023 part from folder buffer.
6024 (mh-folder-mode-map): Add keybindings for "K v", "K o", "K i" and
6025 "K \t" to mh-folder-mode-map.
6026 (mh-goto-next-button): Modified to allow searching for next button
6027 that satisfies some condition.
6028 (mh-folder-mime-action): Support function for
6029 mh-folder-save-mime-part, mh-folder-inline-mime-part and
6030 mh-folder-toggle-mime-part.
6032 * mh-utils.el (mh-show-mode-map): Modify keymap to add appropriate
6033 bindings for "K v", "K o", "K i" and "K \t".
6035 * mh-index.el (documentation): Fix docs according to checkdoc
6038 2002-06-07 Satyaki Das <satyaki@theforce.stanford.edu>
6040 * mh-seq.el, mh-funcs.el (Compiler): Remove (require 'view) and
6041 instead add defvar for view-exit-action.
6043 2002-06-06 Satyaki Das <satyaki@theforce.stanford.edu>
6045 * mh-comp.el (mh-insert-x-face): If transient-mark-mode is enabled
6046 the call to mark returns error. So avoid using mark.
6048 * mh-index.el: Support for new interactive function
6051 * mh-e.el (mh-next-button, mh-goto-next-button): Refactor
6052 mh-next-button so that the code may be reused by mh-index.el.
6053 (mh-folder-map): Add key "F i" to call mh-index-search.
6055 * mh-utils.el (mh-recent-gnus-p): Fix documentation.
6056 (mh-msg-folder, mh-display-msg): The new function mh-msg-folder
6057 maps a MH folder name to the buffer displaying it. In normal
6058 operation the two names are identical but they are different in a
6059 folder buffer generated by index search. Minor modification to
6060 mh-display-msg to use mh-msg-folder to enable mh-index-search to
6062 (mh-show-mode-map): Add key "F i" to call mh-index-search.
6064 * Makefile: Add mh-index.el
6066 2002-06-05 Peter S Galbraith <psg@debian.org>
6068 * mh-e.el (mh-folder-message-menu): Add an entry for mh-modify.
6070 2002-05-31 Satyaki Das <satyaki@theforce.stanford.edu>
6072 * mh-utils.el (mh-decode-quoted-printable): Only decode if the
6073 whole message is encoded. So restrict the search for the
6074 content-transfer-encoding header to the headers of the message
6077 * mh-mime.el (mh-mime-display-alternative): Make sure that point
6078 is moved after mm-display-part is called.
6080 2002-05-29 Satyaki Das <satyaki@theforce.stanford.edu>
6082 * mh-mime.el (mh-mime-display-single): Fix the logic that
6083 determines when an attachment is buttonized. For inline parts that
6084 can't be displayed a button is now created.
6086 2002-05-29 Satyaki Das <satyaki@theforce.stanford.edu>
6088 * mh-e.el (mh-regenerate-headers): Fix an error in which the
6089 mh-mode-line-annotation was not being set properly.
6091 * mh-mime.el, mh-utils.el (compilation): Macros mh-require and
6092 mh-autoload are used to make sure that emacs20 doesn't croak when
6093 it tries to load non-existent mm-* files.
6094 (mh-decode-mime): Make it default to nil for Emacs major version
6097 2002-05-28 Satyaki Das <satyaki@theforce.stanford.edu>
6099 * mh-e.el (mh-regenerate-headers): Generalize the function to
6100 handle multiple ranges.
6102 2002-05-25 Satyaki Das <satyaki@theforce.stanford.edu>
6104 * compilation: Reduce use of eval-when-compile so that load-path
6105 is not changed if lisp files are loaded without compilation. Small
6106 changes were made to Makefile, mh-comp.el mh-e.el, mh-funcs.el,
6107 mh-seq.el, mh-utils.el
6109 * mh-e.el (mh-next-button, mh-folder-mode-map): New interactive
6110 function to advance point to next MIME button. It is bound to TAB.
6112 * mh-utils.el (mh-letter-next-button, mh-show-mode-map): New
6113 interactive function mh-letter-next-button has been added to
6114 advance point to the next MIME button. It is bound to TAB.
6116 * mh-mime.el (comments): Added some comments.
6118 2002-05-24 Satyaki Das <satyaki@theforce.stanford.edu>
6120 * mh-mime.el (compilation): Replace (eval-when-compile ...) by
6121 (eval-when (compile) ...) to remove a bug when mh-e is loaded
6122 without compilation.
6124 2002-05-23 Satyaki Das <satyaki@theforce.stanford.edu>
6126 * mh-comp.el (compilation): Some code was rearranged to avoid
6129 * mh-e.el (compilation): Code rearrangement and extra autoloads to
6130 remove compiler warnings
6131 (mh-quit): Add call to mh-destroy-postponed-handles to remove
6132 handles that are associated with external viewers. Also fixed a
6133 bug that I accidentally introduced by adding an extra line when
6134 cut and pasting my changes.
6136 * mh-func.el (compilation): Code rearrangement to remove compiler
6139 * mh-mime.el (compilation): Code rearrangement to remove compiler
6141 (mh-defun-compat): New macro to define to useful functions that
6142 aren't present present in old Gnus.
6143 (mh-destroy-postponed-handles): New function to cleanup handles
6144 that are associated with external viewers.
6145 (mh-handle-set-external-undisplayer): New function to replace
6146 mm-handle-set-external-undisplayer. It associates handles for
6147 external viewers with the folder buffer. These are released when
6148 the user quits the folder.
6149 (mh-mime-display, mh-press-button, mh-push-button): Hook in
6150 mh-handle-set-external-undisplayer.
6151 (mh-maybe-insert-newline): New function to avoid inserting too
6152 many newlines between mime parts.
6153 (mh-mm-display-part): Workaround for Gnus bug which causes new
6154 lines to be inserted when images are shown inline.
6155 (mh-mime-display-security): Cut down on newlines inserted.
6157 * mh-pick.el (compilation): Code rearrangement to remove compiler
6160 * mh-seq.el (compilation): Code rearrangement to remove compiler
6162 (comments): Remove @SD from comments.
6164 * mh-utils.el (compilation): Slight code rearrangement.
6165 (mh-defun-show-buffer): Fix documentation so that the first line
6166 is not too long as was the case earlier. Use
6167 mh-previous-window-config to remember where the cursor should
6168 return functions like mh-reply.
6169 (mh-display-msg): Initialize handles data-structure for the folder
6170 buffer so that postponed handles can be added to it.
6171 (mh-add-msgs-to-seq): Always keep messages in the sequences
6172 sorted. This removes some unexpected behavior when working with
6173 sequences that go out of sync with the corresponding MH sequences.
6174 (mh-canonicalize-sequence): New function to sort and remove
6175 duplicates from mh-e sequence.
6177 2002-05-21 Satyaki Das <satyaki@theforce.stanford.edu>
6179 * mh-utils.el (require): Load mm-decode.el here so that
6180 mm-inline-media-tests is properly initialized.
6182 * mh-comp.el (mh-yank-cur-msg): Don't try to remove the displayed
6183 mime parts when yanking the message. This also fixes the problem
6184 of regions not being respected during the yank.
6186 2002-05-20 Satyaki Das <satyaki@theforce.stanford.edu>
6188 * mh-utils.el (compiler-warnings): Some code was rearranged to
6189 remove all compiler warnings.
6190 (mh-decode-mime): New defcustom to control whether
6191 mime attachments are shown using Gnus.
6192 (mh-globals-hash): New global variable which maps a given buffer
6193 to the corresponding mime data structures.
6194 (mh-recent-gnus-p): New global variable which checks if Gnus is
6195 recent enough so that PGP/GPG encrypted messages can be handled.
6196 (mh-mm-inline-media-tests): Tests to determine whether a mime part
6197 can be shown inline.
6198 (mh-gnus-article-highlight-citation): Shadow the Gnus function,
6199 gnus-article-add-button before gnus-article-highlight-citation is
6200 called. This prevents the insertion of useless buttons in the
6202 (mh-show-mode): Don't set font-lock-support-mode to nil. Modify
6203 kill-buffer-hook to call mh-mime-cleanup.
6204 (mh-modify): Only the edit buffer is shown.
6205 (mh-display-msg): Add call to mh-mime-display, mh-display-smileys,
6206 mh-display-emphasis when mh-decode-mime is non-nil.
6208 * mh-mime.el (mh-buffer-data): New structure to keep track of
6209 per-buffer mime information.
6210 (compiler-warnings): Some code was rearranged to get rid of all
6212 (mh-graphical-smileys-p): New defcustom which controls whether
6213 graphical smileys are shown.
6214 (mh-graphical-emphasis-p): New defcustom for graphical emphasis.
6215 (mh-max-inline-image-width, mh-max-inline-image-height): New
6216 defcustoms for inlining image.
6217 (gnus-local-map-property, mm-merge-handles): Copy utility
6218 functions for use with version of Gnus that ships with Emacs21.1.
6219 (mh-mime-cleanup): New function to free mime data-structures.
6220 (mh-add-missing-mime-version-header): New function to add missing
6221 Mime-Version header if a Content-Type header exists.
6222 (mh-display-smileys): New function to show graphical smileys.
6223 (mh-display-emphasis): New function to show graphical emphasis.
6224 (new-globals): New variables mh-mime-button-* and
6225 mh-mime-security-* were added to control mime buttons.
6226 (mh-mime-display): New function to display mime messages. The
6227 functions mh-mime-display-part, mh-mime-display-alternative,
6228 mh-mime-display-mixed, mh-mime-part-index, mh-small-image-p,
6229 mh-mime-display-single, mh-insert-mime-button, mh-mm-display-part,
6230 mh-press-button, mh-push-button, mh-mime-save-part,
6231 mh-mime-inline-part, mh-widget-press-button, mh-mm-inline-message,
6232 mh-mime-display-security, mh-mime-security-show-details,
6233 mh-mime-security-press-button and mh-insert-mime-security-button
6234 were added to support mh-mime-display.
6236 * mh-e.el (mh-header-display): Bind mh-decode-mime to nil when
6237 mh-show-msg is called, so that mime isn't decoded when headers are
6239 (mh-quit): The show buffer is killed instead of invalidating and
6242 * mh-comp.el (mh-yank-cur-msg): Filter out the mime buttons from
6244 (mh-filter-out-non-text): New function to filter out attachments
6245 from message being yanked.
6247 2002-05-20 Bill Wohler <Bill.Wohler@openwave.com>
6249 * mh-utils.el (mh-invisible-headers-show-xface): First sentence of
6250 docstring was not entirely on first line so was truncated in
6251 customize and help buffers. Reworded so first sentence could fit
6252 within 80 columns per checkdoc recommendation.
6253 (mh-defun-show-buffer): Reworded per checkdoc recommendations.
6254 Removed @SD while I was in there.
6256 2002-05-18 Satyaki Das <satyaki@theforce.stanford.edu>
6258 * mh-seq.el (mh-narrow-to-seq): This function now removes the
6259 current message notation in the folder. Otherwise, two current
6260 message notations may be present after mh-widen is called. Also
6261 mh-copy-seq-to-eob is called instead of mh-copy-seq-to-point since
6262 the latter has a bug.
6263 (mh-copy-seq-to-point): This function has a tricky problem. It
6264 calls mh-map-to-seq-msgs which uses mh-goto-msg. mh-goto-msg
6265 assumes that the folder is sorted (since it uses binary
6266 search). The assumption isn't true, so it may not copy all the
6267 messages. Since this function is not used any more it has been
6269 (mh-copy-seq-to-eob): This function is a specialized (and
6270 hopefully correct) replacement for mh-copy-seq-to-point.
6272 2002-05-17 Satyaki Das <satyaki@theforce.stanford.edu>
6274 * mh-utils.el (mh-gnus-article-highlight-citation): Workaround for
6275 problem caused by low value of recursive-load-depth-limit in
6276 Emacs21.1 and CVS version of Gnus.
6277 (mh-show-mode-map): New keymap variable to facilitate use of
6278 summary commands from the show buffer.
6279 (mh-show-folder-buffer): New local variable which keeps track of
6280 the folder-buffer corresponding to the message being shown.
6281 (mh-defun-show-buffer): New macro to convert interactive functions
6282 callable in the summary buffer to interactive functions callable
6284 (mh-show-mode): Make buffer read-only and use mh-show-mode-map as
6285 keymap (closes SF #527946).
6286 (mh-modify): New interactive function to edit a message in-place.
6288 * mh-e.el (mh-goto-cur-msg): Add an optional argument,
6289 minimal-changes-p. If non-nil, the function will just change
6290 the point to current message and do not change folder display.
6291 (mh-folder-mode-map): Make "M" call mh-modify.
6293 2002-05-07 Peter S Galbraith <psg@debian.org>
6295 * mh-utils.el (mh-invisible-headers-show-xface): New defcustom
6296 variable. If non-nil, the X-Face header line will be excluded from
6297 the variable `mh-invisible-headers'. Set this when using a
6298 package such as x-face-el to display X-Face icons in mh-show-mode.
6299 This variable's setting will eventually be set automatically when
6300 mh-e does its own X-Face decoding (or this variable will be replaced
6301 by one telling mh-e to decode the X-Face). We may not ship the
6302 next release with this variable.
6304 2002-05-07 Peter S Galbraith <psg@debian.org>
6306 * mh-comp.el (mh-x-face-file): New defcustom variable. File name
6307 containing the encoded X-Face string to insert in outgoing mail.
6308 (mh-insert-x-face): New function. Appends an X-Face field to the
6309 header, but only if it doesn't already exist and if 'mh-x-face-file'
6310 is non-nil and points to an existing file.
6311 (mh-send-letter): Invoke mh-insert-x-face.
6313 2002-04-29 Mike Kupfer <m.kupfer@acm.org>
6315 * mh-e.el (mh-delete-msg, mh-refile-msg, mh-undo): Check
6316 whether XEmacs region is actually active (needed at least for 21.1).
6317 [Patch committed by psg]
6319 2002-04-29 Mike Kupfer <m.kupfer@acm.org>
6321 * mh-utils.el (mh-prompt-for-folder): Remove "default" argument
6322 from completing-read as XEmacs-21.1 doesn't have it (21.4 does
6323 however) and using the argument adds no functionality.
6324 [Patch committed by psg]
6326 2002-04-11 Peter S Galbraith <psg@debian.org>
6328 * mh-e.el (mh-delete-msg, mh-refile-msg, mh-undo): Add support for
6329 XEmacs to act on selected region when active.
6331 2002-04-10 Peter S Galbraith <psg@debian.org>
6333 * mh-e.el (mh-delete-msg, mh-refile-msg, mh-undo): XEmacs fix; Add
6334 check to see if mark-active is bound, because Mandrake Linux include
6335 XEmacs initialization code that binds transient-mark-mode. This
6336 fix gets around a problem in Mandrake only. It wasn't a problem
6337 on XEmacs generally. Fixes SF #541915.
6339 2002-04-08 Bill Wohler <wohler@newt.com>
6341 * Released mh-e version 6.1.
6343 * mh-e.el (mh-folder-unseen-seq-name): Use "mhparam -component
6344 Unseen-Sequence" command and "Unseen-Sequence: \\(.*\\)$" regexp
6345 to increase robustness.
6346 (mh-folder-unseen-seq-list): Use `expand-file-name' as
6347 `mh-expand-file-name' isn't needed and the former saves function
6349 (Version, mh-version): Updated for release 6.1.
6351 2002-04-08 Peter S Galbraith <psg@debian.org>
6353 * mh-e.el (mh-folder-unseen-seq-list): Specify mh-progs path in
6354 call to mark command. Fixes a bug in which unseen messages
6355 weren't highlighted if "mark" wasn't in the path.
6357 2002-04-07 Bill Wohler <wohler@newt.com>
6359 * MH-E-NEWS: Updated for release 6.1.
6361 * README: Updated for release 6.1. Updated verbiage about reading
6364 * mh-comp.el, mh-e.el, mh-funcs.el, mh-mime.el, mh-seq.el,
6365 mh-utils.el, mh-xemacs-compat.el: Updated copyright in files
6368 * mh-xemacs-compat.el: Put Author field back in, but set to FSF.
6370 * mh-comp.el, mh-funcs.el, mh-mime.el, mh-seq.el,
6371 mh-utils.el: Fixed all checkdoc errors, except for no
6372 documentation, and documentation in comments. Also removed the-
6373 prefix from certain local variables.
6375 * mh-e.el: Fixed all checkdoc errors, except for no documentation,
6376 and documentation in comments. Also removed the- prefix from
6377 certain local variables.
6378 (mh-folder-unseen-seq-name): Refactored to make default sequence
6379 name more explicit and to handle undefined Unseen-Sequence MH
6380 profile entry better.
6382 2002-04-02 Peter S Galbraith <psg@debian.org>
6384 * mh-e.el: 'defvar mh-folder-unseen-seq-name' called a function to
6385 set it's value, and this happens also on byte-compilation (where
6386 it can fail if the user's MH environment is not setup correctly).
6387 I now set the value of mh-folder-unseen-seq-name at runtime when I
6388 first need it. This should fix Debian bugs
6389 http://bugs.debian.org/140232 and http://bugs.debian.org/140817
6391 2002-03-25 Peter S Galbraith <psg@debian.org>
6393 * mh-utils.el: remove "(require 'mh-e)" since mh-utils.el should
6394 be at the bottom of the dependency tree.
6395 * mh-e.el (mh-folder-unseen-seq-name): Make sure mh-progs is set
6396 and use it as path to mhparam command in call-process.
6398 2002-01-23 Peter S Galbraith <psg@debian.org>
6400 * mh-e.el (mh-folder-font-lock-keywords): Add call to
6401 mh-folder-font-lock-unseen to fontify unseen messages in bold.
6402 (mh-folder-unseen-seq-name): Provide name of unseen sequence from
6403 mhparam. Used as default for variable of same name.
6404 (mh-folder-unseen-seq-list): Returns a list of unseen messages
6405 numbers for current folder.
6406 (mh-folder-unseen-seq-cache): Cache variable to hold list of
6407 unseen message numbers while font-lock iterates. This variable is
6409 (mh-folder-font-lock-unseen): Returns unseen message lines to
6410 font-lock one by one.
6412 2002-01-15 Peter S Galbraith <psg@debian.org>
6414 * mh-comp.el (mh-insert-prefix-string): Wrap a
6415 "(let ((zmacs-regions nil))" around (mark) so it works in XEmacs.
6416 Bug reported and fix suggested by Will Partain <partain@dcs.gla.ac.uk>
6417 Indeed, this is how it appears in XEmacs-21's mh-comp.el.
6419 2001-12-16 Jeffrey C Honig <jch@honig.net>
6421 * mh-comp.el (mh-forward): Move the assignment to `fwd-msg-file'
6422 to before the assignment to `draft' as the later changes buffers
6423 and invalidates `mh-seq-list' (which is used in a function called
6424 by (mh-seq-to-msgs)). Resolves SF #489448.
6426 * mh-utils.el: Add defcustoms for `mh-temp-folders-buffer' and
6427 `mh-temp-sequences-buffer'.
6429 * mh-e.el (mh-quit): If they exist, kill 'mh-temp-buffer,
6430 'mh-temp-folders-buffer and 'mh-temp-sequences-buffer when
6433 * mh-funcs.el (mh-list-folders): Use `mh-temp-folders-buffer'
6434 (a defcustom initialized to "*Folders*") for folder listing. Put
6435 into view mode and set it up to kill the buffer when exiting view
6438 * mh-seq.el (mh-list-sequences): Use `mh-temp-sequences-buffer'
6439 (a defcustom initialized to "*Sequences") for sequences listing.
6440 Put into view mode and set it up to kill the buffer when exiting
6443 2001-12-16 Bill Wohler <wohler@newt.com>
6445 * Released mh-e version 6.0.
6447 * MH-E-NEWS: Be a little more specific about incompatible changes.
6448 Added info about outdated manual.
6449 Removed variables in mh-scan regexp table that did not exist in
6451 Added helpful documentation about finding relevant variables
6452 containing regexps to mh-scan-format-file's description.
6454 * mh-e.el (mh-scan-format-file): Added information about getting a
6455 list of regexp variables that you'll need to change if you
6456 customize your scan's output.
6457 (mh-folder-mode): Added documentation about `mh-scan-format-file'
6458 for those users who modify their scan formats.
6460 * README: New file. Describes packages and provides simple
6461 installation instructions.
6463 * Makefile (clean, dist, install-emacs): Replaced $(RM) with rm
6464 -rf (closes SF #488661).
6466 2001-12-14 Bill Wohler <wohler@newt.com>
6468 * Released mh-e version 5.0.93.
6470 * Makefile (MH-E-SRC): Added mh-xemacs-compat.el.
6471 (MH-E-IMG): Added .pbm images for all. Removed mail_ prefix from
6473 (MH-E-IMG2): New variable to hold images in mail sub-directory.
6474 (dist): Updated target to make mail sub-directory and copy
6475 MH-E-IMG2 images there.
6477 * mh-xemacs-compat.el: Modified docs per GNU coding conventions.
6479 * mh-e.el: Reorganized variables having to do with the scan line.
6480 Moved some random variables that were interspersed out of the
6481 middle. Moved `mh-scan-format-file' first and let the variables
6484 As the number of variables increases, it is becoming important to
6485 organize the mh-e namespace. Several variables having to do with
6486 the format of scan lines were renamed, as follows:
6487 (mh-good-msg-regexp): Renamed to mh-scan-good-msg-regexp.
6488 (mh-deleted-msg-regexp): Renamed to mh-scan-deleted-msg-regexp.
6489 (mh-refiled-msg-regexp): Renamed to mh-scan-refiled-msg-regexp.
6490 (mh-valid-scan-line): Renamed to mh-scan-valid-regexp.
6491 (mh-cur-msg-number-regexp): Renamed to mh-scan-cur-msg-number-regexp.
6492 (mh-cur-msg-line-regexp): Renamed to mh-scan-cur-msg-regexp.
6493 (mh-scan-rcpt-addr-regexp): Renamed to mh-scan-rcpt-regexp.
6494 (mh-scan.font-lock-regexp): Renamed to mh-scan-format-regexp.
6495 (mh-folder-scan-font-lock-face): Renamed to
6496 mh-folder-scan-format-face.
6497 (mh-folder-cur-msg-line-face): Renamed to mh-folder-cur-msg-face).
6499 2001-12-13 Bill Wohler <wohler@newt.com>
6501 * mh-utils.el (mh-msg-number-regexp): Renamed to
6502 mh-scan-msg-number-regexp.
6503 (mh-msg-search-regexp): Renamed to mh-scan-msg-search-regexp.
6505 * Corrected typos, quoted variables in doc strings, and made minor
6506 wording changes in docs.
6508 2001-12-13 Peter S Galbraith <psg@debian.org>
6510 * mh-xemacs-compat.el: defalias 'match-string-no-properties to
6511 'match-string for XEmacs. I've seen a better function for this
6512 that actually removes text properties, but this will do for now.
6514 * mh-utils.el (mh-decode-quoted-printable): deactivate-mark not
6517 * mh-xemacs-compat.el: GNU Emacs Functions needed by XEmacs.
6519 * mh-e.el: (require 'mh-xemacs-compat) when running XEmacs.
6521 2001-12-12 Peter S Galbraith <psg@debian.org>
6523 * mh-comp.el (mh-send-letter): function local-variable-p needs two
6524 arguments in XEmacs.
6525 (mh-send-letter): sendmail-coding-system not bound in XEmacs.
6526 (mh-send-letter): default-buffer-file-coding-system not bound in
6529 * mh-e.el (mh-delete-msg, mh-refile-msg, mh-undo):
6530 transient-mark-mode not bound in XEmacs. The feature of
6531 operations made on all messages in the selected range when
6532 transient-mark-mode is on doesn't work in XEmacs.
6534 * mh-e.el, mh-utils: Conditionalize calls to
6535 'add-to-list 'facemenu-unlisted-faces for XEmacs.
6537 2001-12-11 Jeffrey C Honig <jch@honig.net>
6539 * mh-e.el (mh-scan-format): Add `mh-scan-format-file' variable to
6540 specify the scan format string or file to use. Define formats for
6541 MH and nmh that are compatible with the standard format, but
6542 provide hints for font-lock. Define (mh-scan-format) for use by
6543 (mh-regenerate-headers) and (mh-get-new-mail) to specify the args
6544 necessary to inform the scan program which scan format string or
6547 2001-12-07 Peter S Galbraith <psg@debian.org>
6549 * mh-e.el (scan.font-lock): New format file documented in comments.
6550 (mh-scan.font-lock-regexp): Adapted to new format.
6551 (mh-folder-font-lock-keywords): Use new format.
6553 * mh-e.el (page-down.xpm): Icon renamed from nextpage.
6555 * mh-utils.el (mh-decode-quoted-printable): Bug fix. Better check
6556 on what actually is a quoted-printable attachment.
6558 2001-12-06 Eric Ding <ericding@alum.mit.edu>
6560 * mh-mime.el (mh-mhn-compose-insertion, mh-mhn-compose-anon-ftp):
6561 require mailcap.el here rather than using autoload at top of
6563 (mh-file-mime-type): get rid of unused variables (why were they
6564 there to begin with?)
6566 2001-12-06 Peter S Galbraith <psg@debian.org>
6568 * mh-e.el (mh-cur-msg-number-regexp, mh-cur-msg-line-regexp):
6569 mh-cur-scan-msg-regexp splits into these two variables.
6570 The whole-line fontification is disabled, but easily restored by a
6571 user (although it could be a defcustom with choices DISABLED or
6572 the correct regexp?)
6573 (mh-folder-cur-msg-line-face): mh-folder-current-msg-face renamed
6575 (mh-folder-cur-msg-number-face): mh-folder-current-face renamed to
6578 * cabinet.xpm: Revert to rescan icon name.
6579 * mh-e.el (mh-folder-tool-bar-map): s/cabinet/rescan/
6581 * mh-e.el (mh-folder-font-lock-keywords): Reorder and tweak such
6582 that current message line highlight doesn't mess up other highlights.
6584 2001-12-05 Eric Ding <ericding@alum.mit.edu>
6586 * mh-utils.el (mh-show-from-face): Change mh-show-from-face to
6587 cyan on dark backgrounds; through a series of changes, it had
6588 become the same color as mh-show-subject-face!
6590 2001-12-05 Bill Wohler <Bill.Wohler@openwave.com>
6592 * mh-e.el, mh-utils.el: Fixed typos in face definitions, and made
6593 a couple of small doc string tweaks while I was in there. Peter,
6594 if you don't agree, let me know and I'll back them out. I thought
6595 the "mh-e" in the text was redundant since the variables start
6596 with "mh"; I was also thinking ahead to how the documentation may
6599 2001-12-05 Peter S Galbraith <psg@debian.org>
6601 * mh-e.el (mh-cur-scan-msg-regexp): Match 0 is the whole line.
6602 (mh-folder-current-msg-face): New face with only a background
6603 settings, used in font-lock for the current message.
6604 (mh-folder-font-lock-keywords): Use mh-folder-current-msg-face for
6605 mh-cur-scan-msg-regexp.
6607 * mh-utils.el (mh-show-from-face): Use red3 instead of red for
6608 light backgrounds. It's not as bright on the eyes.
6609 (mh-show-subject-face): copy from mh-folder-subject-face instead.
6610 Makes the look consistent with folder-mode.
6612 * mh-e.el (mh-folder-subject-face): Moved to mh-utils since we
6613 need it to copy to mh-show-subject-face.
6615 2001-12-05 Bill Wohler <wohler@newt.com>
6617 * mh-e.el (mh-folder-mode-map): Moved `mh-extract-rejected-mail'
6618 from "a" to "E". Better mnemonic, nicer to folks used to using a
6621 2001-12-04 Bill Wohler <wohler@newt.com>
6623 * mh-e.el (mh-folder-map): Added "S" for `mh-sort-folder'.
6625 2001-12-04 Peter S Galbraith <psg@debian.org>
6627 * mh-e.el (mh-folder-subject-face et al.): Yet another attempt at
6628 colours for folder-mode. Still themed, but fewer and darker
6629 colours (Blame Eric this time!). I'll get to underlining tomorrow
6632 * mh-e.el (mh-folder-tool-bar-map): Renamed all icons so they
6633 don't have the word mail in them. Also generated a pbm format of
6634 each icon for users without XPM support conpiled into Emacs.
6636 2001-12-04 Eric Ding <ericding@alum.mit.edu>
6638 * mh-utils.el (mh-show-font-lock-keywords): Use
6639 mh-header-subject-font-lock instead of regexp for subject headers,
6640 which may go multiple lines.
6641 (mh-header-subject-font-lock): New function.
6642 Fix typos (hightlight -> highlight).
6644 2001-12-04 Eric Ding <ericding@alum.mit.edu>
6646 * mh-e.el: changes to face colors on dark backgrounds.
6647 (mh-folder-followup-face): change to LightGoldenRod.
6648 (mh-folder-date-face): change to snow3.
6649 (mh-folder-msg-number-face): change to snow4.
6651 2001-12-04 Bill Wohler <wohler@newt.com>
6653 * Released mh-e version 5.0.92.
6655 * mh-utils.el (gnus-cite-face-list)
6656 (mh-gnus-article-highlight-citation): Don't autoload. Revert to
6657 requiring in `mh-gnus-article-highlight-citation' as before. With
6658 the autoloads, if you ran mh-e before gnus, you'd get an undefined
6659 gnus variable when viewing an article in gnus. Go figure.
6661 2001-12-03 Bill Wohler <wohler@newt.com>
6663 * Released mh-e version 5.0.91.
6665 * MH-E-NEWS: Removed info about bumping up `max-specpdl-size' now
6666 that workaround has been implemented.
6668 * Makefile (MH-E-OBJ): New variable to hold .elc files.
6669 (all): Just compile.
6670 (clean): New target that blows away MH-E-OBJ.
6671 (dist): Added $(MH-E-OBJ) to tarball.
6674 Attempt to quiet compilation errors to a dull roar.
6676 * mh-e.el: Require easymenu, added autoload of info.
6677 (mh-smail, mh-smail-other-window): Comment says these were needed
6680 * mh-utils.el: Don't require sendmail, but require mh-e.
6681 Moved autoloads to top of file, and autoload gnus-cite and
6684 * mh-pick.el: Require easymenu. Remove cond on
6685 `easy-menu-define'--it exists.
6687 * mh-mime.el: Autoload mailcap.
6689 * mh-comp.el: Require mh-e and easymenu, moved autoloads to top of
6693 * Makefile: (EMACS): New constant to hold emacs calling sequence.
6694 (install): Renamed to install-emacs.
6695 (compile): New target to compile all files.
6696 (dist): Make dependent on compile.
6697 (import): Renamed to import-emacs.
6698 (%.elc): New implicit rule to compile elisp files.
6700 * mh-e.el (mh-thread-map): Added "Td" for
6701 mh-delete-subject-thread.
6703 2001-12-03 Peter S Galbraith <psg@debian.org>
6705 * mh-e.el (mh-folder-tool-bar-map): Change tooltip for exec icon.
6707 * mh-e.el (mh-folder-subject-face): Change to IndianRed1.
6708 (mh-folder-followup-face): Change to IndianRed.
6709 (mh-folder-deleted-face): Use sedate face instead of bright one.
6711 2001-12-03 Bill Wohler <wohler@newt.com>
6713 * mh-utils.el (mh-invisible-headers): Increase size of
6714 `max-specpdl-size' locally to work around insufficient default.
6715 (mh-invisible-headers): Added X-Info and X-VSMLoop (NTMail).
6717 2001-12-03 Jeffrey C Honig <jch@honig.net>
6719 * mh-utils.el (mh-find-progs): Searches should not stop if the
6720 strings are not found, there is error detection at the end of the
6721 routine (closes SF #488231).
6723 2001-12-02 Bill Wohler <wohler@newt.com>
6725 * MH-E-NEWS: Added info about bumping up `max-specpdl-size'.
6727 * Makefile (MH-E-IMG): New variable that contains images used by
6728 mh-e. Add these files to release.
6730 * MH-E-NEWS: Second draft of mh-e 6.0 (was 5.1) release notes.
6732 * mh-e.el (mh-folder-updated-hook): Reworded to avoid ambiguity.
6733 Is the hook called when you type `d' or when you type `x'?
6734 (mh-unseen-updated-hook): Reworded to be consistent with
6735 `mh-folder-updated-hook.'
6737 * mh-utils.el (mh-recenter): Accepted Gerd's change which is
6738 evaluated at compile time.
6740 2001-12-02 Bill Wohler <wohler@newt.com>
6742 * mh-e.el Major, major keymap changes. The specific changes are
6743 listed below, but view the sources, or use "C-h m" in MH Folder
6744 mode for the complete list.
6746 Use of sub-keymaps inspired by gnus. The changes tripped me up at
6747 first too, but after about 5 minutes of shock (which is to be
6748 expected, I've been using the old keybindings for 16 years), I
6749 honestly found the new bindings to be nice indeed. It will also
6750 provide flexibility to allow for future functionality. I hate to
6751 do this on the eve of the beta release, but you asked for it! It's
6752 likely I'll have to pull an Eric and back this change out, but if
6753 we can live with pink subjects, this can't be so bad ;-).
6754 Question: will the users revolt? If they do, I suppose we can
6755 release 6.0.1 the next day ;-).
6756 (mh-folder-map, mh-sequence-map, mh-extract-map, mh-digest-map):
6757 New keymaps which start with F, S, X, and D, respectively. The
6758 mhstore commands can go in the mh-extract-map eventually.
6759 (mh-thread-map): Renamed from mh-folder-thread-map.
6761 Keymap changes and rationale. The sub-keymaps allowed some
6762 consistency (e.g., esp. with l(ist) and k(ill).
6764 e Deleted. Already have x. Now used by mh-edit-again.
6765 a Deleted. Already have r. Now used by mh-extract-rej..
6766 j Deleted. Already have g.
6768 M-a -> e Better mnemonic. Matches rmail. Frees movement cmd.
6769 M-e -> a Try `a'gain!
6771 M-f -> Fv Frees movement command
6772 M-f -> Ff Alias (keep?)
6773 M-f -> Fo Alias (keep?)
6774 M-k -> Fk No reason but to keep with folder commands
6775 M-l -> Fl No reason but to keep with folder commands
6776 M-p -> Fp No reason but to keep with folder commands
6777 M-r -> Fr Frees movement command
6778 M-s -> Fs No reason but to keep with folder commands
6779 M-u -> Fu No reason but to keep with folder commands
6781 M-% -> Sd Better mnemonic
6782 M-# -> Sk Better mnemonic
6783 M-q -> Sl Better mnemonic
6784 C-xn -> Sn Frees up standard key binding
6785 % -> Sp Better mnemonic for putting a message in a sequence
6786 ? -> Ss Shows sequences that message is in
6787 C-xw -> Sw Frees up standard key binding
6789 M-n -> Xs Better mnemonic (shar)
6790 M-n -> Xu Better mnemonic (uuencode)
6792 M-SPC -> DSPC Frees mark command
6793 M-\177 -> D\177 No reason but to keep with digest commands
6794 M-b -> Db Frees movement command
6796 2001-12-01 Bill Wohler <wohler@newt.com>
6798 * mh-e.el: Use gnus style of keymaps. Now requires gnus-util.
6799 (mh-folder-thread-map): New map, created by gnus-define-keys.
6800 Reached when typing T in mh-folder-mode-map. Moved threading
6801 functions to this new keymap so we can use dired again.
6802 (mh-folder-mode-map): Defined by gnus-define-keys. Otherwise than
6803 the new threading functions, no changes to the UI were made at
6804 this point--saving that for the next check-in.
6806 * mh-pick.el (mh-pick-mode-map): Use gnus-define-keys. Now
6809 * mh-comp.el (mh-letter-mode-map): Use gnus-define-keys. Now
6812 2001-12-01 Jeffrey C Honig <jch@honig.net>
6814 * mh-e.el: Update the documentation for the regexps used by
6815 `mh-folder-font-lock-keywords' to specify how many parethesized
6816 expressions they are expected to have and what those expressions
6817 are expected to match.
6819 2001-12-01 Bill Wohler <wohler@newt.com>
6821 * mh-e.el (mh-folder-mode): Removed iteration of key bindings,
6822 \\{mh-folder-mode-map} suffices. Removed variable documentation
6823 also as this is already out of date and a maintenance hassle.
6824 Reference new mh customization group instead.
6826 * mh-comp.el (mh-letter-mode): Ditto. Also added new information
6827 about MIME directives getting processed automatically if inserted
6830 * mh-pick.el (mh-pick-mode): Edited documentation so it reads like
6833 * mh-e.el (mh-compat-quit): Deleted obsolete and unused function.
6834 Comment in this function said that `b' shouldn't be used for
6835 burst-digest, as it is used for `back' in info, less, and rn. But
6836 what does `back' mean in MH Folder? I suppose if you visit a
6837 folder, you would go `back' to the original folder. Hmmm, I guess
6838 we'll leave the `b' binding alone for now.
6840 * mh-utils.el: Moved some of the variable comments to the first
6841 column so they wouldn't wrap in such an ugly fashion.
6842 (mh-showing-mode): Renamed variable and function from mh-showing
6843 to conform with minor mode conventions. Added optional arg to
6844 function so it would behave like a normal minor mode: no or nil
6845 arg toggles mode, 0 arg turns off, non-nil turns on. It also turns
6846 out that desktop-create-buffer would barf when recreating mh-e
6847 buffers because it was calling mh-show with an arg.
6848 (mh-show-mode): Use define-derived-mode to simplify definition a
6850 (mh-set-mode-name): Deprecated by use of define-derived-mode.
6853 * mh-pick.el (mh-pick-mode): Use define-derived-mode to simplify
6856 * mh-e.el (mh-scan-prog): Removed message about "Buffer local" as
6857 this message will appear in a future version of Emacs.
6858 (mh-inc-folder): mh-showing renamed to mh-show-mode and made a
6860 (mh-folder-mode): Use define-derived-mode to simplify definition a
6863 * import-emacs (release): Change `(none)' to `mainline' so import
6864 doesn't choke after running `cvs up -A' on Emacs.
6865 (COPYING): Moved from $EMACS_HOME/etc to $EMACS_HOME.
6866 (cvs update): Whoops! Forgot the second join (-jemacs).
6867 make import works fine again.
6869 2001-11-30 Peter S Galbraith <psg@debian.org>
6871 * mh-e.el (mh-folder-font-lock-keywords): Change order of
6872 font-lock patterns such that subject body text doesn't get date
6875 * mh-e.el (mh-scan-subject-regexp): Bug fix. Remove a dot.
6876 scan.font-lock users have to setq it separately.
6878 2001-11-30 Eric Ding <ericding@alum.mit.edu>
6880 * mh-utils.el (mh-clean-msg-header): Go back to using
6881 mh-delete-line. Using invisible text property is nicer in some
6882 ways, but winds up with somewhat mysterious behavior should user
6883 kill/yank stuff from the header (i.e., text gets yanked invisibly
6884 and won't be seen by user until file is reloaded).
6886 2001-11-29 Bill Wohler <wohler@newt.com>
6888 * mh-e.el (mh-page-msg): Use mh-next-direction to page in the
6891 2001-11-29 Jeffrey C Honig <jch@honig.net>
6893 * mh-e.el (mh-scan-folder): Fix logic to not attempt to go to
6894 the current message if there are no messages in the folder.
6896 2001-11-29 Peter S Galbraith <psg@debian.org>
6898 * mh-e.el (mh-folder-font-lock-subject): New fontifier function
6899 for subject lines in folder-mode
6900 (mh-scan-followup-regexp): Deleted obsolete regexp. Use
6901 mh-scan-subject-regexp instead.
6902 (mh-folder-font-lock-keywords): Use mh-folder-font-lock-subject
6903 instead of obsolete mh-scan-followup-regexp variable.
6904 (mh-folder-date-face, mh-folder-msg-number-face):
6905 (mh-folder-subject-face, mh-folder-followup-face):
6906 Now defined as proper faces instead of copied from font-lock
6909 * mh-mime.el (mh-media-type-regexp): New variable. Regexp matching
6910 valid media types used in MIME attachment compositions.
6911 (mh-file-mime-type): Use mh-media-type-regexp instead of
6912 hard-wiring its value.
6914 * mh-utils.el (mh-show-unquote-From): New function to unquote
6915 "^>From" in mh-show-mode (not saved to disk).
6916 (mh-show-mode): Call mh-show-unquote-From.
6918 2001-11-29 Eric Ding <ericding@alum.mit.edu>
6920 * mh-utils.el (mh-clean-msg-header): Use mh-make-line-invisible
6921 rather than mh-delete-line.
6922 (mh-make-line-invisible): New function to make line(s) invisible
6923 rather than deleting line(s). Optional argument specifies number
6925 (mh-show-msg): screen-height has been deprecated; use no more.
6926 (mh-notate): screen-width has been deprecated; use no more.
6928 2001-11-29 Jeffrey C Honig <jch@honig.net>
6930 * mh-utils.el: (mh-find-progs): Change mh-find-progs to rely on
6931 the existence of mhparam. The location of mhparam is used to find
6932 `mh-progs'. It uses the libdir and etcdir to find the
6933 `mh-lib-progs' and `mh-lib' directories. If etcdir doesn't return
6934 anything we assume `mh-lib-progs' is the same as `mh-lib' and that
6935 we are using MH instead of nmh.
6937 2001-11-29 Peter S Galbraith <psg@debian.org>
6939 * mh-e.el (mh-scan.font-lock-regexp): Change docs to reflect that
6940 second paren expression is the user match.
6941 (mh-folder-font-lock-keywords): Change from 1st to 2nd parenthesized
6942 expression to match user name, after Jeffrey's change to the regexps.
6944 2001-11-29 Bill Wohler <Bill.Wohler@openwave.com>
6946 * mh-utils.el (mh-clean-message-header): Default is now t.
6947 (mh-invisible-headers): Padded out to contain all the headers that
6948 the mh-e developers don't like to see (closes SF #415759).
6950 2001-11-28 Bill Wohler <Bill.Wohler@openwave.com>
6952 * mh-comp.el (mh-rejected-letter-start): Added MIME MDN. While
6953 this allows mh-extract-rejected-mail to strip the start of the
6954 MDN, there is still a closing MIME marker at the end. This should
6955 be cleaned up eventually.
6957 2001-11-28 Peter S Galbraith <psg@debian.org>
6959 * mh-e.el (mh-folder-seq-tool-bar-map): New tool-bar used for
6960 folder-mode when narrowed to sequence.
6961 * mh-seq.el (mh-narrow-to-seq): Set tool-bar to
6962 mh-folder-seq-tool-bar-map.
6963 (mh-widen): Set tool-bar to mh-folder-tool-bar-map.
6964 * widen.xpm: New icon used in mh-folder-seq-tool-bar-map.
6966 * mh-mime.el (mh-file-mime-type): Much better check on validity of
6969 * mh-e.el (mh-scan-subject-regexp): New regexp variable for
6970 subject string in folder mode. Used to extract subject sequence,
6971 and will be used for font-lock soon.
6972 * mh-seq.el (mh-subject-thread-to-sequence): More robust code by
6973 using mh-scan-subject-regexp, allows users with non-standard
6974 scan format to use subject sequences.
6976 * mh-comp.el (mh-letter-fill-column): Fill column to use in
6977 mh-letter-mode. (Yes, I'm doing this in spite of what Bill said;
6978 Someone can always undo it later)
6979 (mh-letter-mode): setq fill-column to mh-letter-fill-column.
6981 2001-11-28 Bill Wohler <wohler@newt.com>
6983 * mh-e.el (mh-page-msg): The first time the end of page is hit,
6984 set mh-page-to-next-msg-p to t. The second time the end of page is
6985 hit, go to the next message.
6987 * mh-utils.el: (mh-show-msg): Initialize mh-page-to-next-msg-p to
6990 2001-11-27 Bill Wohler <wohler@newt.com>
6992 * mh-mime.el (mh-mime-content-types): Updated list of types to
6993 contain types used by mh-e developers, but not including types not
6995 http://www.isi.edu/in-notes/iana/assignments/media-types/media-types.
6997 2001-11-27 Peter S Galbraith <psg@debian.org>
6999 * mh-seq.el (mh-subject-thread-to-sequence) New function placing
7000 all messages with similar subject line into a sequence named
7002 (mh-narrow-to-subject-thread): New command to narrow to all
7003 messages with similar subject line into a sequence named 'subject.
7004 (mh-toggle-subject-thread): New command to toggle between a new
7005 'subject sequence or the wide view of a folder.
7006 (mh-delete-subject-thread): New command to delete all following
7007 messages with similar subject lines (leaving preceeding ones
7009 (mh-next-unseen-subject-thread): New command to create and move to
7010 a new subject thread created from the next unseen message as a
7012 * mh-e.el (mh-folder-message-menu): New menu entries for subject
7014 (mh-folder-mode-map): New keybindings for subject threads.
7015 (mh-lessp): New function to sort messages.
7017 * mh-utils.el (mh-show-font-lock-keywords): and various
7018 faces... scoped within eval-after-load "font-lock" to avoid
7019 requiring font-lock to use its faces.
7020 * mh-e.el (mh-folder-font-lock-keywords): Same.
7022 2001-11-27 Jeffrey C Honig <jch@honig.net>
7024 * mh-mime.el (mh-file-mime-type): Use mh-temp-buffer instead of
7027 * mh-comp.el (mh-insert-x-mailer): Kill mh-temp-buffer after use.
7029 2001-11-26 Eric Ding <ericding@alum.mit.edu>
7031 * mh-utils.el: revert to using external mimedecode to decode
7032 MIME quoted-printable parts
7034 2001-11-26 Jeffrey C Honig <jch@honig.net>
7036 * mh-e.el (mh-process-commands): Added mh-folder-updated-hook.
7037 * mh-e.el (mh-update-unseen): Added mh-unseen-updated-hook.
7039 2001-11-26 Peter S Galbraith <psg@debian.org>
7041 * mh-mime.el (mh-file-mime-type): Make sure output from file
7042 command is known to mailcap file, otherwise prompt the user.
7043 (mh-mime-content-types): Add "image/png" type.
7045 * mh-e.el (mh-folder-font-lock-keywords): Use a bunch of new
7046 mh-folder-*-face faces.
7047 * mh-utils.el (mh-show-font-lock-keywords): Use a bunch of new
7048 mh-show-*-face faces.
7050 * mh-utils.el (mh-letter-header-font-lock): Bug fix. Fix infinite
7051 loop in emacs20 font-locking.
7052 (mh-header-field-font-lock): Preventive fix with similar change.
7054 * mh-comp.el (mh-reply-show-message-p): Typo. diplayed -> displayed.
7057 * mh-e.el (mh-folder-tool-bar-map): Bug fix. I had
7058 mh-repack-folder instead of mh-pack-folder.
7060 2001-11-26 Bill Wohler <wohler@phone.com>
7063 Updated header for consistency and to conform with (elisp)Library
7065 (mh-do-not-confirm): Updated documentation string to reflect
7066 reality (e.g., is no longer used by mh-kill-folder and is used by
7067 more functions than just mh-undo-folder).
7068 (mh-page-msg): Now shows the next undeleted message if looking at the
7069 bottom of the current message.
7070 (mh-process-or-undo-commands): Fixed indentation.
7073 (mh-mhn-compose-insertion, mh-mhn-compose-anon-ftp): If MIME type
7074 cannot be determined with file command, use mailcap-mime-types (if
7075 available) to provide list for completing read.
7077 * MH-E-NEWS: First draft of mh-e 5.1 release notes.
7079 2001-11-26 Eric Ding <ericding@alum.mit.edu>
7081 * mh-utils.el (mh-decode-quoted-printable): Implement
7082 quoted-printable decoding in elisp (starting with code copied
7084 (mh-decode-quoted-printable-region): Move (require 'hexl) outside
7086 (mh-decode-quoted-printable): give user a choice between using
7087 internal code or external program to decode quoted-printable
7088 content. Resurrect code that calls external mimedecode program.
7090 2001-11-25 Peter S Galbraith <psg@debian.org>
7092 * mh-utils.el (mh-highlight-citation-p): New variable to determine
7093 whether to hightlight citations in message body with gnus,
7094 font-lock or not at all.
7095 (mh-show-font-lock-keywords): removed citations from keywords.
7096 (mh-show-font-lock-keywords-with-cite): New variable, equivalent
7097 to prior mh-show-font-lock-keywords.
7098 (mh-gnus-article-highlight-citation): hook into gnus for
7099 multi-level citation highlighting.
7100 (mh-show-mode): Use either mh-show-font-lock-keywords or
7101 mh-show-font-lock-keywords-with-cite, depending on value of
7102 mh-highlight-citation-p, and possibly call
7103 mh-gnus-article-highlight-citation.
7104 * mh-comp.el (mh-letter-mode): Same as for mh-show-mode above.
7106 2001-11-25 Jeffrey C Honig <jch@honig.net>
7108 * mh-comp.el (mh-redistribute): Added mh-redist-background
7109 variable to cause mh-redistribute to run the redist command in the
7110 background. This causes the transaction log to be visible, like
7113 2001-11-25 Peter S Galbraith <psg@debian.org>
7115 * mh-e.el (mh-inc-folder): 'inc' finishes by displaying the first
7116 new message if already showing messages.
7118 2001-11-22 Peter S Galbraith <psg@debian.org>
7120 * mh-utils.el (mh-prompt-for-folder): Exit with error if no folder
7121 specified, otherwise mh-refile-msg may try to create a folder with
7122 empty name, and this creates problems; even mh-undo can't handle
7123 it (Closes SF #476824).
7125 * mh-comp.el (mh-letter-tool-bar-map): Info button needed to
7126 require 'info. Also tweaked help texts.
7127 (mh-letter-menu): Use headline capitalization (Closes SF #483203).
7128 * mh-e.el (mh-folder-tool-bar-map): Same as above.
7129 (mh-folder-folder-menu, mh-folder-message-menu):
7130 (mh-folder-sequence-menu): Same as above.
7131 * mh-pick.el (mh-pick-menu): Same as above.
7133 2001-11-21 Peter S Galbraith <psg@debian.org>
7135 * mh-comp.el (mh-reply-show-message-p): The setting of this
7136 variable determines whether the MH show-buffer is diplayed with
7137 the current message when using mh-reply without a prefix argument.
7138 Set it to nil if you already include the message automatically in
7139 your draft using "repl: -filter repl.filter" in your ~/.mh_profile
7141 (mh-reply): Don't show message in other window if
7142 mh-reply-show-message-p is nil.
7144 * mh-e.el (mh-folder-tool-bar-map): Add mail_exec.xpm icon for
7145 mh-execute-commands.
7147 * mh-utils.el (mh-show-mouse): New function to click on a message
7148 in folder-mode and show that message.
7149 * mh-e.el (mh-folder-mode-map): Bind mh-show-mouse to mouse-2.
7151 * mh-e.el (mh-page-msg): Show buffer first if not displayed,
7152 instead of simply complaining there's no other window.
7154 * mh-e.el (mh-folder-tool-bar-map): New tool-bar for folder mode!
7155 (mh-folder-mode): Setup tool-bar.
7157 * mh-mime.el (mh-have-file-command): try to non-fatally load
7158 executable.el because emacs20 doesn't autoload it.
7159 * mh-utils.el (load "executable" t t): Idem.
7161 * mh-utils.el (mh-clean-msg-header): Bug fix. locally bind
7162 after-change-functions to nil, working around a strange font-lock
7163 bug in emacs20 when (add-hook 'mh-show-mode-hook 'turn-on-font-lock)
7166 * mh-comp.el (require 'sendmail): Moved from mh-comp.el to
7167 mh-utils.el because it is needed in reading mail too.
7168 (mh-header-field-end, mh-in-header-p): Moved to mh-utils.el
7169 because they are needed by mh-show-mode's font-lock code.
7170 Unfortunately, this splits the field related code into two files.
7171 Perhaps it should all go into mh-utils?
7173 2001-11-20 Eric Ding <ericding@alum.mit.edu>
7175 * mh-utils.el (mh-show-from-face): Fix typo in defface
7177 2001-11-20 Bill Wohler <wohler@newt.com>
7179 * mh-utils.el (mh-mail-header-separator): Set to -------- as
7180 defined by MH (components, and replcomps files). This variable
7181 cannot be a regexp since it is used as an argument to insert and
7182 is passed through regexp-quote before being used. The previous
7183 value broke a lot of code, including mailcrypt.
7185 * mh-comp.el (mh-letter-mode, mh-send-letter): Insert X-Mailer
7186 header field from mh-send-letter.
7187 (mh-edit-again, mh-extract-rejected-mail): Call
7188 mh-insert-header-separator to ensure that there is a separator.
7189 Packages such as mailcrypt depend on it.
7190 (mh-insert-header-separator): New function to insert
7191 mh-mail-header-separator if it doesn't exist.
7193 2001-11-20 Peter S Galbraith <psg@debian.org>
7195 * mh-comp.el (mh-letter-mode): Make font-lock-defaults a local variable
7196 * mh-e.el (mh-folder-mode): Same.
7197 * mh-utils.el (mh-show-mode): Same.
7199 * mh-e.el (mh-scan-msg-num-regexp): Delete variable and replace
7200 with mh-good-msg-regexp.
7202 * mh-utils.el (mh-mail-header-separator): Bug fix. Moved from
7203 mh-comp.el to mh-utils.el (which mh-comp.el loads).
7205 * mh-comp.el (mh-in-header-p): Recycle sendmail.el code (as
7207 * mh-utils.el (mh-letter-header-font-lock): Use mh-in-header-p.
7209 * mh-comp.el (mh-letter-tool-bar-map): tool-bar customize button goes
7210 to customizing mh-compose group.
7212 * mh-utils.el (mh-show-mode): font-lock bug fix. Locally set
7213 font-lock-support-mode to nil.
7214 (mh-letter-header-font-lock, mh-header-field-font-lock): font-lock
7215 bug fix. Don't return match beyond font-lock search limit.
7217 * mh-comp.el (mh-letter-mode): Emacs20 bug fix. tool-bar-mode is
7218 not a bound variable.
7220 2001-11-19 Peter S Galbraith <psg@debian.org>
7222 * mh-comp.el (mh-letter-tool-bar-map): tool-bar help button goes
7223 to 'Draft Editing' info node.
7225 * mh-utils.el (mh-show-from-face, mh-show-to-face): New faces used
7227 (mh-header-to-font-lock, mh-header-cc-font-lock)
7228 (mh-header-field-font-lock): New helper function returning whole
7229 header field arguments to font-lock.
7230 (mh-show-font-lock-keywords): Heavily modified using the above.
7232 * mh-e.el (mh-scan-msg-num-regexp): Regexp matching the message
7233 number in scan lines.
7234 (mh-scan-date-regexp): Regexp matching a valid date in scan lines.
7235 (mh-scan-rcpt-addr-regexp): Regexp specifying the recipient in
7236 scan lines for messages we sent.
7237 (mh-scan-followup-regexp): Regexp matching a followup subject
7238 line, starting with Re:
7239 (mh-scan-body-regexp):
7240 Regexp matching the message body beginning displayed in scan lines.
7241 (mh-scan.font-lock-regexp): Regexp matching output of the the
7242 optional scan.font-lock format file.
7243 (mh-folder-font-lock-keywords): New font-lock for folder-mode that
7244 uses the above regexps.
7246 2001-11-19 chad <y@mit.edu>
7248 * mh-comp.el (mh-letter-tool-bar-map): made both references to
7249 mh-letter-tool-bar-map conditional on tool-bar-mode, instead of
7252 2001-11-19 Bill Wohler <wohler@newt.com>
7254 * mh-comp.el (mh-position-on-field): Move to the end of the header
7255 if the field is not present. This function was documented to do
7256 this, but wasn't doing so.
7257 (mh-insert-x-mailer): Simplified by using existing
7258 mh-goto-header-field and mh-insert-fields functions. Now that
7259 mh-insert-fields is used to insert X-Mailer header field, no
7260 longer need to include X-Mailer in mh-x-mailer-string.
7262 2001-11-18 Peter S Galbraith <psg@debian.org>
7264 * mh-comp.el (mh-letter-tool-bar-map): New version of
7265 mh-letter-mode tool-bar. Changed order of buttons; made customize
7266 and info buttons specific to mh-e.
7268 * mh-e.el (mh-folder-font-lock-keywords): New font-lock regexp
7269 uses variables mh-deleted-msg-regexp, mh-refiled-msg-regexp and
7270 mh-cur-scan-msg-regexp, so will better adapt to non-default scan
7271 formats. Also, lines marked for refiling are now fontified.
7273 2001-11-18 Bill Wohler <wohler@newt.com>
7275 * mh-utils.el (mh-show-mode): Added local variable
7276 mail-header-separator which is initialized to
7277 mh-mail-header-separator.
7279 * mh-comp.el (mh-mail-header-separator): Updated to include ^$.
7280 Needed when running mh-edit-again, since by then the separator is
7281 gone. Added documentation saying one should use
7282 mail-header-separator and initialize it from
7283 mh-mail-header-separator.
7284 (mh-forward): Initialize mail-header-separator since
7285 mh-letter-mode hasn't kicked in yet (which does initialize
7286 mail-header-separator).
7287 (mh-letter-mode): Initialize mail-header-separator from
7288 mh-mail-header-separator, not hard-coded string.
7290 * mh-comp.el (mh-insert-x-mailer-p): New variable to control
7291 whether X-Mailer string is inserted. Default: t.
7292 (mh-x-mailer-string): New variable that caches actual X-Mailer
7294 (mh-letter-mode): Call mh-insert-x-mailer if mh-insert-x-mailer-p
7296 (mh-insert-x-mailer): New function that inserts X-Mailer header
7299 2001-11-17 Peter S Galbraith <psg@debian.org>
7301 * mh-utils.el (mh-letter-header-font-lock): New function to return
7302 the entire mail header to font-lock for sedate font-locking.
7303 (mh-show-font-lock-keywords): Modified to fontify whole lines and use
7304 mh-letter-header-font-lock above to fontify whole header.
7306 2001-11-17 Bill Wohler <wohler@newt.com>
7308 * mh-comp.el (mail-header-separator): Added ^ and $ to make more
7310 (mh-forward, mh-letter-mode): Replaced hard-coded string with
7311 mail-header-separator.
7313 2001-11-16 Bill Wohler <wohler@newt.com>
7315 * mh-e.el (mh-e-RCS-id): Renamed to mh-version.
7316 (mh-version): The variable: Set to a number instead of Id since
7317 the Id didn't have the mh-e version number, and both Emacs and
7318 gnus do it this way too.
7319 (mh-version): The function: Fixed for nmh. Now displays mh-e
7320 version correctly. Cleaned up output and display mh-progs, etc.
7321 (Closes SF #405620.)
7323 2001-11-15 Peter S Galbraith <psg@debian.org>
7325 * mh-comp.el (mh-letter-tool-bar-map): New tool-bar support for
7326 mh-letter-mode in emacs21. Uses icons from gnus/message.el.
7327 * mh-comp.el (mh-letter-mode): Add buffer-local binding of
7328 tool-bar-map to mh-letter-tool-bar-map.
7330 2001-11-15 Peter S Galbraith <psg@debian.org>
7332 * mh-mime.el (mh-have-file-command): Add check for existence of
7333 executable-find command, which Jeffrey didn't exist in emacs-20.4.
7334 * mh-utils.el (mh-decode-quoted-printable-have-mimedecode): same
7336 * mh-mime.el (mh-file-mime-type): Bug Fix. Some versions of
7337 'file' output a string like "file: Using regular magic file..."
7338 to stderr, so discard stderr when using call-process with 'file'.
7340 2001-11-14 Peter S Galbraith <psg@debian.org>
7342 * mh-mime.el (mh-have-file-command): Check if 'file' command on
7343 system accepts arguments -i -b before accepting it for our use.
7345 2001-11-14 Peter S Galbraith <psg@debian.org>
7347 * mh-utils.el (mh-find-progs): Use expand-file-name instead of
7348 concatenating together strings into a path.
7350 2001-11-14 Peter S Galbraith <psg@debian.org>
7352 * mh-e.el (mh-folder-sequence-menu): Enable mh-widen in sequence
7353 menu only when mh-narrowed-to-seq is t.
7355 2001-11-14 Peter S Galbraith <psg@debian.org>
7357 * mh-mime.el (mh-have-file-command): Use 'executable-find' instead
7358 of more complicated and error-prone call-process to which command.
7359 * mh-utils.el (mh-decode-quoted-printable-have-mimedecode): Same
7362 2001-11-14 Jeffrey C Honig <jch@honig.net>
7364 * mh-e.el (mh-make-folder-mode-line): Bug fix. Properly deal with
7365 folders that do not have any lines in them. Print "no msgs"
7366 instead of "0 msgs". Do not try to print a range when there are
7368 * mh-e.el (mh-regenerate-headers): Bug fix. Catch and remove the
7369 "scan: band message list" message.
7371 2001-11-13 Jeffrey C Honig <jch@honig.net>
7373 * mh-utils.el (mh-find-progs): Bug fix. Add "mh/etc" to the
7374 subdirectories to search for "components". On BSD/OS, nmh is in
7375 "/usr/contrib/mh/*".
7377 2001-11-13 Peter S Galbraith <psg@debian.org>
7379 * mh-comp.el (mh-letter-mode): Bug fix. Load mh-mime before
7380 setting mh-mhn-compose-insert-p (when looking at a "forw: -mime"
7381 message containing a MIME composition) such that the variable is
7382 properly declared as buffer-local.
7384 2001-11-12 Bill Wohler <wohler@newt.com>
7386 * mh-funcs.el (mh-print-msg): mhl is in the mh-lib-progs
7387 directory, not mh-lib (closes SF #481128).
7389 2001-11-12 Peter S Galbraith <psg@debian.org>
7391 * mh-seq.el (mh-widen): Bug fix (closes SF #481036).
7392 In a sequence with pending deletes and refiles, running mh-widen
7393 would wipe out their notations, even though the sequences are still
7394 defined. Fixed by calling a new function,
7395 mh-notate-deleted-and-refiled. Also changed the coping of
7396 mh-goto-msg-num since it didn't work consistently.
7397 * mh-seq.el (mh-notate-deleted-and-refiled): New functions written
7398 to fix above mh-widen bug. It's a first cut, we may want to clear
7399 all notations first, and notate the current-message sequence and
7400 user sequences. Time will tell.
7402 2001-11-12 Peter S Galbraith <psg@debian.org>
7404 * mh-seq.el (mh-widen): Make it attempt to stay on the same
7405 message number (closes SF bug #480922).
7407 2001-11-11 Bill Wohler <wohler@newt.com>
7409 * import-emacs: New shell script to import Emacs changes to mh-e.
7411 * Makefile (import): New target to import Emacs changes.
7413 2001-11-09 Peter S Galbraith <psg@debian.org>
7415 * mh-mime.el (mh-file-mime-type): Bug fix. Change regexp to
7416 extract mime type from 'file -i' command output.
7418 2001-11-08 Peter S Galbraith <psg@debian.org>
7420 * mh-utils.el (mh-update-sequences-after-mh-show):
7421 New customizable variable telling whether to run
7422 mh-update-sequences in mh-show-mode. Default is t.
7423 * mh-utils.el (mh-show-msg): Run mh-update-sequences when
7424 mh-update-sequences-after-mh-show is set.
7426 2001-11-08 Peter S Galbraith <psg@debian.org>
7428 * mh-utils.el (mh-decode-quoted-printable-have-mimedecode):
7429 New variable telling whether command 'mimedecode' is on system.
7430 (http://www.freesoft.org/CIE/FAQ/mimedeco.c)
7431 * mh-utils.el (mh-decode-quoted-printable):
7432 New customizable variable telling whether to run mimedecode on
7433 MIME message containing quoted-printable parts. mimedecode will
7434 only alter quoted-printable parts , leaving others intact, and the
7435 resulting message is still fully MIME.
7436 * mh-utils.el (mh-decode-quoted-printable): New function to run
7437 mimedecode on the current buffer.
7438 * mh-utils.el (mh-display-msg): Conditionnaly call
7439 mh-decode-quoted-printable function if mh-decode-quoted-printable
7440 variable is set, to view messages containing quoted-printable
7441 characters into 8-bit.
7443 2001-11-08 Peter S Galbraith <psg@debian.org>
7445 * mh-comp.el (mh-letter-mode): Set mh-mhn-compose-insert-p if
7446 looking at a "forw: -mime" message containing a MIME composition.
7447 * mh-mime.el (mh-file-mime-type): Bug fix. Failed on files like
7448 "~/.mh_profile" because of shell construct. Wrapped filename with
7450 * mh-comp.el (mh-letter-mode-map): C-cC-o keybinding in
7451 mh-letter-mode-map for mh-open-line.
7453 2001-11-07 Peter S Galbraith <psg@debian.org>
7455 * mh-comp.el (mh-open-line): New user function to split open a line
7456 when editing a reply with included text.
7457 * mh-comp.el (mh-current-fill-prefix): New function used by
7458 mh-open-line to get the fill-prefix on the current line.
7459 * mh-comp.el: Add mh-open-line to mh-letter-mode menubar.
7461 2001-11-06 Peter S Galbraith <psg@debian.org>
7463 * mh-seq.el (mh-region-to-sequence): New function, creating a
7464 sequence named 'region containing the message list in the selected
7466 * mh-e.el (mh-delete-msg): Mark messages in region for deletion if
7467 mark is active and in transient-mark-mode.
7468 * mh-e.el (mh-refile-msg): Mark messages in region for refiling if
7469 mark is active and in transient-mark-mode.
7470 * mh-e.el (mh-undo): Undo message marks for refile or deletion if
7471 region if mark is active and in transient-mark-mode.
7473 2001-11-06 Peter S Galbraith <psg@debian.org>
7475 * mh-comp.el (mh-letter-mode): Use sendmail.el's fill-paragraph.
7476 Copy its settings for paragraph-start, paragraph-separate,
7477 fill-paragraph-function, adaptive-fill-regexp and
7478 adaptive-fill-first-line-regexp. This make M-q (fill-paragraph)
7481 2001-11-05 Peter S Galbraith <psg@debian.org>
7483 * mh-funcs.el (mh-kill-folder): Remove mh-do-not-confirm condition
7484 and always prompt the user for such a drastic step. Also change
7485 the prompt a bit to clarify it.
7487 2001-11-04 Peter S Galbraith <psg@debian.org>
7489 * mh-mime.el (mh-mhn-compose-insert-p): New buffer-local variable
7490 to tell when a MIME insertion was done in a letter.
7491 * mh-mime.el (mh-mhn-compose-type): Set mh-mhn-compose-insert-p.
7492 * mh-mime.el (mh-mhn-compose-external-type):
7493 Set mh-mhn-compose-insert-p.
7494 * mh-mime.el (mh-mhn-compose-forw): Set mh-mhn-compose-insert-p.
7495 * mh-mime.el (mh-edit-mhn): Clear mh-mhn-compose-insert-p.
7496 * mh-comp.el (mh-send-letter): Run mh-edit-mhn when
7497 mh-mhn-compose-insert-p is set.
7499 2001-11-03 Peter S Galbraith <psg@debian.org>
7501 * mh-mime.el (mh-have-file-command): new function testing whether
7502 file command is on the system.
7503 * mh-mime.el (mh-file-mime-type): new function returning MIME type
7505 * mh-mime.el (mh-mhn-compose-insertion): Make use of
7506 mh-file-mime-type function instead of prompting.
7508 2001-10-30 Peter S Galbraith <psg@debian.org>
7510 * mh-utils.el (mh-show-use-goto-addr): defcustom this new
7511 variable, determining whether to call goto-addr in mh-show-mode.
7512 * mh-utils.el (mh-show-mode): Call goto-address when
7513 mh-show-use-goto-addr is t.
7515 2001-10-25 Peter S Galbraith <psg@debian.org>
7517 * mh-utils.el (mh-recenter): Clarify docs and change '(t) to
7518 (list 4) to match elisp doc on what C-u prefix argument actually is.
7520 2001-10-23 Peter S Galbraith <psg@debian.org>
7522 * mh-utils.el (mh-summary-height): In my quest to make mh-e more
7523 useful out-of-the-box for new users, set mh-summary-height to a
7524 minimum of 4 and a maximum of 10 depending on frame height. I
7525 typically have 70 lines in my Emacs frame, so having a default of
7526 4 was silly for my case.
7527 * mh-e.el (mh-update-sequences): Check for nil value of
7528 mh-current-folder, which happens if mh-summary-height < 4
7529 although I haven't tracked doen why that happens.
7531 2001-10-22 Peter S Galbraith <psg@debian.org>
7533 * mh-comp.el (mh-insert-fields): Test for nil value when inserting
7536 2001-10-20 Peter S Galbraith <psg@debian.org>
7538 * mh-comp.el (mh-user-agent-compose): Merged-in from XEmacs-21.4 source
7539 * mh-comp.el (mh-letter-mode): Add easy-menu-add statement for XEmacs21
7540 * mh-pick.el (mh-pick-mode): Add easy-menu-add statement for XEmacs21.
7541 * mh-e.el (mh-folder-mode): Add easy-menu-add statements for XEmacs21.
7542 * mh-utils.el: defalias 'screen-height to 'frame-height for XEmacs21.
7544 2001-10-19 Peter S Galbraith <psg@debian.org>
7546 * mh-mime.el (mh-edit-mhn): Use mhbuild in nmh context.
7547 * mh-utils.el (mh-find-progs): The variable mh-nmh-p (t when nmh
7548 is in use rather than MH) was set assuming that the string "nmh"
7549 will be in mh-lib-progs or mh-lib. This failed on Debian systems.
7550 Better to check for the existence of mhbuild in directory mh-progs.
7551 (closes SF bug #441776)
7553 2001-10-18 Peter S Galbraith <psg@debian.org>
7555 * mh-e.el: Add menubar entry from contrib/mh-menubar.el
7556 * mh-comp.el: Add menubar entry from contrib/mh-menubar.el
7557 * mh-pick.el: Add menubar entry from contrib/mh-menubar.el
7559 2001-07-30 Peter S Galbraith <psg@debian.org>
7561 * mh-e.el: Change font-lock patterns for folders.
7562 Fontify scan.font-lock patterns (which will be documented)
7563 and fontify subject lines prefixed with "Re:" differently.
7564 * mh-comp.el (mh-letter-mode): Add font-lock support as in
7567 2001-04-14 chad brown <y@mit.edu>
7569 * rearrange the font-lock keywords a bit
7571 2001-04-12 chad brown <y@mit.edu>
7573 * preliminary (somewhat boring) font-lock support for mh-e. More
7574 interesting font-lock support probably wants to have better
7575 support for multiple format files
7577 2001-02-24 chad brown <y@mit.edu>
7579 * add default nmh paths to mh-find-prog in mh-utils.el.
7580 change to mh-kill-folder in mh-funcs.el to make it more general.
7582 2001-02-19 Bill Wohler <wohler@newt.com>
7584 * Makefile (EMACS): Renamed to EMACS_HOME. Also, don't define if
7585 EMACS_HOME already exists to give developer a chance to set
7586 environment variable.
7587 (install): $MH-E-SRC is copied to $(EMACS_HOME)/lisp/mail, not
7589 (dist): Leave release in current directory.
7592 Copyright (C) 2003 Free Software Foundation, Inc.
7594 Copying and distribution of this file, with or without modification,
7595 are permitted in any medium without royalty provided the copyright
7596 notice and this notice are preserved.
7598 ;;; arch-tag: 87324964-69b6-4925-a3c2-9c1df53d7d51