If you're an experienced Emacs user, you can skip the following conventions and definition of terms and go directly to the next section (see Getting Started).
In general, functions in this text refer to Emacs Lisp functions
that one would call from within Emacs Lisp programs (for example,
(mh-inc-folder)). On the other hand, commands are those
things that are run by the user, such as i or M-x
mh-inc-folder. Programs outside of Emacs are specifically called MH
commands, shell commands, or Unix commands.
The conventions for key names are as follows:
Since some keyboards don't have a <META> key, you can generate
M-x, for example, by pressing <ESC> (Escape),
releasing it, and then pressing the x key.
A prefix argument allows you to pass an argument to any Emacs function. To pass an argument, type C-u before the Emacs command or keystroke. Numeric arguments can be passed as well. For example, to insert five f's, use C-u 5 f. There is a default of four when using C-u, and you can use multiple prefix arguments to provide arguments of powers of four. To continue our example, you could insert four f's with C-u f, 16 f's with C-u C-u f, 64 f's with C-u C-u C-u f, and so on. Numeric and valueless negative arguments can also be inserted with the <META> key. Examples include M-5 to specify an argument of 5, or M-- which specifies a negative argument with no particular value.
The prefix C-u or M- is not necessary in MH-E's MH-Folder mode (see Reading Mail Tour). In this mode, simply enter the numerical argument before entering the command.
Emacs uses variables to hold values. These can be changed via calls to the function
Variables in MH-E that are normally modified by the user are called options and are modified through the customize functions (such as M-x customize-option or M-x customize-group). See section Easy Customization in The GNU Emacs Manual. See Options.
You can specify various styles for displaying text using faces. MH-E provides a set of faces that you can use to personalize the look of your MH-E buffers. Use the command M-x customize-face to do this. See section Face Customization in The GNU Emacs Manual.
Commands often offer hooks which enable you to extend or modify
the way a command works.
Hooks in The GNU Emacs Manual
for a description about normal hooks and abnormal hooks.
MH-E uses normal hooks in nearly all cases, so you can assume that we
are talking about normal hooks unless we explicitly mention that a
hook is abnormal. We also follow the conventions described in that
section: the name of the abnormal hooks end in
-functions and all
the rest of the MH-E hooks end in
-hook. You can add hooks with
There are several other terms that are used in Emacs that you should know. The point is where the cursor currently is. You can save your current place in the file by setting a mark. This operation is useful in several ways. The mark can be later used when defining a region, which is the text between the point and mark. Many commands operate on regions, such as those for deleting text or filling paragraphs. A mark can be set with C-@ (or C-<SPC>).
The minibuffer is the bottom line of the Emacs window, where all prompting and multiple-character input is directed. You can use completion to enter values such as folders. Completion means that Emacs fills in text for you when you type <SPC> or <TAB>. A second <SPC> or <TAB> will list all possibilities at that point. See the section Completion in The GNU Emacs Manual. Note that <SPC> cannot be used for completing filenames and folders.
The minibuffer is also where you enter Emacs function names after
typing M-x. For example, in the preface, I mentioned that you
could obtain help with C-h t (
this means is that you can get a tutorial by typing either C-h t
or M-x help-with-tutorial. In the latter case, you are prompted
for ‘help-with-tutorial’ in the minibuffer after typing
The ‘~’ notation in filenames represents your home directory.
This notation is used by many shells including bash,
tcsh, and csh. It is analogous to the environment
variable ‘$HOME’. For example, ~/.emacs can be written
$HOME/.emacs or using the absolute path as in
In case of trouble: Emacs can be interrupted at any time with C-g. For example, if you've started a command that requests that you enter something in the minibuffer, but then you change your mind, type C-g and you'll be back where you started. If you want to exit Emacs entirely, use C-x C-c.
 If you are using Version 20 or earlier of Emacs, you will need to use the <DEL> key.