From: Stefan Monnier <monnier@iro.umontreal.ca>
To: grischka <grishka@gmx.de>
Cc: emacs-devel@gnu.org
Subject: Re: display-buffer-alist simplifications
Date: Thu, 04 Aug 2011 17:01:41 -0400 [thread overview]
Message-ID: <jwvd3gk9ab8.fsf-monnier+emacs@gnu.org> (raw)
In-Reply-To: 4E3AFA34.2090903@gmx.de
>> It's also to force display-buffer (and switch-to-buffer when called
>> from Lisp packages) to use some other window/frame. I don't want any
>> other buffer ever shown in my *Completions* window (which I carefully
>> size and place next to my minibuffer-only frame), same for my other
>> strongly-dedicated windows like *compilation*.
> I'd actually like to have *compilation* and *grep* (alternatively)
> use the same one window. In that sense I always found that the
> 'dedicated' thing is too inflexible.
Yes, the `dedicated' is rather inflexible, and I'd agree with you (tho
not for *grep* and *compilation*, but for *vc-diff* and *diff* ;-).
But my proposal largely side-steps this issue since it's now a matter of
providing the corresponding display-buffer-group-dedicated function
which you could use as
(...
("\\*\\(vc-\\)?diff*"
display-buffer-group-dedicated (dedication-group . diffs))
("\\*\\(compilation\\|grep\\)\\*"
display-buffer-group-dedicated (dedication-group . compilation))
...)
Note: that's been possible in special-display-regexps for many years,
provided you write display-buffer-group-dedicated.
> Btw. it is IMO wrong to cater for an unlimited number of (anonymous)
> windows. Basically, you want 'display-buffer-alist' do two things
> at the same time:
> 1) associate buffers to windows,
> and also
> 2) specify these windows and their behavior
I guess I can see why that can be true for a single-frame usage.
It's going in the direction of ECB-style setups.
But I do use an unlimited number of windows (and frames), so I really
want to cater to such users as well ;-)
> (setq window-parameter-list '(
> (window-1 (spec . val) ....)
> (window-2 (spec . val) ....)
> (window-3 (spec . val) ....)
> ))
> (setq display-buffer-alist '(
> ((name . "*completions*) . window-2)
> ((name . "*Help*) . window-3)
> ((name . "*grep*) . window-2) ;; for me, as above ;)
> ((name . ".*") . window-1)
> ))
You could write it as:
(defun my-window-1 (buf) (foo1 buf (spec . val) ...)))
(defun my-window-2 (buf) (foo2 buf (spec . val) ...)))
(defun my-window-3 (buf) (foo3 buf (spec . val) ...)))
(setq display-buffer-alist '(
("*completions*" my-window-2)
("*Help*" my-window-3)
("*grep*" my-window-2)
(".*" my-window-1)
))
or [assuming there's a display-buffer-named-window function somewhere ]:
(setq display-buffer-named-window-alist '(
(window-1 (spec . val) ....)
(window-2 (spec . val) ....)
(window-3 (spec . val) ....)
))
(setq display-buffer-alist '(
("*completions*" display-buffer-named-window window-2)
("*Help*" display-buffer-named-window my-window-3)
("*grep*" display-buffer-named-window my-window-2)
(".*" display-buffer-named-window my-window-1)
))
-- Stefan
next prev parent reply other threads:[~2011-08-04 21:01 UTC|newest]
Thread overview: 216+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-08-04 19:59 display-buffer-alist simplifications grischka
2011-08-04 21:01 ` Stefan Monnier [this message]
2011-08-05 20:33 ` grischka
2011-08-07 18:22 ` Juri Linkov
2011-08-08 0:59 ` Stefan Monnier
2011-08-08 9:07 ` martin rudalics
-- strict thread matches above, loose matches on Subject: below --
2011-08-10 16:31 grischka
2011-08-10 17:06 ` Drew Adams
2011-08-08 14:01 grischka
2011-07-24 21:44 grischka
2011-07-25 9:18 ` martin rudalics
2011-07-25 11:22 ` grischka
2011-07-26 6:18 ` Juri Linkov
2011-07-27 13:07 ` grischka
2011-07-30 8:40 ` Juri Linkov
2011-07-31 15:48 ` grischka
2011-08-01 8:23 ` Juri Linkov
2011-07-16 20:35 Chong Yidong
2011-07-17 1:38 ` Juanma Barranquero
2011-07-17 9:41 ` martin rudalics
2011-07-17 9:40 ` martin rudalics
2011-07-18 15:15 ` Stefan Monnier
2011-07-18 18:52 ` martin rudalics
2011-07-18 20:34 ` Juanma Barranquero
2011-07-18 21:28 ` Drew Adams
2011-08-02 1:36 ` Stefan Monnier
2011-08-02 14:26 ` martin rudalics
2011-08-02 16:41 ` Drew Adams
2011-08-03 16:22 ` martin rudalics
2011-08-03 17:36 ` Drew Adams
2011-08-04 13:59 ` martin rudalics
2011-08-04 15:48 ` Drew Adams
2011-08-02 18:38 ` Stefan Monnier
2011-08-03 16:23 ` martin rudalics
2011-08-04 18:16 ` Stefan Monnier
2011-08-05 16:01 ` martin rudalics
2011-08-05 17:45 ` Drew Adams
2011-08-06 13:29 ` martin rudalics
2011-08-06 15:33 ` Drew Adams
2011-08-07 8:32 ` martin rudalics
2011-08-05 19:22 ` Stefan Monnier
2011-08-06 13:45 ` martin rudalics
2011-08-08 2:41 ` Stefan Monnier
2011-08-08 4:59 ` Tim Cross
2011-08-08 9:12 ` martin rudalics
2011-08-08 13:42 ` Drew Adams
2011-08-08 19:14 ` Stefan Monnier
2011-08-09 12:55 ` martin rudalics
2011-08-09 18:26 ` Stefan Monnier
2011-08-10 7:10 ` martin rudalics
2011-08-05 16:45 ` Juri Linkov
2011-08-05 19:22 ` Stefan Monnier
2011-08-07 18:17 ` Juri Linkov
2011-08-08 0:54 ` Stefan Monnier
2011-08-08 9:45 ` Juri Linkov
2011-08-08 19:28 ` Stefan Monnier
2011-08-09 9:08 ` Juri Linkov
2011-08-09 18:14 ` Stefan Monnier
2011-08-09 12:56 ` martin rudalics
2011-08-09 18:27 ` Stefan Monnier
2011-08-08 20:51 ` Chong Yidong
2011-08-08 21:34 ` Stefan Monnier
2011-08-09 9:11 ` Juri Linkov
2011-07-23 7:56 ` martin rudalics
2011-07-23 8:26 ` Eli Zaretskii
2011-07-23 18:39 ` martin rudalics
2011-07-23 17:22 ` Chong Yidong
2011-07-23 18:40 ` martin rudalics
2011-07-23 19:26 ` Chong Yidong
2011-07-24 10:07 ` martin rudalics
2011-07-24 13:54 ` Chong Yidong
2011-07-24 17:05 ` martin rudalics
2011-07-24 17:11 ` martin rudalics
2011-07-24 21:32 ` Chong Yidong
2011-07-25 9:18 ` martin rudalics
2011-07-25 9:29 ` Štěpán Němec
2011-07-25 11:41 ` Juanma Barranquero
2011-07-26 1:03 ` Tim Cross
2011-07-25 11:15 ` Juri Linkov
2011-07-26 1:15 ` Stephen J. Turnbull
2011-07-26 5:21 ` David Kastrup
2011-07-26 9:10 ` Stephen J. Turnbull
2011-07-26 10:50 ` David Kastrup
2011-07-26 6:15 ` Juri Linkov
2011-07-31 13:47 ` martin rudalics
2011-08-01 8:03 ` Juri Linkov
2011-08-01 18:57 ` martin rudalics
2011-07-31 13:49 ` martin rudalics
2011-08-01 8:08 ` Juri Linkov
2011-08-01 18:57 ` martin rudalics
2011-07-27 2:43 ` Chong Yidong
2011-07-27 4:59 ` Eli Zaretskii
2011-07-27 8:08 ` Tim Cross
2011-07-27 11:25 ` Juanma Barranquero
2011-07-27 11:27 ` Juanma Barranquero
2011-07-27 11:30 ` Lars Magne Ingebrigtsen
2011-07-27 11:47 ` David Kastrup
2011-07-27 12:04 ` Juanma Barranquero
2011-07-27 12:02 ` Juanma Barranquero
2011-07-27 16:16 ` Eli Zaretskii
2011-07-27 15:52 ` Drew Adams
2011-07-28 15:57 ` Chong Yidong
2011-07-31 13:46 ` martin rudalics
2011-07-27 16:10 ` martin rudalics
2011-07-27 20:27 ` Juri Linkov
2011-07-28 2:12 ` Stephen J. Turnbull
2011-07-28 2:35 ` Juanma Barranquero
2011-07-28 4:46 ` Eli Zaretskii
2011-07-28 7:45 ` Stephen J. Turnbull
2011-07-28 9:09 ` Eli Zaretskii
2011-07-29 1:39 ` Stephen J. Turnbull
2011-07-29 6:51 ` Eli Zaretskii
2011-07-29 7:44 ` Stephen J. Turnbull
2011-07-29 7:58 ` Eli Zaretskii
2011-07-30 16:08 ` Stephen J. Turnbull
2011-07-30 16:28 ` Eli Zaretskii
2011-07-30 16:45 ` David Kastrup
2011-07-30 17:12 ` Eli Zaretskii
2011-07-31 9:07 ` Stephen J. Turnbull
2011-07-29 11:09 ` Juanma Barranquero
2011-07-28 16:41 ` Chong Yidong
2011-07-29 11:04 ` Juri Linkov
2011-07-31 13:48 ` martin rudalics
2011-08-01 8:12 ` Juri Linkov
2011-07-31 13:48 ` martin rudalics
2011-08-01 8:19 ` Juri Linkov
2011-08-01 18:57 ` martin rudalics
2011-07-31 13:48 ` martin rudalics
2011-08-01 8:20 ` Juri Linkov
2011-08-01 17:13 ` Chong Yidong
2011-08-01 23:34 ` Andy Moreton
2011-08-02 14:24 ` martin rudalics
2011-08-02 16:41 ` Stefan Monnier
2011-08-03 16:22 ` martin rudalics
2011-08-03 16:26 ` Nix
2011-08-03 16:40 ` martin rudalics
2011-08-04 2:27 ` Stefan Monnier
2011-08-04 14:00 ` martin rudalics
2011-08-04 20:07 ` Stefan Monnier
2011-08-03 20:29 ` Chong Yidong
2011-08-04 13:59 ` martin rudalics
2011-08-05 17:48 ` Chong Yidong
2011-08-06 13:30 ` martin rudalics
2011-08-08 1:27 ` Stefan Monnier
2011-08-08 9:10 ` martin rudalics
2011-08-08 9:49 ` Andreas Röhler
2011-08-08 9:52 ` Juri Linkov
2011-08-08 12:26 ` martin rudalics
2011-08-08 18:51 ` Stefan Monnier
2011-08-09 12:55 ` martin rudalics
2011-08-09 18:19 ` Stefan Monnier
2011-08-10 7:10 ` martin rudalics
2011-08-10 13:01 ` Stefan Monnier
2011-08-11 9:35 ` martin rudalics
2011-08-11 13:50 ` Stefan Monnier
2011-08-12 14:05 ` martin rudalics
2011-08-12 18:03 ` Chong Yidong
2011-08-13 2:29 ` Stefan Monnier
2011-08-13 13:44 ` martin rudalics
2011-08-13 14:32 ` Stefan Monnier
2011-08-16 9:33 ` Juri Linkov
2011-08-16 15:37 ` martin rudalics
2011-08-17 9:27 ` Juri Linkov
2011-08-18 6:57 ` martin rudalics
2011-08-13 13:44 ` martin rudalics
2011-08-13 2:29 ` Stefan Monnier
2011-08-13 13:44 ` martin rudalics
2011-08-13 14:30 ` Stefan Monnier
2011-08-28 8:05 ` martin rudalics
2011-08-29 9:34 ` martin rudalics
2011-08-29 15:17 ` Stefan Monnier
2011-08-29 15:07 ` Stefan Monnier
2011-08-29 19:04 ` martin rudalics
2011-08-29 19:45 ` Juri Linkov
2011-08-30 4:10 ` Stefan Monnier
2011-08-31 1:43 ` Chong Yidong
2011-08-31 2:07 ` Drew Adams
2011-08-31 3:01 ` Chong Yidong
2011-08-31 9:33 ` martin rudalics
2011-08-31 9:57 ` Juri Linkov
2011-08-31 11:46 ` martin rudalics
2011-08-31 15:42 ` Chong Yidong
2011-08-31 16:59 ` Juri Linkov
2011-09-01 2:06 ` Chong Yidong
2011-09-02 1:33 ` Stefan Monnier
2011-09-02 14:54 ` Chong Yidong
2011-08-31 15:56 ` Chong Yidong
2011-09-01 0:25 ` martin rudalics
2011-09-01 2:04 ` Chong Yidong
2011-09-01 15:35 ` martin rudalics
2011-09-01 16:07 ` Chong Yidong
2011-08-31 13:33 ` Drew Adams
2011-09-01 1:35 ` Stephen J. Turnbull
2011-08-09 4:41 ` John Yates
2011-08-08 18:43 ` Stefan Monnier
2011-08-09 0:47 ` Stephen J. Turnbull
2011-08-09 12:54 ` martin rudalics
2011-08-09 18:12 ` Stefan Monnier
2011-08-10 7:09 ` martin rudalics
2011-08-10 10:42 ` Štěpán Němec
2011-08-10 12:50 ` Stefan Monnier
2011-08-10 14:26 ` Drew Adams
2011-08-10 9:17 ` Juri Linkov
2011-08-10 13:11 ` Stefan Monnier
2011-08-08 9:49 ` Juri Linkov
2011-08-08 19:31 ` Stefan Monnier
2011-08-07 18:12 ` Juri Linkov
2011-08-02 18:01 ` Juri Linkov
2011-08-03 16:22 ` martin rudalics
2011-08-01 18:57 ` martin rudalics
2011-08-01 16:16 ` Chong Yidong
2011-08-01 18:57 ` martin rudalics
2011-08-02 2:36 ` Chong Yidong
2011-08-03 6:39 ` Stephen J. Turnbull
2011-07-23 19:42 ` Chong Yidong
2011-07-24 10:07 ` martin rudalics
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=jwvd3gk9ab8.fsf-monnier+emacs@gnu.org \
--to=monnier@iro.umontreal.ca \
--cc=emacs-devel@gnu.org \
--cc=grishka@gmx.de \
/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.