1
0
mirror of https://git.savannah.gnu.org/git/emacs.git synced 2024-11-24 07:20:37 +00:00

Remove unread-command-char.

* src/keyboard.c (read_char, requeued_events_pending_p, Finput_pending_p)
(Fdiscard_input, quit_throw_to_read_char, init_keyboard)
(syms_of_keyboard): Remove support for unread-command-char.
* lisp/emacs-lisp/debug.el (debugger-outer-unread-command-char, debug)
(debugger-env-macro): Remove support for unread-command-char.

* lisp/ehelp.el (with-electric-help): Accept functions in
electric-help-form-to-execute.
(electric-help-execute-extended, electric-help-ctrl-x-prefix): Use it.
And replace unread-command-char -> unread-command-events.

* lisp/subr.el (set-temporary-overlay-map): Minimize slightly the impact of
the temporary map re-appearing on emulation-mode-map-alists.

* lisp/emacs-lisp/edebug.el (def-edebug-form-spec): Remove, it's been broken
since 22.1.
This commit is contained in:
Stefan Monnier 2012-09-12 15:16:36 -04:00
parent 8099e36b7e
commit bfeae2cf09
11 changed files with 43 additions and 70 deletions

View File

@ -2738,17 +2738,6 @@ This function converts the string or vector @var{key} to a list of
individual events, which you can put in @code{unread-command-events}.
@end defun
@ignore
@defvar unread-command-char
This variable holds a character to be read as command input.
A value of -1 means ``empty''.
This variable is mostly obsolete now that you can use
@code{unread-command-events} instead; it exists only to support programs
written for Emacs versions 18 and earlier.
@end defvar
@end ignore
@defun input-pending-p
@cindex waiting for command key input
This function determines whether any command input is currently

View File

@ -638,7 +638,7 @@ are deprecated and will be removed eventually.
*** `facemenu-unlisted-faces'
*** `rmail-decode-mime-charset'
*** `last-input-char' and `last-command-char'
*** `last-input-char', `last-command-char', `unread-command-char'.
* Lisp changes in Emacs 24.3

View File

