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 [vs new eldoc-display-f


From: martin rudalics
Subject: bug#43609: 28.0.50; eldoc-documentation-function [vs new eldoc-display-functions]
Date: Tue, 27 Oct 2020 19:05:37 +0100

> I'd like to help you, but I don't understand: are you updating Emacs to
> master in all 50 of those drives?  Do you do this 50 times?  By hand?
> Why can't you update your eldoc-tooltip.el in the process?

Every year I experience around two or three crashes among my machines
which run various operating systems ranging from Windows XP to Windows
10 and old stable to unstable Debian.  When a HD drive crashes, I try
to recreate the prior state by plugging in an older disk or copy the
contents of that older disk into a new one.  Thereafter, I usually
update my Emacs repositories reusing my older libraries.  If I also have
to update my libraries, I'm ending up in Augean stables.

> I don't understand how this can work: it's essential that ElDoc calls
> eldoc-documentation-functions _through_ eldoc-documentation-function:
> that's the only way it can deal with both old-style libraries that set
> the latter and new-style library that set the former.  That's the key to
> backward compatibility, and it's working correctly for many old and new
> packages.  Furthermore, this link between the two variables _precedes_
> my code (see SHA c0fcbd2c119b8418855f0931aceefbef717c5e53): I just added
> the async support.

Then I fail to understand why my old code stopped working after your
changes.  On the version of master I'm currently using here it's even
documented in the Elisp manual as

‘eldoc-documentation-function’
     This variable holds the function which is used to retrieve
     documentation for the item at point from the functions in the hook
     ‘eldoc-documentation-functions’.  By default,
     ‘eldoc-documentation-function’ returns the first documentation
     string produced by the ‘eldoc-documentation-functions’ hook.

> If "function definitions" were at stake, I would certainly agree with
> you.  But they're not.

Here 'elisp-eldoc-documentation-function' is a function defined in
elisp-mode.el.  IIUC this function has gone now.

> If you are going to update Emacs to master in N servers, you might as
> well update your library in those N servers. If you're updating it by
> hand, then this doesn't seem like a tremendous extra effort to expend.
> If you're using a script, just put the library update in that script.  I
> personally use Git to good effect for this: push once, pull many times.

This is not something I do once to be done for ever.  It's something
that I usually have to do in a troublesome situation where I have to
recover from a previous crash and I'm trying to make some system run
again.  I can't afford to plug in all sorts of hard disk drives in order
to make them future-proof.

> Alternatively, and perhaps even better, you're invited to contribute
> your library to Emacs (or GNU ELPA).  Then you'll just have to update
> Emacs, using your preferred method.

I'd still have to update each of my .emacs and install the respective
calls for each version of Emacs I might use there.

martin






reply via email to

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