MH-E-ONEWS   [plain text]


This file is automatically generated from news-mh-e.txinfo.  Do not edit.

User-visible changes to mh-e in version 4.0 from 3.8

Note: there are many internal changes to mh-e in this release.  If you
have the previous version loaded into your Emacs, you will probably not
be able to load this version on top of it.


New Features in mh-e
====================

Background folder collection.  The first time you are prompted for a
folder, you must wait while mh-e collects the names of all existing
folders.  Now however, if you abort, collecting will continue in the
background, and you can do something else in Emacs until the collection
completes.  Normally, mh-e will begin collecting folders names in the
background when you first load it; you can disable this feature by
setting `mh-auto-folder-collect' to nil.

There is support for composing MIME messages using the `mhn' program
from MH 6.8.  See the documentation string for mh-edit-mhn.  (While
composing a letter, type `C-h k C-c C-e'.)  See also mhn(1).  There is
as yet no support for reading MIME messages.

`mh-show', typically on `.', repositions to the start of the message if
the message is already visible.  It used to do nothing in this case.

The function `mh-unshar-msg' is renamed `mh-store-msg'.  It now does
uudecoding, too.  Someday it should do MIME.  It remembers the last
directory you used and offers it as the default for next time.

New function `mh-header-display', on `,', displays the message with all
headers, including those normally not displayed.  Type `.' to display
the message normally again.

New function `mh-list-sequences' lists the sequences in use in the
current folder.

New function `mh-version' displays version information about MH and
mh-e.  Please use the output in bug reports.

`mh-quit' now burys the folder buffer and show buffer.


New mh-e hooks and customization variables
==========================================

`mh-pick-mode-hook': new hook called by new mode `mh-pick-mode'.  The
pick buffer didn't used to have its own mode.  Another advantage of
`mh-pick-mode' is that `C-h m' works in the pick buffer.

`mail-citation-hook': new variable for supercite.

`mh-refile-msg-hook': new hook called by `mh-refile-msg' (and
`mh-refile-or-write-again' when refiling).

`mh-msg-folder-hook': new hook used by `mh-refile-msg' and `mh-to-fcc'
to provide a default folder for user prompt.

`mh-show-hook': new hook called by `mh-show'.

`mh-delete-msg-hook': new hook called by `mh-delete-msg'.

`mh-show-mode-hook': new hook called by new mode `mh-show-mode' for
`show-' buffers.

`mh-comp-formfile': new variable so can customize `components' file.

`mh-sortm-args': new variable, a list of extra arguments to be passed to
sortm by `mh-sort-folder'.  Give an argument to `mh-sort-folder' to
suppress this behavior.

`mh-send-prog': new variable so can customize name of `send' program in
case of name conflicts.

`mh-scan-prog': new variable so can customize name of `scan' program to
generate custom effects.

`mh-inc-prog': new variable so can customize name of `inc' program to do
fancy management of incoming messages.

`mh-forwarded-letter-subject': new function used by `mh-forward' to
compute the Subject line of the new message.  It is a small function
which can be replaced by the user for customization.  Uses the new
variable `mh-forward-subject-format', which allows some simple
customizations without rewriting even `mh-forwarded-letter-subject'.

`mh-new-draft-cleaned-headers': new variable, header lines removed by
`mh-edit-again' and `mh-extract-rejected-mail' before offering a message
as a new draft.

`mh-signature-file-name': new variable used by `mh-insert-signature' to
so can customize name of the file to insert.

`mh-read-address': new function called to read all To: and Cc:
addresses.

`mh-msg-folder-hook': new hook used by `mh-refile-msg' and `mh-to-fcc'
to provide a default folder for user prompt.


Key binding changes in mh-e
===========================

`,' runs new function `mh-header-display'.  It is like `.' but it
displays *all* the headers.

`M-#' runs the new function `mh-delete-seq'.  One used to have to type
`C-u M-%' to delete a sequence.

`<' no longer does `mh-first-msg', but `M->' now does `mh-last-msg'.
This allows first and last to be consistent (`>' was taken) and is more
likely to be discovered by chance anyway.

`M-d' runs `mh-redistribute', `r' runs `mh-reply' (on the theory that
the more commonly used function should be easier to type, and the
obscure action of redistributing can be harder to type).

`M-o' changed to `C-o' (`mh-write-msg-to-file').  It was interfering
with arrow keys for some people.

`M-n' now runs `mh-store-msg' (formerly `mh-unshar-msg').

`b' no longer runs `mh-quit'; use `q' instead.  `b' may be used in a
future version for something else.


Minor improvements to mh-e
==========================

The mh-e code is now divided into multiple Emacs Lisp files, so it
starts up faster because Emacs doesn't have to load all of it at once.
(This change also makes it easier for the maintainer to manage things.)

When searching for the directory containing the MH programs, search the
user's PATH in addition to the built-in directories, to increase the
chance of finding the MH programs.

The subject for a forwarded message no longer has ugly square brackets
around it.

The name of the folder is no longer appears twice in the show buffer
mode line.

When typing a folder name in the minibuffer, parent folders complete to
the trailing slash (/), for easier typing of subfolders.

The folder buffer mode name changed from `mh-e scan' or `mh-e show' to
`MH-Folder', which makes the hook name easier to guess.  Added
`mh-showing' to `minor-mode-alist' so there is still an indication in
the mode line of whether messages will be shown automatically.

`mh-rename-seq' does completion on the old sequence name.

If called by a user who has never used MH on this system before, mh-e
runs the MH program `install-mh' to get them set up.

Undo history for previous messages is not kept to avoid wasting memory.

The internal temp buffer used by mh-e has `buffer-offer-save' explicitly
nil.  This change benefits people who change the `buffer-offer-save'
default.


Bug fixes to mh-e
=================

`mh-to-field': don't bomb if no To: field.

`mh-get-new-mail': restore annotations, e.g., cur, even if no new mail.

`mh-rename-seq': verify that the new seq name was accepted by `mark'
before updating state.

`mh-internal-seq': the Previous sequence is not notated, since it would
notate everything scanned.

`mh-read-draft': don't call `find-file-noselect' so an `auto-mode-alist'
doesn't trigger `mh-letter-mode-hook' twice.  Faster, too.

`mh-show': If user moves onto a message that doesn't exist, don't leave
the cursor in the show pane.

`mh-delete-scan-msgs': use `equal', not `=', on the result of
`mh-get-msg-num', since it may be nil.

`mh-get-field': do anchored search so searching for `reply-to:' doesn't
find `in-reply-to:'.

`mh-widen': do nothing if not narrowed.

`mh-clean-message-header': find end of headers even if no body.