22 Keymaps
The command bindings of input events are recorded in data structures called keymaps. Each entry in a keymap associates (or binds) an individual event type, either to another keymap or to a command. When an event type is bound to a keymap, that keymap is used to look up the next input event; this continues until a command is found. The whole process is called key lookup.
| • Key Sequences |   | Key sequences as Lisp objects. |
| • Keymap Basics |   | Basic concepts of keymaps. |
| • Format of Keymaps |   | What a keymap looks like as a Lisp object. |
| • Creating Keymaps |   | Functions to create and copy keymaps. |
| • Inheritance and Keymaps |   | How one keymap can inherit the bindings of another keymap. |
| • Prefix Keys |   | Defining a key with a keymap as its definition. |
| • Active Keymaps |   | How Emacs searches the active keymaps for a key binding. |
| • Searching Keymaps |   | A pseudo-Lisp summary of searching active maps. |
| • Controlling Active Maps |   | Each buffer has a local keymap to override the standard (global) bindings. A minor mode can also override them. |
| • Key Lookup |   | Finding a key’s binding in one keymap. |
| • Functions for Key Lookup |   | How to request key lookup. |
| • Changing Key Bindings |   | Redefining a key in a keymap. |
| • Remapping Commands |   | A keymap can translate one command to another. |
| • Translation Keymaps |   | Keymaps for translating sequences of events. |
| • Key Binding Commands |   | Interactive interfaces for redefining keys. |
| • Scanning Keymaps |   | Looking through all keymaps, for printing help. |
| • Menu Keymaps |   | Defining a menu as a keymap. |