GNU bug report logs - #19853
25.0.50; ElDoc is displayed whether eldoc-mode is enabled or not

Previous Next

Package: emacs;

Reported by: Dmitry Gutov <dgutov <at> yandex.ru>

Date: Fri, 13 Feb 2015 11:57:01 UTC

Severity: normal

Found in version 25.0.50

Fixed in version 26.1

Done: Dmitry Gutov <dgutov <at> yandex.ru>

Bug is archived. No further changes may be made.

To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 19853 in the body.
You can then email your comments to 19853 AT debbugs.gnu.org in the normal way.

Toggle the display of automated, internal messages from the tracker.

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to bug-gnu-emacs <at> gnu.org:
bug#19853; Package emacs. (Fri, 13 Feb 2015 11:57:01 GMT) Full text and rfc822 format available.

Acknowledgement sent to Dmitry Gutov <dgutov <at> yandex.ru>:
New bug report received and forwarded. Copy sent to bug-gnu-emacs <at> gnu.org. (Fri, 13 Feb 2015 11:57:01 GMT) Full text and rfc822 format available.

Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):

From: Dmitry Gutov <dgutov <at> yandex.ru>
To: bug-gnu-emacs <at> gnu.org
Subject: 25.0.50; ElDoc is displayed whether eldoc-mode is enabled or not
Date: Fri, 13 Feb 2015 13:56:32 +0200
1. emacs -Q
2. M-: eldoc-mode => nil
3. Type (defun |), see the function signature in the echo area.
4. M-x eldoc-mode makes no difference either way.

In GNU Emacs 25.0.50.4 (x86_64-unknown-linux-gnu, GTK+ Version 3.12.2)
 of 2015-02-07 on axl
