|
From: | Gregory Heytings |
Subject: | bug#60015: 29.0.60; multi-line messages truncated in non-selected minibuffer |
Date: | Thu, 15 Dec 2022 16:44:29 +0000 |
Here is a better test case. Please evaluate: (progn (keymap-global-set "C-c C-c" (lambda () (interactive) (message "abc\ndef"))) nil) Then the bug can be reproduced with just these keys: M-x C-x o C-c C-c Only the top line is displayed in the minibuffer.
Is this not something that can be solved in set-minibuffer-message, like this:
diff --git a/lisp/minibuffer.el b/lisp/minibuffer.el index 6e42296e7ba..c10a6401180 100644 --- a/lisp/minibuffer.el +++ b/lisp/minibuffer.el @@ -817,6 +817,11 @@ set-minibuffer-message ;; Make sure we can put-text-property. (copy-sequence message) (concat " [" message "]"))) + (let ((window-lines (window-height minibuf-window)) + (message-lines (length (split-string message "\n")))) + (when (> message-lines window-lines) + (with-selected-window minibuf-window + (enlarge-window (- message-lines window-lines))))) (unless (or (null minibuffer-message-properties) ;; Don't overwrite the face properties the caller has set (text-properties-at 0 message))
[Prev in Thread] | Current Thread | [Next in Thread] |