comparison lispref/keymaps.texi @ 12067:73dc8205d259

*** empty log message ***
author Karl Heuer <kwzh@gnu.org>
date Mon, 05 Jun 1995 12:23:13 +0000
parents dd97fd55e095
children a6eb5f12b0f3
comparison
equal deleted inserted replaced
12066:b9b0b3f96dc2 12067:73dc8205d259
580 buffer's local keymap and instead of all the minor mode keymaps. This 580 buffer's local keymap and instead of all the minor mode keymaps. This
581 keymap, if any, overrides all other maps that would have been active, 581 keymap, if any, overrides all other maps that would have been active,
582 except for the current global map. 582 except for the current global map.
583 @end defvar 583 @end defvar
584 584
585 @defvar overriding-local-map-menu-flag
586 If this variable is non-@code{nil}, the value of
587 @code{overriding-local-map} can affect the display of the menu bar. The
588 default value is @code{nil}, so @code{overriding-local-map} has no
589 effect on the menu bar.
590
591 Note that @code{overriding-local-map} does affect the execution of key
592 sequences entered using the menu bar, even if it does not affect the
593 menu bar display. So if a menu bar key sequence comes in, you should
594 clear @code{overriding-local-map} before looking up and executing that
595 key sequence. Modes that use @code{overriding-local-map} would
596 typically do this anyway; normally they respond to events that they do
597 not handle by ``unreading'' them and and exiting.
598 @end defvar
599
585 @node Key Lookup 600 @node Key Lookup
586 @section Key Lookup 601 @section Key Lookup
587 @cindex key lookup 602 @cindex key lookup
588 @cindex keymap entry 603 @cindex keymap entry
589 604
911 @kbd{C-f}, and @code{"\M-\C-x"} and @code{"\C-\M-x"} are both read as 926 @kbd{C-f}, and @code{"\M-\C-x"} and @code{"\C-\M-x"} are both read as
912 containing a single @kbd{C-M-x}. You can also use this escape syntax in 927 containing a single @kbd{C-M-x}. You can also use this escape syntax in
913 vectors, as well as others that aren't allowed in strings; one example 928 vectors, as well as others that aren't allowed in strings; one example
914 is @samp{[?\C-\H-x home]}. @xref{Character Type}. 929 is @samp{[?\C-\H-x home]}. @xref{Character Type}.
915 930
931 The key definition and lookup functions accept an alternate syntax for
932 event types in a key sequence that is a vector: you can use a list
933 containing modifier names plus one base event (a character or function
934 key name). For example, @code{(control ?a)} is equivalent to
935 @code{?\C-a} and @code{(hyper control left)} is equivalent to
936 @code{C-H-left}.
937
916 For the functions below, an error is signaled if @var{keymap} is not a 938 For the functions below, an error is signaled if @var{keymap} is not a
917 keymap or if @var{key} is not a string or vector representing a key 939 keymap or if @var{key} is not a string or vector representing a key
918 sequence. You can use event types (symbols) as shorthand for events 940 sequence. You can use event types (symbols) as shorthand for events
919 that are lists. 941 that are lists.
920 942
1583 for the menu bar, the item appears just once. If the user clicks on 1605 for the menu bar, the item appears just once. If the user clicks on
1584 that menu bar item, it brings up a single, combined submenu containing 1606 that menu bar item, it brings up a single, combined submenu containing
1585 all the subcommands of that item---the global subcommands, the local 1607 all the subcommands of that item---the global subcommands, the local
1586 subcommands, and the minor mode subcommands, all together. 1608 subcommands, and the minor mode subcommands, all together.
1587 1609
1610 The variable @code{overriding-local-map} is normally ignored when
1611 determining the menu bar contents. That is, the menu bar is computed
1612 from the keymaps that would be active if @code{overriding-local-map}
1613 were @code{nil}. @xref{Active Keymaps}.
1614
1588 In order for a frame to display a menu bar, its @code{menu-bar-lines} 1615 In order for a frame to display a menu bar, its @code{menu-bar-lines}
1589 parameter must be greater than zero. Emacs uses just one line for the 1616 parameter must be greater than zero. Emacs uses just one line for the
1590 menu bar itself; if you specify more than one line, the other lines 1617 menu bar itself; if you specify more than one line, the other lines
1591 serve to separate the menu bar from the windows in the frame. We 1618 serve to separate the menu bar from the windows in the frame. We
1592 recommend you try 1 or 2 as the value of @code{menu-bar-lines}. @xref{X 1619 recommend you try 1 or 2 as the value of @code{menu-bar-lines}. @xref{X