[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: display-buffer-alist simplifications
From: |
Juri Linkov |
Subject: |
Re: display-buffer-alist simplifications |
Date: |
Sun, 07 Aug 2011 21:12:47 +0300 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/24.0.50 (x86_64-pc-linux-gnu) |
> (setq display-buffer-fallback-alist
> '("\\*\\(shell\\|unsent mail\\|mail\\|inferior-lisp\\|ielm\\)\\*"
> (display-buffer-method reuse-window same-frame)
> (reuse-window-window same)))
>
> Just to be sure we are one the same page, here is how I imagine the
> system would work:
>
> - "Display specifiers" are cons cells (VAR . VALUE). For example,
> (reuse-window-window other) means that when Emacs is trying to reuse
> a window, it must use a window other than the selected one.
>
> - `display-buffer-method' is a special display specifier. Its VALUE is
> a list of "display-methods", one of `reuse-window', `pop-up-window',
> etc., or a "macro specifier" (any symbol except the reserved symbols
> `reuse-window' etc).
Adding `display-buffer-method' in the same common format (VAR . VALUES)
to specify priorities of methods is a nice way to simplify the current
complex merging behavior of `display-buffer-alist'.
> (I'll use the word "macro" for now, but we might want to pick another
> word since "macro" can be confused with keyboard macros.)
Why do we need "macro specifiers" at all? With a well-designed list
of possible specifiers and values for (VAR . VALUE), "macro specifiers"
should be unnecessary. Another reason to doubt their usefulness is that
they can't help to define such complex specifiers like `near-minibuffer'.
So if the user doesn't like how a hard-coded specifier behaves, then
the user could override its default behavior with other parameters
(VAR . VALUE), and finally when this turns out to be impossible to do,
then write own function and specify it's name in `display-buffer-alist'.
> - `display-buffer-alist' is an alist that maps a matcher (regexp,
> label, or matcher function) to an alist of display specifiers.
>
> - `display-buffer-fallback-alist' is an alist of display specifiers.
Perhaps a better name is `display-buffer-default-alist'.
- Re: display-buffer-alist simplifications, (continued)
- Re: display-buffer-alist simplifications, martin rudalics, 2011/08/09
- Re: display-buffer-alist simplifications, Stefan Monnier, 2011/08/09
- Re: display-buffer-alist simplifications, martin rudalics, 2011/08/10
- Re: display-buffer-alist simplifications, Štěpán Němec, 2011/08/10
- Re: display-buffer-alist simplifications, Stefan Monnier, 2011/08/10
- RE: display-buffer-alist simplifications, Drew Adams, 2011/08/10
- Re: display-buffer-alist simplifications, Juri Linkov, 2011/08/10
- Re: display-buffer-alist simplifications, Stefan Monnier, 2011/08/10
- Re: display-buffer-alist simplifications, Juri Linkov, 2011/08/08
- Re: display-buffer-alist simplifications, Stefan Monnier, 2011/08/08
- Re: display-buffer-alist simplifications,
Juri Linkov <=
- Re: display-buffer-alist simplifications, Juri Linkov, 2011/08/02
- Re: display-buffer-alist simplifications, martin rudalics, 2011/08/03
Re: display-buffer-alist simplifications, martin rudalics, 2011/08/01
Re: display-buffer-alist simplifications, Juri Linkov, 2011/08/01
Re: display-buffer-alist simplifications, Chong Yidong, 2011/08/01
Re: display-buffer-alist simplifications, Stefan Monnier, 2011/08/01