Subject: bug#56459: 29.0.50; Edebug disables Eldoc

From: Noah Friedman <[email-masked]>
Date: Sun, 31 Jul 2022 18:59:49 -0700 (PDT)

Sorry I didn't see this message sooner.

I seem to recall that the eldoc messages (which would show up as you're
stepping through the debugger because point moves interactively) would
obsure the evaluation results that edebug prints for each sexp.  They both
use the echo area and they're both in the same recursive-edit level but the
echo area isn't currently active, so I'm not sure why `message' would
append below any existing message rather than replacing it.

If that's still the case, and I had to do it again I'd still prefer the
edebug messages over the eldoc ones when both are active at once.

In <[email-masked]> 2022-07-11 14:52:59+0300, Eli Zaretskii <[email-masked]> writes:
>> Cc: [email-masked]
>> From: Lars Ingebrigtsen <[email-masked]>
>> Date: Mon, 11 Jul 2022 12:49:12 +0200
>> 
>> Max Brieiev <[email-masked]> writes:
>> 
>> > 5. Observe that while you are typing any expression, eldoc does not
>> >    display any hints in the echo area. (Same issue exists in any other
>> >    elisp buffer with eldoc mode enabled, while Edebug is active.)
>> 
>> This is due to this code:
>> 
>> ;; Check various conditions about the current environment that might make
>> ;; it undesirable to print eldoc messages right this instant.
>> (defun eldoc-display-message-no-interference-p ()
>>   "Return nil if displaying a message would cause interference."
>>   (not (or executing-kbd-macro
>>            (bound-and-true-p edebug-active)
>> 
>> This was added by:
>> 
>> commit 03a9c6d06a177fd9026779bcb952f906a7743690
>> Author:     Noah Friedman <[email-masked]>
>> AuthorDate: Mon Jul 24 00:38:34 2000 +0000
>> 
>>     (eldoc-display-message-no-interference-p): Don't interfere with edebug.
>> 
>> But it doesn't say in what way it interferes with edebug -- and removing
>> that line, I don't really see any interference?  But eldoc messages
>> things slightly different now than two decades ago...
>> 
>> Anybody know what this code is trying to do?
>
>AFAIK nowadays 'message' displays echo-area messages in a way that
>doesn't interfere with existing messages (it displays them in brackets
>at the end of the existing text), so I think the original problem
>should no longer exist.
>
>Noah, can you verify that your original problem cannot be reproduced
>if we remove the condition in eldoc-display-message-no-interference-p
>that you added?