diff options
author | Eli Zaretskii <eliz@gnu.org> | 2008-08-28 20:05:54 +0000 |
---|---|---|
committer | Eli Zaretskii <eliz@gnu.org> | 2008-08-28 20:05:54 +0000 |
commit | 236086405572017a5f71331550a8a94fd5751fbe (patch) | |
tree | 6a6dfc6d4c73ccc7dcf02c44ee452b5f4ad9452a /lisp/term/pc-win.el | |
parent | f412b18032222efa50ea2af198e9e5ab7c859054 (diff) | |
download | emacs-236086405572017a5f71331550a8a94fd5751fbe.tar.gz emacs-236086405572017a5f71331550a8a94fd5751fbe.tar.bz2 emacs-236086405572017a5f71331550a8a94fd5751fbe.zip |
(msdos-previous-message): New variable.
(msdos-show-help): New function.
(msdos-initialize-window-system): Set show-help-function to msdos-show-help.
Diffstat (limited to 'lisp/term/pc-win.el')
-rw-r--r-- | lisp/term/pc-win.el | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/lisp/term/pc-win.el b/lisp/term/pc-win.el index 87a37f31d88..2e9ce0d27a6 100644 --- a/lisp/term/pc-win.el +++ b/lisp/term/pc-win.el @@ -255,6 +255,31 @@ are fixed-pitch." (fset 'set-cursor-color 'ignore) ; Hardware determined by char under. (fset 'set-border-color 'ignore) ; Not useful. +(defvar msdos-previous-message nil + "The content of the echo area before help echo was displayed.") + +(defun msdos-show-help (help) + "Function installed as `show-help-function' on MSDOS frames." + (when (and (not (window-minibuffer-p)) ;Don't overwrite minibuffer contents. + ;; Don't know how to reproduce it in Elisp: + ;; Don't overwrite a keystroke echo. + ;; (NILP (echo_message_buffer) || ok_to_overwrite_keystroke_echo) + (not cursor-in-echo-area)) ;Don't overwrite a prompt. + (cond + ((stringp help) + (unless msdos-previous-message + (setq msdos-previous-message (current-message))) + (let ((message-truncate-lines t) + (message-log-max nil)) + (message "%s" (replace-regexp-in-string "\n" ", " help)))) + ((stringp msdos-previous-message) + (let ((message-log-max nil)) + (message "%s" msdos-previous-message) + (setq msdos-previous-message nil))) + (t + (message nil))))) + + ;; Initialization. ;; --------------------------------------------------------------------------- ;; This function is run, by faces.el:tty-create-frame-with-faces, only @@ -297,6 +322,8 @@ Errors out because it is not supposed to be called, ever." (msdos-face-setup) ;; Set up the initial frame. (msdos-setup-initial-frame) + ;; Help echo is displayed in the echo area. + (setq show-help-function 'msdos-show-help) ;; We want to delay the codepage-related setup until after user's ;; .emacs is processed, because people might define their ;; `dos-codepage-setup-hook' there. |