changeset 13309:499e9df6c0f6

(Fcommand_execute): New arg KEYS. Callers changed. (read_char): Specify KEYS when handling Vspecial_event_map.
author Richard M. Stallman <rms@gnu.org>
date Fri, 27 Oct 1995 21:57:33 +0000
parents 99457b67e20c
children 5280c707658e
files src/keyboard.c
diffstat 1 files changed, 10 insertions(+), 8 deletions(-) [+]
line wrap: on
line diff
--- a/src/keyboard.c	Fri Oct 27 21:55:33 1995 +0000
+++ b/src/keyboard.c	Fri Oct 27 21:57:33 1995 +0000
@@ -1380,7 +1380,7 @@
 	  nonundocount = 0;
 	  if (NILP (current_kboard->Vprefix_arg))
 	    Fundo_boundary ();
-	  Fcommand_execute (this_command, Qnil);
+	  Fcommand_execute (this_command, Qnil, Qnil);
 
 	}
     directly_done: ;
@@ -2067,7 +2067,7 @@
   if (!NILP (tem))
     {
       last_input_char = c;
-      Fcommand_execute (tem, Qnil);
+      Fcommand_execute (tem, Qnil, Fvector (1, &last_input_char));
       goto retry;
     }
 
@@ -6242,14 +6242,16 @@
   return make_event_array (i, keybuf);
 }
 
-DEFUN ("command-execute", Fcommand_execute, Scommand_execute, 1, 2, 0,
+DEFUN ("command-execute", Fcommand_execute, Scommand_execute, 1, 3, 0,
  "Execute CMD as an editor command.\n\
 CMD must be a symbol that satisfies the `commandp' predicate.\n\
 Optional second arg RECORD-FLAG non-nil\n\
 means unconditionally put this command in `command-history'.\n\
-Otherwise, that is done only if an arg is read using the minibuffer.")
-     (cmd, record)
-     Lisp_Object cmd, record;
+Otherwise, that is done only if an arg is read using the minibuffer.\n\
+The argument KEYS specifies the value to use instead of (this-command-keys)\n\
+when reading the arguments; if it is nil, (this_command_key_count) is used.")
+     (cmd, record, keys)
+     Lisp_Object cmd, record, keys;
 {
   register Lisp_Object final;
   register Lisp_Object tem;
@@ -6305,7 +6307,7 @@
       backtrace.nargs = 1;
       backtrace.evalargs = 0;
 
-      tem = Fcall_interactively (cmd, record);
+      tem = Fcall_interactively (cmd, record, keys);
 
       backtrace_list = backtrace.next;
       return tem;
@@ -6422,7 +6424,7 @@
 	}
     }
 
-  return Fcommand_execute (function, Qt);
+  return Fcommand_execute (function, Qt, Qnil);
 }
 
 /* Find the set of keymaps now active.