all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: Andrea Corallo <acorallo@gnu.org>
To: "Kévin Le Gouguec" <kevin.legouguec@gmail.com>
Cc: Eli Zaretskii <eliz@gnu.org>,
	andreas.roehler@easy-emacs.de, 71117@debbugs.gnu.org
Subject: bug#71117: 30.0.50; output of describe-function
Date: Tue, 28 May 2024 18:25:05 -0400	[thread overview]
Message-ID: <yp1le3ttvzy.fsf@fencepost.gnu.org> (raw)
In-Reply-To: <87r0dl4mqd.fsf@gmail.com> ("Kévin Le Gouguec"'s message of "Wed, 29 May 2024 00:04:26 +0200")

Kévin Le Gouguec <kevin.legouguec@gmail.com> writes:

> Andrea Corallo <acorallo@gnu.org> writes:
>
>> Eli Zaretskii <eliz@gnu.org> writes:
>>
>>>> From: Andrea Corallo <acorallo@gnu.org>
>>>> Cc: Kévin Le Gouguec <kevin.legouguec@gmail.com>,
>>>>   71117@debbugs.gnu.org,
>>>>   andreas.roehler@easy-emacs.de
>>>> Date: Tue, 28 May 2024 13:44:33 -0400
>>>> 
>>>> >> Were you thinking of a command that specifically targets the symbol from
>>>> >> a displayed *Help* buffer, so the user would do e.g.
>>>> >> 
>>>> >> C-h v VAR RET   ; shows *Help* for VAR
>>>> >> C-h SOMETHING   ; finds source for VAR
>>>> >> 
>>>> >> where C-h SOMETHING's implementation would do (a smarter version of)
>>>> >> (with-current-buffer "*Help*"
>>>> >>   (help-view-source))
>>>> >> 
>>>> >> ?
>>>> >
>>>> > Yes, exactly.
>>>> 
>>>> Something like the attached?
>>>> 
>>>> It makes C-h z FUNCTION find the source for FUNCTION.
>>>
>>> I might be mistaken, but I don't think this is what I had in mind.
>>
>> You are not.
>>
>>> My use case is exactly like described above: I type "C-h v" or "C-h
>>> f", which displays the *Help* buffer in the other window.  Then I want
>>> to go to the source where the variable or function are defined, but
>>> without the need to switch to the window showing *Help*.
>>
>> The attached is my understanding of what we want (still using C-h z).
>> Kévin's mail make me suspect I've been too naive but anyway 😅...
>
> I don't actually have concrete examples where my allegedly-not-so-smart
> serving suggestion might fail 😉 The best I can come up with are
> what-ifs, e.g. "what if a user advises describe-* functions to rename
> *Help* buffers to something non-standard like *Help <SYM>*"; my answer
> then would be "describe-* commands could set some variable,
> e.g. last-help-buffer, that 'C-h z' could then consult".
>
> That's if we cared to support this kind of edge case, of course.

I thought about the variable but I didn't like to have to maintain a
status more (ie clean the variable when *Help* is killed).  OTOH in
help-fns-tests.el we already have a good number of hard-coded '*Help*'
around, so I think the current status quo is that we don't care.

> Re. the binding: if we are entering "Do Something With That Help Buffer
> I Just Invoked"-land, I wonder if we should stop at view-source; I could
> imagine users wanting to do other useful things like goto-info or
> customize.  In which case maybe we can find a mnemonic prefix to tuck
> all these actions?
>
> Thinking of e.g. 'C-h 4' (for the "other-window" connotation) or 'C-h H'
> (for "current _H_elp buffer"); help-find-source would then be bound to
> 'C-h 4 s', for example.
>
> (info-other-window currently hogs 'C-h 4 i' unfortunately… though
> nowadays 'C-x 4 4 i' also works, and 'C-x 4 i' is currently free 🤔
>
> 'C-x 4 h' is also free to use as a prefix, but maybe a bit of a
> fingerful)
>
> Don't give too much weight to my ramblings; I find 'C-h z' a bit
> cryptic, but I don't know that my alternatives are better.

I think those are actually good points, 'C-h z' is not very nice and
'C-h 4 s' would be probably easier to remember as 's' has the same
meaning in the *Help* buffer it-self.

  Andrea





  reply	other threads:[~2024-05-28 22:25 UTC|newest]

Thread overview: 20+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-05-22 13:53 bug#71117: 30.0.50; output of describe-function Andreas Röhler
2024-05-22 14:10 ` Eli Zaretskii
2024-05-22 17:46 ` Kévin Le Gouguec
2024-05-22 18:24   ` Eli Zaretskii
2024-05-22 22:22     ` Kévin Le Gouguec
2024-05-23  5:25       ` Eli Zaretskii
2024-05-28 17:44         ` Andrea Corallo
2024-05-28 18:20           ` Eli Zaretskii
2024-05-28 19:42             ` Andrea Corallo
2024-05-28 22:04               ` Kévin Le Gouguec
2024-05-28 22:25                 ` Andrea Corallo [this message]
2024-05-29 11:25                   ` Eli Zaretskii
2024-05-29 15:17                     ` Andrea Corallo
2024-05-29 15:54                       ` Eli Zaretskii
2024-05-29 16:04                         ` Andrea Corallo
2024-05-29 11:38                 ` Eli Zaretskii
2024-05-23  6:28   ` Juri Linkov
2024-05-23 11:51     ` Eshel Yaron via Bug reports for GNU Emacs, the Swiss army knife of text editors
2024-05-23 17:20       ` Juri Linkov
2024-05-23 20:23         ` Eshel Yaron via Bug reports for GNU Emacs, the Swiss army knife of text editors

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=yp1le3ttvzy.fsf@fencepost.gnu.org \
    --to=acorallo@gnu.org \
    --cc=71117@debbugs.gnu.org \
    --cc=andreas.roehler@easy-emacs.de \
    --cc=eliz@gnu.org \
    --cc=kevin.legouguec@gmail.com \
    /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.