Repository revision: 7eb2077f9dd14ae9d70a12c621151afd50ea6e96
Windowing system distributor `The X.Org Foundation', version 11.0.11601901
System Description:	Ubuntu 14.10




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#19853; Package emacs. (Tue, 21 Jul 2015 13:49:01 GMT) Full text and rfc822 format available.

Message #8 received at 19853 <at> debbugs.gnu.org (full text, mbox):

From: Dmitry Gutov <dgutov <at> yandex.ru>
To: 19853 <at> debbugs.gnu.org
Subject: Re: bug#19853: Acknowledgement (25.0.50; ElDoc is displayed whether
 eldoc-mode is enabled or not)
Date: Tue, 21 Jul 2015 16:48:18 +0300
Why is global-eldoc-mode a separate mode, instead of being a 
"globalized" eldoc-mode?




Reply sent to Marcin Borkowski <mbork <at> mbork.pl>:
You have taken responsibility. (Sun, 20 Mar 2016 10:02:02 GMT) Full text and rfc822 format available.

Notification sent to Dmitry Gutov <dgutov <at> yandex.ru>:
bug acknowledged by developer. (Sun, 20 Mar 2016 10:02:02 GMT) Full text and rfc822 format available.

Message #13 received at 19853-done <at> debbugs.gnu.org (full text, mbox):

From: Marcin Borkowski <mbork <at> mbork.pl>
To: Dmitry Gutov <dgutov <at> yandex.ru>,
 Help Gnu Emacs mailing list <help-gnu-emacs <at> gnu.org>
Cc: 19853-done <at> debbugs.gnu.org
Subject: eldoc-mode vs. global-eldoc-mode (was: bug#19853)
Date: Sun, 20 Mar 2016 11:00:53 +0100
On 2015-07-21, at 17:48, Dmitry Gutov <dgutov <at> yandex.ru> wrote:

> Why is global-eldoc-mode a separate mode, instead of being
> a "globalized" eldoc-mode?

This is a good question, and I'd like to know the rationale for the
existence of both of them, too.  I'm forwarding it to help-gnu-emacs and
closing the bug at ths same time.

Best,

-- 
Marcin




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#19853; Package emacs. (Sun, 20 Mar 2016 12:42:02 GMT) Full text and rfc822 format available.

Message #16 received at 19853 <at> debbugs.gnu.org (full text, mbox):

From: Dmitry Gutov <dgutov <at> yandex.ru>
To: 19853 <at> debbugs.gnu.org, mbork <at> mbork.pl
Subject: Re: bug#19853: eldoc-mode vs. global-eldoc-mode
Date: Sun, 20 Mar 2016 14:41:34 +0200
On 03/20/2016 12:00 PM, Marcin Borkowski wrote:

> closing the bug at ths same time.

What made you decide it's not a bug?





Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#19853; Package emacs. (Sun, 20 Mar 2016 13:19:01 GMT) Full text and rfc822 format available.

Message #19 received at 19853 <at> debbugs.gnu.org (full text, mbox):

From: Marcin Borkowski <mbork <at> mbork.pl>
To: Dmitry Gutov <dgutov <at> yandex.ru>
Cc: 19853 <at> debbugs.gnu.org
Subject: Re: bug#19853: eldoc-mode vs. global-eldoc-mode
Date: Sun, 20 Mar 2016 14:17:51 +0100
On 2016-03-20, at 13:41, Dmitry Gutov <dgutov <at> yandex.ru> wrote:

> On 03/20/2016 12:00 PM, Marcin Borkowski wrote:
>
>> closing the bug at ths same time.
>
> What made you decide it's not a bug?

The fact that apparently this behavior is consistent with the docs, so
it looks like a feature (though the intentions behind it remain
mysterious to me).  Also, the fact that if at any point you or I decide
that this is a bug indeed, reopening it can be done in 30 seconds.

Best,

-- 
Marcin Borkowski
http://octd.wmi.amu.edu.pl/en/Marcin_Borkowski
Faculty of Mathematics and Computer Science
Adam Mickiewicz University




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#19853; Package emacs. (Sun, 20 Mar 2016 13:26:02 GMT) Full text and rfc822 format available.

Message #22 received at 19853 <at> debbugs.gnu.org (full text, mbox):

From: Dmitry Gutov <dgutov <at> yandex.ru>
To: Marcin Borkowski <mbork <at> mbork.pl>
Cc: 19853 <at> debbugs.gnu.org
Subject: Re: bug#19853: eldoc-mode vs. global-eldoc-mode
Date: Sun, 20 Mar 2016 15:25:05 +0200
On 03/20/2016 03:17 PM, Marcin Borkowski wrote:

> The fact that apparently this behavior is consistent with the docs, so
> it looks like a feature (though the intentions behind it remain
> mysterious to me).

Which docs? global-eldoc-mode's docstring says "Enable ‘eldoc-mode’ in 
all buffers where it’s applicable.", which is not what it does.

> Also, the fact that if at any point you or I decide
> that this is a bug indeed, reopening it can be done in 30 seconds.

Until enough time passes that it's archived and forgotten. It's clear 
that it's not high priority, but it still seems like something we'd want 
to fix.




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#19853; Package emacs. (Sun, 20 Mar 2016 14:15:01 GMT) Full text and rfc822 format available.

Message #25 received at 19853 <at> debbugs.gnu.org (full text, mbox):

From: Marcin Borkowski <mbork <at> mbork.pl>
To: Dmitry Gutov <dgutov <at> yandex.ru>
Cc: 19853 <at> debbugs.gnu.org
Subject: Re: bug#19853: eldoc-mode vs. global-eldoc-mode
Date: Sun, 20 Mar 2016 15:14:51 +0100
On 2016-03-20, at 14:25, Dmitry Gutov <dgutov <at> yandex.ru> wrote:

> On 03/20/2016 03:17 PM, Marcin Borkowski wrote:
>
>> The fact that apparently this behavior is consistent with the docs, so
>> it looks like a feature (though the intentions behind it remain
>> mysterious to me).
>
> Which docs? global-eldoc-mode's docstring says "Enable ‘eldoc-mode’ in 
> all buffers where it’s applicable.", which is not what it does.

The manual.

(info "(emacs) Lisp Doc")

>> Also, the fact that if at any point you or I decide
>> that this is a bug indeed, reopening it can be done in 30 seconds.
>
> Until enough time passes that it's archived and forgotten. It's clear 
> that it's not high priority, but it still seems like something we'd want 
> to fix.

OK, I'll write it down that if no-one confirms that this is intended and
reasonable within a week, I'm reopening it.

Best,

-- 
Marcin Borkowski
http://octd.wmi.amu.edu.pl/en/Marcin_Borkowski
Faculty of Mathematics and Computer Science
Adam Mickiewicz University




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#19853; Package emacs. (Sun, 20 Mar 2016 17:10:01 GMT) Full text and rfc822 format available.

Message #28 received at 19853 <at> debbugs.gnu.org (full text, mbox):

From: Dmitry Gutov <dgutov <at> yandex.ru>
To: Marcin Borkowski <mbork <at> mbork.pl>
Cc: 19853 <at> debbugs.gnu.org
Subject: Re: bug#19853: eldoc-mode vs. global-eldoc-mode
Date: Sun, 20 Mar 2016 19:08:56 +0200
On 03/20/2016 04:14 PM, Marcin Borkowski wrote:

>> Which docs? global-eldoc-mode's docstring says "Enable ‘eldoc-mode’ in
>> all buffers where it’s applicable.", which is not what it does.
>
> The manual.
>
> (info "(emacs) Lisp Doc")

It doesn't seem like it states conclusively whether global-eldoc-mode 
toggles eldoc-mode.

> OK, I'll write it down that if no-one confirms that this is intended and
> reasonable within a week, I'm reopening it.

Great, thanks!




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#19853; Package emacs. (Sun, 20 Mar 2016 18:22:01 GMT) Full text and rfc822 format available.

Message #31 received at 19853 <at> debbugs.gnu.org (full text, mbox):

From: Michael Heerdegen <michael_heerdegen <at> web.de>
To: Dmitry Gutov <dgutov <at> yandex.ru>
Cc: 19853 <at> debbugs.gnu.org
Subject: Re: bug#19853: Acknowledgement (25.0.50;
 ElDoc is displayed whether eldoc-mode is enabled or not)
Date: Sun, 20 Mar 2016 19:21:33 +0100
Dmitry Gutov <dgutov <at> yandex.ru> writes:

> Why is global-eldoc-mode a separate mode, instead of being a
> "globalized" eldoc-mode?

I think it's simpler that way: `global-eldoc-mode' adds its stuff to the
global hook bindings.  Thus toggling the global mode has an instant
effect on all buffers.  The globalized local eldoc mode would only have
an effect in new buffers or after changing the major mode.


