Commit 107fd03d authored by Richard M. Stallman's avatar Richard M. Stallman

(Vdefine_key_rebound_commands): New variable.

(syms_of_keymap): Set up Lisp var.
(Fdefine_key): Put new definition onto Vdefine_key_rebound_commands.
parent cd2db344
......@@ -73,6 +73,12 @@ Lisp_Object Vminor_mode_map_alist;
documentation. */
Lisp_Object Vfunction_key_map;
/* A list of all commands given new bindings since a certain time
when nil was stored here.
This is used to speed up recomputation of menu key equivalents
when Emacs starts up. t means don't record anything here. */
Lisp_Object Vdefine_key_rebound_commands;
Lisp_Object Qkeymapp, Qkeymap, Qnon_ascii;
/* A char with the CHAR_META bit set in a vector or the 0200 bit set
......@@ -594,6 +600,9 @@ the front of KEYMAP.")
if (length == 0)
return Qnil;
if (SYMBOLP (def) && !EQ (Vdefine_key_rebound_commands, Qt))
Vdefine_key_rebound_commands = Fcons (def, Vdefine_key_rebound_commands);
GCPRO3 (keymap, key, def);
if (VECTORP (key))
......@@ -2381,6 +2390,12 @@ syms_of_keymap ()
Fset (intern ("ctl-x-map"), control_x_map);
Ffset (intern ("Control-X-prefix"), control_x_map);
DEFVAR_LISP ("define-key-rebound-commands", &Vdefine_key_rebound_commands,
"List of commands given new key bindings recently.\n\
This is used for internal purposes during Emacs startup;\n\
don't alter it yourself.");
Vdefine_key_rebound_commands = Qt;
DEFVAR_LISP ("minibuffer-local-map", &Vminibuffer_local_map,
"Default keymap to use when reading from the minibuffer.");
Vminibuffer_local_map = Fmake_sparse_keymap (Qnil);
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment