1 2004-09-07 Stefan <monnier@iro.umontreal.ca>
3 * mh-inc.el (mh-inc-spool-list): Correctly declare the external var.
5 2004-08-21 Bill Wohler <wohler@newt.com>
7 * Released MH-E version 7.82.
9 * MH-E-NEWS, README: Updated for release 7.82.
11 * mh-e.el (Version, mh-version): Update for release 7.82.
13 2004-08-24 Bill Wohler <wohler@newt.com>
15 * mh-init.el (mh-variant-set): Change MH to mh as that's what is
16 emitted by `mh-variant-mh-info' (closes SF #1014781).
17 (mh-variant-p): Add mu-mh to docstring.
19 2004-08-23 Satyaki Das <satyaki@theforce.stanford.edu>
21 * mh-acros.el (mh-require-cl): Remove unneeded autoloads.
22 (require): Add an advice to the function so that at compile time
23 the uncompiled file is loaded. This avoids compilation problems
24 when built in the Emacs tree.
26 * mh-mime.el (mh-identity-pgg-default-user-id): Defvar the
27 variable, to avoid compiler warnings.
29 * mh-e.el (mh-seq): Load mh-seq since functions defined there are
30 used here. Without this, the state mh-seq.elc would be loaded.
32 * mh-customize.el (mh-init, mh-identity): Load mh-init and
33 mh-identity at compile time manually, before the corresponding
34 stale elc files get autoloaded.
36 2004-08-21 Bill Wohler <wohler@newt.com>
38 * mh-e.el (Version, mh-version): Add +cvs to release number.
40 2004-08-21 Bill Wohler <wohler@newt.com>
42 * Released MH-E version 7.81.
44 * MH-E-NEWS, README: Updated for release 7.81.
46 * mh-e.el (Version, mh-version): Update for release 7.81.
48 2004-08-21 Bill Wohler <wohler@newt.com>
50 * release-utils (variable_changes): Check for checked-out
51 directory before proceeding. Remove temporary files.
52 Rename --variable-update flag to --variable-changes.
54 2004-08-16 Mark D. Baushke <mdb@gnu.org>
56 * mh-mime.el (mh-toggle-mh-decode-mime-flag: New function.
57 * mh-e.el (mh-help-messages): Add [;] help string for it.
58 (mh-folder-mode-map): Add ";" key binding for it.
60 2004-08-15 Satyaki Das <satyaki@theforce.stanford.edu>
62 * mh-acros.el (mh-defstruct): Distinguishing structures created
63 by mh-defstruct just based on the number of fields is not
64 sufficient, since both the mh-thread-message and
65 mh-thread-container structures have the same length.
67 2004-08-15 Mark D. Baushke <mdb@gnu.org>
69 * mh-customize.el (mh-identity-handlers): Use ":default" instead of
70 "default" to avoid problems with "Default:" as a user defined field.
71 * mh-identity.el (mh-identity-field-handler): Ditto.
73 2004-08-15 Bill Wohler <wohler@newt.com>
75 * mh-e.el (Version, mh-version): Added +cvs to release number.
77 2004-08-15 Bill Wohler <wohler@newt.com>
79 * Released MH-E version 7.4.80.
81 * MH-E-NEWS, README: Updated for release 7.4.80.
83 * mh-e.el (Version, mh-version): Updated for release 7.4.80.
85 2004-08-15 Bill Wohler <wohler@newt.com>
87 * mh-funcs.el, mh-gnus.el, mh-inc.el, mh-init.el, mh-junk.el,
88 mh-pick.el, mh-print.el, mh-xemacs.el: Added 2004 to Copyright.
90 * mh-acros.el, mh-alias.el: Checkdoc fixes.
92 2004-08-12 Satyaki Das <satyaki@theforce.stanford.edu>
94 * mh-acros.el (cl): Load cl in this file. That is all right, since
95 this file is only used at compile time, and so cl doesn't get
96 loaded at run time. This avoids problems with stale *.elc files
97 present in the Emacs source tree during compilation.
98 (mh-defstruct): Modify it to make it more CL like and in the
99 process simplify it a bit. This makes the argument list of the
100 constructor compatible with the previous version, thereby avoiding
101 a compilation error when an old version of mh-seq.elc is present.
103 * mh-seq.el (mh-thread-id-container, mh-thread-get-message)
104 (mh-thread-get-message-container): Revert back to the CL style
105 of using keyword arguments, since the mh-defstruct now produces
106 code compatible to such usage.
108 2004-08-11 Satyaki Das <satyaki@theforce.stanford.edu>
110 * mh-acros.el (mh-defstruct, mh-require-cl): Checkdoc fixes.
112 * mh-utils.el (message-tokenize-header, message-fetch-field): Add
114 (mh-folder-completing-read): Make the folder completion look
115 better with CVS Emacs.
117 * mh-init.el (mh-variant-set): Remove dead code.
119 2004-08-11 Bill Wohler <wohler@newt.com>
121 * *.el: Use the following at the top of each file which seems to
122 do a good job of suppressing compilation warnings in 21.3 and CVS
123 Emacs (21.4). This replaces (require 'cl) or (require
124 'utils) (mh-require-cl) calls:
126 (eval-when-compile (require 'mh-acros))
129 2004-08-10 Bill Wohler <wohler@newt.com>
131 * release-utils (DESCRIPTION): Added one.
132 (FILES, SEE ALSO, VERSION): Deleted empty and incorrect sections.
134 * mh-e.el (mh-colors-available-p): Call x-display-color-cells with
135 mh-funcall-if-exists since it no longer seems to be defined in
138 2004-08-10 Satyaki Das <satyaki@theforce.stanford.edu>
140 * mh-speed.el (mh-process-kill-without-query, mh-speed-flists):
141 Avoid a compiler warning in versions of Emacs where
142 process-kill-without-query is a deprecated function.
144 * mh-seq.el (mh-thread-message, mh-thread-container): Use
145 mh-defstruct instead of defstruct.
146 (mh-thread-id-container, mh-thread-get-message-container)
147 (mh-thread-get-message): Use the slightly different structure
148 constructor function.
150 * mh-acros.el (mh-defstruct): New macro which is a partial
151 replacement of the defstruct in CL.
152 (no-byte-compile): Don't compile the file since it isn't loaded at
153 run time, so efficiency isn't an issue.
155 * mh-utils.el (mh-buffer-data): Use mh-defstruct instead of
158 2004-08-09 Satyaki Das <satyaki@theforce.stanford.edu>
160 * mh-funcs.el, mh-junk.el, mh-print.el: Use mh-require-cl to avoid
161 compilation warnings in Emacs-21.3.
163 * mh-acros.el (mh-require-cl): Add autoloads of CL functions used.
165 2004-08-09 Bill Wohler <wohler@newt.com>
167 * mh-customize.el (mh-show-use-xface-flag): Mention that `fetch' and
168 `curl' are supported as well.
170 2004-08-08 Bill Wohler <wohler@newt.com>
172 * mh-xemacs.el (mh-xemacs-has-toolbar-flag): Checkdoc fixes.
174 * mh-mime.el (mh-display-with-external-viewer): Checkdoc fixes.
176 * mh-identity.el: (mh-identity-attribution-verb-end): Stripped
177 trailing space; checkdoc fixes.
179 * mh-e.el (mh-restore-desktop-buffer): Checkdoc fixes.
181 * mh-customize.el: (mh-inc-spool-list,
182 mh-compose-forward-as-mime-flag, defcustom): Stripped trailing
183 space; checkdoc fixes.
185 * mh-comp.el (mh-reply): Stripped trailing space.
187 * mh-unit.el (mh-unit-files): Added mh-acros.el and mh-gnus.el.
188 (mh-unit): Don't lm-verify pre-21.4. Save buffers before killing
189 since we might have done some editing.
191 * import-emacs: Deleted. Functionality subsumed by release-utils.
193 * release-utils: New script. Performs import-emacs functionality
194 and displays new and deleted options.
196 * Makefile (import-emacs): Call release-utils instead of
199 * mh-funcs.el (mh-undo-folder): Removed deprecated `ignore'
202 * mh-e.el (mh-scan-date-regexp): Deleted as Peter claims it is
204 (mh-folder-font-lock-keywords): Removed reference to deleted
205 variable `mh-scan-date-regexp'.
207 * mh-customize.el (mh-auto-fields-prompt-flag): Made reference to
208 `mh-auto-fileds-lists'.
209 (mh-forward-hook): Fixed docstring typo.
211 2004-08-07 Bill Wohler <wohler@newt.com>
213 * mh-acros.el: New file. Currently holds macros needed by
214 mh-customize.el but is planned to hold all macros to avoid
215 dependency problems when compiling.
217 * mh-utils.el (mh-xemacs-flag): Defined in mh-customize.el now.
218 (mh-require-cl, mh-do-in-gnu-emacs, mh-do-in-xemacs)
219 (mh-funcall-if-exists, mh-make-local-hook, mh-mark-active-p):
220 Moved to new file mh-acros.el.
222 * mh-customize.el: Require mh-acros and cl only when compiling and
223 mh-loaddefs at runtime instead of mh-utils.
224 (mh-xemacs-flag): Define it here instead of mh-utils.el.
226 * Makefile (MH-E-SRC): Added mh-acros.el.
228 * mh-gnus.el (default-enable-multibyte-characters): Don't define
229 any more. It doesn't seem to be needed.
231 * mh-customize.el (mh-junk-background): New variable. If on, spam
232 programs are run in background. Running in foreground can be slow.
233 Defaults to nil to spare machines with little memory.
235 * mh-junk.el (mh-spamassassin-blacklist, mh-bogofilter-blacklist)
236 (mh-bogofilter-whitelist, mh-spamprobe-blacklist)
237 (mh-spamprobe-whitelist): Use new option mh-junk-background.
239 2004-07-25 Satyaki Das <satyaki@theforce.stanford.edu>
241 * mh-utils.el (mh-folder-completing-read): In recent CVS Emacs,
242 the first letter of the possible choices in the completion buffer
243 is highlighted. The change is needed for this feature to work
244 during folder name completion. This is not entirely sufficient,
245 since the leading "+" in folder names is still mishandled. A patch
246 is required in Emacs itself to address that.
248 2004-07-22 Mark D. Baushke <mdb@gnu.org>
250 * mh-e.el (recursive-load-depth-limit): Move
251 recursive-load-depth-limit code to ...
252 * mh-utils.el (recursive-load-depth-limit): ... here to avoid
253 problems compiling mh-utils.el and mh-alias.el with gnus-5.10.6
254 under emacs-21.1. Use eval-and-compile instead of eval-when.
256 2004-07-20 Bill Wohler <wohler@newt.com>
258 * mh-customize.el (mh-invisible-header-fields-internal): Added
259 header fields emitted by T-Mobile picture phones (X-Mms-*, and
260 commented out X-Operator field saying it's like X-Mailer).
262 2004-07-12 Bill Wohler <wohler@newt.com>
264 * mh-gnus.el: Set local variables indent-tabs-mode and
265 sentence-end-double-space to nil.
267 * mh-customize.el: Checkpoint from option docstring updates and
268 manual synchronization from last summer. For the options listed
269 below, docstring was usually completely rewritten. Use "on"
270 instead of "t" in docstring to match what is seen in customization
271 buffer. Use headline capitalization. Standardize on "Auto-detect"
272 text when option has that capibility.
273 (mh): Since we work on more than one type of Emacs, use Emacs
274 instead of GNU Emacs. Prefer GNU mailutils over GNU Mailutils.
275 (mh-variant): s/Autodetect at startup/Auto-detect/.
276 (mh-alias-insertion-location): s/Sorted
277 alphabetically/Alphabetical/. s/At the top of file/Top/. s/At the
278 bottom of file/Bottom/.
279 (mh-alias-local-users-prefix): s/Use login instead of real
281 (mh-identity-list): Sorted values by fields, attribution,
283 (mh-auto-fields-list): Missing quote.
284 (mh-compose-insertion): s/Use Gnus/Gnus/. s/Use mhn/mhn/.
285 (mh-compose-space-does-completion-flag): s/SPACE/<SPC>/.
286 (mh-extract-from-attribution-verb): Since we have French, added
288 (mh-letter-complete-function): Mention default in docstring.
289 (mh-invisible-header-fields-internal): Added X-ELNK-Trace from
291 (mh-alias-flash-on-comma, mh-alias-insert-file)
292 (mh-alias-passwd-gecos-comma-separator-flag)
293 (mh-recenter-summary-flag, mh-default-folder-for-message-function)
294 (mh-default-folder-must-exist-flag, mh-index-program)
295 (mh-index-ticked-messages-folders, mh-ins-buf-prefix)
296 (mh-delete-yanked-msg-window-flag, mh-identity-default): See
299 * mh-init.el (mh-variant-set, mh-sys-path, mh-variant-mu-mh-info):
300 Prefer GNU mailutils over GNU Mailutils MH.
302 * mh-comp.el (sc-cite-original, mh-smail, mh-smail-batch)
303 (mh-edit-again, mh-extract-rejected-mail, mh-forward)
304 (mh-smail-other-window, mh-reply, mh-send, mh-send-other-window):
305 Use `mh-send' instead of \\[mh-send]] since links in the docstring
306 are more useful than a key sequence in these cases. Use "See also"
307 instead of "See also documentation for".
309 * Merged in 7.4.4 changes, described below.
311 * mh-e.el (Version, mh-version): Set to 7.4.4+cvs.
313 2004-07-10 Bill Wohler <wohler@newt.com>
315 * Released MH-E version 7.4.4.
317 * MH-E-NEWS, README: Updated for release 7.4.4.
319 * mh-e.el (Version, mh-version): Updated for release 7.4.4.
321 * This patch release contains the following patches:
323 * mh-xemacs.el: New file from concatenation of mh-xemacs-compat.el
324 and mh-xemacs-icons.el which were removed since their names
325 exceeded DOS 8+3 limits.
328 (mh-e-autoloads.el): Add target to make `mh-e-autoloads.el', a
329 file containg usual entry commands into MH-E to be used for users
330 installing MH-E separately from Emacs.
331 (XEMACS_LOADDEFS_FILE): New. Used to generate mh-loaddefs.el
333 (XEMACS_LOADDEFS_COOKIE): Ditto.
334 (XEMACS_LOADDEFS_PKG_NAME): Ditto.
335 (XEMACS_OPTIONS): Add '-no-autoloads' to give a cleaner build
337 (MH-E-SRC): Moved mh-xemacs.el to new variable MH-E-XEMACS-SRC.
338 (MH-E-XEMACS-SRC): New variable to hold XEmacs source files.
339 (MH-E-XEMACS-OBJ): New variable to hold XEmacs object files.
340 (clean): Moved XEmacs-specific code to clean-xemacs.
341 (xemacs): Added clean-xemacs prerequisite. Moved down to XEmacs
342 section of file. Add target to build mh-loaddefs.el in XEmacs
343 (loaddefs-xemacs): New rule to build mh-loaddefs.el in XEmacs.
344 (clean-xemacs): New target to remove XEmacs-specific files.
345 (compile-xemacs): New. It allows for the '-no-autoloads' option
346 and byte-compiles all the source files with a single instance of
348 (dist): Added $(MH-E-XEMACS-SRC) to tarball.
349 (AUTO_PRELOADS): Removed, in favour of 'AUTOLOAD_PACKAGE_NAME' and
351 (AUTOLOAD_PACKAGE_NAME): New.
352 (AUTOLOAD_FILE): New.
353 (all): Don't set $EMACS_HOME if building with XEmacs.
354 (xemacs): Use 'compile-xemacs' instead of 'compile'.
355 (auto-autoloads.elc): Use new $AUTOLOAD_* vars and allow for
357 (custom-load.elc): Allow for '-no-autoloads'.
359 * mh-e.el: Don't require mh-xemacs-compat which no longer exists.
360 The XEmacs stuff gets required by mh-customize.el which is
361 required by mh-utils.el which is required by mh-e.el. This all
362 happens before mh-xemacs-compat was required, so all should be
364 (mh-restore-desktop-buffer): Move from desktop.el. Add Parameters.
365 (mh-restore-desktop-buffer): Delete with-no-warnings.
366 (mh-folder-mode): Bind desktop-save-buffer to t.
367 (Courtesy Lars Hansen).
369 * mh-alias.el (mh-assoc-ignore-case): New macro to use
370 assoc-string when available (Emacs 21.4+); assoc-ignore-case
372 (mh-alias-reload, mh-alias-expand,
373 mh-alias-minibuffer-confirm-address): Use it.
375 * mh-seq.el: Added mh-autoload to mh-read-seq-default.
377 * mh-utils.el (mh-require-cl): The Emacs coding conventions
378 require that the cl package not be required at runtime. However,
379 the cl package in versions of Emacs prior to 21.4 left cl routines
380 in their macro expansions. Use mh-require-cl to provide the cl
381 routines in the best way possible (closes SF #930012).
382 (require 'mouse): To shush compiler.
384 * Use new function mh-require-cl throughout.
386 * Add arch taglines (courtesy Miles Bader).
388 * mh-unit.el (mh-unit-files): Replaced mh-xemacs-compat.el and
389 mh-xemacs-icons.el with mh-xemacs.el.
391 * import-emacs: Also grab the ChangeLog.
393 * *.pbm: Regenerated using GIMP to be consistent with other Emacs
395 1. Edit .xpm image in GIMP.
396 2. Image > Mode > Indexed. Check Use Black/White Palette and No
398 3. File > Save As file.xbm.
399 4. Run xbmtopbm < file.xbm > file.pbm.
400 Thanks to jan.h.d@swipnet.se for the help.
402 2004-07-07 Stephen Gildea
404 * mh-customize.el (mh-invisible-header-fields-internal):
405 Add X-Greylist, X-Source*, and X-WebTV-Signature.
406 Replace specific X-Spam-* headers with general pattern.
408 2004-06-15 Bill Wohler <wohler@newt.com>
410 * README: Vladimir Ivanovic reports that mh-rmail works with
411 XEmacs 21.5.17, so updated requirements text accordingly (closes
414 2004-05-12 Satyaki Das <satyaki@theforce.stanford.edu>
416 * mh-utils.el (mh-mail-header-end): Replace call to
417 rfc822-goto-eoh with something that allows From_ lines in the mail
420 2004-04-14 Bill Wohler <wohler@newt.com>
422 * mh-utils.el (mh-show-mouse): s/EVENT/event/. Thanks to John Paul
423 Wallington <jpw@gnu.org> for pointing this out.
425 2004-04-12 Satyaki Das <satyaki@theforce.stanford.edu>
427 * mh-e.el (mh-folder-size-flist): Add -showzero option so that the
428 parsing code doesn't get confused by the presence of -noshowzero
429 in the user's .mh_profile (closes SF #933954).
431 2004-04-07 Satyaki Das <satyaki@theforce.stanford.edu>
433 * mh-mime.el (mh-insert-mime-button)
434 (mh-insert-mime-security-button): Add evaporate property to
435 overlays used in MIME part buttons. This avoids problems with
438 2004-03-16 Satyaki Das <satyaki@theforce.stanford.edu>
440 * mh-e.el (mh-folder-from-address): Go to the end of buffer if the
441 re-search-forward fails (closes SF #917096).
443 2004-02-02 Satyaki Das <satyaki@theforce.stanford.edu>
445 * mh-customize.el (mh-compose-forward-as-mime-flag): New user
446 customizable variable that controls whether messages are forwarded
447 as MIME attachments (closes SF #827203).
449 * mh-comp.el (mh-forward): Call forw with -mime option only if
450 mh-compose-forward-as-mime-flag is non-nil.
452 2003-12-26 Jeffrey C Honig <jch@honig.net>
454 * mh-junk.el (mh-junk-blacklist, mh-junk-whitelist)
455 (mh-spamassassin-blacklist, mh-spamassassin-blacklist)
456 (mh-spamassassin-blacklist, mh-spamassassin-whitelist)
457 (mh-spamassassin-whitelist, mh-bogofilter-blacklist)
458 (mh-spamprobe-blacklist): Add progress messages. Change "Couldn't"
459 to "Unable" in error messages. Run bogofilter and spamprobe in
460 the foreground to prevent a large number of processes from
463 2003-12-25 Satyaki Das <satyaki@theforce.stanford.edu>
465 * mh-e.el (mh-prompt-for-refile-folder): Marking the whole folder
466 and then refiling all messages throws an error, since this
467 function expects point to be on a valid scan line. The change
468 relaxes this requirement, thereby avoiding the above problem.
470 2003-12-14 Satyaki Das <satyaki@theforce.stanford.edu>
472 * mh-comp.el (mh-ascii-buffer-p): New function that checks if a
473 buffer is entirely composed of ASCII.
474 (mh-send-letter): Encode the draft if it contains non-ASCII
477 2003-12-12 Satyaki Das <satyaki@theforce.stanford.edu>
479 * mh-customize.el (mh-invisible-headers): Keep only unique fields
480 in list of header fields to hide. This avoids problems in XEmacs.
482 2003-12-10 Satyaki Das <satyaki@theforce.stanford.edu>
484 * mh-seq.el (mh-thread-print-scan-lines): The imenu index was not
485 getting created for threaded index buffers. The change fixes this.
487 * mh-index.el (mh-index-insert-folder-headers): Always create the
489 (mh-index-create-imenu-index): Set which-func-mode to t. If
490 which-function-mode is turned on after the folder buffer has been
491 prepared, display of the folder info was being inhibited. The
494 2003-12-09 Satyaki Das <satyakid@stanford.edu>
496 * mh-comp.el (mh-letter-mode): Setup mh-mail-header-separator
497 based on draft contents.
498 (mh-letter-mode, mh-letter-mail-header-end-marker)
499 (mh-letter-header-end): Remove use of the variable
500 mh-letter-mail-header-end-marker. Instead use
501 mh-mail-header-separator. This avoids problems in font locking
502 draft buffers (closes SF #855479).
504 2003-12-09 Satyaki Das <satyakid@stanford.edu>
506 * mh-index.el (mh-index-insert-folder-headers): Modified so that
507 imenu--index-alist is updated.
508 (mh-index-create-imenu-index): New function that generates an
509 index usable by imenu. This adds which-func-mode support to index
510 folders (closes SF #855520).
512 * mh-e.el (which-func, which-func-modes): Tell which-func that
513 mh-folder-mode supports it.
514 (mh-folder-mode): Add support for imenu.
516 2003-11-22 Peter S Galbraith <psg@debian.org>
518 * Makefile: renamed mh-startup.el to mh-e-autoloads.el
520 * README: renamed mh-startup.el to mh-e-autoloads.el
522 * .cvsignore: Added mh-e-autoloads.el
524 2003-11-18 Bill Wohler <wohler@newt.com>
526 * Released MH-E version 7.4.3.
528 * MH-E-NEWS, README: Updated for release 7.4.3.
530 * mh-e.el (Version, mh-version): Updated for release 7.4.3.
532 * This patch release contains the following two patches:
534 * mh-identity.el (mh-identity-make-menu): Removed condition on
535 mh-auto-fields-list. Use it to enable or disable menu item
538 * mh-customize.el (mh-identity-list): Removed defvar and moved
539 defcustom before mh-auto-fields-list so that defvar wouldn't
540 clobber user's customization settings.
542 2003-11-17 Jeffrey C Honig <jch@honig.net>
544 * mh-print.el (mh-print-msg): Do not print a message on deprecated
545 usage, the bindings have been removed.
547 * mh-e.el (mh-folder-mode-map): Remove "l" binding for
550 * mh-utils.el (mh-show-mode-map): Remove "l" binding for
553 2003-11-16 Satyaki Das <satyakid@stanford.edu>
555 * mh-comp.el (mh-beginning-of-word): Use the function
556 mh-mail-abbrev-make-syntax-table instead of the function
557 mail-abbrev-make-syntax-table.
559 * mh-gnus.el (mh-mail-abbrev-make-syntax-table): Add a wrapper
560 function that calls mail-abbrev-make-syntax-table if available.
561 This is needed so that MH-E built with CVS Emacs will work with
562 released versions of Emacs21 and vice versa.
564 2003-11-14 Peter S Galbraith <psg@debian.org>
566 * mh-customize.el (mh-invisible-header-fields-internal): Add
567 "X-NAI-Spam-" and "X-Spam-Report:".
569 2003-11-14 Mark D. Baushke <mdb@gnu.org>
571 * mh-customize.el (mh-invisible-header-fields-internal):
572 Add X-AntiAbuse and X-MailScanner.
573 (Patch from Stephen Gildea.)
575 2003-11-13 Peter S Galbraith <psg@debian.org>
577 * mh-identity.el (mh-identity-handler-attribution-verb): New
578 function. A new Identity handler for the attribution verb (e.g.
579 "wrote:") to allow for different identities to use different
581 (mh-identity-insert-attribution-verb): New function. Insert the
582 attribution verb, placing special markers so it can be deleted and
584 (mh-identity-attribution-verb-start): New variable. Holds the
585 marker for the start of the attribution verb.
586 (mh-identity-attribution-verb-end): New variable. Holds the
587 marker for the end of the attribution verb.
589 * mh-customize.el (mh-identity-handlers): Add new
590 ":attribution-verb" tag for the attribution-verb handler.
591 (mh-identity-list): Idem.
593 * mh-comp.el (mh-yank-cur-msg): Insert attribution verb using
594 mh-identity-insert-attribution-verb.
595 (mh-extract-from-attribution): Extract only the name from the From
596 line, without appending `mh-extract-from-attribution-verb' since
597 markers need to be inserted around that now.
599 2003-11-12 Bill Wohler <wohler@newt.com>
601 * mh-e.el (mh-rmail, mh-nmail): Well, actually, we run in both GNU
602 Emacs and XEmacs, so removed the "GNU" in the docstrings unless
603 one is strictly talking about GNU Emacs.
605 * mh-comp.el (mh-smail, mh-smail-batch, mh-smail-other-window):
608 2003-11-11 Bill Wohler <wohler@newt.com>
610 * mh-customize.el (mh-customize): Minor docstring change.
611 (mh, mh-e): The short description for MH-E is: The GNU Emacs
612 Interface to the MH Mail System. Therefore, updated docstrings
615 * mh-comp.el (mh-smail, mh-smail-batch, mh-smail-other-window):
618 * mh-e.el (mh-rmail, mh-nmail): Ditto.
620 2003-11-10 Satyaki Das <satyakid@stanford.edu>
622 * mh-mime.el (mh-mml-to-mime): In case errors happen in
623 mml-to-mime, restore contents of the draft buffer (closes SF
626 2003-11-07 Bill Wohler <wohler@newt.com>
628 * mh-customize.el (mh-letter-mode-hook): Moved to mh-sending-mail
629 group (where it is now documented in the manual).
630 (mh-pick-mode-hook): Moved to mh-index group (where it is now
631 documented in the manual).
633 * mh-loaddefs.el: Deleted per our discussion on mh-e-devel. No
634 more conflicts! No more check-ins! Anyone pulling CVS MH-E is
635 expected to compile. This file shall be added to the tarball so
636 that users of the distribution are not.
638 2003-11-07 Mark D. Baushke <mdb@gnu.org>
640 * mh-loaddefs.el: Regenerated.
642 * mh-customize.el (mh-forward-hook): Define new hook.
643 * mh-comp.el (mh-forward): Use it.
645 2003-11-07 Satyaki Das <satyakid@stanford.edu>
647 * mh-loaddefs.el: Regenerated.
649 * mh-utils.el (mh-show-toggle-mime-buttons)
650 (mh-show-display-with-external-viewer): New interactive functions
651 callable from the show buffer.
652 (mh-show-mime-map): Add bindings for "K t" and "K e".
653 (mh-show-msg): Propagate change to
654 mh-display-buttons-for-inline-parts-flag to the show buffer.
656 * mh-mime.el (mh-display-with-external-viewer): New interactive
657 function to display MIME parts with external viewer (closes SF
660 * mh-e.el (mh-folder-mode): Make the variable
661 mh-display-buttons-for-inline-parts-flag buffer-local so that
662 display of MIME buttons can be toggled.
663 (mh-toggle-mime-buttons): New interactive function to toggle
664 display of MIME buttons.
665 (mh-mime-map): Modified to add bindings for "K t" and "K e".
667 2003-11-04 Steve Youngs <sryoungs@bigpond.net.au>
669 * Makefile (XEMACS_LOADDEFS_FILE): New. Used to generate mh-loaddefs.el
671 (XEMACS_LOADDEFS_COOKIE): Ditto.
672 (XEMACS_LOADDEFS_PKG_NAME): Ditto.
673 (xemacs): Add target to build mh-loaddefs.el in XEmacs
674 (clean-xemacs): Remove `mh-loaddefs.el*'
675 (loaddefs-xemacs): New rule to build mh-loaddefs.el in XEmacs.
677 2003-11-02 Peter S Galbraith <psg@debian.org>
679 * mh-init.el (mh-variant-set-variant): Reset `mh-x-mailer-string'
680 when we select an MH variant.
682 2003-11-02 Jeffrey C Honig <jch@honig.net>
684 * mh-loaddefs.el: Regenerated.
686 * mh-funcs.el (mh-print-msg): Move to mh-print.el.
688 * mh-e.el (mh-folder-mode-map): Add mh-print-msg ("l") back, it
689 will print a message that this usage is deprecated.
691 * mh-print.el (require, mh-ps-print-msg, mh-ps-print-msg-file):
692 Require mh-funcs for mh-note-printed. PS print functions were not
693 setting the printed notation. Move mh-print-msg here for
694 consistency. Print message if mh-print-msg invoked via deprecated
697 2003-11-01 Peter S Galbraith <psg@debian.org>
699 * Makefile: Add target to make `mh-startup.el', a file containg
700 usual entry commands into MH-E to be used for users installing
701 MH-E separately from Emacs.
703 * README: Document the above for users.
705 2003-10-29 Jeffrey C Honig <jch@honig.net>
707 * mh-utils.el (mh-show-ps-print-map): Add "?" and "l" to
708 mh-show-ps-print-map.
710 * mh-e.el (mh-ps-print-map, mh-help-messages): Add "?" and "l" to
711 mh-ps-print-map. Add "l" to help message.
713 2003-10-27 Bill Wohler <wohler@newt.com>
715 * Makefile (MH-E-SRC): Moved mh-xemacs.el to new variable
717 (MH-E-XEMACS-SRC): New variable to hold XEmacs source files.
718 (MH-E-XEMACS-OBJ): New variable to hold XEmacs object files.
719 (clean): Moved XEmacs-specific code to clean-xemacs.
720 (xemacs): Added clean-xemacs prerequisite. Moved down to
721 XEmacs section of file.
722 (clean-xemacs): New target to remove XEmacs-specific files.
723 (compile-xemacs): Added $(MH-E-XEMACS-SRC) prerequisite.
724 (dist): Added $(MH-E-XEMACS-SRC) to tarball.
726 2003-10-27 Satyaki Das <satyakid@stanford.edu>
728 * mh-loaddefs.el: Regenerated.
730 * mh-index.el (mh-indexer-choices): Remove option for the non-free
731 glimpse indexer (closes SF #831276).
732 (mh-glimpse-binary, mh-glimpse-directory)
733 (mh-glimpse-execute-search, mh-glimpse-next-result): Functions
734 and variables to implement glimpse support are removed.
736 * mh-customize.el (mh-index-program): Remove option for glimpse.
738 2003-10-24 Satyaki Das <satyakid@stanford.edu>
740 * mh-customize.el: Remove top-level test for toolbar enabled
741 XEmacs since it is not needed.
742 (mh-tool-bar-define): Add test for XEmacs toolbar in the functions
743 mh-toolbar-init, mh-tool-bar-letter-buttons-set and
744 mh-tool-bar-folder-buttons-set. This enables proper compilation
745 irrespective of whether the XEmacs was built with toolbar support
748 * mh-comp.el (mh-letter-mode): Remove conditional since it is not
751 * mh-e.el (mh-folder-mode): Same as above.
753 * mh-utils.el (mh-show-mode): Same as above.
755 * mh-xemacs.el (mh-xemacs-icon-map): Remove condition on toolbar
756 presence since we want the build to work if XEmacs without
757 toolbars is used during compilation.
759 2003-10-23 Bill Wohler <wohler@newt.com>
761 * mh-customize.el: The Great Reorganization. Sorted groups
762 alphabetically. Aligned variables in customization groups with
763 manual sections. Group docstrings changed to match manual chapter
766 2003-10-22 Satyaki Das <satyakid@stanford.edu>
768 * mh-speed.el (timer): Avoid compiler warning in XEmacs.
770 2003-10-22 Steve Youngs <sryoungs@bigpond.net.au>
772 * Makefile (XEMACS_OPTIONS): Add '-no-autoloads' to give a cleaner
774 (AUTO_PRELOADS): Removed, in favour of 'AUTOLOAD_PACKAGE_NAME' and
776 (AUTOLOAD_PACKAGE_NAME): New.
777 (AUTOLOAD_FILE): New.
778 (all): Don't set $EMACS_HOME if building with XEmacs.
779 (xemacs): Use 'compile-xemacs' instead of 'compile'.
780 (auto-autoloads.elc): Use new $AUTOLOAD_* vars and allow for
782 (custom-load.elc): Allow for '-no-autoloads'.
783 (compile-xemacs): New. It allows for the '-no-autoloads' option
784 and byte-compiles all the source files with a single instance of
787 * mh-e.el (mh-folder-mode): Only load the toolbar in XEmacs if
788 toolbar support is available.
790 * mh-comp.el (mh-letter-mode): Only load the toolbar in XEmacs if
791 toolbar support is available.
793 * mh-customize.el: Require 'mh-xemacs' at toplevel when
794 'mh-xemacs-flag' is non-nil.
795 Wrap all the toolbar code in a test that is true if using
796 GNU/Emacs or a toolbar-enabled XEmacs.
798 * mh-print.el (mh-ps-spool-a-msg): Comment out
799 `clean-message-header-flag' because it isn't used anywhere.
801 * mh-utils.el (mh-show-mode): Only load the toolbar in XEmacs if
802 toolbar support is available.
804 * mh-xemacs.el: Autoload `regexp-opt', `customize-group',
805 `view-mode', `with-electric-help', `pp', `sort-numeric-fields',
806 `reverse-region', and `goto-address' at compile time.
807 (mh-xemacs-has-toolbar-flag): New. This is non-nil when XEmacs
809 (mh-xemacs-toolbar-*-icon): Use it.
811 2003-10-21 Mark D. Baushke <mdb@gnu.org>
813 * mh-identity.el (mh-identity-field-handler): Fields that begin
814 with ":" must have an mh-identity-handler defined or the user
817 2003-10-17 Peter S Galbraith <psg@debian.org>
819 * mh-customize.el (mh-identity-list): This change affects users!
820 The keyword "signature" becomes ":signature". The recently added
821 keyword "pgg-default-user-id" becomes ":pgg-default-user-id".
822 (mh-auto-fields-list): The keyword "Identity" becomes ":identity".
823 (mh-identity-handlers): Idem for signature and pgg-default-user-id.
825 * mh-comp.el (mh-insert-auto-fields): Idem for Identity.
827 2003-10-17 Peter S Galbraith <psg@debian.org>
829 * mh-xemacs.el: Add eval-and-compile call to (load "toolbar" t t) to
830 make sure `toolbar-make-button-list' is defined. We can't use
831 require because Emacs doesn't have this library.
833 2003-10-16 Bill Wohler <wohler@newt.com>
835 * mh-customize.el (mh-signature-file-name)
836 (mh-letter-insert-signature-hook): Merge docstring with manual.
838 * mh-comp.el (mh-file-is-vcard-p): Checkdoc fix.
839 (mh-insert-signature): Merge docstring with manual.
841 * mh-customize.el (mh-junk): Changed manual link in defgroup from
842 Customizing mh-e to Junk.
843 (mh-junk-function-alist): Moved SpamAssassin to first in list on
844 the hunch that it is the most popular and should be chosen if
845 other anti-spam programs exist.
846 (mh-junk-mail-folder): Since the variable can accept values other
847 than folder names, renamed to mh-junk-disposition to more
848 accurately reflect the content. Merge docstring with manual.
849 (mh-junk-program): Moved SpamAssassin to the top of the menu for
850 the same reason presented in mh-junk-function-alist. Also, fixed
851 case of spam programs to match official usage. Merge docstring
854 * mh-junk.el (mh-junk-blacklist):
855 s/mh-junk-mail-folder/mh-junk-disposition/. Merge docstring with
857 (mh-junk-whitelist): Merge docstring with manual.
858 (mh-bogofilter-blacklist): No longer suggest using automatic
859 classification so use -s instead of -Ns.
860 (mh-bogofilter-whitelist): No longer suggest using automatic
861 classification so use -n instead of -Sn.
862 (mh-spamassassin-blacklist, mh-spamassassin-whitelist): Merge
863 docstring with manual. Moved spamassassin functions to top of file
864 so functions appear in same order that they are presented in menu.
866 2003-10-09 Peter S Galbraith <psg@debian.org>
868 * mh-customize.el (mail-citation-hook): Moved from mh-comp.el and
869 made into a defcustom.
871 2003-10-09 Satyaki Das <satyakid@stanford.edu>
873 * mh-loaddefs.el: Regenerated.
875 * mh-comp.el (mh-get-header-field): Add autoload cookie.
877 * mh-utils.el (mh-show-ps-print-toggle-mime)
878 (mh-show-ps-print-toggle-color, mh-show-ps-print-toggle-faces)
879 (mh-show-ps-print-msg-file, mh-show-ps-print-msg)
880 (mh-show-ps-print-msg-show): New interactive functions callable
881 from the show buffer.
882 (mh-show-ps-print-map): New key map for printing.
884 * mh-e.el (mh-folder-mode-map): Remove key binding for
886 (mh-ps-print-map): Add new key map for printing.
888 * Makefile (MH-E-SRC): Add mh-print.el.
890 2003-10-07 Satyaki Das <satyakid@stanford.edu>
892 * mh-utils.el (mh-x-image-url-fetch-image): In XEmacs,
893 make-temp-file is not present. So to avoid security problems, use
894 a temporary file in the user's home directory. This avoids issues
895 in creating files in a world-writable directory.
897 * mh-mime.el (mh-signature-highlight): In Emacs, arrange for the
898 overlay to be freed when it is no longer needed. Also, implement
899 signature highlighting in XEmacs.
901 2003-10-05 Satyaki Das <satyakid@stanford.edu>
903 * mh-mime.el (mh-mime-display, mh-mm-inline-message): Respect the
904 value of `mm-verify-option' and `mm-decrypt-option'.
905 (mh-mime-display-security): Rearrange code a bit to avoid too many
906 new lines being inserted when message verification/decryption is
907 carried out while the message is being read. Also use the
908 point-m{in|ax}-marker functions to make the function easier to read.
909 (mh-mime-security-press-button): Extend the function so that the
910 user can verify/decrypt messages while reading them.
912 * mh-gnus.el (mm-possibly-verify-or-decrypt): Added to avoid
913 compiler warning with old Gnus.
915 * mh-utils.el (mh-x-image-url-sane-p): New function which checks
916 if the URL in X-Image-URL is something we can handle.
917 (mh-x-image-url-display): Don't display image if the URL looks
920 2003-10-04 Mark D Baushke <mdb@gnu.org>
922 * mh-comp.el (mh-letter-menu): Simplify menu heading.
924 2003-10-03 Mark D Baushke <mdb@gnu.org>
926 * mh-mime.el (mh-mml-query-cryptographic-method): Avoid
927 revisionist history and still provide a good default.
929 * mh-comp.el (mh-letter-menu): Remove the Disable Security
930 parenthetical comment.
932 * mh-loaddefs.el: Regenerated.
934 * mh-customize.el (mh-mml-method-default): What method should be
935 used in secure directives.
937 * mh-mime.el (mh-secure-message): New function used to generate
938 the mml security tags.
939 (mh-mml-unsecure-message): New wrapper function around
940 mml-unsecure-messages.
941 (mh-mml-secure-message-sign-pgpmime): Remove function.
942 (mh-mml-secure-message-encrypt-pgpmime): Ditto.
943 (mh-mml-cryptographic-method-history): New variable.
944 (mh-mml-query-cryptographic-method): New function.
945 (mh-mml-secure-message-encrypt): Ditto.
946 (mh-mml-secure-message-signencrypt): Ditto.
947 (mh-mml-secure-message-sign): Ditto.
949 * mh-comp.el (mh-letter-menu, mh-letter-mode-help-messages,
950 (mh-letter-mode-map): Update to use new functions.
952 2003-09-26 Satyaki Das <satyakid@stanford.edu>
954 * mh-seq.el (mh-interactive-range): The function has been
955 extended so that it now takes a default result to return if no
956 interactive prefix arg is given and no region is active.
958 * mh-e.el (mh-add-sequence-notation): If transient-mark-mode is
959 on, then the active region is deactivated based on whether a user
960 sequence or a internal sequence is being notated. The change
961 removes this inconsistency.
962 (mh-catchup, mh-folder-map): A new interactive function to mark
963 messages as read has been added and bound to "F c" in the folder
966 * mh-utils.el (mh-show-catchup, mh-show-folder-map): New
967 interactive function callable from show mode buffers has been
970 2003-09-24 Bill Wohler <wohler@newt.com>
972 * mh-customize.el (mh-clean-message-header-flag)
973 (mh-invisible-header-fields-default, mh-invisible-header-fields):
974 Merge docstring with manual.
976 2003-09-24 Mark D. Baushke <mdb@gnu.org>
978 * mh-junk.el (mh-junk-blacklist): Junked messages should be put
979 into the mh-seen-list to avoid propagating the unseen sequence
980 into the spam folder.
982 * mh-loaddefs.el: Regenerated.
984 * mh-mime.el (mh-mml-secure-message-sign-pgpmime): Add an optional
985 dontsign argument to remove an existing secure message directive.
986 Update the docstring -- this fuction does not allow for
987 encrypt/sign, just sign directives.
989 * mh-mime.el (mh-mml-secure-message-sign-pgpmime): Use
990 mml-insert-tag directly to provide a sender if
991 mh-identity-pgg-default-user-id is set.
992 (mh-mml-secure-message-encrypt-pgpmime): Use mml-insert-tag
993 directly to provide a sender if this message is to be both signed
994 and encrypted and mh-identity-pgg-default-user-id is set.
996 2003-09-23 Bill Wohler <wohler@newt.com>
998 * mh-alias.el (Commentary): Removed as it is now in the manual.
999 (mh-alias-system-aliases): Moved here from mh-customize.el. By
1000 definition, "system" definitions are not user-visible, and user
1001 filenames are in the the Aliasfile: profile component, so this
1002 variable really shouldn't be a defcustom
1003 (mh-alias-tstamp, mh-alias-filenames, mh-alias-reload)
1004 (mh-alias-add-alias, mh-alias-grab-from-field)
1005 (mh-alias-add-address-under-point, mh-alias-apropos): Merge
1006 docstring with manual.
1007 (mh-alias-reload-maybe): Minor comment update.
1008 (mh-alias-insert-file): Merge docstring with manual. Removed
1009 "[press TAB]" from prompt since users should know about completion
1010 and space can be used as well.
1011 (mh-alias-for-from-p): No longer returns a surprising result (t if
1012 there was **not** an alias for the From field) if the From header
1013 field is missing. This function now returns what you would expect
1014 a function of this name to return. Renamed from
1015 mh-alias-from-has-no-alias-p since negatives in the function name
1016 make logic harder to follow.
1017 (mh-alias-add-alias-to-file): Merge docstring with manual.
1018 Improved verbiage of prompt. Aliases are now inserted "[b]efore"
1019 or "[a]fter" the existing alias instead of "[i]nsert" or
1020 "[a]ppend." Note how the new usage flows better.
1022 * mh-customize.el (mh-alias): Changed manual link in defgroup from
1023 Customizing mh-e to Aliases.
1024 (mh-alias-grab-from-field button): mh-alias-from-has-no-alias-p
1025 renamed to mh-alias-for-from-p and no longer returns surprising
1026 value if there isn't a From field. Therefore, enable button if
1027 there is a From header field and mh-alias-for-from-p returns nil.
1028 (mh-letter-complete-function)
1029 (mh-alias-completion-ignore-case-flag, mh-alias-flash-on-comma)
1030 (mh-alias-insert-file, mh-alias-insertion-location)
1031 (mh-alias-local-users, mh-alias-local-users-prefix)
1032 (mh-alias-passwd-gecos-comma-separator-flag): Merge docstring with
1034 (mh-alias-system-aliases): Moved to mh-alias.el.
1036 * mh-comp.el (mh-letter-complete-function-alist): Removed comment
1037 about making this customizable since I didn't think it seemed
1038 appropriate in the manual.
1039 (mh-letter-complete): Merge docstring with manual.
1041 2003-09-23 Satyaki Das <satyakid@stanford.edu>
1043 * mh-speed.el (mh-speed-flists): When exiting emacs, don't ask if
1044 the flists process should be killed.
1046 * mh-e.el (mh-folder-message-menu): Enable undo menu entry only
1047 if something can be undone.
1049 * mh-customize.el (undo): Enable undo button only if something
1052 2003-09-22 Peter S Galbraith <psg@debian.org>
1054 * mh-customize.el (mh-identity-handlers): New defcustom. Alist of
1055 Handler functions for mh-identity (downcased) fields.
1056 (mh-identity-list): Add support for pgg-default-user-id.
1058 * mh-identity.el (mh-insert-identity): Modified to use
1059 `mh-identity-handlers', adding hacking flexibility for those who
1061 (mh-identity-field-handler): New function. Return the handler for
1062 a FIELD or nil if none set. The field name is downcased.
1063 (mh-identity-handler-gpg-identity): New function; handler for pgg
1064 pgp identities. It sets a buffer-local value for
1065 `mh-pgg-default-user-id' which must be handled by mh-send-letter.
1066 (mh-identity-pgg-default-user-id): New buffer-local variable to
1067 hold the requested key ID.
1068 (mh-identity-handler-signature): New function; handler t insert
1069 and remove signature files.
1070 (mh-identity-handler-default): New function; the default handler
1071 to insert or remove generic field.
1072 (mh-identity-handler-top): Insert a field at the top of the
1074 (mh-identity-handler-bottom): Insert a field at the bottom of the
1076 (mh-header-field-delete): Make more robust wrt the field having a
1077 trailing colon or not.
1078 (mh-identity-make-menu): Add a "Customize Identities" menu entry.
1080 * mh-loaddefs.el: Regenerated.
1082 2003-09-21 Peter S Galbraith <psg@debian.org>
1084 * mh-init.el (mh-variant-set): Bug fix for mh-variant long names
1085 with version numbers.
1087 * mh-e.el (mh-scan-format): patch from Sergey Poznyakoff.
1088 GNU mailutils now supports the %(decode) format
1090 2003-09-20 Satyaki Das <satyakid@stanford.edu>
1092 * mh-gnus.el (mh-mm-text-html-renderer): New function to query
1093 which HTML renderer is being used by Gnus.
1095 * mh-mime.el (mh-signature-highlight): Renderers used to display
1096 HTML parts garble the signature separator in various ways. The
1097 function has been modified to take that into account.
1098 (mh-mime-display-single, mh-mm-display-part): Pass the new
1099 optional argument to `mh-signature-highlight'.
1101 2003-09-19 Mark D. Baushke <mdb@gnu.org>
1103 * mh-mime.el (mh-have-file-command, mh-file-mime-type): Made an
1104 mh-autoload as they are used in mh-comp.el.
1106 * mh-loaddefs.el: Regenerated.
1108 2003-09-18 Peter S Galbraith <psg@debian.org>
1110 * mh-comp.el (mh-insert-fields): Make sure field has a colon.
1112 2003-09-18 Satyaki Das <satyakid@stanford.edu>
1114 * mh-seq.el (mh-toggle-tick): Don't hardcode the name of the tick
1115 sequencence in the function. This would have caused improper
1116 highlighting of the tick sequence if the user had changed its
1119 2003-09-15 Satyaki Das <satyakid@stanford.edu>
1121 * mh-e.el (mh-folder-message-menu): Fix a little bug which shows
1122 up as a problem during compilation (closes SF #806577).
1124 2003-09-15 Mark D. Baushke <mdb@gnu.org>
1126 * mh-customize.el (mh-invisible-header-fields-internal): Added
1127 a new field for GNU mailutils per Sergey Poznyakoff.
1129 2003-09-09 Satyaki Das <satyakid@stanford.edu>
1131 * mh-utils.el (vcard): Unconditionally load vcard.el, if
1132 available, so that vcards are always inlined.
1134 2003-09-09 Peter S Galbraith <psg@debian.org>
1136 * mh-mime.el (mh-file-mime-type-substitutions): Add entry to
1137 convert text/plain .vcf files to text/x-vcard.
1138 (mh-mime-content-types): Add text/x-vcard.
1140 2003-09-09 Bill Wohler <wohler@newt.com>
1142 * mh-comp.el (mh-rejected-letter-start): Added strings for qmail
1143 and exim (addresses SF #404965).
1145 2003-09-09 Satyaki Das <satyakid@stanford.edu>
1147 * mh-gnus.el (mm-inline-text-vcard): Make vcard display work with
1148 Gnus-5.9. The extra file vcard.el is still needed.
1150 * mh-mime.el (mh-signature-highlight): New function that
1151 highlights message signatures.
1152 (mh-mm-display-part, mh-mime-display-single): Highlight signatures
1153 using `mh-signature-highlight' (closes SF #802722). More work is
1155 (mh-mime-display): Highlight signature in non-MIME email too.
1157 * mh-customize.el (mh-show-signature-face): New face used to
1158 display message signature.
1160 2003-09-08 Peter S Galbraith <psg@debian.org>
1162 * mh-e.el (mh-version): Do something sensible when
1163 mh-variant-in-use is undefined.
1164 * mh-junk.el (mh-spamassassin-blacklist)
1165 (mh-spamassassin-whitelist): Change options to be compatoble with
1166 old version of spamassassin (V2.20).
1168 2003-09-07 Mark D. Baushke <mdb@gnu.org>
1170 * mh-mime.el (mh-access-types): Per RFC 2049, the "afs"
1171 access-type for message/external-body has been removed.
1172 Update the comments to reference the current MIME RFCs
1173 2045, 2046 and 2049 rather than the obsolete RFC 1521.
1175 2003-09-05 Peter S Galbraith <psg@debian.org>
1177 * mh-e.el (mh-version): Bumped version number to 7.4.2+cvs.
1179 2003-09-04 Satyaki Das <satyakid@stanford.edu>
1181 * mh-utils.el (mh-picon-directory-list, mh-picon-directory): The
1182 mh-picon-directory-list variable supersedes mh-picon-directory.
1183 (mh-picon-existing-directory-list): New variable that contains
1184 the list of picon directories that actually exist.
1185 (mh-picon-set-directory-list): New function to update
1186 mh-picon-existing-directory-list from mh-picon-directory-list.
1187 (mh-picon-get-image): The function has been modified to search a
1188 list of possible picon source directories. The regexp to extract
1189 the username from the email address has been made smarter so that
1190 it can recognize email addresses of the form user+random@foo.net
1191 and extract "user" from there.
1192 (mh-picon-file-contents): The file type recognition code has been
1193 moved from mh-picon-get-image into this function.
1194 (mh-picon-generate-path): The function has been generalized so
1195 that searching multiple paths is now feasible.
1197 * mh-pick.el, mh-e.el: Checkdoc fixes.
1199 2003-09-02 Satyaki Das <satyakid@stanford.edu>
1201 * mh-identity.el (eval-when): It seems that the mh-comp-loaded
1202 code isn't required any more.
1204 2003-08-30 Satyaki Das <satyakid@stanford.edu>
1206 * mh-init.el (mh-variant-set): Replace `error' with `message' so
1207 that Emacs CVS will compile without errors if no MH variant is
1210 2003-08-29 Satyaki Das <satyakid@stanford.edu>
1212 * mh-init.el (mh-variant-set): Add interactive spec to the
1215 * mh-mime.el (mh-mhn-compose-external-type): Optional arguments
1216 are prompted for only if prefix arg is given.
1218 2003-08-29 Mark D. Baushke <mdb@gnu.org>
1220 * mh-mime.el (mh-mhn-compose-external-type): Modified to be
1221 interactive and prompts for many of the fields. Made an
1223 (mh-access-types): New table derived from RFC2017, RFC1521 and
1224 RFC1738, used in a completing-read in
1225 mh-mhn-compose-external-type.
1227 * mh-loaddefs.el: Regenerated.
1229 2003-08-26 Satyaki Das <satyakid@stanford.edu>
1231 * mh-utils.el (mh-picon-image-types, mh-picon-get-image): Avoid
1233 (mh-sub-folders-actual): Parsing of the output from folders has
1234 been modified, so that it also works for MH (closes SF #792300).
1236 * mh-junk.el (mh-spamassassin-whitelist): Avoid calling
1237 ietf-drums-parse-address if it isn't present.
1238 (mh-spamassassin-identify-spammers): Avoid use of puthash so that
1239 Emacs20 doesn't complain.
1241 * mh-e.el (mh-colors-available-p): Wrap call to
1242 display-color-cells in a mh-funcall-if-exists to avoid compiler
1245 2003-08-25 Satyaki Das <satyakid@stanford.edu>
1247 * mh-e.el (mh-colors-available-flag, mh-folder-mode): New
1248 variable to track if colors are available and it is set
1249 appropriately in mh-folder-mode.
1250 (mh-colors-available-p, mh-colors-in-use-p): Two functions to
1251 check whether colors are available and if they are actually being
1253 (mh-add-sequence-notation): Just changing a scan line doesn't
1254 make font-lock refontify the line in Emacs20. So explicitly
1255 refontify the scan line in such a situation.
1256 (mh-internal-seq): If colors aren't being used then treat the
1257 tick sequence like a normal user sequence.
1259 * mh-seq.el (mh-put-msg-in-seq): Do font-lock highlighting after
1260 the messages have been added to the sequence.
1261 (mh-toggle-tick): Modified so that highlighting of the ticked
1262 messages will be properly done. If font-lock isn't being used or
1263 if colors aren't supported by the Emacs where MH-E is running,
1264 then the `%' character is used to annotate ticked messages.
1266 * mh-utils.el (mh-picon-image-types): Since Emacs20 doesn't have
1267 image-type-available-p, wrap calls to that function in
1269 (mh-add-msgs-to-seq): Do the font-lock highlighting after the
1270 messages have been added.
1272 2003-08-24 Bill Wohler <wohler@newt.com>
1274 * Makefile (MH-E-SRC): Replaced mh-xemacs-compat.el and
1275 mh-xemacs-icons.el with mh-xemacs.el.
1277 * mh-e.el: Don't require mh-xemacs-compat which no longer exists.
1278 The XEmacs stuff gets required by mh-customize.el which is
1279 required by mh-utils.el which is required by mh-e.el. This all
1280 happens before mh-xemacs-compat was required, so all should be
1283 * mh-unit.el (mh-unit-files): Replaced mh-xemacs-compat.el and
1284 mh-xemacs-icons.el with mh-xemacs.el.
1286 * mh-xemacs.el: New file from concatenation of mh-xemacs-compat.el
1287 and mh-xemacs-icons.el which were removed since their names
1288 exceeded DOS 8+3 limits.
1290 * mh-customize.el (mh-compose-skipped-header-fields): Use
1291 uppercase for field names.
1293 2003-08-21 Bill Wohler <wohler@newt.com>
1295 * mh-customize.el (mh-sequences): Introduced new customization
1296 group for sequences.
1297 (mh-refile-preserves-sequences-flag, mh-tick-seq)
1298 (mh-update-sequences-after-mh-show-flag): Moved option from
1299 mh-folder to mh-sequences group. Synced docstring with manual.
1300 (mh-index-ticked-messages-folders): Since mh-tick-seq is
1301 customizable, use it instead of tick in the docstring.
1303 * mh-index.el (mh-index-ticked-messages): Since mh-tick-seq is
1304 customizable, use it instead of tick in the docstring.
1306 * mh-seq.el (mh-msg-is-in-seq): Can now specify an alternate
1307 message number with a prefix argument.
1308 (mh-narrow-to-tick): Since mh-tick-seq is customizable, use it
1309 instead of tick in the docstring. Also, use mh-tick-seq instead of
1310 tick in warning message.
1312 2003-08-20 Peter S Galbraith <psg@debian.org>
1314 * mh-customize.el: setq mh-variant to 'none when byte-compiling,
1315 since we don't care what MH variant (if any) is on the system at
1318 * mh-init.el (mh-variant-set): Don't probe for MH variant when
1319 mh-variant is set to'none (during byte-compilation).
1321 2003-08-19 Peter S Galbraith <psg@debian.org>
1323 * mh-pick.el (mh-pick-single-dash): New defconst. Search
1324 components that are supported by single-dash option in
1326 (mh-pick-regexp-builder): Use `mh-pick-single-dash' and adapt
1327 patch from Sergey Poznyakoff.
1329 * mh-comp.el (mh-reply): mu-mh supports `repl -group', thanks to
1332 * mh-init.el: checkdoc fixes.
1334 2003-08-19 Bill Wohler <wohler@newt.com>
1336 * mh-seq.el: (mh-edit-pick-expr): Renamed from mh-read-pick-regexp
1337 since the new name is more indicative of what the function does.
1338 Prompt now says "Pick expression" instead of "Pick regexp".
1339 (mh-narrow-to-subject): Rewrote function to behave like other
1341 (mh-narrow-to-header-field, mh-narrow-to-range)
1342 (mh-narrow-to-tick): s/regexp/pick-expr/.
1343 (mh-widen, mh-narrow-to-from, mh-narrow-to-cc, mh-narrow-to-to):
1344 Synced docstrings with manual
1346 2003-08-19 Bill Wohler <wohler@newt.com>
1348 * Released MH-E version 7.4.2.
1350 * MH-E-NEWS, README: Updated for release 7.4.2.
1352 * mh-e.el (Version, mh-version): Updated for release 7.4.2.
1354 * mh-e.el (mh-folder-size, mh-folder-size-folder)
1355 (mh-folder-size-flist): If flist is not present use folder to find
1356 the number of messages in the folder. Also the .mh_sequences file
1357 is read to find the number of unseen messages (patch from 1.349
1358 and branched for 7.4.2, closes SF #791021).
1360 * mh-utils.el (mh-flists-present-flag, mh-find-progs): Introduce a
1361 new variable to test for the presence of the flists program and
1362 set it in mh-find-progs.
1363 (mh-collect-folder-names): Use folders instead of flists. One
1364 advantage is that folders is available on MH while flists is not.
1365 Another is that if an explicit -sequence argument isn't given and
1366 Unseen-Sequence profile is not present then flists croaks while
1368 (mh-collect-folder-names-filter): Don't consider folder names that
1369 start with a `.' character. This is needed since the folders
1370 command doesn't filter them out like flists does.
1371 (patches from 1.307 and 1.309 and branched for 7.4.2, closes SF
1374 2003-08-18 Bill Wohler <wohler@newt.com>
1376 * mh-index.el (mh-index-sequenced-messages)
1377 (mh-index-new-messages, mh-index-ticked-messages): Updated
1378 docstrings from manual (closes SF #718833).
1380 * mh-customize.el (mh-variant): Checkdoc fix.
1381 (mh-index-new-messages-folders): Don't mention defvar in
1382 docstring, use `+inbox' instead.
1383 (mh-index-ticked-messages-folders): Don't mention defvar in
1384 docstring, use `tick' instead.
1386 * mh-comp.el (mh-repl-group-formfile): Checkdoc fix.
1388 2003-08-18 Peter S Galbraith <psg@debian.org>
1390 * mh-init.el (mh-variant-set, mh-sys-path, mh-variant-info): Add
1391 support for GNU mailutils.
1392 (mh-variant-mu-mh-info): New function to detect mu-mh and return
1393 info about it for `mh-variants'.
1395 * mh-e.el (mh-regenerate-headers): mu-mh has different error
1396 message for a invalid mesage list.
1398 2003-08-18 Peter S Galbraith <psg@debian.org>
1400 * mh-customize.el (mh-e): New defgroup. Sort of an alias for the
1401 'mh group that a user might be more likely to find.
1403 2003-08-18 Bill Wohler <wohler@newt.com>
1405 * mh-comp.el (mh-insert-auto-fields-done-local): Docstring tweak.
1406 (mh-compose-and-send-mail): Do not call mh-insert-auto-fields.
1407 This should be done only once in mh-send-letter.
1409 2003-08-18 Peter S Galbraith <psg@debian.org>
1411 * mh-comp.el (mh-letter-mode): Call `mh-find-path unconditionally,
1412 like elsewehere in MH-E.
1414 * mh-utils.el (mh-find-path): Run setup code only if
1415 `mh-find-path-run' is nil such that this is only done once.
1416 Also remove the `setq' for `read-mail-command' and `mail-user-agent'.
1418 2003-08-18 Peter S Galbraith <psg@debian.org>
1420 * mh-e.el: require 'mh-utils first
1422 * mh-customize.el (mh-variant): defcustom moved here.
1424 * mh-init.el (mh-variants): Made an mh-autoload.
1426 2003-08-18 Peter S Galbraith <psg@debian.org>
1428 * Makefile (MH-E-SRC): Added mh-init.el to MH-E-SRC.
1430 * mh-utils.el (mh-find-progs): Deleted. Make obsolete by mh-init.el.
1431 (mh-find-path): Call `mh-variants' instead of now obsolete
1433 (mh-path-search): Deleted. Was only used by `mh-find-progs'.
1435 * mh-e.el: require mh-init.el.
1436 (mh-version): Use simpler `mh-variant-in-use'.
1437 (mh-scan-format): Use (mh-variant-p 'nmh) instead of mh-nmh-flag.
1439 * mh-comp.el (mh-insert-x-mailer): Use simpler `mh-variant-in-use'.
1441 * mh-utils.el (mh-progs, mh-lib, mh-lib-progs)
1442 (mh-flists-present-flag): Moved to mh-init.el.
1443 (mh-nmh-flag): Deleted. Use (mh-variant-p 'nmh) instead.
1445 * mh-comp.el (mh-repl-group-formfile, mh-forward, mh-reply)
1446 (mh-send-letter): Use (mh-variant-p 'nmh) instead of mh-nmh-flag.
1448 * mh-mime.el (mh-edit-mhn, mh-mime-save-parts): Use (mh-variant-p
1449 'nmh) instead of mh-nmh-flag.
1451 2003-08-16 Bill Wohler <wohler@newt.com>
1453 * mh-customize.el (mh-folder-selection): New group to hold
1454 variables described in Folder Selection section in manual.
1455 (mh-default-folder-list, mh-default-folder-must-exist-flag,
1456 mh-default-folder-prefix): Moved to mh-folder-selection group.
1457 Updated docstrings per manual update.
1458 (mh-default-folder-for-message-function): New defcustom. Was a
1459 defvar in mh-utils.el. Updated docstring per manual update.
1461 * mh-utils.el (mh-default-folder-for-message-function): Moved to
1464 * mh-e.el (mh-folder-from-address, mh-prompt-for-refile-folder):
1465 Updated docstrings per manual update.
1467 * mh-unit.el (mh-unit-files): Added mh-init.el.
1469 2003-08-16 Peter S Galbraith <psg@debian.org>
1471 * mh-init.el: New file. Code to initialize the MH-E back-end.
1473 (mh-variant): New defcustom. Users may customize `mh-variant' to
1474 switch between available variants.
1475 (mh-variants): Available MH variants are described in this variable.
1476 (mh-variant-in-use, mh-variant-p): Developers may check which
1477 variant is currently in use with the variable `mh-variant-in-use'
1478 or the function `mh-variant-p'.
1480 2003-08-15 Bill Wohler <wohler@newt.com>
1482 * mh-customize.el (mh-auto-fields-list): The manual uses Fcc
1483 instead of fcc, so I've changed the user-visible text
1484 accordingly. I've left the const alone for backwards
1487 2003-08-14 Bill Wohler <wohler@newt.com>
1489 * mh-identity.el (mh-insert-identity): Changed signature deletion
1490 test to test for both markers, rather than testing to see if the
1491 start marker is bound. Since the start marker is defined in this
1492 file, it should always be bound. Suggestion by Satyaki.
1494 * mh-comp.el (mh-send-letter): Go to the top of the draft so that
1495 the user can see which header fields have been inserted. I think
1496 this is more important than leaving point alone or going to the
1497 end to see the signature since Mail-Followup-To or Bcc or cc could
1498 have some deleterious effects.
1500 * mh-customize.el (mh-auto-fields-prompt-flag): New variable.
1501 Non-nil means to prompt before sending if fields inserted.
1503 * mh-comp.el (mh-insert-auto-fields): Now return t if fields
1504 inserted; otherwise nil.
1505 (mh-send-letter): Deleted obsolete documentation about adding
1506 X-Mailer and X-Face. Prompt before sending if auto fields added
1507 and mh-auto-fields-prompt-flag is t.
1509 * mh-customize.el (mh-identity-list): Allow signature to come from
1510 mh-signature-file-name. In this case, the "signature" value is set
1511 to nil. This might not be the best implementation. Suggestions
1514 * mh-identity.el (mh-insert-identity): Now that the signature can
1515 be a nil value, moved test higher up in cond so that the test for
1516 a nil value would not be executed first prevening signature
1517 handling. Handle nil signature value by calling
1518 mh-insert-signature with no arguments which means to use
1519 mh-signature-file-name.
1521 * mh-comp.el (mh-insert-signature): Changed text of message if no
1524 * mh-customize.el (mh-identity-list): Changed "Signature" constant
1525 back to "signature" so it *won't* be backwards-incompatible any
1526 more. I discovered one could use the :tag keyword to get headline
1527 captalization in the menu.
1529 * mh-identity.el (mh-insert-identity): Ditto.
1531 * mh-identity.el (mh-identity-make-menu): Always build menu.
1532 Always create Insert Auto Fields menu item. Just don't enable it
1533 if mh-auto-fields-list is nil. Enable radio buttons always. Make
1534 None a radio button choice with the other identities.
1536 * mh-comp.el (mh-letter-menu): Removed cond on fboundp
1537 'easy-menu-define. We don't do this elsewhere.
1539 2003-08-13 Bill Wohler <wohler@newt.com>
1541 * mh-identity.el (mh-identity-make-menu, mh-insert-identity): Use
1542 headline capitalization in menu items. Even the internal names are
1543 exposed in the customize interface, so they need to be uppercase
1545 (mh-insert-identity): Rather than goto-char to
1546 mh-identity-signature-start before deleting, simply pass it to
1547 delete-region. When setting markers, use point-min-marker and
1548 point-max-marker instead of moving point. Set marker type of
1549 mh-identity-signature-start to t to fix a bug where changing
1550 identity deleted user's text.
1552 * mh-customize.el (mh-identity-list, mh-auto-fields-list):
1553 Reworked docstring. Use headline capitalization. Commented out
1554 implementation details for later deletion or resurrection upon
1555 popular demand. N.B. If your mh-identity-list contains "signature"
1556 then you will need to either edit your .emacs file manually, or
1557 delete your existing "signature" which will become a regular field
1558 with this change and create a new signature. I figured I could get
1559 away with this since 8.0 is a major release, and coinciding with
1560 the manual update will be a MAJOR release. I apologize profusely
1561 that I didn't catch this before it was released.
1562 (mh-identity-default): Use headline capitalization in example.
1564 2003-08-12 Jeffrey C Honig <jch@honig.net>
1566 * mh-customize.el (mh-alias-reloaded-hook): Define
1567 `mh-alias-reloaded-hook'.
1569 * mh-alias.el (mh-alias-reload): Run `mh-alias-reloaded-hook'
1570 after reloading the aliases.
1572 2003-08-12 Mark D. Baushke <mdb@gnu.org>
1574 * mh-comp.el (mh-insert-signature): Use functionp to avoid
1575 the possibility of doing a funcall on a void function.
1577 2003-08-12 Bill Wohler <wohler@newt.com>
1579 * mh-customize.el (mh-identity): Point group manual link to new
1581 (mh-signature-separator-flag): New variable which can be used to
1582 suppress the output of the signature separator.
1584 * mh-comp.el (mh-insert-signature): Use
1585 mh-signature-separator-flag.
1587 * mh-identity.el (mh-insert-identity): If the identity's signature
1588 file didn't exist, an fboundp error was thrown. This was fixed by
1589 removing signature tests that were redundant and out of date with
1590 the tests in mh-insert-signature. Removed second signature
1591 condition as it is now handled in the first signature condition.
1593 2003-08-12 Peter S Galbraith <psg@debian.org>
1595 * mh-identity.el (mh-insert-identity): Don't insert new lines on
1598 * mh-comp.el (mh-insert-signature): Make sure signature file is
1599 readable before trying to insert it.
1601 2003-08-11 Bill Wohler <wohler@newt.com>
1603 * mh-comp.el (mh-insert-signature): Unconditionally insert a
1604 newline so that signatures are inserted consistently, and so that
1605 there isn't any text after the cursor so that the user can start
1606 typing his message immediately. Use new variable and function
1607 mh-signature-separator and mh-signature-separator-p.
1609 * mh-customize.el (mh-delete-yanked-msg-window-flag): Checkdoc
1611 (mh-signature-file-name): Updated docstring now that this variable
1612 can be a function. Added cross-references to
1613 mh-signature-separator, mh-signature-separator-regexp, and
1614 mh-signature-separator-p which might be used in such functions.
1616 * mh-identity.el (mh-insert-identity): Don't include signature if
1617 signature separator already present. Useful when running
1620 * mh-mime.el (mh-inline-vcard-p): Use mh-signature-separator-p.
1622 * mh-utils.el (mh-signature-separator-regexp): New variable
1623 containing "^-- $" which should be used when looking for the
1624 signature separator.
1625 (mh-signature-separator): New variable containing "-- \n" which
1626 should be used when inserting the signature separator.
1627 (mh-signature-separator-p): New function that returns non-nil if
1628 mh-signature-separator-regexp is found in the buffer.
1630 2003-08-09 Satyaki Das <satyakid@stanford.edu>
1632 * mh-utils.el (mh-x-image-scaling-function): Variable that
1633 contains function used to scale images. Possible choices are
1634 mh-x-image-scale-with-convert and mh-x-image-scale-with-pnm.
1635 (mh-convert-executable): Removed.
1636 (mh-x-image-scale-with-pnm, mh-x-image-scale-with-convert): New
1637 functions that scale images using pnm tools or ImageMagick.
1638 (mh-x-image-scale-and-display, mh-x-image-url-display): Use
1639 mh-x-image-scaling-function instead of mh-convert-executable.
1641 2003-08-08 Peter S Galbraith <psg@debian.org>
1643 * mh-comp.el (mh-insert-signature): Bug fix. Handle case of nil
1644 `mh-signature-file-name' and hooks correctly.
1646 * mh-identity.el (mh-insert-identity): Refactor to use
1649 * mh-comp.el (mh-signature-separator-p): Removed.
1651 * mh-comp.el (mh-insert-signature): Merge MIME awareness from
1652 mh-insert-identity into this command. Allow
1653 `mh-signature-file-name' to be a function to call. See if "-- "
1654 needs to be inserted only after hooks have run.
1656 2003-08-07 Bill Wohler <wohler@newt.com>
1658 * mh-customize.el (mh-compose-skipped-header-fields): Added
1660 (mh-autoload): Removed cookies. They aren't necessary in
1661 mh-e.el, mh-utils.el, or mh-customize.el.
1663 * mh-e.el (mh-autoload): Removed cookies. They aren't necessary in
1664 mh-e.el, mh-utils.el, or mh-customize.el.
1666 * mh-identity.el (mh-insert-identity): Made regexp for signature
1667 separator more explicit. Hmmm, maybe we should create
1668 mh-signature-separator-regexp...
1670 * mh-index.el (mh-replace-string): Moved to mh-utils.el.
1672 * mh-utils.el (mh-replace-string): Moved here from mh-index.el.
1673 (mh-autoload): Removed cookies. They aren't necessary in mh-e.el,
1674 mh-utils.el, or mh-customize.el.
1676 * mh-comp.el (mh-insert-signature): Added file argument to insert
1677 a file other than mh-signature-file-name. Insert signature
1678 separator, unless file already contains one.
1680 2003-08-06 Satyaki Das <satyakid@stanford.edu>
1682 * mh-e.el (mh-folder-size, mh-folder-size-folder)
1683 (mh-folder-size-flist): If flist is not present use folder to
1684 find the number of messages in the folder. Also the .mh_sequences
1685 file is read to find the number of unseen messages.
1687 * mh-utils.el (mh-flists-present-flag, mh-find-progs): Introduce
1688 a new variable to test for the presence of the flists program and
1689 set it in mh-find-progs.
1691 2003-08-06 Peter S Galbraith <psg@debian.org>
1693 * mh-customize.el: Change the order of `mh-identity-list' and
1694 `mh-auto-fields-list' and remove byte-compilation defvar for
1695 `mh-identity-list'. This fixes a customization bug for
1696 `mh-identity-list', where it wasn't set correctly.
1698 * mh-identity.el (mh-identity-make-menu): mh-auto-fields-list may
1699 not be bound yet when initially loaded.
1701 2003-08-06 Bill Wohler <wohler@newt.com>
1703 * mh-alias.el (mh-alias-add-address-under-point): Removed trailing
1704 period from messages. The conventions say that errors should not
1705 end with a period and that "Foo...done" messages should not end in
1706 a period, but they aren't explicit about messages in general.
1707 Given what the conventions *do* say, and because most of our
1708 messages don't end with a period, let's just say that messages in
1709 general don't end in a period, just like error messages.
1711 * mh-comp.el (mh-extract-rejected-mail, mh-letter-mode-message):
1714 * mh-e.el (mh-refile-a-msg): Ditto.
1716 * mh-funcs.el (mh-undo-folder): Ditto.
1718 * mh-mime.el (mh-mime-save-parts): Ditto.
1720 * mh-seq.el (mh-subject-to-sequence-unthreaded)
1721 (mh-narrow-to-subject, mh-delete-subject): Ditto.
1723 * mh-index.el (mh-index-sequenced-messages)
1724 (mh-index-new-messages, mh-index-ticked-messages): Discovered that
1725 in general we should only use question marks in yes-or-no-p or
1726 y-or-n-p prompts, but not in other prompts that use
1727 completing-read and offer defaults. In these cases, use colons
1728 instead (closes SF #730470).
1730 * mh-mime.el (mh-mime-save-parts): Ditto.
1732 * mh-utils.el (mh-prompt-for-folder): Ditto.
1734 * mh-alias.el (mh-alias-apropos): Multiple messages are usually
1735 shown one at a time rather than appended. Send output to
1736 mh-aliases-buffer instead of *Help*.
1737 (mh-alias-local-users): Checkdoc fix.
1739 * mh-funcs.el (mh-undo-folder): Removed commented-out code since
1740 its deadline had expired.
1742 * mh-utils.el (mh-aliases-buffer): New buffer name, used in
1745 2003-08-06 Satyaki Das <satyakid@stanford.edu>
1747 * mh-utils.el (mh-x-image-url-cache-canonicalize): Make this
1748 function work for XEmacs too.
1749 (mh-collect-folder-names): Use folders instead of flists. One
1750 advantage is that folders is available on MH while flists is not.
1751 Another is that if an explicit -sequence argument isn't given and
1752 Unseen-Sequence profile is not present then flists croaks while
1754 (mh-collect-folder-names-filter): Don't consider folder names that
1755 start with a `.' character. This is needed since the folders
1756 command doesn't filter them out like flists does.
1758 * mh-index.el (mh-replace-string): Add autoload for it.
1760 2003-08-05 Satyaki Das <satyakid@stanford.edu>
1762 * mh-mime.el (mh-compose-forward, mh-mhn-compose-forw)
1763 (mh-mml-forward-message): The variable mh-sent-from-msg can be a
1764 list. So check that the value is really a number before using it
1767 * mh-comp.el (mh-insert-letter): Same as above.
1769 * mh-utils.el (mh-picon-get-image): Make the code that finds the
1770 address of the sender more robust.
1771 (mh-face-display-function): Make it work with XEmacs.
1772 (mh-picon-image-types): A new variable that stores what image
1775 2003-08-05 Satyaki Das <satyakid@stanford.edu>
1777 * mh-customize.el (mh-tool-bar-define): Make the save button such
1778 that is activated only if the buffer needs to saved.
1780 * mh-utils.el (mh-face-display-function, mh-picon-get-image): Some
1781 domains, for instance cs.cmu.edu, don't have xpm files. So we need
1782 to search for all three files. The change does that.
1783 (mh-picon-file-contents): A utility function to return the
1784 contents of a file as a string.
1785 (mh-picon-get-image): Write it as a loop to make it simpler.
1786 (mh-x-image-set-download-state): Make the link simpler.
1788 2003-08-04 Satyaki Das <satyakid@stanford.edu>
1790 * mh-utils.el (mh-x-image-url-display): Don't bother to try to
1791 download image if we don't have the necessary tools to display
1793 (mh-face-display-function): Add preliminary support for "domain"
1795 (mh-picon-get-image, mh-picon-generate-path): Functions to find
1796 best match for domain in the From header field.
1798 * mh-e.el (mh-previous-unread-msg): If some of the messages in the
1799 unseen sequence are not present in the folder buffer then calling
1800 this function gets stuck and can't skip over them. The change
1802 (mh-next-unread-msg): Same as above.
1804 2003-08-04 Bill Wohler <wohler@newt.com>
1806 * mh-utils.el (mh-show-mode): Added cross reference to
1807 mh-folder-mode in docstring (closes SF #728638). Added
1808 \\{mh-show-mode-map} to show keymap.
1810 * mh-e.el (mh-folder-mode): Added information about ranges to
1811 docstring (closes SF #728638).
1813 * mh-speed.el (mh-speed-refresh): New function that calls
1814 mh-speed-flists and mh-invalidate-map.
1815 (mh-folder-speedbar-key-map): Replaced keybindings for
1816 mh-speed-invalidate-map and mh-speed-flists with a single binding
1817 for mh-speed-refresh.
1818 (mh-folder-speedbar-menu-items): Replaced menu items for Run
1819 Flists and Invalidate Cached Folders with the single menu item
1820 Refresh Speedbar in order to simplify the UI.
1822 * mh-customize.el (mh-fetch-x-image-url): Added DOS as another
1823 reason not to set this to t.
1825 2003-08-04 Satyaki Das <satyakid@stanford.edu>
1827 * mh-e.el (mh-scan-folder): Handle ranges from user input properly.
1829 2003-08-03 Satyaki Das <satyakid@stanford.edu>
1831 * mh-utils.el (mh-find-msg-get-num): Removed. If threading isn't
1832 present, the messages are sorted by index. So `mh-goto-msg' was
1833 implemented as a binary search and this function was used in that
1834 implementation. So this isn't needed any more.
1835 (mh-msg-search-pat): Removed. Before the advent of message
1836 threading, this function was used to generate a regexp used to
1837 search for a particular message. It isn't used anymore. The
1838 variable `mh-scan-msg-number-regexp' should be updated and used in
1839 `mh-goto-msg' instead of hardcoding the regexp in the code. Then
1840 we might be able to better support other scan line formats in the
1843 * mh-seq.el (mh-map-to-seq-msgs, mh-notate-seq): Removed. These
1844 functions were used to notate user sequences. But calling
1845 `mh-goto-msg' inside of a loop is inefficient. So the sequence
1846 notation code was rewritten thereby making these functions
1848 (mh-copy-line-to-point): Removed. This function was used in the
1849 implementation the now removed function `mh-copy-seq-to-point'.
1850 That function was problematic and was replaced by the less general
1851 `mh-copy-seq-to-eob'. This makes `mh-copy-line-to-point'
1853 (mh-region-to-msg-list): Removed since this is a special case of
1854 the more general `mh-range-to-msg-list'.
1856 * mh-loaddefs.el: Regenerated.
1858 2003-08-03 Jeffrey C Honig <jch@honig.net>
1860 * mh-customize.el (mh-invisible-header-fields-default): Added
1861 several new fields to hide. Sorted the list with sort-lines.
1863 2003-08-03 Peter S Galbraith <psg@debian.org>
1865 * mh-customize.el (mh-invisible-headers): Variable renamed to
1866 `mh-invisible-header-fields-compiled'.
1867 (mh-invisible-headers): Implement above change.
1869 * mh-utils.el (mh-display-msg): Idem.
1871 * mh-mime.el (mh-mm-inline-message): Idem.
1873 * mh-comp.el (mh-insert-letter): Idem.
1875 2003-08-03 Bill Wohler <wohler@newt.com>
1877 * mh-speed.el (mh-folder-speedbar-menu-items): Added separator
1878 between standard and MH-E menu items. Use headline capitalization
1881 * mh-utils.el (mh-temp-fetch-buffer): New constant to hold
1882 buffer name for wget output.
1883 (mh-x-image-url-fetch-image): Use mh-temp-fetch-buffer instead
1884 of hard-coded buffer name. Use make-temp-file to avoid race
1885 conditions and subsequent security issues raised in make-temp-name
1888 2003-08-03 Satyaki Das <satyakid@stanford.edu>
1890 * mh-utils.el (mh-wget-executable, mh-wget-choice, mh-wget-option)
1891 (mh-x-image-url-fetch-image): Support the use of `curl' and
1892 `fetch' as alternatives to `wget'.
1893 (mh-wget-choice): Change order of search.
1894 (mh-x-image-url-fetch-image): Rename buffer.
1896 2003-08-03 Satyaki Das <satyakid@stanford.edu>
1898 * mh-utils.el (mh-x-image-set-download-state)
1899 (mh-x-image-get-download-state): Specially named symbolic links
1900 are used to keep track of whether a X-Image-URL header field needs
1901 to downloaded the next time it is seen. These functions get and
1902 set the symlinks appropriately.
1903 (mh-x-image-url-fetch-image): Simplified since the query has been
1904 moved to `mh-x-image-url-display'. Also if wget isn't present then
1905 try again next time since the user might install wget before
1907 (mh-x-image-scale-and-display): Handle absence of the `convert'
1908 program better. If it isn't present then we will try to display
1909 the image the next time it is encountered. Also use the -geometry
1910 option to convert since the -resize option isn't present in older
1912 (mh-x-image-url-display): Move all the code that decides whether
1913 an X-Image-URL header field will be fetched in this function. Also
1914 remember the user's decision so that if the image couldn't be
1915 fetched the first time, we will try to fetch it later on without
1918 2003-08-02 Peter S Galbraith <psg@debian.org>
1920 * mh-alias.el (mh-alias-local-users): Exclude all aliases already
1921 in mh-alias-alist from `ali' (closes SF #772595).
1923 2003-08-01 Satyaki Das <satyakid@stanford.edu>
1925 * mh-utils.el (mh-x-image-display, mh-x-image-url-display): Avoid
1926 a race. The X-Image-URL is displayed asynchronously. Suppose a
1927 message with a image is shown with `mh-show'. If a different
1928 message is displayed before the image can be fetched, then the new
1929 message will have the image displayed. With this change the race
1930 is less likely to happen.
1932 2003-08-01 Peter S Galbraith <psg@debian.org>
1934 * mh-inc.el (mh-inc-spool-map): Fix what `mh-inc-spool-map-help'
1935 must look like as a fake `mh-help-messages' in order to work
1936 correctly in mh-help.
1938 2003-07-31 Bill Wohler <wohler@newt.com>
1940 * mh-inc.el (mh-inc-spool-map): Use mh-help instead of
1941 mh-ephem-message in order to display help in its own buffer
1942 instead of minibuffer.
1944 * mh-utils.el (mh-help-buffer): New variable to hold the name of
1945 the MH-E help buffer name.
1947 * mh-funcs.el (mh-help, mh-prefix-help): Use with-electric-help to
1948 display help messages. I observed a friend with a vision
1949 disability and the 5 seconds the help appeared on the screen was
1950 not long enough for him to lock on it. I've therefore changed the
1951 help function to display the help in its own buffer called *MH-E
1952 Help* (closes SF #493740 and SF #656631).
1954 * mh-customize.el (mh-fetch-x-image-url): Changed default from nil
1955 to 'ask. Updated docstring from manual.
1956 (mh-invisible-header-fields-internal): Added X-Image-URL.
1957 (mh-show-use-xface-flag): Updated docstring from manual.
1958 (mh-x-face-file): Ditto.
1960 * mh-mime.el (mh-mhn-compose-external-type): Don't insert the
1961 directory parameter if it's nil. The mhbuild man page indicates
1962 that this parameter is optional, so this should be fine.
1964 * mh-comp.el (mh-letter-mode-map): Added keybindings for
1965 mh-mhn-compose-anon-ftp and
1966 mh-mhn-compose-external-compressed-tar.
1967 (mh-letter-menu): Uncommented menu items for same.
1969 2003-07-30 Satyaki Das <satyakid@stanford.edu>
1971 * mh-loaddefs.el: Regenerated.
1973 * mh-pick.el (mh-do-pick-search): Removed since the function
1974 `mh-pick-do-search' performs the same action as this function.
1976 * mh-index.el (mh-index-update-unseen): Removed since the
1977 generalized sequence synchronization code that keeps sequences in
1978 index folders in sync with the sequences in the source folders
1979 makes this function redundant.
1981 * mh-e.el (mh-folder-unseen-seq-name, mh-folder-unseen-seq-list):
1982 Removed. These two functions were used in the unseen sequence
1983 highlighting before the sequence highlighting code was
1984 generalized. In any event calls to the function
1985 `mh-folder-unseen-seq-name' can be replaced by the variable
1986 `mh-unseen-seq' and calls to `mh-folder-unseen-seq-list' can be
1987 replaced with (cdr (assoc mh-unseen-seq mh-seq-list)).
1988 (mh-unmark-all-headers): Removed since this function has been
1989 superseded by mh-remove-all-notation.
1990 (mh-map-over-seqs): Removed since we now have the generalized
1991 iteration over message ranges (the `mh-iterate-on-range' macro)
1992 that can be used instead.
1993 (mh-notate-if-in-one-seq): Removed. This function was used for
1994 changing the `%' notation for user sequences. It can't be used for
1995 that purpose any more, since we have a different scheme now.
1997 * mh-unit.el (mh-unit-tests): Removed since it isn't needed any
1999 (mh-unit): Run all function that start with the string
2002 2003-07-30 Bill Wohler <wohler@newt.com>
2004 * mh-customize.el (mh-invisible-header-fields): Checkdoc fix.
2006 * mh-utils.el (mh-x-image-url-cache-canonicalize): Shortened using
2007 example in files.el:make-backup-file-name-1.
2008 (mh-face-display-function): Added X-Image-URL to docstring.
2010 * mh-unit.el (mh-unit-x-image-url-cache-canonicalize): New
2011 function to test mh-x-image-url-cache-canonicalize since it lent
2012 itself well to unit testing. Had to start somewhere!
2013 (mh-unit-equal): New function that throws an error if RESULT
2014 doesn't equal EXPECTED.
2015 (mh-unit): Call mh-unit-x-image-url-cache-canonicalize.
2017 2003-07-29 Satyaki Das <satyakid@stanford.edu>
2019 * mh-unit.el (mh-unit-update-call-graph): Make the function work
2020 better with dotted lists, that is lists of the form (a b c . d)
2021 where `d' isn't nil. With this we are able to avoid marking some
2022 functions as unused even though they are actually used in alists.
2024 2003-07-28 Peter S Galbraith <psg@debian.org>
2026 * mh-comp.el (mh-insert-letter): Remove `mh-visible-headers'
2029 * mh-mime.el (mh-mm-inline-message): Same.
2031 * mh-utils.el (mh-display-msg): Same.
2032 (mh-clean-msg-header): Make a note of above change.
2034 * mh-customize.el (mh-invisible-header-fields-internal): Renamed
2035 from prior `mh-invisible-header-fields-default'.
2036 (mh-invisible-header-fields-default): Renamed from prior
2037 `mh-invisible-header-fields-default-override'.
2038 (mh-invisible-header-fields): Renamed from prior
2039 `mh-invisible-header-fields-user'.
2040 (mh-visible-headers): Removed! We use invisible fields only now.
2041 (mh-visible-header-fields): Removed!
2043 2003-07-28 Peter S Galbraith <psg@debian.org>
2045 * mh-customize.el (mh-invisible-header-fields-default): Added 3
2048 2003-07-28 Satyaki Das <satyakid@stanford.edu>
2050 * mh-utils.el (mh-show): Add an extra argument to the function so
2051 that interactive use will always force redisplay of the message.
2053 * mh-mime.el (mh-mime-display, mh-mm-inline-message): Bind the
2054 variables `mm-verify-option' and `mm-decrypt-option' so that
2055 verification and decryption of mail can happen without any
2056 additional tinkering.
2058 2003-07-25 Peter S Galbraith <psg@debian.org>
2060 * mh-customize.el (mh-invisible-header-fields-default): New defvar
2061 holding default fields to hide. This replaces the old
2062 `mh-invisible-header-fields' defcustom.
2063 (mh-invisible-header-fields-user): New defcustom. Users add
2064 fields to suppress that we didn't include in
2065 `mh-invisible-header-fields-default'. This could be named simply
2066 `mh-invisible-header-fields' and it wouldn't really break anything
2067 for users who have customized it to a long list now redundant with
2068 `mh-invisible-header-fields-default'.
2069 (mh-invisible-header-fields-default-override): New defcustom.
2070 Users check off the fields they want displyed from what we
2071 included in `mh-invisible-header-fields-default'.
2072 (mh-invisible-headers): Function adapted to new variables.
2074 2003-07-25 Satyaki Das <satyakid@stanford.edu>
2076 * mh-e.el (mh-inc-folder): If the user is in a different folder
2077 displaying a message and runs mh-inc-folder, then the folder
2078 changes to +inbox but the show window continues to display the
2079 message in the old folder. The change fixes this.
2080 (mh-visit-folder): Make the handling of the show window similar to
2081 that of mh-inc-folder.
2083 2003-07-24 Satyaki Das <satyakid@stanford.edu>
2085 * mh-e.el (mh-folder-message-menu, mh-folder-folder-menu): Use the
2086 predicate mh-outstanding-commands-p instead of its exapansion.
2087 Also use the same label in both menus.
2088 (mh-outstanding-commands-p): Generalized so that it will work in
2089 mh-show-mode buffers as well.
2091 * mh-customize.el (mh-tool-bar-define): Enable tool-bar button for
2092 mh-execute-commands only if there are pending deletes or refiles.
2094 2003-07-19 Satyaki Das <satyakid@stanford.edu>
2096 * mh-utils.el (mh-show-msg): If a unseen message is first marked
2097 for deletion/refiling and then displayed, the bold highlighting
2098 does not go away. This change fixes that.
2100 * mh-seq.el (mh-msg-is-in-seq): Fix a bug in the function. If any
2101 message was marked for refiling, then the function would have you
2102 believe that every message in the folder is being refiled.
2104 2003-07-17 Bill Wohler <wohler@newt.com>
2106 * mh-e.el: Removed email address for Stephen Gildea's in Change
2107 Log at his request (damn spammers). Removed other email addresses
2108 while I was at it since the SourceForge URL should be sufficient
2109 contact information.
2111 (mh-scan-format-*mh): Fixed typo in comment above these variables.
2112 These variables are used if mh-scan-format-file is t, not nil.
2113 Also mh-scan-format-file is no longer "above" (courtesy Stephen
2116 2003-07-17 Satyaki Das <satyakid@stanford.edu>
2118 * mh-mime.el (mh-mhn-quote-unescaped-sharp): New function that
2119 quotes `#' characters in the first column that aren't part of a
2121 (mh-mhn-directive-present-p): Generalized to allow the function
2122 to search for MHN directives in a part of the buffer.
2123 (mh-edit-mhn): Quote unescaped `#' characters in the draft (closes
2126 2003-07-16 Satyaki Das <satyakid@stanford.edu>
2128 * mh-alias.el (mh-alias-read-address-map): If
2129 mh-alias-flash-on-comma is nil when mh-alias is loaded, then
2130 setting mh-alias-flash-on-comma to t later on doesn't turn on
2131 address completion display till Emacs is restarted. The change
2134 2003-07-15 Bill Wohler <wohler@newt.com>
2136 * mh-utils.el (mh-cmd-note): Cleaned up docstring (changed phrase
2137 to sentences). Moved to Scan Line Formats section.
2138 (mh-scan-msg-number-regexp)
2139 (mh-scan-msg-overflow-regexp, mh-scan-msg-format-regexp)
2140 (mh-scan-msg-format-string, mh-scan-msg-search-regexp): Cleaned up
2141 docstrings (changed phrases to sentences).
2142 (mh-note-seq): Cleaned up docstring (changed phrase to sentences).
2143 Also, this variable is now a character and not a string. Moved to
2144 Scan Line Formats section.
2146 * mh-funcs.el (mh-note-copied, mh-note-printed): Cleaned up
2147 docstrings (changed phrases to sentences). Also, these variables
2148 are now characters and not strings.
2150 * mh-e.el (mh-scan-format-mh, mh-scan-format-nmh): Filled. I was
2151 hoping to quote the hint `t' but checkdoc wouldn't let me.
2152 (mh-note-deleted, mh-note-refiled, mh-note-cur): Moved to Scan
2153 Line Formats section.
2154 (mh-scan-good-msg-regexp, mh-scan-deleted-msg-regexp)
2155 (mh-scan-refiled-msg-regexp, mh-scan-valid-regexp)
2156 (mh-scan-cur-msg-number-regexp, mh-scan-date-regexp)
2157 (mh-scan-rcpt-regexp, mh-scan-body-regexp)
2158 (mh-scan-subject-regexp, mh-scan-format-regexp): Cleaned
2159 up docstrings (changed phrases to sentences).
2160 (mh-scan-cur-msg-regexp): Marked this variable as obsolete; it
2161 should be removed for 8.0.
2163 * mh-comp.el (mh-note-repl, mh-note-forw, mh-note-dist): Cleaned
2164 up docstrings (changed phrases to sentences). Also, these
2165 variables are now characters and not strings.
2167 2003-07-15 Satyaki Das <satyakid@stanford.edu>
2169 * mh-index.el (mh-index-update-single-msg)
2170 (mh-index-create-sequences): Handle the situation where there are
2171 copies of the exact same message correctly.
2173 2003-07-15 Satyaki Das <satyakid@stanford.edu>
2175 * mh-seq.el (mh-thread-update-scan-line-map): Modified since
2176 notation is already a character.
2178 * mh-utils.el (mh-note-seq): Convert from string to character.
2179 (mh-notate): Modified since characters are used to notate instead
2180 of strings of length one.
2182 * mh-comp.el (mh-note-repl, mh-note-forw, mh-note-dist): Convert
2183 from string to characters.
2185 * mh-e.el (mh-note-deleted, mh-note-refiled, mh-note-cur): Same as
2186 above (closes SF #770772).
2187 (mh-unmark-all-headers): Modified since mh-note-* variables are
2189 (mh-remove-sequence-notation): The mh-notate function remembers
2190 the previous notation. Before the change to the mh-note-*
2191 variables, mh-notate would only remember the change if a string
2192 was used to notate the message. Now mh-notate is always called
2193 with a character notation. So the deletion has to take place
2196 2003-06-28 Bill Wohler <wohler@newt.com>
2198 * mh-mime.el (mh-mhn-directive-present-p): If shell comments are
2199 present that have a space after the # but no content, then this
2200 function would throw an error. This has been fixed (closes SF
2203 2003-06-27 Satyaki Das <satyakid@stanford.edu>
2205 * mh-index.el (mh-index-search): Use the new and improved
2206 mh-index-new-folder.
2207 (mh-index-new-folder): Improved so that redoing the same search
2208 will reuse the old index folder.
2209 (mh-index-folder-search-regexp): New function which that extracts
2210 out the search expression that produced the index folder.
2212 2003-06-24 Bill Wohler <wohler@newt.com>
2214 * mh-e.el (Version, mh-version): Set to 7.4.1+cvs.
2216 2003-06-25 Bill Wohler <wohler@newt.com>
2218 * Released MH-E version 7.4.1.
2220 * MH-E-NEWS, README: Updated for release 7.4.1.
2222 * mh-e.el (Version, mh-version): Updated for release 7.4.1.
2224 2003-06-25 Bill Wohler <wohler@newt.com>
2226 * mh-unit.el (require 'cl): Added. Needed when compiling
2229 * Makefile (clean): Now a double-colon rule. Added a second clean
2230 target to remove mh-unit.elc.
2231 (compile): Removed mh-unit.elc.
2232 (mh-unit.elc): New target used to compile mh-unit.
2234 2003-06-24 Bill Wohler <wohler@newt.com>
2236 * mh-e.el (Version, mh-version): Set to 7.4+cvs.
2238 2003-06-24 Bill Wohler <wohler@newt.com>
2240 * Released MH-E version 7.4.
2242 * MH-E-NEWS, README: Updated for release 7.4.
2244 * mh-e.el (Version, mh-version): Updated for release 7.4.
2246 2003-06-24 Bill Wohler <wohler@newt.com>
2248 * mh-alias.el (mh-alias-gecos-name, mh-alias-local-users)
2249 (mh-alias-suggest-alias): s/gcos/gecos. The original acronym was
2250 GECOS but was later renamed to GCOS (see
2251 http://info.astrian.net/jargon/terms/g/GCOS.html). But the term
2252 really needs to match the field named pw_gecos in struct passwd in
2255 * mh-customize.el (mh-letter-faces): New group to house
2256 mh-letter-header-field-face.
2257 (mh-interpret-number-as-range-flag)
2258 (mh-kill-folder-suppress-prompt-hook): Use "you" instead of "the
2259 user" to make text more friendly.
2260 (mh-index-ticked-messages-folders, mh-visible-headers)
2261 (mh-visible-header-fields): Alphabetized.
2262 (mh-alias-passwd-gcos-comma-separator-flag): Alphabetized and
2264 (mh-alias-local-users-prefix): Fixed docstring. Prefixes are
2265 prepended, not appended. Additional checkdoc fix.
2266 (mh-letter-header-field-face): Set group to new group
2267 mh-letter-faces and moved option into this group.
2269 * mh-index.el (mh-index-sequenced-messages): Improved wording of
2270 docstring and mentioned use of prefix argument.
2272 * mh-seq.el (mh-widen): Made docstring more accurate (hopefully!).
2274 2003-06-18 Satyaki Das <satyakid@stanford.edu>
2276 * mh-index.el (mh-replace-string): Modified to preserve case of
2278 (mh-index-parse-search-regexp): Preserve case of search terms.
2279 This is needed to take advantage of the acronym indexing in
2280 swish++ (closes SF #755718).
2282 2003-06-13 Satyaki Das <satyakid@stanford.edu>
2284 * mh-utils.el (mh-show-index-sequenced-messages): Interactive
2285 function callable from the show buffer.
2286 (mh-show-folder-map): Add key binding for "F q".
2288 * mh-e.el (mh-folder-map): Same as above.
2290 * mh-index.el (mh-index-sequenced-messages): Add interactive spec
2291 to the function (closes SF #718833).
2293 2003-06-13 Bill Wohler <wohler@newt.com>
2295 * mh-index.el (mh-flists-execute): Needed to expand mhpath too.
2297 2003-06-12 Satyaki Das <satyakid@stanford.edu>
2299 * mh-index.el (mh-flists-execute): Modified so that flists
2300 present in mh-progs is called.
2302 2003-06-07 Jeffrey C Honig <jch@honig.net>
2304 * mh-comp.el (mh-forward, mh-forward): Use (mh-mail-header-end) to
2305 find the end of headers instead of doing an re-search-forward
2306 based on mh-mail-header-separator.
2308 2003-06-06 Satyaki Das <satyakid@stanford.edu>
2310 * mh-comp.el (mh-letter-toggle-header-field-display): Make the
2311 function callable from the show buffer. This means that the
2312 buffer is temporarily made writable and the modification status
2313 of the buffer restored to the original value.
2315 2003-06-06 Peter S Galbraith <psg@debian.org>
2317 * mh-utils.el (mh-address-mail-regexp): Bug fix! It wasn't a true
2318 copy of the goto-addr variable. My modification only recognized
2319 addresses with one dot after the @. Sorry about that.
2321 2003-06-05 Satyaki Das <satyakid@stanford.edu>
2323 * mh-utils.el (mh-replace-in-string): Move comment into doc
2324 string to satisfy checkdoc.
2326 * mh-alias.el (mh-alias-apropos): Checkdoc fix.
2328 2003-06-05 Bill Wohler <wohler@newt.com>
2330 * mh-customize.el (mh-identity-list): Fixed typo in docstring.
2332 2003-06-05 Peter S Galbraith <psg@debian.org>
2334 * mh-comp.el (mh-letter-complete-function-alist): Add bcc an reply-to.
2336 2003-06-04 Peter S Galbraith <psg@debian.org>
2338 * mh-comp.el (mh-letter-complete-function-alist): Add dcc.
2340 2003-06-03 Peter S Galbraith <psg@debian.org>
2342 * mh-utils.el (mh-replace-in-string): New function name instead of
2343 `dired-replace-in-string'.
2344 * mh-alias.el (mh-alias-gcos-name): Use it.
2346 * mh-alias.el (mh-alias-apropos): New command. Show all aliases
2347 that match REGEXP either in name or content.
2349 * mh-alias.el (mh-alias-suggest-alias): Add no-comma-swap optional
2351 (mh-alias-canonicalize-suggestion): Change a comma to a period in
2353 (mh-alias-local-users): Call `mh-alias-suggest-alias' with
2354 `no-comma-swap' arg set to t.
2356 * mh-alias.el (mh-alias-local-users): Fix case of nil
2357 `mh-alias-passwd-gcos-comma-separator-flag'.
2359 * mh-alias.el (mh-alias-gcos-name): Fix for case of empty gcos
2361 (mh-alias-local-users): Fix same.
2363 * mh-alias.el (mh-alias-canonicalize-suggestion): Replace use by
2364 verbose `replace-regexp' by a looped `replace-match'
2366 2003-06-02 Peter S Galbraith <psg@debian.org>
2368 * mh-utils.el (dired-replace-in-string): Bind if not already
2369 defined. Borrowed from dired.el
2371 * mh-alias.el (mh-alias-gcos-name): switch to using
2372 dired-replace-in-string.
2374 2003-06-02 Satyaki Das <satyakid@stanford.edu>
2376 * mh-utils.el (mh-letter-font-lock-keywords): Fontify header
2377 fields in the draft buffer that aren't skipped when navigating
2378 with TAB (or S-TAB).
2380 * mh-customize.el (mh-clean-message-header-flag)
2381 (mh-invisible-headers, mh-invisible-header-fields)
2382 (mh-alias-passwd-gcos-comma-separator-flag): Checkdoc fix.
2383 (mh-letter-header-field-face): New face to fontify the header
2386 * mh-comp.el (mh-insert-auto-fields-done-local): Checkdoc fix.
2387 (mh-letter-mode, mh-letter-mail-header-end-marker): Remember the
2388 end of the message header in a marker. This is used to fontify the
2390 (mh-font-lock-field-data, mh-letter-header-end): Functions used
2391 to fontify message header fields.
2393 * mh-alias.el (mh-alias-gcos-name): Checkdoc fix.
2395 2003-06-02 Peter S Galbraith <psg@debian.org>
2397 * mh-alias.el (mh-alias-gcos-name): New function. Return a usable
2398 address string from a GCOS-NAME and USERNAME.
2399 (mh-alias-local-users): Use it.
2401 * mh-customize.el (mh-alias-passwd-gcos-comma-separator-flag): New
2402 defcustom. Whether the gcos field in the passwd file uses comma as
2405 * mh-customize.el (mh-alias-local-users-prefix): New
2406 defcustom. String to append to the real names of users from the
2407 passwd file. If nil, use the username string unmodified instead of
2408 the real name from the gcos field of the passwd file.
2410 * mh-alias.el (mh-alias-local-users): Use it to generate aliases
2411 which by default are now the real name prefixed by "local."
2413 2003-06-01 Peter S Galbraith <psg@debian.org>
2415 * mh-comp.el (mh-modify-header-field): Bug fix. Calling with with
2416 a value that was already inserted causes it to get inserted a
2417 second time. I have wrapped the value around \b word delimiters.
2418 Hope there are no side effects for other code.
2420 * mh-comp.el (mh-insert-auto-fields): Attempt regardless of
2421 `mh-insert-auto-fields-done-local' flag in interactive use.
2423 * mh-comp.el (mh-insert-auto-fields-done-local): Keep track of
2424 whether `mh-insert-auto-fields' was called in a buffer.
2425 (mh-insert-auto-fields): Set it and use it. Also, don't enter an
2426 identity if one was already entered manually.
2427 (mh-send-letter): Call `mh-insert-auto-fields' again when sending
2429 (mh-compose-and-send-mail): Call `mh-insert-auto-fields' _after_
2430 `mh-letter-mode' so `mh-identity-local' doesn't get cleared by the
2433 2003-06-01 Satyaki Das <satyakid@stanford.edu>
2435 * mh-loaddefs.el: Regenerated.
2437 * mh-seq.el (mh-thread-parse-scan-line): The value of
2438 mh-scan-field-from-start-offset was hardcoded in one place. The
2441 * mh-utils.el (mh-show-mode): Setup mh-show-mode to display
2442 elipsis for truncated header fields and to skip over them quickly.
2443 (mh-clean-msg-header): Make another pass over the message header
2444 fields truncating long headers.
2446 * mh-comp.el (mh-letter-complete): Remove unnecessary autoload.
2447 (mh-letter-toggle-header-field-display): Take into account that
2448 an empty line can also end the message header. The function was
2449 originally written with the draft buffer in mind.
2451 2003-06-01 Mark D. Baushke <mdb@gnu.org>
2453 * mh-comp.el (mh-letter-mode-map): Do not steal C-t. Use C-c C-t
2454 for the mh-letter-toggle-header-field-display command.
2456 2003-05-31 Peter S Galbraith <psg@debian.org>
2458 * mh-customize.el (mh-visible-headers): Changed to a defvar that
2459 will be set using new `mh-visible-headers' function using
2460 `mh-visible-header-fields' as input.
2461 (mh-visible-headers): New function, described above.
2462 (mh-visible-header-fields): New defcustom. The UI to set
2463 `mh-visible-headers'.
2464 (mh-invisible-header-fields-set): Deleted. Code merged into
2465 defcustom since it's so short.
2467 2003-05-31 Satyaki Das <satyakid@stanford.edu>
2469 * mh-comp.el (mh-letter-toggle-header-field-display): Extended to
2470 truncate headers if they are too long.
2471 (mh-letter-truncate-header-field): Make code that would be
2472 duplicated into a function.
2473 (mh-letter-hide-all-skipped-fields): Modified so that fields that
2474 are important are hidden if they are too long.
2476 2003-05-31 Satyaki Das <satyakid@stanford.edu>
2478 * mh-utils.el ("tool-bar"): Since tool-bar isn't available on
2479 XEmacs, requiring it causes problems. So load it instead.
2480 (mh-do-at-event-location): New macro to do stuff at location of
2481 events. This has been refactored out of mh-push-button.
2483 * mh-mime.el (mh-push-button): Simplified since it now uses the
2484 mh-do-at-event-location macro.
2486 * mh-comp.el (mh-hidden-header-keymap): Keymap to make mouse
2487 clicks on header toggle its display.
2488 (mh-letter-toggle-header-field-display-button): Interactive
2489 function to toggle header display when mouse button is clicked.
2491 2003-05-31 Peter S Galbraith <psg@debian.org>
2493 * mh-e.el (mh-folder-mode): Remove conditional on tool-bar-mode.
2495 * mh-comp.el (mh-letter-mode): Same.
2497 * mh-utils.el (mh-show-mode): Same.
2499 2003-05-30 Satyaki Das <satyakid@stanford.edu>
2501 * mh-utils.el (tool-bar): Load tool-bar explicitly. This avoids
2502 problems with incorrect initialization of tool-bar-map otherwise.
2504 2003-05-30 Peter S Galbraith <psg@mixed.dyndns.org>
2506 * mh-comp.el (mh-modify-header-field): Minor fix of spaces for
2507 when an entry already existed.
2508 (mh-insert-auto-fields): Make interactive. Add optional `quiet'
2509 arg for use when called systematically on every buffer. Won't be
2510 used interactively for more verbose output.
2511 (mh-letter-mode-map): Add \C-c\M-d keybinding for
2512 mh-insert-auto-fields.
2514 * mh-identity.el (mh-identity-make-menu): Add a menu entry in
2515 Identity menu for mh-insert-auto-fields.
2517 * mh-customize.el (mh-invisible-header-fields): Add entries for
2518 `Envelope-to' and `X-Original-To'.
2520 2003-05-30 Satyaki Das <satyakid@stanford.edu>
2522 * mh-comp.el (mh-letter-mode): Skip over invisible text quickly.
2524 2003-05-30 Satyaki Das <satyakid@stanford.edu>
2526 * mh-comp.el (mh-letter-mode): Use text properties to achieve
2527 invisibility. This is more portable and the same code can be used
2528 for all Emacs versions.
2529 (mh-letter-toggle-header-field-display): Rewritten to use text
2531 (mh-dead-overlay-p, mh-letter-hidden-header-fields)): Removed.
2533 2003-05-29 Satyaki Das <satyakid@stanford.edu>
2535 * mh-comp.el (mh-letter-hidden-header-fields, mh-letter-mode): Add
2536 a hash table, initialized it in mh-letter-mode, to remember the
2537 overlays introduced to hide long headers fields.
2538 (mh-insert-x-mailer): checkdoc fix.
2539 (mh-compose-and-send-mail): Hide unimportant message header
2541 (mh-letter-header-field-regexp, mh-letter-header-field-at-point)
2542 (mh-letter-next-header-field, mh-letter-previous-header-field):
2543 Add a variable that contains the header-field name regexp and use
2544 it instead of the regexp directly.
2545 (mh-letter-toggle-header-field-display, mh-letter-mode-map): Add
2546 new key binding in mh-letter-mode that toggles display of long
2547 header fields, in mh-letter-mode.
2548 (mh-dead-overlay-p): A predicate which checks if a given header
2549 field has an active overlay hiding it.
2550 (mh-letter-hide-all-skipped-fields): New function that shortens
2551 uninteresting headers.
2553 2003-05-29 Eric Ding <ericding@acorn.bethesda.net>
2555 * mh-comp.el (mh-letter-next-header-field-or-indent): Call
2556 indent-relative rather than indent-for-tab-command.
2558 2003-05-29 Satyaki Das <satyakid@stanford.edu>
2560 * mh-comp.el (mh-letter-complete-or-space): The meaning of the
2561 customizable variable was reversed. Also make the doc string more
2564 2003-05-28 Satyaki Das <satyakid@stanford.edu>
2566 * mh-customize.el (mh-compose-skipped-header-fields): New
2567 customizable variable that lists headers that are skipped.
2568 (mh-compose-space-does-completion-flag): Option to do completion
2569 with space (closes SF #745634).
2571 * mh-comp.el (mh-insert-x-mailer): Check the value of
2572 mh-insert-x-mailer-flag in this function instead of in its caller.
2573 (mh-compose-and-send-mail, mh-send-letter): Insert X-Mailer and
2574 X-Face headers when the draft is first presented to the user
2575 instead of when the mail is sent (closes SF #745624).
2576 (mh-letter-complete-or-space): Allow for this key binding to be
2578 (mh-letter-next-header-field): Fix a problem with multiline header
2580 (mh-letter-next-header-field, mh-letter-previous-header-field):
2581 Make these functions skip unwanted header fields.
2582 (mh-letter-skipped-header-field-p): New predicate that checks if a
2583 header field is to be skipped.
2585 * mh-seq.el (mh-thread-inc): Inc'ing email in threaded mode was
2586 causing duplication of the current notation. The change fixes that.
2588 2003-05-28 Satyaki Das <satyakid@stanford.edu>
2590 * mh-comp.el (mh-beginning-of-word): Generalize it to skip
2591 arbitrary number of words.
2592 (mh-letter-complete-or-space): New interactive function that
2593 allows space character to be used for completion.
2594 (mh-letter-mode-map): Add key binding to allow space to be used
2597 2003-05-27 Satyaki Das <satyakid@stanford.edu>
2599 * mh-customize.el (mh-compose-prompt-flag): Customizable variable
2600 that controls whether the user is prompted when composing a draft.
2601 It replaces mh-dont-prompt-for-address-flag (closes SF #745622).
2603 * mh-comp.el (mh-letter-next-header-field): If the point is in
2604 the header field name, then go the start of the header field
2605 instead of the next field.
2606 (mh-interactive-read-address, mh-interactive-read-string)
2607 (mh-letter-adjust-point): Use mh-compose-prompt-flag instead of
2608 mh-dont-prompt-for-address-flag.
2610 2003-05-27 Satyaki Das <satyakid@stanford.edu>
2612 * mh-customize.el (mh-tool-bar-define): Fix incorrect usage of
2613 set-specifier (closes SF #745655). Also the button enabling code
2614 interacts poorly with font-lock in XEmacs. So disable that.
2616 2003-05-26 Satyaki Das <satyakid@stanford.edu>
2618 * mh-e.el (mh-folder-from-address): The function
2619 message-fetch-field expects that the buffer is narrowed to the
2620 mail header. The change makes sure that this is indeed the case.
2622 * mh-mime.el (mh-add-missing-mime-version-header)
2623 (mh-decode-message-body): Same as above.
2625 2003-05-25 Satyaki Das <satyakid@stanford.edu>
2627 * mh-alias.el (mh-alias-minibuffer-confirm-address): Modified to
2628 use mh-beginning-of-word.
2630 * mh-comp.el (mh-letter-confirm-address): Calling
2631 mh-alias-reload-maybe can be expensive. So do it only if we really
2634 2003-05-25 Satyaki Das <satyakid@stanford.edu>
2636 * mh-loaddefs.el: Regenerated.
2638 * mh-comp.el (mh-letter-confirm-address): Load aliases if not yet
2641 * mh-alias.el (mh-alias-reload-maybe): Autoload it since it is
2644 2003-05-24 Satyaki Das <satyakid@stanford.edu>
2646 * mh-comp.el (mh-letter-skip-leading-whitespace-in-header-field):
2647 New function to skip leading space and tab characters when placing
2648 point in a header field.
2649 (mh-letter-next-header-field, mh-letter-previous-header-field):
2650 Skip leading whitespace when using TAB to navigate to header
2652 (mh-letter-confirm-address): New interactive function that
2653 displays the last expansion of the last alias when "," is typed.
2654 (mh-letter-mode-map): Add key binding for "," (closes SF #745634).
2656 2003-05-23 Satyaki Das <satyakid@stanford.edu>
2658 * mh-comp.el (mh-edit-again, mh-forward, mh-send)
2659 (mh-send-other-window, mh-send-sub): Modified so that if
2660 mh-dont-prompt-for-address-flag is non-nil, then MH-E won't prompt
2661 for addresses to send mail to and instead directly jump to the
2662 draft (closes SF #745622).
2663 (mh-letter-complete-function-alist): An alist that is used to
2664 decide which completion function to use in which header. This
2665 variable should probably be customizable.
2666 (mh-letter-complete): Now uses mh-letter-complete-function-alist.
2667 (mh-letter-header-field-at-point, mh-letter-next-header-field)
2668 (mh-letter-next-header-field-or-indent)
2669 (mh-letter-previous-header-field): Commands for easier navigation
2671 (mh-dont-prompt-for-address-flag): Variable which controls
2672 whether MH-E prompts for addresses.
2673 (mh-interactive-read-address, mh-interactive-read-string): Two
2674 functions to ask user for input depending on the value of the
2676 (mh-letter-adjust-point): New function that sets point to the
2678 (mh-letter-mode-map): Add key bindings for TAB and S-TAB (closes
2681 2003-05-23 Satyaki Das <satyakid@stanford.edu>
2683 * mh-loaddefs.el: Regenerated.
2685 * mh-comp.el (mh-complete-word): New function which is
2686 approximately equivalent to mail-abbrev-complete-alias.
2687 (mh-beginning-of-word): Refactor repeated code into its own
2689 (mh-folder-expand-at-point): Make Fcc completion work in XEmacs
2690 by not using mail-abbrev-complete-alias.
2692 * mh-alias.el (mh-alias-letter-expand-alias): Make alias
2693 expansion work in XEmacs. Replace the use of the function
2694 mail-abbrev-complete-alias, which isn't present in XEmacs.
2696 * mh-mime.el (mh-mml-to-mime): If a MIME message is created
2697 immediately after starting MH-E then invoking mh-mml-to-mime
2698 causes an error because "message" isn't being loaded. The change
2699 works around this problem.
2700 (mh-mime-maybe-display-alternatives): Give better indication of
2701 which MIME parts are alternatives.
2703 2003-05-22 Satyaki Das <satyakid@stanford.edu>
2705 * mh-e.el (mh-add-sequence-notation, mh-remove-sequence-notation):
2706 Just delete and add the same character in the scan line to make
2707 font-lock refontify it. The previous trick of removing all text
2708 properties didn't work in XEmacs.
2710 * mh-seq.el (mh-put-msg-in-seq): Complain if the user tries to
2711 create an invalid MH sequence.
2713 * mh-mime.el (mh-mime-display-alternative): Modified to
2714 optionally display alternatives as buttons.
2715 (mh-mime-maybe-display-alternatives): New function which displays
2716 alternative MIME parts as buttons.
2717 (mh-mime-save-part): Initially mh-mime-save-parts-directory is
2718 nil and calling file-name-as-directory with nil arg leads to an
2719 error. So fall back on the default-directory in that case.
2721 * mh-customize.el (mh-display-buttons-for-alternatives-flag): New
2722 customizable variable that controls display of the alternative
2723 MIME parts (closes SF #741288).
2725 2003-05-22 Peter S Galbraith <psg@debian.org>
2727 * mh-customize.el (mh-invisible-header-fields): Commented out
2728 "User-Agent:". It's similar to X-Mailer, so display it.
2730 2003-05-21 Satyaki Das <satyakid@stanford.edu>
2732 * mh-customize.el (mh-tool-bar-define): Add an optional argument
2733 to the button description that can dynamically enable/disable
2735 (mh-tool-bar-define): The alias grabbing button is disabled if the
2736 current message doesn't have a From header or if the sender is
2737 already in the user's alias. This functionality was inadvertently
2738 lost when the Emacs/XEmacs toolbar unification took place.
2740 2003-05-20 Satyaki Das <satyakid@stanford.edu>
2742 * mh-unit.el (mh-unit-construct-call-graph): Be more aggressive
2743 and flag interactive functions that aren't autoloaded or have no
2745 (mh-unit-interactive-function-p): Remove now unused function.
2746 (mh-unit, mh-unit-construct-call-graph): Replace mh-files with
2749 2003-05-20 Bill Wohler <wohler@newt.com>
2751 * mh-unit.el (mh-prune-trailing-spaces): Renamed to
2752 mh-unit-prune-trailing-spaces to clean up the namespace.
2753 (mh-files): Renamed to mh-unit-files. Ditto.
2754 (mh-unit): Checkdoc fix.
2756 * mh-index.el (mh-index-p): Added autoload cookie since mh-index-p
2757 is used by mh-customize.el. This calls for another mh-unit test
2758 that looks for mh-autoloads for functions that are no longer used
2761 * mh-loaddefs.el: Regenerated.
2763 2003-05-20 Satyaki Das <satyakid@stanford.edu>
2765 * mh-unit.el (mh-unit-construct-call-graph): Factor out the code
2766 to read the lisp files to a separate function. Also change it to
2767 construct a function call-graph. Autoloaded functions are taken
2769 (mh-unit-find-all-used-functions, mh-unit-called-functions)
2770 (mh-unit-find-all-unused-functions): Find all unused functions by
2771 computing a fixed point starting from the set of top level
2773 (mh-unit-analyze-block): Removed.
2774 (mh-unit-update-call-graph): mh-unit-functions-called was renamed
2775 with modifications to update the function call graph.
2777 2003-05-19 Satyaki Das <satyakid@stanford.edu>
2779 * mh-loaddefs.el: Regenerated.
2781 * mh-utils.el (mh-notate): Modified to keep track of notation
2782 that was replaced when sequence notation is added. Thus when the
2783 sequence is deleted, the original notation is recovered.
2784 (mh-add-msgs-to-seq): Modified to work with the new sequence
2787 * mh-seq.el (mh-delete-seq, mh-put-msg-in-seq): Simplified since
2788 we don't need to handle tick and unseen sequences specially any
2790 (mh-narrow-to-seq): Don't need to call mh-notate-user-sequences
2791 since mh-copy-seq-to-eob already does that.
2792 (mh-widen): Remove sequence notation, so that notation when
2793 messages are replied to aren't lost.
2794 (mh-copy-seq-to-eob): Simplified with the use of
2795 mh-iterate-on-range.
2796 (mh-thread-inc): This function doesn't need to notate user
2797 sequences since its callers already do that.
2798 (mh-thread-parse-scan-line): Simplified since mh-note-seq doesn't
2799 appear in scan lines it is given as arguments.
2800 (mh-thread-update-scan-line-map): Remove the test, since its
2801 caller already does the required check.
2802 (mh-thread-folder): Simplified by the use of mh-iterate-on-range.
2803 (mh-tick-add-overlay, mh-tick-remove-overlay, mh-notate-tick):
2804 These functions aren't needed any more, since overlays aren't used
2805 any more. Also overlays aren't portable to XEmacs, so nasty
2806 conditional code that used overlays in Emacs and extents in Xemacs
2807 have been eliminated.
2808 (mh-toggle-tick): Generalize it to work on a range of messages
2809 like the other interactive messages.
2811 * mh-funcs.el (mh-undo-folder): Use mh-remove-all-notation
2812 instead of mh-unmark-all-headers.
2814 * mh-e.el (mh-folder-font-lock-keywords): The entry for unseen
2815 sequence highlighting is now done by the macro.
2816 (mh-generate-sequence-font-lock): New macro to highlight any
2817 arbitrary sequence. This macro is invoked twice to get the
2818 highlighting for unseen and tick sequences.
2819 (mh-sequence-notation-history, mh-folder-mode): New variable that
2820 keeps track of the old notation when a message is notated with
2822 (mh-regenerate-headers, mh-get-new-mail): Add appropriate calls to
2823 mh-notate-user-sequences and mh-remove-all-notation.
2824 (mh-unmark-all-headers): Add comment that this function shouldn't
2826 (mh-add-sequence-notation, mh-remove-sequence-notation): New
2827 functions to notate message with mh-note-seq and to remove it.
2828 (mh-remove-all-notation): Simplified to use mh-iterate-on-range.
2829 (mh-process-commands): Use mh-remove-all-notation instead of
2830 mh-unmark-all-headers.
2831 (mh-notate-user-sequences, mh-delete-msg-from-seq): Simplified
2832 since the tick and unseen sequences don't need special handling
2834 (mh-internal-seq): Make it possible to dynamically change what
2835 sequences are treated as internal (internal means font lock is
2836 used to highlight the sequence).
2837 (mh-clear-text-properties): Removed since it isn't needed
2840 2003-05-19 Satyaki Das <satyakid@stanford.edu>
2842 * mh-unit.el (mh-unit-analyze-block, mh-unit-interactive-function-p)
2843 (mh-unit-find-all-unused-functions): Change argument name bl to
2846 2003-05-19 Satyaki Das <satyakid@stanford.edu>
2848 * mh-unit.el (mh-unit-find-all-unused-functions): New interactive
2849 function to find all unused functions in MH-E.
2850 (mh-unit-analyze-block, mh-unit-interactive-function-p)
2851 (mh-unit-functions-called): Functions used by
2852 mh-unit-find-all-unused-functions do its job.
2854 * Makefile (compile): Byte-compile mh-unit.el, since the analysis
2855 to find unused code runs faster when compiled.
2857 2003-05-18 Satyaki Das <satyakid@stanford.edu>
2859 * mh-loaddefs.el: Regenerated.
2861 * mh-seq.el (mh-notate-deleted-and-refiled): Add autoload
2862 declaration since this function is used in mh-index.el.
2864 * mh-e.el, mh-customize.el, mh-utils.el: Adjust require/provide
2865 statements so that mh-e.el isn't loaded twice.
2867 2003-05-15 Satyaki Das <satyakid@stanford.edu>
2869 * mh-utils.el (mh-defun-show-buffer): Arrange for the current
2870 line in the folder buffer to be highlighted even when we are in
2873 2003-05-14 Satyaki Das <satyakid@stanford.edu>
2875 * mh-seq.el (mh-read-range): Allow this to work on invalid
2876 sequences that only MH-E knows about.
2878 * mh-index.el (mh-create-sequence-map, mh-index-add-to-sequence)
2879 (mh-index-delete-from-sequence): Don't consider sequences that
2880 aren't valid MH sequences.
2882 * mh-e.el (mh-valid-seq-p): New predicate to check if a symbol
2883 could be a MH sequence.
2884 (mh-undefine-sequence, mh-define-sequence): Don't execute "mark"
2885 unless the sequence name is a valid MH sequence.
2887 * mh-utils.el (mh-exec-cmd): In case an error happens in the
2888 call-process and non-strings are present in ARGS, then the error
2889 message isn't properly displayed. The change fixes this.
2891 2003-05-14 Peter S Galbraith <psg@debian.org>
2893 * mh-mime.el (mh-mime-save-part): Bug Fix: Make sure
2894 `mm-default-directory' gets a trailing "/" if
2895 `mh-mime-save-parts-directory' doesn't have one. Otherwise the
2896 default in the prompt of `mh-mm-save-part' will be wrong. Perhaps
2897 `mh-mm-save-part' needs to do this check itself.
2899 2003-05-14 Satyaki Das <satyakid@stanford.edu>
2901 * mh-index.el (mh-unpropagated-sequences): New function and
2902 variable to keep track of sequences that shouldn't be propagated.
2903 (mh-create-sequence-map, mh-index-add-to-sequence)
2904 (mh-index-delete-from-sequence): Use mh-unpropagated-sequences to
2905 stop changes to some sequences being reflected back to the source
2908 2003-05-13 Satyaki Das <satyakid@stanford.edu>
2910 * mh-loaddefs.el: Regenerated.
2912 * mh-e.el (mh-process-commands): Preserve sequences when messages
2913 are refiled (closes SF #737128).
2915 * mh-index.el (mh-create-sequence-map)
2916 (mh-index-create-sequences): Refactor code that is reused into a
2919 * mh-customize.el (mh-refile-preserves-sequences-flag): New
2920 customizable flag that controls whether sequences are preserved
2921 when messages are refiled.
2923 2003-05-13 Eric Ding <ericding@alum.mit.edu>
2925 * mh-e.el (mh-scan-format): The argument for scan format files
2926 should be -form, not -format.
2928 2003-05-13 Satyaki Das <satyakid@stanford.edu>
2930 * mh-seq.el (mh-widen): The scan line map stack was not being
2931 properly updated when ALL-FLAG is non-nil. The change fixes that.
2933 * mh-e.el (mh-reset-threads-and-narrowing): The change resets the
2934 scan line map stack.
2936 2003-05-12 Satyaki Das <satyakid@stanford.edu>
2938 * mh-loaddefs.el: Regenerated.
2940 * mh-seq.el (mh-thread-scan-line-map-stack)
2941 (mh-thread-old-scan-line-map): Instead of the old scan line map,
2942 now we need to maintain a stack of scan line maps.
2943 (mh-narrow-to-seq): Modified so that multiple level of narrowings
2944 can be done. We now maintain a stack of old views instead of
2945 hiding the old scan lines. This makes it possible to have
2946 multiple levels of narrowings.
2947 (mh-widen): A optional prefix arg was added to allow undoing all
2949 (mh-read-seq-default, mh-read-range): Don't use
2950 mh-narrowed-to-seq, since it doesn't exist any more.
2951 (mh-thread-initialize-hash, mh-thread-initialize): The
2952 mh-thread-initialize function has been refactored.
2953 (mh-thread-update-scan-line-map): Maintain notations in the stack
2955 (mh-notate-tick, mh-toggle-tick): Simplified, since we don't have
2956 mh-narrowed-to-seq any more. This means there is a slight loss of
2957 functionality. Earlier if we narrowed to the tick sequence the
2958 ticked messages weren't highlighted. This feature isn't present
2961 * mh-e.el (mh-execute-commands, mh-reset-threads-and-narrowing)
2962 (mh-folder-sequence-menu, mh-get-new-mail): Use
2963 mh-folder-view-stack instead of the now removed
2965 (mh-narrowed-to-seq, mh-tick-seq-changed-when-narrowed-flag):
2966 These variables have been removed.
2967 (mh-folder-view-stack): New variable to keep track of a stack of
2969 (mh-execute-commands, mh-get-new-mail): Add extra argument to
2970 mh-widen so that all narrowings are undone.
2972 * Makefile (MH-E-SRC, MH-E-OTHERS): Move mh-gnus.el from MH-E-SRC
2973 to MH-E-OTHERS so that it isn't byte compiled.
2975 2003-05-10 Satyaki Das <satyakid@stanford.edu>
2977 * mh-seq.el (mh-read-seq): Improve the function a bit by adding
2978 history to the sequence prompt.
2980 2003-05-09 Satyaki Das <satyakid@stanford.edu>
2982 * mh-gnus.el: New file that won't be byte-compiled. From now on
2983 having different Gnus versions at run-time and compile-time won't
2984 cause errors in MH-E.
2986 * mh-mime.el (mh-small-show-buffer-p, mh-display-smileys)
2987 (mh-display-emphasis): Handle all legal values of
2988 font-lock-maximum-size. The existing code assumed didn't consider
2989 the case where it could be an alist.
2990 (mh-small-image-p): Simplified, so that aliasing XEmacs functions
2991 in Emacs isn't necessary any more.
2992 (mh-mm-display-part): Remove unnecessary call to fboundp. The
2993 mh-funcall-if-exists does that for us any way.
2994 (mh-defun-compat, gnus-local-map-property, mm-merge-handles)
2995 (mm-set-handle-multipart-parameter, mm-readable-p)
2996 (mm-long-lines-p, mm-keep-viewer-alive-p, mm-destroy-parts)
2997 (mh-mm-save-part, mm-handle-multipart-ctl-parameter): These
2998 compatibility functions have been moved to mh-gnus.el.
3000 * Makefile (MH-E-SRC): Add mh-gnus.el.
3002 * mh-seq.el (mh-narrow-to-header-field)
3003 (mh-current-message-header-field): Checkdoc fixes.
3005 * mh-e.el (mh-undefine-sequence): Since mh-coalesce-msg-list
3006 returns a list, apply is needed.
3008 2003-05-09 Noel Cragg <noel@red-bean.com> (tiny change)
3010 * mh-junk.el (mh-spamassassin-blacklist): Separate "--local" and
3011 "--no-rebuild" arguments to call-process.
3012 [Patch committed by satyaki]
3014 2003-05-08 Satyaki Das <satyakid@stanford.edu>
3016 * mh-seq.el (mh-translate-range): Take into account differnt
3017 semantics of split-string in Emacs and XEmacs.
3018 (mh-read-pick-regexp, mh-narrow-to-from, mh-narrow-to-cc)
3019 (mh-narrow-to-to, mh-narrow-to-header-field)
3020 (mh-current-message-header-field, mh-narrow-to-range): New
3021 narrowing functions that can select messages based on different
3024 * mh-utils.el (mh-show-limit-map): Add new narrowing functions
3025 callable from the show buffer.
3027 * mh-e.el (mh-help-messages): Add help text for new functions.
3028 (mh-limit-map): Add new narrowing functions (closes SF #732823).
3030 2003-05-07 Satyaki Das <satyakid@stanford.edu>
3032 * mh-utils.el (mh-collect-folder-names): Use mh-exec-daemon to
3033 run flists. This means we don't have to remember to expand the MH
3034 executable in the mh-progs path.
3035 (mh-exec-cmd-daemon): Return the new process object produced.
3037 2003-05-06 Satyaki Das <satyakid@stanford.edu>
3039 * mh-e.el (mh-folder-font-lock-unseen): Use mh-seq-list to do
3040 unseen sequence highlighting instead of reading the .mh_sequences
3041 file from disk every time.
3043 2003-05-05 Satyaki Das <satyakid@stanford.edu>
3045 * mh-utils.el (mh-show-sequence-map): Add key binding for S'
3046 (closes SF #732825).
3048 * mh-e.el (mh-sequence-map): Ditto.
3049 (mh-help-messages): Updated for S'.
3051 2003-05-04 Satyaki Das <satyakid@stanford.edu>
3053 * mh-index.el (mh-index-write-data): The with-temp-buffer macro
3054 is a bit better than write-file, so use that instead.
3056 2003-05-03 Satyaki Das <satyakid@stanford.edu>
3058 * mh-index.el (mh-index-update-maps, mh-index-search)
3059 (mh-index-sequenced-messages): Write index data to disk. This
3060 allows us to recover index folder information if Emacs is
3061 restarted, or the index folder is visited after the buffer has
3062 been killed (closes SF #701762).
3063 (mh-index-write-data, mh-index-read-data)
3064 (mh-index-write-hashtable, mh-index-read-hashtable): Functions to
3065 store and read index data information to disk.
3066 (mh-index-insert-folder-headers, mh-index-group-by-folder): We
3067 can no longer use object identity to compare strings, since they
3068 might have been read back from disk.
3070 * mh-e.el (mh-index-data-file): New variable that stores the name
3071 of the file that keeps track of index folder data.
3072 (mh-make-folder): Read index folder data if available.
3074 * mh-utils.el (mh-show, mh-summary-height, mh-modify): Make
3077 * mh-seq.el (mh-tick-add-overlay): Rearrange code to make code
3080 * mh-loaddefs.el: Regenerated.
3082 2003-05-02 Satyaki Das <satyakid@stanford.edu>
3084 * mh-seq.el (mh-tick-add-overlay): If a message with a short scan
3085 line is ticked, then the highlighting didn't extend to the right
3086 margin. This change fixes that.
3088 2003-05-01 Bill Wohler <wohler@newt.com>
3090 * mh-e.el (mh-help-messages): Added brackets around / and
3091 downcased limit to be consistent with other commands with
3092 punctuation keybindings. Don't document aliases.
3094 2003-05-01 Satyaki Das <satyakid@stanford.edu>
3096 * mh-loaddefs.el: Regenerated.
3098 * mh-seq.el (mh-read-range): Fix comment.
3100 2003-04-30 Mark D. Baushke <mdb@gnu.org>
3102 * mh-e.el (mh-help-messages): Better documentation for the F map.
3104 2003-04-30 Satyaki Das <satyakid@stanford.edu>
3106 * mh-utils.el (mh-find-path): Cache folder names so that
3107 folder name completion is always fast.
3108 (mh-flists-partial-line, mh-flists-process): Variables used for
3109 pre-caching folder names.
3110 (mh-collect-folder-names, mh-collect-folder-names-filter)
3111 (mh-populate-sub-folders-cache): Functions to pre-cache folder
3113 (mh-exec-cmd): Produce more info in *MH-E Log*.
3115 * mh-index.el (mh-index-search): Call the correct function.
3116 (mh-index-sequenced-messages): If folders is nil, then all mail
3117 is searched. The change restores that.
3119 2003-04-30 Peter S Galbraith <psg@debian.org>
3121 * mh-customize.el (mh-summary-height): Move variable integer out
3122 of defcustom, and instead specify that `nil' means to calculate
3123 that size dynamically. Fixes SF #723267.
3125 * mh-utils.el (mh-summary-height): New function. Return ideal
3126 mh-summary-height value for current frame height.
3127 (mh-show-msg): Use it.
3129 2003-04-30 Mark D. Baushke <mdb@gnu.org>
3131 * mh-index.el (mh-index-ticked-messages): Fix prompt and
3133 (mh-index-new-messages): Ditto.
3135 * mh-loaddefs.el: Regenerated.
3137 * mh-index.el (mh-index-sequenced-messages): Renamed from
3138 mh-index-new-messages with minor argument change.
3139 (mh-index-new-messages): Implement by calling
3140 mh-index-sequenced-messages with the appropriate arguments.
3141 (mh-index-ticked-messages): New function. Does the same thing as
3142 mh-index-new-messages, but on its own set of folders and using the
3143 mh-tick-seq instead of mh-unseen-seq.
3145 * mh-e.el (mh-folder-map): Add "F'" to the map for
3146 mh-index-ticked-messages.
3147 (mh-help-messages): Replace broken [t]hread with [n]ew messages.
3149 * mh-customize.el (mh-index-ticked-messages-folders): New user
3150 customizable flag that controls the folders to be searched by
3151 mh-index-ticked-messages.
3153 * mh-utils.el (mh-show-index-ticked-messages): Wrapper for
3154 mh-index-ticked-messages.
3155 (mh-show-folder-map): Add "F'" to the map for
3156 mh-index-ticked-messages.
3158 2003-04-30 Satyaki Das <satyakid@stanford.edu>
3160 * mh-index.el (mh-index-search): The old cur in the source folder
3161 might not exist. This could cause mh-exec-cmd to fail. So don't
3162 add an error message in that case.
3164 2003-04-29 Satyaki Das <satyakid@stanford.edu>
3166 * mh-e.el (mh-folder-from-address): Modified to allow multiple
3167 Cc: headers to work properly.
3168 (mh-inc-folder, mh-visit-folder): Fix an off by one error.
3170 * mh-utils.el (mh-notate): Update the scan line map. This fixes a
3171 tiny bug. In threaded view, if a message is replied to then the
3172 message is notated with a "-". Now if inc is done then the "-"
3173 added is lost. The change fixes this.
3175 * mh-seq.el (mh-translate-range): Use the correct function.
3176 (mh-thread-update-scan-line-map): New function that updates the
3177 scan line map when a message is notated.
3179 2003-04-28 Satyaki Das <satyakid@stanford.edu>
3181 * mh-index.el (mh-index-parse-search-regexp): Avoid compiler
3182 warning in GNU Emacs 21.3.
3184 * mh-seq.el (mh-widen): Ditto.
3186 2003-04-28 Satyaki Das <satyakid@stanford.edu>
3188 * mh-customize.el (mh-interpret-number-as-range-flag): New user
3189 customizable flag that controls whether a single number, N is
3190 interpreted as the range last:N.
3192 * mh-seq.el (mh-read-range): Generalize it for use when reading
3194 (mh-interactive-range): Modified to use the new mh-read-range.
3196 * mh-speed.el (mh-speed-view): Use mh-read-range instead of the
3197 now removed mh-read-msg-range function.
3199 * mh-funcs.el (mh-pack-folder): Ditto.
3201 * mh-e.el (mh-rescan-folder, mh-visit-folder): Ditto.
3202 (mh-read-msg-range): Removed.
3204 * mh-loaddefs.el: Regenerated
3206 2003-04-27 Satyaki Das <satyakid@stanford.edu>
3208 * mh-loaddefs.el: Regenerated.
3210 * mh-seq.el (mh-range-completion-function): Fix checkdoc warning.
3211 (mh-iterate-on-range): Mention that the macro can iterate over a
3212 MH message range too.
3214 2003-04-27 Bill Wohler <wohler@newt.com>
3216 * mh-unit.el (mh-unit): As it turns out, lm-crack-copyright has
3217 been updated to handle multiple-line copyrights in 21.3, so
3218 updated code to run lm-verify only if user has 21.3 or greater.
3219 Delete buffers after use, unless user already had buffer open.
3221 2003-04-27 Satyaki Das <satyakid@stanford.edu>
3223 * mh-loaddefs.el: Regenerated.
3225 * mh-index.el (mh-index-search): The MH command "refile" changes
3226 cur. The change restores cur in source folders.
3227 (mh-index-new-messages): Use the appropriate arguments for
3230 * mh-seq.el (mh-read-seq-default, mh-read-seq): Restore these
3231 functions to just read sequence names.
3232 (mh-range-seq-names, mh-range-history, mh-range-completion-map)
3233 (mh-range-completion-function, mh-read-range): New function which
3234 reads MH range with completion and history.
3235 (mh-interactive-range): Use mh-read-range instead of
3236 mh-read-seq-default.
3237 (mh-put-msg-in-seq): Change documentation about MH message range.
3239 * mh-junk.el (mh-junk-blacklist, mh-junk-whitelist): Change
3240 documentation about MH message range.
3242 * mh-funcs.el (mh-copy-msg, mh-print-msg): Ditto.
3244 * mh-e.el (mh-delete-msg, mh-delete-msg-no-motion)
3245 (mh-refile-msg, mh-undo, mh-delete-msg-from-seq): Ditto.
3247 * mh-comp.el (mh-forward): Ditto.
3249 2003-04-26 Satyaki Das <satyakid@stanford.edu>
3251 * mh-comp.el, mh-e.el, mh-funcs.el, mh-junk.el, mh-seq.el:
3252 Replace msg-or-seq with range everywhere.
3254 * mh-loaddefs.el: Regenerated.
3256 2003-04-25 Satyaki Das <satyakid@stanford.edu>
3258 * mh-e.el (mh-index-sequence-search-flag, mh-folder-mode): New
3259 local variable to remember that a folder buffer contains results
3260 from a sequence search. This is needed so that "C-u F i" will work
3262 (mh-visit-folder): Create sequences in the index folder.
3263 (mh-process-commands, mh-delete-msg-from-seq): If speedbar is on
3264 then update the speedbar message counts immediately.
3265 (mh-delete-msg-from-seq): Make the code faster by calling "mark"
3266 just once. Also update source folder sequence if messages are
3267 being deleted from a sequence in an index folder.
3268 (mh-undefine-sequence): Simplified to remove the speedbar updating
3269 code. Also DTRT and don't change any sequence when called with an
3270 empty list of messages.
3271 (mh-refile-msg, mh-delete-msg): Move to next message only if the
3272 current message has been deleted or refiled, as the case may be.
3274 * mh-utils.el (mh-show-msg): Update the message counts in the
3275 speedbar, if it is on, immediately.
3276 (mh-speed-flists-active-p, mh-speed-flists-inhibit-flag): A new
3277 flag has been added which inhibits updating of the speedbar. This
3278 is used to avoid needless speedbar updates when
3279 mh-execute-commands is called in index folders.
3281 * mh-speed.el (mh-speed-flists): Extended so that multiple
3282 folders can be given as arguments. Also the code that kept track
3283 of the current folder, needed since flists adds an extra ?+ char
3284 at the end of the current folder name, wasn't entirely correct.
3285 That has also been fixed.
3287 * mh-seq.el (mh-delete-seq, mh-put-msg-in-seq): Modified so that
3288 sequence in source folder is updated if we delete a sequence in an
3290 (mh-read-seq, mh-read-seq-default, mh-translate-range)
3291 (mh-interactive-msg-or-seq): The mh-interactive-msg-or-seq
3292 function can read in an arbitrary MH message range.
3293 (mh-iterate-on-msg-or-seq): The macro has been extended to work on
3295 (mh-subject-to-sequence, mh-subject-to-sequence-unthreaded)
3296 (mh-subject-to-sequence-threaded, mh-thread-find-msg-subject): Fix
3297 the mh-subject-to-sequence function so that it will work in
3298 threaded folders too.
3299 (mh-tick-add-overlay): Fix a leak of overlays.
3300 (mh-toggle-tick): Ticking, or unticking, messages in the index
3301 folder is propagated to the source folders (closes SF #709664).
3303 * mh-index.el (mh-flists-results-folder, mh-flists-sequence)
3304 (mh-flists-called-flag): New variables to implement searching for
3305 arbitrary sequences.
3306 (mh-index-generate-pretty-name): Updated so that folder names are
3307 generated for flists search that can take any sequence name.
3308 (mh-index-search): Since sequences are now properly maintained the
3309 unseen-flag argument isn't needed and hence removed. Also redoing
3310 a sequence search with "C-u F i" is handled correctly. Finally
3311 the speedbar is updated to reflect the new index folder created.
3312 (mh-index-create-sequences): New function that creates sequences
3313 in the index folder.
3314 (mh-index-matching-source-msgs, mh-index-execute-commands):
3315 Improved so that scan lines for refiled/deleted messages are
3316 removed from the source folders as well.
3317 (mh-index-add-to-sequence, mh-index-delete-from-sequence): New
3318 functions to update sequences in source folder to reflect changes
3320 (mh-index-quote-for-shell): A utility function to that quotes
3321 characters with special meaning to /bin/sh.
3322 (mh-flists-execute, mh-index-new-messages): Updated to search for
3323 arbitrary sequences (closes SF #718833).
3325 * mh-loaddefs.el: Regenerated.
3327 2003-04-25 Bill Wohler <wohler@newt.com>
3329 * mh-customize.el (mh-kill-folder-suppress-prompt-hook): New hook
3330 used by mh-kill-folder to suppress the prompt.
3332 * mh-funcs.el (mh-kill-folder): Suppress prompt not if
3333 mh-index-data is non-nil, but if any functions in
3334 mh-kill-folder-suppress-prompt-hook return non-nil.
3336 * mh-index.el (mh-index-p): New function with returns non-nil if
3337 the current folder was generated by an index search for use by
3338 mh-kill-folder-suppress-prompt-hook
3340 * mh-unit.el (mh-unit): Commented out lm-verify step until code
3341 updated to handle split Copyright lines.
3343 * mh-e.el (mh-version): Set to 7.3+cvs.
3345 2003-04-24 Bill Wohler <wohler@newt.com>
3347 * Released MH-E version 7.3.
3349 * MH-E-NEWS, README: Updated for release 7.3.
3351 * mh-e.el (Version, mh-version): Updated for release 7.3.
3353 2003-04-24 Satyaki Das <satyakid@stanford.edu>
3355 * mh-xemacs-compat.el (mh-utils): Require mh-utils at compile
3356 time, since the mh-do-in-xemacs macro is used.
3358 * mh-inc.el (cl): Require cl at compile time since we are using
3359 the loop and setf macros.
3361 2003-04-24 Satyaki Das <satyakid@stanford.edu>
3363 * mh-unit.el (mh-files): Fix the list of files to check.
3365 2003-04-24 Bill Wohler <wohler@newt.com>
3367 * ChangeLog: Appended copyright to end of file.
3369 * Makefile: Added copyright and license.
3371 * README: Added copyright.
3373 * import-emacs: Changed copyright from Newt Software to Bill
3374 Wohler and use license from mh-e.el, except that this file is
3375 a part of MH-E, not GNU Emacs.
3377 * mh-alias.el: Updated copyright so that it doesn't wrap upon
3378 advice from Richard Stallman who said to use two-digit years when
3379 they are surrounded by 4-digit years that are in the same century
3380 and to break up copyrights on multiple lines.
3381 * mh-comp.el: Ditto.
3383 * mh-funcs.el: Ditto.
3384 * mh-identity.el: Ditto.
3385 * mh-mime.el: Ditto.
3387 * mh-utils.el: Ditto.
3388 * mh-xemacs-compat.el: Ditto.
3390 * mh-unit.el: New file. Unit tests for MH-E. This version merely
3391 runs checkdoc and lm-verify which is useful before releasing the
3392 software. It can and should be expanded to do real unit tests.
3394 2003-04-22 Mark D Baushke <mdb@gnu.org>
3396 * mh-alias.el: Update Copyright.
3397 * mh-comp.el: Ditto.
3398 * mh-customize.el: Ditto.
3400 * mh-funcs.el: Ditto.
3401 * mh-identity.el: Ditto.
3402 * mh-index.el: Ditto.
3403 * mh-mime.el: Ditto.
3404 * mh-pick.el: Ditto.
3406 * mh-speed.el: Ditto.
3407 * mh-utils.el: Ditto.
3408 * mh-xemacs-compat.el: Ditto.
3410 2003-04-22 Satyaki Das <satyaki@theforce.stanford.edu>
3412 * mh-utils.el (mh-normalize-folder-name): Make the completion
3413 code work properly with XEmacs. This change is neeeded since
3414 split-string behaves differently in XEmacs than it does in GNU
3416 (mh-exec-cmd-error): Add a comment, so that we change it later on.
3418 2003-04-18 Steve Youngs <youngs@xemacs.org>
3420 * mh-xemacs-icons.el (mh-xemacs-icons): Provide 'mh-xemacs-icons'
3421 not 'mh-xemacs-toolbar'.
3423 * mh-xemacs-compat.el (mh-xemacs-toolbar): Remove require, it's
3424 now called 'mh-xemacs-icons' and it is required from
3427 * mh-customize.el: Require 'mh-xemacs-icons' instead of
3428 'mh-xemacs-toolbar'.
3430 2003-04-17 Peter S Galbraith <psg@debian.org>
3432 * mh-xemacs-icons.el: New file (renamed from mh-xemacs-toolbar.el).
3435 * mh-xemacs-toolbar.el: Deleted.
3437 * Makefile: Incorporate the file renaming.
3439 2003-04-15 Bill Wohler <wohler@newt.com>
3441 * mh-comp.el (mh-forward): Pass a list of messages into
3442 mh-compose-and-send-mail instead of msg-or-seq.
3443 (mh-annotate-msg): The previous version called
3444 mh-iterate-on-msg-or-seq in the letter buffer. The new version
3445 simply adds the ability to operate on message lists. Thanks to
3446 Satyaki for the fix and suggestion for passing a list from
3449 2003-04-14 Bill Wohler <wohler@newt.com>
3451 * mh-comp.el (mh-annotate-msg): Updated to handle msg-or-seq for
3452 mh-forward was passing a msg-or-seq to mh-compose-and-send-mail
3453 which in turn passed the msg-or-seq to mh-annotate-msg. In
3454 particular, forwarding a region failed. Note that the msgs
3455 argument in much of mh-comp.el should really be converted to
3456 msg-or-seq accordingly. But not now, unless something is broken as
3457 was the case here. We can revamp after the release.
3459 2003-04-13 Bill Wohler <wohler@newt.com>
3461 * mh-funcs.el (mh-kill-folder): Added space after prompt to give
3462 the (yes or no) bit a little elbow room.
3464 * mh-xemacs-toolbar.el: Removing a copyright is a no-no.
3465 Reinstated Steve's copyright.
3467 2003-04-12 Satyaki Das <satyaki@theforce.stanford.edu>
3469 * mh-utils.el (mh-do-in-gnu-emacs, mh-do-in-xemacs): Add
3470 indentation hooks for the macros.
3472 2003-04-11 Bill Wohler <wohler@newt.com>
3474 * mh-alias.el, mh-comp.el, mh-customize.el, mh-funcs.el,
3475 mh-identity.el, mh-inc.el, mh-index.el, mh-junk.el, mh-utils.el:
3476 Merged in changes from CVS GNU Emacs. These included the removal
3477 of trailing whitespace.
3479 * mh-customize.el: The "anti-entropy" check-in. Moved groups
3480 around slightly to reflect commentary. Moved defcustoms around
3481 to preserve alphabetization. Big diff, little content.
3482 (mh-xemacs-use-toolbar-flag): Doc fix.
3483 (mh-xemacs-toolbar-position): Fixed typo in docstring.
3484 (mh-default-folder-list): Updated docstring to reflect new Check
3485 Recipient tag. Also, set type of Address to regexp.
3486 (mh-x-mailer-string): Moved to mh-comp.el where it is used.
3488 * mh-comp.el (mh-x-mailer-string): Moved here from customize.el.
3489 Not quite sure how it got to mh-customize.el in the first place.
3491 * mh-e.el (mh-folder-folder-menu): Added Folder -> View New
3494 * mh-utils.el (mh-show-folder-menu): Ditto.
3496 * mh-inc.el: Added Change Log comment (lm-verify fix).
3498 * mh-index.el (mh-index-search): Added documentation about prefix
3499 argument for users, in addition to documentation for programmers.
3501 * mh-mime.el (mh-edit-mhn, mh-edit-mhn, mh-mml-to-mime): Docstring
3502 fixes germaine to the change whereby we now check for MIME
3503 directives before sending.
3505 * mh-xemacs-toolbar.el: Fixed copyright. Added Change Log comment
3506 (lm-verify fix). Added standard MH-E local variables. Removed
3509 2003-04-11 Satyaki Das <satyaki@theforce.stanford.edu>
3511 * mh-seq.el (mh-iterate-on-msg-or-seq): Add a missed comma.
3513 2003-04-10 Satyaki Das <satyaki@theforce.stanford.edu>
3515 * mh-index.el (mh-index-visit-folder): Prompt before reusing
3516 existing folder buffer.
3518 * mh-xemacs-toolbar.el (require): Require mh-utils at compile
3519 time to avoid compilation error when doing "make bootstrap" in
3522 * mh-inc.el (mh-inc-spool-list): Declare it so that a compile
3523 time warning is avoided when doing "make bootstrap" in CVS Emacs.
3525 2003-04-10 Peter S Galbraith <psg@debian.org>
3527 * mh-inc.el (mh-inc-spool-generator): Changed to a defun instead
3528 of a defmacro, applying Satyaki's patch.
3529 (mh-inc-spool-def-key): same.
3530 (mh-inc-spool-make): same.
3532 * mh-utils.el: define-key "I" in mh-show-mode-map for
3535 * mh-comp.el (mh-modify-header-field): Remove debug message.
3537 2003-04-10 Peter S Galbraith <psg@debian.org>
3539 * mh-inc.el (mh-inc-spool-map-help): Default to nil.
3540 (mh-inc-spool-map): Make "?" key display message when
3541 `mh-inc-spool-map-help' is nil (instead of mh-inc-spool-map-help
3542 containing the message).
3544 * mh-e.el: require mh-inc.el
3545 * mh-e.el: define-key "I" in mh-folder-mode-map for mh-inc-spool-map.
3546 (mh-help-messages): Add help string for "I" key.
3548 2003-04-09 Peter S Galbraith <psg@debian.org>
3550 * mh-inc.el: New file. New feature to `inc' mail from various
3551 spool files into different folders.
3553 * mh-loaddefs.el: Regenerate for mh-inc's mh-inc-spool-list-set.
3555 * Makefile (MH-E-IMG): Add highlight icon.
3556 (MH-E-SRC): Add mh-inc.el file.
3558 * mh-customize.el (mh-inc-spool-list): New variable for new
3559 feature to `inc' mail from various spool files into different
3562 2003-04-09 Satyaki Das <satyaki@theforce.stanford.edu>
3564 * mh-utils.el (mh-mail-delivery-buffer): Add a defconst for
3565 mh-mail-delivery-buffer.
3567 * mh-comp.el (mh-send-letter): Use mh-mail-delivery-buffer.
3569 * mh-mime.el (mh-small-image-p): Add mh-funcall-if-exists to
3570 avoid compiler warning in GNU Emacs.
3572 2003-04-08 Satyaki Das <satyaki@theforce.stanford.edu>
3574 * mh-mime.el (mh-small-image-p): Make the function slightly more
3575 error-resistant in XEmacs.
3577 * mh-seq.el (mh-narrow-to-seq, mh-widen): Update tool-bar-map in
3578 the show buffer if needed. This allows us to display the widen
3579 button in the show buffer only when the folder is narrowed.
3581 * mh-customize.el (mh-tool-bar-define): Changed so that a
3582 separate tool-bar-map is used in show-mode when folder is
3583 narrowed to a sequence.
3585 2003-04-08 Satyaki Das <satyaki@theforce.stanford.edu>
3587 * mh-seq.el (mh-iterate-on-msg-or-seq): Reinstate the use of
3588 make-symbol since using gensym causes compiler warnings in CVS
3591 2003-04-08 Bill Wohler <wohler@newt.com>
3593 * mh-comp.el (mh-forward): Function didn't handle a region of
3594 messages. Use new function mh-msg-or-seq-to-msg-list to get a list
3595 of messages in all circumstances. Also, use mh-coalesce-msg-list
3596 on message list before submitting to forw since this should always
3597 be done when calling a program to reduce the chance of exceeding
3598 command-line limits.
3600 * mh-seq.el (mh-iterate-on-msg-or-seq): Backed out previous
3601 change. A nil msg-or-seq should mean no messages, and Satyaki is
3602 going to use gensym instead of make-symbol.
3603 (mh-msg-or-seq-to-msg-list): New function to convert a msg-or-seq
3604 to a list of message numbers.
3606 * mh-e.el (mh-coalesce-msg-list): Touched up the docstring a
3609 * mh-funcs.el (mh-print-msg): Can now print regions, message
3610 lists, sequences and, of course, single messages. This version
3611 works a little differently from the old version. Instead of
3612 calling mhl | lpr once on all messages, mhl | lpr is called once
3613 per message in order to put each message's number in the header.
3614 Thanks to Satyaki for some code and ideas.
3616 * mh-seq.el (mh-iterate-on-msg-or-seq): The argument msg-or-seq
3617 can now be nil which means the current message. Make local symbols
3618 so that local variables don't step on user's symbols (the msgs
3621 2003-04-06 Bill Wohler <wohler@newt.com>
3623 * mh-comp.el (mh-forward): Updated docstrings to indicate that a
3624 list of messages is acceptable as well.
3626 * mh-e.el (mh-delete-msg, mh-delete-msg-no-motion, mh-refile-msg)
3627 (mh-undo, mh-notate-user-sequences, mh-delete-msg-from-seq): Ditto.
3629 * mh-funcs.el (mh-copy-msg, mh-print-msg): Ditto.
3631 * mh-junk.el (mh-junk-blacklist, mh-junk-whitelist): Ditto.
3633 * mh-seq.el (mh-put-msg-in-seq, mh-iterate-on-msg-or-seq)
3634 (mh-interactive-msg-or-seq): Ditto.
3636 2003-04-06 Satyaki Das <satyaki@theforce.stanford.edu>
3638 * mh-junk.el (mh-junk-blacklist, mh-junk-whitelist): Call
3639 mh-refile-a-msg and mh-delete-a-msg with nil as the message
3640 number since that is more efficient.
3642 * mh-seq.el (mh-iterate-on-msg-or-seq): Extended so that it will
3643 handle lists of messages numbers as well.
3644 (mh-put-msg-in-seq): Use mh-iterate-on-msg-or-seq to simplify the
3647 * mh-funcs.el (mh-copy-msg): Same as above.
3649 * mh-e.el (mh-refile-msg): Make it more efficient. Using nil in
3650 mh-refile-a-msg avoids needing to re-search-forward to that
3652 (mh-undo): Fix typo in interactive spec.
3653 (mh-notate-user-sequences): Generalize the function to take a
3654 msg-or-seq as argument.
3655 (mh-delete-msg-from-seq): Extend the function so that it is now
3656 able to subtract messages belonging in one sequence from another.
3657 (mh-undo): Unify the region and sequence handling. The message
3658 number branch of the function does extra stuff, so we can't merge
3661 2003-04-06 Bill Wohler <wohler@newt.com>
3663 * mh-comp.el (mh-forward): Use mh-interactive-msg-or-seq. Inserted
3664 consistent verbiage in docstring for msg-or-seq.
3665 (mh-reply): Don't mention default in opening line in all
3668 * mh-e.el (mh-delete-msg, mh-refile-msg)
3669 (mh-undo, mh-delete-msg-from-seq): Use mh-interactive-msg-or-seq.
3670 Inserted consistent verbiage in docstring for msg-or-seq. In
3671 mh-delete-msg-from-seq, renamed msg-or-region to msg-or-seq.
3673 * mh-funcs.el (mh-copy-msg, mh-print-msg): Use
3674 mh-interactive-msg-or-seq. Inserted consistent verbiage in
3675 docstring for msg-or-seq.
3677 * mh-junk.el (mh-junk-blacklist, mh-junk-whitelist): Inserted
3678 consistent verbiage in docstring for msg-or-seq.
3680 * mh-seq.el (mh-msg-is-in-seq): Don't mention default in opening
3681 line in all docstrings.
3682 (mh-put-msg-in-seq): Use mh-interactive-msg-or-seq. Inserted
3683 consistent verbiage in docstring for msg-or-seq.
3685 * mh-e.el (mh-delete-msg, mh-delete-msg-no-motion, mh-refile-msg):
3686 Rewritten to use new mh-interactive-msg-or-seq function and
3687 mh-iterate-on-msg-or-seq macro. mh-delete-msg-no-motion gained the
3688 ability to operate on regions.
3690 * mh-junk.el (mh-junk-blacklist, mh-junk-whitelist): Rewritten to
3691 use new mh-interactive-msg-or-seq function and
3692 mh-iterate-on-msg-or-seq macro thereby gaining the ability to
3693 operate on sequences or regions.
3695 * mh-seq.el (mh-iterate-on-msg-or-seq): New macro to execute code
3696 on a message, a region of messages, or a sequence. This macro
3697 should be in all functions that operate on messages to provide a
3699 (mh-interactive-msg-or-seq): New function used in interactive
3700 calls to obtain a message number, region, or sequence. This
3701 function should be in all functions that operate on messages to
3702 provide a uniform interface.
3704 * mh-utils.el (with-mh-folder-updating, mh-in-show-buffer): Use
3705 'defun lisp-indent-hook property instead of 1 to fix indentation
3708 2003-04-05 Peter S Galbraith <psg@debian.org>
3710 * mh-loaddefs.el: Regenerated.
3711 * mh-funcs.el (mh-ephem-message): autoload.
3713 2003-04-04 Peter S Galbraith <psg@debian.org>
3715 * mh-e.el (mh-folder-from-address): Minor Fix. Wrong ending of
3718 2003-04-04 Satyaki Das <satyaki@theforce.stanford.edu>
3720 * mh-mime.el (mh-mml-directive-present-p): The regexp has been
3721 modified to recognize directives to encrypt/sign messages.
3723 2003-04-03 Mark D. Baushke <mdb@gnu.org>
3725 * mh-e.el (mh-folder-from-address): E-mail messages missing the
3726 To: field, but which have a Cc: field should also be handled.
3728 2003-04-03 Bill Wohler <wohler@newt.com>
3730 * mh-e.el (mh-inc-folder): Modified the prompt text to read
3733 * mh-comp.el (mh-forward): Deleted local variable `compose'.
3734 Deleted obsolete setting of mh-{mmh|mml}-compose-insert-flag.
3735 (mh-letter-menu): Use mh-{mmh|mml}-directive-present-p instead of
3736 obsolete. mh-{mmh|mml}-compose-insert-flag.
3737 (mh-letter-mode): Deleted obsolete setting of
3738 mh-{mmh|mml}-compose-insert-flag.
3739 (mh-send-letter): This function now automatically runs the
3740 directive-to-MIME conversion if any directives are detected,
3741 rather than relying on the unreliable
3742 mh-{mmh|mml}-compose-insert-flag variables. Updated docstring
3745 * mh-identity.el (mh-insert-identity): Use
3746 mh-{mmh|mml}-directive-present-p instead of obsolete.
3747 mh-{mmh|mml}-compose-insert-flag.
3749 * mh-loaddefs.el: Regenerated.
3751 * mh-mime.el (mh-mhn-compose-type, mh-mhn-compose-external-type)
3752 (mh-mhn-compose-forw, mh-edit-mhn, mh-mml-to-mime)
3753 (mh-mml-forward-message, mh-mml-attach-file)
3754 (mh-mml-secure-message-sign-pgpmime)
3755 (mh-mml-secure-message-encrypt-pgpmime): Deleted obsolete setting
3756 of mh-{mmh|mml}-compose-insert-flag.
3757 (mh-mml-directive-present-p): Checkdoc fix.
3759 * mh-utils.el (mh-mhn-compose-insert-flag,
3760 mh-mml-compose-insert-flag): Deleted. Replaced by
3761 mh-{mhn|mml}-directive-present-p.
3763 2003-04-03 Mark D. Baushke <mdb@gnu.org>
3765 * mh-e.el (mh-folder-from-address): Fix minor problem with To:
3768 * mh-e.el (mh-folder-from-address): Bugfix match ?+ character not
3771 2003-04-03 Peter S Galbraith <psg@debian.org>
3773 * mh-e.el (mh-inc-folder): Add second optional argument for the
3774 folder to inc new mail into instead of mh-inbox.
3776 2003-04-03 Peter S Galbraith <psg@debian.org>
3778 * mh-e.el (mh-folder-from-address): The first match found in
3779 `mh-default-folder-list' is used.
3781 * mh-customize.el (mh-default-folder-list): Tweak docs
3783 2003-04-03 Satyaki Das <satyaki@theforce.stanford.edu>
3785 * mh-loaddefs.el: Regenerated.
3787 * mh-mime.el (mh-mhn-directive-present-p): New function to test if
3788 a MHN directive is present in the current buffer.
3789 (mh-mml-directive-present-p): New function to test if a MML
3790 directive is present in the current buffer.
3792 * mh-comp.el (mh-letter-mode): Originally this function checked if
3793 a #forw directive was present and set mh-mhn-compose-insert-flag
3794 to t. The modification generalizes this test so that one of the
3795 variables mh-{mml|mhn}-compose-insert-flag will get set if we have
3796 any sort of MHN or MML directive is already present.
3798 * mh-seq.el (tool-bar-map): Add a defvar to avoid compiler
3799 warnings in CVS version of GNU Emacs.
3801 * mh-utils.el (tool-bar-map): Same as above.
3803 * mh-e.el (tool-bar-map): same as above.
3805 2003-04-02 Satyaki Das <satyaki@theforce.stanford.edu>
3807 * mh-xemacs-toolbar.el (mh-xemacs-toolbar-toggle-tick-icon):
3808 Change color to match mh-folder-tick-face.
3810 * highlight.xpm: Same as above.
3812 2003-04-02 Peter S Galbraith <psg@debian.org>
3814 * mh-e.el (mh-folder-from-address): Check `mh-default-folder-list'
3815 for cases against the recipient instead of the originator.
3817 * mh-customize.el (mh-default-folder-list): Add extra boolean flag
3818 to conditionally check the recipient address instead of the
3821 2003-04-02 Peter S Galbraith <psg@debian.org>
3823 * mh-customize.el (mh-folder-tick-face): Change tick highlight
3824 face to a background yellow-green, as suggested by Bill.
3826 2003-04-01 Peter S Galbraith <psg@debian.org>
3828 * highlight.xpm: New icon for mh-toggle-tick.
3830 * mh-xemacs-toolbar.el (mh-xemacs-icon-map): Add tool-bar entry
3832 (mh-xemacs-toolbar-toggle-tick-icon): New constant.
3834 * mh-customize.el: Add tool-bar entry for mh-toggle-tick.
3836 2003-03-31 Satyaki Das <satyaki@theforce.stanford.edu>
3838 * mh-loaddefs.el: Regenerated.
3840 * mh-utils.el (mh-show-narrow-to-tick, mh-show-limit-map)
3841 (mh-show-sequence-menu): Add new interactive function
3842 mh-show-narrow-to-tick callable from the show buffer and arrange
3843 for a key binding and a menu entry.
3845 * mh-seq.el (mh-narrow-to-tick): New interactive function that
3846 narrows to the tick sequence.
3848 * mh-e.el (mh-folder-sequence-menu, mh-limit-map): Arrange for a
3849 key binding and a menu entry for mh-narrow-to-tick.
3851 * mh-comp.el (mh-letter-mode): Enable undo since we could be
3852 reusing a show buffer where undo is disabled (closes SF #712777).
3854 2003-03-31 Peter S Galbraith <psg@debian.org>
3856 * mh-e.el (mh-folder-sequence-menu): Add entry for mh-toggle-tick.
3858 * mh-utils.el (mh-show-sequence-menu): Add entry for
3859 mh-show-toggle-tick.
3861 2003-03-28 Satyaki Das <satyaki@theforce.stanford.edu>
3863 * mh-seq.el (mh-delete-seq): If the tick sequence is killed with
3864 "S k" then the highlighting wasn't getting removed. The change
3867 2003-03-27 Satyaki Das <satyaki@theforce.stanford.edu>
3869 * mh-e.el (mh-notate-user-sequences): Extend it so that only the
3870 messages in a part of the folder are notated.
3871 (mh-delete-msg-from-seq): Extend it so that it will delete all
3872 messages in the marked region.
3873 (mh-delete-a-msg-from-seq): New function that deletes a single
3874 message from a sequence.
3875 (mh-clear-text-properties): If there is a ticked unseen message
3876 and the message is removed from the unseen list with "S d" then
3877 unticking the message doesn't change the highlight. This change
3880 2003-03-27 Peter S Galbraith <psg@debian.org>
3882 * mh-xemacs-toolbar.el (mh-xemacs-toolbar-*-icon): Use original
3883 24x24 icons, changing background only.
3885 2003-03-27 Satyaki Das <satyaki@theforce.stanford.edu>
3887 * mh-junk.el (mh-spamassassin-identify-spammers): Remove unused
3888 variable buffer-exists.
3889 (mh-spamassassin-identify-spammers): Remove unused variable user.
3891 * mh-customize.el (mh-junk-choose): Tweak it to remove XEmacs
3894 2003-03-26 Satyaki Das <satyaki@theforce.stanford.edu>
3896 * mh-seq.el (mh-thread-print-scan-lines): Handling of a boundary
3897 condition when messages from the last source folder had been
3898 removed was incorrect. This caused a folder header to appear
3899 without any messages listed under it. This change fixes this.
3900 (mh-thread-forget-message): Remove the entry from the scan line
3901 table as well. This is needed for proper display of threaded view
3904 2003-03-26 Bill Wohler <wohler@newt.com>
3906 * Makefile, README, import-emacs, mh-alias.el, mh-comp.el,
3907 mh-customize.el, mh-e.el, mh-funcs.el, mh-identity.el,
3908 mh-index.el, mh-loaddefs.el, mh-mime.el, mh-pick.el, mh-seq.el,
3909 mh-speed.el, mh-utils.el, mh-xemacs-compat.el,
3910 mh-xemacs-toolbar.el: Removed RCS keywords per Emacs conventions
3911 (closes SF #680731).
3914 2003-03-26 Satyaki Das <satyaki@theforce.stanford.edu>
3916 * mh-index.el: Fix commentary to mention that mairix is supported
3919 * mh-loaddefs.el: Regenerated.
3921 * mh-utils.el (mh-show-junk-blacklist, mh-show-junk-whitelist):
3922 Interactive functions callable from the show buffer.
3923 (mh-show-junk-map): Key bindings in show mode.
3925 * mh-e.el (mh-junk-map): Key bindings to call spam program.
3926 (mh-help-messages): Update help text.
3928 * mh-customize.el (mh-junk): New customization group for spam
3930 (mh-junk-choice, mh-junk-function-alist, mh-junk-choose):
3931 Functions and variables that decide which junk program is used.
3932 (mh-junk-program, mh-junk-mail-folder): User customizable
3933 variables that control the choice of spam program and the action
3934 performed on received spam.
3936 * Makefile (MH-E-SRC): Add mh-junk.el.
3938 2003-03-26 Satyaki Das <satyaki@theforce.stanford.edu>
3940 * mh-loaddefs.el: Regenerated.
3942 * mh-utils.el (mh-show-toggle-tick, mh-show-mode-map): New
3943 interactive function callable from the show buffer and a key
3946 * mh-seq.el (mh-delete-seq): Remove highlight from tick sequence.
3947 (mh-put-msg-in-seq): Disable adding messages to tick sequence.
3948 (mh-widen): Reset mh-tick-seq-changed-when-narrowed-flag.
3949 (mh-tick-add-overlay, mh-tick-remove-overlay, mh-notate-tick)
3950 (mh-toggle-tick): New functions to highlight/unhighlight tick
3951 sequence and the interactive function that is used to toggle
3954 * mh-e.el (mh-tick-seq-changed-when-narrowed-flag): New variable
3955 that remembers if we are narrowed to the tick sequence. In that
3956 case the highlighting isn't shown, since it adds no extra info.
3957 (mh-folder-mode): Initialize mh-tick-seq-changed-when-narrowed-flag.
3958 (mh-notate-user-sequences): Notate the tick sequence.
3959 (mh-internal-seq): Treat mh-tick-seq like an internal sequence.
3960 (mh-delete-msg-from-seq): Don't allow deletion from tick sequence.
3961 (mh-folder-mode-map): Add key binding for "'"
3963 * mh-customize.el (mh-tick-seq, mh-folder-tick-face): New
3964 customizable variables that contain the name of the tick sequence
3965 and the face to use to highlight it.
3967 2003-03-25 Satyaki Das <satyaki@theforce.stanford.edu>
3969 * mh-loaddefs.el: Regenerated.
3971 * mh-seq.el (mh-thread-print-scan-lines): New function which
3972 prints out thread tree. It maintains the original folder info if
3973 the folder was created by index search (closes SF #709672).
3974 (mh-copy-seq-to-eob, mh-thread-inc, mh-thread-folder): Use
3975 factored out function mh-thread-print-scan-lines.
3976 (mh-toggle-threads): Since threading is allowed in index folders
3977 there can be lines in the folder which aren't valid message scan
3978 lines. So it is OK for mh-get-msg-num to fail once in a while.
3980 * mh-index.el (mh-index-update-maps): Make the parsing of messages
3981 that need to annotated with the X-MHE-Checksum header more robust.
3982 If the search yielded no results then an error was being produced.
3983 (mh-index-search): Enable automatic threading of index folders if
3984 mh-show-threads-flag is non-nil (closes SF #709667).
3985 (mh-index-next-folder): Relax error checking since index folder
3986 can be threaded while the source folder info is visible.
3987 (mh-index-group-by-folder): New function that is used in
3988 mh-thread-folder to keep source folder info visible during
3991 2003-03-25 Bill Wohler <wohler@newt.com>
3993 * mh-loaddefs.el: Regenerated.
3995 * mh-customize.el (mh-index-new-messages-folders): New variable
3996 that controls which folders "F n (mh-index-new-messages)"
3997 accesses. Was mh-flists-search-folders.
3999 * mh-index.el (mh-flists-search-folders): Still used internally,
4000 but users now use new option mh-index-new-messages-folders.
4001 Removed documentation since to avoid duplication with
4002 mh-index-new-messages-folders.
4003 (mh-flists-recursive-search-flag): Deleted. Use
4004 mh-recursive-folders-flag instead.
4005 (mh-flists-execute): Updated docs to specify which global
4006 variables are used. Use mh-recursive-folders-flag instead of
4007 mh-flists-recursive-search-flag.
4008 (mh-index-new-messages): Edited doc, and refer to new option
4009 mh-index-new-messages-folders. Ditto within code. Don't need to
4010 prepend + to folder name as flists does that for us. Use
4012 2003-03-24 Satyaki Das <satyaki@theforce.stanford.edu>
4014 * mh-e.el (mh-refile-msg): Add optional argument that controls
4015 whether mh-last-destination-folder is updated or not.
4017 2003-03-22 Satyaki Das <satyaki@theforce.stanford.edu>
4019 * mh-customize.el (mh-tool-bar-define): Fix a problem in the
4020 XEmacs version which caused the show mode toolbar to have the
4021 buttons in the reverse order. Also the add-hooks are no longer
4022 needed since mh-toolbar-init is called in the appropriate modes.
4024 * mh-comp.el (mh-letter-mode): Call mh-toolbar-init in XEmacs to
4027 * mh-utils.el (mh-show-mode): Same as above.
4029 * mh-e.el (mh-folder-mode): Same as above.
4031 2003-03-21 Satyaki Das <satyaki@theforce.stanford.edu>
4033 * mh-utils.el (mh-exec-cmd-env-daemon): New function which
4034 executes a command asynchronously with its own environment.
4036 * mh-comp.el (mh-redistribute): The function has been modified so
4037 that /bin/sh isn't used to run send. It has also been refactored
4038 so that the same code isn't repeated.
4040 2003-03-21 Bill Wohler <wohler@newt.com>
4042 * mh-customize.el (mh-invisible-header-fields): Added X-Bogosity
4045 2003-03-21 Satyaki Das <satyaki@theforce.stanford.edu>
4047 * mh-loaddefs.el: Regenerated.
4049 * mh-xemacs-toolbar.el: Remove the code since that gets generated
4050 when mh-tool-bar-define is expanded.
4051 (mh-xemacs-icon-map): A alist to map GNU Emacs icon names to the
4052 actual icons to be used in XEmacs. This is used in
4055 * mh-customize.el (mh-toolbar): Use this group in XEmacs as well.
4056 (mh-tool-bar-item-*): All these constants have been removed since
4057 they aren't needed in the new scheme.
4058 (mh-tool-bar-reply-3-buttons-flag): This variable has been
4060 (mh-tool-bar-search-function): This is now used in XEmacs as well.
4061 (mh-tool-bar-folder-set, mh-tool-bar-folder-buttons-set)
4062 (mh-tool-bar-letter-buttons-set, mh-tool-bar-show-set)
4063 (mh-tool-bar-letter-set): These functions aren't defined at the
4065 (mh-tool-bar-reply-generator): A macro to generate the required
4066 functions for the three reply buttons.
4067 (mh-tool-bar-search, mh-tool-bar-customize)
4068 (mh-tool-bar-folder-help, mh-tool-bar-letter-help)
4069 (mh-tool-bar-reply-from, mh-show-tool-bar-reply-from)
4070 (mh-tool-bar-reply-to, mh-show-tool-bar-reply-to)
4071 (mh-tool-bar-reply-all, mh-show-tool-bar-reply-all): New
4072 interactive functions that are called when tool bar buttons are
4074 (mh-xemacs-use-toolbar-flag, mh-xemacs-toolbar-position):
4075 Additional customizable variables that are present only for
4077 (mh-tool-bar-define): A macro that generates the required code
4078 for GNU Emacs and XEmacs tool bar.
4079 (mh-tool-bar-define): Define the MH-E tool bar.
4081 2003-03-17 Satyaki Das <satyaki@theforce.stanford.edu>
4083 * mh-seq.el (mh-notate-cur): Notate current message only if it
4084 hasn't been marked for deletion or refiling.
4086 2003-03-15 Bill Wohler <wohler@newt.com>
4088 * mh-customize.el (mh-invisible-header-fields): Added
4089 X-Spam-Checker-Version.
4090 (mh-auto-fields-list): checkdoc fix.
4092 2003-03-12 Satyaki Das <satyaki@theforce.stanford.edu>
4094 * mh-index.el (mh-index-new-messages): If the destination folder
4095 where the unseen messages are supposed to be copied to was
4096 already present, but MH-E doesn't have it open, then a new folder
4097 was being created. The change fixes this.
4098 (mh-index-update-unseen, mh-flists-recursive-search-flag): Fix
4101 * mh-loaddefs.el: Regenerated.
4103 2003-03-11 Satyaki Das <satyaki@theforce.stanford.edu>
4105 * mh-index.el (mh-flists-results-folder): Subfolder under
4106 +mhe-index where the results of the flists call is put.
4107 (mh-index-generate-pretty-name): Make sure that normal index
4108 searching will never use the folder reserved for the flists
4110 (mh-index-search): Add an extra parameter that marks all the
4111 messages in the index folder to the unseen sequence.
4112 (mh-index-update-unseen): Function to keep unseen sequence of
4113 index folder synced with the actual folders from where the
4114 messages were copied. This works only if the unseen messages are
4115 displayed with mh-show. Killing the unseen sequence in the index
4116 folder or adding/removing messages to it doesn't change the
4117 unseen sequence in the source folders yet.
4118 (mh-flists-search-folders): Variable that decides the folders on
4119 which flists is run.
4120 (mh-flists-recursive-search-flag): If non-nil, flists is passed
4121 the -recurse option.
4122 (mh-flists-execute): Function which uses /bin/sh to execute
4123 flists and then print out the list of message files that match.
4124 (mh-index-new-messages): New interactive function which searches
4125 for messages in the unseen sequence (closes SF #701756).
4127 * mh-utils.el (mh-show-folder-map): Add binding for
4128 mh-index-new-messages.
4129 (mh-show-msg): Update the unseen sequence in the source folder.
4131 * mh-e.el (mh-folder-font-lock-unseen): The function assumes that
4132 the end of buffer is reached when there isn't a valid scan line
4133 on the current line. This doesn't work in the index folder since
4134 we have lines containing the folder name and empty lines in
4135 between the actual scan lines. The modification removes this
4137 (mh-folder-map): Add key binding for "Fn"
4139 * mh-seq.el (mh-iterate-on-messages-in-region): If the point is
4140 not at the beginning of the line, then the first message in the
4141 region would be missed. The fix avoids this.
4143 * mh-mime.el (mh-inline-vcard-p): Don't try to inline vcards if
4144 we don't have the right libraries.
4146 2003-03-10 Satyaki Das <satyaki@theforce.stanford.edu>
4148 * mh-e.el (mh-next-undeleted-msg, mh-previous-undeleted-msg)
4149 (mh-next-msg): Add optional argument wait-after-complaining-flag.
4150 If non-nil and there are no undeleted messages after (or before)
4151 the current one, then pause for a second after printing out the
4153 (mh-refile-or-write-again): Modify call to mh-next-msg to use the
4154 wait-after-complaining-flag.
4156 2003-03-10 Satyaki Das <satyaki@theforce.stanford.edu>
4158 * mh-e.el (mh-refile-or-write-again): If mh-next-msg fails to find
4159 a message to go to it prints out a diagnostic, which overwrites
4160 the diagnostic about the folder the message was refiled to. The
4163 2003-03-09 Satyaki Das <satyaki@theforce.stanford.edu>
4165 * mh-seq.el (mh-widen, mh-narrow-to-seq): Update
4166 mh-narrowed-to-seq before notating sequences. This is a bit
4167 helpful for mh-tick.el.
4168 (mh-put-msg-in-seq): Fix a minor bug. No internal sequence should
4169 be notated -- the original code was doing the right thing only for
4170 the "unseen" sequence.
4172 * mh-index.el (mh-index-choose): Add autoload cookie for
4173 mh-index-choose. This is needed for GNU Emacs 20.5.
4175 * mh-loaddefs.el: Regenerated.
4177 2003-03-09 Bill Wohler <wohler@newt.com>
4179 * mh-mime.el (mh-display-smileys): This function originally had a
4180 test to see if font-lock-maximum-size was bound, but this was
4181 recently removed. The test was put in for a reason; if
4182 font-lock-maximum-size isn't bound, void-variable errors would
4183 ensue. I put the bound test back in.
4185 2003-03-08 Steve Youngs <youngs@xemacs.org>
4187 * mh-mime.el (mh-mime-security-button-map): Use 'mh-push-button'
4190 2003-03-07 Satyaki Das <satyaki@theforce.stanford.edu>
4192 * mh-xemacs-toolbar.el: Declare a whole bunch of stuff for GNU
4193 Emacs, so that we don't get so many compiler warnings. Also
4194 surround calls to set-specifier and toolbar-make-button-list with
4195 mh-funcall-if-exists. Maybe GNU Emacs shouldn't try to compile
4196 this file in the first place.
4198 * mh-xemacs-compat.el (mh-modeline-glyph): Declare it within
4199 mh-do-in-xemacs to avoid compiler warning in GNU Emacs.
4200 (mh-xemacs-push-button): Removed.
4202 * mh-mime.el (mh-mime-button-map): Use the generalized
4203 mh-push-button function.
4204 (mh-push-button): Enhance it so that it works on XEmacs too.
4206 2003-03-08 Steve Youngs <youngs@xemacs.org>
4208 * mh-xemacs-compat.el (mh-modeline-logo): New constant holding the
4210 (mh-modeline-glyph): Use it.
4212 2003-03-08 Steve Youngs <youngs@xemacs.org>
4214 * mh-xemacs-toolbar.el: New file that defines and displays a
4217 * mh-xemacs-compat.el (mh-xemacs-toolbar): Require it here.
4219 * Makefile (MH-E-SRC): Add mh-xemacs-toolbar.el.
4221 * mh-customize.el (mh-toolbar):
4222 (mh-tool-bar-letter-buttons):
4223 (mh-tool-bar-letter-buttons-set):
4224 (mh-tool-bar-folder-buttons):
4225 (mh-tool-bar-folder-buttons-set):
4226 (mh-tool-bar-search-function):
4227 (mh-tool-bar-reply-3-buttons-flag):
4228 (mh-tool-bar-item-inc):
4229 (mh-tool-bar-item-save-mime):
4230 (mh-tool-bar-item-prev-msg):
4231 (mh-tool-bar-item-page-msg):
4232 (mh-tool-bar-item-next-msg):
4233 (mh-tool-bar-item-delete):
4234 (mh-tool-bar-item-refile):
4235 (mh-tool-bar-item-undo):
4236 (mh-tool-bar-item-perform):
4237 (mh-tool-bar-item-toggle-show):
4238 (mh-tool-bar-item-reply-from):
4239 (mh-tool-bar-item-reply-to):
4240 (mh-tool-bar-item-reply-all):
4241 (mh-tool-bar-item-reply):
4242 (mh-tool-bar-item-alias):
4243 (mh-tool-bar-item-compose):
4244 (mh-tool-bar-item-rescan):
4245 (mh-tool-bar-item-repack):
4246 (mh-tool-bar-item-search):
4247 (mh-tool-bar-item-visit):
4248 (mh-tool-bar-item-prefs):
4249 (mh-tool-bar-item-help):
4250 (mh-tool-bar-item-widen):
4251 (mh-tool-bar-item-send):
4252 (mh-tool-bar-item-attach):
4253 (mh-tool-bar-item-spell):
4254 (mh-tool-bar-item-save):
4255 (mh-tool-bar-item-undo-op):
4256 (mh-tool-bar-item-kill):
4257 (mh-tool-bar-item-copy):
4258 (mh-tool-bar-item-paste):
4259 (mh-tool-bar-item-kill-draft):
4260 (mh-tool-bar-item-comp-prefs):
4261 The MH-E toolbar for XEmacs is defined differently from the
4262 GNU/Emacs version, so only define these if we're in GNU/Emacs.
4263 XEmacs doesn't need to see them and it's always good to cut down
4266 2003-03-08 Steve Youngs <youngs@xemacs.org>
4268 * mh-mime.el (mh-mime-button-map): Bind the 2nd mouse button to
4269 `mh-xemacs-push-button' in XEmacs.
4270 (mh-mime-security-button-map): Ditto.
4272 * mh-xemacs-compat.el: Shush the byte-compiler.
4273 (mh-xemacs-push-button): New function to make MIME buttons work in
4276 2003-03-08 Steve Youngs <youngs@xemacs.org>
4278 * mh-mime.el (mh-display-emphasis): Don't test
4279 `font-lock-maximum-size' to see if it is bound, just test for a
4280 non-nil value. This variable can have a nil value which makes it
4281 bound and dividing nil by 8 throws an error.
4282 This fixes a bug in MH-E under XEmacs when
4283 `font-lock-maximum-size' is nil that prevented article emphasis
4284 and smiley display which in turn was causing the "Flush changes in
4285 article x y/n" errors.
4286 (mh-display-smileys): Ditto.
4288 2003-03-08 Steve Youngs <youngs@xemacs.org>
4290 * mh-utils.el (mh-logo-display): Display logo in XEmacs as well.
4292 * mh-xemacs-compat.el (mh-modeline-glyph): New. The MH-E modeline
4295 2003-03-06 Satyaki Das <satyaki@theforce.stanford.edu>
4297 * mh-utils.el (mh-allow-root-folder-flag): New global variable
4298 that decides if "+" is an acceptable folder name.
4299 (mh-folder-completion-function): Refine the test for existing
4300 folders to take mh-allow-root-folder-flag into account.
4301 (mh-folder-completing-read, mh-prompt-for-folder): Use the
4302 allow-root-folder-flag argument of mh-prompt-for-folder and add a
4303 similar argument to mh-folder-completing-read.
4304 (mh-exec-cmd-error): Make the function nicer by using
4305 process-environment to pass the environment variable assignments.
4307 2003-03-05 Satyaki Das <satyaki@theforce.stanford.edu>
4309 * mh-mime.el (mh-push-button): Preserve point in the show buffer
4310 if the mouse is used to expand/contract a button.
4312 * mh-customize.el (mh-x-face-file): Mention X-Image-URL in
4315 * mh-comp.el (mh-insert-x-face): Modified to allow insertion of
4316 X-Image-URL header field.
4318 2003-03-04 Satyaki Das <satyaki@theforce.stanford.edu>
4320 * mh-utils.el (mh-face-display-function): Modified to facilitate
4321 display of X-Image-URL images.
4322 (mh-find-path): Initialize X-Image-URL cache directory.
4323 (mh-x-image-url-cache-canonicalize, mh-x-image-url-fetch-image)
4324 (mh-x-image-scale-and-display, mh-x-image-url-display)
4325 (mh-x-image-display): New functions for X-Image-URL image display
4326 and cache management.
4328 * mh-customize.el (mh-show-use-xface-flag): Add info about
4329 requirements for X-Image-URL display.
4330 (mh-fetch-x-image-url): New customizable variable that controls
4331 fetching of X-Image-URL.
4333 2003-03-04 Satyaki Das <satyaki@theforce.stanford.edu>
4335 * mh-utils.el (mh-make-local-hook): New macro which works around
4336 API changes in add-hook. Version of GNU Emacs before 21.1 and
4337 XEmacs require a call to make-local-hook and just the LOCAL
4338 argument of add-hook is not sufficient.
4339 (mh-show-mode): Make kill-buffer-hook buffer local.
4341 * mh-e.el (mh-folder-mode): Same as above.
4343 * mh-comp.el (mh-compose-and-send-mail): Same as above.
4345 2003-03-02 Satyaki Das <satyaki@theforce.stanford.edu>
4347 * mh-mime.el (mh-push-button): Clicking on a MIME button used to
4348 cause the window with the show buffer to be selected. With this
4349 change the selected window doesn't change.
4351 2003-03-01 Satyaki Das <satyaki@theforce.stanford.edu>
4353 * mh-speed.el (mh-speed-flists): Avoid a potential race condition.
4354 When flists is called manually, or when an unseen message is read,
4355 mh-speed-partial-line was not reinitialized.
4357 * mh-e.el (mh-visit-folder): If mh-visit-folder is used to visit
4358 the folder currently being visited (effectively doing a rescan)
4359 then mh-previous-window-config is erroneously set. The change
4362 * mh-customize.el (mh-index-show-hook): Remove unused variable.
4364 2003-02-28 Satyaki Das <satyaki@theforce.stanford.edu>
4366 * mh-e.el (mh-scan-folder): Call mh-reset-threads-and-narrowing
4367 only after the user has replied to question. This avoids premature
4368 clearing of the folder.
4369 (mh-rescan-folder, mh-visit-folder): Remove calls to
4370 mh-reset-threads-and-narrowing since it is now called in
4371 mh-scan-folder anyway.
4373 * mh-funcs.el (mh-sort-folder): Same as above.
4375 2003-02-26 Satyaki Das <satyaki@theforce.stanford.edu>
4377 * mh-alias.el (mh-alias-alist): Change initial value to a symbol,
4378 so that it is different from the empty list, which could also
4379 mean that there are no aliases.
4380 (mh-alias-reload-maybe): Change test so that empty alist of
4381 aliases is properly handled (closes SF #693859).
4383 2003-02-25 Satyaki Das <satyaki@theforce.stanford.edu>
4385 * mh-mime.el (mh-decode-message-header): The message header could
4386 be encoded, for instance the author's name could contain
4387 characters not in ASCII. This function will decode such header
4389 (mh-mm-inline-message): Use mh-decode-message-header.
4391 * mh-utils.el (mh-display-msg): Use mh-decode-message-header.
4392 (mh-message-number-width): Use mh-scan-prog instead of "scan".
4394 * mh-loaddefs.el: Regenerated.
4396 2003-02-24 Satyaki Das <satyaki@theforce.stanford.edu>
4398 * mh-utils.el (mh-truncate-log-buffer): Refine it so that the
4399 function will do the right thing even if called from a buffer
4400 other than mh-log-buffer.
4402 2003-02-22 Peter S Galbraith <psg@debian.org>
4404 * mh-alias.el (mh-alias-add-alias): Really fix SF #690216.
4405 This functions needs to strip brackets on standalone addresses as
4408 2003-02-21 Satyaki Das <satyaki@theforce.stanford.edu>
4410 * mh-xemacs-compat.el (replace-regexp-in-string): Remove the
4411 definition since it isn't used any more.
4413 2003-02-20 Peter S Galbraith <psg@debian.org>
4415 * mh-alias.el (mh-alias-which-file-has-alias): Bug fix. Needed to
4416 specify `noerror' on search.
4418 * mh-alias.el (mh-alias-suggest-alias): Add condition for input
4419 string being an email address in brackets. We need to strip out
4420 the brackets. (closes SF #690216)
4422 2003-02-20 Satyaki Das <satyaki@theforce.stanford.edu>
4424 * mh-pick.el (mh-search-folder): The function was setting the
4425 global value of the variables mh-current-folder and
4426 mh-previous-window-config. This can lead to problems in code which
4427 assumes that these variables are nil when we aren't in a folder
4428 buffer. So make the variables local before setting them.
4430 2003-02-19 Satyaki Das <satyaki@theforce.stanford.edu>
4432 * mh-mime.el (mh-mime-display): All the MIME display code has been
4433 wrapped in a condition-case so that if something goes wrong, the
4434 raw message will be displayed.
4436 * mh-funcs.el (mh-undo-folder): Comment out call to sit-for that
4439 * mh-e.el (mh-scan-folder): Messages marked for deletion or
4440 refiling weren't getting annotated properly. The change fixes
4442 (mh-process-or-undo-commands): Change prompt to reflect what
4443 really happens in the code.
4445 2003-02-18 Satyaki Das <satyaki@theforce.stanford.edu>
4447 * mh-comp.el (mh-folder-expand-at-point): The function
4448 mail-abbrev-complete-alias often returns nil. This had the
4449 unfortunate consequence of always causing an error. The change
4452 * mh-alias.el (mh-alias-canonicalize-suggestion): New function
4453 which obviates the our need replace-regexp-in-string.
4454 (mh-alias-suggest-alias): Use mh-alias-canonicalize-suggestion to
4455 eliminate calls to replace-regexp-in-string. This avoids problems
4458 * mh-utils.el (mh-notate): Handle the case when nil is passed as
4459 notation gracefully.
4460 (mh-speed-flists-active-p): New function that returns non-nil if
4461 flists is being used in the speedbar to update message counts.
4463 * mh-seq.el (mh-put-msg-in-seq): Fix a bug which made it
4464 impossible to add messages to the unseen sequence. Also adding
4465 messages to the unseen sequence will now update the speedbar
4466 message counts immediately.
4468 * mh-e.el (mh-get-new-mail, mh-process-commands)
4469 (mh-undefine-sequence): Update speedbar message counts, if the
4470 speedbar is active and is displaying message counts.
4471 (mh-delete-msg-from-seq): In addition to updating message counts,
4472 unhighlight the message so that interactively removing messages
4473 from the unseen sequence makes the bold highlight of unseen
4474 messages in the scan buffer go away.
4475 (mh-clear-text-properties): New function that removes all text
4476 properties from the current scan line.
4478 2003-02-15 Satyaki Das <satyaki@theforce.stanford.edu>
4480 * mh-utils.el (mh-face-display-function): Wrap call of
4481 insert-image in mh-funcall-if-exists. This avoids a compiler
4484 * mh-speed.el (mh-speed-flists): Weaken test a bit to avoid
4485 compiler warning in Emacs20.
4486 (mh-speedbar-change-expand-button-char): Wrap call of
4487 speedbar-insert-image-button-maybe in mh-funcall-if-exists. This
4488 function isn't present in the speedbar that ships with Emacs20, so
4489 calling it there causes an error.
4491 * mh-seq.el (mh-msg-is-in-seq): Adjust loop call a bit to avoid
4492 compiler warning in XEmacs. The XEmacs compiler should be improved
4493 so that such spurious warnings from builtin macros are suppressed.
4495 * mh-index.el (mh-index-search): Same as above.
4497 * mh-e.el (tool-bar-mode): The declaration is needed for Emacs20
4500 * mh-comp.el (mailabbrev): Try loading it any way. Some day XEmacs
4501 will get it and then MH-E will just use it.
4502 (tool-bar-mode, tool-bar-map): These declarations are needed for
4504 (mh-mail-abbrev-make-syntax-table, mh-folder-expand-at-point):
4505 Remove mh-mail-abbrev-make-syntax-table since mh-funcall-if-exists
4506 can be used instead.
4508 * mh-alias.el (require): Avoid autoloading functions that may not
4510 (mh-read-address, mh-alias-letter-expand-alias): Rewrite using
4511 mh-funcall-if-exists.
4513 2003-02-15 Satyaki Das <satyaki@theforce.stanford.edu>
4515 * mh-loaddefs.el: Regenerated.
4517 * mh-speed.el (mh-folder-speedbar-buttons, mh-speed-add-buttons)
4518 (mh-speed-toggle): Reuse markers instead of creating more of them.
4519 (mh-speed-flists-folder, mh-speed-flists): Add optional folder
4520 argument to mh-speed-flists so that message counts are updated
4521 only for that one folder.
4522 (mh-speed-parse-flists-output): If no change in counts then avoid
4525 * mh-index.el (mh-index-execute): Rewritten to use a temporary
4526 buffer that is not left behind.
4528 * mh-funcs.el (mh-store-buffer): Use mh-log-buffer instead of the
4529 special purpose *Store Output* buffer.
4531 2003-02-14 Satyaki Das <satyaki@theforce.stanford.edu>
4533 * mh-customize.el (mh-show-xface-face): Make it always be black
4534 foreground on a white background (the reverse of that can make
4535 some X-Face images look creepy).
4537 * mh-utils.el (mh-truncate-log-buffer): Modify the function to
4538 return the current size of mh-log-buffer. Also we are now a bit
4539 more careful in adding separators between consecutive messages.
4540 (mh-exec-cmd): Fix a bug where the the log buffer would be
4541 displayed even if no error happened in the current command but
4542 the log buffer had messages from a previous error.
4544 * mh-mime.el (mh-mime-save-parts): Use mh-log-buffer to show
4547 * mh-alias.el (mh-alias-local-users): Add a space between parens.
4549 2003-02-14 Steve Youngs <youngs@xemacs.org>
4551 * mh-utils.el (mh-face-display-function): Call
4552 `x-face-xmas-wl-display-x-face' using `mh-funcall-if-exists'.
4554 * mh-xemacs-compat.el (replace-regexp-in-string): New.
4556 2003-02-13 Satyaki Das <satyaki@theforce.stanford.edu>
4558 * mh-utils.el (mh-log-buffer-lines): New variable that keeps
4559 track of the number of lines to keep in mh-log-buffer.
4560 (mh-truncate-log-buffer): New function that is used to make sure
4561 that the log buffer doesn't grow to unbounded size.
4562 (mh-exec-cmd, mh-exec-cmd-daemon, mh-handle-process-error): Use
4563 mh-truncate-log-buffer instead of erase-buffer to keep some
4564 number of previous log messages around (closes SF #685476).
4566 2003-02-13 Satyaki Das <satyaki@theforce.stanford.edu>
4568 * mh-e.el (tool-bar-mode): Declare it in XEmacs.
4569 (mh-folder-mode): Use mh-funcall-if-exists to call hl-line-mode.
4571 * mh-utils.el (mh-funcall-if-exists): New macro that calls a
4572 function only if it exists.
4573 (mh-logo-display, mh-defun-show-buffer): Use mh-funcall-if-exists
4574 to call the functions find-image and deactivate-mark.
4576 * mh-mime.el (mh-mime-cleanup, mh-small-image-p)
4577 (mh-mm-display-part): Use mh-funcall-if-exists to call the
4578 functions image-size and remove-images.
4580 * mh-comp.el (tool-bar-map, tool-bar-mode): Declare the variables
4582 (mh-folder-expand-at-point): Use mh-funcall-if-exists to call
4583 mail-abbrev-complete-alias if it exists.
4585 * mh-alias.el (mh-read-address): Use mh-funcall-if-exists for
4586 future extensibility.
4588 2003-02-13 Satyaki Das <satyaki@theforce.stanford.edu>
4590 * mh-utils.el (mh-logo-display): The function find-image is
4591 present only in GNU Emacs.
4592 (mh-defun-show-buffer): The function deactivate-mark is present
4594 (default-enable-multibyte-characters): Declare it in XEmacs to
4595 avoid compiler warning.
4596 (mh-face-display-function): Avoid inserting space if there isn't
4597 any Face or X-Face header field to display.
4599 * mh-seq.el (mh-thread-last-ancestor): Move declaration of
4600 variable before its first use to silence XEmacs warning.
4602 * mh-mime.el (default-enable-multibyte-characters, dots, type):
4603 Declare these in XEmacs to remove compiler warnings in XEmacs.
4604 (mh-mime-cleanup, mh-mm-display-part): Call remove-images only in
4606 (mh-small-image-p): Call image-size only in GNU Emacs.
4608 * mh-index.el (mh-mairix-next-result): Fix a bug where a quote
4610 (mh-swish++-regexp-builder): Remove the unused binding meta.
4612 * mh-e.el (mh-folder-size): Pass on an extra value to remove
4614 (mh-folder-mode): Surround calls to hl-line-mode and
4615 tool-bar-mode with mh-do-in-gnu-emacs since these functions
4616 aren't present in XEmacs.
4618 * mh-customize.el (mh-tool-bar-show-set, mh-tool-bar-letter-set)
4619 (mh-tool-bar-folder-set): These functions call tool-bar-*
4620 functions which are present only in GNU Emacs. So surround them
4621 with mh-do-in-gnu-emacs.
4623 * mh-comp.el (mh-letter-mode, mh-folder-expand-at-point): Only
4624 call these functions in GNU Emacs.
4625 (mail-abbrevs): Declare it in XEmacs.
4627 * mh-alias.el (mh-read-address): Call completing-read-multiple
4629 (mail-abbrevs): Declare it in XEmacs.
4630 (mh-alias-add-alias-to-file): Remove unused code.
4632 2003-02-14 Ville Skyttä <scop@xemacs.org>
4634 * mh-comp.el: Add autoloaded auto-mode-alist association.
4636 2003-02-13 Satyaki Das <satyaki@theforce.stanford.edu>
4638 * mh-utils.el (mh-face-display-function): Make the XEmacs part a
4641 2003-02-14 Steve Youngs <youngs@xemacs.org>
4643 * mh-customize.el (mh-show-xface-face): XEmacs doesn't have the
4644 ':inherit' keyword for defface, rewrite with sane defaults.
4646 * mh-utils.el (mh-face-display-function): Fix bug that was
4647 corrupting xface images when displayed with XEmacs' internal
4648 xface image support. Also make XEmacs honour 'mh-show-xface-face'
4649 when using internal xface image support.
4651 2003-02-12 Peter S Galbraith <psg@debian.org>
4653 * mh-comp.el (mh-modify-header-field): New function. To header
4654 FIELD add VALUE. If OVERWRITE-FLAG is non-nil then the old value,
4655 if present, is discarded. This is more flexible than before.
4656 (mh-insert-auto-fields): Use it. This and the new function are a
4657 courtesy of Satyaki. Thanks!
4659 * mh-customize.el (mh-auto-fields-list): Doc tweaks suggested by
4662 2003-02-12 Satyaki Das <satyaki@theforce.stanford.edu>
4664 * mh-comp.el (mh-folder-expand-at-point): Tweak the error
4665 message. Completion in the Fcc header field is only supported in
4668 2003-02-12 Peter S Galbraith <psg@debian.org>
4670 * mh-customize.el (mh-auto-fields-list): Reorder after
4671 `mh-identity-list' since it needs it to be defined. Move to
4672 mh-identity customization group.
4674 2003-02-11 Peter S Galbraith <psg@debian.org>
4676 * mh-customize.el (mh-insert-mail-followup-to-flag): Removed.
4678 (mh-insert-mail-followup-to-list): Removed. Obsolete. Use
4679 `mh-auto-fields-list' instead, which is a more general solution.
4680 (mh-auto-fields-list): New defcustom. Alist of addresses for
4681 which header lines are automatically inserted. Replaces
4682 `mh-insert-mail-followup-to-list'.
4684 * mh-comp.el (mh-insert-mail-followup-to): Removed. Obsolete.
4685 (mh-insert-auto-fields): New function. Insert custom fields if To
4686 or Cc match `mh-auto-fields-list', replacing
4687 mh-insert-mail-followup-to with a more general solution.
4688 (mh-compose-and-send-mail): Call mh-insert-auto-fields instead of
4689 mh-insert-mail-followup-to. Also don't call mh-insert-identity to
4690 insert default setting if mh-insert-auto-fields inserted an
4693 2003-02-11 Satyaki Das <satyaki@theforce.stanford.edu>
4695 * mh-utils.el (mh-show-xface-function): Try to load the external
4696 x-face library only if XEmacs doesn't have xface support.
4697 (mh-face-display-function): Renamed. Also handle various
4698 permutations of x-face and xface support in XEmacs better.
4700 * mh-customize.el (mh-show-use-xface-flag): Any emacs whose
4701 major version is greater than or equal to 21 supports display of
4702 X-Face and Face header fields.
4704 2003-02-11 Satyaki Das <satyaki@theforce.stanford.edu>
4706 * mh-utils.el (mh-do-in-gnu-emacs, mh-do-in-xemacs): Macros that
4707 execute code only in GNU Emacs and XEmacs respectively.
4708 (mh-emacs21-face-display-function): Refactor to make it slightly
4709 nicer. Get rid of compiler warnings in GNU Emacs by using the
4710 above macros. Also check for presence of xface feature (in XEmacs
4711 specific code) before trying to display X-Face header field image.
4713 2003-02-11 Steve Youngs <youngs@xemacs.org>
4715 * mh-customize.el (mh-show-use-xface-flag): If using XEmacs and
4716 can't find the external x-face pkg still enable X-Face images if
4717 feature 'xface is present.
4718 Update the doc string.
4720 * mh-utils.el (mh-emacs21-face-display-function): Make it work in
4722 (mh-show-xface-function): If using XEmacs without xface support,
4723 use x-face.el pkg. If using XEmacs with xface support, or Emacs
4724 21, use mh-emacs21-face-display-function.
4726 2003-02-11 Mark D. Baushke <mdb@gnu.org>
4728 * mh-customize.el (mh-invisible-header-fields): Add
4729 "X-Notes-Item:" which is generated by Lotus Notes Domino. See
4730 URL<http://www-12.lotus.com/ldd/doc/domino_notes/Rnext/help6_admin.nsf
4731 /f4b82fbb75e942a6852566ac0037f284/5eda03c647f879c285256c1d00396051
4732 ?OpenDocument&Highlight=0,x-notes-item> for details on how Domino
4733 users may disable (restore the default) generation of these headers.
4735 2003-02-10 Satyaki Das <satyaki@theforce.stanford.edu>
4737 * mh-comp.el (mh-folder-expand-at-point): Add function doc string
4738 and produce a nicer error message for Emacs versions that lack
4739 mail-abbrev-complete-alias.
4741 * mh-utils.el (mh-handle-process-error): Check doc fix.
4743 * mh-e.el (mh-folder-from-address): Same as above.
4745 2003-02-10 Peter S Galbraith <psg@debian.org>
4747 * mh-comp.el: require mailabbrev, except in XEmacs.
4748 (mh-mail-abbrev-make-syntax-table): New defmacro to call
4749 mail-abbrev-make-syntax-table introduced in Emacs21.
4750 (mh-folder-expand-at-point): Handle nested folders.
4751 All of the above was written by Satyaki. I just applied the patch
4754 2003-02-09 Satyaki Das <satyaki@theforce.stanford.edu>
4756 * mh-comp.el: Fixes to keep the byte compiler happy.
4758 * mh-customize.el (mh-invisible-header-fields): Modified to
4759 remove space after ":" in header field names.
4761 2003-02-09 Peter S Galbraith <psg@mixed.dyndns.org>
4763 * mh-comp.el (mh-letter-complete): Add completion for fcc lines.
4764 (mh-folder-expand-at-point): Do completion at point for folder
4765 name. Like `mh-alias-letter-expand-alias' for aliases, it doesn't
4766 work on XEmacs because it relies on `mail-abbrev-complete-alias'
4767 to do completion. Maybe Steve could update XEmacs' mailabbrev.el?
4769 2003-02-09 Peter S Galbraith <psg@debian.org>
4771 * mh-customize.el (mh-invisible-header-fields): Remove trailing
4772 space in "X-Face: " and "Face: " entries since those line often
4775 2003-02-08 Satyaki Das <satyaki@theforce.stanford.edu>
4777 * mh-utils.el (mh-emacs21-face-display-function): Use
4778 mh-show-xface-face to colorize X-Face image.
4780 * mh-customize.el (mh-invisible-header-fields): Add extra headers
4782 (mh-show-xface-face): Allow customization of the X-Face colors.
4784 2003-02-07 Satyaki Das <satyaki@theforce.stanford.edu>
4786 * mh-utils.el (mh-uncompface-executable, mh-uncompface): Remember
4787 the path of the uncompface executable so that we don't need to
4788 search for it every time.
4789 (mh-emacs21-face-display-function): If more than one X-Face (or
4790 Face) header field was present then the fields would get
4791 concatenated, leading to garbled output. The change only displays
4794 * mh-customize.el (mh-x-face-file): Change documentation since it
4795 can now be used to insert a Face header field.
4797 * mh-comp.el (mh-insert-x-face): Generalized to allow insertion
4798 of Face header field.
4800 2003-02-06 Bill Wohler <wohler@newt.com>
4802 * mh-utils.el (mh-emacs21-face-display-function): Updated
4803 docstring. It is a common mistake to refer to a header field as a
4804 header. The term header refers to the entire header while the term
4805 header field refers to a single field.
4807 * mh-customize.el (mh-show-use-xface-flag): Ditto.
4809 2003-02-06 Satyaki Das <satyaki@theforce.stanford.edu>
4811 * mh-utils.el (mh-show-xface-function): Modified to use
4812 mh-emacs21-face-display-function if we are running GNU Emacs 21.
4813 (mh-face-to-png): New function to convert a Face header to a png
4815 (mh-uncompface): New function which converts an X-Face header to
4817 (mh-icontopbm): New function that does the job of icontopbm.
4818 (mh-emacs21-face-display-function): New function that displays
4819 Face/X-Face image in GNU Emacs 21.
4820 (mh-show-xface): Modified to test if we are running in X.
4821 Otherwise face display is suppressed.
4823 * mh-customize.el (mh-show-use-xface-flag): Tweak it, now that
4824 MH-E supports face display natively on Emacs 21. Also remove the
4825 check for window-system since it doesn't belong in a customizable
4828 2003-02-06 Satyaki Das <satyaki@theforce.stanford.edu>
4830 * mh-utils.el (sendmail): Require it so that XEmacs can find
4832 (mh-mail-header-end): A substitute for mail-header-end that
4833 doesn't widen the buffer. This is essential to avoid problems when
4834 dealing with nested messages.
4835 (mh-in-header-p, mh-letter-header-font-lock)
4836 (mh-header-field-font-lock, mh-show-font-lock-fontify-region)
4837 (mh-show-unquote-From): Use mh-mail-header-end instead of
4840 * mh-mime.el (mh-decode-message-body): same as above (closes SF
4843 * mh-comp.el (mh-yank-cur-msg): same as above.
4845 2003-02-05 Satyaki Das <satyaki@theforce.stanford.edu>
4847 * mh-utils.el (mh-display-msg): Call mh-show-mode before invisible
4848 headers are cleaned. This means that any surviving X-Face header
4849 can be removed unconditionally in mh-clean-msg-header.
4850 (mh-clean-msg-header): Since the function is now called with a
4851 read-only buffer, make the buffer temporarily writable.
4853 * mh-mime.el (mh-mm-inline-message): Do X-Face display before
4854 invisible headers are removed.
4856 * mh-customize.el (mh-invisible-headers): Simplified since the
4857 X-Face header isn't treated specially any more.
4858 (mh-invisible-header-fields): Add Face: and X-Face: to list of
4861 * mh-mime.el (mh-mime-display): If body is empty the headers would
4862 be treated like the body. The change fixes this (closes SF #681162).
4863 (mh-mime-display): This change really fixes the above problem.
4865 2003-02-04 Satyaki Das <satyaki@theforce.stanford.edu>
4867 * mh-utils.el (mh-current-folder-name): Global variable that
4868 keeps track of current folder.
4869 (mh-normalize-folder-name): Substitute @ with
4870 mh-current-folder-name (closes SF #666774).
4871 (mh-prompt-for-folder): Bind mh-current-folder-name. Also
4872 invalidate cache if we are visiting a folder that wasn't found in
4873 the sub-folder cache. This is an indication that folders may have
4874 been created outside of MH-E and so the cache may be stale.
4876 2003-02-03 Satyaki Das <satyaki@theforce.stanford.edu>
4878 * mh-utils.el (mh-decode-content-transfer-encoded-message): Removed.
4879 (mh-display-msg): Remove the use of the above function.
4880 (mh-normalize-folder-name): Leading "/" characters were being
4881 lost. The change fixes this (closes SF #676890).
4883 * mh-mime.el (mh-decode-message-body): New function, factored out
4884 from mh-mime-display and enhanced, to decode message based on
4885 charset and content-transfer-encoding. This eliminates the need
4886 for the external mimencode (closes SF #674857).
4887 (mh-mime-display): Use mh-decode-message-body.
4889 * mh-e.el (mh-header-display): Don't need the binding since the
4890 variable isn't present any more.
4891 (mh-inc-folder): Avoid calling mh-show if point is not on a valid
4892 scan line (closes SF #678115).
4895 (mh-decode-content-transfer-encoded-message-flag): Removed.
4897 2003-02-03 Bill Wohler <wohler@newt.com>
4899 * import-emacs: MH-E now has its own directory in Emacs.
4901 * mh-e.el: (mh-version): Set to 7.2+cvs.
4903 2003-02-03 Bill Wohler <wohler@newt.com>
4905 * Released MH-E version 7.2.
4907 * MH-E-NEWS, README: Updated for release 7.2.
4909 * mh-e.el (Version, mh-version): Updated for release 7.2.
4911 2003-02-03 Bill Wohler <wohler@newt.com>
4913 * Makefile (dist): mkdir needs to happen *before* files are
4916 * MH-E-NEWS: Fixed some awkward verbiage.
4918 2003-02-02 Bill Wohler <wohler@newt.com>
4920 * mh-customize.el (mh-invisible-headers): Surround regexp-opt
4921 expression in parens to avoid problems viewing certain messages.
4923 2003-01-30 Satyaki Das <satyaki@theforce.stanford.edu>
4925 * mh-speed.el (mh-speed-flists): Search for flists in mh-progs.
4926 The original was inadvertently searching for flists in the user's
4929 2003-01-27 Bill Wohler <wohler@newt.com>
4931 * mh-customize.el (mh-default-folder-must-exist-flag): Changed
4932 default to t according to the principle of least surprise.
4934 2003-01-26 Bill Wohler <wohler@newt.com>
4936 * mh-utils.el: Checkdoc fixes.
4938 * mh-pick.el (mh-do-search, mh-search-folder): Checkdoc fixes.
4940 * mh-loaddefs.el: Regenerated (lm-verify fixes).
4942 * mh-index.el (mh-mairix-next-result): Checkdoc fixes.
4944 * mh-alias.el: lm-verify fix.
4946 * Makefile (MH-E-SRC): Added ChangeLog, now that Emacs has a
4947 lisp/mh-e directory.
4948 (MH-E-ETC-ETC): Removed ChangeLog.
4949 (dist): Moved creation of mail directory next to copy of files
4950 into mail directory.
4951 (install-emacs): Copy $(MH-E-SRC) into new directory
4952 $(EMACS_HOME/lisp/mh-e.
4953 (MH-E-SRC): Moved ChangeLog into new variable MH-E-OTHERS and
4954 include MH-E-LOADDEFS there too.
4955 (mh-loaddefs.el): Added lines so that lm-verify passes.
4956 (dist, install-emacs): Use MH-E-OTHERS instead of MH-E-LOADDEFS.
4958 2003-01-26 Jeffrey C Honig <jch@honig.net>
4960 * mh-comp.el (mh-tidy-draft-buffer, mh-compose-and-send-mail):
4961 Rename mh-kill-draft-hook to mh-tidy-draft-buffer.
4963 2003-01-25 Jeffrey C Honig <jch@honig.net>
4965 * mh-utils.el (mh-exec-cmd, mh-exec-cmd-daemon)
4966 (mh-process-daemon): Use mh-log-buffer for the output of commands
4969 * mh-utils.el (mh-temp-folders-buffer): Sequences and folders
4970 loose the -temp from their buffer names as they are interesting to
4973 * mh-seq.el (mh-list-sequences): New name, mh-sequences-buffer as
4974 it is intended to be interesting to the user.
4976 * mh-funcs.el (mh-list-folders): New name, mh-folders-buffer as it
4977 is intended to be interesting to the user.
4979 * mh-comp.el (mh-check-whom, mh-compose-and-send-mail): Use
4980 mh-recipients-buffer constant. Add a kill buffer hook to delete
4981 the recipients buffer when a draft buffer is killed.
4983 2003-01-25 Satyaki Das <satyaki@theforce.stanford.edu>
4985 * mh-customize.el (mh-customize): New interactive argument
4986 deletes other windows.
4987 (mh-tool-bar-show-set, mh-tool-bar-letter-set)
4988 (mh-tool-bar-folder-set): Modified so that clicking the customize
4989 and help buttons deletes the other windows in the frame.
4991 * mh-mime.el (mh-mm-inline-message): Remove unused code.
4993 * mh-seq.el (mh-notate-deleted-and-refiled): Fix a small bug where
4994 the wrong notation was being used.
4995 (mh-toggle-threads): The function had a bug if you did the
4996 following starting from an unthreaded wide folder:
4997 (1) Create a sequence with S p
4998 (2) Narrow to new sequence with S n
4999 (3) Thread narrowed folder with T t
5000 (4) Kill sequence with S k
5001 (5) Unthread narrowed folder with T t
5002 At this point we would have an empty folder. The change fixes
5004 (mh-toggle-threads): Fix documentation.
5006 * mh-customize.el (mh-invisible-header-fields): Add
5007 X-MHE-Checksum to invisible headers.
5009 * mh-comp.el (mh-insert-x-mailer): Slightly more informative
5012 2003-01-24 Satyaki Das <satyaki@theforce.stanford.edu>
5014 * mh-e.el (mh-header-display): Modified so that quoted-printable
5015 or base64 encoded messages are left untouched.
5017 * mh-utils.el (mh-decode-content-transfer-encoded-message): Munge
5018 the Content-Transfer-Encoding header so that the MIME decoding
5019 routines of Gnus doesn't get confused.
5020 (mh-display-msg): Use insert-file-contents-literally so that
5021 display will work for non-ascii.
5023 * mh-mime.el (mh-mime-display): Use charset info to decode
5024 message file (closes SF #655123).
5026 2003-01-24 Bill Wohler <wohler@newt.com>
5028 * mh-alias.el (mh-alias-add-alias-to-file): Removed period from
5029 error message and added parens around error function.
5031 2003-01-24 Satyaki Das <satyaki@theforce.stanford.edu>
5033 * mh-customize.el (mh-decode-quoted-printable-flag): Removed.
5034 (mh-decode-content-transfer-encoded-message-flag): This replaces
5035 mh-decode-quoted-printable-flag.
5037 * mh-utils.el (mh-decode-content-transfer-encoded-message): New
5038 function which handles messages that are encoded as base64 or
5039 quoted-printable (closes SF #674190).
5040 (mh-decode-quoted-printable): Removed.
5041 (mh-display-msg): Use mh-decode-content-transfer-encoded-message
5042 instead of mh-decode-quoted-printable.
5044 2003-01-23 Satyaki Das <satyaki@theforce.stanford.edu>
5046 * mh-seq.el (mh-thread-generate-scan-lines): Fix a little bug
5047 that would occasionally cause angles ('<' and '>') to appear at
5050 2003-01-21 Satyaki Das <satyaki@theforce.stanford.edu>
5052 * mh-seq.el (mh-notate-cur): Enable overlay arrow display in text
5055 * mh-e.el (mh-folder-mode): Initialize overlay-arrow-string so
5056 that a '>' is displayed in text mode.
5058 2003-01-20 Satyaki Das <satyaki@theforce.stanford.edu>
5060 * mh-utils.el (mh-scan-msg-overflow-regexp): Change the variable
5061 so that a space is always maintained in the beginning of the scan
5064 * mh-seq.el (mh-notate-seq, mh-notate-cur): Make the functions
5065 faster by cutting down on the use of mh-goto-msg.
5066 (mh-toggle-threads): Add call to mh-notate-cur, since inserting
5067 the folder names in a search results folder screws up the
5068 location of the overlay arrow.
5070 * mh-index.el (mh-index-delete-folder-headers): Position the
5071 point on a message line if possible.
5073 * mh-funcs.el (mh-copy-msg): Use the mh-iterate macro to make the
5076 * mh-e.el (mh-scan-folder): Reuse mh-notate-deleted-and-refiled.
5078 * mh-loaddefs.el: Regenerated.
5080 * mh-utils.el (mh-add-msgs-to-seq): Add a new parameter that
5081 suppresses the annotation of the sequence since it is
5084 * mh-seq.el (mh-delete-seq): Speed up the part of the function
5085 that removes the sequence notation.
5086 (mh-put-msg-in-seq, mh-notate-deleted-and-refiled): Use
5087 mh-iterate-on-messages-in-region to make the function fasters when
5088 operating on regions. The key idea is to loop over the folder
5089 buffer exactly once and do all annotations. The existing algo
5090 would walk over the buffer multiple times thereby slowing things
5092 (mh-iterate-on-messages-in-region): Added an extra parameter which
5093 is bound to the message index as the loop is executed.
5094 (mh-region-to-msg-list, mh-thread-delete, mh-thread-refile): Use
5095 the new mh-iterate-on-messages-in-region macro.
5097 * mh-e.el (mh-delete-msg-no-motion, mh-refile-msg, mh-undo): Same
5099 (mh-notate-user-sequences): Change algorithm to make notating of
5100 user sequences fast.
5102 2003-01-19 Satyaki Das <satyaki@theforce.stanford.edu>
5104 * mh-logo.xpm: New image file that contains the MH-E logo.
5105 Change foreground color to the blue in the MH-E logo.
5107 * Makefile (MH-E-IMG): Add mh-logo.xpm to list of image files.
5109 * mh-utils.el (mh-show-buffer-mode-line-buffer-id): Adjust it to
5110 keep space in the beginning for the logo.
5111 (mh-logo-cache): New variable that caches the logo image file
5113 (mh-logo-display): Display the MH-E logo on the mode line.
5114 (mh-display-msg): Display logo in mh-show-mode.
5116 * mh-e.el (mh-make-folder-mode-line): Display logo in
5119 * mh-comp.el (mh-compose-and-send-mail): Display logo in
5122 * mh-loaddefs.el: Regenerated.
5124 * mh-seq.el (mh-iterate-on-messages-in-region): New macro to
5125 iterate on all messages in a region.
5126 (mh-region-to-msg-list): Simplified since it uses
5127 mh-iterate-on-messages-in-region now.
5129 * mh-e.el (mh-delete-msg, mh-refile-msg): Change interactive spec
5130 to pass the region that is to be deleted when appropriate.
5131 (mh-delete-msg-no-motion, mh-refile-msg, mh-undo): Operate on
5132 regions directly without creating the list of messages to be
5134 (mh-delete-a-msg, mh-refile-a-msg, mh-undo-msg): The msg
5135 parameter in these functions can now be nil. If so, the current
5136 message is deleted, refiled or undone respectively. Avoids the
5137 use of mh-goto-msg in this case and speeds up operations on
5138 regions quite a bit.
5140 2003-01-19 Peter S Galbraith <psg@debian.org>
5142 * mh-alias.el (mh-read-address): Bug Fix. In XEmacs and Emacs20,
5143 it would always prompt using "To: " instead of using the command
5144 argument (closes SF #670913).
5146 2003-01-19 Satyaki Das <satyaki@theforce.stanford.edu>
5148 * mh-utils.el (mh-folder-completion-function): If there is a
5149 +foo/bar folder and the user types foo//bar then the completion
5150 function would say a match happened without showing the
5151 normalized folder name. This change fixes that.
5153 2003-01-18 Satyaki Das <satyaki@theforce.stanford.edu>
5155 * mh-e.el (mh-rmail): Modified so that new and unseen messages
5156 are shown (closes SF #667542).
5158 2003-01-17 Satyaki Das <satyaki@theforce.stanford.edu>
5160 * mh-index.el (mh-index-generate-pretty-name): Generate nicer
5161 names. In particular all '-' characters are removed.
5163 2003-01-16 Satyaki Das <satyaki@theforce.stanford.edu>
5165 * mh-customize.el (mh-index-program): Documentation fix.
5167 * mh-loaddefs.el: Regenerated.
5169 * mh-customize.el (mh-index-program): Add choices for mairix and
5172 * mh-index.el (mh-indexer-choices): Add search interfaces for
5174 (mh-index-search): Add links for mairix and pick.
5175 (mh-index-pick-folder, mh-pick-binary): Variables needed to
5176 implement pick support.
5177 (mh-pick-execute-search, mh-pick-next-result): New functions to
5178 implement pick support.
5179 (mh-mairix-binary, mh-mairix-directory, mh-mairix-folder): New
5180 variables for mairix support.
5181 (mh-mairix-execute-search, mh-mairix-next-result)
5182 (mh-mairix-regexp-builder, mh-mairix-convert-to-sop*): New
5183 functions for mairix.
5185 * mh-funcs.el (mh-kill-folder): Move message to the end.
5187 * mh-e.el (mh-folder-mode): Make overlay-arrow-position and
5188 overlay-arrow-string local variables so that the arrow will
5189 remain even if some other folder is visited.
5190 (mh-remove-cur-notation, mh-remove-all-notation): The test isn't
5191 required any more since overlay-arrow-position is local.
5192 (mh-goto-cur-msg): Remove overlay arrow if current message
5195 * mh-seq.el (mh-notate-cur): Don't need to set
5196 overlay-arrow-string any more since it is local and has been set
5199 2003-01-15 Satyaki Das <satyaki@theforce.stanford.edu>
5201 * mh-speed.el (mh-speed-current-folder): Keep track of current
5202 folder when flists is called.
5203 (mh-speed-flists, mh-speed-parse-flists-output): Try to avoid
5204 ambiguity when folders are present with + at the end of the name.
5205 Unfortunately it can't always be avoided.
5207 * mh-e.el (mh-folder-size): Remove the unnecessary error check.
5208 (mh-parse-flist-output-line): Add extra argument which
5209 occasionally avoid problems with folder names that end with '+'.
5211 * mh-utils.el (mh-sub-folders-actual): Fix the folder name
5212 parsing so that it doesn't get confused by trailing '+' chars in
5215 2003-01-14 Satyaki Das <satyaki@theforce.stanford.edu>
5217 * mh-utils.el (mh-normalize-folder-name): Enhanced so that it can
5218 now handle ".." and "." correctly during folder name completion.
5219 (mh-normalize-folder-name): Avoid error in boundary condition
5220 where the folder string is empty.
5222 2003-01-14 Mark D. Baushke <mdb@gnu.org>
5224 * mh-e.el (mh-visit-folder): Pass `current-prefix-arg' to
5225 the `mh-read-msg-range' function as the optional
5228 2003-01-14 Satyaki Das <satyaki@theforce.stanford.edu>
5230 * mh-utils.el (mh-normalize-folder-name): New function that
5231 normalizes folder names.
5232 (mh-sub-folders): Use mh-normalize-folder-name. Also the function
5233 has been modified so that a trailing slash is only added if the
5234 folder potentially has subfolders.
5235 (mh-sub-folders-actual): Simplified since the folder has already
5236 been normalized in mh-sub-folders.
5237 (mh-remove-from-sub-folders-cache): Modified so that the cached
5238 results of two of the folders ancestors are invalidated.
5239 (mh-folder-completion-map): Ugly hack to make the error go away
5240 when minibuffer-complete-word is called.
5241 (mh-folder-completion-function): The completion function will now
5242 be more selective in adding '/' at the end of completed folder
5244 (mh-folder-completing-read): The folder name is normalized before
5245 return. The minibuffer-local-completion-map is shadowed to avoid
5246 error with SPC (bound to minibuffer-complete-word). We really
5247 need a better solution.
5249 2003-01-13 Bill Wohler <wohler@newt.com>
5251 * mh-seq.el: Edited comment and docstring text to conform with RFC
5252 2822 terminology. Message-ID is the header field. It contains a
5255 2003-01-13 Satyaki Das <satyaki@theforce.stanford.edu>
5257 * mh-utils.el (mh-sub-folders): Add an argument that returns
5258 sub-folders with a / character appended at the end.
5259 (mh-folder-completion-function): Modify the function so that one
5260 tab is now sufficient to complete the folder name and add a
5262 (mh-folder-completing-read): Remove the trailing / that the
5263 completion function now adds to the folder name. Also multiple /
5264 characters in the folder input are removed. So if the user inputs
5265 +foo///bar//baz///// then that will be converted to +foo/bar/baz.
5266 This will improve the performance of caching.
5268 * mh-seq.el (mh-notate-cur): Check that a valid current message
5269 exists before trying to notate (closes SF #667331).
5270 (mh-message-id-regexp): New variable to store regexp to recognize
5272 (mh-thread-generate): Use mh-message-id-regexp to filter out non
5273 message-id's from the References: header.
5275 2003-01-12 Satyaki Das <satyaki@theforce.stanford.edu>
5277 * mh-seq.el (mh-notate-cur): Disable overlay-arrow display if we
5278 aren't on a graphic display.
5280 2003-01-11 Satyaki Das <satyaki@theforce.stanford.edu>
5282 * mh-seq.el (mh-notate-cur): New function to notate the current
5283 message. The marker in the fringe is updated too.
5284 (mh-narrow-to-seq, mh-widen, mh-thread-inc, mh-thread-folder): Use
5285 the specialized function mh-notate-cur instead of mh-notate-seq.
5287 * mh-e.el (mh-arrow-marker): New buffer local variable to store
5288 the position where the marker in the fringe is going to be
5289 displayed (closes SF #664824).
5290 (mh-folder-mode): Create a marker for the fringe.
5291 (mh-update-sequences, mh-get-new-mail, mh-goto-cur-msg): Call the
5292 specialized function mh-notate-cur instead of mh-notate-seq or
5294 (mh-remove-cur-notation, mh-remove-all-notation): Reset the
5295 overlay-arrow-position if needed.
5297 * mh-loaddefs.el: Regenerated.
5299 2003-01-10 Satyaki Das <satyaki@theforce.stanford.edu>
5301 * mh-utils.el (mh-remove-from-sub-folders-cache): Modified so that
5302 creating nested folders doesn't produce inconsistent results.
5303 (mh-prompt-for-folder): Remove call of mh-folder-list-change-hook.
5305 * mh-funcs.el (mh-kill-folder): Don't ask for confirmation if
5306 called on a folder holding index search results. Also the now
5307 removed mh-folder-list-change-hook is called no more.
5309 * mh-customize.el (mh-auto-folder-collect-flag)
5310 (mh-folder-list-change-hook): Removed.
5312 * mh-loaddefs.el: Regenerated.
5314 2003-01-10 Bill Wohler <wohler@newt.com>
5316 * mh-customize.el (mh-default-folder-must-exist-flag): New
5317 variable to suppress suggested folder if the folder doesn't
5318 already exist (closes SF #657096).
5319 (mh-default-folder-list): New variable that
5320 holds mapping between an address and the desired folder for
5321 filing (closes SF #657096).
5322 (mh-default-folder-prefix, mh-default-folder-must-exist-flag): In
5323 docstring, refer to documentation for mh-prompt-for-refile-folder
5324 and mh-folder-from-address.
5325 (mh-highlight-citation-p, mh-compose-insertion,
5326 (mh-insert-mail-followup-to-list, mh-index-program,
5327 (mh-identity-default): Fixed case of tags.
5329 * mh-e.el (mh-folder-from-address): Use new variable
5330 mh-default-folder-must-exist-flag to return nil if this variable
5331 is t and the folder doesn't already exist. In addition, can now
5332 look up a default folder in the new variable
5333 mh-default-folder-list (closes SF #657096).
5334 (mh-prompt-for-refile-folder): In docstring, refer to
5335 documentation in mh-folder-from-address.
5337 * mh-index.el (mh-swish-execute-search): Changed \..* to \\..* in
5338 the FileRules filename in the sample config file. Otherwise, the
5339 users don't see the backslash at all, and no files are indexed!
5340 (closes SF #665888).
5342 2003-01-10 Satyaki Das <satyaki@theforce.stanford.edu>
5344 * mh-seq.el (mh-thread-folder): Get headers for exactly the
5345 messages that are present. If only messages 1-10 and 3800-3900
5346 are being shown then we will now scan exactly those messages and
5347 not the full range from 1-3900 as was being done earlier.
5348 (mh-toggle-threads): When converting from threaded to normal view
5349 only the messages present in the buffer are scanned. Earlier all
5350 messages from the minimum to the maximum would be scanned (closes
5353 * mh-pick.el (mh-search-folder): Fix typo.
5354 (mh-pick-do-search): Fix bug from cut and paste. Also set window
5357 * mh-utils.el (mh-prompt-for-folder): Add new argument to allow
5358 it to accept + as a folder name. This allows the user to search
5359 all folders when "Fs" is used.
5361 * mh-pick.el (mh-search-folder): Fix interactive spec of function.
5362 (mh-pick-do-search): Rewritten to call pick in one go. This will
5363 make adding pick as a default index search program easier. Also
5364 pick now accepts the same query syntax as the index search
5365 programs (closes SF #664816).
5366 (mh-next-pick-field): Removed.
5367 (mh-pick-parse-search-buffer): New function to parse the search
5369 (mh-pick-construct-regexp, mh-pick-regexp-builder): New function
5370 to produce a pick query from the parsed representation.
5372 * mh-index.el (mh-index-do-search): Refactor the search pattern
5373 parser into a new function and use that instead.
5375 * mh-loaddefs.el: Regenerated.
5377 2003-01-10 Satyaki Das <satyaki@theforce.stanford.edu>
5379 * mh-loaddefs.el: Regenerated.
5381 * mh-utils.el (mh-remove-from-sub-folders-cache)
5382 (mh-prompt-for-folder): Replace mh-update-sub-folders-cache with
5383 mh-remove-from-sub-folders-cache.
5384 (mh-exec-cmd-daemon): Mention set-process-filter in documentation.
5386 * mh-pick.el (mh-searching-function): New buffer local variable
5387 that keeps track of the default searching function to be used.
5388 (mh-pick-mode): Make mh-searching-function buffer local.
5389 (mh-search-folder): Set mh-searching-function to use pick.
5390 (mh-search-folder, mh-pick-menu, mh-pick-mode-help-messages)
5391 (mh-pick-mode, mh-do-pick-search, mh-pick-do-search): Rename
5392 mh-do-pick-search to mh-pick-do-search. But keep
5393 mh-do-pick-search as a deprecated function.
5394 (mh-do-search): New interactive function that performs the
5396 (mh-pick-mode-map): Update keymap.
5398 * mh-index.el (mh-index-search): Set mh-searching-function to do
5400 (mh-index-new-folder): Replace mh-update-sub-folders-cache with
5401 mh-remover-from-sub-folders-cache.
5403 * mh-funcs.el (mh-kill-folder): Same as above.
5405 * mh-index.el (mh-index-evaluate, mh-swish++-regexp-builder):
5408 * mh-customize.el: Fixes to make byte compiler in CVS Emacs
5411 2003-01-09 Bill Wohler <wohler@newt.com>
5413 * mh-e.el (mh-folder-from-address): New function that proposes the
5414 name of a folder with an alias for the address in the current message.
5415 (mh-prompt-for-refile-folder): Use it (closes SF #657096).
5417 * mh-customize.el (mh-default-folder-prefix): New variable used by
5418 mh-folder-from-address.
5419 (mh-invisible-header-fields): Edited docstring.
5421 * mh-alias.el (mh-alias-address-to-alias): Added ;;;###mh-autoload
5422 cookie (used by mh-folder-from-address in mh-e.el). Edited text in
5425 * mh-utils.el: Provided naming conventions for buffer and buffer
5427 (mh-temp-folders-buffer): Renamed buffer to " *mh-folders*".
5428 (mh-temp-sequences-buffer): Renamed buffer to " *mh-sequences*".
5429 (mh-info-buffer): Renamed from mh-temp-info-buffer.
5430 (mh-log-buffer): New buffer variable to hold name of "*MH-E Log*"
5431 buffer which is expected to be used for the output of MH commands.
5432 Perhaps we always create this buffer at initialization and append
5433 to it rather than erase it each time?
5435 * mh-e.el (mh-quit): Loop over all buffers and delete MH-E
5436 temporary and working buffers. As long as the buffer naming
5437 conventions are followed, new buffers will be automatically
5439 (mh-version): Renamed mh-temp-info-buffer to mh-info-buffer.
5441 * mh-comp.el (mh-insert-x-mailer): Renamed mh-temp-info-buffer to
5444 2003-01-09 Satyaki Das <satyaki@theforce.stanford.edu>
5446 * mh-e.el (mh-folder-size): If the user doesn't have a
5447 Unseen-Sequence definition in .mh_profile then an error was
5448 produced. This change fixes that.
5450 * mh-seq.el (mh-thread-generate): Replace the *mh-thread* buffer
5451 with a temporary buffer which is cleaned up when the function
5454 * mh-e.el (mh-prompt-for-refile-folder): New function which
5455 refactors out the intelligent folder guessing code from
5457 (mh-refile-msg): Use mh-prompt-for-refile-folder.
5459 * mh-seq.el (mh-thread-refile): Use mh-prompt-for-refile-folder to
5460 do the same intelligent destination folder guessing as
5461 mh-refile-msg (closes SF #664829).
5463 * mh-utils.el (mh-folder-list, mh-make-folder-list-process)
5464 (mh-folder-list-temp, mh-folder-list-partial-line)
5465 (mh-set-folder-list): Removed.
5466 (mh-sub-folders-cache, mh-sub-folders, mh-sub-folders-actual):
5467 Moved over from mh-speed.el to implement hierarchical completion.
5468 (mh-update-sub-folders-cache): Utility function called when
5469 new folders are created or folders are removed.
5470 (mh-folder-completion-function): New function is the folder name
5471 completion function used in completing-read.
5472 (mh-folder-completing-read): A thin wrapper function that is used
5473 instead of completing-read directly. In the future we might want
5474 to allow the user a customizable variable which will turn off
5475 folders based completion.
5476 (mh-prompt-for-folder): Use mh-folder-completing-read to read in
5477 the folder name with hierachical completion (closes SF #664821).
5479 * mh-speed.el (mh-speed-folders, mh-speed-folders-cache)
5480 (mh-speed-folders-actual): Moved to mh-utils.el as mh-sub-folders,
5481 mh-sub-folders-cache and mh-sub-folders-actual respectively.
5482 (mh-speed-invalidate-map, mh-speed-invalidate-map)
5483 (mh-speed-add-folder): Use the new names.
5485 * mh-funcs.el (mh-kill-folder): Remove code that used to update
5486 mh-folder-list which is no longer present. Instead
5487 mh-update-sub-folders-cache is called.
5489 * mh-index.el (mh-index-new-folder): Same as above.
5491 2003-01-08 Satyaki Das <satyaki@theforce.stanford.edu>
5493 * mh-utils.el (mh-exec-cmd-daemon): An argument was added which
5494 controls what is done with the process output.
5496 * mh-funcs.el (mh-kill-folder): Use mh-previous-window-config to
5497 restore window configuration. Also the call to mh-exec-cmd-daemon
5498 only displays output if an error happened (closes SF #664828).
5499 (mh-rmf-daemon): Check rmf output and display it only if
5500 something went wrong.
5501 (mh-print-msg): Pass in nil argument to mh-exec-cmd-daemon.
5503 * mh-comp.el (mh-redistribute, mh-send-letter): Pass in nil
5504 argument to mh-exec-cmd-daemon so that the functions will behave
5507 * mh-pick.el (mh-search-folder): The current window config is
5509 (mh-make-pick-template): Make the message headers read-only.
5510 (mh-pick-mode-help-messages): Update help message.
5511 (mh-do-pick-search): Fix problem when buffer isn't showing any
5513 (mh-next-pick-field): Use buffer-substring-no-properties is
5515 (mh-pick-mode-map): Add key bindings (partially addresses
5518 * mh-index.el (mh-indexer-choices): Add a new field for each
5519 index program choice. If it is non-nil then it is the name of a
5520 function that given a lisp expression to search for generates a
5521 pattern that is acceptable to the search program.
5522 (mh-index-regexp-builder): New variable that stores the function
5523 to be used to convert from the lisp expression syntax to
5524 something that the search program understands.
5525 (mh-index-generate-pretty-name): Generalized so that it can take
5526 a list of strings as input.
5527 (mh-index-search): Modified so that if the configured program has
5528 a corresponding regexp-builder then a search buffer like pick
5529 search is produced. Otherwise the previous behavior is maintained.
5530 (mh-index-do-search): New interactive function that takes the
5531 contents of the search buffer, generates an appropriate query and
5532 produces the search results buffer by calling mh-index-search.
5533 (mh-replace-string, mh-index-parse-search-regexp)
5534 (mh-index-add-implicit-ops, mh-index-evaluate): New functions
5535 which parses the infix search expression that the user enters. A
5536 parse tree from which queries for different search programs can
5537 be produced is produced.
5538 (mh-swish++-regexp-builder, mh-swish++-print-regexp): Takes the
5539 internal form of the query and produces input suitable for
5542 * mh-loaddefs.el: Regenerated.
5544 2003-01-08 Bill Wohler <wohler@newt.com>
5546 * Makefile (emacs-logs): New target for viewing CVS Emacs logs.
5547 Useful to see if an Emacs developer has changed MH-E.
5549 * MH-E-NEWS: Fixed case of MH-E in the "Changes" title.
5551 * mh-utils.el (mh-temp-info-buffer): New variable to hold name of
5552 buffer that contains version info.
5554 * mh-e.el (mh-version): Use mh-temp-info-buffer instead of
5555 mh-temp-buffer since version information was getting clobbered by
5556 the aliasing code before it could be seen (closes SF #664467).
5557 (mh-quit): Delete mh-temp-info-buffer.
5559 * mh-comp.el (mh-insert-x-mailer): Use mh-temp-info-buffer to find
5560 version info instead of mh-temp-buffer. You kind of need this
5563 2003-01-07 Bill Wohler <wohler@newt.com>
5565 * mh-e.el (Version, mh-version): Set to 7.1+cvs.
5567 2003-01-07 Bill Wohler <wohler@newt.com>
5569 * Released MH-E version 7.1.
5571 * MH-E-NEWS, README: Updated for release 7.1.
5573 * mh-e.el (Version, mh-version): Updated for release 7.1.
5575 2003-01-07 Bill Wohler <wohler@newt.com>
5577 * mh-customize.el (mh-auto-folder-collect-flag,
5578 mh-alias-system-aliases, mh-alias-insert-file): Edited docstrings.
5580 * Makefile (MH-E-IMG): Added alias.pbm and alias.xpm.
5582 * mh-alias.el (mh-alias-insert-file, mh-alias-add-alias): Fixed
5585 2003-01-07 Satyaki Das <satyaki@theforce.stanford.edu>
5587 * mh-utils.el (mh-search-from-end): New function that is used to
5588 replace our usage of the CL function search.
5589 (font-lock): The library is loaded to avoid compilation warning
5592 * mh-speed.el (mh-speed-goto-folder, mh-speed-add-folder)
5593 (mh-speed-extract-folder-name, mh-speed-invalidate-map): Use
5594 mh-search-from-end instead of search.
5596 * mh-seq.el (mh-thread-remove-parent-link): Use loop instead of
5598 (mh-thread-process-in-reply-to): Use mh-search-from-end instead
5601 * mh-index.el (mh-md5-parser): Fix name of function.
5602 (mh-index-update-single-msg, mh-index-update-maps): Avoid using
5603 destructuring-bind since Emacs-20.7 can't handle this particular
5605 (mh-namazu-next-result): Use mh-search-from-end instead of
5608 * mh-e.el (recursive-load-depth-limit): Add a defvar since CVS
5609 emacs which doesn't have the variable defined causes a compiler
5611 (mh-refile-a-msg): Rewritten to avoid using pushnew.
5612 (mh-undo-msg): Use loop instead of remove-if.
5614 * mh-comp.el (mh-show-buffer-message-number): Use
5615 mh-search-from-end instead of search.
5617 2003-01-01 Satyaki Das <satyaki@theforce.stanford.edu>
5619 * mh-e.el (mh-visit-folder): Modified so that if RANGE is nil then
5620 all messages are displayed. Documentation modified so that this is
5622 (mh-visit-folder): Really fix it this time.
5624 2003-01-01 Mark D Baushke <mdb@gnu.org>
5626 * mh-alias.el (mh-alias-from-has-no-alias-p): Needs the
5627 mh-autoload comment or mh-customize may have problems finding the
5630 * mh-loaddefs.el: Regenerated.
5632 2002-12-28 Satyaki Das <satyaki@theforce.stanford.edu>
5634 * mh-index.el (mh-namazu-execute-search): Fix bug in documentation.
5636 2002-12-28 Bill Wohler <wohler@newt.com>
5638 * mh-comp.el (mh-letter-mode): Mention mh-compose-insertion
5639 variable in docstring, explain how to expand directives, and
5640 don't mention mh-mhn-compose-insertion which isn't used directly
5642 (mh-send-letter): Mention that X-Mailer and X-Face are inserted
5643 automatically so that a user isn't tempted to do so himself in
5644 mh-before-send-letter-hook.
5645 (mh-insert-letter): Use "variable" prefix for mh-invisible-headers
5646 now that we have both a function and a variable. Clarified
5649 2002-12-26 Satyaki Das <satyaki@theforce.stanford.edu>
5651 * mh-utils.el (mh-show-xface-function): Only load x-face-e21 if
5652 the emacs is not XEmacs.
5654 * mh-index.el (mh-index-new-folder): The folder created should
5655 always be added to mh-folder-list. Otherwise folder name
5656 completion doesn't find the new folder created.
5658 2002-12-24 Satyaki Das <satyaki@theforce.stanford.edu>
5660 * mh-customize.el (mh-clean-message-header-flag)
5661 (mh-visible-headers, mh-invisible-headers)
5662 (mh-invisible-header-fields-set): Reworded to satisfy checkdoc.
5664 * mh-loaddefs.el: Regenerated.
5666 * mh-e.el (mh-inc-folder, mh-visit-folder, mh-read-msg-range):
5667 Handle nil value of mh-large-folder properly.
5669 * mh-customize.el (mh-tool-bar-show-set, mh-tool-bar-letter-set)
5670 (mh-tool-bar-folder-set, mh-tool-bar-folder-buttons)
5671 (mh-invisible-headers, mh-invisible-header-fields-set): Checkdoc
5673 (mh-large-folder): Updated to allow for infinity. If
5674 mh-large-folder is nil then all folders are deemed small.
5676 2002-12-23 Satyaki Das <satyaki@theforce.stanford.edu>
5678 * mh-e.el (mh-inc-folder, mh-visit-folder): Emit a message if
5679 threading was suppressed because the number of messages exceed
5682 2002-12-23 Peter S Galbraith <psg@debian.org>
5684 * mh-utils.el (mh-invisible-headers): Deleted. Moved to
5687 * mh-customize.el (mh-invisible-header-fields): New
5688 defcustom. Simple user interface to change mh-invisible-headers.
5689 (mh-invisible-header-fields-set): New function called when
5690 mh-invisible-header-fields is set.
5691 (mh-invisible-headers): New function. Does the actual work of
5692 building the variable mh-invisible-headers from
5693 mh-invisible-header-fields.
5694 (mh-invisible-headers): defvar moved from mh-utils.el
5696 2002-12-22 Satyaki Das <satyaki@theforce.stanford.edu>
5698 * mh-speed.el (mh-speed-folder-size): Removed. Something very
5699 similar appears as mh-folder-size.
5700 (mh-speed-view): Simplified since the range selection logic has
5701 been moved to mh-read-msg-range.
5702 (mh-speed-parse-flists-output-line): Moved to mh-e.el as
5703 mh-parse-flist-output-line.
5705 * mh-funcs.el (mh-pack-folder): Use the new mh-read-msg-range.
5707 * mh-e.el (mh-rescan-folder): Use the new mh-read-msg-range.
5708 (mh-parse-flist-output-line): Moved from mh-speed.el where this
5709 function was called mh-speed-parse-flists-output-line.
5710 (mh-folder-size): Renamed from mh-speed-folder-size. The function
5711 has been made more general and can be called from any buffer and
5712 not just the speedbar buffer.
5713 (mh-visit-folder): Use the new mh-read-msg-range (addresses SF
5715 (mh-read-msg-range): Rewritten.
5717 2002-12-21 Satyaki Das <satyaki@theforce.stanford.edu>
5719 * mh-seq.el (mh-delete-subject-or-thread): New interactive
5720 function that intelligently deletes messages based on threading,
5721 if the folder is threaded, or on subject if folder isn't threaded.
5723 * mh-utils.el (mh-show-delete-subject-or-thread): New interactive
5724 function, callable from the show buffer, to intelligently delete
5725 messages based on threading info or subject.
5726 (mh-show-mode-map): Change binding of "k" to call
5727 mh-show-delete-subject-or-thread.
5729 * mh-e.el (mh-folder-mode-map): Change binding of "k" to call
5730 mh-delete-subject-or-thread.
5732 * mh-comp.el (mh-letter-mode-map): Add key binding for
5735 * mh-loaddefs.el: Regenerated.
5737 2002-12-21 Peter S Galbraith <psg@debian.org>
5739 * mh-customize.el (mh-tool-bar-letter-set): Bug fix. The
5740 `tool-bar-add-item-from-menu' items were broken. I can't use my
5743 2002-12-21 Peter S Galbraith <psg@debian.org>
5745 * mh-alias.el (mh-alias-insert-file): Bug fix. I never checked
5746 that an AliasFile entry existed in .mh_profile.
5748 2002-12-21 Peter S Galbraith <psg@debian.org>
5750 * mh-customize.el (mh-alias-insertion-location): New defustom.
5751 Specifies where new aliases are entered in alias files.
5753 * mh-alias.el (mh-alias-add-alias-to-file): Use it.
5755 2002-12-21 Peter S Galbraith <psg@debian.org>
5757 * mh-alias.el (mh-alias-add-alias-to-file): If ALIAS matches
5758 exactly, prompt to [i]nsert before old value or [a]ppend after it.
5759 (mh-alias-insert-file): Make sure we don't edit the passwd file.
5760 Add optional argument for alias; If ALIAS is specified and it
5761 already exists, try to return the file that contains it.
5762 (mh-alias-which-file-has-alias): New function. Return the name of
5763 writable file which defines ALIAS from list FILE-LIST.
5764 (mh-alias-add-alias): Remove prompts for case of alias already
5765 defined; done in mh-alias-add-alias-to-file.
5767 2002-12-21 Satyaki Das <satyaki@theforce.stanford.edu>
5769 * mh-speed.el (mh-speed-folders-actual): Fix bug in parsing of
5770 folder names that have spaces in them. The original function would
5771 truncate the folder name at the first space.
5772 (mh-speed-flists): Add -sequence option to flists. This guards
5773 against the user specifying something other than the unseen
5774 sequence in his .mh_profile.
5775 (mh-speed-parse-flists-output-line): New function that parses a
5776 single line in the output of flists to find the folder name and
5777 the counts of unseesn and total messages.
5778 (mh-speed-parse-flists-output): Fix parsing bug which truncates
5779 the folder names at the first space.
5781 * mh-index.el (mh-index-generate-pretty-name): New function which
5782 generates a nicer name for the search results. It trims white
5783 space at the beginning and end and replaces white space with
5784 underscores within the search regexp.
5785 (mh-index-search): Use mh-index-generate-pretty-name.
5787 * mh-loaddefs.el: Regenerated.
5789 2002-12-20 Satyaki Das <satyaki@theforce.stanford.edu>
5791 * mh-index.el (mh-index-new-folder): Add new folder to
5792 mh-folder-list to enable name completion.
5793 (mh-glimpse-execute-search, mh-swish-execute-search)
5794 (mh-swish++-execute-search): Fix documentation.
5796 * mh-seq.el (mh-thread-generate): Fixed a stupid bug where the wrong
5797 folder could get 'scan'ed when generating the threaded view.
5799 * mh-index.el (mh-index-search): If optional prefix arg is given
5800 then the search in the current index buffer is redone.
5801 (mh-glimpse-execute-search, mh-swish-execute-search)
5802 (mh-namazu-execute-search): Documentation fixes.
5804 * mh-e.el (mh-index-previous-search): New buffer local variable
5805 stores parameters of search that created the buffer.
5806 (mh-folder-mode): Make mh-index-previous-search buffer local.
5807 (mh-visit-folder): Tweak the function so that only a single window
5808 with the folder buffer is shown if mh-showing-mode is nil.
5810 * mh-loaddefs.el: Regenerated.
5812 2002-12-19 Peter S Galbraith <psg@debian.org>
5814 * mh-alias.el (mh-alias-add-alias): Bug fix.
5816 2002-12-19 Peter S Galbraith <psg@debian.org>
5818 * mh-alias.el (mh-alias-add-alias): New interactive command. Add
5819 ALIAS for ADDRESS in personal alias file.
5820 (mh-alias-grab-from-field): New interactive command. Add ALIAS for
5821 ADDRESS in personal alias file.
5822 (mh-alias-add-address-under-point): New interactive
5823 command. Insert an alias for email address under point.
5824 (mh-alias-suggest-alias): New function. Suggest an alias for STRING.
5825 (mh-alias-insert-file): New function. Return the alias file to
5826 write a new entry in.
5827 (mh-alias-address-to-alias): New function. Return the ADDRESS
5828 alias if defined, or nil."
5829 (mh-alias-from-has-no-alias-p): New function. Return t is From has
5830 no current alias set. Used as tool-bar button enable function.
5831 (mh-alias-add-alias-to-file): New function. Add ALIAS for ADDRESS
5832 in alias FILE without alias check or prompts.
5834 * alias.xpm, alias.pbm: New tool-bar icon for
5835 mh-alias-grab-from-field.
5837 * mh-e.el (mh-folder-line-matches-show-buffer-p): New function.
5838 Return t if the message under point in folder-mode is in the show
5841 * mh-utils.el (mh-goto-address-find-address-at-point): New
5842 function copied from goto-addr.el, which we don't want to
5843 force-load on users. Find e-mail address around or before point.
5844 (mh-address-mail-regexp): New defvar. A regular expression
5845 probably matching an e-mail address.
5847 * mh-customize.el (mh-alias-insert-file): New defcustom.
5848 Filename to use to store new MH-E aliases.
5849 (mh-tool-bar-folder-buttons): Enable mh-tool-bar-item-alias icon.
5851 * mh-comp.el (mh-extract-from-header-value): New function.
5852 Extract From: string from header.
5854 2002-12-19 Satyaki Das <satyaki@theforce.stanford.edu>
5856 * mh-index.el (mh-index-update-single-msg): New defvar controls
5857 max number of command line args.
5858 (mh-index-execute): New function which is to be used
5859 instead of xargs so that we don't give the shell too many command
5861 (mh-index-update-maps): Use mh-index-execute instead of xargs.
5862 (mh-index-search): Remove unused code. Also the first message in
5863 folder buffer is made current.
5865 2002-12-18 Peter S Galbraith <psg@debian.org>
5867 * mh-loaddefs.el: Regenerated.
5869 * mh-comp.el (mh-letter-tool-bar-map): Moved to mh-customize.el
5871 * mh-e.el (mh-folder-tool-bar-map): Moved to mh-customize.el
5873 * mh-utils.el (mh-get-msg-num): autoloaded.
5874 (mh-show-tool-bar-map): Moved to mh-customize.el
5876 * mh-customize.el (mh-tool-bar-item-*): 33 new defconsts for
5877 tool-bar setup and customization.
5878 (mh-tool-bar-folder-buttons-set): New function to setup the
5879 tool-bar after customization.
5880 (mh-tool-bar-folder-buttons): New defcustom to specify which icons
5881 appears in the tool-bar.
5882 (mh-tool-bar-letter-buttons-set): New function to setup the
5883 tool-bar after customization.
5884 (mh-tool-bar-letter-buttons): New defcustom to specify which icons
5885 appears in the tool-bar.
5886 (mh-tool-bar-show-set): New function to setup mh-letter-tool-bar-map.
5887 (mh-tool-bar-letter-set): New function to setup
5888 mh-letter-tool-bar-map.
5890 2002-12-18 Satyaki Das <satyaki@theforce.stanford.edu>
5892 * mh-e.el (mh-folder-mode-map): Change entries for "\t", "\M-\t"
5893 and backtab to call mh-index-next-folder and
5894 mh-index-previous-folder as appropriate.
5896 * mh-index.el (mh-index-next-folder, mh-index-previous-folder):
5897 New interactive functions which jumps to search results of next
5898 and previous folders respectively.
5900 * mh-loadddefs.el: Regenerated.
5902 * mh-index.el (mh-index-delete-folder-headers): Arrange for
5903 mh-goto-cur-msg to just go to the current message.
5905 * mh-e.el (mh-visit-folder): Since mh-scan-folder erases the whole
5906 buffer anyway, we don't need to delete the folder headers. Also
5907 index-data is non-nil only when the buffer folder doesn't exist.
5908 So we need to call mh-make-folder.
5909 (mh-folder-mode): Fix bug in that mh-index-checksum-origin-map was
5910 not being made buffer local!
5912 2002-12-17 Satyaki Das <satyaki@theforce.stanford.edu>
5914 * mh-e.el (mh-visit-folder): Fix bug.
5916 * mh-index.el (mh-md5sum-buffer): Buffer from which md5sum is run.
5917 (mh-index-folder-first, mh-index-folder-last)
5918 (mh-index-original-msg-list): Convenience macros aren't needed
5919 anymore since the data structure has been changed.
5920 (mh-index-update-single-msg): New function to update maps that
5921 relate MD5 checksums to actual messages and vice-versa for a
5923 (mh-index-update-maps): Do the above for all messages. If some
5924 messages don't have MD5 checksums, they are annotated with the
5926 (mh-index-search): Updated for the new version of mh-index-data.
5927 (mh-msg-exists-p): New function to test a message exists.
5928 (mh-index-insert-folder-headers): Updated for new mh-index-data.
5929 (mh-index-delete-folder-headers): New function used to eliminate
5930 original folder names from the buffer and make it look like a
5931 plain folder buffer. This is used from mh-process-commands.
5932 (mh-index-visit-folder): Use new version of mh-index-data.
5933 (mh-index-match-checksum): New function which checks if the
5934 X-MHE-Checksum header of a message matches.
5935 (mh-index-execute-commands): New function that rmm's the original
5936 messages. Then after mh-execute-commands executes it will seem
5937 that the original messages were executed upon. This completes the
5939 (mh-checksum-buffer): Renamed from mh-md5sum-buffer.
5940 (mh-checksum-cmd, mh-checksum-parser): New globals to allow
5941 different checksum programs to be used.
5942 (mh-checksum-choose): New functions to find a checksum program.
5943 (mh-openssl-parser, mh-md5sum-parser, mh-md5-parser): Functions to
5944 parse the output of md5, md5sum and openssl.
5945 (mh-index-update-maps): Use checksum parsing function.
5946 (mh-index-search): Set checksum choice. Add a call to recenter,
5947 otherwise the window point in the index buffer doesn't get set
5950 * mh-funcs.el (mh-pack-folder, mh-sort-folder): Enable these
5951 functions in folders created by index search.
5953 * mh-e.el (mh-index-msg-checksum-map)
5954 (mh-index-checksum-origin-map): New buffer local variables that
5955 keep track of message checksums (used to implement
5956 refiling/deletion for folders created by index folders).
5957 (mh-last-msg): Make the function behave like mh-first-msg.
5958 (mh-visit-folder): Add new optional argument which initializes
5959 folders created by mh-index-search.
5960 (mh-folder-mode): Make the variables mh-index-msg-checksum-map and
5961 mh-index-checksum-origin-map buffer local.
5962 (mh-process-commands): Call mh-index-execute-commands when called
5963 from an index search buffer. This will reflect the changes being
5964 made in the search folder to the original folders.
5966 * mh-loaddefs.el: Regenerated.
5968 2002-12-16 Satyaki Das <satyaki@theforce.stanford.edu>
5970 * mh-index.el (mh-index-insert-folder-headers): Fix a bug which
5971 caused the folder buffer to be marked as modified after rescanning
5974 2002-12-15 Satyaki Das <satyaki@theforce.stanford.edu>
5976 * mh-e.el (mh-visit-folder): The function should insert folder
5977 names if it is visiting a folder created by index search.
5979 * mh-index.el (mh-index-insert-folder-headers): The function now
5980 maintains the old value of buffer-modified-p and temporarily makes
5981 the buffer writable.
5983 * mh-utils.el (mh-show-index-visit-folder): New interactive
5984 function callable from show buffer that displays search results
5986 (mh-show-mode-map): Key binding for "v".
5988 * mh-speed.el: Fix credits.
5989 (mh-index-folder-speedbar-buttons)
5990 (mh-index-show-speedbar-buttons)
5991 (mh-index-folder-speedbar-key-map)
5992 (mh-index-show-speedbar-key-map)
5993 (mh-index-folder-speedbar-menu-items)
5994 (mh-index-show-speedbar-menu-items): Removed since the modes
5995 mh-index-folder-mode and mh-index-show-mode no longer exist.
5996 (mh-speed-extract-folder-name): Remove the bits about
5997 mh-index-folder-mode and mh-index-show-mode.
5999 * mh-seq.el (mh-copy-seq-to-eob): Updated to work properly with
6000 index search results.
6001 (mh-region-to-msg-list): Skip over non-scan lines.
6002 (mh-thread-inc, mh-thread-add-spaces, mh-thread-folder): Skip
6003 non-scan lines when populating mh-thread-scan-line-map.
6004 (mh-thread-folder, mh-toggle-threads): Move the check for buffer
6005 modification from mh-thread-folder to mh-toggle-threads.
6006 (mh-toggle-threads): When returning to unthreaded view insert the
6007 folder names if called from a index folder.
6009 * mh-index.el: Fix credits and update commentary.
6010 (font-lock-defaults, mh-index-buffer, mh-index-show-buffer)
6011 (mh-index-ma-x-msg-index, mh-index-other-buffer)
6012 (mh-index-matches, mh-index-previous-window-configuration)
6013 (mh-index-current-msg, mh-index-folder-mode-keymap)
6014 (mh-index-button-map, mh-index-folder-mode-help-messages): Remove
6015 eliminated variables.
6016 (mh-index-folder): New variable sets the MH folder under which the
6017 index searches are stored.
6018 (mh-index-folder-first, mh-index-folder-last)
6019 (mh-index-original-msg-list): Convenience macros used to pull data
6020 elements out of a list. If needed setf can be used to change them
6022 (mh-index-search): Rewritten to create real folders where all the
6023 normal folder operation. This partially fixes SF #623321 (refiles
6024 and deletes doesn't work on original messages).
6025 (mh-index-find-max-width, mh-index-search-again)
6026 (mh-index-insert-scan, mh-index-callback, mh-index-search)
6027 (mh-index-notate, mh-index-show, mh-index-header-display)
6028 (mh-index-next, mh-index-folder-mode, mh-index-show-mode):
6029 Functions, macros and modes removed.
6030 (mh-folder-exists-p): New function to check if a folder exists.
6031 (mh-index-new-folder): Generate a new folder name from a given
6032 base string that mimics the way emacs generates buffer names.
6033 (mh-index-insert-folder-headers): Insert folder names among the
6035 (mh-index-visit-folder): New interactive function to show the
6036 search results of one individual folder.
6037 (mh-swish++-execute-search): Update documentation.
6039 * mh-funcs.el (mh-pack-folder, mh-sort-folder): Disable these
6040 functions if index search results are being viewed.
6042 * mh-e.el (mh-folder-font-lock-keywords): Add highlight for
6044 (mh-index-data): New buffer local variable that will be used to
6045 store info about index search results.
6046 (mh-rescan-folder): Implement rescanning for index search results.
6047 (mh-folder-mode): Make mh-index-data buffer local.
6048 (mh-remove-all-notation): Modified to take into account not all
6049 lines in the folder buffer are normal scan lines.
6050 (mh-folder-mode-map): Add key binding for "v" to jump to original
6051 folder narrowed to search results.
6053 * mh-customize.el (mh-index-folder-face): Make it bold so that it
6054 will look like before.
6056 * mh-loaddefs.el: Regenerated.
6058 2002-12-12 Satyaki Das <satyaki@theforce.stanford.edu>
6060 * mh-seq.el (mh-map-to-seq-msgs): Modified so that it can be given
6061 a list of messages in addition to a sequence.
6062 (mh-region-to-sequence, mh-region-to-msg-list): The function
6063 mh-region-to-msg-list replaces mh-region-to-sequence. The new
6064 function avoids creating a dummy sequence in MH-E.
6065 (mh-thread-delete, mh-thread-refile, mh-put-msg-in-seq): Modified
6066 to use mh-region-to-msg-list.
6068 * mh-funcs.el (mh-copy-msg): Modified to use mh-region-to-msg-list.
6070 * mh-e.el (mh-delete-msg, mh-refile-msg, mh-undo): Modified to use
6071 mh-region-to-msg-list.
6073 * mh-comp.el (mh-forward): Modified to use mh-region-to-msg-list.
6074 The buffer-local variable mail-header-separator is no longer
6075 bound. This fixes a bug where the default value of
6076 mail-header-separator gets used if mh-forward is called in a fresh
6078 (mh-annotate-msg): Update this so that it will handle message
6080 (mh-insert-letter): Make the test stronger. Since %d is being used
6081 the argument better be an integer.
6083 * mh-loaddefs.el: Regenerated.
6085 2002-12-11 Satyaki Das <satyaki@theforce.stanford.edu>
6087 * mh-funcs.el (mh-copy-msg): Add support for transient-mark-mode.
6088 If mark is active and transient-mark-mode is enabled then all the
6089 messages in the region are copied.
6091 * mh-seq.el (mh-list-sequences): Use mh-coalesce-msg-list to print
6092 messages in sequence nicely. The prompt for the folder is removed
6093 (the current folder is always used) and the output is made nicer
6094 by not overflowing the screen width.
6096 * mh-loaddefs.el: Regenerated.
6098 2002-12-09 Satyaki Das <satyaki@theforce.stanford.edu>
6100 * mh-comp.el (mh-letter-complete): Checkdoc fix.
6102 * mh-seq.el (mh-thread-current-indentation-level): New function
6103 which returns the thread indentation level of current message.
6104 (mh-thread-next-sibling, mh-thread-previous-sibling): New
6105 interactive functions to jump to the next and previous siblings in
6106 thread tree respectively.
6107 (mh-thread-immediate-ancestor): New function to jump to ancestor
6108 of current message in thread tree.
6109 (mh-thread-ancestor): New interactive function to jump to
6110 immediate ancestor or to root message of current thread depending
6111 on optional argument.
6113 * mh-utils.el (mh-show-thread-ancestor)
6114 (mh-show-thread-next-sibling, mh-show-thread-previous-sibling):
6115 Interactive functions callable from the show buffer.
6116 (mh-show-thread-map): Bindings for Tu, Tp and Tn.
6118 * mh-e.el (mh-thread-map): Bindings for Tu, Tp and Tn.
6120 * mh-loaddefs.el: Regenerated.
6122 2002-12-09 Satyaki Das <satyaki@theforce.stanford.edu>
6124 * mh-seq.el (mh-region-to-sequence): Change name of region
6125 sequence created to 'mhe-region. This avoids any chance of
6126 collision with actual MH sequences.
6127 (mh-put-msg-in-seq, mh-thread-delete, mh-thread-refile): Change
6128 name of region sequence used to 'mhe-region. Also delete the
6129 'mhe-region sequence when done.
6131 * mh-e.el (mh-delete-msg, mh-refile-msg, mh-undo): Same as above.
6133 * mh-comp.el (mh-forward): Same as above.
6135 * mh-loaddefs.el: Regenerated.
6137 2002-12-08 Bill Wohler <wohler@newt.com>
6139 * mh-alias.el: Edited documentation. Broke up file into 2
6140 sections: Alias Loading and Alias Expansion. Made terminology
6141 consistent (replaced expand, substitute, and translate with
6143 (mh-alias-reload): Brought message in line with coding conventions
6144 and made more concise too.
6145 (mh-alias-translate): Renamed to mh-alias-expand.
6146 (mh-alias-substitute-aliases-flag): Renamed to
6147 mh-alias-expand-aliases-flag.
6148 (mh-alias-reload-local-users): Renamed to mh-alias-local-users.
6149 Now just returns an alist of local users rather than have
6151 (mh-alias-reload): Set timestamp at beginning of function to catch
6152 edge case when alias added just after ali runs. Changed logic to
6153 reflect return value of mh-alias-local-users.
6155 * mh-customize.el (mh-alias-substitute-aliases-flag): Renamed to
6156 mh-alias-expand-aliases-flag.
6157 (mh-alias-local-users): Fixed documentation.
6159 * mh-loaddefs.el: Regenerated
6161 2002-12-08 Satyaki Das <satyaki@theforce.stanford.edu>
6163 * mh-e.el (require): Load Gnus at compile time so that the
6164 constant gnus-version is defined when MH-E is being compiled.
6165 (mh-macro-expansion-time-gnus-version, mh-run-time-gnus-version):
6166 Use the constant gnus-version instead of the function gnus-version
6167 to find out about gnus version information.
6168 (gnus-version): Remove the autoload since it is not needed any
6171 2002-12-08 Bill Wohler <wohler@newt.com>
6173 * mh-e.el (mh-version): Moved compilation information in front of
6174 Emacs information. The idea is that you start at MH-E and move
6175 outwards. Show N/A if Gnus not compiled (be explicit). Matched
6176 coding style with other output statements. (Aside: not that
6177 efficiency matters here, but fewer calls to format have to be
6178 faster, right? ;-). Matched output style of old output to new
6179 statement--liked Satyaki's indentation better ;-).
6181 2002-12-08 Satyaki Das <satyaki@theforce.stanford.edu>
6183 * mh-e.el (gnus-version): Autoload the function for use in
6185 (mh-macro-expansion-time-gnus-version): New macro that finds the
6186 Gnus version at macro expansion time.
6187 (mh-run-time-gnus-version): New function to find the Gnus version
6189 (mh-version): Add information about Gnus versions available at
6190 compile time and run time.
6192 2002-12-07 Peter S Galbraith <psg@debian.org>
6194 * mh-alias.el (mh-alias-ali): Add optional argument. if USER is
6195 t, then assume ALIAS is an address and call ali with option -user.
6197 * mh-alias.el (mh-alias-filenames): if ARG is t, appends list of
6198 files from `mh-alias-system-aliases' to output list obtained from
6199 mhparam output user list only.
6200 (mh-alias-tstamp): Use it.
6202 2002-12-05 Satyaki Das <satyaki@theforce.stanford.edu>
6204 * mh-mime.el (mh-inline-vcard-p): A new function which decides if
6205 a vcard should be displayed inline.
6206 (mh-mime-display-single): Use mh-inline-vcard-p to display
6207 attached vcard as a signature if no other signature is present
6208 (this partially addresses SF #649216).
6210 2002-12-05 Peter S Galbraith <psg@debian.org>
6212 * mh-comp.el (mh-send-letter): Edits docs for mh-mml-to-mime
6213 getting run if variable `mh-mml-compose-insert-flag' is set.
6214 (mh-get-header-field): use buffer-substring-no-properties instead
6215 of buffer-substring.
6217 2002-12-04 Peter S Galbraith <psg@debian.org>
6219 * mh-loaddefs.el: Regenerated.
6221 * mh-customize.el (mh-customize): Add ;;;###mh-autoload tag.
6223 2002-12-04 Peter S Galbraith <psg@debian.org>
6225 * mh-loaddefs.el: Regenerated.
6227 * mh-comp.el (mh-letter-complete): New command to do alias or word
6228 completion in letter-mode.
6229 (mh-letter-mode-map): Add \M-\t binding for mh-letter-complete.
6231 * mh-alias.el (mh-alias-letter-mode-expand-alias-hook): Obsolete.
6232 Replaced by mh-letter-complete command.
6233 (mh-alias-reload-maybe): New function to rebuild alias table if
6235 (mh-alias-letter-expand-alias): No longer interactive. Use
6236 mh-letter-complete instead.
6238 2002-12-04 Peter S Galbraith <psg@debian.org>
6240 * mh-customize.el (mh-letter-complete-function): New defcustom.
6241 Function to call when completing outside of fields specified to
6244 * mh-alias.el (mh-alias-filenames):
6245 s/mh-mhparam-component/mh-profile-component/
6246 (mh-profile-component): Move to mh-utils.el and make interactive.
6247 (mh-read-address): Make it autoloaded.
6249 * mh-loaddefs.el: Regenerated.
6251 * mh-comp.el (mh-read-address): Removed. Replaced by mh-alias
6254 * mh-utils.el (mh-profile-component): Moved from mh-alias.el.
6256 2002-12-04 Satyaki Das <satyaki@theforce.stanford.edu>
6258 * mh-seq.el (mh-msg-is-in-seq): Formatting change.
6260 * mh-index.el (mh-index-insert-scan): Remove unused variable.
6262 2002-12-04 Bill Wohler <wohler@newt.com>
6264 * mh-loaddefs.el: Regenerated.
6266 * Makefile (MH-E-SRC): Moved mh-loaddefs.el into MH-E-LOADDEFS as
6267 this was causing a cycle.
6268 (MH-E-LOADDEFS): New variable to house mh-loaddefs.el.
6269 (emacs): Reintroduced autoloads.
6270 (autoloads): We're baaa-aack!
6271 (dist, install-emacs): Use MH-E-LOADDEFS.
6273 * mh-comp.el (mh-customize): Moved to mh-customize.el.
6275 * mh-customize.el (mh-customize): Moved here from mh-comp. Makes
6276 more sense, doesn't it?
6278 * mh-alias.el, mh-comp.el, mh-e.el, mh-index.el, mh-mime.el,
6279 mh-pick.el, mh-speed.el: Added mh-autoload cookie to all
6280 interactive functions.
6282 2002-12-04 Satyaki Das <satyaki@theforce.stanford.edu>
6284 * Makefile (world): Remove target.
6285 (mh-loaddefs.el): Add comment that only GNU Emacs can be used to
6286 regenerate mh-loaddefs.el.
6288 * mh-make.el: Removed.
6290 2002-12-04 Mark D. Baushke <mdb@gnu.org>
6292 * mh-e.el (recursive-load-depth-limit): Only modify the limit
6293 if it is an integer.
6295 2002-12-04 Peter S Galbraith <psg@debian.org>
6297 * mh-utils.el (mh-header-field-beginning): New function. Move to
6298 the beginning of the current header field.
6300 2002-12-04 Satyaki Das <satyaki@theforce.stanford.edu>
6302 * mh-make.el (mh-files): Read in the MH-E filenames from the
6303 environment variable where the Makefile puts it.
6304 (mh-generate-autoloads, step2): Simplified since we now have the
6305 complete file names.
6307 * Makefile (world): Pass the MH-E files into the script, so that
6308 the filenames don't need to be repeated in the script.
6310 2002-12-04 Bill Wohler <wohler@newt.com>
6312 * mh-loaddefs.el: New file. Check in automatically generated file
6313 and include in package for the benefit of those who don't want to
6316 * Makefile (MH-E-SRC): Added mh-loaddefs.el now that it is checked
6317 in and will be packaged.
6318 (emacs): Removed autoloads. Adding mh-loaddefs.el to MH-E-SRC is
6319 sufficient to build it.
6320 (compile): Depend on MH-E-SRC instead of MH-E-OBJ and pass $? into
6321 emacs so that Emacs is only invoked once to compile files. This
6322 speeds things up by a factor of 3. It would be nice to only pass
6323 those files that have been modified, but Emacs 21.4 will have
6324 batch-byte-compile-if-not-done which we might be able to copy into
6325 mh-make.el (or my proposed mh-e-dev.el which would be more
6327 (.SUFFIXES): Removed. Now that compile works directly on the
6328 sources, the implicit rule is obsolete.
6329 (autoloads): Deleted. See emacs change above.
6331 2002-12-03 Bill Wohler <wohler@newt.com>
6333 * Makefile (MH-E-SRC, emacs):
6335 2002-12-03 Satyaki Das <satyaki@theforce.stanford.edu>
6337 * mh-make.el (mh-emacs): Make failing condition more strict.
6338 (mh-loaddefs-end): Remove redundant statement.
6340 * Makefile (world): A little typo. The bug didn't seem to make any
6343 * mh-make.el: New script that compiles MH-E.
6344 (mh-loaddefs-beginning, mh-loaddefs-end): Don't save the autoloads
6345 file in between. Only save at the end.
6346 (mh-emacs-generate-autoloads, mh-xemacs-generate-autoloads)
6347 (mh-generate-autoloads): Replace the separate functions in Emacs
6348 and XEmacs with one that works in both variants. This simplifies
6350 (mh-generate-autoloads): doc fix.
6352 * Makefile (world): New target which works for both GNU Emacs and
6355 2002-12-03 Peter S Galbraith <psg@debian.org>
6357 * mh-alias.el (mh-mhparam-component): Don't raise error if call to
6360 * mh-alias.el (mh-alias-letter-expand-alias): Build alias table if
6361 not already available.
6363 2002-12-03 Bill Wohler <wohler@newt.com>
6365 * mh-customize.el (mh-show-threads-flag): Alphabetized.
6367 2002-12-03 Jeffrey C Honig <jch@honig.net>
6369 * Makefile: Moved .PHONY rule after all rule for compatibility
6370 with BSD/OS's old pmake.
6372 2002-12-03 Mark D Baushke <mdb@gnu.org>
6374 * mh-e.el (mh-get-new-mail): Simplify no-new-mail test.
6375 (mh-add-cur-notation): Remove unnecessary function.
6377 2002-12-03 Peter S Galbraith <psg@debian.org>
6379 * mh-identity.el (mh-identity-make-menu): Check if
6380 'mh-letter-mode-map' is bound, since this code also gets run when
6381 mh-customize.el is loaded at startup.
6383 2002-12-03 Satyaki Das <satyaki@theforce.stanford.edu>
6385 * mh-customize.el (mh-show-threads-flag): New customizable
6386 variable which controls if new folders start of in threaded mode
6387 (closes SF #646794).
6389 * mh-e.el (mh-rescan-folder): Fix the function so that threading
6390 is preserved across rescans.
6391 (mh-visit-folder, mh-inc-folder): The folder is threaded if it was
6392 already threaded or if mh-show-threads-flag is non-nil and the
6393 number of scan lines is fewer than mh-large-folders (closes SF
6396 2002-12-02 Mark D Baushke <mdb@gnu.org>
6398 * mh-e.el (mh-add-cur-notation): New function to mark the
6399 current message with the mh-note-cur character.
6400 (mh-get-new-mail): Use mh-add-cur-notation to undo the work of
6401 mh-remove-cur-notation if there was no new mail (closes SF #647681).
6403 * mh-e.el (mh-set-cmd-note): Do not update the default mh-cmd-note
6404 value (closes SF #643701).
6406 2002-12-02 Peter S Galbraith <psg@debian.org>
6408 * mh-alias.el (mh-alias-reload): Renamed from mh-alias-learn-aliases.
6409 (mh-alias-load-local-users): Renamed from mh-alias-learn-local-users.
6410 (mh-alias-passwd-alist): New variable, holding aliases extracted
6411 from the passwd file.
6412 (mh-alias-tstamp): New variable storing the timestamp for alias
6414 (mh-read-address, mh-alias-reload, mh-alias-reload-local-users):
6416 (mh-alias-minibuffer-confirm-address): Use mh-alias-translate.
6417 (mh-alias-translate): New function. Return translation for alias,
6418 checking if in blind or passwd list.
6419 (mh-alias-letter-expand-alias): Rewrite using
6420 mail-abbrev-complete-alias from mailabbrev.el
6421 (mh-alias-expand-alias-map): New variable.
6422 (mh-alias-ali): New function. Return formatted string of
6423 translated ALIAS from ali.
6424 (mh-mhparam-component): New function. Return COMPONENT value from
6425 mhparam, or nil if unset.
6426 (mh-alias-filenames): New function. Provide list of alias
6427 filenames from mhparam, or nil if none are set.
6429 * mh-customize.el (mh-alias-display-blind-name-on-completion-flag):
6431 (mh-alias-timestamp): Renamed to mh-alias-system-aliases.
6433 2002-12-02 Bill Wohler <wohler@newt.com>
6435 * Makefile (mh-loaddefs.el): Suppress creation of backup file.
6437 2002-12-02 Mark D. Baushke <mdb@gnu.org>
6439 * Makefile (mh-loaddefs.el): Simplify rule.
6441 * Makefile (clean): Remove mh-loaddefs.el* for good measure.
6442 ($(MH-E-OBJ)): Depend on mh-loaddefs.el to compile these.
6443 (autoloads, mh-loaddefs.el): Revamp rules.
6444 (mh-loaddefs.el-tail, autoloads-gen): Remove rules.
6446 * mh-e.el (recursive-load-depth-limit): Do not try to
6447 bump the value unless the variable exists.
6449 * mh-e.el (recursive-load-depth-limit): Bump value of
6450 recursive-load-depth-limit to 50 to allow emacs 21.1 which
6451 normally has a default value of 10 to be able to compile MH-E.
6453 2002-12-02 Satyaki Das <satyaki@theforce.stanford.edu>
6455 * mh-funcs.el (mh-pack-folder, mh-sort-folder): Fix the functions
6456 so that threading is preserved (needed for SF #646794).
6458 * mh-identity.el (mh-identity-signature-start)
6459 (mh-identity-signature-end): Checkdoc fixes.
6461 * mh-e.el (mh-previous-unread-msg, mh-next-unread-msg): Checkdoc
6464 2002-12-01 Satyaki Das <satyaki@theforce.stanford.edu>
6466 * mh-identity.el (compile): Make mh-identity.el compile without
6469 * mh-e.el (mh-previous-unread-msg, mh-next-unread-msg): New
6470 interactive functions that go to next and previous unread
6471 messages (closes SF #630328).
6472 (mh-folder-mode-map): Add key bindings for M-n and M-p to
6475 * mh-utils.el (mh-show-next-unread-msg)
6476 (mh-show-previous-unread-msg): New interactive functions that go
6477 to the next and previous unread messages respectively. These are
6478 callable from the show buffer.
6479 (mh-show-mode-map): Add key bindings for M-n and M-p to
6482 2002-12-01 Bill Wohler <wohler@newt.com>
6484 * mh-mime.el (mh-defun-compat): Make it indent like a defun.
6486 * mh-index.el (mh-defun-index): Make it indent like a defun.
6488 * mh-customize.el: New file (closes SF #643722).
6490 * Makefile (MH-E-SRC): Added mh-customize.el (closes SF #643722).
6492 * mh-speed.el, mh-pick.el, mh-mime.el, mh-index.el, mh-e.el,
6493 mh-comp.el: Moved all defgroups, defcustoms, and deffaces to
6494 mh-customize.el (closes SF #643722).
6496 * mh-utils.el (mh-xemacs-flag): Moved here from below since
6497 needed by mh-customize.el.
6498 (mh-customize): Required. mh-invisible-headers)
6499 (mh-bury-show-buffer-flag, mhl-formfile):
6500 Moved all defgroups, defcustoms, and deffaces to mh-customize.el
6501 (closes SF #643722) .
6503 * mh-identity.el (mh-comp-loaded): New variable in a desparate
6504 attempt to prevent an infinite loop.
6505 (eval-when-compile): Was able to remove these defvars as they are
6506 now predefined in mh-loaddefs and mh-customize.
6507 (mh-identity-list-set): Added ;;;###mh-autoload cookie.
6508 Moved all defgroups, defcustoms, and deffaces to mh-customize.el
6509 (closes SF #643722).
6511 * mh-alias.el (mh-e): Require this, as it needs defcustoms, which
6512 is in mh-customize which is required by mh-utils which is required
6514 Moved all defgroups, defcustoms, and deffaces to mh-customize.el
6515 (closes SF #643722).
6517 2002-11-30 Satyaki Das <satyaki@theforce.stanford.edu>
6519 * mh-e.el (mh-thread-map): Add key bindings "Td" and "To" (closes
6521 (mh-help-messages): Update help message for prefix map.
6522 (mh-help-messages): Doc fix.
6523 (mh-help-messages): Really fix it.
6525 * mh-utils.el (mh-show-thread-delete, mh-show-thread-refile): New
6526 interactive functions corresponding to mh-thread-delete and
6527 mh-thread-refile callable from the show buffer.
6528 (mh-show-thread-map): Add key bindings for "Td" "To".
6530 * mh-seq.el (mh-narrow-to-seq, mh-put-msg-in-seq, mh-rename-seq)
6531 (mh-narrow-to-subject, mh-delete-subject, mh-toggle-threads): Add
6532 mh-autoload cookies.
6533 (mh-thread-find-children): New function which finds the region
6534 containing all children of a message.
6535 (mh-thread-delete): New interactive function that marks for
6536 deletion the current message and its children.
6537 (mh-thread-refile): New interactive function that marks for
6538 refiling the current message and its children.
6540 2002-11-30 Bill Wohler <wohler@newt.com>
6542 * mh-funcs.el, mh-identity.el, mh-index.el, mh-pick.el, mh-seq.el:
6543 Removed MH-E autoloads. These are now provided by mh-loaddefs.el.
6544 Added ;;;###mh-autoload tag to selected functions so that
6545 autoloads for those functions can be automatically created in
6546 mh-loaddefs.el (closes half of SF #643722).
6548 * mh-mime.el (mh-buffer-data): Moved to mh-utils where it is used.
6549 Added ;;;###mh-autoload tag to selected functions so that
6550 autoloads for those functions can be automatically created in
6551 mh-loaddefs.el (closes half of SF #643722)..
6553 * mh-utils.el (mh-loaddefs): Added require.
6554 (mh-buffer-data): Moved here from mh-mime.el as it is used in
6556 (mh-set-cmd-note): Moved to mh-e.el.
6557 Removed MH-E autoloads. These are now provided by mh-loaddefs.el.
6558 Added ;;;###mh-autoload tag to selected functions so that
6559 autoloads for those functions can be automatically created in
6560 mh-loaddefs.el (closes half of SF #643722)..
6562 * mh-e.el (mh-set-cmd-note): Moved here from mh-utils.el since it
6563 uses mh-scan-format-file which is defined here.
6564 Removed MH-E autoloads. These are now provided by mh-loaddefs.el.
6565 Added ;;;###mh-autoload tag to selected functions so that
6566 autoloads for those functions can be automatically created in
6567 mh-loaddefs.el (closes half of SF #643722)..
6569 * mh-comp.el, mh-speed.el (mh-utils): Removed require. mh-utils is
6570 provided via mh-e.el.
6571 Removed MH-E autoloads. These are now provided by mh-loaddefs.el.
6572 Added ;;;###mh-autoload tag to selected functions so that
6573 autoloads for those functions can be automatically created in
6574 mh-loaddefs.el (closes half of SF #643722)..
6576 * Makefile (emacs): Add dependency on autoloads.
6577 (clean): Remove mh-loaddefs.el too.
6578 (autoloads): New target. Builds mh-loaddefs.el.
6579 (mh-loaddefs.el): New target. Initializes mh-loaddefs.el.
6580 (mh-loaddefs.el-tail): New target. Appends to mh-loaddefs.el.
6581 (autoloads-gen): Runs batch-update-autoloads to populate
6582 mh-loaddefs.el (closes half of SF #643722)..
6583 (auto-autoloads.elc): Renamed from autoloads to be explicit about
6584 file that's created.
6585 (custom-load.elc): Ditto.
6587 2002-11-30 Satyaki Das <satyaki@theforce.stanford.edu>
6589 * mh-seq.el (mh-thread-last-ancestor): New variable which keeps
6590 track of oldest ancestor of last message. If due to narrowing the
6591 common ancestor of two messages is lost then one of them is
6592 promoted to be the parent of the other. This variable helps in
6594 (mh-thread-generate-scan-lines): Group messages which belong to
6595 the same thread tree, even if a common ancestor is no longer
6597 (mh-thread-folder, mh-copy-seq-to-eob, mh-thread-inc): Bind
6598 mh-thread-last-ancestor to nil when calling
6599 mh-thread-generate-scan-lines.
6601 * mh-mime.el (font-lock): Font-lock required at compile time to
6602 avoid warning about font-lock-maximum-size
6603 (mh-display-smileys, mh-display-emphasis): Show graphical smileys
6604 and emphasis only if message isn't too large.
6606 * mh-e.el (mh-visit-folder): Revisiting a buried folder which has
6607 been threaded or narrowed confuses MH-E. Even though the folder is
6608 displayed as not threaded and not narrowed, MH-E still believes
6609 the folder is in the previous state. This can cause problems when
6610 trying to narrow/thread the folder. The change fixes this.
6612 * mh-mime.el (mh-mime-display-alternative): The setting of
6613 mh-display-buttons-for-inline-parts-flag was not being used when
6614 displaying one of the alternatives. This change fixes that.
6616 * mh-comp.el (mh-show-buffer-message-number): Replace subseq with
6618 (mh-filter-out-non-text): When filtering out MIME buttons from
6619 yanked text, the last line of the MIME part was getting lost. The
6620 fix avoids that and removes only the last new line instead.
6622 2002-11-29 Peter S Galbraith <psg@debian.org>
6624 * Makefile (MH-E-SRC): Add mh-alias.
6626 * mh-alias.el: Assign copyright to FSF instead of myself.
6627 (mh-read-address): Add support for emacs-21's
6628 completing-read-multiple to prompt for multiple entries.
6629 (mh-alias-PC-complete-address): Deleted.
6630 (mh-alias-learn-aliases): Use mh-exec-cmd-quiet instead of old kludge.
6631 (mh-alias-letter-mode-expand-alias-hook): Simplify.
6632 (mh-alias-hostname): Deleted.
6633 (mh-alias-substitute-aliases-flag): Change default to nil.
6634 (mh-alias-display-blind-name-on-completion-flag) Change default to
6636 (mh-alias-alist): Now holds alias values.
6637 (mh-alias-lowercase-alist): Deleted.
6638 (mh-alias-minibuffer-confirm-address, mh-alias-learn-aliases)
6639 (mh-alias-learn-local-users, mh-alias-letter-expand-alias): Use
6640 new mh-alias-alist instead of old mh-alias-lowercase-alist.
6642 * mh-alias.el: Moved from contrib/ directory. Now part of MH-E!
6644 * Makefile (MH-E-SRC): Add mh-identity.
6646 * mh-identity.el (mh-compose-and-send-mail, mh-insert-identity)
6647 (mh-identity-make-menu, mh-identity-default, mh-identity-menu):
6648 Moved to mh-comp.el.
6650 * mh-comp.el (mh-compose-and-send-mail): Add mh-identity support.
6651 (mh-insert-identity, mh-identity-make-menu, mh-identity-default)
6652 (mh-identity-menu): Added from mh-identity.el
6654 2002-11-29 Bill Wohler <wohler@newt.com>
6656 * mh-comp.el, mh-e.el, mh-funcs.el, mh-identity.el, mh-index.el,
6657 mh-mime.el, mh-pick.el, mh-seq.el, mh-speed.el, mh-utils.el:
6658 Ran indent-region, reformatted long lines, ran untabify.
6659 (indent-tabs-mode): Set file local variable to nil.
6661 2002-11-29 Bill Wohler <wohler@newt.com>
6663 * Released MH-E version 7.0.
6665 * mh-e.el (Version, mh-version): Updated for release 7.0.
6667 * mh-comp.el (subseq, search): Require cl instead of autoloading
6668 these due to compilation warnings in CVS Emacs.
6670 2002-11-23 Bill Wohler <wohler@newt.com>
6672 * MH-E-NEWS: Emphasize the renaming of the variables at the top of
6675 2002-11-22 Satyaki Das <satyaki@theforce.stanford.edu>
6677 * mh-utils.el (mh-show-mode-map): Remove binding for RET since it
6678 is not needed and the binding is more useful to toggle display of
6681 * mh-mime.el (mh-mime-button-commands): Remove bindings for "i"
6682 and "o" from MIME buttons.
6683 (mh-insert-mime-button): Change comment to reflect change in
6686 2002-11-21 Bill Wohler <wohler@newt.com>
6688 * Released MH-E version 6.1.91.
6690 * mh-e.el (Version, mh-version): Updated for release 6.1.91.
6692 * MH-E-NEWS: Inline HTML parts supported with Gnus 5.10, not 5.9.
6694 2002-11-21 Mark D. Baushke <mdb@gnu.org>
6696 * mh-comp.el (mh-letter-insert-signature-hook): This should be in
6697 customize-group mh-compose.
6699 2002-11-21 Satyaki Das <satyaki@theforce.stanford.edu>
6701 * mh-utils.el (load): Load mm-view.el here so that
6702 mm-inline-text-html would be defined if available.
6703 (mh-mm-inline-media-tests): If mm-inline-text-html is available
6704 then use it, otherwise fall back on using mm-inline-text (closes
6707 * mh-mime.el (load): Remove the load of mm-view here since it
6708 happens in mh-utils.el now.
6710 2002-11-15 Bill Wohler <wohler@newt.com>
6712 * Released MH-E version 6.1.90.
6714 * README (Compile): New section. Users must now compile MH-E due
6715 to the vagaries of the various versions of gnus.
6717 * Makefile (MH-E-IMG): Added reply-all.pbm, reply-all.xpm,
6718 reply-from.pbm, reply-from.xpm, reply-to.pbm, reply-to.xpm.
6719 (MH-E-ETC-ETC): Added Makefile and README.
6720 (dist): Depend on all, so clean happens. Don't add .elc files to
6721 tarball as they are built upon installation now.
6723 2002-11-15 Satyaki Das <satyaki@theforce.stanford.edu>
6725 * mh-e.el (mh-process-commands): Fix a bug in mh-execute-commands.
6726 If called in threaded mode, cur was always getting set to the last
6727 message in the folder.
6729 2002-11-14 Bill Wohler <wohler@newt.com>
6731 * mh-e.el (Version, mh-version): Updated for release 6.1.90.
6733 * MH-E-NEWS, README: Updated for release 7.0.
6735 * mh-utils.el (mh-index-search): Added full docstring which new
6736 users will need before they run a search!
6737 (mh-swish++-execute-search, mh-swish-execute-search,
6738 mh-namazu-execute-search mh-glimpse-execute-search): Added
6739 autoloads with full docstrings for the same reason!
6741 * mh-e.el (mh-limit-map): Removed / / alias for
6742 mh-narrow-to-subject.
6744 * mh-utils.el (mh-show-thread-map): Removed / / alias for
6745 mh-show-narrow-to-subject.
6747 * mh-seq.el (mh-delete-subject): Checkdoc fix.
6749 * mh-e.el (mh-help-messages): Added / prefix character to help
6750 string. Tweaked / helpstring a little.
6752 2002-11-14 Mark D. Baushke <mdb@gnu.org>
6754 * mh-utils.el (mh-set-cmd-note): Fix nitpick by adding one to the
6755 width for cosmetic reasons.
6757 2002-11-14 Peter S Galbraith <psg@debian.org>
6759 * mh-identity.el (mh-insert-identity): Fix a few things undone by
6761 (mml-insert-tag): Add autoload.
6763 2002-11-13 Mark D. Baushke <mdb@gnu.org>
6765 * mh-identity.el (mh-insert-identity): A value of either nil or
6766 "" should cause the field to be removed.
6767 (mh-identity-list): Update the docstring.
6769 2002-11-13 Peter S Galbraith <psg@debian.org>
6771 * mh-e.el (mh-limit-map): New key map for limits (subject for now).
6772 * mh-utils.el (mh-show-limit-map): Same.
6774 * mh-seq.el (mh-delete-subject): Renamed from
6775 mh-delete-subject-sequence.
6776 (mh-narrow-to-subject): Renamed from mh-narrow-to-subject-sequence.
6777 (mh-next-unseen-subject-sequence): Removed. :-(
6779 * mh-seq.el: Use 'em.
6781 2002-11-13 Mark D. Baushke <mdb@gnu.org>
6783 * mh-e.el (mh-alt-show): New defalias for mh-show.
6784 (mh-alt-refile-msg): New defalias for mh-refile-msg.
6785 (mh-alt-send): New defalias for mh-send.
6786 (mh-folder-mode-map): Use mh-alt-show, mh-alt-refile-msg and
6787 mh-alt-send for the alias bindings.
6788 (mh-alt-visit-folder): New defalias for mh-visit-folder.
6789 (mh-folder-map): Use it.
6790 (mh-folder-message-menu): Revert previous change.
6792 2002-11-13 Peter S Galbraith <psg@debian.org>
6794 * mh-e.el (mh-folder-message-menu): Make key binding "o" appear in
6795 menu for mh-refile-msg.
6797 2002-11-13 Satyaki Das <satyaki@theforce.stanford.edu>
6799 * mh-seq.el (mh-thread-generate-scan-lines): In threaded view,
6800 scan lines of duplicate messages were too long. The change fixes
6803 2002-11-13 Bill Wohler <wohler@newt.com>
6805 * mh-utils.el (mh-adaptive-cmd-note-flag): Improved grammar in
6808 * mh-speed.el (mh-speed-run-flists-flag): While documenting this
6809 variable in the release notes, I was unsure what would happen if
6810 set to nil. So, I clarified the docstring and indicated
6811 implications of setting this variable to nil, and offered manual
6814 2002-11-13 Satyaki Das <satyaki@theforce.stanford.edu>
6816 * mh-index.el (mh-index-quit): Fix documentation and run
6817 mh-before-quit-hook and mh-quit-hook.
6819 2002-11-13 Bill Wohler <wohler@newt.com>
6821 * mh-utils.el (with-mh-folder-updating): Renamed local variable
6822 mh-save-modification-flag to save-modification-flag.
6824 2002-11-12 Bill Wohler <wohler@newt.com>
6826 * mh-index.el (mh-index-keymap): Renamed to
6827 mh-index-folder-mode-keymap to be a closer to the usual keymap
6828 naming convention. Since we want our own keymap and not inherit
6829 the one in mh-folder-mode, we need to use a suffix other than
6832 * mh-e.el (mh-folder-sequence-menu): s/Msg/Message.
6834 (mh-folder-message-menu): s/Msg/Message. Removed redundant refile
6836 (mh-folder-folder-menu): Aligned symbols.
6838 * mh-index.el (mh-index-folder-message-menu): s/Msg/Message.
6840 * mh-utils.el (mh-show-sequence-menu): s/Msg/Message.
6842 (mh-show-message-menu): s/Msg/Message. Removed redundant refile
6844 (mh-show-folder-menu): Aligned symbols.
6846 2002-11-12 Satyaki Das <satyaki@theforce.stanford.edu>
6848 * mh-index.el (mh-index-matches, mh-index-current-match): Remove
6849 these variables since they were only used for glimpse and grep.
6850 Now the functionality of all the indexing programs will be
6852 (mh-index-search, mh-index-insert-scan, mh-defun-index)
6853 (mh-index-show): Simplify functions since matches are no longer
6855 (mh-index-parse-match): Remove function.
6857 * mh-e.el (mh-scan-cmd-note-width, mh-scan-destination-width)
6858 (mh-scan-date-width, mh-scan-date-flag-width)
6859 (mh-scan-from-mbox-width, mh-scan-from-mbox-sep-width): New
6860 variables to keep track of the widths of the different fields in
6862 (mh-scan-field-from-start-offset, mh-scan-field-from-end-offset)
6863 (mh-scan-field-subject-start-offset): Offsets that are computed
6864 from the scan line widths.
6866 * mh-seq.el (mh-copy-seq-to-eob, mh-thread-inc)
6867 (mh-thread-parse-scan-line): Use new variables that remember the
6868 various offsets in place of integer constants.
6869 (mh-thread-generate-scan-lines): Space shouldn't be added here!
6871 2002-11-12 Bill Wohler <wohler@newt.com>
6873 * mh-e.el (mh-scan-format-mh, mh-scan-format-nmh): Noted that the
6874 first column is column number 0 and changed "sixth column" to
6875 "fifth column" accordingly.
6877 * mh-index.el (mh-index-folder-mode): Clarified method of replying
6878 in mode documentation.
6879 (mh-index-folder-tool-bar-map): s/mh-e/MH-E/.
6881 * mh-e.el (mh-generate-new-cmd-note): Try not to mention internal
6882 variable mh-cmd-note in docstrings.
6884 * mh-utils.el (mh-adaptive-cmd-note-flag): Set default value to t.
6885 Reworded docstring so it doesn't mention internal variable
6886 mh-cmd-note. Added information about using fixed-width message
6888 (mh-cmd-note): Mention mh-set-cmd-note in docstring. Also suggest
6889 that it is updated dynamically only if mh-scan-format-file is t.
6890 (mh-set-cmd-note): Grammer fix in docstring.
6891 (mh-cmd-note): Noted that the first column is column number 0.
6893 * mh-e.el (mh-scan-format-file): Added information about
6894 mh-set-cmd-note and mh-adaptive-cmd-note-flag to docstring.
6896 * mh-index.el (mh-index-keymap): Added bindings for i
6897 (mh-inc-folder), m (mh-send alias), and s (mh-send) since these
6898 appear to be supported and are found in the toolbar.
6899 (mh-index-folder-key-map): Ditto for f (mh-visit-folder alias), o
6900 (mh-visit-folder) alias, and v (mh-visit-folder).
6901 (mh-index-folder-mode-help-messages): Changes for above.
6902 (mh-index-folder-message-menu, mh-index-folder-folder-menu): New
6903 menus. I decided to delete the unavailable items since greying out
6904 implies that the user can do something to access them. In this
6905 case, that's not the case. Well, that's not entirely true--the
6906 user could write code for those functions ;-).
6907 (mh-index-folder-mode): Use new menus.
6909 * mh-utils.el (mh-prompt-for-folder): Added optional argument
6910 default-string which can be used in case the string for default
6911 isn't intuitive enough.
6913 * mh-index.el (mh-index-search): Made default prompt more
6914 intuitive (I hope!).
6916 2002-11-11 Peter S Galbraith <psg@debian.org>
6918 * mh-identity.el (mh-header-field-delete): Remove save-excursion.
6919 Strange that this worked for me before... Thanks to Jeff for the
6921 (mh-insert-identity): Numerous tweaks and fixes from Jeff who also
6922 adds a nicer-looking MIME header for signatures inserted after
6925 2002-11-11 Satyaki Das <satyaki@theforce.stanford.edu>
6927 * mh-seq.el (mh-thread-parse-scan-line): Generalize this function
6928 so that it can take a string containing the scan-line as argument
6929 in addition to using the line at point.
6930 (mh-thread-add-spaces): New function to pad each scan line to the
6931 appropriate length. This is called when mh-cmd-note is increased.
6933 * mh-e.el (mh-generate-new-cmd-note): Make this work on a threaded
6934 folder by using mh-thread-add-spaces to pad the pre-existing lines
6935 in mh-thread-scan-line-map appropriately.
6936 (mh-thread-add-spaces): Autoload from mh-seq.
6938 2002-11-11 Mark D. Baushke <mdb@gnu.org>
6940 * mh-index.el: Fix checkdoc nit.
6942 * mh-mime.el (mh-display-buttons-for-inline-parts-flag): Renamed
6943 from mh-display-buttons-for-inline-parts.
6944 (mh-mime-display-single): Use it.
6945 This addresses part of SF #627015.
6947 * mh-e.el (mh-print-background-flag): Renamed from
6948 mh-print-background.
6949 * mh-funcs.el (mh-print-msg): Use it.
6950 This addresses part of SF #627015.
6952 * mh-comp.el (mh-delete-yanked-msg-window-flag): Renamed from
6953 mh-delete-yanked-msg-window.
6954 (mh-yank-from-start-of-msg, mh-yank-cur-msg): Use it.
6955 This addresses part of SF #627015.
6957 * mh-utils.el (mh-update-sequences-after-mh-show-flag): Renamed
6958 from mh-update-sequences-after-mh-show.
6959 (mh-show-msg): Use it.
6960 This addresses part of SF #627015.
6962 * mh-utils.el (mh-decode-quoted-printable-flag): Renamed from
6963 mh-decode-quoted-printable
6964 (mh-display-msg, mh-decode-quoted-printable-have-mimedecode):
6966 This addresses part of SF #627015.
6968 * mh-utils.el (mh-recursive-folders-flag): Renamed from
6969 mh-recursive-folders.
6970 (mh-make-folder-list-background): Use it.
6971 * mh-funcs.el (mh-list-folders): Ditto.
6972 This addresses part of SF #627015.
6974 * mh-utils.el (mh-auto-folder-collect-flag): Renamed from
6975 mh-auto-folder-collect.
6976 (mh-find-path): Use it.
6977 This addresses part of SF #627015.
6979 * mh-utils.el (mh-decode-mime-flag): Renamed from
6981 * mh-utils.el (mh-show-mode, mh-show-xface)
6982 (mh-decode-quoted-printable, mh-display-msg, mh-display-msg): Use it.
6983 * mh-mime.el (mh-graphical-smileys-flag)
6984 (mh-graphical-emphasis-flag): Ditto.
6985 * mh-index.el (mh-index-search, mh-index-show): Ditto.
6986 * mh-e.el (mh-header-display): Ditto.
6987 This addresses part of SF #627015.
6989 * mh-e.el (mh-make-folder-mode-line): Use save-window-excursion
6990 to get back to the current message.
6992 2002-11-10 Satyaki Das <satyaki@theforce.stanford.edu>
6994 * mh-index.el (mh-index-keymap, mh-index-page-msg)
6995 (mh-index-folder-tool-bar-map): Replace mh-index-scroll-up with
6997 (mh-index-keymap, mh-index-previous-page): Replace
6998 mh-index-scroll-down with mh-index-previous-page.
7000 2002-11-09 Satyaki Das <satyaki@theforce.stanford.edu>
7002 * mh-index.el (autoload/require): Load mh-mime when mh-index.el is
7003 loaded. This fixes the infinite load loop. I am not sure what the
7004 actual problem is. Also removed the nop requires/autoloads.
7005 (mh-defun-index): Use the right argument for mh-recenter.
7006 Otherwise it misbehaves for the default value of
7009 * mh-e.el (mh-goto-next-button): Fix infinite loop when S-Tab was
7010 used on first line of index folder buffer.
7012 2002-11-09 Peter S Galbraith <psg@debian.org>
7014 * mh-index.el (mh-index-folder-tool-bar-map): Tool-bar for
7016 (mh-index-folder-mode): Use it.
7017 (mh-index-keymap): Added mouse-2 binding, like in regular
7020 2002-11-08 Satyaki Das <satyaki@theforce.stanford.edu>
7022 * mh-index.el (mh-index-folder-mode): Fix doc string for major
7023 mode. It was pointing to the wrong keymap.
7024 (mh-index-show-mode): Fix doc string for mode. Also add mh-help
7027 * mh-comp.el (mh-forward, mh-yank-cur-msg): Use new macro
7028 mh-mark-active-p instead. This does the right thing for different
7030 (mh-yank-cur-msg): Add a space between sexprs.
7032 * mh-utils.el (mh-mark-active-p): New macro which papers over
7033 diffences between GNU Emacs and XEmacs. The variables mark-active
7034 and transient-mark-mode are used in GNU Emacs while zmacs-regions
7035 and region-active-p are used in XEmacs.
7037 * mh-seq.el (mh-put-msg-in-seq, mh-thread-ancestor-p): Use
7038 mh-mark-active-p as above.
7040 * mh-e.el (mh-delete-msg, mh-refile-msg, mh-undo): Use
7041 mh-mark-active-p as above.
7043 2002-11-06 Peter S Galbraith <psg@debian.org>
7045 * mh-comp.el (mh-yank-cur-msg): Fix for XEmacs. It didn't work
7046 with a selected region, and left the inserted text selected (in
7047 reverse video). I didn't use SF patch #402315 to implement this.
7049 2002-11-05 Peter S Galbraith <psg@debian.org>
7051 * mh-utils.el (mh-show-tool-bar-map): Change call to
7052 mh-tool-bar-search-command such that user can customize it for the
7055 * mh-e.el (mh-folder-tool-bar-map): Same.
7057 2002-11-05 Bill Wohler <wohler@newt.com>
7059 * mh-utils.el, mh-e.el (mh-tool-bar-search-function): Renamed from
7060 mh-tool-bar-search-command.
7062 * mh-index.el (mh-index-search): Backed out previous change to
7063 prompt. There ain't no folder named "all."
7065 * mh-utils.el (mh-tool-bar-search-command): Added mh-search-folder
7066 and mh-index-search to the docstring so that user can easily click
7067 on them for more information.
7069 * mh-pick.el (mh-search-folder): Mention that this function uses
7070 the MH pick command to give the user more information when
7071 choosing between mh-search-folder and mh-index-folder.
7073 * mh-index.el (mh-index-search): Edited the docstring. Direct the
7074 user to mh-index-program if necessary.
7075 (mh-index-program): Edited this docstring too. Viewing the help
7076 in a *Help* buffer really exposes grammatical flaws.
7078 2002-11-05 Peter S Galbraith <psg@debian.org>
7080 * mh-utils.el (mh-tool-bar-search-command): New defcustom to set
7081 what search function to use in tool-bar.
7082 (mh-show-tool-bar-map): Use it.
7084 * mh-e.el (mh-folder-tool-bar-map): Use it.
7086 2002-11-05 Bill Wohler <wohler@newt.com>
7088 * mh-index.el (mh-index-search): Changed default prompt from "+"
7089 to "all". mh-prompt-for-folder doesn't seem to mind.
7091 * mh-e.el (mh-folder-folder-menu): Added menu entry for
7094 * mh-utils.el (mh-show-folder-menu): Added menu entry for
7097 * mh-index.el: Added commentary on supported search engines and
7098 for getting started (initializing database).
7100 2002-11-04 Satyaki Das <satyaki@theforce.stanford.edu>
7102 * mh-index.el (mh-index-keymap, mh-index-folder-key-map): Move key
7103 binding of "i" to "Fi".
7104 (mh-index-folder-mode-help-messages): Change help message to
7105 reflect above change.
7107 2002-11-04 Bill Wohler <wohler@newt.com>
7109 * mh-index.el (mh-index-program, mh-indexer): Swapped names since
7110 the former seems like a better user variable name. If you've
7111 customized mh-indexer, be sure to toss it out and customize
7114 2002-11-04 Satyaki Das <satyaki@theforce.stanford.edu>
7116 * mh-index.el (mh-indexer-choices): Not having the quotes in the
7117 binary names is a bit nicer since that maintains uniformity with
7119 (mh-index-choose): Use symbol-value instead of eval. Eval should
7120 be avoided except when it can't be :-).
7122 2002-11-04 Bill Wohler <wohler@newt.com>
7124 * mh-index.el (mh-index-program): New variable to hold the name of
7125 the indexer that was found; use this instead of clobbering
7126 user-customizable variable mh-indexer.
7127 (mh-index-search): Use it. Added comments to keep others from
7128 doing what I had done (fortunately, I caught myself before
7130 (mh-index-choose): Set mh-index-program instead of mh-indexer.
7131 Update docstring to describe side-effects.
7133 * mh-index.el (mh-indexer): Added swish++ to docstring. Chances
7134 are good that if someone has both swish++ and swish, they want to
7135 use the much faster, much smaller swish, so move it up in the
7137 (mh-indexer-choices): Ditto for rationale for moving swish++ up in
7138 priority over swish. Also, use -binary symbols instead of
7139 hard-coding binary names. This allows package installers to
7140 customize the location of the binaries in site-lisp and still have
7141 the auto-detection code work. It also allows one to have alternate
7142 binary names (see mh-swish++-binary).
7143 (mh-index-search): Ditto (moving swish++ up).
7144 (mh-swish++-binary): Look for search++, then search. The rationale
7145 is that a package maintainer may rename search to search++ if
7146 search is already in use (e.g., Debian) so try it first.
7147 (mh-swish++-execute-search): Replaced Satyaki's path with dummy
7148 path in docstring. Also removed RecurseSubdirs since this is the
7149 default. Added comment that index might be named index++ on some
7150 systems (e.g., Debian).
7151 (mh-index-choose): Updated to work with new mh-indexer-choices.
7153 2002-11-04 Peter S Galbraith <psg@debian.org>
7155 * mh-identity.el (mh-identity-list-set): Don't call easy-menu-add
7156 here, since that adds the menu to the Customize buffer in XEmacs.
7158 2002-11-04 Peter S Galbraith <psg@debian.org>
7160 * mh-comp.el (mh-mhn-compose-insert-flag)
7161 (mh-mml-compose-insert-flag): Removed eval-when-compile defvar.
7163 * mh-mime.el (mh-mhn-compose-insert-flag)
7164 (mh-mml-compose-insert-flag): Move variables to mh-utils.el.
7165 Fixes mh-letter-menu for XEmacs.
7167 2002-11-04 Eric Ding <eding@rational.com>
7169 * mh-comp.el (mh-rejected-letter-start): add another string
7171 2002-11-04 Eric Ding <ericding@alum.mit.edu>
7173 * mh-comp.el (mh-rejected-letter-start): regexp-opt doesn't take
7174 regexps as args, only regular strings
7176 2002-11-04 Peter S Galbraith <psg@debian.org>
7178 * mh-comp.el (mh-insert-mail-followup-to): Don't modify a
7179 pre-existing M-F-T field. If a nmh replgroupcomps propagates a
7180 M-F-T field in a message reply, then we have to have it alone.
7182 2002-11-02 Bill Wohler <wohler@newt.com>
7184 * mh-comp.el, mh-e.el, mh-funcs.el, mh-identity.el, mh-index.el,
7185 mh-mime.el, mh-pick.el, mh-seq.el, mh-speed.el, mh-utils.el,
7186 mh-xemacs-compat.el: Added Local Variables section. Defined
7187 sentence-end-double-space to be nil so that those who might not
7188 buy my setting of this variable can at least run checkdoc without
7189 a whole lot of noise.
7191 2002-11-02 Peter S Galbraith <psg@debian.org>
7193 * mh-identity.el: New file. Multiple Identify support for MH-E.
7194 Used to easily set different fields such as From and Organization,
7195 as well as diffrent signature files. This file won't be included
7198 2002-11-02 Bill Wohler <wohler@newt.com>
7200 * mh-mime.el (mh-mm-save-part): New function to wrap mm-save-part
7201 from Gnus 5.10 to make it explicit which code has been
7203 (mh-mime-save-part): Call mh-mm-save-part instead of cut-n-pasted
7204 code from Gnus 5.10.
7206 2002-11-02 Peter S Galbraith <psg@debian.org>
7208 * mh-comp.el (mh-yank-from-start-of-msg): Edit docstring to
7209 mention related variables mh-reply-show-message-flag and
7210 mh-delete-yanked-msg-window.
7211 (mh-reply): Change the "Reply to whom" prompt.
7213 2002-11-01 Bill Wohler <wohler@newt.com>
7215 * mh-e.el (mh-show-hook): Moved to mh-utils.el where it is used.
7216 (mh-folder-list-change-hook): Converted this from defvar in other
7217 files to defcustom here. It is called, not documented as
7218 obsolete, and might as well be documented.
7219 (mh-inc-folder, mh-quit, mh-delete-a-msg, mh-refile-a-msg,
7220 mh-process-commands, mh-update-unseen): Added missing
7221 documentation about hook, or made verbiage about hook consistent
7222 throughout, even if the function isn't interactive.
7224 * mh-utils.el (mh-folder-list-change-hook): Moved defvar to mh-e
7225 and made it a defcustom.
7226 (mh-show-mode-hook): Put it back in (actually, it was in mh-e.el,
7227 but this is the place where it is called).
7228 (mh-show-hook): Moved here from mh-e.el since it's called here.
7229 (mh-show-mode): Call mh-show-mode-hook.
7230 (mh-show-mode, mh-show-msg, mh-find-path, mh-prompt-for-folder,
7231 mh-prompt-for-folder, mh-set-folder-list): Added missing
7232 documentation about hook, or made verbiage about hook consistent
7233 throughout, even if the function isn't interactive.
7235 * mh-comp.el (mh-send-letter): Made verbiage about hook consistent
7237 (mh-insert-prefix-string): Made docstring more descriptive of what
7240 * mh-funcs.el (mh-kill-folder): Added missing documentation about
7243 * mh-index.el (mh-index-show-hook): Moved defvar to defcustom.
7244 (mh-index-show): Made verbiage about hook consistent throughout.
7246 * mh-mime.el (mh-edit-mhn-hook): Moved defvar to defcustom.
7247 (mh-edit-mhn): Added missing documentation about hook.
7249 * mh-pick.el (mh-pick-mode): Made verbiage about hook consistent
7250 throughout. Call the damn hook.
7252 2002-11-01 Satyaki Das <satyaki@theforce.stanford.edu>
7254 * mh-comp.el (mh-insert-mail-followup-to-list): Fix typo so that
7255 it will look right in info.
7257 * mh-index.el (mh-index-search): Change argument name from
7258 new-buffer-p to new-buffer-flag.
7259 (mh-index-search-again, mh-index-search): New index-buffers were
7260 being named *mh-index*<2>, *m-index*<2><2> and so on. This problem
7262 (mh-index-scroll-up, mh-index-scroll-down): Scrolling in index
7263 show buffers (after the first one) was broken.
7264 (mh-index-quit): Bury show buffer instead of killing it. Killing
7265 it, without killing the corresponding folder buffer, can cause
7266 confusion with two folder buffers trying to display in the same
7269 * mh-seq.el (mh-thread-prune-containers): Rewritten without
7270 recursion. Also removed the top-level-p argument since it isn't
7272 (mh-thread-sort-containers): New function factored out from
7273 previous definition of mh-thread-prune-containers. It sorts
7274 message containers in ascending order wrt their message indices.
7275 (mh-thread-generate): Use new mh-thread-prune-containers.
7277 * mh-e.el (mh-remove-all-notation): Fix the test. It was testing
7280 2002-10-31 Bill Wohler <wohler@newt.com>
7282 * Makefile, README, import-emacs, mh-comp.el, mh-e.el,
7283 mh-funcs.el, mh-index.el, mh-mime.el, mh-pick.el, mh-seq.el,
7284 mh-speed.el, mh-utils.el: Replaced mh-e with MH-E.
7286 2002-10-31 Satyaki Das <satyaki@theforce.stanford.edu>
7288 * mh-seq.el (mh-thread-parse-scan-line): Modified to remove user
7289 sequence notation and leave notation for other things alone. This
7290 ensures that threading doesn't lose notations for replied-to
7293 * mh-e.el (mh-inc-folder): Remove call to mh-widen here and
7294 instead do it in mh-get-new-mail. This way the widening happens
7295 only if new mail is incorporated.
7296 (mh-generate-new-cmd-note): The function now returns the point
7297 from which the new messages start. This will allow threading to do
7299 (mh-get-new-mail): Always call mh-remove-cur-notation. Otherwise
7300 adaptive scan mode leaves two messages marked as current in
7301 certain cases. Fix indentation of if statement. If there are
7302 messages to be incorporated, the folder is widened. If mh-cmd-note
7303 changes set start-of-inc correctly.
7304 (mh-remove-all-notation): Change this function to only remove user
7305 sequence notation and leave notation for replied-to messages and
7306 similar notation alone. This means operations like narrowing to
7307 subject sequence and widening don't lose notations.
7309 2002-10-31 Bill Wohler <wohler@newt.com>
7311 * mh-comp.el (mh-insert-mail-followup-to-list): Fixed typo in
7312 docstring and other minor edits. Checkdoc removed trailing spaces.
7313 (mh-insert-signature): Checkdoc flagged docstring. Reverted to
7314 previous value. Added specific name of hook that is run.
7315 (mh-regexp-in-field-p, mh-insert-letter): Checkdoc removed
7318 2002-10-31 Jeffrey C Honig <jch@honig.net>
7320 * mh-e.el (mh-show-mode-hook): Remove the unused
7321 mh-show-mode-hook, mh-show-hook is the one that is used.
7323 * mh-utils.el (mh-show-mode): Change the documentation to refer to
7324 mh-show-hook instead of the unused mh-show-mode-hook.
7326 2002-10-31 Peter S Galbraith <psg@debian.org>
7328 * mh-comp.el (mh-insert-mail-followup-to-list): Set default to nil
7329 and include example in doc string.
7331 2002-10-31 Satyaki Das <satyaki@theforce.stanford.edu>
7333 * mh-index.el (mh-indexer): Add customization choice for swish++.
7334 (mh-indexer-choices): Add swish++ choice.
7335 (mh-index-search): Change doc to reflect addition of swish++ option.
7336 (mh-swish++-binary, mh-swish++-directory): New variables for
7338 (mh-swish++-execute-search): New function to execute swish++
7340 (mh-swish++-next-result): Function aliased to mh-swish-next-result
7341 since the result format of swish++ is the same as that of swish-e.
7342 (mh-index-search): Always overwrite window-configuration with new
7343 value. This is needed since we don't kill the index-buffer when
7344 quitting which means the window configuration wasn't getting set
7346 (mh-index-search-again): If index buffer is reused, reset the old
7347 window config to its original value.
7349 2002-10-30 Bill Wohler <wohler@newt.com>
7351 * Makefile (emacs, xemacs): New targets.
7352 (all): Use these targets instead of calling specific targets.
7353 (.PHONY): Added emacs, xemacs, autoloads, custom-loads. Broke up
7354 target and moved pieces into their own sections.
7357 2002-10-30 Peter S Galbraith <psg@debian.org>
7359 * mh-utils.el (mh-show-font-lock-keywords): Wrap an
7360 'eval-and-compile around its defvar, otherwise byte-compilation
7361 fails on `mh-show-font-lock-keywords-with-cite'.
7363 2002-10-29 Jeffrey C Honig <jch@honig.net>
7365 * mh-comp.el (mh-letter-insert-signature-hook)
7366 (mh-insert-signature): Add a hook to be called before inserting
7367 the signature. Do not attempt to insert the signature if
7368 mh-insert-signature-file-name is nil.
7370 2002-10-29 Peter S Galbraith <psg@debian.org>
7372 * mh-e.el (mh-inc-folder): Call mh-widen when mh-narrowed-to-seq
7373 (Closes SF #629233: inc in narrowed folder suboptimal)
7375 * mh-comp.el (mh-insert-letter): Stop using mhl to include a
7376 message before it mangles the header, and supercite fails
7377 (Closes SF #629153: mh-insert-letter uses mhl?).
7378 (mh-insert-prefix-string): Leave point at beginning instead of
7379 end, since that's what sc-cite-original does.
7380 (mh-yank-cur-msg): Adjust for mh-insert-prefix-string change.
7382 2002-10-30 Steve Youngs <youngs@xemacs.org>
7384 * mh-e.el (mh-folder-mode): Check for 'font-lock-auto-fontify'
7385 when in XEmacs so we don't do font-locking unconditionally.
7387 * mh-utils.el (mh-show-mode): Ditto.
7389 2002-10-29 Peter S Galbraith <psg@debian.org>
7391 * mh-e.el (mh-folder-refiled-face, mh-folder-cur-msg-number-face)
7392 (mh-folder-to-face, mh-folder-body-face): Define faces instead of
7393 copying them from font-lock faces. This mh-e will look the same
7394 in XEmacs as it does in Emacs.
7395 * mh-utils.el (mh-show-cc-face, mh-show-date-face)
7396 (mh-show-header-face): Ditto.
7398 2002-10-29 Jeffrey C Honig <jch@honig.net>
7400 * mh-comp.el (mh-send-letter): I meant to use
7401 mh-goto-header-field, not mh-get-header-field. The former returns
7402 nil if the header is not found and doesn't need a conditional.
7404 2002-10-29 Peter S Galbraith <psg@debian.org>
7406 * mh-comp.el (mh-forward): Bug fix. Change 'kill-line for a
7407 'delete-region, because I don't want that text yanked with C-y.
7409 * mh-seq.el (mh-put-msg-in-seq): Add support for selected
7410 region (Closes SF feature request #630324).
7412 2002-10-28 Satyaki Das <satyaki@theforce.stanford.edu>
7414 * mh-seq.el (mh-thread-prune-subject): Make the regexp a little
7415 general so that a subject of the form "Re[218]: howdy" would be
7418 * mh-mime.el (mh-mime-save-part): Copy function definition of
7419 mm-save-part from cvs gnus since that function is buggy in gnus
7420 that comes with emacs21.2.
7422 2002-10-28 Peter S Galbraith <psg@debian.org>
7424 * mh-e.el (mh-scan-subject-regexp): Add an expression to match an
7425 optional bracketed number after "Re", such as in "Re[2]:"
7426 (Patch by Satyaki; I checked it and applied).
7427 (mh-folder-font-lock-subject): Adapt to new mh-scan-subject-regexp.
7428 * mh-seq.el (mh-subject-to-sequence): Ditto.
7430 * mh-e.el (mh-folder-sequence-menu): Remove "Toggle Subject
7431 Thread" from menu. mh-toggle-threads is in the Folder menu.
7433 * mh-e.el (mh-folder-sequence-menu): Minor menu text edits.
7435 * mh-utils.el (mh-show-update-sequences): Added to
7436 mh-defun-show-buffer builds; needed for menu.
7437 (mh-show-sequence-menu, mh-show-message-menu)
7438 (mh-show-folder-menu): 3 new menus in mh-show-mode-map that mirror
7439 the menus used in mh-folder-mode.
7440 (mh-show-mode): easy-menu-add the 3 menus.
7442 2002-10-28 Satyaki Das <satyaki@theforce.stanford.edu>
7444 * mh-utils.el (mh-goto-msg): Fix the regexp to search so that we
7445 go to the right message. In a threaded folder message 2 may be
7446 present after 26 and the previous regexp would go to 26 when we
7447 really wanted to go to 2!
7449 * mh-seq.el (mh-widen): Add call to mh-recenter to make it like
7452 2002-10-28 Bill Wohler <wohler@newt.com>
7454 * mh-utils.el (mh-show-mime-save-parts): Deleted definition.
7455 (mh-show-mime-map, tool-bar-map): Use mh-mime-save-parts instead
7456 of mh-show-mime-save-parts.
7458 2002-10-28 Peter S Galbraith <psg@debian.org>
7460 * mh-comp.el (mh-letter-tool-bar-map): tool-bar-add-item key name
7462 * mh-utils.el (mh-show-tool-bar-map): Same.
7463 * mh-e.el (mh-folder-tool-bar-map, mh-folder-seq-tool-bar-map): Same
7465 2002-10-27 Satyaki Das <satyaki@theforce.stanford.edu>
7467 * mh-seq.el (mh-toggle-threads): Add call to mh-recenter to make
7468 its behavior like that of mh-narrow-to-seq.
7470 2002-10-27 Bill Wohler <wohler@newt.com>
7472 * mh-mime.el (mh-mime-save-parts): Renamed from
7473 mh-store-mime-parts for consistency with mh-mime-save-part. Fixed
7474 bug whereby mh-mime-save-parts-directory was not getting
7475 initialized properly from a string-valued
7476 mh-mime-save-parts-default-directory.
7477 (mh-mime-save-parts-default-directory): Ditto. Check your
7479 (mh-mime-save-parts-directory): Ditto.
7481 * mh-utils.el (mh-show-mime-save-parts): Renamed from
7482 mh-store-mime-parts.
7483 (mh-show-mime-map): Added keybinding "K a" for
7484 mh-show-mime-save-parts.
7486 * mh-e.el (mh-mime-save-parts) Renamed from mh-store-mime-parts.
7487 (mh-mime-map): Added keybinding "K a" for mh-mime-save-parts.
7488 (mh-help-messages): Added help for "K a".
7490 2002-10-27 Peter S Galbraith <psg@debian.org>
7492 * mh-comp.el (mh-search-addr-regexp, mh-regexp-in-field-p): Rename
7493 the first to the second (and recode a bit).
7494 (mh-insert-mail-followup-to): Use it.
7496 2002-10-27 Bill Wohler <wohler@newt.com>
7498 * mh-utils.el (mh-invisible-headers): Backed out change. Removed
7499 Mail-Followup-To due to objections from Peter and Mark.
7501 2002-10-27 Satyaki Das <satyaki@theforce.stanford.edu>
7503 * mh-seq.el (mh-msg-is-in-seq): Modified to show info about
7504 whether the message being queried about has been marked to be
7507 * mh-mime.el (mh-insert-mime-security-button): Make
7508 pressed-details a local.
7510 2002-10-27 Steve Youngs <youngs@xemacs.org>
7512 * .cvsignore: New file.
7514 2002-10-26 Steve Youngs <youngs@xemacs.org>
7516 * mh-seq.el (mh-notate-deleted-and-refiled): Don't bind local
7517 variable 'dest', it isn't used anywhere.
7519 * mh-pick.el (mh-do-pick-search): Don't bind local variable
7520 'finding-messages', it isn't used anywhere.
7522 * mh-utils.el: Byte-compiler warning suppression.
7523 (mh-gnus-article-highlight-citation): Rather than redefining
7524 'gnus-cite-face-list', just re-order it.
7525 (mh-show-mode): Force turning on font-lock in XEmacs.
7527 * mh-seq.el: Byte-compiler warning suppression.
7529 * mh-index.el: Byte-compiler warning suppression.
7531 * mh-comp.el: Byte-compiler warning suppression.
7533 * mh-xemacs-compat.el: Add defaliases for 'timerp' &
7534 'cancel-timer' to the equivalent 'itimer' functions.
7535 (rfc822): Require it for 'rfc822-goto-eoh'.
7536 Byte-compiler warning suppression.
7538 * mh-e.el (mh-folder-mode): Force turning on font-lock in XEmacs.
7539 (mh-toggle-threads): Remove duplicate autoload.
7540 Byte-compiler warning suppression.
7541 (mh-folder-unseen-seq-list): Use 'with-temp-buffer' to fix a bug
7542 in XEmacs when font-lock is on.
7543 (mh-folder-unseen-seq-name): Ditto.
7545 2002-10-27 Mark D. Baushke <mdb@gnu.org>
7547 * Makefile: Reorganize to allow for building also compiling for
7548 XEmacs too. Sanitize so that it will work using least-common
7549 denominator versions of 'make'. Tested using GNU make, Solaris make,
7551 (all): Use recursive invokation based on the emacs or xemacs
7552 executable passed on the 'make EMACS=xemacs' command line.
7553 (XEMACS_OPTIONS): The incantation to be passed to an xemacs editor
7554 to compile things properly.
7555 (AUTO_PRELOADS): Magic XEmacs glue.
7558 (custom-loads): Ditto.
7560 2002-10-26 Satyaki Das <satyaki@theforce.stanford.edu>
7562 * mh-e.el (mh-last-msg): Add call to mh-recenter.
7564 2002-10-26 Peter S Galbraith <psg@debia.org>
7566 * mh-comp.el (mh-search-addr-regexp, mh-re-search-to-cc): Remove
7567 `mh-re-search-to-cc' in favour of more generalized new function
7568 `mh-search-addr-regexp'.
7569 (mh-insert-mail-followup-to): Use it.
7571 2002-10-26 Satyaki Das <satyaki@theforce.stanford.edu>
7573 * mh-seq.el (mh-copy-seq-to-eob): Avoid rethreading when the
7574 folder is already threaded. This is more efficient and also avoids
7575 problems when the folder is widened.
7576 (mh-thread-inc): Don't try to restore the point to original
7577 location since mh-inc-folder from where this is called changes
7578 point location after calling this function.
7580 * mh-e.el (mh-make-folder-mode-line): Fix a small bug where the
7583 2002-10-26 Peter S Galbraith <psg@debian.org>
7585 * mh-comp.el (mh-insert-mail-followup-to): Fix for new defcustom.
7587 2002-10-26 Satyaki Das <satyaki@theforce.stanford.edu>
7589 * mh-seq.el (mh-notate-deleted-and-refiled): Remove unused binding
7590 of dest. The problem was pointed out by Steve as well.
7592 * mh-e.el (mh-toggle-threads): Remove duplicate autoload as
7593 pointed out by Steve.
7595 2002-10-26 Bill Wohler <wohler@newt.com>
7597 * mh-utils.el (mh-invisible-headers): Added Mail-Followup-To.
7599 2002-10-26 Peter S Galbraith <psg@debian.org>
7601 * mh-comp.el (mh-insert-mail-followup-to-list): Change defvar to
7604 2002-10-25 Satyaki Das <satyaki@theforce.stanford.edu>
7606 * mh-e.el (mh-remove-all-notation): New function that removes all
7609 * mh-seq.el (mh-narrow-to-seq): When hiding the original folder
7610 remove all notation. This avoids stale notation hanging around.
7611 Also changes in show buffer and position in folder buffer are
7612 avoided if possible.
7613 (mh-widen): When widening the scan-lines are notated based on the
7614 current state of the folder. This means any changes made when the
7615 folder was narrowed are shown consistently.
7616 (mh-notate-deleted-and-refiled): Update the documentation.
7617 (mh-thread-parse-scan-line): For some reason the ASCII value of
7618 the space character was being used here. This is fixed.
7619 (mh-thread-inc, mh-toggle-threads): Avoid change of point in
7620 folder and message being displayed in shown buffer.
7622 * mh-utils.el (mh-recenter): Rewrite mh-recenter to show fewer
7623 blank lines when point is towards the end of the folder buffer.
7625 2002-10-25 Peter S Galbraith <psg@debian.org>
7627 * mh-comp.el (mh-insert-mail-followup-to-flag): New boolean
7628 defcustom to append a Mail-Followup-To field to the header. The
7629 insertion is done if the To: or Cc: fields matches an entry in
7630 `mh-insert-mail-followup-to-list'."
7631 (mh-insert-mail-followup-to-list): New defvar. List of addresses
7632 for which a Mail-Followup-To field is inserted.
7633 (mh-re-search-to-cc): New function. Search for REGEXP in To: and
7635 (mh-insert-mail-followup-to): New function. Insert
7636 Mail-Followup-To: if To or Cc match `mh-insert-mail-followup-to-list'.
7637 (mh-compose-and-send-mail): Call mh-insert-mail-followup-to if
7638 mh-insert-mail-followup-to-flag is true.
7640 2002-10-25 Mark D. Baushke <mdb@gnu.org>
7642 * mh-utils.el (mh-show-maximum-size): New variable to control
7643 the display of large messages.
7644 (mh-display-msg): Use it (Closes SF #488696).
7646 * mh-seq.el (mh-toggle-threads): Checkdoc fix.
7648 * mh-e.el (mh-reset-threads-and-narrowing): Checkdoc fix.
7650 * mh-comp.el (mh-insert-x-mailer-flag): Renamed from
7651 mh-insert-x-mailer-p. Update docstring.
7652 (mh-send-letter): Use it.
7653 (mh-reply-show-message-flag): Renamed from
7654 mh-reply-show-message-p. Update docstring.
7656 This addresses part of SF #627015.
7658 * mh-e.el (mh-recenter-summary-flag): Renamed from
7659 mh-recenter-summary-p. Update docstring.
7660 (mh-set-scan-mode): Use it.
7661 This addresses part of SF #627015.
7663 2002-10-25 Satyaki Das <satyaki@theforce.stanford.edu>
7665 * mh-e.el (mh-reset-threads-and-narrowing): New function which
7666 resets all thread and narrowing state to completely unthreaded and
7667 widened state. As a side effect, the folder buffer is erased.
7668 (mh-rescan-folder): Reset threads and narrowing state.
7670 * mh-funcs.el (mh-pack-folder-1): Reset threads and narrowing state.
7672 * mh-seq.el (mh-copy-seq-to-eob): Change mh-view-ops after
7673 threading is over so that if user aborts threading, it doesn't
7674 leave mh-e in an inconsistent state.
7675 (mh-toggle-threads): Use mh-scan-folder to populate the folder
7676 buffer instead of mh-rescan-folder which resets threading and
7679 2002-10-24 Bill Wohler <wohler@newt.com>
7681 * mh-e is completely checkdoc clean now.
7683 * mh-utils.el (mh-clean-message-header-flag): Renamed from
7684 mh-clean-message-header.
7685 (mh-bury-show-buffer-flag): Renamed from mh-bury-show-buffer.
7686 (mh-show-use-goto-addr-flag): Renamed from mh-show-use-goto-addr.
7687 This addresses part of SF #627015.
7689 * mh-mime.el (mh-clean-message-header-flag): Renamed from
7690 mh-clean-message-header.
7691 Checkdoc fixes. This addresses part of SF #627015.
7693 * mh-index.el (mh-clean-message-header-flag): Renamed from
7694 mh-clean-message-header. This addresses part of SF #627015.
7696 * mh-funcs.el (mh-do-not-confirm-flag): Renamed from
7697 mh-do-not-confirm. This addresses part of SF #627015.
7699 * mh-e.el (mh-do-not-confirm-flag): Renamed from
7701 (mh-clean-message-header-flag): Renamed from
7702 mh-clean-message-header.
7703 This addresses part of SF #627015.
7705 * mh-comp.el: checkdoc fixes.
7707 2002-10-24 Satyaki Das <satyaki@theforce.stanford.edu>
7709 * mh-seq.el (mh-copy-seq-to-eob): Rewritten to scan the headers
7710 fresh instead of yanking from buffer. This is needed to get
7711 correct threading in copied sequence.
7712 (mh-thread-inc, mh-thread-update-scan-line-map)
7713 (mh-thread-parse-scan-line): Eliminate the use, and hence the
7714 definition of, the kludgy mh-thread-update-scan-line-map. Instead
7715 the functions mh-notate-deleted-and-refiled and
7716 mh-notate-user-sequences are used to get the message marks right.
7717 (mh-thread-generate-scan-lines): Updated to allow the thread tree
7718 to be used in a narrowed folder buffer.
7719 (mh-thread-folder, mh-toggle-threads): Remove
7720 mh-folder-threaded-view-flag.
7721 (mh-thread-old-scan-line-map): New buffer-local variable that
7722 remembers the original scan-line map so that the sequence thread,
7723 narrow, widen will work.
7724 (mh-narrow-to-seq, mh-widen): Remember the scan-line map when
7725 narrowing and restore it when widening.
7727 * mh-e.el (mh-folder-threaded-view-flag, mh-folder-folder-menu)
7728 (mh-regenerate-headers, mh-get-new-mail)
7729 (mh-make-folder-mode-line, mh-process-commands)
7730 (mh-delete-scan-msgs): Remove mh-folder-threaded-view-flag.
7731 Instead (memq 'unthread mh-view-ops) is used to test if the folder
7734 * mh-mime.el (mh-display-emphasis): Shadow article-goto-body here
7735 since we want to do emphasis on the whole of the region and not
7736 just after the first blank line.
7737 (mh-mm-display-part): When displaying a text part show smilies and
7740 * mh-index.el (mh-index-insert-scan): Attempt to keep number of
7741 args to scan small if there are lots of adjacent matches.
7742 (mh-index-quit): Bury index-buffer on quit instead of killing it.
7743 This behavior is more like that of mh-quit.
7745 * mh-seq.el (mh-widen): If folder was threaded after narrowing
7746 then make mh-widen undo the threading instead of erroring out.
7748 2002-10-24 Peter S Galbraith <psg@debian.org>
7750 * mh-seq.el (mh-toggle-threads): Add a cond (as suggested by
7751 Satyaki) to properly unthread a narrowed-to-sequence.
7753 * mh-seq.el (mh-thread-generate-scan-lines): Fix threading
7754 breakage from partial switch to mh-container-real-child-flag and
7757 * mh-comp.el (mh-yank-cur-msg): Bug fix: specify
7758 (eq t mh-yank-from-start-of-msg) when that's what we want.
7760 2002-10-24 Mark D. Baushke <mdb@gnu.org>
7762 * mh-seq.el (mh-thread-prune-subject): Renamed subject-pruned-p as
7763 subject-pruned-flag.
7764 (mh-thread-inc): Renamed old-buffer-modified-p as
7765 old-buffer-modified-flag.
7766 (mh-thread-generate-scan-lines): Renamed dupl-p as dupl-flag.
7767 This addresses part of SF #627015.
7769 * mh-index.el (mh-index-advance): Renamed backward-p
7770 local variable as backward-flag.
7771 (mh-index-next-button): Renamed backward-p
7772 argument as backward-flag.
7773 (mh-index-show): Renamed display-headers-p argument as
7774 display-headers-flag.
7775 This addresses part of SF #627015.
7777 * mh-e.el (mh-scan-format, mh-version): Use mh-nmh-flag.
7778 (mh-folder-mime-action): Renamed include-security-p
7779 argument as include-security-flag.
7780 (mh-goto-next-button, mh-next-button): Renamed backward-p
7781 argument as backward-flag.
7782 (mh-get-new-mail): Renamed new-mail-p local variable as
7784 (mh-goto-cur-msg): Renamed minimal-changes-p argument as
7785 minimal-changes-flag.
7786 (redraw-needed-flag): Renamed redraw-needed-p local variable as
7788 (mh-seq-containing-msg): Renamed include-internal-p argument as
7789 include-internal-flag.
7790 (mh-page-msg): Use mh-page-to-next-msg-flag.
7791 This addresses part of SF #627015.
7793 * mh-mime.el (mh-mhn-compose-insert-flag): Renamed from
7794 mh-mhn-compose-insert-p. Make it buffer-local.
7795 (mh-mhn-compose-type, mh-mhn-compose-external-type,
7796 mh-mhn-compose-forw, mh-edit-mhn): Use mh-mhn-compose-insert-flag.
7797 (mh-mml-to-mime, mh-mml-secure-message-encrypt-pgpmime,
7798 mh-mime-display-part, mh-mime-display-single): Use
7799 mh-gnus-pgp-support-flag renamed from mh-gnus-pgp-support-p.
7800 (mh-mime-display-single): Renamed small-image-p local
7801 variable as small-image-flag.
7802 (mh-mime-inline-part): Renamed local variable inserted-p as
7804 (mh-mime-inline-part): Renamed local variable displayed-p as
7806 This addresses part of SF #627015.
7808 * mh-comp.el (mh-letter-menu, mh-letter-mode, mh-send-letter):
7809 mh-mhn-compose-insert-flag.
7810 (mh-repl-group-formfile, mh-forward): Use mh-nmh-flag
7811 renamed from mh-nmh-p.
7812 (mh-reply, mh-insert-x-mailer, mh-send-letter): Use mh-nmh-flag.
7813 (mh-letter-mode-map): Use mh-gnus-pgp-support-flag renamed from
7814 mh-gnus-pgp-support-p.
7815 (mh-mml-secure-message-sign-pgpmime): Use
7816 mh-gnus-pgp-support-flag.
7817 This addresses part of SF #627015.
7819 * mh-utils.el (mh-page-to-next-msg-flag): Renamed from
7820 mh-page-to-next-msg-p.
7821 (mh-show-msg): Use mh-page-to-next-msg-flag.
7822 (mh-gnus-pgp-support-flag): Renamed from
7823 mh-gnus-pgp-support-p.
7824 (mh-show-font-lock-fontify-region): Fix docstring per checkdoc.
7825 (with-mh-folder-updating): Renamed argument
7826 save-modification-flag-p as mh-save-modification-flag.
7827 (mh-prompt-for-folder): Renamed new-file-p local
7828 variable as new-file-flag.
7829 This addresses part of SF #627015.
7831 2002-10-24 Mark D Baushke <mdb@gnu.org>
7833 * mh-comp.el (mh-forward): Fix mh-mml-compose-insert-p reference
7834 in last commit to be mh-mml-compose-insert-flag.
7835 (mh-mml-compose-insert-flag): Move defvar to fix compiler warning.
7837 2002-10-24 Jeffrey C Honig <jch@honig.net>
7839 * mh-comp.el (mh-forward): Add support for transient-mark mode.
7840 When using nmh, always specify -mime so as to preserve the
7841 original message(s). If mh-compose-insertion is 'gnus, convert
7842 the mhbuild format forwarding directives into MML.
7844 2002-10-24 Eric Ding <ericding@alum.mit.edu>
7846 * mh-comp.el (mh-send-letter): Fix for earlier change that added
7847 "-mime" for bcc'ed MIME mail; still doesn't work with nmh 1.0, but
7848 at least no longer triggered for every outgoing message!
7850 2002-10-24 Peter S Galbraith <psg@debian.org>
7852 * mh-comp.el (mh-yank-cur-msg): Fix selected regions for supercite
7855 * mh-comp.el (mh-yank-cur-msg): Fix for supercite. Someone played
7856 with the point and mark setting prior to the call to
7857 'mh-insert-prefix-string and that broke supercite. I put comments
7858 to make it obvious to future coders why those settings exists.
7859 Note that supercite is still broken when a region is selected in
7860 the show buffer. Presumably it's been like that for a long time.
7861 We need to insert the header as well as the selected region oin
7862 that case. I'll submit an SF bug.
7864 2002-10-24 Jeffrey C Honig <jch@honig.net>
7866 * mh-comp.el (mh-yank-from-start-of-msg, mh-reply): Use -noformat
7867 flag to reply when 'autosupercite or 'autoattrib are specified to
7868 prevent duplicate cites of the body of a message.
7870 2002-10-23 Satyaki Das <satyaki@theforce.stanford.edu>
7872 * mh-utils.el (font-lock-default-fontify-region): Add autoload to
7873 avoid compiler warning.
7875 2002-10-23 Peter S Galbraith <psg@debian.org>
7877 * mh-comp.el (mh-letter-mode): set fill-paragraph-function to our
7878 own 'mh-fill-paragraph-function instead of simply
7879 'mail-mode-fill-paragraph (because it doesn't handle a non-nil
7880 fill-prefix correctly).
7881 (mh-fill-paragraph-function): New function for mh-letter-mode
7882 fill-paragraph-function in order to handle non-nil fill-prefix.
7883 Call sendmail's mail-mode-fill-paragraph if in the mail header,
7884 else call default fill-paragraph with fill-prefix set to nil.
7887 * mh-comp.el (mh-letter-mode): Let's use font-lock even if gnus is
7888 used in show-mode. The reason is that gnus uses static text
7889 properties which are not appropriate for a buffer that will be
7890 edited. So the choice here is either fontify the citations and
7891 header or the header only.
7893 * mh-utils.el (mh-show-font-lock-fontify-region): Limit font-lock
7894 in mh-show-mode to the header. Used when mh-highlight-citation-p
7895 is set to gnus, leaving the body to be dealt with by gnus
7896 highlighting. This fixes gnus text emphasis in mh-show-mode.
7897 (mh-show-mode): In font-lock-defaults, set
7898 font-lock-fontify-region-function to mh-show-font-lock-fontify-region.
7900 2002-10-23 Bill Wohler <wohler@newt.com>
7902 * mh-mime.el (mh-mml-attach-file): Prompt for disposition should
7903 be Disposition, not Content-Type. The Content-Type has been
7904 determined automatically.
7906 2002-10-23 Mark D. Baushke <mdb@gnu.org>
7909 s/mh-adaptive-cmd-note/mh-adaptive-cmd-note-flag/
7910 s/mh-show-use-xface/mh-show-use-xface-flag/
7911 s/mh-tool-bar-reply-3-buttons/mh-tool-bar-reply-3-buttons-flag/
7912 This addresses part of SF #627015.
7915 s/mh-mml-compose-insert-p/mh-mml-compose-insert-flag/
7916 s/mh-xemacs-p/mh-xemacs-flag/
7917 (mh-letter-menu): Use mh-mml-compose-insert-flag.
7918 (mh-insert-x-mailer): Use mh-xemacs-flag.
7919 (mh-mml-compose-insert-flag): Renamed from
7920 mh-mml-compose-insert-p.
7921 (mh-send-letter): Use mh-mml-compose-insert-flag.
7922 This addresses part of SF #627015.
7925 s/mh-folder-threaded-view-p/mh-folder-threaded-view-flag/
7926 s/mh-adaptive-cmd-note/mh-adaptive-cmd-note-flag/
7927 s/mh-xemacs-p/mh-xemacs-flag/
7928 (mh-folder-threaded-view-flag): Renamed from
7929 mh-folder-threaded-view-p. Make it buffer local.
7930 (mh-folder-tool-bar-map): Use mh-tool-bar-reply-3-buttons-flag.
7931 (mh-remove-xemacs-horizontal-scrollbar): Use mh-xemacs-flag.
7932 (mh-make-folder, mh-regenerate-headers, mh-get-new-mail): Use
7933 mh-adaptive-cmd-note-flag.
7934 (mh-folder-folder-menu, mh-regenerate-headers, mh-get-new-mail,
7935 mh-make-folder-mode-line, mh-process-commands,
7936 mh-delete-scan-msgs): Use mh-folder-threaded-view-flag.
7937 This addresses part of SF #627015.
7940 s/mh-adaptive-cmd-note/mh-adaptive-cmd-note-flag/
7941 (mh-index-search): Use mh-adaptive-cmd-note-flag.
7942 This addresses part of SF #627015.
7945 s/mh-mml-compose-insert-p/mh-mml-compose-insert-flag/
7946 s/mh-xemacs-p/mh-xemacs-flag/
7947 (mh-mml-compose-insert-flag): Renamed from
7948 mh-mml-compose-insert-p. Make it buffer local.
7949 (mh-mml-attach-file, mh-mml-secure-message-sign-pgpmime,
7950 mh-mml-secure-message-encrypt-pgpmime): Use it.
7951 (gnus-local-map-property): Use mh-xemacs-flag.
7952 This addresses part of SF #627015.
7955 s/mh-folder-threaded-view-p/mh-folder-threaded-view-flag/
7956 (mh-thread-generate, mh-thread-folder, mh-toggle-threads): Use
7957 mh-folder-threaded-view-flag.
7958 This addresses part of SF #627015.
7961 s/mh-speed-run-flists-p/mh-speed-run-flists-flag/
7962 s/mh-speed-refresh-p/mh-speed-refresh-flag/
7963 (mh-speed-run-flists-flag): Renamed from mh-speed-run-flists-p.
7964 (mh-folder-speedbar-buttons): Use it.
7965 (mh-speed-refresh-flag): Renamed from mh-speed-refresh-p.
7966 (mh-speed-update-current-folder, mh-speed-invalidate-map,
7967 mh-speed-add-folder): Use it.
7968 This addresses part of SF #627015.
7971 s/mh-xemacs-p/mh-xemacs-flag/
7972 s/mh-tool-bar-reply-3-buttons/mh-tool-bar-reply-3-buttons-flag/
7973 s/mh-show-use-xface/mh-show-use-xface-flag/
7974 (mh-xemacs-flag): Renamed from mh-xemacs-p.
7975 (mh-show-xface-function): Use it.
7976 (mh-tool-bar-reply-3-buttons-flag): Renamed from
7977 mh-tool-bar-reply-3-buttons.
7978 (mh-show-tool-bar-map): Use it.
7979 (mh-adaptive-cmd-note-flag): Renamed from mh-adaptive-cmd-note.
7980 (mh-cmd-note): Use it in description.
7981 (mh-show-use-xface-flag): Renamed from mh-show-use-xface. Use
7983 (mh-show-xface): Use mh-show-use-xface-flag.
7984 This addresses part of SF #627015.
7986 2002-10-23 Bill Wohler <wohler@newt.com>
7988 * Makefile (all): Rather than have to run "make clean all" all the
7989 time, make the default target do a clean so all you have to say is
7992 * mh-e.el (mh-folder-map): Moved "t (mh-toggle-threads)" to T
7995 2002-10-22 Satyaki Das <satyaki@theforce.stanford.edu>
7997 * mh-index.el (mh-indexer-choices, mh-swish-binary): The
7998 executable swish-e can be used to search (just like swish-search).
7999 However the Makefile in swish-e-2.2.2 doesn't install
8000 swish-search. So it is preferable to use swish-e.
8002 2002-10-22 Bill Wohler <wohler@newt.com>
8004 * mh-comp.el (mh-letter-mode-map): Added aliases for keybindings.
8005 For example, you now have "C-c C-m C-i" in addition to "C-c C-m
8008 2002-10-22 Mark D. Baushke <mdb@gnu.org>
8010 * mh-mime.el (mh-graphical-smileys-flag): Renamed from
8011 mh-graphical-smileys-p.
8012 (mh-display-smileys): Use it.
8013 (mh-graphical-emphasis-flag): Renamed from
8014 mh-graphical-emphasis-p.
8015 (mh-display-emphasis): Use it. This addresses part of SF #627015.
8017 2002-10-22 Satyaki Das <satyaki@theforce.stanford.edu>
8019 * mh-mime.el (mh-insert-mime-security-button): A message is
8020 produced if PGP decryption/verification fails. This addresses
8023 2002-10-21 Bill Wohler <wohler@newt.com>
8025 * mh-seq.el (mh-widen): Checkdoc removed the period in the error.
8026 The info node (elisp) Coding Conventions says: "An error message
8027 should start with a capital letter but should not end with a
8030 * mh-e.el, mh-utils.el (mh-tool-bar-reply-3-buttons): Moved
8031 defcustom to mh-utils because I got an error about a nil value for
8032 mh-tool-bar-reply-3-buttons when I fired up mh-rmail.
8034 * mh-comp.el, mh-funcs,el, mh-mime.el, mh-pick.el: Moved (provide)
8035 to the end of the file to be consistent with most other files (see
8036 additional rationale in mh-e.el description below).
8038 * mh-e.el: Had to remove eval-when-compile from the (require 'cl)
8039 here too (because the remove-if generated a warning in CVS Emacs).
8040 Moved (provide) to the end of the file to be consistent with most
8041 other files. My guess is that this is good to keep a feature from
8042 being "provided" if the file craps out while being loaded.
8044 2002-10-21 Satyaki Das <satyaki@theforce.stanford.edu>
8046 * mh-utils.el (mh-reply, Info-goto-node): Add autoloads to avoid
8048 (mh-tool-bar-reply-3-buttons): Add defvar to avoid compiler
8051 * mh-seq.el (mh-narrow-to-seq): Remember that a narrowing has
8053 (mh-valid-view-change-operation-p): New function that checks if
8054 the widening or unthreading that we are about to perform is
8056 (mh-widen): Check if widening is applicable.
8057 (mh-thread-inc, mh-thread-folder): Use delete-region instead of
8058 erase-buffer. This means if the buffer is narrowed then the hidden
8059 parts aren't removed. This allows widening of the folder later on.
8060 (mh-toggle-threads): Maintain mh-view-ops.
8062 * mh-e.el (mh-view-ops, mh-folder-mode): New buffer-local variable
8063 that keeps track of the sequence in which threading and narrowing
8064 of the folder buffer has been carried out. This is needed so that
8065 narrowing followed by threading (or vice versa) behaves in a
8067 (mh-regenerate-headers): Use delete-region instead of
8069 (mh-make-folder-mode-line): Change mh-first-msg-num and
8070 mh-last-msg-num conservatively. This might show a larger range in
8071 the mode-line but allows the unthreading to not miss messages
8074 2002-10-21 Bill Wohler <wohler@newt.com>
8076 * mh-mime.el (mh-graphical-emphasis-p): Added _underline_ to the
8077 docstring, as well as the source of the strings,
8078 gnus-emphasis-alist.
8079 (mh-graphical-emphasis-p, mh-graphical-smileys-p): Set the default
8082 2002-10-21 Peter S Galbraith <psg@debian.org>
8084 * mh-utils.el (mh-show-mode): Invoke new toolbar.
8085 (mh-show-tool-bar-map): New tool-bar for mh-show-mode, similar to
8088 2002-10-21 Satyaki Das <satyaki@theforce.stanford.edu>
8090 * mh-utils.el (mh-display-msg): Call the smiley display function
8091 after the call to mh-show-mode. This is needed since mh-show-mode
8092 kills all buffer-local variables and resets the variable that
8093 controls display of graphical smileys.
8095 2002-10-21 Bill Wohler <wohler@newt.com>
8097 * mh-e.el (mh-folder-mime-action): Change mime to MIME in message.
8099 * mh-comp.el (mh-mml-to-mime autoload): Ditto.
8101 2002-10-21 Mark D Baushke <mdb@gnu.org>
8103 * mh-mime.el (smiley-region): Use load for a non-fatal dependency
8104 on the smiley library.
8106 2002-10-21 Jeffrey C Honig <jch@honig.net>
8108 * mh-comp.el (mh-forward): Search for a blank line as well as
8109 mail-header-separator.
8110 (mh-letter-mode): Search for a blank line as well as
8111 mail-header-separator.
8112 (mh-send-letter): The default BCC encapsulation will make a MIME
8113 message unreadable. If we are running nmh and the letter contains
8114 a Bcc: and a Content-Type: field, add the -mime switch to to the
8117 2002-10-21 Peter S Galbraith <psg@debian.org>
8119 * mh-utils.el: Add a mh-defun-show-buffer call to define
8120 mh-show-pack-folder.
8122 2002-10-21 Peter S Galbraith <psg@debian.org>
8124 * mh-mime.el (mh-store-mime-parts): Simplify code a bit.
8126 * mh-e.el (mh-help-messages): Update help message for changed
8129 2002-10-21 Satyaki Das <satyaki@theforce.stanford.edu>
8131 * mh-speed.el (mh-speed-invalidate-map): Invalidate
8132 mh-speed-folders-cache before it is used by mh-speed-folders. Also
8133 fix indentation of if statement.
8134 (mh-speed-folder-size): The folder name should be extracted from
8135 the speedbar buffer and not from the temp buffer has was happening
8137 (mh-speed-folder-size): Harden the function some more. It
8138 shouldn't produce errors any more unless flist really didn't work.
8140 2002-10-21 Bill Wohler <wohler@newt.com>
8142 * mh-seq.el (mh-put-msg-in-seq): Formatting only. The reason I was
8143 in there is because I was trying to use mh-put-msg-in-seq and
8144 mh-msg-is-in-seq non-interactively and found that although the
8145 docstring says it uses the current message by default, I got
8146 errors if I passed in nil for the message. Is this expected, or is
8147 this a bug? I suppose the fix would be to make the arguments
8148 optional, right? This would cause the arguments in
8149 mh-put-msg-in-seq to be reversed, however. Might be a backwards
8150 compatibility problem.
8152 * mh-speed.el (mh-speed-view): Convert default size to string
8153 before passing it to read-string. This was done because XEmacs
8154 can't handle a numeric value for the default.
8156 2002-10-20 Satyaki Das <satyaki@theforce.stanford.edu>
8158 * mh-utils.el (mh-show-mode-map, mh-show-folder-map)
8159 (mh-show-sequence-map, mh-show-thread-map, mh-show-extract-map)
8160 (mh-show-digest-map, mh-show-mime-map): Interactive functions
8161 callable in show buffer are now prefixed with mh-show.
8163 * mh-seq.el (mh-notate-deleted-and-refiled): Take into account the
8164 changes to mh-refile-list and the removal of the 'deleted
8166 (mh-toggle-threads): Changing from threaded to normal view doesn't
8167 try to push out message refiles and deletions to MH.
8169 * mh-e.el (mh-rescan-folder, mh-scan-folder): Add a new optional
8170 argument to both functions that prevents them from carrying out
8171 pending refiles and deletes.
8172 (mh-undo): Remove dead code.
8173 (mh-delete-a-msg, mh-undo-msg): Get rid of the 'deleted sequence.
8174 The same information is present in mh-delete-list any way.
8175 (mh-refile-a-msg, mh-undo-msg, mh-process-commands): Change the
8176 semantics of mh-refile-list to make it self-contained. This
8177 variable now contains a list of lists. The first element of each
8178 sublist is the destination folder name. The remaining elements are
8179 the messages that are to be refiled to the destination folder.
8180 (mh-toggle-threads, mh-folder-folder-menu): Use mh-toggle-threads
8181 instead of mh-thread-folder.
8183 2002-10-20 Peter S Galbraith <psg@debian.org>
8185 * mh-mime.el (mh-store-mime-parts): Bug fix? Make this command
8186 work when in the show buffer, and not just in the folder buffer
8187 pointing to a message.
8189 2002-10-20 Peter S Galbraith <psg@debian.org>
8191 * mh-seq.el (mh-narrow-to-subject-sequence): Renamed from
8192 mh-narrow-to-subject-thread.
8193 (mh-subject-to-sequence): Renamed from mh-subject-thread-to-sequence.
8194 (mh-delete-subject-sequence): Renamed from mh-delete-subject-thread.
8195 (mh-next-unseen-subject-sequence): Renamed from
8196 mh-next-unseen-subject-thread.
8197 (mh-toggle-subject-thread): Removed. :-(
8199 * mh-e.el: s/subject-thread/subject-sequence/
8200 (mh-thread-map): Bind mh-widen to "w".
8202 * mh-utils.el: s/subject-thread/subject-sequence/
8203 (mh-show-thread-map): Bind mh-widen to "w".
8205 2002-10-20 Satyaki Das <satyaki@theforce.stanford.edu>
8207 * mh-seq.el (mh-thread-folder): This function is no longer
8208 interactive. The mh-toggle-threads is the interactive function
8209 that gets called by the user. Also the already computed values in
8210 mh-first-msg-num and mh-last-msg-num are used instead of
8211 recomputing the first and last message indices in the current
8213 (mh-toggle-threads): New interactive function that toggles
8214 threaded view of the folder.
8216 * mh-utils.el (mh-letter-toggle-threads): New interactive function
8217 which toggles thread view from show buffer. This function replaces
8218 mh-letter-thread-folder.
8219 (mh-show-folder-map): Use mh-letter-toggle-threads instead of
8220 mh-letter-thread-folder.
8222 * mh-e.el (mh-folder-map): Use mh-toggle-threads instead of
8225 2002-10-20 Bill Wohler <wohler@newt.com>
8227 * mh-e.el (mh-scan-folder): Formatting only.
8228 (mh-goto-cur-msg): Removed call to mh-last-msg in those cases
8229 where there isn't a current message. Since I've started using the
8230 speedbar to read my mh-e mail, I've had to use M-< every time to
8231 go to the beginning of the new messages. Very annoying! Thus, if
8232 there isn't a current message, the cursor is left alone, which
8233 sounds like the right thing to do anyway.
8235 2002-10-19 Peter S Galbraith <psg@debian.org>
8237 * mh-seq.el (mh-subject-thread-to-sequence): Bug fix. After
8238 making the 'subject sequence real, I now have to delete it globally.
8240 * mh-seq.el (mh-toggle-subject-thread): Make toggle back to full
8241 scan exactly mh-widen (removed moving to current message).
8243 * mh-seq.el (mh-subject-thread-to-sequence): Make 'subject
8244 sequence a real one, exported to MH. This means you can, for
8245 example, mh-forward it. But it also shows up with a mark in the
8246 scan output. (Closes SF #489445).
8248 2002-10-19 Bill Wohler <wohler@newt.com>
8250 * mh-speed.el (mh-speed-view): If there weren't any unseen
8251 messages, and you specified a string (a sequence like "last") when
8252 prompted for the number of messages to display, you got an error.
8253 This has been fixed.
8255 2002-10-19 Mark D Baushke <mdb@gnu.org>
8257 * mh-e.el (mh-last-destination-folder): Destination of last refile
8259 (mh-last-destination-write): Destination of last write command.
8260 (mh-refile-msg): Use 'mh-last-destination-folder and update both it
8261 and 'mh-last-destination.
8262 (mh-write-msg-to-file): Use 'mh-last-destination-write and update
8263 both it and 'mh-last-destination (Closes SF #580772).
8265 2002-10-19 Bill Wohler <wohler@newt.com>
8267 * mh-comp.el (mh-yank-from-start-of-msg): Changed default to
8269 (mh-letter-mode-map): Removed commented-out keybindings as well as
8270 alias "C-c C-m a (mh-compose-insertion)." Prefer "C-c C-m i."
8272 * mh-utils.el: Removed autoload of help. It no longer appears to
8273 be necessary in cvs Emacs (21.4).
8275 2002-10-18 Bill Wohler <wohler@newt.com>
8277 * mh-e.el (mh-execute-commands): Doc fix.
8278 (mh-compat-write-file-hook): Renamed to
8279 mh-write-file-functions-compat.
8280 (mh-folder-mode): Add mh-write-file-functions-compat instead of
8281 mh-compat-write-file-hook
8283 2002-10-18 Peter S Galbraith <psg@debian.org>
8285 * mh-utils.el (mh-invisible-headers-show-xface): Killed this
8287 (mh-invisible-headers): Use 'mh-show-use-xface instead of
8288 'mh-invisible-headers-show-xface to determine whether to render
8289 the X-Face header line visible or not.
8291 2002-10-18 Satyaki Das <satyaki@theforce.stanford.edu>
8293 * mh-e.el (mh-compat-write-file-hook, mh-folder-mode): Use the new
8294 macro mh-compat-write-file-hook to use write-file-functions for
8295 Emacs 21.4 and local-write-file-hooks for older versions.
8297 2002-10-18 Mark D Baushke <mdb@gnu.org>
8299 * mh-utils.el (mh-invisible-headers): Add more anti-spam headers.
8301 2002-10-18 Peter S Galbraith <psg@debian.org>
8303 * mh-mime.el (mh-mml-forward-message): mml-attach-file constructs
8304 a malformed composition if the description string is empty, so
8305 test for that and call mml-attach-file without that argument if
8306 it's an empty string (closes SF #625168).
8308 2002-10-17 Satyaki Das <satyaki@theforce.stanford.edu>
8310 * mh-index.el (mh-index-keymap): Removed extra binding of " ".
8311 (mh-index-folder-mode-help-messages): Made the cheat sheet entry
8312 of quit like the others.
8313 (mh-index-search): If space was pressed in the index buffer before
8314 a search result has been shown with ".", the old show buffer would
8315 be scrolled. This is confusing since the index and show buffer
8316 contents are contradictory. Killing the show buffer here avoids
8318 (mh-index-configure-windows): Refine the window configuration
8319 logic. Avoid the two window view unless there is a message being
8320 displayed in the show buffer.
8321 (mh-index-scroll-up): Rewrite this function. The old version had a
8322 bizarre problem where the show buffer wouldn't be scrolled if the
8323 speedbar was present.
8324 (mh-index-scroll-down): Rewritten because of similar reason as
8327 2002-10-17 Peter S Galbraith <psg@debian.org>
8329 * mh-comp.el (mh-reply): Add an undo boundary in the undo list
8330 before calling 'mh-yank-cur-msg (closes SF #623693).
8332 2002-10-17 Satyaki Das <satyaki@theforce.stanford.edu>
8334 * mh-e.el (mh-folder-mode): Use local-write-file-hooks instead of
8335 write-file-hooks. This is required for XEmacs and also the right
8336 thing according to GNU Emacs21 documentation.
8338 2002-10-16 Satyaki Das <satyaki@theforce.stanford.edu>
8340 * mh-seq.el (mh-thread-generate): Get threading to work correctly
8341 on partial folders. The fix here disregards messages that aren't
8342 already present in the buffer.
8343 (mh-thread-folder): When querying scan about thread info try to
8344 avoid asking about messages that aren't present in the folder
8345 buffer. A more efficient fix would be to ask scan about just the
8346 messages that are present instead of a range of messages. However
8347 that runs the risk of sending long command lines to scan. Another
8348 change was to populate the mh-scan-line-map early so that the
8349 change in mh-thread-generate would work.
8350 (mh-thread-generate-scan-lines): In case duplicates are present
8351 make one of them the pseudo parent of the rest. This makes it look
8352 prettier if there are multiple duplicates at top level.
8354 * mh-comp.el (mh-edit-again): If a buffer in show-mode is being
8355 reused then reinsert message file. This should fix SF #624283.
8357 * mh-mime.el (mh-mm-display-part): Make sure mh-display-part is
8358 always called when we want to remove the displayed MIME part.
8360 2002-10-16 Bill Wohler <wohler@newt.com>
8362 * mh-speed.el (mh-speed-folder-size): checkdoc fix.
8363 (mh-speed-view): Tweaked output to mirror gnus verbiage. Offer
8364 to view number of messages in folder rather than mh-large-folder.
8365 Replaced (intern mh-unseen-seq) with mh-unseen-seq since the
8366 former was generating errors.
8368 2002-10-15 Satyaki Das <satyaki@theforce.stanford.edu>
8370 * mh-speed.el (mh-large-folder): New customizable variable to
8371 control mh-e's perception of large folders.
8372 (mh-speed-folder-size): New function which computes the size of
8373 folder on current line.
8374 (mh-speed-view): Modified to handle large folders. If the folder
8375 being clicked has unseen messages then only those messages are
8376 shown. Otherwise if number of messages in folder is larger than
8377 mh-large-folders then the user is asked for the number of messages
8378 to be shown. If the folder satisfies neither of the above cases
8379 then it is displayed in its entirety
8381 2002-10-15 Bill Wohler <wohler@newt.com>
8383 * mh-index.el (mh-index-keymap): Use gnus-define-keys. Sorted.
8384 Noticed that there were two key bindings for SPACE...
8386 * mh-speed.el (mh-folder-speedbar-key-map): Ditto (except for the
8389 Completed help in other modes:
8391 * mh-utils.el (mh-xemacs-p): Fixed doc.
8392 (mh-show-mode-map, mh-show-folder-map, mh-show-sequence-map)
8393 (mh-show-thread-map, mh-show-extract-map): Added binding for
8396 * mh-pick.el (mh-search-folder): Added startup help message.
8397 (mh-pick-mode-help-messages): New variable that contains help
8398 messages for pick buffer.
8399 (mh-pick-mode): Set local buffer variable mh-help-messages to
8400 mh-pick-mode-help-messages.
8402 * mh-index.el (mh-index-keymap): Added binding for mh-help
8403 (mh-index-folder-mode-help-messages): New variable that contains
8404 help messages for MH Index buffer.
8405 (mh-index-folder-mode): Set local buffer variable mh-help-messages
8406 to mh-index-mode-help-messages.
8408 * mh-funcs.el (mh-help, mh-prefix-help): Call
8409 substitute-command-keys on the help messages.
8411 * mh-e.el (mh-help-messages): Added ,. Ran C-M-q.
8412 (mh-help): This autoload doc is now used for more than just the
8413 MH-Folder, so drop that specific text.
8415 * mh-comp.el (mh-edit-again, mh-extract-rejected-mail)
8416 (mh-forward, mh-reply, mh-send-sub): Call mh-letter-mode-message
8417 to display a help message at startup.
8418 (mh-letter-mode): Set local buffer variable mh-help-messages to
8419 mh-letter-mode-help-messages.
8420 (mh-letter-mode-help-messages): New variable with help messages
8421 for the MH-Letter buffer.
8422 (mh-letter-mode-message): New function that displays a startup
8424 (mh-letter-mode-map): Added binding for mh-help. Sorted.
8426 2002-10-15 Satyaki Das <satyaki@theforce.stanford.edu>
8428 * mh-speed.el (mh-speedbar-selected-folder-with-unseen-messages-face)
8429 (mh-speedbar-folder-face, mh-speedbar-selected-folder-face)
8430 (mh-speedbar-folder-with-unseen-messages-face): New faces for mh-e
8432 (mh-folder-speedbar-buttons, mh-speed-update-current-folder)
8433 (mh-speed-add-buttons): Use the new faces.
8434 (mh-speed-normal-face, mh-speed-bold-face): Functions to convert
8435 to bold face and back to normal face.
8436 (mh-speed-set-face): Removed.
8437 (mh-speed-highlight): Modified to allow it to be used instead of
8438 mh-speed-set-face. Also changes were made to fontify folders with
8440 (mh-speed-parse-flists-output, mh-speed-parse-flists-output)
8441 (mh-speed-invalidate-map): Use mh-speed-highlight instead of
8444 2002-10-15 Bill Wohler <wohler@newt.com>
8446 * mh-mime.el, mh-seq.el, mh-speed.el, mh-utils.el: It appears that
8447 the cl package has been restructured in 21.4 in such a way that
8448 the use of eval-when-compile no longer suppresses warnings when
8449 compiling so that (require 'cl) must be called directly (maybe
8450 this is a bug in 21.4 ;-). Thus the autoloads of cl are no longer
8451 needed. Now compiles clean under 21.4.
8453 * mh-e.el (mh-folder-mode): The use of local-write-file-hooks is
8454 deprecated in Emacs 21.4, so use add-hook write-file-functions (or
8455 write-file-hook for older versions) with the LOCAL argument
8456 instead. Now compiles clean under 21.4.
8458 * mh-comp.el (mh-yank-cur-msg): Push a mark at the opposite end of
8459 the included text to make it easy to jump or delete to the other
8460 end of the included text.
8462 2002-10-15 Satyaki Das <satyaki@theforce.stanford.edu>
8464 * mh-comp.el (mh-insert-prefix-string): Remove the erroneous use
8465 of set-mark and other related functions.
8467 2002-10-14 Bill Wohler <wohler@newt.com>
8469 * mh-comp.el (mh-yank-from-start-of-msg): Fixed documentation. It
8470 isn't ignored if there is a region. It is still used for the
8472 (mh-yank-cur-msg): Removed unnecessary push-mark when snarfing the
8473 entire message. Move the cursor to the end of the snarfed message
8474 if there is a region. In this case, push a mark so user can pop to
8475 the beginning of the snarfed fragment.
8476 (mh-insert-prefix-string): This calls set-mark which I find
8477 suspect since I found that my last user mark was deleted after
8478 yanking a message. Added a comment to this effect. Will probably
8481 * README (Installed, Supported versions): To appear in GNU Emacs
8482 21.3; supported on Emacs 21, 20.7 and XEmacs 21.
8484 * mh-funcs.el (mh-concat-list): Deleted. Use mapconcat instead.
8485 (mh-help, mh-prefix-help): Use mapconcat instead of mh-concat-list.
8486 (mh-ephem-message): Use "%s" in message.
8488 * mh-funcs.el (mh-concat-list): New function to concatenate a list
8489 of strings into a single string. I would have thought elisp
8490 already contained a function like this, but I couldn't find it.
8491 (mh-ephem-message): New function to display a message in the
8492 minibuffer ephemerally. minibuffer-message seemed like the right
8493 function, but it writes to the current buffer oddly enough.
8494 (mh-help, mh-prefix-help): New functions to display command
8495 cheat sheets in the minibuffer (closes SF #493740). It would be
8496 nice to refactor these two into a single function if possible.
8498 * mh-e.el (mh-folder-mode-map, mh-folder-map, mh-sequence-map)
8499 (mh-thread-map, mh-extract-map): Added ? keybinding for `mh-help'
8500 and `mh-prefix-help' (closes SF #493740).
8501 (mh-help-messages): New variable to hold various help messages.
8502 (mh-help, mh-prefix-help): Autoload from mh-funcs.el.
8504 2002-10-13 Bill Wohler <wohler@newt.com>
8506 * mh-index.el (mh-glimpse-directory, mh-swish-directory,
8507 mh-namazu-directory): New variables that hold the name of the
8508 configuration and indexing directory. All are now hidden `.'
8511 * mh-e.el, mh-funcs.el, mh-index.el, mh-mime.el, mh-pick.el,
8512 mh-seq.el, mh-xemacs-compat.el (Docstrings): Converted comments to
8513 docstrings, reworded some docstrings to conform to Emacs
8514 documentation conventions, and eliminated all checkdoc warnings
8515 (except for -flag, which we'll fix after 6.2 is released).
8517 2002-10-13 Satyaki Das <satyaki@theforce.stanford.edu>
8519 * mh-index.el (mh-swish-next-result): Fix a bug in a corner case
8520 where the lack of a trailing "/" caused the function to wrongly
8521 filter out correct hits. This should fix SF #622679.
8523 2002-10-12 Steve Youngs <youngs@xemacs.org>
8525 * mh-utils.el (mh-xemacs-p): Simplify it, don't test for
8526 'defvaralias' and don't use 'running-xemacs'.
8528 2002-10-11 Bill Wohler <wohler@newt.com>
8530 * mh-comp.el: (Docstrings): Eliminated all checkdoc warnings by
8531 converting comments to docstrings and rewording some docstrings to
8532 conform to Emacs documentation conventions.
8534 2002-10-11 Steve Youngs <youngs@xemacs.org>
8536 * mh-utils.el (mh-xemacs-p): New.
8537 (mh-show-use-xface): Use it.
8538 (mh-show-xface-function): Ditto.
8540 * mh-e.el (toplevel): Ditto.
8541 (mh-remove-xemacs-horizontal-scrollbar): Ditto.
8542 (mh-folder-mode-map): Ditto.
8544 * mh-comp.el (mh-insert-x-mailer): Ditto.
8546 * mh-mime.el (gnus-local-map-property): Ditto.
8547 (mh-mml-to-mime): Move (require 'mh-utils) to toplevel.
8548 (mh-prompt-for-folder): Autoloading this not needed because
8549 mh-utils is now required at toplevel.
8550 (mh-show-xface): Ditto.
8551 (mh-show-addr): Ditto.
8553 2002-10-11 Bill Wohler <wohler@newt.com>
8555 * Makefile (EMACS_HOME): Set default to $(TOP)/../emacs so it
8558 * mh-utils.el (mh-invisible-headers): Added various spam header
8560 (mh-path-search): Removed argument `func-p' and related code. It
8561 was not documented and no one used it.
8562 (Docstrings): Converted comments to docstrings, reworded some
8563 docstrings to conform to Emacs documentation conventions, and
8564 basically eliminated all checkdoc warnings (except for -flag
8567 2002-10-11 Satyaki Das <satyaki@theforce.stanford.edu>
8569 * mh-seq.el (mh-thread-generate): Kill dead code.
8571 2002-10-10 Satyaki Das <satyaki@theforce.stanford.edu>
8573 * mh-seq.el (mh-region-to-sequence): Don't include point-max in
8574 region (closes SF #621632).
8576 * mh-utils.el (mh-defun-show-buffer): Fix call of
8577 frame-first-window to work with XEmacs. Also avoid warning about
8578 cur-buffe-name in XEmacs.
8579 (mh-modify, mh-goto-msg): Remove dead code.
8581 * mh-speed.el (mh-speed-toggle, mh-speed-add-buttons): Remove dead
8584 * mh-seq.el (mh-subject-thread-to-sequence, mh-thread-get-message,
8585 mh-thread-generate, mh-thread-folder): Remove dead code.
8587 * mh-mime.el (mh-mm-inline-message): Remove dead code.
8589 * mh-index.el (mh-index-search): Remove dead code.
8591 * mh-comp.el (mh-open-line): Remove dead code.
8593 * mh-e.el (mh-folder-mode): Use the macro
8594 mh-remove-xemacs-horizontal-scrollbar to avoid compiler-warning in
8596 (mh-remove-xemacs-horizontal-scrollbar): New macro to avoid
8599 2002-10-10 Mark D Baushke <mdb@gnu.org>
8601 * Makefile (EMACS_OPTIONS): New macro for command-line compile
8603 (EMACS): Allow the user to specify which emacs command to use for
8605 (COMPILE_COMMAND): Combine the compile command with its options.
8606 (.el.elc): Use the new $(COMPILE_COMMAND).
8608 2002-10-10 Mark D Baushke <mdb@gnu.org>
8610 * mh-speed.el (mh-speed-select-attached-frame): Define a new
8611 compatibility macro for getting to the attached-frame.
8612 (mh-speed-update-current-folder): Use it.
8614 2002-10-10 Mark D Baushke <mdb@gnu.org>
8616 * mh-speed.el (mh-speed-update-current-folder): Use
8617 'dframe-select-attached-frame if we are in a newer speedbar
8618 version that no longer supports the 'speedbar-attached-frame
8621 2002-10-10 Steve Youngs <youngs@xemacs.org>
8623 * mh-speed.el (mh-speed-update-current-folder): Use
8624 'dframe-select-attached-frame' if we're in XEmacs.
8626 * mh-e.el (mh-folder-mode): Remove the horizontal scrollbar from
8627 the MH-Folder buffer if we're in XEmacs.
8629 2002-10-09 Satyaki Das <satyaki@theforce.stanford.edu>
8631 * mh-utils.el (mh-show-xface-function): New global that stores
8632 what function needs to be called to display X-Face.
8633 (mh-show-xface): Rewritten to avoid compiler warning.
8635 2002-10-09 Peter S Galbraith <psg@debian.org>
8637 * mh-utils.el (mh-exchange-point-and-mark-preserving-active-mark):
8638 Simplify code for all emacsen to avoid byte-compilation warnings.
8640 2002-10-09 Satyaki Das <satyaki@theforce.stanford.edu>
8642 * mh-mime.el (mh-mm-display-part): If a sub-part of the current
8643 part is an inline image then clicking the button keeps the image
8644 around. The change fixes this bug.
8646 2002-10-09 Peter S Galbraith <psg@debian.org>
8648 * mh-utils.el (mh-exec-cmd-output): Use new function
8649 'mh-exchange-point-and-mark-preserving-active-mark instead of
8650 'exchange-point-and-mark. Fixes a bug in emacs20 and XEmacs21.
8651 (mh-exchange-point-and-mark-preserving-active-mark): New function.
8652 Does like 'exchange-point-and-mark but doesn't activate the mark.
8654 * mh-comp.el (mh-letter-menu): Allow access to "Pull in All
8655 Compositions" menu entries when edits have really occurred.
8656 Works with "forw: -mime" mh_profile entry, so this fixes a bug.
8658 * mh-mime.el (mh-mime-inline-part, mh-mm-display-part): Use
8659 line-beginning-position and line-end-position instead of
8660 point-at-bol and point-at-eol XEmacs functions.
8661 * mh-xemacs-compat.el: Added line-end-position and
8662 line-beginning-position compatibility aliases.
8664 2002-10-08 Mark D. Baushke <mdb@gnu.org>
8666 * mh-utils.el (mh-scan-msg-format-regexp): The regexp to find
8668 (mh-scan-msg-format-string): Format to be used with the current
8669 maximum width of message number for the folder in the
8670 `mh-upate-scan-format' function.
8671 (mh-update-scan-format): Use `mh-scan-msg-format-regexp' for greater
8672 flexibility. The message number is no longer anchored to the
8673 beginning of the `mh-scan-format-nmh' or `mh-scan-format-mh' format
8674 strings. The `mh-update-scan-format' allows for using zero-filled
8677 2002-10-08 Peter S Galbraith <psg@debian.org>
8679 * mh-e.el (mh-folder-folder-menu): Add entry for "Thread Folder".
8681 2002-10-07 Satyaki Das <satyaki@theforce.stanford.edu>
8683 * mh-seq.el (mh-thread-generate): Use mh-progs to get path to mh
8686 * mh-speed.el (mh-speed-flists): Use mh-progs to get path to mh
8688 (mh-speed-folders-actual): Same as above.
8690 2002-10-05 Steve Youngs <youngs@xemacs.org>
8692 * mh-comp.el (mh-yank-from-start-of-msg): Make default setting 't'
8695 * mh-xemacs-compat.el (match-string-no-properties): Rewrite as a
8696 defsubst using 'buffer-substring-no-properties' so we don't grab
8698 (rfc822-goto-eoh): Removed. This exists in the XEmacs mail-lib
8700 (mail-header-end): Ditto.
8701 (mail-mode-fill-paragraph): Ditto.
8703 2002-10-05 Satyaki Das <satyaki@theforce.stanford.edu>
8705 * mh-speed.el (mh-speed-invalidate-map): When called interactively
8706 the function will clear mh-speed-folders-cache.
8708 2002-10-02 Satyaki Das <satyaki@theforce.stanford.edu>
8710 * mh-mime.el (mh-insert-mime-button): Rewrite without using
8713 2002-10-01 Satyaki Das <satyaki@theforce.stanford.edu>
8715 * mh-mime.el (mh-file-mime-type-substitutions): Reorder code to
8716 avoid compiler warning.
8718 2002-10-01 Bill Wohler <wohler@newt.com>
8720 * Makefile (MH-E-ETC): Moved ChangeLog into MH-E-ETC-ETC since it
8721 shouldn't get installed in Emacs.
8722 (install-emacs): Install MH-E-IMG into Emacs' lisp/toolbar and
8723 MH-E-IMG2 into Emacs' lisp/mail.
8725 2002-10-01 Peter S Galbraith <psg@debian.org>
8727 * mh-e.el (mh-tool-bar-reply-3-buttons): New customization.
8728 Non-nil means use three buttons for reply commands in tool-bar.
8729 If you have room on your tool-bar because you are using a large
8730 font, you may set this variable to expand the single reply
8731 button into three buttons that won't lead to minibuffer prompt
8732 about who to reply to.
8733 (mh-folder-tool-bar-map): Use mh-tool-bar-reply-3-buttons to
8734 decide how many buttons to use for replying.
8736 * mh-mime.el (mh-file-mime-type-substitutions)
8737 (mh-file-mime-type-substitute): Fix typos and doc strings.
8739 2002-09-30 Peter S Galbraith <psg@debian.org>
8741 * mh-mime.el (mh-file-mime-type): Run Content-Type string returned
8742 by file command through mh-file-mime-type-substitute (see below).
8743 (mh-file-mime-type-substitute): Possibly change Content-Type
8744 string using mh-file-mime-type-substitutions variable. This is
8745 mostly because all MS-Office file are seen as application/msword
8746 by the file command.
8747 (mh-file-mime-type-substitutions): New variable. Defines
8748 substitutions to make for Content-Type returned from file command.
8750 2002-09-27 Bill Wohler <wohler@newt.com>
8752 * README: Moved Id to end of file since it broke outline mode at
8755 * import-emacs (release): Renamed "mainline" tag to
8756 "emacs-mainline" to correspond with existing CVS tag.
8757 (EMACS_HOME): Fixed typo in docstring.
8759 * mh-utils.el (mh-folder-name-p, mh-defun-show-buffer): Lowercase
8760 NIL and T in docstring.
8761 (mh-update-scan-format): Fixed typo.
8763 * mh-comp.el, mh-e.el, mh-pick.el, mh-utils.el: Updated from CVS
8764 Emacs. The only new thing appears to be to downcase NIL and T in
8767 2002-09-26 Satyaki Das <satyaki@theforce.stanford.edu>
8769 * mh-seq.el (mh-thread-generate): The threading code will now be
8770 more resistant to corruption of messages. Before the change any
8771 corruption of message x would cause all messages with indices
8772 higher than x to be neglected when threading!
8774 2002-09-23 Peter S Galbraith <psg@debian.org>
8776 * mh-mime.el (mh-store-mime-parts): Don't store value into
8777 user-customizable variable mh-store-mime-parts-default-directory
8778 and use mh-store-mime-parts-directory instead.
8780 2002-09-20 Satyaki Das <satyaki@theforce.stanford.edu>
8782 * mh-seq.el (mh-thread-prune-subject): Use regular expressions to
8783 make the subject pruning behave the way it is specified in the
8786 * mh-speed.el (mh-speed-folders-actual): Don't use pop when we
8787 are not going to use the first element. This avoids a compilation
8788 warning with cvs emacs.
8790 2002-09-19 Satyaki Das <satyaki@theforce.stanford.edu>
8792 * mh-utils.el (mh-display-msg): Put the call to
8793 set-buffer-modified after mh-show-mode. This is needed for CVS
8794 emacs since calling mh-show-mode marks the buffer as modified if
8797 2002-09-17 Peter S Galbraith <psg@debian.org>
8799 * mh-mime.el (mh-store-mime-parts-default-directory): Renamed from
8800 mh-store-mime-parts-directory
8801 (mh-store-mime-parts-directory): Renamed from
8802 mh-store-mime-parts-directory-default.
8804 2002-09-16 Peter S Galbraith <psg@debian.org>
8806 * mh-comp.el (mail-citation-hook): Doc tweaks suggested by Bill.
8808 2002-09-08 Satyaki Das <satyaki@theforce.stanford.edu>
8810 * mh-e.el (autoloads): Reorder autoload of mh-reply to avoid
8813 2002-09-03 Peter S Galbraith <psg@debian.org>
8815 * mh-mime.el (mh-store-mime-parts-directory): New defcustom.
8816 Default directory to use for mh-store-mime-parts.
8817 (mh-store-mime-parts): New Command. Store the MIME parts of the
8819 (mh-store-mime-parts-directory-default): New internal working
8820 variable. Default to use for mh-store-mime-parts-directory, set
8823 * mh-e.el (mh-folder-seq-tool-bar-map): Add mh-store-mime-parts to
8827 2002-08-22 Satyaki Das <satyaki@theforce.stanford.edu>
8829 * mh-seq.el (mh-thread-generate-scan-lines): In threaded view,
8830 complete scan lines are printed for all messages (not just the
8831 ones at the top of a thread).
8833 * mh-index.el (mh-index-insert-scan): Replace use of kill-line
8834 since that pollutes the kill-ring.
8836 * mh-comp.el (autoloads): Add autoloads for search and subseq to
8837 get rid of compiler warnings.
8839 2002-08-19 Peter S Galbraith <psg@debian.org>
8841 * reply-to.xpm, reply-to.pbm, reply-from.xpm, reply-from.pbm,
8842 reply-all.xpm, reply-all.bpm: New icons for various reply methods.
8843 * mh-e.el (mh-folder-tool-bar-map): Split reply button into three
8844 that won't prompt for "from", "to" and "all".
8845 * mh-comp.el (mh-reply): Put variable reply-to in the interactive
8846 list since it's specified on the command line for the new toolbar.
8848 * mh-comp.el (mail-citation-hook): Tweak docs concerning
8849 historical usage for supercite.
8850 (mh-yank-from-start-of-msg): Add settings 'supercite and
8851 'autosupercite. Rename 'automatic to 'autoattrib.
8852 (mh-insert-prefix-string): Invoke sc-cite-original if
8853 mh-yank-from-start-of-msg is et to 'supercite or 'autosupercite.
8855 2002-08-17 Satyaki Das <satyaki@theforce.stanford.edu>
8857 * mh-comp.el (compilation-fix): Reorder defvars to avoid warnings
8860 2002-08-17 Peter S Galbraith <psg@debian.org>
8862 * mh-comp.el (mh-yank-from-start-of-msg): Add 'automatic choice.
8863 Do as for `attribution' automatically when show buffer matches the
8864 message being replied-to.
8865 (mh-reply): Call 'mh-yank-cur-msg when mh-yank-from-start-of-msg
8866 is set to 'automatic and show buffer matches message number being
8868 (mh-show-buffer-message-number): New helper function to get the
8869 message number of the current show-buffer.
8870 (mh-yank-cur-msg): Handle 'automatic choice the same as 'attribution.
8871 (mh-yank-cur-msg): Bug fix. It would bail on error if
8872 mh-show-buffer didn't exists.
8874 2002-08-16 Peter S Galbraith <psg@debian.org>
8876 * mh-comp.el (mh-insert-x-mailer): It wrongly assumed that Emacs
8877 was used even when XEmacs was used. Fixed so X-Mailer header is
8878 more exact about what we are using.
8880 2002-08-15 Peter S Galbraith <psg@debian.org>
8882 * mh-e.el (mh-version): Change CVS version number to 6.1+cvs just
8883 so X-Mailer header is more exact about what we are using.
8885 * mh-mime.el (mh-mhn-compose-insertion, mh-mhn-compose-anon-ftp,
8886 mh-mml-attach-file):
8887 "Jeffrey P. Morgenthaler" <jpmorgen@congee.gsfc.nasa.go> reported
8888 that "require" in emacs 20.3 doesn't handle 3 arguments. We
8889 use "load" at the top of file elsewhere anyway to handle such a
8890 case of non-essential loading, so switch to that here.
8892 2002-08-06 Satyaki Das <satyaki@theforce.stanford.edu>
8894 * mh-funcs.el (autoload): Add autoload for mh-speed-invalidate-map.
8896 * mh-speed.el (mh-speed-add-folder): New function to make the
8897 speedbar aware of new folders when they are created by mh-e.
8899 * mh-utils.el (mh-prompt-for-folder): Use mh-speed-add-folder to
8900 tell speedbar that new folder is being created. Also use folder
8901 instead of mkdir to create new folders.
8903 2002-08-01 Peter S Galbraith <psg@debian.org>
8905 * mh-utils.el (mh-decode-quoted-printable): Conditionalize the
8906 limit of search for quoted-printable. If we're using mm-decode
8907 for MIME decoding, it's possible that `mimedecode' could mess our
8908 message, so we only run a full search for quoted-printable parts
8909 when not using gnus' mm-decode. When using mm-decode, mimedecode
8910 can still help by handling the case of the whole message being
8911 quoted-printable as opposed to only a part.
8913 2002-07-31 Peter S Galbraith <psg@debian.org>
8915 * mh-comp.el (mh-compose-insertion): Moved from mh-mime.el because
8916 the pulldown menu were broken in XEmacs21 from this variable being
8919 2002-07-28 Mark D. Baushke <mdb@gnu.org>
8921 * mh-utils.el (mh-show-mode): Use the default paragraph-start
8922 rather than the inherited text-mode value.
8924 2002-07-28 Satyaki Das <satyaki@theforce.stanford.edu>
8926 * mh-seq.el (mh-thread-duplicates): New hash table to track
8928 (mh-thread-get-message): Remove debug code.
8929 (mh-thread-canonicalize-id): Modified to handle messages without
8930 message-id header. Such messages are given distinct copies of the
8931 empty string as message-id.
8932 (mh-thread-generate): The function was inadvertently rebuilding
8933 the thread tree when message refiles and message deletes are
8934 processed. The change here fixes that. Also code has been added to
8935 keep track of duplicate message-id's.
8936 (mh-thread-generate-scan-lines): Modified to print scan lines for
8937 duplicate messages (that is messages with the same message-id).
8938 (mh-thread-forget-message): Modified to maintain
8939 mh-thread-duplicates.
8941 2002-07-22 Satyaki Das <satyaki@theforce.stanford.edu>
8943 * mh-speed.el (mh-speed-parse-flists-output): Use delete-region
8944 instead of kill-region. Otherwise the kill ring gets polluted.
8946 2002-07-16 Satyaki Das <satyaki@theforce.stanford.edu>
8948 * mh-seq.el (mh-thread-update-scan-line-map): New function to
8949 refresh the stale scan lines.
8950 (mh-thread-inc): Update old scan lines when mh-thread-inc is
8951 called. Otherwise notations for deleted and refiled messages get
8952 lost and the folder display gets out of sync with real mh-e state.
8954 * mh-mime.el (mh-mm-display-part): Call Gnus citation highlight
8955 code when text part is displayed. Otherwise buttonized text parts
8956 aren't correctly fontified when they are displayed.
8958 2002-07-15 Mark D. Baushke <mdb@gnu.org>
8960 * mh-utils.el (mm-decode): Use load for the Non-fatal depencency
8961 on the mm-decode library.
8962 * mh-mime.el (mm-decode, mm-uu, mm-view): Use load for the
8963 Non-fatal depencencies on the mm-decode, mm-uu and mm-view
8966 2002-07-15 Satyaki Das <satyaki@theforce.stanford.edu>
8968 * mh-utils.el (mh-require, mh-autoload): Remove these macros.
8969 (mh-decode-mime): Initialized to t iff the mm-decode library is
8970 present in the load-path.
8971 * mh-mime.el (mh-require): Don't use it anymore.
8973 2002-07-15 Mark D Baushke <mdb@gnu.org>
8975 * mh-utils.el (mh-update-scan-format): Rewrite for compatibility
8976 with Xemacs as replace-match appears not to have identical
8977 functionality with FSF emacs.
8978 (mh-scan-msg-format-regexp): Deleted. This regexp is now hardcoded
8979 into the mh-update-scan-format function.
8981 2002-07-12 Satyaki Das <satyaki@theforce.stanford.edu>
8983 * mh-seq.el: Add message threading code.
8985 * mh-utils.el (mh-letter-thread-folder): New interactive function
8986 that allows switching to threaded view from show buffer.
8987 (mh-show-folder-map): Bound "F t" to call mh-letter-thread-folder.
8988 (mh-goto-msg): Replace the function to not assume that messages
8989 are sorted in the folder buffer.
8991 * mh-e.el (mh-folder-threaded-view-p): New buffer local variable
8992 in the folder buffer that records whether threaded view is being
8994 (mh-scan-subject-regexp, mh-scan-format-regexp): Get font lock
8995 working for threaded view as well.
8996 (mh-regenerate-headers): Reset mh-folder-threaded-view-p to nil.
8997 (mh-get-new-mail, mh-process-commands): Do incremental threading
8998 if folder is in threaded view.
8999 (mh-delete-scan-msgs): Update thread tables if folder is in
9001 (mh-folder-map): Add "F t" as key binding for mh-thread-folder
9003 * mh-comp.el (mh-yank-cur-msg): Bug fix. mh-show-buffer is only
9004 has a meaningful value in the folder buffer.
9006 2002-07-11 Peter S Galbraith <psg@debian.org>
9008 * mh-comp.el (mh-yank-cur-msg): Run only if mh-show-buffer
9009 actually exists (otherwise a back-traceable error occurred).
9011 * mh-utils.el (mh-find-progs): Run PATH search only when mh-progs,
9012 mh-lib and mh-lib-progs are not all already set. This allows the
9013 user to set them using a simple setq prior to loading mh-e. This
9014 is useful for implementation of mh-e on win32. Note that many
9015 commands still call mh-find-path which also parses the mh_profile
9016 file (that may still fail on win32), so this is still done often.
9017 But it lets us change the mh_profile file and have mh-e see the
9018 changed file without exiting emacs and starting over so I left
9021 2002-07-04 Satyaki Das <satyaki@theforce.stanford.edu>
9023 * mh-index.el (mh-index-show): Fixed a bug in mh-index-show which
9024 caused it to lose track of point when called from show buffer.
9026 2002-07-04 Mark D. Baushke <mdb@gnu.org>
9028 * Makefile: Add more information and common methods to allow both
9029 GNU make and Berkeley make to properly build everything.
9031 2002-07-04 Satyaki Das <satyaki@theforce.stanford.edu>
9033 * mh-mime.el (mh-push-button): Bug fix for mime display with
9034 mouse. Select show window before executing the mime display
9037 2002-07-01 Mark D. Baushke <mdb@gnu.org>
9039 * Makefile: Use a conditional variable assignment operator rather
9040 than ifndef to let Makefile be used by both GNU make and Berkeley
9041 make (or similar versions of make). This does not help Solaris
9042 /usr/ccs/bin/make, but Solaris make has problems with the ifndef
9045 2002-07-01 Satyaki Das <satyaki@theforce.stanford.edu>
9047 * mh-index.el (mh-index-search): Check for mh-decode-mime before
9048 adding mh-mime-cleanup to kill-buffer-hook.
9050 * mh-mime.el (mm-destroy-parts): Add definition for old emacs.
9052 2002-06-30 Mark D Baushke <mdb@gnu.org>
9054 * mh-utils.el (mh-update-scan-format): Add documentation string.
9055 (mh-scan-msg-format-regexp): Update the regexp to find %(msg).
9056 (mh-set-cmd-note): When mh-scan-format-file is not t, dynamic
9057 update of mh-cmd-note is wrong. Do not assume that
9058 mh-scan-format-nmh and mh-scan-format-mh can be kept in lock-step
9059 with mh-cmd-note via mh-set-cmd-note. The mh-scan-format function
9060 is now where the updated mh-cmd-note value is put into the scan
9063 * mh-e.el (mh-generate-new-cmd-note): Add documentation string.
9064 (mh-scan-format): Use mh-update-scan-format to get updated copies
9065 of mh-scan-format-nmh and mh-scan-format-mh to avoid format skew.
9066 (mh-get-new-mail): Do not try to adapt mh-cmd-note unless
9067 mh-scan-format-file is equal to t.
9068 (mh-scan-format-nmh): No longer buffer local.
9069 (mh-scan-format-mh): No longer buffer local.
9071 2002-06-30 Satyaki Das <satyaki@theforce.stanford.edu>
9073 * mh-index.el (mh-index-max-msg-index): New variable to keep track
9074 of max message index among search results. If mh-adaptive-cmd-note
9075 is non-nil this is used to compute the width of the index field.
9076 (mh-index-search): Keep track of max index seen while parsing the
9077 search results and set it if mh-adaptive-cmd-note is non-nil.
9078 (mh-index-find-max-width): New function to find the required width
9079 of the message index field.
9080 (mh-defun-index): Binding buffer local variables is bad, so don't
9082 (mh-index-show): New argument display-headers-p decides whether
9083 the message is displayed in raw form or not.
9084 (mh-index-header-display): New interactive function bound to ","
9085 which shows the message in raw form.
9086 (mh-index-keymap): Add appropriate bindings for backtab and ",".
9087 (read-from-string): Add ignore-errors around it so that the code
9088 doesn't die when it gets unexpected input.
9090 2002-06-29 Satyaki Das <satyaki@theforce.stanford.edu>
9092 * mh-index.el (mh-count-windows): This function works around the
9093 lack of the window-list builtin function in emacs20.
9095 2002-06-29 Mark D Baushke <mdb@gnu.org>
9097 * mh-utils.el (mh-message-number-width): New function to scan
9098 the last message of a folder and return its width.
9099 (mh-adaptive-cmd-note): New variable, if Non-nil indicates that
9100 mh-set-cmd-note should be called with the message width for the
9102 (mh-cmd-note): Update documentation.
9103 (mh-update-scan-format): Helper function for updating the
9104 mh-scan-format-nmh and mh-scan-format-mh variables.
9105 (mh-scan-msg-overflow-regexp): New variable to help find problem
9106 messages after an inc.
9107 (mh-scan-msg-format-regexp): New variable to find the old message
9108 width in one of the mh-scan-format-nmh or mh-scan-format-mh
9110 (mh-set-default-cmd-note): Replaced by mh-set-cmd-note.
9111 (mh-set-cmd-note): New function to replace update mh-cmd-note
9114 * mh-e.el (mh-regenerate-headers): If mh-adaptive-cmd-note is
9115 non-nil, use mh-set-cmd-note on empty folder buffers.
9116 (mh-make-folder): Ditto.
9117 (mh-generate-new-cmd-note): New function to adapt the mh-cmd-note
9118 to fit when mh-get-new-mail gets message number truncation.
9119 (mh-get-new-mail): Maybe use mh-generate-new-cmd-note if
9120 mh-adaptive-cmd-note is Non-nil.
9122 2002-06-29 Satyaki Das <satyaki@theforce.stanford.edu>
9124 * mh-speed.el (mh-speed-view): The display gets confused if the
9125 cursor is in the show buffer when mh-speed-view is called. This is
9128 2002-06-27 Satyaki Das <satyaki@theforce.stanford.edu>
9130 * mh-e.el (mh-next-undeleted-msg): Get rid of optional arg
9131 reverse-p. If there are no more undeleted messages the the point
9132 remains at its original position and a message is produced (closes
9134 (mh-previous-undeleted-msg): Change similar to
9135 mh-next-undeleted-msg.
9136 (mh-next-msg, mh-refile-msg, mh-delete-msg): Backout previous
9138 (mh-folder-map): Bind "S-tab" and "K S-tab" to mh-prev-button.
9140 * mh-utils.el (mh-show-mode-map): Bind "S-tab" and "K S-tab" to
9141 mh-letter-prev-button.
9143 * mh-mime.el (gnus-newsgroup-name): Initialize it to nil, so that
9144 mm-uu-dissect doesn't cause error.
9146 2002-06-27 Mark D Baushke <mdb@gnu.org>
9148 * mh-utils.el (mh-cmd-note): Make buffer-local. Changes to this
9149 variable should be made via the new mh-set-default-cmd-note
9151 (mh-set-default-cmd-note): New function to setq-default the
9152 mh-cmd-note, mh-scan-format-mh and mh-scan-format-nmh values to
9155 * mh-e.el (mh-scan-format-mh): Make buffer-local.
9156 (mh-scan-format-nmh): Ditto.
9157 (mh-scan-good-msg-regexp): Use a more general regular expression
9158 so that the width of message numbers, mh-cmd-note, may vary.
9159 (mh-scan-deleted-msg-regexp): Ditto.
9160 (mh-scan-refiled-msg-regexp): Ditto.
9161 (mh-scan-cur-msg-number-regexp): Ditto.
9162 (mh-scan-cur-msg-regexp): Ditto.
9163 (mh-scan-subject-regexp): Ditto.
9165 2002-06-26 Satyaki Das <satyaki@theforce.stanford.edu>
9167 * mh-speed.el: Speedbar support code.
9169 * Makefile: Add mh-speed.el to MH-E-SRC.
9171 * mh-utils.el (mh-prompt-for-folder): Add speedbar hook if
9172 speedbar is being used.
9174 * mh-funcs.el (mh-kill-folder): Add speedbar hook if speedbar is
9177 * mh-e.el (speedbar-autoloads): Autoload speedbar initialization
9178 functions so that speedbar can find them.
9180 2002-06-25 Satyaki Das <satyaki@theforce.stanford.edu>
9182 * mh-index.el (mh-grep-execute-search, mh-grep-next-result): Allow
9183 grep to be used to search mail.
9184 (mh-index-font-lock-keywords): Modified to avoid bug when using
9187 * mh-e.el (mh-delete-msg, mh-refile-msg): Modify so that if no
9188 undeleted (or unrefiled) message exists in the current movement
9189 direction then try to find an undeleted (or unrefiled) message in
9190 the opposite direction instead.
9191 (mh-next-undeleted-msg): Added a new optional argument. If non-nil
9192 search for undeleted message backwards if none exists in the
9194 (mh-previous-undeleted-msg): Added an optional argument. If
9195 non-nil search for undeleted message in the forward direction if
9196 none exists in the backward direction.
9197 (mh-next-msg): Optional argument to change direction if undeleted
9198 messages are not found in the current direction.
9200 * mh-index.el (mh-cmd-note): Use mh-cmd-note instead of hardcoding
9201 the index field size to 4.
9203 * mh-utils.el (mh-show-addr, mh-show-xface): New functions added
9204 to do xface display and goto-addr interface to allow reuse by the
9206 (mh-show-mode): Use mh-show-addr and mh-show-xface. Only add
9207 mh-mime-cleanup to kill-buffer-hook if mime decoding is enabled.
9208 (mh-modify): Use mh-letter-mode instead of mh-show-mode when
9211 * mh-mime.el (mh-mm-inline-message): Arrange for xface and
9212 highlighting to work in forwarded messages.
9214 2002-06-23 Peter S Galbraith <psg@debian.org>
9216 * mh-comp.el (mh-yank-from-start-of-msg): Add 'attribution' option
9217 to add an attribution line in mh-yank-cur-msg.
9218 (mh-extract-from-attribution-verb): Verb to use for attribution
9219 when a message is yanked by mh-yank-cur-msg. Provides a method
9220 for setting a different language.
9221 (mh-yank-cur-msg): Add support for 'attribution' option.
9222 (mh-extract-from-attribution): Function to get the attribution
9223 line, or the sender from the From: line in the current show buffer.
9225 2002-06-20 Satyaki Das <satyaki@theforce.stanford.edu>
9227 * mh-index.el (mh-index-show): mh-display-msg was not being called
9228 in the show buffer. This causes weird results on some mime messages.
9230 * mh-mime.el (gnus-newsgroup-charset): Defvar to avoid error in
9231 pgp messages if gnus hasn't been used yet.
9233 * mh-comp.el (mh-letter-mode-map): Typo fix.
9235 2002-06-19 Satyaki Das <satyaki@theforce.stanford.edu>
9237 * mh-mime.el (mh-mml-secure-message-encrypt-pgpmime): Typo fix.
9238 (compiler-warnings): Add autoloads to remove compiler warnings.
9240 * mh-index.el (autoload-fixes): Fix autoload forms.
9242 2002-06-18 Satyaki Das <satyaki@theforce.stanford.edu>
9244 * mh-comp.el (mh-letter-mode-map): Change binding of "\C-c\C-ma"
9245 to mh-compose-insertion. Remove duplicate binding for "C-c\C-mf".
9246 (compiler-warnings): Add defvar to remove compiler-warning.
9248 2002-06-18 Peter S Galbraith <psg@debian.org>
9250 * mh-comp.el (mh-letter-menu): Conditionalize GPG function on
9251 mh-gnus-pgp-support-p.
9253 * mh-mime.el (mh-mml-forward-message): s/subseq/substring/.
9254 (mh-compose-forward): cut&paste typo: s/messages/message/.
9255 (mml-minibuffer-read-file): autoload added.
9256 (mml-minibuffer-read-description): autoload added.
9257 (mml-insert-empty-tag): autoload added.
9258 (mh-mml-secure-message-sign-pgpmime): Check mh-gnus-pgp-support-p.
9259 (mh-mml-secure-message-encrypt-pgpmime): Check mh-gnus-pgp-support-p.
9261 2002-06-17 Peter S Galbraith <psg@debian.org>
9263 * mh-utils.el (mh-show-use-xface): Check for availability of
9264 `uncompface' executable on system.
9266 * mh-mime.el (mh-compose-forward): New front end for both
9267 mh-mml-forward-message and mh-mhn-compose-forw.
9268 (mh-compose-insertion): New front end for both mh-mml-attach-file
9269 and mh-mhn-compose-insertion.
9270 (mh-mml-to-mime): New function. Compose mime message from mml
9272 (mh-mml-forward-message): New function. Forward a message as
9274 (mh-mml-attach-file): New function. Attach a file to the outgoing
9276 (mh-mml-compose-insert-p): New variable. Buffer-local variable to
9277 know whether MIME insertion was done. Triggers an automatic call
9278 to `mh-mml-to-mime' in `mh-send-letter'.
9279 (mh-mml-secure-message-sign-pgpmime): New function.
9280 Front end to mml-secure-message-sign-pgpmime.
9281 (mh-mml-secure-message-encrypt-pgpmime): New function.
9282 Front end to mml-secure-message-encrypt-pgpmime.
9284 * mh-comp.el (mh-send-letter): automatic call to `mh-mml-to-mime'
9285 if mh-mml-compose-insert-p is set.
9286 (mh-letter-mode-map): Add keys for new mh-mime functions above.
9287 * mh-comp.el: Added autoloads for new mh-mime functions above.
9289 2002-06-17 Peter S Galbraith <psg@debian.org>
9291 * mh-utils.el (mh-show-use-xface): new defcustom to determine
9292 whether to call external package x-face to display the x-face.
9293 (mh-invisible-headers-show-xface): variable now defaults to value
9294 of mh-show-use-xface.
9295 (mh-show-mode): When mh-show-use-xface is t, invoke
9296 external package x-face to display the x-face.
9298 2002-06-15 Satyaki Das <satyaki@theforce.stanford.edu>
9300 * mh-e.el (mh-prev-button): New interactive function which moves
9301 point to the previous mime button in the show buffer.
9302 (mh-folder-mode-map): Bind M-TAB and K M-TAB to mh-prev-button.
9304 * mh-utils.el (mh-show-mode-map): Bind M-TAB and K M-TAB to call
9305 mh-letter-prev-button (which is analogous to mh-prev-button).
9306 (mh-gnus-pgp-support-p): New global variable to replace the
9307 variable mh-recent-gnus-p. The name better describes what it is
9310 * mh-mime.el (mh-mime-display-part, mh-mime-display-single): Use
9311 mh-gnus-pgp-support-p instead of mh-recent-gnus-p.
9313 2002-06-12 Satyaki Das <satyaki@theforce.stanford.edu>
9315 * mh-mime.el (mh-display-buttons-for-inline-parts): New
9316 customizable variable. When non-nil inline parts have are
9317 displayed with a button (that is initially expanded).
9318 (mh-maybe-insert-newline): The function has been removed.
9319 (mh-mime-display-single): Add code to display buttons for inline
9320 parts. Reduce the insertion of extra newlines between inline parts
9321 and also for pgp signature parts.
9322 (mh-mm-display-part): The function has been rewritten and cleaned
9323 up. There was a bug which could change the show buffer if the user
9324 pressed C-g while a mime part was being displayed has been fixed.
9325 (mh-press-button, mh-push-button): Use unwind-protect to make sure
9326 that set-buffer-modified-p is always called after mime display.
9327 (mh-mime-inline-part): The behavior of the function has been
9328 changed so that it toggles the display of the raw bytes.
9329 (mh-mime-display-security): Remove the display of too many
9331 (documentation): Remove most check-doc warnings.
9333 * mh-comp.el (mh-filter-out-non-text): Updated since whitespace
9334 added around mime buttons have changed.
9336 2002-06-10 Satyaki Das <satyaki@theforce.stanford.edu>
9338 * mh-index.el (mh-index-last-search, mh-index-search): The default
9339 prompt in mh-index-search has been removed since currently there
9340 is no good way of reading "+" with mh-prompt-for-folder.
9341 (mh-index-folder-mode, mh-index-show-mode): New major modes
9342 derived from mh-folder-mode and mh-show-mode respectively. They
9343 use a restricted keymap compared to the parent modes.
9344 (mh-index-folder-face): New customizable face to display folder
9345 names in the index buffer.
9346 (documentation): Change two spaces after period back to one.
9348 2002-06-08 Satyaki Das <satyaki@theforce.stanford.edu>
9350 * mh-e.el (mh-folder-toggle-mime-part): New interactive function
9351 to control mime display from folder buffer.
9352 (mh-folder-inline-mime-part): New interactive function to inline
9353 raw mime part from folder buffer.
9354 (mh-folder-save-mime-part): New interactive function to save mime
9355 part from folder buffer.
9356 (mh-folder-mode-map): Add keybindings for "K v", "K o", "K i" and
9357 "K \t" to mh-folder-mode-map.
9358 (mh-goto-next-button): Modified to allow searching for next button
9359 that satisfies some condition.
9360 (mh-folder-mime-action): Support function for
9361 mh-folder-save-mime-part, mh-folder-inline-mime-part and
9362 mh-folder-toggle-mime-part.
9364 * mh-utils.el (mh-show-mode-map): Modify keymap to add appropriate
9365 bindings for "K v", "K o", "K i" and "K \t".
9367 * mh-index.el (documentation): Fix docs according to checkdoc
9370 2002-06-07 Satyaki Das <satyaki@theforce.stanford.edu>
9372 * mh-seq.el, mh-funcs.el (Compiler): Remove (require 'view) and
9373 instead add defvar for view-exit-action.
9375 2002-06-06 Satyaki Das <satyaki@theforce.stanford.edu>
9377 * mh-comp.el (mh-insert-x-face): If transient-mark-mode is enabled
9378 the call to mark returns error. So avoid using mark.
9380 * mh-index.el: Support for new interactive function
9383 * mh-e.el (mh-next-button, mh-goto-next-button): Refactor
9384 mh-next-button so that the code may be reused by mh-index.el.
9385 (mh-folder-map): Add key "F i" to call mh-index-search.
9387 * mh-utils.el (mh-recent-gnus-p): Fix documentation.
9388 (mh-msg-folder, mh-display-msg): The new function mh-msg-folder
9389 maps a MH folder name to the buffer displaying it. In normal
9390 operation the two names are identical but they are different in a
9391 folder buffer generated by index search. Minor modification to
9392 mh-display-msg to use mh-msg-folder to enable mh-index-search to
9394 (mh-show-mode-map): Add key "F i" to call mh-index-search.
9396 * Makefile: Add mh-index.el
9398 2002-06-05 Peter S Galbraith <psg@debian.org>
9400 * mh-e.el (mh-folder-message-menu): Add an entry for mh-modify.
9402 2002-05-31 Satyaki Das <satyaki@theforce.stanford.edu>
9404 * mh-utils.el (mh-decode-quoted-printable): Only decode if the
9405 whole message is encoded. So restrict the search for the
9406 content-transfer-encoding header to the headers of the message
9409 * mh-mime.el (mh-mime-display-alternative): Make sure that point
9410 is moved after mm-display-part is called.
9412 2002-05-29 Satyaki Das <satyaki@theforce.stanford.edu>
9414 * mh-mime.el (mh-mime-display-single): Fix the logic that
9415 determines when an attachment is buttonized. For inline parts that
9416 can't be displayed a button is now created.
9418 2002-05-29 Satyaki Das <satyaki@theforce.stanford.edu>
9420 * mh-e.el (mh-regenerate-headers): Fix an error in which the
9421 mh-mode-line-annotation was not being set properly.
9423 * mh-mime.el, mh-utils.el (compilation): Macros mh-require and
9424 mh-autoload are used to make sure that emacs20 doesn't croak when
9425 it tries to load non-existent mm-* files.
9426 (mh-decode-mime): Make it default to nil for Emacs major version
9429 2002-05-28 Satyaki Das <satyaki@theforce.stanford.edu>
9431 * mh-e.el (mh-regenerate-headers): Generalize the function to
9432 handle multiple ranges.
9434 2002-05-25 Satyaki Das <satyaki@theforce.stanford.edu>
9436 * compilation: Reduce use of eval-when-compile so that load-path
9437 is not changed if lisp files are loaded without compilation. Small
9438 changes were made to Makefile, mh-comp.el mh-e.el, mh-funcs.el,
9439 mh-seq.el, mh-utils.el
9441 * mh-e.el (mh-next-button, mh-folder-mode-map): New interactive
9442 function to advance point to next MIME button. It is bound to TAB.
9444 * mh-utils.el (mh-letter-next-button, mh-show-mode-map): New
9445 interactive function mh-letter-next-button has been added to
9446 advance point to the next MIME button. It is bound to TAB.
9448 * mh-mime.el (comments): Added some comments.
9450 2002-05-24 Satyaki Das <satyaki@theforce.stanford.edu>
9452 * mh-mime.el (compilation): Replace (eval-when-compile ...) by
9453 (eval-when (compile) ...) to remove a bug when mh-e is loaded
9454 without compilation.
9456 2002-05-23 Satyaki Das <satyaki@theforce.stanford.edu>
9458 * mh-comp.el (compilation): Some code was rearranged to avoid
9461 * mh-e.el (compilation): Code rearrangement and extra autoloads to
9462 remove compiler warnings
9463 (mh-quit): Add call to mh-destroy-postponed-handles to remove
9464 handles that are associated with external viewers. Also fixed a
9465 bug that I accidentally introduced by adding an extra line when
9466 cut and pasting my changes.
9468 * mh-func.el (compilation): Code rearrangement to remove compiler
9471 * mh-mime.el (compilation): Code rearrangement to remove compiler
9473 (mh-defun-compat): New macro to define to useful functions that
9474 aren't present present in old Gnus.
9475 (mh-destroy-postponed-handles): New function to cleanup handles
9476 that are associated with external viewers.
9477 (mh-handle-set-external-undisplayer): New function to replace
9478 mm-handle-set-external-undisplayer. It associates handles for
9479 external viewers with the folder buffer. These are released when
9480 the user quits the folder.
9481 (mh-mime-display, mh-press-button, mh-push-button): Hook in
9482 mh-handle-set-external-undisplayer.
9483 (mh-maybe-insert-newline): New function to avoid inserting too
9484 many newlines between mime parts.
9485 (mh-mm-display-part): Workaround for Gnus bug which causes new
9486 lines to be inserted when images are shown inline.
9487 (mh-mime-display-security): Cut down on newlines inserted.
9489 * mh-pick.el (compilation): Code rearrangement to remove compiler
9492 * mh-seq.el (compilation): Code rearrangement to remove compiler
9494 (comments): Remove @SD from comments.
9496 * mh-utils.el (compilation): Slight code rearrangement.
9497 (mh-defun-show-buffer): Fix documentation so that the first line
9498 is not too long as was the case earlier. Use
9499 mh-previous-window-config to remember where the cursor should
9500 return functions like mh-reply.
9501 (mh-display-msg): Initialize handles data-structure for the folder
9502 buffer so that postponed handles can be added to it.
9503 (mh-add-msgs-to-seq): Always keep messages in the sequences
9504 sorted. This removes some unexpected behavior when working with
9505 sequences that go out of sync with the corresponding MH sequences.
9506 (mh-canonicalize-sequence): New function to sort and remove
9507 duplicates from mh-e sequence.
9509 2002-05-21 Satyaki Das <satyaki@theforce.stanford.edu>
9511 * mh-utils.el (require): Load mm-decode.el here so that
9512 mm-inline-media-tests is properly initialized.
9514 * mh-comp.el (mh-yank-cur-msg): Don't try to remove the displayed
9515 mime parts when yanking the message. This also fixes the problem
9516 of regions not being respected during the yank.
9518 2002-05-20 Satyaki Das <satyaki@theforce.stanford.edu>
9520 * mh-utils.el (compiler-warnings): Some code was rearranged to
9521 remove all compiler warnings.
9522 (mh-decode-mime): New defcustom to control whether
9523 mime attachments are shown using Gnus.
9524 (mh-globals-hash): New global variable which maps a given buffer
9525 to the corresponding mime data structures.
9526 (mh-recent-gnus-p): New global variable which checks if Gnus is
9527 recent enough so that PGP/GPG encrypted messages can be handled.
9528 (mh-mm-inline-media-tests): Tests to determine whether a mime part
9529 can be shown inline.
9530 (mh-gnus-article-highlight-citation): Shadow the Gnus function,
9531 gnus-article-add-button before gnus-article-highlight-citation is
9532 called. This prevents the insertion of useless buttons in the
9534 (mh-show-mode): Don't set font-lock-support-mode to nil. Modify
9535 kill-buffer-hook to call mh-mime-cleanup.
9536 (mh-modify): Only the edit buffer is shown.
9537 (mh-display-msg): Add call to mh-mime-display, mh-display-smileys,
9538 mh-display-emphasis when mh-decode-mime is non-nil.
9540 * mh-mime.el (mh-buffer-data): New structure to keep track of
9541 per-buffer mime information.
9542 (compiler-warnings): Some code was rearranged to get rid of all
9544 (mh-graphical-smileys-p): New defcustom which controls whether
9545 graphical smileys are shown.
9546 (mh-graphical-emphasis-p): New defcustom for graphical emphasis.
9547 (mh-max-inline-image-width, mh-max-inline-image-height): New
9548 defcustoms for inlining image.
9549 (gnus-local-map-property, mm-merge-handles): Copy utility
9550 functions for use with version of Gnus that ships with Emacs21.1.
9551 (mh-mime-cleanup): New function to free mime data-structures.
9552 (mh-add-missing-mime-version-header): New function to add missing
9553 Mime-Version header if a Content-Type header exists.
9554 (mh-display-smileys): New function to show graphical smileys.
9555 (mh-display-emphasis): New function to show graphical emphasis.
9556 (new-globals): New variables mh-mime-button-* and
9557 mh-mime-security-* were added to control mime buttons.
9558 (mh-mime-display): New function to display mime messages. The
9559 functions mh-mime-display-part, mh-mime-display-alternative,
9560 mh-mime-display-mixed, mh-mime-part-index, mh-small-image-p,
9561 mh-mime-display-single, mh-insert-mime-button, mh-mm-display-part,
9562 mh-press-button, mh-push-button, mh-mime-save-part,
9563 mh-mime-inline-part, mh-widget-press-button, mh-mm-inline-message,
9564 mh-mime-display-security, mh-mime-security-show-details,
9565 mh-mime-security-press-button and mh-insert-mime-security-button
9566 were added to support mh-mime-display.
9568 * mh-e.el (mh-header-display): Bind mh-decode-mime to nil when
9569 mh-show-msg is called, so that mime isn't decoded when headers are
9571 (mh-quit): The show buffer is killed instead of invalidating and
9574 * mh-comp.el (mh-yank-cur-msg): Filter out the mime buttons from
9576 (mh-filter-out-non-text): New function to filter out attachments
9577 from message being yanked.
9579 2002-05-20 Bill Wohler <Bill.Wohler@openwave.com>
9581 * mh-utils.el (mh-invisible-headers-show-xface): First sentence of
9582 docstring was not entirely on first line so was truncated in
9583 customize and help buffers. Reworded so first sentence could fit
9584 within 80 columns per checkdoc recommendation.
9585 (mh-defun-show-buffer): Reworded per checkdoc recommendations.
9586 Removed @SD while I was in there.
9588 2002-05-18 Satyaki Das <satyaki@theforce.stanford.edu>
9590 * mh-seq.el (mh-narrow-to-seq): This function now removes the
9591 current message notation in the folder. Otherwise, two current
9592 message notations may be present after mh-widen is called. Also
9593 mh-copy-seq-to-eob is called instead of mh-copy-seq-to-point since
9594 the latter has a bug.
9595 (mh-copy-seq-to-point): This function has a tricky problem. It
9596 calls mh-map-to-seq-msgs which uses mh-goto-msg. mh-goto-msg
9597 assumes that the folder is sorted (since it uses binary
9598 search). The assumption isn't true, so it may not copy all the
9599 messages. Since this function is not used any more it has been
9601 (mh-copy-seq-to-eob): This function is a specialized (and
9602 hopefully correct) replacement for mh-copy-seq-to-point.
9604 2002-05-17 Satyaki Das <satyaki@theforce.stanford.edu>
9606 * mh-utils.el (mh-gnus-article-highlight-citation): Workaround for
9607 problem caused by low value of recursive-load-depth-limit in
9608 Emacs21.1 and CVS version of Gnus.
9609 (mh-show-mode-map): New keymap variable to facilitate use of
9610 summary commands from the show buffer.
9611 (mh-show-folder-buffer): New local variable which keeps track of
9612 the folder-buffer corresponding to the message being shown.
9613 (mh-defun-show-buffer): New macro to convert interactive functions
9614 callable in the summary buffer to interactive functions callable
9616 (mh-show-mode): Make buffer read-only and use mh-show-mode-map as
9617 keymap (closes SF #527946).
9618 (mh-modify): New interactive function to edit a message in-place.
9620 * mh-e.el (mh-goto-cur-msg): Add an optional argument,
9621 minimal-changes-p. If non-nil, the function will just change
9622 the point to current message and do not change folder display.
9623 (mh-folder-mode-map): Make "M" call mh-modify.
9625 2002-05-07 Peter S Galbraith <psg@debian.org>
9627 * mh-utils.el (mh-invisible-headers-show-xface): New defcustom
9628 variable. If non-nil, the X-Face header line will be excluded from
9629 the variable `mh-invisible-headers'. Set this when using a
9630 package such as x-face-el to display X-Face icons in mh-show-mode.
9631 This variable's setting will eventually be set automatically when
9632 mh-e does its own X-Face decoding (or this variable will be replaced
9633 by one telling mh-e to decode the X-Face). We may not ship the
9634 next release with this variable.
9636 2002-05-07 Peter S Galbraith <psg@debian.org>
9638 * mh-comp.el (mh-x-face-file): New defcustom variable. File name
9639 containing the encoded X-Face string to insert in outgoing mail.
9640 (mh-insert-x-face): New function. Appends an X-Face field to the
9641 header, but only if it doesn't already exist and if 'mh-x-face-file'
9642 is non-nil and points to an existing file.
9643 (mh-send-letter): Invoke mh-insert-x-face.
9645 2002-04-29 Mike Kupfer <m.kupfer@acm.org>
9647 * mh-e.el (mh-delete-msg, mh-refile-msg, mh-undo): Check
9648 whether XEmacs region is actually active (needed at least for 21.1).
9649 [Patch committed by psg]
9651 2002-04-29 Mike Kupfer <m.kupfer@acm.org>
9653 * mh-utils.el (mh-prompt-for-folder): Remove "default" argument
9654 from completing-read as XEmacs-21.1 doesn't have it (21.4 does
9655 however) and using the argument adds no functionality.
9656 [Patch committed by psg]
9658 2002-04-11 Peter S Galbraith <psg@debian.org>
9660 * mh-e.el (mh-delete-msg, mh-refile-msg, mh-undo): Add support for
9661 XEmacs to act on selected region when active.
9663 2002-04-10 Peter S Galbraith <psg@debian.org>
9665 * mh-e.el (mh-delete-msg, mh-refile-msg, mh-undo): XEmacs fix; Add
9666 check to see if mark-active is bound, because Mandrake Linux include
9667 XEmacs initialization code that binds transient-mark-mode. This
9668 fix gets around a problem in Mandrake only. It wasn't a problem
9669 on XEmacs generally. Fixes SF #541915.
9671 2002-04-08 Bill Wohler <wohler@newt.com>
9673 * Released mh-e version 6.1.
9675 * mh-e.el (mh-folder-unseen-seq-name): Use "mhparam -component
9676 Unseen-Sequence" command and "Unseen-Sequence: \\(.*\\)$" regexp
9677 to increase robustness.
9678 (mh-folder-unseen-seq-list): Use `expand-file-name' as
9679 `mh-expand-file-name' isn't needed and the former saves function
9681 (Version, mh-version): Updated for release 6.1.
9683 2002-04-08 Peter S Galbraith <psg@debian.org>
9685 * mh-e.el (mh-folder-unseen-seq-list): Specify mh-progs path in
9686 call to mark command. Fixes a bug in which unseen messages
9687 weren't highlighted if "mark" wasn't in the path.
9689 2002-04-07 Bill Wohler <wohler@newt.com>
9691 * MH-E-NEWS: Updated for release 6.1.
9693 * README: Updated for release 6.1. Updated verbiage about reading
9696 * mh-comp.el, mh-e.el, mh-funcs.el, mh-mime.el, mh-seq.el,
9697 mh-utils.el, mh-xemacs-compat.el: Updated copyright in files
9700 * mh-xemacs-compat.el: Put Author field back in, but set to FSF.
9702 * mh-comp.el, mh-funcs.el, mh-mime.el, mh-seq.el,
9703 mh-utils.el: Fixed all checkdoc errors, except for no
9704 documentation, and documentation in comments. Also removed the-
9705 prefix from certain local variables.
9707 * mh-e.el: Fixed all checkdoc errors, except for no documentation,
9708 and documentation in comments. Also removed the- prefix from
9709 certain local variables.
9710 (mh-folder-unseen-seq-name): Refactored to make default sequence
9711 name more explicit and to handle undefined Unseen-Sequence MH
9712 profile entry better.
9714 2002-04-02 Peter S Galbraith <psg@debian.org>
9716 * mh-e.el: 'defvar mh-folder-unseen-seq-name' called a function to
9717 set it's value, and this happens also on byte-compilation (where
9718 it can fail if the user's MH environment is not setup correctly).
9719 I now set the value of mh-folder-unseen-seq-name at runtime when I
9720 first need it. This should fix Debian bugs
9721 http://bugs.debian.org/140232 and http://bugs.debian.org/140817
9723 2002-03-25 Peter S Galbraith <psg@debian.org>
9725 * mh-utils.el: remove "(require 'mh-e)" since mh-utils.el should
9726 be at the bottom of the dependency tree.
9727 * mh-e.el (mh-folder-unseen-seq-name): Make sure mh-progs is set
9728 and use it as path to mhparam command in call-process.
9730 2002-01-23 Peter S Galbraith <psg@debian.org>
9732 * mh-e.el (mh-folder-font-lock-keywords): Add call to
9733 mh-folder-font-lock-unseen to fontify unseen messages in bold.
9734 (mh-folder-unseen-seq-name): Provide name of unseen sequence from
9735 mhparam. Used as default for variable of same name.
9736 (mh-folder-unseen-seq-list): Returns a list of unseen messages
9737 numbers for current folder.
9738 (mh-folder-unseen-seq-cache): Cache variable to hold list of
9739 unseen message numbers while font-lock iterates. This variable is
9741 (mh-folder-font-lock-unseen): Returns unseen message lines to
9742 font-lock one by one.
9744 2002-01-15 Peter S Galbraith <psg@debian.org>
9746 * mh-comp.el (mh-insert-prefix-string): Wrap a
9747 "(let ((zmacs-regions nil))" around (mark) so it works in XEmacs.
9748 Bug reported and fix suggested by Will Partain <partain@dcs.gla.ac.uk>
9749 Indeed, this is how it appears in XEmacs-21's mh-comp.el.
9751 2001-12-16 Jeffrey C Honig <jch@honig.net>
9753 * mh-comp.el (mh-forward): Move the assignment to `fwd-msg-file'
9754 to before the assignment to `draft' as the later changes buffers
9755 and invalidates `mh-seq-list' (which is used in a function called
9756 by (mh-seq-to-msgs)). Resolves SF #489448.
9758 * mh-utils.el: Add defcustoms for `mh-temp-folders-buffer' and
9759 `mh-temp-sequences-buffer'.
9761 * mh-e.el (mh-quit): If they exist, kill 'mh-temp-buffer,
9762 'mh-temp-folders-buffer and 'mh-temp-sequences-buffer when
9765 * mh-funcs.el (mh-list-folders): Use `mh-temp-folders-buffer'
9766 (a defcustom initialized to "*Folders*") for folder listing. Put
9767 into view mode and set it up to kill the buffer when exiting view
9770 * mh-seq.el (mh-list-sequences): Use `mh-temp-sequences-buffer'
9771 (a defcustom initialized to "*Sequences") for sequences listing.
9772 Put into view mode and set it up to kill the buffer when exiting
9775 2001-12-16 Bill Wohler <wohler@newt.com>
9777 * Released mh-e version 6.0.
9779 * MH-E-NEWS: Be a little more specific about incompatible changes.
9780 Added info about outdated manual.
9781 Removed variables in mh-scan regexp table that did not exist in
9783 Added helpful documentation about finding relevant variables
9784 containing regexps to mh-scan-format-file's description.
9786 * mh-e.el (mh-scan-format-file): Added information about getting a
9787 list of regexp variables that you'll need to change if you
9788 customize your scan's output.
9789 (mh-folder-mode): Added documentation about `mh-scan-format-file'
9790 for those users who modify their scan formats.
9792 * README: New file. Describes packages and provides simple
9793 installation instructions.
9795 * Makefile (clean, dist, install-emacs): Replaced $(RM) with rm
9796 -rf (closes SF #488661).
9798 2001-12-14 Bill Wohler <wohler@newt.com>
9800 * Released mh-e version 5.0.93.
9802 * Makefile (MH-E-SRC): Added mh-xemacs-compat.el.
9803 (MH-E-IMG): Added .pbm images for all. Removed mail_ prefix from
9805 (MH-E-IMG2): New variable to hold images in mail sub-directory.
9806 (dist): Updated target to make mail sub-directory and copy
9807 MH-E-IMG2 images there.
9809 * mh-xemacs-compat.el: Modified docs per GNU coding conventions.
9811 * mh-e.el: Reorganized variables having to do with the scan line.
9812 Moved some random variables that were interspersed out of the
9813 middle. Moved `mh-scan-format-file' first and let the variables
9816 As the number of variables increases, it is becoming important to
9817 organize the mh-e namespace. Several variables having to do with
9818 the format of scan lines were renamed, as follows:
9819 (mh-good-msg-regexp): Renamed to mh-scan-good-msg-regexp.
9820 (mh-deleted-msg-regexp): Renamed to mh-scan-deleted-msg-regexp.
9821 (mh-refiled-msg-regexp): Renamed to mh-scan-refiled-msg-regexp.
9822 (mh-valid-scan-line): Renamed to mh-scan-valid-regexp.
9823 (mh-cur-msg-number-regexp): Renamed to mh-scan-cur-msg-number-regexp.
9824 (mh-cur-msg-line-regexp): Renamed to mh-scan-cur-msg-regexp.
9825 (mh-scan-rcpt-addr-regexp): Renamed to mh-scan-rcpt-regexp.
9826 (mh-scan.font-lock-regexp): Renamed to mh-scan-format-regexp.
9827 (mh-folder-scan-font-lock-face): Renamed to
9828 mh-folder-scan-format-face.
9829 (mh-folder-cur-msg-line-face): Renamed to mh-folder-cur-msg-face).
9831 2001-12-13 Bill Wohler <wohler@newt.com>
9833 * mh-utils.el (mh-msg-number-regexp): Renamed to
9834 mh-scan-msg-number-regexp.
9835 (mh-msg-search-regexp): Renamed to mh-scan-msg-search-regexp.
9837 * Corrected typos, quoted variables in doc strings, and made minor
9838 wording changes in docs.
9840 2001-12-13 Peter S Galbraith <psg@debian.org>
9842 * mh-xemacs-compat.el: defalias 'match-string-no-properties to
9843 'match-string for XEmacs. I've seen a better function for this
9844 that actually removes text properties, but this will do for now.
9846 * mh-utils.el (mh-decode-quoted-printable): deactivate-mark not
9849 * mh-xemacs-compat.el: GNU Emacs Functions needed by XEmacs.
9851 * mh-e.el: (require 'mh-xemacs-compat) when running XEmacs.
9853 2001-12-12 Peter S Galbraith <psg@debian.org>
9855 * mh-comp.el (mh-send-letter): function local-variable-p needs two
9856 arguments in XEmacs.
9857 (mh-send-letter): sendmail-coding-system not bound in XEmacs.
9858 (mh-send-letter): default-buffer-file-coding-system not bound in
9861 * mh-e.el (mh-delete-msg, mh-refile-msg, mh-undo):
9862 transient-mark-mode not bound in XEmacs. The feature of
9863 operations made on all messages in the selected range when
9864 transient-mark-mode is on doesn't work in XEmacs.
9866 * mh-e.el, mh-utils: Conditionalize calls to
9867 'add-to-list 'facemenu-unlisted-faces for XEmacs.
9869 2001-12-11 Jeffrey C Honig <jch@honig.net>
9871 * mh-e.el (mh-scan-format): Add `mh-scan-format-file' variable to
9872 specify the scan format string or file to use. Define formats for
9873 MH and nmh that are compatible with the standard format, but
9874 provide hints for font-lock. Define (mh-scan-format) for use by
9875 (mh-regenerate-headers) and (mh-get-new-mail) to specify the args
9876 necessary to inform the scan program which scan format string or
9879 2001-12-07 Peter S Galbraith <psg@debian.org>
9881 * mh-e.el (scan.font-lock): New format file documented in comments.
9882 (mh-scan.font-lock-regexp): Adapted to new format.
9883 (mh-folder-font-lock-keywords): Use new format.
9885 * mh-e.el (page-down.xpm): Icon renamed from nextpage.
9887 * mh-utils.el (mh-decode-quoted-printable): Bug fix. Better check
9888 on what actually is a quoted-printable attachment.
9890 2001-12-06 Eric Ding <ericding@alum.mit.edu>
9892 * mh-mime.el (mh-mhn-compose-insertion, mh-mhn-compose-anon-ftp):
9893 require mailcap.el here rather than using autoload at top of
9895 (mh-file-mime-type): get rid of unused variables (why were they
9896 there to begin with?)
9898 2001-12-06 Peter S Galbraith <psg@debian.org>
9900 * mh-e.el (mh-cur-msg-number-regexp, mh-cur-msg-line-regexp):
9901 mh-cur-scan-msg-regexp splits into these two variables.
9902 The whole-line fontification is disabled, but easily restored by a
9903 user (although it could be a defcustom with choices DISABLED or
9904 the correct regexp?)
9905 (mh-folder-cur-msg-line-face): mh-folder-current-msg-face renamed
9907 (mh-folder-cur-msg-number-face): mh-folder-current-face renamed to
9910 * cabinet.xpm: Revert to rescan icon name.
9911 * mh-e.el (mh-folder-tool-bar-map): s/cabinet/rescan/
9913 * mh-e.el (mh-folder-font-lock-keywords): Reorder and tweak such
9914 that current message line highlight doesn't mess up other highlights.
9916 2001-12-05 Eric Ding <ericding@alum.mit.edu>
9918 * mh-utils.el (mh-show-from-face): Change mh-show-from-face to
9919 cyan on dark backgrounds; through a series of changes, it had
9920 become the same color as mh-show-subject-face!
9922 2001-12-05 Bill Wohler <Bill.Wohler@openwave.com>
9924 * mh-e.el, mh-utils.el: Fixed typos in face definitions, and made
9925 a couple of small doc string tweaks while I was in there. Peter,
9926 if you don't agree, let me know and I'll back them out. I thought
9927 the "mh-e" in the text was redundant since the variables start
9928 with "mh"; I was also thinking ahead to how the documentation may
9931 2001-12-05 Peter S Galbraith <psg@debian.org>
9933 * mh-e.el (mh-cur-scan-msg-regexp): Match 0 is the whole line.
9934 (mh-folder-current-msg-face): New face with only a background
9935 settings, used in font-lock for the current message.
9936 (mh-folder-font-lock-keywords): Use mh-folder-current-msg-face for
9937 mh-cur-scan-msg-regexp.
9939 * mh-utils.el (mh-show-from-face): Use red3 instead of red for
9940 light backgrounds. It's not as bright on the eyes.
9941 (mh-show-subject-face): copy from mh-folder-subject-face instead.
9942 Makes the look consistent with folder-mode.
9944 * mh-e.el (mh-folder-subject-face): Moved to mh-utils since we
9945 need it to copy to mh-show-subject-face.
9947 2001-12-05 Bill Wohler <wohler@newt.com>
9949 * mh-e.el (mh-folder-mode-map): Moved `mh-extract-rejected-mail'
9950 from "a" to "E". Better mnemonic, nicer to folks used to using a
9953 2001-12-04 Bill Wohler <wohler@newt.com>
9955 * mh-e.el (mh-folder-map): Added "S" for `mh-sort-folder'.
9957 2001-12-04 Peter S Galbraith <psg@debian.org>
9959 * mh-e.el (mh-folder-subject-face et al.): Yet another attempt at
9960 colours for folder-mode. Still themed, but fewer and darker
9961 colours (Blame Eric this time!). I'll get to underlining tomorrow
9964 * mh-e.el (mh-folder-tool-bar-map): Renamed all icons so they
9965 don't have the word mail in them. Also generated a pbm format of
9966 each icon for users without XPM support conpiled into Emacs.
9968 2001-12-04 Eric Ding <ericding@alum.mit.edu>
9970 * mh-utils.el (mh-show-font-lock-keywords): Use
9971 mh-header-subject-font-lock instead of regexp for subject headers,
9972 which may go multiple lines.
9973 (mh-header-subject-font-lock): New function.
9974 Fix typos (hightlight -> highlight).
9976 2001-12-04 Eric Ding <ericding@alum.mit.edu>
9978 * mh-e.el: changes to face colors on dark backgrounds.
9979 (mh-folder-followup-face): change to LightGoldenRod.
9980 (mh-folder-date-face): change to snow3.
9981 (mh-folder-msg-number-face): change to snow4.
9983 2001-12-04 Bill Wohler <wohler@newt.com>
9985 * Released mh-e version 5.0.92.
9987 * mh-utils.el (gnus-cite-face-list)
9988 (mh-gnus-article-highlight-citation): Don't autoload. Revert to
9989 requiring in `mh-gnus-article-highlight-citation' as before. With
9990 the autoloads, if you ran mh-e before gnus, you'd get an undefined
9991 gnus variable when viewing an article in gnus. Go figure.
9993 2001-12-03 Bill Wohler <wohler@newt.com>
9995 * Released mh-e version 5.0.91.
9997 * MH-E-NEWS: Removed info about bumping up `max-specpdl-size' now
9998 that workaround has been implemented.
10000 * Makefile (MH-E-OBJ): New variable to hold .elc files.
10001 (all): Just compile.
10002 (clean): New target that blows away MH-E-OBJ.
10003 (dist): Added $(MH-E-OBJ) to tarball.
10006 Attempt to quiet compilation errors to a dull roar.
10008 * mh-e.el: Require easymenu, added autoload of info.
10009 (mh-smail, mh-smail-other-window): Comment says these were needed
10012 * mh-utils.el: Don't require sendmail, but require mh-e.
10013 Moved autoloads to top of file, and autoload gnus-cite and
10016 * mh-pick.el: Require easymenu. Remove cond on
10017 `easy-menu-define'--it exists.
10019 * mh-mime.el: Autoload mailcap.
10021 * mh-comp.el: Require mh-e and easymenu, moved autoloads to top of
10025 * Makefile: (EMACS): New constant to hold emacs calling sequence.
10026 (install): Renamed to install-emacs.
10027 (compile): New target to compile all files.
10028 (dist): Make dependent on compile.
10029 (import): Renamed to import-emacs.
10030 (%.elc): New implicit rule to compile elisp files.
10032 * mh-e.el (mh-thread-map): Added "Td" for
10033 mh-delete-subject-thread.
10035 2001-12-03 Peter S Galbraith <psg@debian.org>
10037 * mh-e.el (mh-folder-tool-bar-map): Change tooltip for exec icon.
10039 * mh-e.el (mh-folder-subject-face): Change to IndianRed1.
10040 (mh-folder-followup-face): Change to IndianRed.
10041 (mh-folder-deleted-face): Use sedate face instead of bright one.
10043 2001-12-03 Bill Wohler <wohler@newt.com>
10045 * mh-utils.el (mh-invisible-headers): Increase size of
10046 `max-specpdl-size' locally to work around insufficient default.
10047 (mh-invisible-headers): Added X-Info and X-VSMLoop (NTMail).
10049 2001-12-03 Jeffrey C Honig <jch@honig.net>
10051 * mh-utils.el (mh-find-progs): Searches should not stop if the
10052 strings are not found, there is error detection at the end of the
10053 routine (closes SF #488231).
10055 2001-12-02 Bill Wohler <wohler@newt.com>
10057 * MH-E-NEWS: Added info about bumping up `max-specpdl-size'.
10059 * Makefile (MH-E-IMG): New variable that contains images used by
10060 mh-e. Add these files to release.
10062 * MH-E-NEWS: Second draft of mh-e 6.0 (was 5.1) release notes.
10064 * mh-e.el (mh-folder-updated-hook): Reworded to avoid ambiguity.
10065 Is the hook called when you type `d' or when you type `x'?
10066 (mh-unseen-updated-hook): Reworded to be consistent with
10067 `mh-folder-updated-hook.'
10069 * mh-utils.el (mh-recenter): Accepted Gerd's change which is
10070 evaluated at compile time.
10072 2001-12-02 Bill Wohler <wohler@newt.com>
10074 * mh-e.el Major, major keymap changes. The specific changes are
10075 listed below, but view the sources, or use "C-h m" in MH Folder
10076 mode for the complete list.
10078 Use of sub-keymaps inspired by gnus. The changes tripped me up at
10079 first too, but after about 5 minutes of shock (which is to be
10080 expected, I've been using the old keybindings for 16 years), I
10081 honestly found the new bindings to be nice indeed. It will also
10082 provide flexibility to allow for future functionality. I hate to
10083 do this on the eve of the beta release, but you asked for it! It's
10084 likely I'll have to pull an Eric and back this change out, but if
10085 we can live with pink subjects, this can't be so bad ;-).
10086 Question: will the users revolt? If they do, I suppose we can
10087 release 6.0.1 the next day ;-).
10088 (mh-folder-map, mh-sequence-map, mh-extract-map, mh-digest-map):
10089 New keymaps which start with F, S, X, and D, respectively. The
10090 mhstore commands can go in the mh-extract-map eventually.
10091 (mh-thread-map): Renamed from mh-folder-thread-map.
10093 Keymap changes and rationale. The sub-keymaps allowed some
10094 consistency (e.g., esp. with l(ist) and k(ill).
10096 e Deleted. Already have x. Now used by mh-edit-again.
10097 a Deleted. Already have r. Now used by mh-extract-rej..
10098 j Deleted. Already have g.
10100 M-a -> e Better mnemonic. Matches rmail. Frees movement cmd.
10101 M-e -> a Try `a'gain!
10103 M-f -> Fv Frees movement command
10104 M-f -> Ff Alias (keep?)
10105 M-f -> Fo Alias (keep?)
10106 M-k -> Fk No reason but to keep with folder commands
10107 M-l -> Fl No reason but to keep with folder commands
10108 M-p -> Fp No reason but to keep with folder commands
10109 M-r -> Fr Frees movement command
10110 M-s -> Fs No reason but to keep with folder commands
10111 M-u -> Fu No reason but to keep with folder commands
10113 M-% -> Sd Better mnemonic
10114 M-# -> Sk Better mnemonic
10115 M-q -> Sl Better mnemonic
10116 C-xn -> Sn Frees up standard key binding
10117 % -> Sp Better mnemonic for putting a message in a sequence
10118 ? -> Ss Shows sequences that message is in
10119 C-xw -> Sw Frees up standard key binding
10121 M-n -> Xs Better mnemonic (shar)
10122 M-n -> Xu Better mnemonic (uuencode)
10124 M-SPC -> DSPC Frees mark command
10125 M-\177 -> D\177 No reason but to keep with digest commands
10126 M-b -> Db Frees movement command
10128 2001-12-01 Bill Wohler <wohler@newt.com>
10130 * mh-e.el: Use gnus style of keymaps. Now requires gnus-util.
10131 (mh-folder-thread-map): New map, created by gnus-define-keys.
10132 Reached when typing T in mh-folder-mode-map. Moved threading
10133 functions to this new keymap so we can use dired again.
10134 (mh-folder-mode-map): Defined by gnus-define-keys. Otherwise than
10135 the new threading functions, no changes to the UI were made at
10136 this point--saving that for the next check-in.
10138 * mh-pick.el (mh-pick-mode-map): Use gnus-define-keys. Now
10139 requires gnus-util.
10141 * mh-comp.el (mh-letter-mode-map): Use gnus-define-keys. Now
10142 requires gnus-util.
10144 2001-12-01 Jeffrey C Honig <jch@honig.net>
10146 * mh-e.el: Update the documentation for the regexps used by
10147 `mh-folder-font-lock-keywords' to specify how many parethesized
10148 expressions they are expected to have and what those expressions
10149 are expected to match.
10151 2001-12-01 Bill Wohler <wohler@newt.com>
10153 * mh-e.el (mh-folder-mode): Removed iteration of key bindings,
10154 \\{mh-folder-mode-map} suffices. Removed variable documentation
10155 also as this is already out of date and a maintenance hassle.
10156 Reference new mh customization group instead.
10158 * mh-comp.el (mh-letter-mode): Ditto. Also added new information
10159 about MIME directives getting processed automatically if inserted
10162 * mh-pick.el (mh-pick-mode): Edited documentation so it reads like
10165 * mh-e.el (mh-compat-quit): Deleted obsolete and unused function.
10166 Comment in this function said that `b' shouldn't be used for
10167 burst-digest, as it is used for `back' in info, less, and rn. But
10168 what does `back' mean in MH Folder? I suppose if you visit a
10169 folder, you would go `back' to the original folder. Hmmm, I guess
10170 we'll leave the `b' binding alone for now.
10172 * mh-utils.el: Moved some of the variable comments to the first
10173 column so they wouldn't wrap in such an ugly fashion.
10174 (mh-showing-mode): Renamed variable and function from mh-showing
10175 to conform with minor mode conventions. Added optional arg to
10176 function so it would behave like a normal minor mode: no or nil
10177 arg toggles mode, 0 arg turns off, non-nil turns on. It also turns
10178 out that desktop-create-buffer would barf when recreating mh-e
10179 buffers because it was calling mh-show with an arg.
10180 (mh-show-mode): Use define-derived-mode to simplify definition a
10182 (mh-set-mode-name): Deprecated by use of define-derived-mode.
10185 * mh-pick.el (mh-pick-mode): Use define-derived-mode to simplify
10186 definition a *lot*.
10188 * mh-e.el (mh-scan-prog): Removed message about "Buffer local" as
10189 this message will appear in a future version of Emacs.
10190 (mh-inc-folder): mh-showing renamed to mh-show-mode and made a
10192 (mh-folder-mode): Use define-derived-mode to simplify definition a
10195 * import-emacs (release): Change `(none)' to `mainline' so import
10196 doesn't choke after running `cvs up -A' on Emacs.
10197 (COPYING): Moved from $EMACS_HOME/etc to $EMACS_HOME.
10198 (cvs update): Whoops! Forgot the second join (-jemacs).
10199 make import works fine again.
10201 2001-11-30 Peter S Galbraith <psg@debian.org>
10203 * mh-e.el (mh-folder-font-lock-keywords): Change order of
10204 font-lock patterns such that subject body text doesn't get date
10207 * mh-e.el (mh-scan-subject-regexp): Bug fix. Remove a dot.
10208 scan.font-lock users have to setq it separately.
10210 2001-11-30 Eric Ding <ericding@alum.mit.edu>
10212 * mh-utils.el (mh-clean-msg-header): Go back to using
10213 mh-delete-line. Using invisible text property is nicer in some
10214 ways, but winds up with somewhat mysterious behavior should user
10215 kill/yank stuff from the header (i.e., text gets yanked invisibly
10216 and won't be seen by user until file is reloaded).
10218 2001-11-29 Bill Wohler <wohler@newt.com>
10220 * mh-e.el (mh-page-msg): Use mh-next-direction to page in the
10223 2001-11-29 Jeffrey C Honig <jch@honig.net>
10225 * mh-e.el (mh-scan-folder): Fix logic to not attempt to go to
10226 the current message if there are no messages in the folder.
10228 2001-11-29 Peter S Galbraith <psg@debian.org>
10230 * mh-e.el (mh-folder-font-lock-subject): New fontifier function
10231 for subject lines in folder-mode
10232 (mh-scan-followup-regexp): Deleted obsolete regexp. Use
10233 mh-scan-subject-regexp instead.
10234 (mh-folder-font-lock-keywords): Use mh-folder-font-lock-subject
10235 instead of obsolete mh-scan-followup-regexp variable.
10236 (mh-folder-date-face, mh-folder-msg-number-face):
10237 (mh-folder-subject-face, mh-folder-followup-face):
10238 Now defined as proper faces instead of copied from font-lock
10241 * mh-mime.el (mh-media-type-regexp): New variable. Regexp matching
10242 valid media types used in MIME attachment compositions.
10243 (mh-file-mime-type): Use mh-media-type-regexp instead of
10244 hard-wiring its value.
10246 * mh-utils.el (mh-show-unquote-From): New function to unquote
10247 "^>From" in mh-show-mode (not saved to disk).
10248 (mh-show-mode): Call mh-show-unquote-From.
10250 2001-11-29 Eric Ding <ericding@alum.mit.edu>
10252 * mh-utils.el (mh-clean-msg-header): Use mh-make-line-invisible
10253 rather than mh-delete-line.
10254 (mh-make-line-invisible): New function to make line(s) invisible
10255 rather than deleting line(s). Optional argument specifies number
10256 of lines to delete.
10257 (mh-show-msg): screen-height has been deprecated; use no more.
10258 (mh-notate): screen-width has been deprecated; use no more.
10260 2001-11-29 Jeffrey C Honig <jch@honig.net>
10262 * mh-utils.el: (mh-find-progs): Change mh-find-progs to rely on
10263 the existence of mhparam. The location of mhparam is used to find
10264 `mh-progs'. It uses the libdir and etcdir to find the
10265 `mh-lib-progs' and `mh-lib' directories. If etcdir doesn't return
10266 anything we assume `mh-lib-progs' is the same as `mh-lib' and that
10267 we are using MH instead of nmh.
10269 2001-11-29 Peter S Galbraith <psg@debian.org>
10271 * mh-e.el (mh-scan.font-lock-regexp): Change docs to reflect that
10272 second paren expression is the user match.
10273 (mh-folder-font-lock-keywords): Change from 1st to 2nd parenthesized
10274 expression to match user name, after Jeffrey's change to the regexps.
10276 2001-11-29 Bill Wohler <Bill.Wohler@openwave.com>
10278 * mh-utils.el (mh-clean-message-header): Default is now t.
10279 (mh-invisible-headers): Padded out to contain all the headers that
10280 the mh-e developers don't like to see (closes SF #415759).
10282 2001-11-28 Bill Wohler <Bill.Wohler@openwave.com>
10284 * mh-comp.el (mh-rejected-letter-start): Added MIME MDN. While
10285 this allows mh-extract-rejected-mail to strip the start of the
10286 MDN, there is still a closing MIME marker at the end. This should
10287 be cleaned up eventually.
10289 2001-11-28 Peter S Galbraith <psg@debian.org>
10291 * mh-e.el (mh-folder-seq-tool-bar-map): New tool-bar used for
10292 folder-mode when narrowed to sequence.
10293 * mh-seq.el (mh-narrow-to-seq): Set tool-bar to
10294 mh-folder-seq-tool-bar-map.
10295 (mh-widen): Set tool-bar to mh-folder-tool-bar-map.
10296 * widen.xpm: New icon used in mh-folder-seq-tool-bar-map.
10298 * mh-mime.el (mh-file-mime-type): Much better check on validity of
10301 * mh-e.el (mh-scan-subject-regexp): New regexp variable for
10302 subject string in folder mode. Used to extract subject sequence,
10303 and will be used for font-lock soon.
10304 * mh-seq.el (mh-subject-thread-to-sequence): More robust code by
10305 using mh-scan-subject-regexp, allows users with non-standard
10306 scan format to use subject sequences.
10308 * mh-comp.el (mh-letter-fill-column): Fill column to use in
10309 mh-letter-mode. (Yes, I'm doing this in spite of what Bill said;
10310 Someone can always undo it later)
10311 (mh-letter-mode): setq fill-column to mh-letter-fill-column.
10313 2001-11-28 Bill Wohler <wohler@newt.com>
10315 * mh-e.el (mh-page-msg): The first time the end of page is hit,
10316 set mh-page-to-next-msg-p to t. The second time the end of page is
10317 hit, go to the next message.
10319 * mh-utils.el: (mh-show-msg): Initialize mh-page-to-next-msg-p to
10322 2001-11-27 Bill Wohler <wohler@newt.com>
10324 * mh-mime.el (mh-mime-content-types): Updated list of types to
10325 contain types used by mh-e developers, but not including types not
10327 http://www.isi.edu/in-notes/iana/assignments/media-types/media-types.
10329 2001-11-27 Peter S Galbraith <psg@debian.org>
10331 * mh-seq.el (mh-subject-thread-to-sequence) New function placing
10332 all messages with similar subject line into a sequence named
10334 (mh-narrow-to-subject-thread): New command to narrow to all
10335 messages with similar subject line into a sequence named 'subject.
10336 (mh-toggle-subject-thread): New command to toggle between a new
10337 'subject sequence or the wide view of a folder.
10338 (mh-delete-subject-thread): New command to delete all following
10339 messages with similar subject lines (leaving preceeding ones
10341 (mh-next-unseen-subject-thread): New command to create and move to
10342 a new subject thread created from the next unseen message as a
10344 * mh-e.el (mh-folder-message-menu): New menu entries for subject
10346 (mh-folder-mode-map): New keybindings for subject threads.
10347 (mh-lessp): New function to sort messages.
10349 * mh-utils.el (mh-show-font-lock-keywords): and various
10350 faces... scoped within eval-after-load "font-lock" to avoid
10351 requiring font-lock to use its faces.
10352 * mh-e.el (mh-folder-font-lock-keywords): Same.
10354 2001-11-27 Jeffrey C Honig <jch@honig.net>
10356 * mh-mime.el (mh-file-mime-type): Use mh-temp-buffer instead of
10359 * mh-comp.el (mh-insert-x-mailer): Kill mh-temp-buffer after use.
10361 2001-11-26 Eric Ding <ericding@alum.mit.edu>
10363 * mh-utils.el: revert to using external mimedecode to decode
10364 MIME quoted-printable parts
10366 2001-11-26 Jeffrey C Honig <jch@honig.net>
10368 * mh-e.el (mh-process-commands): Added mh-folder-updated-hook.
10369 * mh-e.el (mh-update-unseen): Added mh-unseen-updated-hook.
10371 2001-11-26 Peter S Galbraith <psg@debian.org>
10373 * mh-mime.el (mh-file-mime-type): Make sure output from file
10374 command is known to mailcap file, otherwise prompt the user.
10375 (mh-mime-content-types): Add "image/png" type.
10377 * mh-e.el (mh-folder-font-lock-keywords): Use a bunch of new
10378 mh-folder-*-face faces.
10379 * mh-utils.el (mh-show-font-lock-keywords): Use a bunch of new
10380 mh-show-*-face faces.
10382 * mh-utils.el (mh-letter-header-font-lock): Bug fix. Fix infinite
10383 loop in emacs20 font-locking.
10384 (mh-header-field-font-lock): Preventive fix with similar change.
10386 * mh-comp.el (mh-reply-show-message-p): Typo. diplayed -> displayed.
10389 * mh-e.el (mh-folder-tool-bar-map): Bug fix. I had
10390 mh-repack-folder instead of mh-pack-folder.
10392 2001-11-26 Bill Wohler <wohler@phone.com>
10395 Updated header for consistency and to conform with (elisp)Library
10397 (mh-do-not-confirm): Updated documentation string to reflect
10398 reality (e.g., is no longer used by mh-kill-folder and is used by
10399 more functions than just mh-undo-folder).
10400 (mh-page-msg): Now shows the next undeleted message if looking at the
10401 bottom of the current message.
10402 (mh-process-or-undo-commands): Fixed indentation.
10405 (mh-mhn-compose-insertion, mh-mhn-compose-anon-ftp): If MIME type
10406 cannot be determined with file command, use mailcap-mime-types (if
10407 available) to provide list for completing read.
10409 * MH-E-NEWS: First draft of mh-e 5.1 release notes.
10411 2001-11-26 Eric Ding <ericding@alum.mit.edu>
10413 * mh-utils.el (mh-decode-quoted-printable): Implement
10414 quoted-printable decoding in elisp (starting with code copied
10416 (mh-decode-quoted-printable-region): Move (require 'hexl) outside
10418 (mh-decode-quoted-printable): give user a choice between using
10419 internal code or external program to decode quoted-printable
10420 content. Resurrect code that calls external mimedecode program.
10422 2001-11-25 Peter S Galbraith <psg@debian.org>
10424 * mh-utils.el (mh-highlight-citation-p): New variable to determine
10425 whether to hightlight citations in message body with gnus,
10426 font-lock or not at all.
10427 (mh-show-font-lock-keywords): removed citations from keywords.
10428 (mh-show-font-lock-keywords-with-cite): New variable, equivalent
10429 to prior mh-show-font-lock-keywords.
10430 (mh-gnus-article-highlight-citation): hook into gnus for
10431 multi-level citation highlighting.
10432 (mh-show-mode): Use either mh-show-font-lock-keywords or
10433 mh-show-font-lock-keywords-with-cite, depending on value of
10434 mh-highlight-citation-p, and possibly call
10435 mh-gnus-article-highlight-citation.
10436 * mh-comp.el (mh-letter-mode): Same as for mh-show-mode above.
10438 2001-11-25 Jeffrey C Honig <jch@honig.net>
10440 * mh-comp.el (mh-redistribute): Added mh-redist-background
10441 variable to cause mh-redistribute to run the redist command in the
10442 background. This causes the transaction log to be visible, like
10445 2001-11-25 Peter S Galbraith <psg@debian.org>
10447 * mh-e.el (mh-inc-folder): 'inc' finishes by displaying the first
10448 new message if already showing messages.
10450 2001-11-22 Peter S Galbraith <psg@debian.org>
10452 * mh-utils.el (mh-prompt-for-folder): Exit with error if no folder
10453 specified, otherwise mh-refile-msg may try to create a folder with
10454 empty name, and this creates problems; even mh-undo can't handle
10455 it (Closes SF #476824).
10457 * mh-comp.el (mh-letter-tool-bar-map): Info button needed to
10458 require 'info. Also tweaked help texts.
10459 (mh-letter-menu): Use headline capitalization (Closes SF #483203).
10460 * mh-e.el (mh-folder-tool-bar-map): Same as above.
10461 (mh-folder-folder-menu, mh-folder-message-menu):
10462 (mh-folder-sequence-menu): Same as above.
10463 * mh-pick.el (mh-pick-menu): Same as above.
10465 2001-11-21 Peter S Galbraith <psg@debian.org>
10467 * mh-comp.el (mh-reply-show-message-p): The setting of this
10468 variable determines whether the MH show-buffer is diplayed with
10469 the current message when using mh-reply without a prefix argument.
10470 Set it to nil if you already include the message automatically in
10471 your draft using "repl: -filter repl.filter" in your ~/.mh_profile
10473 (mh-reply): Don't show message in other window if
10474 mh-reply-show-message-p is nil.
10476 * mh-e.el (mh-folder-tool-bar-map): Add mail_exec.xpm icon for
10477 mh-execute-commands.
10479 * mh-utils.el (mh-show-mouse): New function to click on a message
10480 in folder-mode and show that message.
10481 * mh-e.el (mh-folder-mode-map): Bind mh-show-mouse to mouse-2.
10483 * mh-e.el (mh-page-msg): Show buffer first if not displayed,
10484 instead of simply complaining there's no other window.
10486 * mh-e.el (mh-folder-tool-bar-map): New tool-bar for folder mode!
10487 (mh-folder-mode): Setup tool-bar.
10489 * mh-mime.el (mh-have-file-command): try to non-fatally load
10490 executable.el because emacs20 doesn't autoload it.
10491 * mh-utils.el (load "executable" t t): Idem.
10493 * mh-utils.el (mh-clean-msg-header): Bug fix. locally bind
10494 after-change-functions to nil, working around a strange font-lock
10495 bug in emacs20 when (add-hook 'mh-show-mode-hook 'turn-on-font-lock)
10498 * mh-comp.el (require 'sendmail): Moved from mh-comp.el to
10499 mh-utils.el because it is needed in reading mail too.
10500 (mh-header-field-end, mh-in-header-p): Moved to mh-utils.el
10501 because they are needed by mh-show-mode's font-lock code.
10502 Unfortunately, this splits the field related code into two files.
10503 Perhaps it should all go into mh-utils?
10505 2001-11-20 Eric Ding <ericding@alum.mit.edu>
10507 * mh-utils.el (mh-show-from-face): Fix typo in defface
10509 2001-11-20 Bill Wohler <wohler@newt.com>
10511 * mh-utils.el (mh-mail-header-separator): Set to -------- as
10512 defined by MH (components, and replcomps files). This variable
10513 cannot be a regexp since it is used as an argument to insert and
10514 is passed through regexp-quote before being used. The previous
10515 value broke a lot of code, including mailcrypt.
10517 * mh-comp.el (mh-letter-mode, mh-send-letter): Insert X-Mailer
10518 header field from mh-send-letter.
10519 (mh-edit-again, mh-extract-rejected-mail): Call
10520 mh-insert-header-separator to ensure that there is a separator.
10521 Packages such as mailcrypt depend on it.
10522 (mh-insert-header-separator): New function to insert
10523 mh-mail-header-separator if it doesn't exist.
10525 2001-11-20 Peter S Galbraith <psg@debian.org>
10527 * mh-comp.el (mh-letter-mode): Make font-lock-defaults a local variable
10528 * mh-e.el (mh-folder-mode): Same.
10529 * mh-utils.el (mh-show-mode): Same.
10531 * mh-e.el (mh-scan-msg-num-regexp): Delete variable and replace
10532 with mh-good-msg-regexp.
10534 * mh-utils.el (mh-mail-header-separator): Bug fix. Moved from
10535 mh-comp.el to mh-utils.el (which mh-comp.el loads).
10537 * mh-comp.el (mh-in-header-p): Recycle sendmail.el code (as
10538 suggested by Bill).
10539 * mh-utils.el (mh-letter-header-font-lock): Use mh-in-header-p.
10541 * mh-comp.el (mh-letter-tool-bar-map): tool-bar customize button goes
10542 to customizing mh-compose group.
10544 * mh-utils.el (mh-show-mode): font-lock bug fix. Locally set
10545 font-lock-support-mode to nil.
10546 (mh-letter-header-font-lock, mh-header-field-font-lock): font-lock
10547 bug fix. Don't return match beyond font-lock search limit.
10549 * mh-comp.el (mh-letter-mode): Emacs20 bug fix. tool-bar-mode is
10550 not a bound variable.
10552 2001-11-19 Peter S Galbraith <psg@debian.org>
10554 * mh-comp.el (mh-letter-tool-bar-map): tool-bar help button goes
10555 to 'Draft Editing' info node.
10557 * mh-utils.el (mh-show-from-face, mh-show-to-face): New faces used
10559 (mh-header-to-font-lock, mh-header-cc-font-lock)
10560 (mh-header-field-font-lock): New helper function returning whole
10561 header field arguments to font-lock.
10562 (mh-show-font-lock-keywords): Heavily modified using the above.
10564 * mh-e.el (mh-scan-msg-num-regexp): Regexp matching the message
10565 number in scan lines.
10566 (mh-scan-date-regexp): Regexp matching a valid date in scan lines.
10567 (mh-scan-rcpt-addr-regexp): Regexp specifying the recipient in
10568 scan lines for messages we sent.
10569 (mh-scan-followup-regexp): Regexp matching a followup subject
10570 line, starting with Re:
10571 (mh-scan-body-regexp):
10572 Regexp matching the message body beginning displayed in scan lines.
10573 (mh-scan.font-lock-regexp): Regexp matching output of the the
10574 optional scan.font-lock format file.
10575 (mh-folder-font-lock-keywords): New font-lock for folder-mode that
10576 uses the above regexps.
10578 2001-11-19 chad <y@mit.edu>
10580 * mh-comp.el (mh-letter-tool-bar-map): made both references to
10581 mh-letter-tool-bar-map conditional on tool-bar-mode, instead of
10584 2001-11-19 Bill Wohler <wohler@newt.com>
10586 * mh-comp.el (mh-position-on-field): Move to the end of the header
10587 if the field is not present. This function was documented to do
10588 this, but wasn't doing so.
10589 (mh-insert-x-mailer): Simplified by using existing
10590 mh-goto-header-field and mh-insert-fields functions. Now that
10591 mh-insert-fields is used to insert X-Mailer header field, no
10592 longer need to include X-Mailer in mh-x-mailer-string.
10594 2001-11-18 Peter S Galbraith <psg@debian.org>
10596 * mh-comp.el (mh-letter-tool-bar-map): New version of
10597 mh-letter-mode tool-bar. Changed order of buttons; made customize
10598 and info buttons specific to mh-e.
10600 * mh-e.el (mh-folder-font-lock-keywords): New font-lock regexp
10601 uses variables mh-deleted-msg-regexp, mh-refiled-msg-regexp and
10602 mh-cur-scan-msg-regexp, so will better adapt to non-default scan
10603 formats. Also, lines marked for refiling are now fontified.
10605 2001-11-18 Bill Wohler <wohler@newt.com>
10607 * mh-utils.el (mh-show-mode): Added local variable
10608 mail-header-separator which is initialized to
10609 mh-mail-header-separator.
10611 * mh-comp.el (mh-mail-header-separator): Updated to include ^$.
10612 Needed when running mh-edit-again, since by then the separator is
10613 gone. Added documentation saying one should use
10614 mail-header-separator and initialize it from
10615 mh-mail-header-separator.
10616 (mh-forward): Initialize mail-header-separator since
10617 mh-letter-mode hasn't kicked in yet (which does initialize
10618 mail-header-separator).
10619 (mh-letter-mode): Initialize mail-header-separator from
10620 mh-mail-header-separator, not hard-coded string.
10622 * mh-comp.el (mh-insert-x-mailer-p): New variable to control
10623 whether X-Mailer string is inserted. Default: t.
10624 (mh-x-mailer-string): New variable that caches actual X-Mailer
10626 (mh-letter-mode): Call mh-insert-x-mailer if mh-insert-x-mailer-p
10628 (mh-insert-x-mailer): New function that inserts X-Mailer header
10631 2001-11-17 Peter S Galbraith <psg@debian.org>
10633 * mh-utils.el (mh-letter-header-font-lock): New function to return
10634 the entire mail header to font-lock for sedate font-locking.
10635 (mh-show-font-lock-keywords): Modified to fontify whole lines and use
10636 mh-letter-header-font-lock above to fontify whole header.
10638 2001-11-17 Bill Wohler <wohler@newt.com>
10640 * mh-comp.el (mail-header-separator): Added ^ and $ to make more
10642 (mh-forward, mh-letter-mode): Replaced hard-coded string with
10643 mail-header-separator.
10645 2001-11-16 Bill Wohler <wohler@newt.com>
10647 * mh-e.el (mh-e-RCS-id): Renamed to mh-version.
10648 (mh-version): The variable: Set to a number instead of Id since
10649 the Id didn't have the mh-e version number, and both Emacs and
10650 gnus do it this way too.
10651 (mh-version): The function: Fixed for nmh. Now displays mh-e
10652 version correctly. Cleaned up output and display mh-progs, etc.
10653 (Closes SF #405620.)
10655 2001-11-15 Peter S Galbraith <psg@debian.org>
10657 * mh-comp.el (mh-letter-tool-bar-map): New tool-bar support for
10658 mh-letter-mode in emacs21. Uses icons from gnus/message.el.
10659 * mh-comp.el (mh-letter-mode): Add buffer-local binding of
10660 tool-bar-map to mh-letter-tool-bar-map.
10662 2001-11-15 Peter S Galbraith <psg@debian.org>
10664 * mh-mime.el (mh-have-file-command): Add check for existence of
10665 executable-find command, which Jeffrey didn't exist in emacs-20.4.
10666 * mh-utils.el (mh-decode-quoted-printable-have-mimedecode): same
10668 * mh-mime.el (mh-file-mime-type): Bug Fix. Some versions of
10669 'file' output a string like "file: Using regular magic file..."
10670 to stderr, so discard stderr when using call-process with 'file'.
10672 2001-11-14 Peter S Galbraith <psg@debian.org>
10674 * mh-mime.el (mh-have-file-command): Check if 'file' command on
10675 system accepts arguments -i -b before accepting it for our use.
10677 2001-11-14 Peter S Galbraith <psg@debian.org>
10679 * mh-utils.el (mh-find-progs): Use expand-file-name instead of
10680 concatenating together strings into a path.
10682 2001-11-14 Peter S Galbraith <psg@debian.org>
10684 * mh-e.el (mh-folder-sequence-menu): Enable mh-widen in sequence
10685 menu only when mh-narrowed-to-seq is t.
10687 2001-11-14 Peter S Galbraith <psg@debian.org>
10689 * mh-mime.el (mh-have-file-command): Use 'executable-find' instead
10690 of more complicated and error-prone call-process to which command.
10691 * mh-utils.el (mh-decode-quoted-printable-have-mimedecode): Same
10694 2001-11-14 Jeffrey C Honig <jch@honig.net>
10696 * mh-e.el (mh-make-folder-mode-line): Bug fix. Properly deal with
10697 folders that do not have any lines in them. Print "no msgs"
10698 instead of "0 msgs". Do not try to print a range when there are
10700 * mh-e.el (mh-regenerate-headers): Bug fix. Catch and remove the
10701 "scan: band message list" message.
10703 2001-11-13 Jeffrey C Honig <jch@honig.net>
10705 * mh-utils.el (mh-find-progs): Bug fix. Add "mh/etc" to the
10706 subdirectories to search for "components". On BSD/OS, nmh is in
10707 "/usr/contrib/mh/*".
10709 2001-11-13 Peter S Galbraith <psg@debian.org>
10711 * mh-comp.el (mh-letter-mode): Bug fix. Load mh-mime before
10712 setting mh-mhn-compose-insert-p (when looking at a "forw: -mime"
10713 message containing a MIME composition) such that the variable is
10714 properly declared as buffer-local.
10716 2001-11-12 Bill Wohler <wohler@newt.com>
10718 * mh-funcs.el (mh-print-msg): mhl is in the mh-lib-progs
10719 directory, not mh-lib (closes SF #481128).
10721 2001-11-12 Peter S Galbraith <psg@debian.org>
10723 * mh-seq.el (mh-widen): Bug fix (closes SF #481036).
10724 In a sequence with pending deletes and refiles, running mh-widen
10725 would wipe out their notations, even though the sequences are still
10726 defined. Fixed by calling a new function,
10727 mh-notate-deleted-and-refiled. Also changed the coping of
10728 mh-goto-msg-num since it didn't work consistently.
10729 * mh-seq.el (mh-notate-deleted-and-refiled): New functions written
10730 to fix above mh-widen bug. It's a first cut, we may want to clear
10731 all notations first, and notate the current-message sequence and
10732 user sequences. Time will tell.
10734 2001-11-12 Peter S Galbraith <psg@debian.org>
10736 * mh-seq.el (mh-widen): Make it attempt to stay on the same
10737 message number (closes SF bug #480922).
10739 2001-11-11 Bill Wohler <wohler@newt.com>
10741 * import-emacs: New shell script to import Emacs changes to mh-e.
10743 * Makefile (import): New target to import Emacs changes.
10745 2001-11-09 Peter S Galbraith <psg@debian.org>
10747 * mh-mime.el (mh-file-mime-type): Bug fix. Change regexp to
10748 extract mime type from 'file -i' command output.
10750 2001-11-08 Peter S Galbraith <psg@debian.org>
10752 * mh-utils.el (mh-update-sequences-after-mh-show):
10753 New customizable variable telling whether to run
10754 mh-update-sequences in mh-show-mode. Default is t.
10755 * mh-utils.el (mh-show-msg): Run mh-update-sequences when
10756 mh-update-sequences-after-mh-show is set.
10758 2001-11-08 Peter S Galbraith <psg@debian.org>
10760 * mh-utils.el (mh-decode-quoted-printable-have-mimedecode):
10761 New variable telling whether command 'mimedecode' is on system.
10762 (http://www.freesoft.org/CIE/FAQ/mimedeco.c)
10763 * mh-utils.el (mh-decode-quoted-printable):
10764 New customizable variable telling whether to run mimedecode on
10765 MIME message containing quoted-printable parts. mimedecode will
10766 only alter quoted-printable parts , leaving others intact, and the
10767 resulting message is still fully MIME.
10768 * mh-utils.el (mh-decode-quoted-printable): New function to run
10769 mimedecode on the current buffer.
10770 * mh-utils.el (mh-display-msg): Conditionnaly call
10771 mh-decode-quoted-printable function if mh-decode-quoted-printable
10772 variable is set, to view messages containing quoted-printable
10773 characters into 8-bit.
10775 2001-11-08 Peter S Galbraith <psg@debian.org>
10777 * mh-comp.el (mh-letter-mode): Set mh-mhn-compose-insert-p if
10778 looking at a "forw: -mime" message containing a MIME composition.
10779 * mh-mime.el (mh-file-mime-type): Bug fix. Failed on files like
10780 "~/.mh_profile" because of shell construct. Wrapped filename with
10782 * mh-comp.el (mh-letter-mode-map): C-cC-o keybinding in
10783 mh-letter-mode-map for mh-open-line.
10785 2001-11-07 Peter S Galbraith <psg@debian.org>
10787 * mh-comp.el (mh-open-line): New user function to split open a line
10788 when editing a reply with included text.
10789 * mh-comp.el (mh-current-fill-prefix): New function used by
10790 mh-open-line to get the fill-prefix on the current line.
10791 * mh-comp.el: Add mh-open-line to mh-letter-mode menubar.
10793 2001-11-06 Peter S Galbraith <psg@debian.org>
10795 * mh-seq.el (mh-region-to-sequence): New function, creating a
10796 sequence named 'region containing the message list in the selected
10798 * mh-e.el (mh-delete-msg): Mark messages in region for deletion if
10799 mark is active and in transient-mark-mode.
10800 * mh-e.el (mh-refile-msg): Mark messages in region for refiling if
10801 mark is active and in transient-mark-mode.
10802 * mh-e.el (mh-undo): Undo message marks for refile or deletion if
10803 region if mark is active and in transient-mark-mode.
10805 2001-11-06 Peter S Galbraith <psg@debian.org>
10807 * mh-comp.el (mh-letter-mode): Use sendmail.el's fill-paragraph.
10808 Copy its settings for paragraph-start, paragraph-separate,
10809 fill-paragraph-function, adaptive-fill-regexp and
10810 adaptive-fill-first-line-regexp. This make M-q (fill-paragraph)
10813 2001-11-05 Peter S Galbraith <psg@debian.org>
10815 * mh-funcs.el (mh-kill-folder): Remove mh-do-not-confirm condition
10816 and always prompt the user for such a drastic step. Also change
10817 the prompt a bit to clarify it.
10819 2001-11-04 Peter S Galbraith <psg@debian.org>
10821 * mh-mime.el (mh-mhn-compose-insert-p): New buffer-local variable
10822 to tell when a MIME insertion was done in a letter.
10823 * mh-mime.el (mh-mhn-compose-type): Set mh-mhn-compose-insert-p.
10824 * mh-mime.el (mh-mhn-compose-external-type):
10825 Set mh-mhn-compose-insert-p.
10826 * mh-mime.el (mh-mhn-compose-forw): Set mh-mhn-compose-insert-p.
10827 * mh-mime.el (mh-edit-mhn): Clear mh-mhn-compose-insert-p.
10828 * mh-comp.el (mh-send-letter): Run mh-edit-mhn when
10829 mh-mhn-compose-insert-p is set.
10831 2001-11-03 Peter S Galbraith <psg@debian.org>
10833 * mh-mime.el (mh-have-file-command): new function testing whether
10834 file command is on the system.
10835 * mh-mime.el (mh-file-mime-type): new function returning MIME type
10837 * mh-mime.el (mh-mhn-compose-insertion): Make use of
10838 mh-file-mime-type function instead of prompting.
10840 2001-10-30 Peter S Galbraith <psg@debian.org>
10842 * mh-utils.el (mh-show-use-goto-addr): defcustom this new
10843 variable, determining whether to call goto-addr in mh-show-mode.
10844 * mh-utils.el (mh-show-mode): Call goto-address when
10845 mh-show-use-goto-addr is t.
10847 2001-10-25 Peter S Galbraith <psg@debian.org>
10849 * mh-utils.el (mh-recenter): Clarify docs and change '(t) to
10850 (list 4) to match elisp doc on what C-u prefix argument actually is.
10852 2001-10-23 Peter S Galbraith <psg@debian.org>
10854 * mh-utils.el (mh-summary-height): In my quest to make mh-e more
10855 useful out-of-the-box for new users, set mh-summary-height to a
10856 minimum of 4 and a maximum of 10 depending on frame height. I
10857 typically have 70 lines in my Emacs frame, so having a default of
10858 4 was silly for my case.
10859 * mh-e.el (mh-update-sequences): Check for nil value of
10860 mh-current-folder, which happens if mh-summary-height < 4
10861 although I haven't tracked doen why that happens.
10863 2001-10-22 Peter S Galbraith <psg@debian.org>
10865 * mh-comp.el (mh-insert-fields): Test for nil value when inserting
10868 2001-10-20 Peter S Galbraith <psg@debian.org>
10870 * mh-comp.el (mh-user-agent-compose): Merged-in from XEmacs-21.4 source
10871 * mh-comp.el (mh-letter-mode): Add easy-menu-add statement for XEmacs21
10872 * mh-pick.el (mh-pick-mode): Add easy-menu-add statement for XEmacs21.
10873 * mh-e.el (mh-folder-mode): Add easy-menu-add statements for XEmacs21.
10874 * mh-utils.el: defalias 'screen-height to 'frame-height for XEmacs21.
10876 2001-10-19 Peter S Galbraith <psg@debian.org>
10878 * mh-mime.el (mh-edit-mhn): Use mhbuild in nmh context.
10879 * mh-utils.el (mh-find-progs): The variable mh-nmh-p (t when nmh
10880 is in use rather than MH) was set assuming that the string "nmh"
10881 will be in mh-lib-progs or mh-lib. This failed on Debian systems.
10882 Better to check for the existence of mhbuild in directory mh-progs.
10883 (closes SF bug #441776)
10885 2001-10-18 Peter S Galbraith <psg@debian.org>
10887 * mh-e.el: Add menubar entry from contrib/mh-menubar.el
10888 * mh-comp.el: Add menubar entry from contrib/mh-menubar.el
10889 * mh-pick.el: Add menubar entry from contrib/mh-menubar.el
10891 2001-07-30 Peter S Galbraith <psg@debian.org>
10893 * mh-e.el: Change font-lock patterns for folders.
10894 Fontify scan.font-lock patterns (which will be documented)
10895 and fontify subject lines prefixed with "Re:" differently.
10896 * mh-comp.el (mh-letter-mode): Add font-lock support as in
10899 2001-04-14 chad brown <y@mit.edu>
10901 * rearrange the font-lock keywords a bit
10903 2001-04-12 chad brown <y@mit.edu>
10905 * preliminary (somewhat boring) font-lock support for mh-e. More
10906 interesting font-lock support probably wants to have better
10907 support for multiple format files
10909 2001-02-24 chad brown <y@mit.edu>
10911 * add default nmh paths to mh-find-prog in mh-utils.el.
10912 change to mh-kill-folder in mh-funcs.el to make it more general.
10914 2001-02-19 Bill Wohler <wohler@newt.com>
10916 * Makefile (EMACS): Renamed to EMACS_HOME. Also, don't define if
10917 EMACS_HOME already exists to give developer a chance to set
10918 environment variable.
10919 (install): $MH-E-SRC is copied to $(EMACS_HOME)/lisp/mail, not
10921 (dist): Leave release in current directory.
10924 Copyright (C) 2003, 2004 Free Software Foundation, Inc.
10926 Copying and distribution of this file, with or without modification,
10927 are permitted in any medium without royalty provided the copyright
10928 notice and this notice are preserved.
10930 ;;; arch-tag: 87324964-69b6-4925-a3c2-9c1df53d7d51