From bf87d5fcf42aec2ef865c0051671b0b6f38071f4 Mon Sep 17 00:00:00 2001 From: Stefan Monnier Date: Mon, 14 Apr 2008 03:39:31 +0000 Subject: [PATCH] (minibuffer-message): Put cursor at the right place. --- lisp/ChangeLog | 19 +++++++++++-------- lisp/minibuffer.el | 5 +++++ 2 files changed, 16 insertions(+), 8 deletions(-) diff --git a/lisp/ChangeLog b/lisp/ChangeLog index 8074ba02f3..7c9712bb7d 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog @@ -1,3 +1,7 @@ +2008-04-14 Stefan Monnier + + * minibuffer.el (minibuffer-message): Put cursor at the right place. + 2008-04-13 Roland Winkler * proced.el (proced-send-signal): Fix error recognition. @@ -5,21 +9,20 @@ 2008-04-13 Roland Winkler * proced.el (proced-command-alist): Remove sort column. - (proced-command, proced-procname-column): Use - make-variable-buffer-local. - (proced-signal-function): Renamed from proced-kill-program. Allow - for elisp symbols and string values representing system calls. + (proced-command, proced-procname-column): + Use make-variable-buffer-local. + (proced-signal-function): Rename from proced-kill-program. + Allow for elisp symbols and string values representing system calls. (proced-marker-regexp, proced-success-message): New functions. (proced): Use defalias. Add autoload cookie. (proced-unmark-backward, proced-toggle-marks) (proced-hide-processes): New commands. (proced-do-mark): Simplify code. - (proced-insert-mark): Use optional arg BACKWARD instead of line - number. + (proced-insert-mark): Use optional arg BACKWARD instead of line number. (proced-update): Remove sorting. (proced-send-signal): Display number of processes to operate on. - Allow for system calls or elisp functions to send signals. Check - if signal was send successfully. + Allow for system calls or elisp functions to send signals. + Check if signal was sent successfully. 2008-04-13 Stefan Monnier diff --git a/lisp/minibuffer.el b/lisp/minibuffer.el index 180a44dea1..7baef47ba7 100644 --- a/lisp/minibuffer.el +++ b/lisp/minibuffer.el @@ -173,6 +173,11 @@ If ARGS are provided, then pass MESSAGE through `format'." (let ((ol (make-overlay (point-max) (point-max) nil t t))) (unwind-protect (progn + (unless (zerop (length message)) + ;; The current C cursor code doesn't know to use the overlay's + ;; marker's stickiness to figure out whether to place the cursor + ;; before or after the string, so let's spoon-feed it the pos. + (put-text-property 0 1 'cursor t message)) (overlay-put ol 'after-string message) (sit-for (or minibuffer-message-timeout 1000000))) (delete-overlay ol)))) -- 2.39.2