What exactly is this bug report about (this question, or the statement
in the subject, for which you didn't provide a recipe)?


Regards,

Michael.




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#19853; Package emacs. (Sun, 20 Mar 2016 18:26:01 GMT) Full text and rfc822 format available.

Message #34 received at 19853 <at> debbugs.gnu.org (full text, mbox):

From: Dmitry Gutov <dgutov <at> yandex.ru>
To: Michael Heerdegen <michael_heerdegen <at> web.de>
Cc: 19853 <at> debbugs.gnu.org
Subject: Re: bug#19853: Acknowledgement (25.0.50; ElDoc is displayed whether
 eldoc-mode is enabled or not)
Date: Sun, 20 Mar 2016 20:25:11 +0200
On 03/20/2016 08:21 PM, Michael Heerdegen wrote:

> I think it's simpler that way: `global-eldoc-mode' adds its stuff to the
> global hook bindings.  Thus toggling the global mode has an instant
> effect on all buffers.  The globalized local eldoc mode would only have
> an effect in new buffers or after changing the major mode.

That's not true: turning off a globalized mode turns off the related 
minor mode in all buffers. So, instant effect as well.

The current implementation, however, is not "simpler": both modes set up 
hooks. For some reasons, they also do that in slightly different ways.

> What exactly is this bug report about (this question, or the statement
> in the subject, for which you didn't provide a recipe)?

I did provide a recipe, in the bug description.




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#19853; Package emacs. (Sun, 20 Mar 2016 18:35:01 GMT) Full text and rfc822 format available.

Message #37 received at 19853 <at> debbugs.gnu.org (full text, mbox):

From: Michael Heerdegen <michael_heerdegen <at> web.de>
To: Dmitry Gutov <dgutov <at> yandex.ru>
Cc: 19853 <at> debbugs.gnu.org
Subject: Re: bug#19853: Acknowledgement (25.0.50;
 ElDoc is displayed whether eldoc-mode is enabled or not)
Date: Sun, 20 Mar 2016 19:34:22 +0100
Dmitry Gutov <dgutov <at> yandex.ru> writes:

> On 03/20/2016 08:21 PM, Michael Heerdegen wrote:
>
> > I think it's simpler that way: `global-eldoc-mode' adds its stuff to the
> > global hook bindings.  Thus toggling the global mode has an instant
> > effect on all buffers.  The globalized local eldoc mode would only have
> > an effect in new buffers or after changing the major mode.
>
> That's not true: turning off a globalized mode turns off the related
> minor mode in all buffers. So, instant effect as well.

Right, but turning on is different, right?


> The current implementation, however, is not "simpler": both modes set
> up hooks. For some reasons, they also do that in slightly different
> ways.

I mean, conceptually simpler (slightly).  But that's surely a matter of
taste.

> > What exactly is this bug report about (this question, or the
> > statement in the subject, for which you didn't provide a recipe)?
>
> I did provide a recipe, in the bug description.

I thought you mean a lighter, but you mean the effect of eldoc mode:
echoing in the echo area with "ElDoc is displayed", correct?

I see that too in emacs -Q, but global-eldoc-mode is on by default, so
this is expected.  You get eldoc echoing when either the local mode is
turned on for this buffer, or the global mode (and the current buffer is
treated by the global mode).  Don't you see this, or do think this
behavior is wrong?


Michael.




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#19853; Package emacs. (Sun, 20 Mar 2016 18:53:02 GMT) Full text and rfc822 format available.

Message #40 received at 19853 <at> debbugs.gnu.org (full text, mbox):

From: Dmitry Gutov <dgutov <at> yandex.ru>
To: Michael Heerdegen <michael_heerdegen <at> web.de>
Cc: 19853 <at> debbugs.gnu.org
Subject: Re: bug#19853: Acknowledgement (25.0.50; ElDoc is displayed whether
 eldoc-mode is enabled or not)
Date: Sun, 20 Mar 2016 20:52:33 +0200
On 03/20/2016 08:34 PM, Michael Heerdegen wrote:

>> That's not true: turning off a globalized mode turns off the related
>> minor mode in all buffers. So, instant effect as well.
>
> Right, but turning on is different, right?

Different how?

> I mean, conceptually simpler (slightly).  But that's surely a matter of
> taste.

I wouldn't call that kind of duplication simpler.

