This chapter begins the meat of the manual which goes into more detail about every MH-E command and option.
There are many commands, but don't get intimidated. There are command
summaries at the beginning of each chapter. In case you have or would
like to rebind the keys, the command summaries also list the
associated Emacs Lisp function. Furthermore, even if you're stranded
on a desert island with a laptop and are without your manuals, you can
get a summary of all these commands with GNU Emacs built-in help: use
C-h m (
describe-mode) for a brief summary of commands,
mh-help) for an even briefer summary1 (C-c ? in MH-Letter mode), or C-h
i to read this manual via Info. The built-in help is quite good; try
running C-h C-h. This brings up a list of available help topics,
one of which displays the documentation for a given key (like C-h
k C-n). Another useful help feature is to view the manual section
that describes a given key (such as C-h K i). In addition,
review Conventions, if any of the GNU Emacs conventions are
strange to you.
In addition to all of the commands, it is also possible to reconfigure MH-E to fit the needs of even the most demanding user. The following chapters also describe all of the options, show the defaults, and make recommendations for customization.
However, when customizing your mail environment, first try to change what you want in MH, and only change MH-E if changing MH is not possible. That way you will get the same behavior inside and outside GNU Emacs. Note that MH-E does not provide hooks for customizations that can be done in MH; this omission is intentional.
I hope I've included enough examples here to get you well on your way. If you want to explore Emacs Lisp further, a programming manual does exist, 2 and you can look at the code itself for examples. Look in the Emacs Lisp directory on your system (such as /usr/local/share/emacs/lisp/mh-e) and find all the mh-*.el files there. When calling MH-E and other Emacs Lisp functions directly from Emacs Lisp code, you'll need to know the correct arguments. Use the built-in help for this. For example, try C-h f mh-execute-commands <RET>. If you write your own functions, please do not prefix your symbols (variables and functions) with ‘mh-’. This prefix is reserved for the MH-E package. To avoid conflicts with existing MH-E symbols, use a prefix like ‘my-’ or your initials. (Unless, of course, your initials happen to be mh!)