diff options
| author | Richard M. Stallman | 1996-09-28 20:38:18 +0000 |
|---|---|---|
| committer | Richard M. Stallman | 1996-09-28 20:38:18 +0000 |
| commit | c631c234c097c887302e07b9997cedbe17e05308 (patch) | |
| tree | 22fb15c6a3aaeedb32a76e79ef470fcad476c216 /src | |
| parent | 5dd9db3bbdb22b71459731423b693110756ab28c (diff) | |
| download | emacs-c631c234c097c887302e07b9997cedbe17e05308.tar.gz emacs-c631c234c097c887302e07b9997cedbe17e05308.zip | |
(Fcall_interactively): Bind cursor-in-echo-area to t for `k' and `K'.
Diffstat (limited to 'src')
| -rw-r--r-- | src/callint.c | 28 |
1 files changed, 20 insertions, 8 deletions
diff --git a/src/callint.c b/src/callint.c index 3741a0930d1..5cedc443933 100644 --- a/src/callint.c +++ b/src/callint.c | |||
| @@ -29,6 +29,8 @@ Boston, MA 02111-1307, USA. */ | |||
| 29 | 29 | ||
| 30 | extern char *index (); | 30 | extern char *index (); |
| 31 | 31 | ||
| 32 | extern Lisp_Object Qcursor_in_echo_area; | ||
| 33 | |||
| 32 | Lisp_Object Vcurrent_prefix_arg, Qminus, Qplus; | 34 | Lisp_Object Vcurrent_prefix_arg, Qminus, Qplus; |
| 33 | Lisp_Object Qcall_interactively; | 35 | Lisp_Object Qcall_interactively; |
| 34 | Lisp_Object Vcommand_history; | 36 | Lisp_Object Vcommand_history; |
| @@ -522,17 +524,27 @@ Otherwise, this is done only if an arg is read using the minibuffer.") | |||
| 522 | break; | 524 | break; |
| 523 | 525 | ||
| 524 | case 'k': /* Key sequence. */ | 526 | case 'k': /* Key sequence. */ |
| 525 | args[i] = Fread_key_sequence (build_string (callint_message), | 527 | { |
| 526 | Qnil, Qnil, Qnil); | 528 | int speccount1 = specpdl_ptr - specpdl; |
| 527 | teml = args[i]; | 529 | specbind (Qcursor_in_echo_area, Qt); |
| 528 | visargs[i] = Fkey_description (teml); | 530 | args[i] = Fread_key_sequence (build_string (callint_message), |
| 531 | Qnil, Qnil, Qnil); | ||
| 532 | unbind_to (speccount1, Qnil); | ||
| 533 | teml = args[i]; | ||
| 534 | visargs[i] = Fkey_description (teml); | ||
| 535 | } | ||
| 529 | break; | 536 | break; |
| 530 | 537 | ||
| 531 | case 'K': /* Key sequence to be defined. */ | 538 | case 'K': /* Key sequence to be defined. */ |
| 532 | args[i] = Fread_key_sequence (build_string (callint_message), | 539 | { |
| 533 | Qnil, Qt, Qnil); | 540 | int speccount1 = specpdl_ptr - specpdl; |
| 534 | teml = args[i]; | 541 | specbind (Qcursor_in_echo_area, Qt); |
| 535 | visargs[i] = Fkey_description (teml); | 542 | args[i] = Fread_key_sequence (build_string (callint_message), |
| 543 | Qnil, Qt, Qnil); | ||
| 544 | teml = args[i]; | ||
| 545 | visargs[i] = Fkey_description (teml); | ||
| 546 | unbind_to (speccount1, Qnil); | ||
| 547 | } | ||
| 536 | break; | 548 | break; |
| 537 | 549 | ||
| 538 | case 'e': /* The invoking event. */ | 550 | case 'e': /* The invoking event. */ |