>>> What exactly is this bug report about (this question, or the
>>> statement in the subject, for which you didn't provide a recipe)?
>>
>> I did provide a recipe, in the bug description.
>
> I thought you mean a lighter, but you mean the effect of eldoc mode:
> echoing in the echo area with "ElDoc is displayed", correct?

In the echo area, but not "ElDoc is displayed" (is there such a message 
anywhere?).

> I see that too in emacs -Q, but global-eldoc-mode is on by default, so
> this is expected.  You get eldoc echoing when either the local mode is
> turned on for this buffer, or the global mode (and the current buffer is
> treated by the global mode).  Don't you see this, or do think this
> behavior is wrong?

I see this, and I think it is wrong:

- The behavior is surprising if you're used to globalized minor modes.
- There's no way to have ElDoc enabled by default, but disable it in 
just certain buffers.




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#19853; Package emacs. (Sun, 20 Mar 2016 19:21:02 GMT) Full text and rfc822 format available.

Message #43 received at 19853 <at> debbugs.gnu.org (full text, mbox):

From: Michael Heerdegen <michael_heerdegen <at> web.de>
To: Dmitry Gutov <dgutov <at> yandex.ru>
Cc: 19853 <at> debbugs.gnu.org
Subject: Re: bug#19853: Acknowledgement (25.0.50;
 ElDoc is displayed whether eldoc-mode is enabled or not)
Date: Sun, 20 Mar 2016 20:20:26 +0100
Dmitry Gutov <dgutov <at> yandex.ru> writes:

> On 03/20/2016 08:34 PM, Michael Heerdegen wrote:
>
> >> That's not true: turning off a globalized mode turns off the related
> >> minor mode in all buffers. So, instant effect as well.
> >
> > Right, but turning on is different, right?
>
> Different how?

Turning on the globalized local hook would not have an immediate effect
on the affected buffers I think.


> >> I did provide a recipe, in the bug description.
> >
> > I thought you mean a lighter, but you mean the effect of eldoc mode:
> > echoing in the echo area with "ElDoc is displayed", correct?
>
> In the echo area, but not "ElDoc is displayed" (is there such a
> message anywhere?).

Yes, in your recipe in the bug description.  My question was what you
meant with that.


> - The behavior is surprising if you're used to globalized minor modes.

What behavior do you mean, apart from the next point?


> - There's no way to have ElDoc enabled by default, but disable it in
> just certain buffers.

That's a valid point, the current implementation doesn't cover this
case.  I think

  (setq-local global-eldoc-mode nil)

should work, but it looks weird, and it should not be necessary to
modify a variable after we already have two modes.


Michael.




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#19853; Package emacs. (Sun, 20 Mar 2016 19:28:01 GMT) Full text and rfc822 format available.

Message #46 received at 19853 <at> debbugs.gnu.org (full text, mbox):

From: Dmitry Gutov <dgutov <at> yandex.ru>
To: Michael Heerdegen <michael_heerdegen <at> web.de>
Cc: 19853 <at> debbugs.gnu.org
Subject: Re: bug#19853: Acknowledgement (25.0.50; ElDoc is displayed whether
 eldoc-mode is enabled or not)
Date: Sun, 20 Mar 2016 21:27:09 +0200
On 03/20/2016 09:20 PM, Michael Heerdegen wrote:

> Turning on the globalized local hook would not have an immediate effect
> on the affected buffers I think.

Not sure what you mean. Globalized local hook?

If globalized mode was off, and you turn it on, it turns on the local 
mode in all relevant buffers, right away.

Just try it with e.g. global-font-lock-mode.

> Yes, in your recipe in the bug description.  My question was what you
> meant with that.

Displaying, or not displaying, function signatures in the echo area.

>> - The behavior is surprising if you're used to globalized minor modes.
>
> What behavior do you mean, apart from the next point?

Compare with font-lock-mode and global-font-lock-mode.

> That's a valid point, the current implementation doesn't cover this
> case.  I think
>
>   (setq-local global-eldoc-mode nil)
>
> should work, but it looks weird, and it should not be necessary to
> modify a variable after we already have two modes.

Yes, it looks silly, and might even break some expectations of the minor 
mode machinery.




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#19853; Package emacs. (Sun, 20 Mar 2016 19:55:01 GMT) Full text and rfc822 format available.

Message #49 received at 19853 <at> debbugs.gnu.org (full text, mbox):

From: Michael Heerdegen <michael_heerdegen <at> web.de>
To: Dmitry Gutov <dgutov <at> yandex.ru>
Cc: 19853 <at> debbugs.gnu.org
Subject: Re: bug#19853: Acknowledgement (25.0.50;
 ElDoc is displayed whether eldoc-mode is enabled or not)
Date: Sun, 20 Mar 2016 20:53:55 +0100
Dmitry Gutov <dgutov <at> yandex.ru> writes:

> On 03/20/2016 09:20 PM, Michael Heerdegen wrote:
>
> > Turning on the globalized local hook would not have an immediate effect
> > on the affected buffers I think.
>
> Not sure what you mean. Globalized local hook?
>
> If globalized mode was off, and you turn it on, it turns on the local
> mode in all relevant buffers, right away.
>
> Just try it with e.g. global-font-lock-mode.

