GNU bug report logs - #10475
24.0.92; `C-h v' displays `*' indicating user option

Previous Next

Package: emacs;

Reported by: "Drew Adams" <drew.adams <at> oracle.com>

Date: Tue, 10 Jan 2012 22:10:02 UTC

Severity: minor

Tags: wontfix

Found in version 24.0.92

Done: Lars Ingebrigtsen <larsi <at> gnus.org>

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 10475 in the body.
You can then email your comments to 10475 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#10475; Package emacs. (Tue, 10 Jan 2012 22:10:02 GMT) Full text and rfc822 format available.

Acknowledgement sent to "Drew Adams" <drew.adams <at> oracle.com>:
New bug report received and forwarded. Copy sent to bug-gnu-emacs <at> gnu.org. (Tue, 10 Jan 2012 22:10:02 GMT) Full text and rfc822 format available.

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

From: "Drew Adams" <drew.adams <at> oracle.com>
To: <bug-gnu-emacs <at> gnu.org>
Subject: 24.0.92; `C-h v' displays `*' indicating user option
Date: Tue, 10 Jan 2012 14:08:51 -0800
(defcustom foo nil
  "*A foobar function or nil."
  :type '(choice (const :tag "None" nil) function)
  :group 'convenience)
 
Then `C-h v foo'.  The `*' indicating that this is a user variable
(e.g. usable by `set-variable') is printed as if it were part of the
doc.  It should be removed.
 
The fix is trivial:
(when (eq ?* (elt doc 0))  (setq doc  (substring doc 1)))
 
Yes, Emacs no longer requires a `*' as a doc-string prefix with
`defcustom'.  But `describe-variable' should still DTRT with doc strings
from code that is designed to work also with older Emacs versions.
 
In addition, `user-variable-p' is the test used for functions such as
`set-variable', and it`user-variable-p' recognizes the `*' as defining a
user variable.  This is correct behavior.  The only problem is that
`describe-variable' should not treat this `*' as if it were part of the
doc text.
 
In GNU Emacs 24.0.92.1 (i386-mingw-nt5.1.2600) of 2012-01-05 on MARVIN
 Windowing system distributor `Microsoft Corp.', version 5.1.2600
 configured using `configure --with-gcc (4.6) --no-opt --cflags
 -ID:/devel/emacs/libs/libXpm-3.5.8/include
 -ID:/devel/emacs/libs/libXpm-3.5.8/src
 -ID:/devel/emacs/libs/libpng-dev_1.4.3-1/include
 -ID:/devel/emacs/libs/zlib-dev_1.2.5-2/include
 -ID:/devel/emacs/libs/giflib-4.1.4-1/include
 -ID:/devel/emacs/libs/jpeg-6b-4/include
 -ID:/devel/emacs/libs/tiff-3.8.2-1/include
 -ID:/devel/emacs/libs/gnutls-3.0.9/include --ldflags
 -LD:/devel/emacs/libs/gnutls-3.0.9/lib'
 





Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#10475; Package emacs. (Thu, 28 Apr 2016 12:03:01 GMT) Full text and rfc822 format available.

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

From: Lars Ingebrigtsen <larsi <at> gnus.org>
To: "Drew Adams" <drew.adams <at> oracle.com>
Cc: 10475 <at> debbugs.gnu.org
Subject: Re: bug#10475: 24.0.92; `C-h v' displays `*' indicating user option
Date: Thu, 28 Apr 2016 14:01:53 +0200
"Drew Adams" <drew.adams <at> oracle.com> writes:

> (defcustom foo nil
>   "*A foobar function or nil."
>   :type '(choice (const :tag "None" nil) function)
>   :group 'convenience)
>
> Then `C-h v foo'.  The `*' indicating that this is a user variable
> (e.g. usable by `set-variable') is printed as if it were part of the
> doc.  It should be removed.

I don't think so.  Instead we should remove all the superfluous "*"s in
the source code.  I'll submit a bug report.

> In addition, `user-variable-p' is the test used for functions such as
> `set-variable', and it`user-variable-p' recognizes the `*' as defining a
> user variable.  This is correct behavior.  The only problem is that
> `describe-variable' should not treat this `*' as if it were part of the
> doc text.

It no longer does that.  It's now an alias for custom-variable-p.

-- 
(domestic pets only, the antidote for overdose, milk.)
   bloggy blog: http://lars.ingebrigtsen.no




Added tag(s) wontfix. Request was from Lars Ingebrigtsen <larsi <at> gnus.org> to control <at> debbugs.gnu.org. (Thu, 28 Apr 2016 12:03:02 GMT) Full text and rfc822 format available.

bug closed, send any further explanations to 10475 <at> debbugs.gnu.org and "Drew Adams" <drew.adams <at> oracle.com> Request was from Lars Ingebrigtsen <larsi <at> gnus.org> to control <at> debbugs.gnu.org. (Thu, 28 Apr 2016 12:03:02 GMT) Full text and rfc822 format available.

Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#10475; Package emacs. (Thu, 28 Apr 2016 14:17:02 GMT) Full text and rfc822 format available.

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

From: Drew Adams <drew.adams <at> oracle.com>
To: Lars Ingebrigtsen <larsi <at> gnus.org>
Cc: 10475 <at> debbugs.gnu.org
Subject: RE: bug#10475: 24.0.92; `C-h v' displays `*' indicating user option
Date: Thu, 28 Apr 2016 07:16:27 -0700 (PDT)
> > (defcustom foo nil
> >   "*A foobar function or nil."
> >   :type '(choice (const :tag "None" nil) function)
> >   :group 'convenience)
> >
> > Then `C-h v foo'.  The `*' indicating that this is a user variable
> > (e.g. usable by `set-variable') is printed as if it were part of the
> > doc.  It should be removed.
> 
> I don't think so.  Instead we should remove all the superfluous "*"s in
> the source code.  I'll submit a bug report.
> 
> > In addition, `user-variable-p' is the test used for functions such as
> > `set-variable', and it`user-variable-p' recognizes the `*' as defining a
> > user variable.  This is correct behavior.  The only problem is that
> > `describe-variable' should not treat this `*' as if it were part of the
> > doc text.
> 
> It no longer does that.  It's now an alias for custom-variable-p.

You're missing the point.  "It no longer does that..."
Existing code written (and usable) in earlier releases,
where `*' here DOES have that meaning and effect, should
not be handled by recent Emacs differently wrt `C-h v'.

`C-h v' should behave the same across releases in this regard.




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#10475; Package emacs. (Thu, 28 Apr 2016 16:51:02 GMT) Full text and rfc822 format available.

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

From: Drew Adams <drew.adams <at> oracle.com>
To: Lars Ingebrigtsen <larsi <at> gnus.org>
Cc: 10475 <at> debbugs.gnu.org
Subject: RE: bug#10475: 24.0.92; `C-h v' displays `*' indicating user option
Date: Thu, 28 Apr 2016 09:50:47 -0700 (PDT)
If it wasn't clear, consider a library that is perfectly
usable in Emacs 25 but also in older Emacs versions that
require the `*'.  That library _should_ continue to use
the `*'.  Emacs 25 and later should tolerate it: remove
it from the output, knowing that older code will have it.

It is narrow-minded to think that just because the latest
distributed Emacs code no longer needs something no other
Emacs code needs it.




bug archived. Request was from Debbugs Internal Request <help-debbugs <at> gnu.org> to internal_control <at> debbugs.gnu.org. (Fri, 27 May 2016 11:24:05 GMT) Full text and rfc822 format available.

This bug report was last modified 9 years and 29 days ago.

Previous Next


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