@c -*-texinfo-*-
@c This is part of the GNU Emacs Lisp Reference Manual.
@c Copyright (C) 1990, 1991, 1992, 1993, 1999, 2001, 2002, 2003, 2004,
@c   2005, 2006, 2007, 2008, 2009, 2010, 2011
@c   Free Software Foundation, Inc.
@c See the file elisp.texi for copying conditions.
@setfilename ../../info/maps
@node Standard Keymaps, Standard Hooks, Standard Buffer-Local Variables, Top
@appendix Standard Keymaps
@cindex standard keymaps

The following symbols are used as the names for various keymaps.
Some of these exist when Emacs is first started, others are
loaded only when their respective mode is used.  This is not
an exhaustive list.

Several keymaps are used in the minibuffer.  @xref{Completion Commands}.

Almost all of these maps are used as local maps.  Indeed, of the modes
that presently exist, only Vip mode and Terminal mode ever change the
global keymap.

@table @code
@item apropos-mode-map
@vindex apropos-mode-map
A sparse keymap for @code{apropos} buffers.

@item Buffer-menu-mode-map
@vindex Buffer-menu-mode-map
A full keymap used by Buffer Menu mode.

@item c-mode-map
@vindex c-mode-map
A sparse keymap used by C mode.

@item command-history-map
@vindex command-history-map
A full keymap used by Command History mode.

@item ctl-x-4-map
A sparse keymap for subcommands of the prefix @kbd{C-x 4}.

@item ctl-x-5-map
A sparse keymap for subcommands of the prefix @kbd{C-x 5}.

@item ctl-x-map
A full keymap for @kbd{C-x} commands.

@item custom-mode-map
A full keymap for Custom mode.

@item debugger-mode-map
@vindex debugger-mode-map
A full keymap used by Debugger mode.

@item dired-mode-map
@vindex dired-mode-map
A full keymap for @code{dired-mode} buffers.

@item edit-abbrevs-map
@vindex edit-abbrevs-map
A sparse keymap used in @code{edit-abbrevs}.

@item edit-tab-stops-map
@vindex edit-tab-stops-map
A sparse keymap used in @code{edit-tab-stops}.

@item electric-buffer-menu-mode-map
@vindex electric-buffer-menu-mode-map
A full keymap used by Electric Buffer Menu mode.

@item electric-history-map
@vindex electric-history-map
A full keymap used by Electric Command History mode.

@item emacs-lisp-mode-map
@vindex emacs-lisp-mode-map
A sparse keymap used by Emacs Lisp mode.

@item esc-map
A full keymap for @kbd{ESC} (or @kbd{Meta}) commands.

@item facemenu-menu
@vindex facemenu-menu
The sparse keymap that displays the Text Properties menu.

@item facemenu-background-menu
@vindex facemenu-background-menu
The sparse keymap that displays the Background Color submenu of the Text
Properties menu.

@item facemenu-face-menu
@vindex facemenu-face-menu
The sparse keymap that displays the Face submenu of the Text Properties menu.

@item facemenu-foreground-menu
@vindex facemenu-foreground-menu
The sparse keymap that displays the Foreground Color submenu of the Text
Properties menu.

@item facemenu-indentation-menu
@vindex facemenu-indentation-menu
The sparse keymap that displays the Indentation submenu of the Text
Properties menu.

@item facemenu-justification-menu
@vindex facemenu-justification-menu
The sparse keymap that displays the Justification submenu of the Text
Properties menu.

@item facemenu-special-menu
@vindex facemenu-special-menu
The sparse keymap that displays the Special Props submenu of the Text
Properties menu.

@item local-function-key-map
The keymap for translating key sequences to preferred alternatives.@*
If there are none, then it contains an empty sparse keymap.
@xref{Translation Keymaps}.

@item fundamental-mode-map
@vindex fundamental-mode-map
The sparse keymap for Fundamental mode.@*
It is empty and should not be changed.

@item global-map
The full keymap containing default global key bindings.@*
Modes should not modify the Global map.

@item grep-mode-map
@vindex grep-mode-map
The keymap for @code{grep-mode} buffers.

@item help-map
The sparse keymap for the keys that follow the help character @kbd{C-h}.

@item help-mode-map
@vindex help-mode-map
The sparse keymap for Help mode.

@item Helper-help-map
@vindex Helper-help-map
A full keymap used by the help utility package.@*
It has the same keymap in its value cell and in its function
cell.

@item Info-edit-map
@vindex Info-edit-map
A sparse keymap used by the @kbd{e} command of Info.

@item Info-mode-map
@vindex Info-mode-map
A sparse keymap containing Info commands.

@item input-decode-map
The keymap for translating keypad and function keys.@*
If there are none, then it contains an empty sparse keymap.
@xref{Translation Keymaps}.

@item isearch-mode-map
@vindex isearch-mode-map
A keymap that defines the characters you can type within incremental
search.

@item key-translation-map
A keymap for translating keys.  This one overrides ordinary key
bindings, unlike @code{local-function-key-map}.  @xref{Translation
Keymaps}.

@item kmacro-map
@vindex kmacro-map
A sparse keymap for keys that follows the @kbd{C-x C-k} prefix
search.

@item lisp-interaction-mode-map
@vindex lisp-interaction-mode-map
A sparse keymap used by Lisp Interaction mode.

@item lisp-mode-map
@vindex lisp-mode-map
A sparse keymap used by Lisp mode.

@item menu-bar-edit-menu
@vindex menu-bar-edit-menu
The keymap which displays the Edit menu in the menu bar.

@item menu-bar-file-menu
@vindex menu-bar-file-menu
The keymap which displays the File menu in the menu bar.

@item menu-bar-help-menu
@vindex menu-bar-help-menu
The keymap which displays the Help menu in the menu bar.

@item menu-bar-mule-menu
@vindex menu-bar-mule-menu
The keymap which displays the Mule menu in the menu bar.

@item menu-bar-search-menu
@vindex menu-bar-search-menu
The keymap which displays the Search menu in the menu bar.

@item menu-bar-tools-menu
@vindex menu-bar-tools-menu
The keymap which displays the Tools menu in the menu bar.

@item mode-specific-map
The keymap for characters following @kbd{C-c}.  Note, this is in the
global map.  This map is not actually mode specific: its name was chosen
to be informative for the user in @kbd{C-h b} (@code{display-bindings}),
where it describes the main use of the @kbd{C-c} prefix key.

@item multi-query-replace-map
A sparse keymap that extends @code{query-replace-map} for multi-buffer
replacements.  @xref{Search and Replace, query-replace-map}.

@item occur-mode-map
@vindex occur-mode-map
A sparse keymap used by Occur mode.

@item query-replace-map
A sparse keymap used for responses in @code{query-replace} and related
commands; also for @code{y-or-n-p} and @code{map-y-or-n-p}.  The functions
that use this map do not support prefix keys; they look up one event at a
time.

@item search-map
A sparse keymap that provides global bindings for search-related
commands.

@item text-mode-map
@vindex text-mode-map
A sparse keymap used by Text mode.

@item tool-bar-map
The keymap defining the contents of the tool bar.

@item view-mode-map
@vindex view-mode-map
A full keymap used by View mode.
@end table