Yes, correct.  I only overflew the sources and missed that part - my
mistake.


> > That's a valid point, the current implementation doesn't cover this
> > case.  I think
> >
> >   (setq-local global-eldoc-mode nil)
> >
> > should work, but it looks weird, and it should not be necessary to
> > modify a variable after we already have two modes.
>
> Yes, it looks silly, and might even break some expectations of the
> minor mode machinery.

If we want the global mode to push its stuff into the global hook
bindings, and not into all the local hook bindings in every single
buffer where the mode is applicable - can we achieve this with
`define-globalized-minor-mode'?  It doesn't seem so:
`define-globalized-minor-mode' doesn't accept any kind of BODY argument.
I think this is the cause of why the author reinvented it, and that in a
not fully compliant way.

Eldoc is not the only mode where this problem arises.  In general, it
can be beneficial to add to the global hook bindings: when a buffer is
affected by the global hook, but it is not current, the local hook
bindings are not run.  Sometimes this is useful (I can give an example
if you want).

But in this case, I think it is not.  So I tend to agree with you:
simply globalizing eldoc-mode would be better, if we don't miss
anything.

And then, I think making `define-globalized-minor-mode' accept a BODY
argument would be good - a globalized minor mode might want to do some
global setup.


Michael.




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#19853; Package emacs. (Sun, 20 Mar 2016 20:25:02 GMT) Full text and rfc822 format available.

Message #52 received at 19853 <at> debbugs.gnu.org (full text, mbox):

From: Dmitry Gutov <dgutov <at> yandex.ru>
To: Michael Heerdegen <michael_heerdegen <at> web.de>
Cc: 19853 <at> debbugs.gnu.org
Subject: Re: bug#19853: Acknowledgement (25.0.50; ElDoc is displayed whether
 eldoc-mode is enabled or not)
Date: Sun, 20 Mar 2016 22:24:20 +0200
On 03/20/2016 09:53 PM, Michael Heerdegen wrote:

> If we want the global mode to push its stuff into the global hook
> bindings, and not into all the local hook bindings in every single
> buffer where the mode is applicable - can we achieve this with
> `define-globalized-minor-mode'?

You could use :after-hook argument.

But it doesn't seem like what we should in do cases like this: what 
would (eldoc-mode -1) do if the globalized mode has modified the global 
hook values? We can't modify those locally.

> And then, I think making `define-globalized-minor-mode' accept a BODY
> argument would be good - a globalized minor mode might want to do some
> global setup.

Again, see the mention of :after-hook in the define-minor-mode 
docstring. It works in the globalized definitions as well.




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#19853; Package emacs. (Sun, 20 Mar 2016 21:11:02 GMT) Full text and rfc822 format available.

Message #55 received at 19853 <at> debbugs.gnu.org (full text, mbox):

From: Michael Heerdegen <michael_heerdegen <at> web.de>
To: Dmitry Gutov <dgutov <at> yandex.ru>
Cc: 19853 <at> debbugs.gnu.org
Subject: Re: bug#19853: Acknowledgement (25.0.50;
 ElDoc is displayed whether eldoc-mode is enabled or not)
Date: Sun, 20 Mar 2016 22:10:42 +0100
Dmitry Gutov <dgutov <at> yandex.ru> writes:

> > If we want the global mode to push its stuff into the global hook
> > bindings, and not into all the local hook bindings in every single
> > buffer where the mode is applicable - can we achieve this with
> > `define-globalized-minor-mode'?
>
> You could use :after-hook argument.

Thanks.

> But it doesn't seem like what we should in do cases like this: what
> would (eldoc-mode -1) do if the globalized mode has modified the
> global hook values? We can't modify those locally.

Yes.  I think turning `globalized-eldoc-mode' could change the default
value of `eldoc-mode', while the local `eldoc-mode' changes the local
value (as it does now).

But that would lead to another problem: if the user has both modes off,
then turns on the local mode in some buffer, and after that turns on the
global mode as well, we have the stuff in both the global and the local
hook bindings.

Hmm, I think the only way out would be to add the stuff to the global
hook bindings unconditionally when eldoc is loaded - no matter whether
the global mode is on or not, and never remove it.  And use only one
(buffer local) variable for controlling, `eldoc-mode', that the local
mode sets locally.  The variable `global-eldoc-mode' would not appear in
the code any more.  `global-eldoc-mode' would become a trivial
globalized minor mode that would only turn the local value of
`eldoc-mode' in all buffers.  Would that make sense?

The alternative would be, of course, do what you suggested.


Michael.





Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#19853; Package emacs. (Sun, 20 Mar 2016 21:16:02 GMT) Full text and rfc822 format available.

Message #58 received at 19853 <at> debbugs.gnu.org (full text, mbox):

From: Dmitry Gutov <dgutov <at> yandex.ru>
To: Michael Heerdegen <michael_heerdegen <at> web.de>
Cc: 19853 <at> debbugs.gnu.org
Subject: Re: bug#19853: Acknowledgement (25.0.50; ElDoc is displayed whether
 eldoc-mode is enabled or not)
