bug-gnu-emacs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

bug#56459: 29.0.50; Edebug disables Eldoc


From: Dmitry Gutov
Subject: bug#56459: 29.0.50; Edebug disables Eldoc
Date: Wed, 1 Mar 2023 18:06:56 +0200
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.7.1

On 01/03/2023 17:49, Eli Zaretskii wrote:
Cc:max.brieiev@gmail.com,larsi@gnus.org,56459@debbugs.gnu.org,
  friedman@splode.com
Date: Wed, 01 Mar 2023 17:42:07 +0200
From: Eli Zaretskii<eliz@gnu.org>

So I've now reverted that change, and I'm reopening the bug.  It will
have to be fixed in some other way.
One possibility would be to show the ElDoc info on the mode line when
Edebug is active.  But the difficulty with that is to figure out how
to revert the mode line to the original shape when Edebug finishes.
We currently show the info on the mdoe line when the current buffer is
a minibuffer, and remove the info in minibuffer-exit-hook, but how to
do that in the Edebug case?

edebug-mode-hook?

This seems to work:

diff --git a/lisp/emacs-lisp/eldoc.el b/lisp/emacs-lisp/eldoc.el
index 3f5cf0ad0dc..01b48b0f45b 100644
--- a/lisp/emacs-lisp/eldoc.el
+++ b/lisp/emacs-lisp/eldoc.el
@@ -296,9 +296,12 @@ eldoc-minibuffer-message
 This function displays the message produced by formatting ARGS
with FORMAT-STRING on the mode line when the current buffer is a minibuffer.
 Otherwise, it displays the message like `message' would."
-  (if (minibufferp)
+  (defvar edebug-active)
+  (if (or edebug-active (minibufferp))
       (progn
-       (add-hook 'minibuffer-exit-hook
+        (add-hook (if (minibufferp)
+                      'minibuffer-exit-hook
+                    'edebug-mode-hook)
                  (lambda () (setq eldoc-mode-line-string nil
                              ;; https://debbugs.gnu.org/16920
                              eldoc-last-message nil))







reply via email to

[Prev in Thread] Current Thread [Next in Thread]