Mercurial > hg > xemacs-beta
comparison src/cmdloop.c @ 1703:f561c3904bb3
[xemacs-hg @ 2003-09-20 01:46:53 by youngs]
2003-09-20 Ilya N. Golubev <gin@mo.msk.ru>
* simple.el (raw-append-message): Allow user to specify
alternative function for displaying message.
(redisplay-echo-area-function): New.
(clear-message): Allow user to specify function for finishing
message display.
(undisplay-echo-area-function): New.
2003-09-20 Ilya N. Golubev <gin@mo.msk.ru>
* xemacs/mini.texi (Minibuffer): Add customizing message display
reference.
* lispref/display.texi (Customizing Message Display): New,
describe `redisplay-echo-area-function',
`undisplay-echo-area-function', `minibuffer-echo-wait-function'.
(The Echo Area): Add menu.
2003-09-20 Ilya N. Golubev <gin@mo.msk.ru>
* cmdloop.c (Fcommand_loop_1): Allow specifying elisp function for
waiting user input while displaying message while in minibuffer.
(Vminibuffer_echo_wait_function): New, associated variable...
(vars_of_cmdloop): ... initialize it.
author | youngs |
---|---|
date | Sat, 20 Sep 2003 01:47:03 +0000 |
parents | fffe735e63ee |
children | 61855263cb07 |
comparison
equal
deleted
inserted
replaced
1702:245980c04067 | 1703:f561c3904bb3 |
---|---|
66 | 66 |
67 /* Variable defined in Lisp. */ | 67 /* Variable defined in Lisp. */ |
68 Lisp_Object Qerrors_deactivate_region; | 68 Lisp_Object Qerrors_deactivate_region; |
69 | 69 |
70 Lisp_Object Qtop_level; | 70 Lisp_Object Qtop_level; |
71 Lisp_Object Vminibuffer_echo_wait_function; | |
71 | 72 |
72 static Lisp_Object command_loop_1 (Lisp_Object dummy); | 73 static Lisp_Object command_loop_1 (Lisp_Object dummy); |
73 EXFUN (Fcommand_loop_1, 0); | 74 EXFUN (Fcommand_loop_1, 0); |
74 | 75 |
75 /* There are two possible command loops -- one written entirely in | 76 /* There are two possible command loops -- one written entirely in |
557 if (minibuf_level > 0 && echo_area_active (selected_frame ())) | 558 if (minibuf_level > 0 && echo_area_active (selected_frame ())) |
558 { | 559 { |
559 /* Bind dont_check_for_quit to 1 so that C-g gets read in | 560 /* Bind dont_check_for_quit to 1 so that C-g gets read in |
560 rather than quitting back to the minibuffer. */ | 561 rather than quitting back to the minibuffer. */ |
561 int count = begin_dont_check_for_quit (); | 562 int count = begin_dont_check_for_quit (); |
562 Fsit_for (make_int (2), Qnil); | 563 if (!NILP (Vminibuffer_echo_wait_function)) |
564 call0 (Vminibuffer_echo_wait_function); | |
565 else | |
566 Fsit_for (make_int (2), Qnil); | |
563 clear_echo_area (selected_frame (), Qnil, 0); | 567 clear_echo_area (selected_frame (), Qnil, 0); |
564 Vquit_flag = Qnil; /* see begin_dont_check_for_quit() */ | 568 Vquit_flag = Qnil; /* see begin_dont_check_for_quit() */ |
565 unbind_to (count); | 569 unbind_to (count); |
566 } | 570 } |
567 | 571 |
623 | 627 |
624 DEFVAR_LISP ("enter-window-hook", &Venter_window_hook /* | 628 DEFVAR_LISP ("enter-window-hook", &Venter_window_hook /* |
625 Not yet implemented. | 629 Not yet implemented. |
626 */ ); | 630 */ ); |
627 Venter_window_hook = Qnil; | 631 Venter_window_hook = Qnil; |
632 | |
633 DEFVAR_LISP ("minibuffer-echo-wait-function", | |
634 &Vminibuffer_echo_wait_function /* | |
635 The function called by command loop when minibuffer was active and | |
636 message was displayed (text appeared in \" *Echo Area*\" buffer). It | |
637 must wait after displaying message so that user can read it. If the | |
638 variable value is `nil', the equivalent of `(sit-for 2)' is run. | |
639 */ ); | |
640 Vminibuffer_echo_wait_function = Qnil; | |
628 | 641 |
629 #ifndef LISP_COMMAND_LOOP | 642 #ifndef LISP_COMMAND_LOOP |
630 DEFVAR_LISP ("top-level", &Vtop_level /* | 643 DEFVAR_LISP ("top-level", &Vtop_level /* |
631 Form to evaluate when Emacs starts up. | 644 Form to evaluate when Emacs starts up. |
632 Useful to set before you dump a modified Emacs. | 645 Useful to set before you dump a modified Emacs. |