[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#8368: 24.0.50; "temp" means "help" - rename or at least document
From: |
Drew Adams |
Subject: |
bug#8368: 24.0.50; "temp" means "help" - rename or at least document |
Date: |
Mon, 30 Apr 2012 07:28:04 -0700 |
> >> You don't have to remove and re-add any hooks. It's
> >> sufficient to turn off help mode in the body of
> >> `with-output-to-temp-buffer'. Similarly,
> >> if you don't want to run `completion-list-mode-finish', turn off
> >> `completion-list-mode' in the buffer.
> >
> > Sufficient? That sounds like more work, not less. Why
> > turn help mode etc. on automatically and then turn it off again.
> > Why not just remove the hook so it does not get turned on?
>
> Because it's non-trivial to "just" do that. We have to go through all
> users of `with-output-to-temp-buffer' and check whether they want to
> turn on help mode or not. I don't have the slightest idea
> whether, for example, the calls in ada-xref.el require activating
> help mode or not.
We might be miscommunicating.
First, let me say that I don't really want to argue about the solution so much
as report the problem and ask for a solution.
Second, I was not talking about changing any existing code, especially Emacs Dev
code. I was simply saying that because help-mode stuff is currently hard-coded
into `w-o-t-t-b', then IF a programmer wants a temp buffer without that help
stuff then s?he can do something like what I wrote, as a workaround: define a
macro that uses `w-o-t-t-b', but first removes the help-stuff hooks and restores
them afterward. That's all.
Your suggestion was IIUC to instead use `w-o-t-t-b' and just turn off help-mode
in the BODY. OK, but that means that help-mode is entered and exited for
nothing - the hooks are run uselessly. That's all I was pointing out. Nothing
wrong with such useless work, but it, like my workaround, does not seem like the
solution to the problem.
> Obviously, dealing with `temp-buffer-show-hook' in
> `with-output-to-plain-temp-buffer' isn't necessary either if you don't
> run `help-mode-setup' before.
Ah, yes. Of course that means paying even more attention etc.
Anyway, thanks for thinking about this. I really would like to see Emacs fixed
in this regard. To my mind (not having thought much about it, and being pretty
ignorant about it), I would think that inheritance could be used to factor out
the stuff that is not specifically for help mode (i.e., have the help-mode stuff
inherit from that).
bug#8368: 24.0.50; "temp" means "help" - rename or at least document, Stefan Monnier, 2012/04/28