mirror of
git://git.sv.gnu.org/emacs.git
synced 2026-02-17 10:27:41 +00:00
* src/keyboard.c (command_loop_1): If command is nil, call `undefined'.
* lisp/subr.el (undefined): Add missing behavior from the C code for unbound keys.
This commit is contained in:
parent
dcd163ac99
commit
4c9797cb77
4 changed files with 18 additions and 22 deletions
|
|
@ -1,5 +1,8 @@
|
|||
2013-10-29 Stefan Monnier <monnier@iro.umontreal.ca>
|
||||
|
||||
* subr.el (undefined): Add missing behavior from the C code for
|
||||
unbound keys.
|
||||
|
||||
* rect.el: Use lexical-binding. Add new rectangular region support.
|
||||
(rectangle-mark): New command.
|
||||
(rectangle--region): New var.
|
||||
|
|
|
|||
10
lisp/subr.el
10
lisp/subr.el
|
|
@ -586,7 +586,15 @@ saving keyboard macros (see `edmacro-mode')."
|
|||
(defun undefined ()
|
||||
"Beep to tell the user this binding is undefined."
|
||||
(interactive)
|
||||
(ding))
|
||||
(ding)
|
||||
(message "%s is undefined" (key-description (this-single-command-keys)))
|
||||
(setq defining-kbd-macro nil)
|
||||
(force-mode-line-update)
|
||||
;; If this is a down-mouse event, don't reset prefix-arg;
|
||||
;; pass it to the command run by the up event.
|
||||
(setq prefix-arg
|
||||
(when (memq 'down (event-modifiers last-command-event))
|
||||
current-prefix-arg)))
|
||||
|
||||
;; Prevent the \{...} documentation construct
|
||||
;; from mentioning keys that run this command.
|
||||
|
|
|
|||
|
|
@ -1,3 +1,7 @@
|
|||
2013-10-29 Stefan Monnier <monnier@iro.umontreal.ca>
|
||||
|
||||
* keyboard.c (command_loop_1): If command is nil, call `undefined'.
|
||||
|
||||
2013-10-29 Paul Eggert <eggert@cs.ucla.edu>
|
||||
|
||||
* insdel.c: Fix minor problems found by static checking.
|
||||
|
|
|
|||
|
|
@ -1510,27 +1510,8 @@ command_loop_1 (void)
|
|||
already_adjusted = 0;
|
||||
|
||||
if (NILP (Vthis_command))
|
||||
{
|
||||
/* nil means key is undefined. */
|
||||
Lisp_Object keys = Fvector (i, keybuf);
|
||||
keys = Fkey_description (keys, Qnil);
|
||||
bitch_at_user ();
|
||||
message_with_string ("%s is undefined", keys, 0);
|
||||
kset_defining_kbd_macro (current_kboard, Qnil);
|
||||
update_mode_lines = 1;
|
||||
/* If this is a down-mouse event, don't reset prefix-arg;
|
||||
pass it to the command run by the up event. */
|
||||
if (EVENT_HAS_PARAMETERS (last_command_event))
|
||||
{
|
||||
Lisp_Object breakdown
|
||||
= parse_modifiers (EVENT_HEAD (last_command_event));
|
||||
int modifiers = XINT (XCAR (XCDR (breakdown)));
|
||||
if (!(modifiers & down_modifier))
|
||||
kset_prefix_arg (current_kboard, Qnil);
|
||||
}
|
||||
else
|
||||
kset_prefix_arg (current_kboard, Qnil);
|
||||
}
|
||||
/* nil means key is undefined. */
|
||||
call0 (Qundefined);
|
||||
else
|
||||
{
|
||||
/* Here for a command that isn't executed directly. */
|
||||
|
|
|
|||
Loading…
Reference in a new issue