mh-e: Conventions
1 GNU Emacs Terms and Conventions
*********************************
If you’re an experienced Emacs user, you can skip the following
conventions and definition of terms and go directly to the next section
(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:
‘C-x’
Hold down the <CTRL> (Control) key and press the ‘x’ key.
‘M-x’
Hold down the <META> or <ALT> key and press the ‘x’ key.
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.
‘<RET>’
Press the <RETURN> or <ENTER> key. This is normally used to
complete a command.
‘<SPC>’
Press the space bar.
‘<TAB>’
Press the <TAB> key.
‘<DEL>’
Press the <DELETE> key.
‘<BS>’
Press the <BACKSPACE> key(1).
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
(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 ‘setq’ in ‘~/.emacs’.
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’). (emacs)Easy
Customization, in ‘The GNU Emacs Manual’. 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.
(emacs)Face Customization, in ‘The GNU Emacs Manual’.
Commands often offer “hooks” which enable you to extend or modify the
way a command works. Hooks (emacs)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 either
‘customize-option’ or ‘add-hook’.
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.
Completion (emacs)Completion. 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’ (‘help-with-tutorial’). What 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 ‘M-x’.
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 ‘/home/wohler/.emacs’ instead.
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’.
---------- Footnotes ----------
(1) If you are using Version 20 or earlier of Emacs, you will need to
use the <DEL> key.