it.
If there is no @key{META} key, you can still type Meta characters
-using two-character sequences starting with @key{ESC}. Thus, you can enter
-@kbd{M-a} by typing @kbd{@key{ESC} a}. You can enter @kbd{C-M-a} by
-typing @kbd{@key{ESC} C-a}. @key{ESC} is allowed on terminals with
-@key{META} keys, too, in case you have formed a habit of using it.
-
+using two-character sequences starting with @key{ESC}. Thus, you can
+enter @kbd{M-a} by typing @kbd{@key{ESC} a}. You can enter
+@kbd{C-M-a} by typing @kbd{@key{ESC} C-a}. Unlike @key{META}, which
+modifies other characters, @key{ESC} is a separate character. You
+don't hold down @key{ESC} while typing the next character; instead,
+you press it and release it, then you enter the next character.
+@key{ESC} is allowed on terminals with @key{META} keys, too, in case
+you have formed a habit of using it.
+
The X Window System provides several other modifier keys that can be
applied to any input character. These are called @key{SUPER},
@key{HYPER} and @key{ALT}. We write @samp{s-}, @samp{H-} and @samp{A-}
modifiers. But you can assign them meanings of your own by customizing
Emacs.
+ If your keyboard lacks one of these modifier keys, you can enter it
+using @kbd{C-x @@}: @kbd{C-x @@ h} adds the ``hyper'' flag to the next
+character, @kbd{C-x @@ s} adds the ``super'' flag, and @kbd{C-x @@ a}
+adds the ``alt'' flag. For instance, @kbd{C-x @@ h C-a} is a way to
+enter @kbd{Hyper-Control-a}. (Unfortunately there is no way to add
+two modifiers by using @kbd{C-x @@} twice for the same character,
+because the first one goes to work on the @kbd{C-x}.)
+
Keyboard input includes keyboard keys that are not characters at all:
for example function keys and arrow keys. Mouse buttons are also
outside the gamut of characters. You can modify these events with the
If you do make or eliminate prefix keys, that changes the set of
possible key sequences. For example, if you redefine @kbd{C-f} as a
prefix, @kbd{C-f C-k} automatically becomes a key (complete, unless you
-define it too as a prefix). Conversely, if you remove the prefix
+define that too as a prefix). Conversely, if you remove the prefix
definition of @kbd{C-x 4}, then @kbd{C-x 4 f} (or @kbd{C-x 4
@var{anything}}) is no longer a key.
work---for historical reasons, they have other meanings for @kbd{C-h}
which are not easy to change. But @key{F1} should work for all prefix
keys.
-
+
@node Commands, Text Characters, Keys, Top
@section Keys and Commands
after mentioning the key that runs it. For example, we will say that
``The command @kbd{C-n} (@code{next-line}) moves point vertically
down,'' meaning that @code{next-line} is a command that moves vertically
-down and @kbd{C-n} is a key that is standardly bound to it.
+down, and @kbd{C-n} is a key that is normally bound to it.
While we are on the subject of information for customization only,
it's a good time to tell you about @dfn{variables}. Often the