@ -1,3 +1,19 @@
2012-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
* emacs-lisp/debug.el (debugger-outer-unread-command-char, debug)
(debugger-env-macro): Remove support for unread-command-char.
* subr.el (set-temporary-overlay-map): Minimize slightly the impact of
the temporary map re-appearing on emulation-mode-map-alists.
* emacs-lisp/edebug.el (def-edebug-form-spec): Remove, it's been broken
since 22.1.
* ehelp.el (with-electric-help): Accept functions in
electric-help-form-to-execute.
(electric-help-execute-extended, electric-help-ctrl-x-prefix): Use it.
And replace unread-command-char -> unread-command-events.
2012-09-12 Michael Albinus <michael.albinus@gmx.de>
Sync with Tramp 2.2.6.
@ -9,8 +25,8 @@
2012-09-12 Martin Rudalics <rudalics@gmx.at>
* emacs-lisp/debug.el (debugger-previous-window-height): New
variable.
* emacs-lisp/debug.el (debugger-previous-window-height):
New variable.
(debug): When debugger-jumping-flag is non-nil try to restore
height of debugger window. (Bug#8789)

View File

@ -193,7 +193,9 @@ BUFFER is put back into its original major mode."
(replace-buffer-in-windows buffer)
;; must do this outside of save-window-excursion
(bury-buffer buffer))
(eval electric-help-form-to-execute))))
(if (functionp electric-help-form-to-execute)
(funcall electric-help-form-to-execute)
(eval electric-help-form-to-execute)))))
(defun electric-help-command-loop ()
(catch 'exit
@ -349,14 +351,19 @@ will select it.)"
;; continues with execute-extended-command.
(defun electric-help-execute-extended (_prefixarg)
(interactive "p")
(setq electric-help-form-to-execute '(execute-extended-command nil))
(setq electric-help-form-to-execute
(lambda () (execute-extended-command nil)))
(electric-help-retain))
;; This is to be buond to C-x in ehelp mode. Retains ehelp buffer and then
;; continues with ctrl-x prefix.
(defun electric-help-ctrl-x-prefix (_prefixarg)
(interactive "p")
(setq electric-help-form-to-execute '(progn (message nil) (setq unread-command-char ?\C-x)))
(setq electric-help-form-to-execute
(lambda ()
(message nil)
(setq unread-command-events
(append unread-command-events '(?\C-x)))))
(electric-help-retain))

View File

@ -110,10 +110,6 @@ This is to optimize `debugger-make-xrefs'.")
(defvar debugger-outer-track-mouse)
(defvar debugger-outer-last-command)
(defvar debugger-outer-this-command)
;; unread-command-char is obsolete,
;; but we still save and restore it
;; in case some user program still tries to set it.
(defvar debugger-outer-unread-command-char)
(defvar debugger-outer-unread-command-events)
(defvar debugger-outer-unread-post-input-method-events)
(defvar debugger-outer-last-input-event)
@ -185,8 +181,6 @@ first will be printed into the backtrace buffer."
(debugger-outer-track-mouse track-mouse)
(debugger-outer-last-command last-command)
(debugger-outer-this-command this-command)
(debugger-outer-unread-command-char
(with-no-warnings unread-command-char))
(debugger-outer-unread-command-events unread-command-events)
(debugger-outer-unread-post-input-method-events
unread-post-input-method-events)
@ -221,8 +215,6 @@ first will be printed into the backtrace buffer."
(cursor-in-echo-area nil))
(unwind-protect
(save-excursion
(with-no-warnings
(setq unread-command-char -1))
(when (eq (car debugger-args) 'debug)
;; Skip the frames for backtrace-debug, byte-code,
;; and implement-debug-on-entry.
@ -302,8 +294,6 @@ first will be printed into the backtrace buffer."
(setq track-mouse debugger-outer-track-mouse)
(setq last-command debugger-outer-last-command)
(setq this-command debugger-outer-this-command)
(with-no-warnings
(setq unread-command-char debugger-outer-unread-command-char))
(setq unread-command-events debugger-outer-unread-command-events)
(setq unread-post-input-method-events
debugger-outer-unread-post-input-method-events)
@ -605,16 +595,7 @@ Applies to the frame whose line point is on in the backtrace."
(cursor-in-echo-area debugger-outer-cursor-in-echo-area))
(set-match-data debugger-outer-match-data)
(prog1
(let ((save-ucc (with-no-warnings unread-command-char)))
(unwind-protect
(progn
(with-no-warnings
(setq unread-command-char debugger-outer-unread-command-char))
(prog1 (progn ,@body)
(with-no-warnings
(setq debugger-outer-unread-command-char unread-command-char))))
(with-no-warnings
(setq unread-command-char save-ucc))))
(progn ,@body)
(setq debugger-outer-match-data (match-data))
(setq debugger-outer-load-read-function load-read-function)
(setq debugger-outer-overriding-terminal-local-map

View File

@ -235,11 +235,6 @@ If the result is non-nil, then break. Errors are ignored."
;;; Form spec utilities.
(defmacro def-edebug-form-spec (symbol spec-form)
"For compatibility with old version."
(def-edebug-spec symbol (eval spec-form)))
(make-obsolete 'def-edebug-form-spec 'def-edebug-spec "22.1")
(defun get-edebug-spec (symbol)
;; Get the spec of symbol resolving all indirection.
(let ((edebug-form-spec nil)

View File

@ -4210,7 +4210,7 @@ NUMBER-OF-STATIC-VARIABLES:"
;; this will select the buffer from which the buffer menu was
;; invoked. But this buffer is not displayed in the buffer list if
;; it isn't a tree buffer. I therefore let the buffer menu command
;; loop read the command `p' via `unread-command-char'. This command
;; loop read the command `p' via `unread-command-events'. This command
;; has no effect since we are on the first line of the buffer.
(defvar electric-buffer-menu-mode-hook nil)

View File

@ -1250,11 +1250,6 @@ is converted into a string by expressing it in decimal."
'mode-line-inverse-video
"use the appropriate faces instead."
"21.1")
(make-obsolete-variable
'unread-command-char
"use `unread-command-events' instead. That variable is a list of events
to reread, so it now uses nil to mean `no event', instead of -1."
"before 19.15")
;; Lisp manual only updated in 22.1.
(define-obsolete-variable-alias 'executing-macro 'executing-kbd-macro
@ -3928,6 +3923,7 @@ When KEEP-PRED is nil, the temporary keymap is used only once."
(lookup-key ',map
(this-command-keys-vector))))
(t `(funcall ',keep-pred)))
(set ',overlaysym nil) ;Just in case.
(remove-hook 'pre-command-hook ',clearfunsym)
(setq emulation-mode-map-alists
(delq ',alist emulation-mode-map-alists))))))

View File

@ -1,3 +1,9 @@
2012-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
* keyboard.c (read_char, requeued_events_pending_p, Finput_pending_p)
(Fdiscard_input, quit_throw_to_read_char, init_keyboard)
(syms_of_keyboard): Remove support for unread-command-char.
2012-09-12 Eli Zaretskii <eliz@gnu.org>
* w32proc.c (sys_kill): If PID is our process ID and the signal is

View File

@ -1164,7 +1164,7 @@ set_internal (Lisp_Object symbol, Lisp_Object newval, Lisp_Object where,
the default binding is loaded, the loaded binding may be the
wrong one. */
if (!EQ (blv->where, where)
/* Also unload a global binding (if the var is local_if_set). */
/* Also unload a global binding (if the var is local_if_set). */
|| (EQ (blv->valcell, blv->defcell)))
{
/* The currently loaded binding is not necessarily valid.

View File

@ -2366,15 +2366,6 @@ read_char (int commandflag, ptrdiff_t nmaps, Lisp_Object *maps,
goto reread_first;
}
if (unread_command_char != -1)
{
XSETINT (c, unread_command_char);
unread_command_char = -1;
reread = 1;
goto reread_first;
}
if (CONSP (Vunread_command_events))
{
int was_disabled = 0;
@ -2559,7 +2550,6 @@ read_char (int commandflag, ptrdiff_t nmaps, Lisp_Object *maps,
&& !NILP (prev_event) && ! EVENT_HAS_PARAMETERS (prev_event)
/* Don't bring up a menu if we already have another event. */
&& NILP (Vunread_command_events)
&& unread_command_char < 0
&& !detect_input_pending_run_timers (0))
{
c = read_char_minibuf_menu_prompt (commandflag, nmaps, maps);
@ -2695,8 +2685,7 @@ read_char (int commandflag, ptrdiff_t nmaps, Lisp_Object *maps,
&& !EQ (XCAR (prev_event), Qmenu_bar)
&& !EQ (XCAR (prev_event), Qtool_bar)
/* Don't bring up a menu if we already have another event. */
&& NILP (Vunread_command_events)
&& unread_command_char < 0)
&& NILP (Vunread_command_events))
{
c = read_char_x_menu_prompt (nmaps, maps, prev_event, used_mouse_menu);
@ -10453,7 +10442,7 @@ clear_input_pending (void)
int
requeued_events_pending_p (void)
{
return (!NILP (Vunread_command_events) || unread_command_char != -1);
return (!NILP (Vunread_command_events));
}
@ -10463,7 +10452,7 @@ Actually, the value is nil only if we can be sure that no input is available;
if there is a doubt, the value is t. */)
(void)
{
if (!NILP (Vunread_command_events) || unread_command_char != -1
if (!NILP (Vunread_command_events)
|| !NILP (Vunread_post_input_method_events)
|| !NILP (Vunread_input_method_events))
return (Qt);
@ -10651,7 +10640,6 @@ Also end any kbd macro being defined. */)
update_mode_lines++;
Vunread_command_events = Qnil;
unread_command_char = -1;
discard_tty_input ();
@ -10991,7 +10979,6 @@ quit_throw_to_read_char (int from_signal)
input_pending = 0;
Vunread_command_events = Qnil;
unread_command_char = -1;
#if 0 /* Currently, sit_for is called from read_char without turning
off polling. And that can call set_waiting_for_input.
@ -11378,12 +11365,11 @@ delete_kboard (KBOARD *kb)
void
init_keyboard (void)
{
/* This is correct before outermost invocation of the editor loop */
/* This is correct before outermost invocation of the editor loop. */
command_loop_level = -1;
immediate_quit = 0;
quit_char = Ctl ('g');
Vunread_command_events = Qnil;
unread_command_char = -1;
timer_idleness_start_time = invalid_emacs_time ();
total_keys = 0;
recent_keys_index = 0;
@ -11716,9 +11702,6 @@ as they will already have been added once as they were read for the first time.
An element of the form (t . EVENT) forces EVENT to be added to that list. */);
Vunread_command_events = Qnil;
DEFVAR_INT ("unread-command-char", unread_command_char,
doc: /* If not -1, an object to be read as next command input event. */);
DEFVAR_LISP ("unread-post-input-method-events", Vunread_post_input_method_events,
doc: /* List of events to be processed as input by input methods.
These events are processed before `unread-command-events'