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

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

bug#43609: 28.0.50; eldoc-documentation-function


From: Dmitry Gutov
Subject: bug#43609: 28.0.50; eldoc-documentation-function
Date: Tue, 29 Sep 2020 14:20:24 +0300
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Thunderbird/68.10.0

On 27.09.2020 11:30, martin rudalics wrote:
 > You might want to read the docstring for
 > eldoc-documentation-functions, in particular the part where "Each hook
 > function is called with at least one argument CALLBACK".

That was the first thing I tried to do.  For beginners, I don't know
what a "Hook of functions" is.  And I completely fail to understand what
a "hook function" in this context is and when and why it gets called.

Hooks is a list of functions. They get called to fetch the doc information. And now there is some logic called "strategies" that combines the results.

In short, I completely fail to understand the logic behind this
variable.  All I know is that I do not want to write a hook function and
I do not want to get called by any agent here.

No, the hook functions are written already. They are basically a list of functions that were previously the values of eldoc-documentation-function. Except it's now a list. *And* they use an asynchronous convention where the first argument they receive is a callback.

 > I agree that the latest changes make Eldoc gratuitously more complex,
 > though. You can read bug#41531, where they started.

I never read that thread (it started around a time when my mailboxes
were thrashed due to almost simultaneous crashes of two of my mail
receiving machines) and I subsequently had to drop a few thousands of
mails I received earlier.  I've still not recuperated from that state.

I see. There is another email I sent to you a few months ago (about pop-up-mini-mode) that was also without response. I'll resend.

I now spent more than an hour reading that thread and am as clever as
before.  The first post in that thread seems to say everything already:

   This enables eldoc.el to exert control over how (and crucially also
   when) to display the docstrings to the user.

In a nutshell: With eldoc-tooltip it's me and only me who decides when
and how to display a doc string.  I do not want to leave this decision
to a package that tries to judge whether and when that Procrustean bed
called echo area is ready to display that doc string, whether and how to
truncate it and when to make it disappear.  Sadly, this doesn't work any
more in Emacs 28.  Maybe there's a simple solution to my problem but
nobody pointed me to it so far ...

It should work if your package learns to make use of the new eldoc-documentation-functions hook. Or eldoc-documentation-strategy, which calls them.

Needless to say, I'm sure the design I advocated in the referenced discussion would have had better discoverability and would have been easier to handle in your case as well, especially regarding backward compatibility.

But since it has received little support, I'll leave this discussion up to Joao and those others who approved the current state of affairs.





reply via email to

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