Date: Sun, 20 Mar 2016 23:15:30 +0200
On 03/20/2016 11:10 PM, Michael Heerdegen wrote:

> Yes.  I think turning `globalized-eldoc-mode' could change the default
> value of `eldoc-mode', while the local `eldoc-mode' changes the local
> value (as it does now).

That's not how globalized minor modes work.

> But that would lead to another problem: if the user has both modes off,
> then turns on the local mode in some buffer, and after that turns on the
> global mode as well, we have the stuff in both the global and the local
> hook bindings.

Nope: globalized mode should only turn on the local mode in appropriate 
buffers. And it would, in turn, only modify the local parts of the hook 
in each of the buffers.

> Hmm, I think the only way out would be to add the stuff to the global
> hook bindings unconditionally when eldoc is loaded - no matter whether
> the global mode is on or not, and never remove it.  And use only one
> (buffer local) variable for controlling, `eldoc-mode', that the local
> mode sets locally.  The variable `global-eldoc-mode' would not appear in
> the code any more.  `global-eldoc-mode' would become a trivial
> globalized minor mode that would only turn the local value of
> `eldoc-mode' in all buffers.  Would that make sense?

Sounds like a viable alternative, yes.




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#19853; Package emacs. (Sun, 20 Mar 2016 21:25:02 GMT) Full text and rfc822 format available.

Message #61 received at 19853 <at> debbugs.gnu.org (full text, mbox):

From: Michael Heerdegen <michael_heerdegen <at> web.de>
To: Dmitry Gutov <dgutov <at> yandex.ru>
Cc: 19853 <at> debbugs.gnu.org
Subject: Re: bug#19853: Acknowledgement (25.0.50;
 ElDoc is displayed whether eldoc-mode is enabled or not)
Date: Sun, 20 Mar 2016 22:24:36 +0100
Dmitry Gutov <dgutov <at> yandex.ru> writes:

> > Hmm, I think the only way out would be to add the stuff to the global
> > hook bindings unconditionally when eldoc is loaded - no matter whether
> > the global mode is on or not, and never remove it.  And use only one
> > (buffer local) variable for controlling, `eldoc-mode', that the local
> > mode sets locally.  The variable `global-eldoc-mode' would not appear in
> > the code any more.  `global-eldoc-mode' would become a trivial
> > globalized minor mode that would only turn the local value of
> > `eldoc-mode' in all buffers.  Would that make sense?
>
> Sounds like a viable alternative, yes.

Then maybe let's see what others say.  I think making either change
would be an improvement.


Michael.




Did not alter fixed versions and reopened. Request was from Debbugs Internal Request <help-debbugs <at> gnu.org> to internal_control <at> debbugs.gnu.org. (Sun, 20 Mar 2016 23:06:02 GMT) Full text and rfc822 format available.

Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#19853; Package emacs. (Mon, 21 Mar 2016 04:03:02 GMT) Full text and rfc822 format available.

Message #66 received at 19853 <at> debbugs.gnu.org (full text, mbox):

From: Marcin Borkowski <mbork <at> mbork.pl>
To: Michael Heerdegen <michael_heerdegen <at> web.de>
Cc: 19853 <at> debbugs.gnu.org, Dmitry Gutov <dgutov <at> yandex.ru>
Subject: Re: bug#19853: Acknowledgement (25.0.50;
 ElDoc is displayed whether eldoc-mode is enabled or not)
Date: Mon, 21 Mar 2016 05:02:26 +0100
reopen 19853
stop

Hi, since it turns out I was not right, and indeed there is a legitimate
wish to change the behavior, I'm reopening this bug report.

Dmitry, sorry for not understanding your report in the first place.

Best,
M.



On 2016-03-20, at 22:24, Michael Heerdegen <michael_heerdegen <at> web.de> wrote:

> Dmitry Gutov <dgutov <at> yandex.ru> writes:
>
>> > Hmm, I think the only way out would be to add the stuff to the global
>> > hook bindings unconditionally when eldoc is loaded - no matter whether
>> > the global mode is on or not, and never remove it.  And use only one
>> > (buffer local) variable for controlling, `eldoc-mode', that the local
>> > mode sets locally.  The variable `global-eldoc-mode' would not appear in
>> > the code any more.  `global-eldoc-mode' would become a trivial
>> > globalized minor mode that would only turn the local value of
>> > `eldoc-mode' in all buffers.  Would that make sense?
>>
>> Sounds like a viable alternative, yes.
>
> Then maybe let's see what others say.  I think making either change
> would be an improvement.
>
>
> Michael.

-- 
Marcin Borkowski
http://octd.wmi.amu.edu.pl/en/Marcin_Borkowski
Faculty of Mathematics and Computer Science
Adam Mickiewicz University




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#19853; Package emacs. (Tue, 22 Mar 2016 15:30:02 GMT) Full text and rfc822 format available.

Message #69 received at 19853 <at> debbugs.gnu.org (full text, mbox):

