all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: Stefan Monnier <monnier@iro.umontreal.ca>
To: Juri Linkov <juri@jurta.org>
Cc: martin rudalics <rudalics@gmx.at>,
	Chong Yidong <cyd@stupidchicken.com>,
	emacs-devel@gnu.org
Subject: Re: display-buffer-alist simplifications
Date: Mon, 08 Aug 2011 15:28:49 -0400	[thread overview]
Message-ID: <jwvsjpbhfzz.fsf-monnier+emacs@gnu.org> (raw)
In-Reply-To: <8739hccjrv.fsf@mail.jurta.org> (Juri Linkov's message of "Mon, 08 Aug 2011 12:45:36 +0300")

>> You can already do that since Emacs-20 by setting special-display-regexp
>> to something like
>> (add-to-list 'special-display-regexps
>> '("\\*Completions\\*" my-display-completions))
>> Tho I haven't seen any sample "my-display-completions" yet.
> A possible explanation is that users don't like to write functions
> to specify buffer-displaying behavior :)

Most likely, especially functions such as the my-display-completions you
described, which is pretty difficult to write.

>>> I expect this eventually will turn `display-buffer-alist' into
>> 
>>> (("\\*\\(vc-\\)?diff*"
>>> display-buffer-according-to-specifiers (spec . val))
>>> ("\\*\\(compilation\\|grep\\)\\*"
>>> display-buffer-according-to-specifiers (spec . val))
>>> ...)
>> 
>>> because predefined spec values are easier to customize.
>> Easier than what?
> Selecting from the set of predefined values is easier than
> writing a new function to customize the buffer-displaying behavior.

My proposal to only use FUNCTION in the API does not mean we wouldn't
provide a choice of alternatives in the Custom UI.  I fully intend to
have the same kind of "select behavior from a set of predefined values"
as we have now.  It's just that the values you choose are functions, so
while the :tag may say "same frame" the value will be the
`display-buffer-same-frame' function rather than a `same-frame' symbol.
And in the docstring of buffer-display-alist we would include links to
those predefined functions.
And the args to those function would still be your usual ALISTs with
symbols as keys.

>>> Yes, a single variable would be enough to override the display-buffer's arg
>>> (maybe a better name would be `display-buffer-specifiers').
>> In my proposal, these things are called "rule", where RULE has the form
>> (FUNCTION . ARGS).
> In classical logic, necessary part of "rule" is "condition".

I don't care about which name is used.  I didn't choose SPECIFIER
because that's already used in this discussion for the same purpose but
with a different representation and the whole point of this discussion
is to figure out which representation to use.

> So "rule" is rather such an element if `display-buffer-alist':
>   ("*Completions*" display-buffer-according-to-specifiers (spec . val))
> But since "condition" part is unnecessary in the call of `display-buffer',
> what remains is just specifiers.

My suggestion was to have display-buffer-alist be a list of (CONDITION
. RULE).  If you don't like those names, then please read my messages
through a transcriptor.  I don't think "RULE" appeared with any other
meaning within this thread, so the transcription is unambiguous.

> According to your earlier proposals such specifiers should be
> as short as possible like:

>   (display-buffer buffer 'same-frame)
>   (display-buffer buffer 'same-window)
>   (display-buffer buffer 'other-window)
>   (display-buffer buffer 'nearby)
>   (display-buffer buffer 'near-minibuffer)
>   (display-buffer buffer 'below-selected)
>   (display-buffer buffer 'side-window)

I don't know if I was worried about size, but right now I'm not too
worried about size, no.

> It will cause the callers to ask the questions like
> why this can't be written simply as:

>   (display-buffer-reuse-window buffer)
>   (display-buffer-pop-up-window buffer)

Easy: so display-buffer-alist may override it.


        Stefan



  reply	other threads:[~2011-08-08 19:28 UTC|newest]

Thread overview: 230+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-07-16 20:35 display-buffer-alist simplifications 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 [this message]
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
     [not found]                                                                                   ` <jwvbouyxu1j.fsf-monnier+emacs@gnu.org>
     [not found]                                                                                     ` <87sjo9hfar.fsf@stupidchicken.com>
     [not found]                                                                                       ` <jwvy5y1a6n5.fsf-monnier+emacs@gnu.org>
     [not found]                                                                                         ` <874o0p8emk.fsf@stupidchicken.com>
     [not found]                                                                                           ` <jwv8vq1t8u8.fsf-monnier+emacs@gnu.org>
     [not found]                                                                                             ` <87ipp4webw.fsf@stupidchicken.com>
     [not found]                                                                                               ` <jwvvct3q0t8.fsf-monnier+emacs@gnu.org>
     [not found]                                                                                                 ` <87bouvniij.fsf@stupidchicken.com>
     [not found]                                                                                                   ` <jwv7h5i91qh.fsf-monnier+emacs@gnu.org>
     [not found]                                                                                                     ` <87aaaeikr6.fsf@stupidchicken.com>
     [not found]                                                                                                       ` <jwvsjo6v5l2.fsf-monnier+emacs@gnu.org>
     [not found]                                                                                                         ` <878vpx3g4d.fsf@stupidchicken.com>
     [not found]                                                                                                           ` <jwvfwk5h11g.fsf-monnier+emacs@gnu.org>
     [not found]                                                                                                             ` <87pqj9qqhp.fsf@stupidchicken.com>
     [not found]                                                                                                               ` <jwvmxedfbzo.fsf-monnier+emacs@gnu.org>
2011-09-11 20:40                                                                                                                 ` display-buffer-overriding-action Chong Yidong
2011-09-12  0:04                                                                                                                   ` display-buffer-overriding-action Juanma Barranquero
2011-09-13  0:55                                                                                                                   ` display-buffer-overriding-action Stefan Monnier
2011-09-13  2:39                                                                                                                     ` display-buffer-overriding-action Chong Yidong
2011-09-13 17:59                                                                                                                       ` display-buffer-overriding-action Stefan Monnier
2011-09-13 19:01                                                                                                                         ` display-buffer-overriding-action Chong Yidong
2011-09-13 19:28                                                                                                                           ` display-buffer-overriding-action Chong Yidong
2011-09-13 20:48                                                                                                                           ` display-buffer-overriding-action Stefan Monnier
2011-09-13 22:40                                                                                                                             ` display-buffer-overriding-action Chong Yidong
2011-09-14  0:53                                                                                                                               ` display-buffer-overriding-action Stefan Monnier
2011-09-14  2:13                                                                                                                                 ` display-buffer-overriding-action Chong Yidong
2011-09-14 18:33                                                                                                                                   ` display-buffer-overriding-action Stefan Monnier
2011-09-14 22:36                                                                                                                                     ` display-buffer-overriding-action Chong Yidong
2011-09-15  0:04                                                                                                                                       ` display-buffer-overriding-action Stefan Monnier
2011-08-31 15:56                                                                           ` display-buffer-alist simplifications 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
  -- strict thread matches above, loose matches on Subject: below --
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-08-04 19:59 grischka
2011-08-04 21:01 ` Stefan Monnier
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
2011-08-08 14:01 grischka
2011-08-10 16:31 grischka
2011-08-10 17:06 ` Drew Adams

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=jwvsjpbhfzz.fsf-monnier+emacs@gnu.org \
    --to=monnier@iro.umontreal.ca \
    --cc=cyd@stupidchicken.com \
    --cc=emacs-devel@gnu.org \
    --cc=juri@jurta.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.