+ DEFVAR_LISP ("menu-accelerator-prefix", &Vmenu_accelerator_prefix /*
+Prefix key(s) that must be typed before menu accelerators will be activated.
+Set this to a value acceptable by define-key.
+
+NOTE: This currently only has any effect under X Windows.
+*/ );
+ Vmenu_accelerator_prefix = Qnil;
+
+ DEFVAR_LISP ("menu-accelerator-modifiers", &Vmenu_accelerator_modifiers /*
+Modifier keys which must be pressed to get to the top level menu accelerators.
+This is a list of modifier key symbols. All modifier keys must be held down
+while a valid menu accelerator key is pressed in order for the top level
+menu to become active.
+
+NOTE: This currently only has any effect under X Windows.
+
+See also menu-accelerator-enabled and menu-accelerator-prefix.
+*/ );
+ Vmenu_accelerator_modifiers = list1 (Qmeta);
+
+ DEFVAR_LISP ("menu-accelerator-enabled", &Vmenu_accelerator_enabled /*
+Whether menu accelerator keys can cause the menubar to become active.
+If 'menu-force or 'menu-fallback, then menu accelerator keys can
+be used to activate the top level menu. Once the menubar becomes active, the
+accelerator keys can be used regardless of the value of this variable.
+
+menu-force is used to indicate that the menu accelerator key takes
+precedence over bindings in the current keymap(s). menu-fallback means
+that bindings in the current keymap take precedence over menu accelerator keys.
+Thus a top level menu with an accelerator of "T" would be activated on a
+keypress of Meta-t if menu-accelerator-enabled is menu-force.
+However, if menu-accelerator-enabled is menu-fallback, then
+Meta-t will not activate the menubar and will instead run the function
+transpose-words, to which it is normally bound.
+
+See also menu-accelerator-modifiers and menu-accelerator-prefix.
+*/ );
+ Vmenu_accelerator_enabled = Qnil;
+
+ DEFVAR_LISP ("menu-accelerator-map", &Vmenu_accelerator_map /*
+Keymap for use when the menubar is active.
+The actions menu-quit, menu-up, menu-down, menu-left, menu-right,
+menu-select and menu-escape can be mapped to keys in this map.
+NOTE: This currently only has any effect under X Windows.
+
+menu-quit Immediately deactivate the menubar and any open submenus without
+ selecting an item.
+menu-up Move the menu cursor up one row in the current menu. If the
+ move extends past the top of the menu, wrap around to the bottom.
+menu-down Move the menu cursor down one row in the current menu. If the
+ move extends past the bottom of the menu, wrap around to the top.
+ If executed while the cursor is in the top level menu, move down
+ into the selected menu.
+menu-left Move the cursor from a submenu into the parent menu. If executed
+ while the cursor is in the top level menu, move the cursor to the
+ left. If the move extends past the left edge of the menu, wrap
+ around to the right edge.
+menu-right Move the cursor into a submenu. If the cursor is located in the
+ top level menu or is not currently on a submenu heading, then move
+ the cursor to the next top level menu entry. If the move extends
+ past the right edge of the menu, wrap around to the left edge.
+menu-select Activate the item under the cursor. If the cursor is located on
+ a submenu heading, then move the cursor into the submenu.
+menu-escape Pop up to the next level of menus. Moves from a submenu into its
+ parent menu. From the top level menu, this deactivates the
+ menubar.
+
+This keymap can also contain normal key-command bindings, in which case the
+menubar is deactivated and the corresponding command is executed.
+
+The action bindings used by the menu accelerator code are designed to mimic
+the actions of menu traversal keys in a commonly used PC operating system.
+*/ );
+