From: Juri Linkov <juri@jurta.org>
To: martin rudalics <rudalics@gmx.at>
Cc: 1806@debbugs.gnu.org
Subject: bug#1806: dired-pop-to-buffer in wrong place
Date: Wed, 26 Sep 2012 09:24:00 +0300 [thread overview]
Message-ID: <87pq59z3nr.fsf@mail.jurta.org> (raw)
In-Reply-To: <5061807D.1010401@gmx.at> (martin rudalics's message of "Tue, 25 Sep 2012 11:59:25 +0200")
> Just that splitting the root will resize all windows proportionally and
> I just have another thread were people don't like that (recall that you
> want to do that for a large number of files).
Yes, there are more problems with `display-buffer-at-bottom' that could
be fixed later. This is why I don't propose to make it default now.
But still we should fix the problems with the current default action
`display-buffer-below-selected' because they are regressions.
>> Then a new function with a name like `with-temp-buffer-window-pop-up'
>> might be necessary to use it in Dired, Proced, VC
>
> VC currently doesn't use `temp-buffer-resize-mode' and I'm not sure
> whether we should use `with-temp-buffer-window' for it.
Like Dired and Proced, VC shrinks the window to fit the buffer in
`log-edit-show-files', so it could use `with-temp-buffer-window' too
if it will retain the original behavior in the affected commands.
> It was earlier via `special-display-buffer-names' and
> `special-display-regexps' and is now via `display-buffer-alist'. You
> just have to write the corresponding buffer display function. The
> problem is that nobody liked my earlier approach to combine specifiers.
> So you now have to code within these functions how you want to display
> the buffer and possibly resize its window.
There is no need to combine specifiers and no need to add
`temp-buffer-resize-regexps'. In your current implementation
it's perfectly possible to use the following call in `dired-mark-pop-up':
(with-temp-buffer-window
buffer
(cons 'display-buffer-below-selected
'((fit-window-to-buffer . t)))
...
and to add the following code to `display-buffer-below-selected'
(copied and adapted from `dired-pop-to-buffer'):
(defun display-buffer-below-selected (buffer alist)
"Try displaying BUFFER in a window below the selected window.
This either splits the selected window or reuses the window below
the selected one."
(let (window)
(or (and (not (frame-parameter nil 'unsplittable))
(setq window (window--try-to-split-window (selected-window)))
(window--display-buffer
buffer window 'window display-buffer-mark-dedicated))
(and (setq window (window-in-direction 'below))
(not (window-dedicated-p window))
(window--display-buffer
buffer window 'reuse display-buffer-mark-dedicated)))
;; See Bug#12281.
(set-window-start window (point-min))
;; If fit-window-to-buffer is t, make its window fit its contents.
(when (cdr (assq 'fit-window-to-buffer alist))
;; Try to not delete window when we want to display less than
;; `window-min-height' lines.
(fit-window-to-buffer window nil 1))
window))
> Too many people don't like to automatically fit windows to
> their buffers. They must be able to turn that off.
With the fixes above, users will be able to turn that off by customizing
`display-buffer-alist' to the following value (this should be done via the
Customization UI, but `setq' is used below for testing purposes):
(setq display-buffer-alist '(("Marked Files" .
(display-buffer-below-selected
(fit-window-to-buffer . nil)))))
next prev parent reply other threads:[~2012-09-26 6:24 UTC|newest]
Thread overview: 166+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-01-06 15:29 bug#1806: dired-pop-to-buffer in wrong place Juri Linkov
2009-01-06 17:33 ` martin rudalics
2009-01-06 17:54 ` Juri Linkov
2009-01-06 18:25 ` martin rudalics
2009-01-06 21:09 ` Juri Linkov
2009-01-07 10:27 ` martin rudalics
2009-01-07 12:09 ` Juri Linkov
2009-01-07 15:34 ` martin rudalics
2009-01-07 17:47 ` Juri Linkov
2009-01-07 20:00 ` martin rudalics
2009-01-08 7:42 ` martin rudalics
2009-01-08 22:55 ` Juri Linkov
2009-01-09 9:30 ` martin rudalics
2009-01-13 23:46 ` Juri Linkov
2009-01-14 14:20 ` martin rudalics
2009-01-14 18:00 ` Stefan Monnier
2009-01-14 21:55 ` martin rudalics
2009-01-14 22:19 ` Stefan Monnier
2009-01-15 10:36 ` martin rudalics
2009-01-15 14:59 ` Stefan Monnier
2009-01-15 22:59 ` Juri Linkov
2009-01-16 2:19 ` Stefan Monnier
2009-01-20 15:59 ` martin rudalics
2009-01-21 2:51 ` Stefan Monnier
2009-04-28 22:58 ` Juri Linkov
2009-04-29 7:13 ` martin rudalics
2009-04-29 9:54 ` Juri Linkov
2009-04-29 12:39 ` martin rudalics
2009-04-30 11:47 ` Juri Linkov
2009-04-29 15:28 ` Stefan Monnier
2009-04-30 9:06 ` martin rudalics
2009-04-30 18:29 ` Stefan Monnier
2009-05-01 10:04 ` martin rudalics
2009-05-01 17:24 ` Stefan Monnier
2009-05-02 6:59 ` martin rudalics
2009-05-04 13:52 ` Stefan Monnier
2009-05-04 16:40 ` martin rudalics
2009-05-02 11:48 ` Juri Linkov
2009-05-02 13:09 ` martin rudalics
2009-05-02 13:54 ` Juri Linkov
2009-05-02 18:53 ` martin rudalics
2009-05-02 20:57 ` Juri Linkov
2009-05-02 22:39 ` Juri Linkov
2009-05-03 7:50 ` martin rudalics
2009-05-03 11:46 ` Juri Linkov
2009-05-03 19:02 ` martin rudalics
2009-05-05 7:04 ` martin rudalics
2009-05-17 19:54 ` Juri Linkov
2009-05-18 8:11 ` martin rudalics
2009-05-18 10:59 ` Roland Winkler
2009-05-18 12:14 ` martin rudalics
2009-05-18 15:04 ` Roland Winkler
2009-05-18 19:44 ` Stefan Monnier
2009-05-19 0:09 ` Juri Linkov
2009-05-18 8:11 ` martin rudalics
2009-05-18 18:49 ` Glenn Morris
2009-05-19 0:19 ` Juri Linkov
2009-10-03 2:20 ` Glenn Morris
2009-10-05 21:45 ` Juri Linkov
2009-10-05 22:27 ` Stephen Berman
2009-10-06 2:53 ` Glenn Morris
2009-10-06 8:17 ` Stephen Berman
2009-10-06 22:38 ` Juri Linkov
2009-10-06 2:52 ` Glenn Morris
2009-10-06 3:55 ` Stefan Monnier
2009-10-06 7:22 ` Glenn Morris
2009-10-06 8:19 ` Stefan Monnier
2009-10-07 2:58 ` Glenn Morris
2009-10-07 5:54 ` Stefan Monnier
2009-10-06 8:56 ` martin rudalics
2009-10-06 16:19 ` Glenn Morris
2009-10-06 16:46 ` Stefan Monnier
2009-10-06 22:38 ` Juri Linkov
2009-10-07 2:58 ` Glenn Morris
2009-10-12 20:32 ` Juri Linkov
2009-10-12 22:57 ` Glenn Morris
2009-10-13 22:37 ` Juri Linkov
2009-10-14 20:35 ` Juri Linkov
2009-10-15 5:39 ` martin rudalics
2009-10-15 22:29 ` Juri Linkov
2009-10-16 0:30 ` Stefan Monnier
2009-10-16 7:05 ` martin rudalics
2009-10-16 13:09 ` Stefan Monnier
2009-10-16 13:25 ` martin rudalics
2009-10-16 15:37 ` Stefan Monnier
2009-10-16 16:35 ` martin rudalics
2009-10-16 20:41 ` Stefan Monnier
2009-10-17 9:03 ` martin rudalics
2009-10-18 1:40 ` Stefan Monnier
2009-10-18 10:24 ` martin rudalics
2009-10-18 14:45 ` Stefan Monnier
2009-10-18 15:34 ` martin rudalics
2009-10-19 2:08 ` Stefan Monnier
2009-10-19 7:36 ` martin rudalics
2009-10-19 14:01 ` Stefan Monnier
2009-10-19 15:16 ` martin rudalics
2009-10-19 18:35 ` Stefan Monnier
2009-10-20 7:35 ` martin rudalics
2009-10-20 13:30 ` Stefan Monnier
2009-10-20 15:14 ` martin rudalics
2009-10-20 19:45 ` Stefan Monnier
2009-10-16 7:05 ` martin rudalics
2009-10-16 9:38 ` Juri Linkov
2009-10-16 12:04 ` martin rudalics
2009-10-16 16:10 ` Glenn Morris
2009-10-16 13:15 ` Stefan Monnier
2009-10-06 18:26 ` Glenn Morris
2009-10-06 22:38 ` Juri Linkov
2009-05-19 0:18 ` Juri Linkov
2009-05-19 2:04 ` Stefan Monnier
2009-01-14 23:37 ` Juri Linkov
2009-01-15 10:37 ` martin rudalics
2009-01-15 23:00 ` Juri Linkov
2009-01-16 14:52 ` martin rudalics
2009-01-14 21:28 ` Juri Linkov
2009-01-14 22:01 ` martin rudalics
2009-01-14 23:16 ` Stefan Monnier
[not found] ` <jwv63kpg30v.fsf-monnier+emacsbugreports@gnu.org>
2009-01-08 19:25 ` martin rudalics
2009-01-08 22:59 ` Juri Linkov
[not found] ` <jwvy6xl9mz4.fsf-monnier+emacsbugreports@gnu.org>
2009-01-09 9:30 ` martin rudalics
2009-01-09 17:19 ` Stefan Monnier
2009-01-14 14:20 ` martin rudalics
2009-01-14 18:00 ` Stefan Monnier
2011-10-04 22:57 ` Glenn Morris
2011-10-04 23:55 ` Juri Linkov
2011-10-05 22:13 ` Chong Yidong
2011-10-05 23:23 ` Juri Linkov
2011-10-06 2:03 ` Chong Yidong
2011-10-06 15:20 ` Juri Linkov
2011-10-10 20:51 ` Juri Linkov
2009-01-08 14:31 ` Roland Winkler
2009-01-08 11:52 ` Carsten Dominik
2009-01-08 19:25 ` martin rudalics
2009-01-06 22:07 ` Stefan Monnier
2009-01-06 23:27 ` Juri Linkov
2009-01-07 4:23 ` Stefan Monnier
2012-09-22 13:24 ` martin rudalics
2012-09-22 23:54 ` Juri Linkov
2012-09-23 9:22 ` martin rudalics
2012-09-24 8:22 ` Juri Linkov
2012-09-24 9:40 ` martin rudalics
2012-09-25 8:05 ` Juri Linkov
2012-09-25 9:59 ` martin rudalics
2012-09-26 6:24 ` Juri Linkov [this message]
2012-09-26 8:48 ` martin rudalics
2012-09-26 10:10 ` Juri Linkov
2012-09-26 11:03 ` martin rudalics
2012-09-27 8:01 ` Juri Linkov
2012-09-27 17:32 ` martin rudalics
2012-09-27 19:24 ` Juri Linkov
2012-09-28 6:32 ` martin rudalics
2012-09-28 9:38 ` Juri Linkov
2012-09-28 13:14 ` martin rudalics
2012-09-28 15:27 ` Juri Linkov
2012-09-30 10:47 ` martin rudalics
2012-09-30 13:40 ` Juri Linkov
2012-10-03 23:29 ` Juri Linkov
2012-10-04 3:55 ` Drew Adams
2012-10-04 7:45 ` martin rudalics
2012-10-04 14:04 ` Drew Adams
2012-10-04 7:44 ` martin rudalics
2012-10-04 8:51 ` Juri Linkov
2012-10-04 13:17 ` martin rudalics
2012-09-26 3:16 ` Chong Yidong
2012-09-26 8:48 ` martin rudalics
2012-09-26 11:22 ` Juanma Barranquero
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=87pq59z3nr.fsf@mail.jurta.org \
--to=juri@jurta.org \
--cc=1806@debbugs.gnu.org \
--cc=rudalics@gmx.at \
/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.