From: Michael Heerdegen <michael_heerdegen <at> web.de>
To: Dmitry Gutov <dgutov <at> yandex.ru>
Cc: 19853 <at> debbugs.gnu.org, Stefan Monnier <monnier <at> iro.umontreal.ca>
Subject: Re: bug#19853: Acknowledgement (25.0.50;
 ElDoc is displayed whether eldoc-mode is enabled or not)
Date: Tue, 22 Mar 2016 16:29:34 +0100
Hi,

maybe we can come to a decision now.

Stefan, you were the one that implemented `global-eldoc-mode', and
decided not to use `define-globalized-minor-mode' to do this.  I think I
understand your intention (use global hook bindings).

The subject of this bug report is that the global eldoc mode behaves
differently from other global modes that have a local counterpart: in
particular, turning off the global mode doesn't turn off the local mode
in all buffers where it is on.  This is somewhat unexpected for the user
and I think more or less only an unintended consequence of the
implementation.

We discussed two alternatives to make the global eldoc mode behave more
like a globalized mode, namely (1) do it indeed with
`define-globalized-minor-mode' and (2)

> > > Hmm, I think the only way out would be to add the stuff to the
> > > global hook bindings unconditionally when eldoc is loaded - no
> > > matter whether the global mode is on or not, and never remove it.
> > > And use only one (buffer local) variable for controlling,
> > > `eldoc-mode', that the local mode sets locally.  The variable
> > > `global-eldoc-mode' would not appear in the code any more.
> > > `global-eldoc-mode' would become a trivial globalized minor mode
> > > that would only turn the local value of `eldoc-mode' in all
> > > buffers.  Would that make sense?

Did we overlook an advantage of your implementation?  Which of these two
alternatives would you prefer?


Thanks,

Michael.




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#19853; Package emacs. (Tue, 22 Mar 2016 15:39:02 GMT) Full text and rfc822 format available.

Message #72 received at 19853 <at> debbugs.gnu.org (full text, mbox):

From: Stefan Monnier <monnier <at> iro.umontreal.ca>
To: Michael Heerdegen <michael_heerdegen <at> web.de>
Cc: 19853 <at> debbugs.gnu.org, Dmitry Gutov <dgutov <at> yandex.ru>
Subject: Re: bug#19853: Acknowledgement (25.0.50;
 ElDoc is displayed whether eldoc-mode is enabled or not)
Date: Tue, 22 Mar 2016 11:38:27 -0400
I don't have an opinion on this.


        Stefan


>>>>> "Michael" == Michael Heerdegen <michael_heerdegen <at> web.de> writes:

> Hi,
> maybe we can come to a decision now.

> Stefan, you were the one that implemented `global-eldoc-mode', and
> decided not to use `define-globalized-minor-mode' to do this.  I think I
> understand your intention (use global hook bindings).

> The subject of this bug report is that the global eldoc mode behaves
> differently from other global modes that have a local counterpart: in
> particular, turning off the global mode doesn't turn off the local mode
> in all buffers where it is on.  This is somewhat unexpected for the user
> and I think more or less only an unintended consequence of the
> implementation.

> We discussed two alternatives to make the global eldoc mode behave more
> like a globalized mode, namely (1) do it indeed with
> `define-globalized-minor-mode' and (2)

>> > > Hmm, I think the only way out would be to add the stuff to the
>> > > global hook bindings unconditionally when eldoc is loaded - no
>> > > matter whether the global mode is on or not, and never remove it.
>> > > And use only one (buffer local) variable for controlling,
>> > > `eldoc-mode', that the local mode sets locally.  The variable
>> > > `global-eldoc-mode' would not appear in the code any more.
>> > > `global-eldoc-mode' would become a trivial globalized minor mode
>> > > that would only turn the local value of `eldoc-mode' in all
>> > > buffers.  Would that make sense?

> Did we overlook an advantage of your implementation?  Which of these two
> alternatives would you prefer?


> Thanks,

> Michael.




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#19853; Package emacs. (Wed, 23 Mar 2016 15:17:02 GMT) Full text and rfc822 format available.

Message #75 received at 19853 <at> debbugs.gnu.org (full text, mbox):

From: Michael Heerdegen <michael_heerdegen <at> web.de>
To: Stefan Monnier <monnier <at> iro.umontreal.ca>
Cc: 19853 <at> debbugs.gnu.org, Dmitry Gutov <dgutov <at> yandex.ru>
Subject: Re: bug#19853: Acknowledgement (25.0.50;
 ElDoc is displayed whether eldoc-mode is enabled or not)
Date: Wed, 23 Mar 2016 16:16:01 +0100
Stefan Monnier <monnier <at> iro.umontreal.ca> writes:

> I don't have an opinion on this.
>
>
>         Stefan

Ok, thanks.  I don't have a preference for one of the suggested
solutions, too.

Dmitry, then I suggest you just make the change you prefer (on master, I
guess) - can you do that?


Thanks,

Michael.




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#19853; Package emacs. (Wed, 23 Mar 2016 15:26:01 GMT) Full text and rfc822 format available.

Message #78 received at 19853 <at> debbugs.gnu.org (full text, mbox):

