[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#11939: 24.1; `save-buffers-kill-emacs' losesminibufferfocuswhenitcal
From: |
Drew Adams |
Subject: |
bug#11939: 24.1; `save-buffers-kill-emacs' losesminibufferfocuswhenitcalls`list-processes' |
Date: |
Sun, 12 Aug 2012 08:03:02 -0700 |
> >> > I do not especially _like_ redefinining vanilla functions...
> >>
> >> I don't understand why you insist on using, advising, or
> >> redefining `special-display-popup-frame'. Customizing
> >> `display-buffer-base-action' should be all you want.
> >
> > What part of must-work-with-releases-other-than-just-24
> > did you not get?
>
> Changing `special-display-popup-frame' for >= 24.2 would not
> affect its behavior with < 24.2.
Fair enough. I could provide a separate solution for >= 24.2.
Agreed. And I'd be glad to learn how.
Perhaps I will provide a separate 24.2+ solution, once we have 24.2. By that
time, based on past experience, it's quite possible that Emacs Dev will have
changed things in this area once again - perhaps even radically (again). But
I'm certainly open to finding a solution that does not require redefining
`special-display-popup-frame'.
However:
1. `display-buffer-base-action' is a user option. Users can set it to anything,
including things that do not do what my redefinition of `s-d-p-f' does, which is
to invoke `fit-frame'. Advising me to customize `display-buffer-base-action'
does not speak to providing such functionality in a library for other users.
2. I do not yet understand `display-buffer-base-action' enough to know _how_ it
might be changed to DTRT here. [*]
3. Wrt #2, in particular, redefining `s-d-p-f' affects only those places in
Emacs that call `s-d-p-f', in particular, special-display stuff. IIUC,
`display-buffer-base-action' is general and affects _all_ calls (and only calls)
to `display-buffer'. How to make it affect only what `s-d-p-f' affects?
4. Wrt #2 & #3: Please let me know precisely how you think I could, now (e.g.,
for recent Emacs 24 builds plus your code, which I hope you will merge soon),
use `display-buffer-base-action' to get the effect of my redefinition of
`s-d-p-f'.
I'm open to your suggestion, but so far it is not concrete enough for me to see
how `display-buffer-base-action' might replace redefining `s-d-p-f', even for
Emacs >= 24.2. What is no doubt obvious to you is not at all clear to me.
---
[*] FWIW, the `display-buffer-base-action' doc string is not very helpful:
"It should be a cons cell (FUNCTION . ALIST), where FUNCTION is a
function or a list of functions. Each function should accept two
arguments: a buffer to display and an alist similar to ALIST."
What does "similar" to ALIST mean here? Plus, all the doc tells us is the
_form_ of the option value, not what the value means or how it is used. Yes, it
sends us off to the doc for `display-buffer', but that is a labyrinthine jungle.
- bug#11939: 24.1; `save-buffers-kill-emacs' loses minibuffer focuswhenitcalls`list-processes', (continued)
- bug#11939: 24.1; `save-buffers-kill-emacs' loses minibuffer focuswhenitcalls`list-processes', martin rudalics, 2012/08/07
- bug#11939: 24.1; `save-buffers-kill-emacs' loses minibuffer focuswhenitcalls`list-processes', martin rudalics, 2012/08/08
- bug#11939: 24.1; `save-buffers-kill-emacs' loses minibuffer focuswhenitcalls`list-processes', Drew Adams, 2012/08/08
- bug#11939: 24.1; `save-buffers-kill-emacs' loses minibufferfocuswhenitcalls`list-processes', Drew Adams, 2012/08/08
- bug#11939: 24.1; `save-buffers-kill-emacs' losesminibufferfocuswhenitcalls`list-processes', Drew Adams, 2012/08/08
- bug#11939: 24.1; `save-buffers-kill-emacs' losesminibufferfocuswhenitcalls`list-processes', martin rudalics, 2012/08/09
- bug#11939: 24.1; `save-buffers-kill-emacs' losesminibufferfocuswhenitcalls`list-processes', Drew Adams, 2012/08/10
- bug#11939: 24.1; `save-buffers-kill-emacs' losesminibufferfocuswhenitcalls`list-processes', martin rudalics, 2012/08/11
- bug#11939: 24.1; `save-buffers-kill-emacs' losesminibufferfocuswhenitcalls`list-processes', Drew Adams, 2012/08/11
- bug#11939: 24.1; `save-buffers-kill-emacs' losesminibufferfocuswhenitcalls`list-processes', martin rudalics, 2012/08/12
- bug#11939: 24.1; `save-buffers-kill-emacs' losesminibufferfocuswhenitcalls`list-processes',
Drew Adams <=
- bug#11939: 24.1; `save-buffers-kill-emacs' losesminibufferfocuswhenitcalls`list-processes', martin rudalics, 2012/08/13
- bug#11939: 24.1; `save-buffers-kill-emacs' losesminibufferfocuswhenitcalls`list-processes', Drew Adams, 2012/08/13
- bug#11939: 24.1; `save-buffers-kill-emacs' losesminibufferfocuswhenitcalls`list-processes', martin rudalics, 2012/08/13
- bug#11939: 24.1; `save-buffers-kill-emacs'losesminibufferfocuswhenitcalls`list-processes', Drew Adams, 2012/08/13
- bug#11939: 24.1; `save-buffers-kill-emacs'losesminibufferfocuswhenitcalls`list-processes', martin rudalics, 2012/08/14
- bug#11939: 24.1; `save-buffers-kill-emacs'losesminibufferfocuswhenitcalls`list-processes', Drew Adams, 2012/08/14
- bug#11939: 24.1; `save-buffers-kill-emacs'losesminibufferfocuswhenitcalls`list-processes', martin rudalics, 2012/08/14
- bug#11939: 24.1; `save-buffers-kill-emacs'losesminibufferfocuswhenitcalls`list-processes', Drew Adams, 2012/08/14
- bug#11939: 24.1; `save-buffers-kill-emacs'losesminibufferfocuswhenitcalls`list-processes', martin rudalics, 2012/08/15
- bug#11939: 24.1; `save-buffers-kill-emacs'losesminibufferfocuswhenitcalls`list-processes', Drew Adams, 2012/08/26