mirror of
https://git.savannah.gnu.org/git/emacs.git
synced 2025-01-02 11:21:42 +00:00
* keymaps.texi (Key Sequences): Some clarifications.
This commit is contained in:
parent
848a925ea6
commit
39a9bed31b
@ -1,3 +1,7 @@
|
||||
2006-05-25 Chong Yidong <cyd@stupidchicken.com>
|
||||
|
||||
* keymaps.texi (Key Sequences): Some clarifications.
|
||||
|
||||
2006-05-25 Thien-Thi Nguyen <ttn@gnu.org>
|
||||
|
||||
* processes.texi (Bindat Functions): Say "unibyte string"
|
||||
|
@ -82,39 +82,36 @@ and can change when bindings are changed. However, a one-event sequence
|
||||
is always a key sequence, because it does not depend on any prefix keys
|
||||
for its well-formedness.
|
||||
|
||||
At any time, several primary keymaps are @dfn{active}---that is, in
|
||||
use for finding key bindings. These are the @dfn{global map}, which is
|
||||
shared by all buffers; the @dfn{local keymap}, which is usually
|
||||
associated with a specific major mode; and zero or more @dfn{minor mode
|
||||
keymaps}, which belong to currently enabled minor modes. (Not all minor
|
||||
modes have keymaps.) The local keymap bindings shadow (i.e., take
|
||||
precedence over) the corresponding global bindings. The minor mode
|
||||
keymaps shadow both local and global keymaps. @xref{Active Keymaps},
|
||||
for details.
|
||||
|
||||
The Emacs Lisp representation for a key sequence is a string or vector.
|
||||
A key sequence can be represented in Emacs Lisp as either a string
|
||||
or vector. Unless otherwise stated, any Emacs Lisp function that
|
||||
accepts a key sequence as an argument can handle both representations.
|
||||
|
||||
In the string representation, alphanumeric characters ordinarily
|
||||
stand for themselves; for example, @code{"a"} represents @key{a} and
|
||||
and @code{"1"} represents @key{1}. Control character events are
|
||||
and @code{"2"} represents @key{2}. Control character events are
|
||||
prefixed by the substring @code{"\C-"}, and meta characters by
|
||||
@code{"\M-"}; for example, @code{"\C-x"} represents the key @kbd{C-x}.
|
||||
In addition, the @kbd{<TAB>}, @kbd{<RET>}, @kbd{<ESC>}, and
|
||||
@kbd{<DEL>} events are represented by @code{"\t"}, @code{"\r"},
|
||||
@code{"\e"}, and @code{"\d"} respectively. The string representation
|
||||
of a complete key sequence is then obtained by concatenating the
|
||||
string representations of each constituent event; thus, @code{"\C-x"}
|
||||
represents the key sequence @kbd{C-x}.
|
||||
string representations of each constituent event; thus, @code{"\C-xl"}
|
||||
represents the key sequence @kbd{C-x l}.
|
||||
|
||||
Key sequences containing function keys, mouse button events, or
|
||||
non-ASCII characters such as @kbd{C-=} or @kbd{H-a} cannot be
|
||||
represented as strings; they have to be represented as vectors.
|
||||
represented by strings; they have to be represented by vectors.
|
||||
|
||||
In the vector representation, each element of the vector represents
|
||||
a consecutive input element, in its Lisp form. @xref{Input Events}.
|
||||
For example, ordinary keyboard events are represented by Lisp
|
||||
characters (@pxref{Keyboard Events}), so the character @code{?a}
|
||||
represents @key{a}.
|
||||
For example, the vector @code{[?\C-x ?l]} represents the key sequence
|
||||
@kbd{C-x l}.
|
||||
|
||||
For examples of key sequences written in string and vector
|
||||
representations, @ref{Init Rebinding,,, emacs, The GNU Emacs Manual}.
|
||||
|
||||
The @code{kbd} macro provides a convenient way to generate an Emacs
|
||||
Lisp key sequence:
|
||||
|
||||
@defmac kbd keyseq-text
|
||||
This macro converts the text @var{keyseq-text} (a string constant)
|
||||
@ -149,6 +146,16 @@ execution by the command loop). Given an event (or an event type) and a
|
||||
keymap, Emacs can get the event's definition. Events include
|
||||
characters, function keys, and mouse actions (@pxref{Input Events}).
|
||||
|
||||
At any time, several primary keymaps are @dfn{active}---that is, in
|
||||
use for finding key bindings. These are the @dfn{global map}, which is
|
||||
shared by all buffers; the @dfn{local keymap}, which is usually
|
||||
associated with a specific major mode; and zero or more @dfn{minor mode
|
||||
keymaps}, which belong to currently enabled minor modes. (Not all minor
|
||||
modes have keymaps.) The local keymap bindings shadow (i.e., take
|
||||
precedence over) the corresponding global bindings. The minor mode
|
||||
keymaps shadow both local and global keymaps. @xref{Active Keymaps},
|
||||
for details.
|
||||
|
||||
Each keymap is a list whose @sc{car} is the symbol @code{keymap}. The
|
||||
remaining elements of the list define the key bindings of the keymap.
|
||||
A symbol whose function definition is a keymap is also a keymap. Use
|
||||
|
Loading…
Reference in New Issue
Block a user