Subject: Re: bug#74409: 30.0.92; customize buffer for bibtex-biblatex-entry-alist also shows unformatted variable value

From: Mauro Aranda <[email-masked]>
Date: Fri, 10 Jan 2025 11:31:28 -0300

Eli Zaretskii <[email-masked]> writes:

 >> From: Roland Winkler <[email-masked]>
 >> Date: Sun, 17 Nov 2024 16:42:10 -0600
 >>
 >>
 >> In emacs -Q load BibTeX mode and run
 >>
 >> M-x customize-variable RET
 >> bibtex-biblatex-entry-alist RET
 >>
 >> The top of the customize buffer is clogged with the unformatted
 >> variable value that hides the actual customization buffer.
 >>
 >> I do not know whether this is related to bug #53606.  Like bug #53606,
 >> the problem did not exist in earlier version of emacs (say, emacs 26.3).
 >> But it started some time ago (confirmed with emacs 28.2).
 >> Nothing changed on the side of BibTeX mode back then.
 >
 > It looks like the value of the variable was not shown in Emacs 26, but
 > is shown now.  Bisecting to find the offending commit would be highly
 > appreciated.
 >
 > Thanks.

I can't build Emacs 26 for some reason, but it's very likely that this
is a result of my change for Bug#35133:

commit 897b8561cdc856fb40b2a3c6f29230849aaf4a34
Author: Mauro Aranda <[email-masked]>
Date:   Sun Dec 13 10:44:30 2020 -0300

     Stop dropping the tag when creating the custom-variable widget

     * lisp/cus-edit.el (custom-variable-value-create): Obey the specified
     tag format when creating the variable tag, but stop dropping the tag
     format for the variable's type widget, since the tag can be used to
     give useful information to the user about the variable.  (Bug#35133)

The lazy widget (from which the widget bibtex-entry-alist derives),
prints its :tag.  Since there's no explicit :tag in bibtex-entry-alist,
and neither in the definition of the lazy widget, all of the widget
value gets printed.

Before my change, we dropped the tag (so no value printing for
bibtex-biblatex-entry-alist), but that wasn't a very good idea (see
Bug#35133), since we were overriding valuable info the defcustom writer
could have given to the Customize user.

I tend to think that we should fix these problems by giving appropriate
tags to the widgets used for user options, and leaving the cus-edit.el
code as it is.