all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: Eli Zaretskii <eliz@gnu.org>
To: Stefan Monnier <monnier@iro.umontreal.ca>
Cc: 62300@debbugs.gnu.org
Subject: bug#62300: 29.0.60; No hyperlinks for some symbols in *Help* buffers
Date: Mon, 20 Mar 2023 20:52:28 +0200	[thread overview]
Message-ID: <83ttyf6ys3.fsf@gnu.org> (raw)
In-Reply-To: <83y1nr6zmr.fsf@gnu.org> (message from Eli Zaretskii on Mon, 20 Mar 2023 20:34:04 +0200)

> Date: Mon, 20 Mar 2023 20:34:04 +0200
> From: Eli Zaretskii <eliz@gnu.org>
> 
> To reproduce:
> 
>   emacs -Q
>   C-h f global-text-scale-adjust RET
> 
> Observe that in the *Help* buffer the variable
> global-text-scale-adjust-resizes-frames does not have the link
> appearance.  This is because:
> 
>   (boundp 'global-text-scale-adjust-resizes-frames) => nil
> 
> By contrast, if you try
> 
>   C-h f text-scale-adjust RET
> 
> then the variable text-scale-mode-step in the *Help* buffer does get
> the link appearance, and boundp returns non-nil for that variable.
> 
> The reason seems to be that in the latter case typing the "C-h f"
> command causes face-remap.el to be loaded, whereas in the former case
> face-remap.el is not loaded.  I traced that to a problem which can be
> demonstrated by the following recipe:
> 
>   emacs -Q
>   M-x load-library RET help-fns RET
> 
> Now evaluate:
> 
>  (radix-tree-prefixes (help-definition-prefixes) "global-text-scale-adjust")
> 
> This returns nil, whereas if you do the same with "text-scale-adjust",
> you get:
> 
>   (("text-scale-" "face-remap") ("tex" "flyspell"))
> 
> Interestingly, just appending a dash to global-text-scale-adjust, i.e.
> 
>  (radix-tree-prefixes (help-definition-prefixes) "global-text-scale-adjust-")
> 
> does yield non-nil result:
> 
>   (("global-text-scale-adjust-" "face-remap"))
> 
> The non-nil result causes help-fns.el:help--symbol-completion-table to
> load the file:
> 
>     (when help-enable-completion-autoload
>       (let ((prefixes (radix-tree-prefixes (help-definition-prefixes) string)))
>         (help--load-prefixes prefixes)))
> 
> The load happens inside help--load-prefixes.  As result face-remap.el
> is loaded for text-scale-adjust, and the variables defined in
> face-remap.el become defined.  With global-text-scale-adjust the
> loading doesn't happen, and the variable stays unbound.
> 
> This sounds like some snafu with some heuristic somewhere, perhaps in
> radix-tree-prefixes, or in the code which registers the prefixes to
> begin with?
> 
> Can this be fixed, please, so that variables referenced in doc strings
> would reliably be displayed as links?

Adding Stefan.

Stefan, any suggestions or ideas?





  reply	other threads:[~2023-03-20 18:52 UTC|newest]

Thread overview: 12+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-03-20 18:34 bug#62300: 29.0.60; No hyperlinks for some symbols in *Help* buffers Eli Zaretskii
2023-03-20 18:52 ` Eli Zaretskii [this message]
2023-03-20 21:55   ` Stefan Monnier via Bug reports for GNU Emacs, the Swiss army knife of text editors
2023-03-21 13:11     ` Eli Zaretskii
2023-03-21 14:19       ` Stefan Monnier via Bug reports for GNU Emacs, the Swiss army knife of text editors
2023-03-21 17:26         ` Eli Zaretskii
2023-03-21 17:59           ` Stefan Monnier via Bug reports for GNU Emacs, the Swiss army knife of text editors
2023-03-21 18:23             ` Eli Zaretskii
2023-03-21 19:09               ` Stefan Monnier via Bug reports for GNU Emacs, the Swiss army knife of text editors
2023-03-21 19:54                 ` Eli Zaretskii
2023-03-22  1:48                   ` Stefan Monnier via Bug reports for GNU Emacs, the Swiss army knife of text editors
2023-03-22 15:52                     ` Eli Zaretskii

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=83ttyf6ys3.fsf@gnu.org \
    --to=eliz@gnu.org \
    --cc=62300@debbugs.gnu.org \
    --cc=monnier@iro.umontreal.ca \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/emacs.git
	https://git.savannah.gnu.org/cgit/emacs/org-mode.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.