From: Dmitry Gutov <dgutov <at> yandex.ru>
To: Michael Heerdegen <michael_heerdegen <at> web.de>,
 Stefan Monnier <monnier <at> iro.umontreal.ca>
Cc: 19853 <at> debbugs.gnu.org
Subject: Re: bug#19853: Acknowledgement (25.0.50; ElDoc is displayed whether
 eldoc-mode is enabled or not)
Date: Wed, 23 Mar 2016 17:25:02 +0200
On 03/23/2016 05:16 PM, Michael Heerdegen wrote:

> Dmitry, then I suggest you just make the change you prefer (on master, I
> guess) - can you do that?

Sometime after we release 25.1, I guess.

Thanks for the discussion.




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#19853; Package emacs. (Sun, 27 Mar 2016 00:32:02 GMT) Full text and rfc822 format available.

Message #81 received at 19853 <at> debbugs.gnu.org (full text, mbox):

From: John Wiegley <jwiegley <at> gmail.com>
To: Michael Heerdegen <michael_heerdegen <at> web.de>
Cc: 19853 <at> debbugs.gnu.org, Stefan Monnier <monnier <at> iro.umontreal.ca>,
 Dmitry Gutov <dgutov <at> yandex.ru>
Subject: Re: bug#19853: Acknowledgement (25.0.50;
 ElDoc is displayed whether eldoc-mode is enabled or not)
Date: Sat, 26 Mar 2016 17:31:46 -0700
[Message part 1 (text/plain, inline)]
>>>>> Michael Heerdegen <michael_heerdegen <at> web.de> writes:

> Stefan Monnier <monnier <at> iro.umontreal.ca> writes:
>> I don't have an opinion on this.

> Ok, thanks. I don't have a preference for one of the suggested solutions,
> too.

> Dmitry, then I suggest you just make the change you prefer (on master, I
> guess) - can you do that?

I prefer we use define-globalized-minor-mode, to be consistent with all other
global modes of this kind, since Stefan has no compelling reason for it to be
special.

-- 
John Wiegley                  GPG fingerprint = 4710 CF98 AF9B 327B B80F
http://newartisans.com                          60E1 46C4 BD1A 7AC1 4BA2
[signature.asc (application/pgp-signature, inline)]

Added tag(s) pending. Request was from Noam Postavsky <npostavs <at> users.sourceforge.net> to control <at> debbugs.gnu.org. (Sat, 25 Jun 2016 18:48:02 GMT) Full text and rfc822 format available.

Reply sent to Dmitry Gutov <dgutov <at> yandex.ru>:
You have taken responsibility. (Mon, 29 May 2017 23:58:02 GMT) Full text and rfc822 format available.

Notification sent to Dmitry Gutov <dgutov <at> yandex.ru>:
bug acknowledged by developer. (Mon, 29 May 2017 23:58:02 GMT) Full text and rfc822 format available.

Message #88 received at 19853-done <at> debbugs.gnu.org (full text, mbox):

From: Dmitry Gutov <dgutov <at> yandex.ru>
To: John Wiegley <jwiegley <at> gmail.com>,
 Michael Heerdegen <michael_heerdegen <at> web.de>
Cc: 19853-done <at> debbugs.gnu.org, Stefan Monnier <monnier <at> iro.umontreal.ca>
Subject: Re: bug#19853: Acknowledgement (25.0.50; ElDoc is displayed whether
 eldoc-mode is enabled or not)
Date: Tue, 30 May 2017 02:57:11 +0300
Version: 26.1

On 3/27/16 2:31 AM, John Wiegley wrote:

> I prefer we use define-globalized-minor-mode, to be consistent with all other
> global modes of this kind, since Stefan has no compelling reason for it to be
> special.

And done!




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#19853; Package emacs. (Tue, 30 May 2017 22:02:01 GMT) Full text and rfc822 format available.

Message #91 received at 19853-done <at> debbugs.gnu.org (full text, mbox):

From: John Wiegley <jwiegley <at> gmail.com>
To: Dmitry Gutov <dgutov <at> yandex.ru>
Cc: Michael Heerdegen <michael_heerdegen <at> web.de>, 19853-done <at> debbugs.gnu.org,
 Stefan Monnier <monnier <at> iro.umontreal.ca>
Subject: Re: bug#19853: Acknowledgement (25.0.50;
 ElDoc is displayed whether eldoc-mode is enabled or not)
Date: Tue, 30 May 2017 15:02:34 -0700
>>>>> Dmitry Gutov <dgutov <at> yandex.ru> writes:

> And done!

Thanks, Dmitry :)

-- 
John Wiegley                  GPG fingerprint = 4710 CF98 AF9B 327B B80F
http://newartisans.com                          60E1 46C4 BD1A 7AC1 4BA2




bug archived. Request was from Debbugs Internal Request <help-debbugs <at> gnu.org> to internal_control <at> debbugs.gnu.org. (Wed, 28 Jun 2017 11:24:07 GMT) Full text and rfc822 format available.

This bug report was last modified 8 years and 49 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.