From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Stefan Monnier Newsgroups: gmane.emacs.devel Subject: Re: display-buffer-alist simplifications Date: Sat, 13 Aug 2011 10:30:10 -0400 Message-ID: References: <87mxgem09k.fsf@stupidchicken.com> <87oc092gy0.fsf@stupidchicken.com> <4E380897.5000406@gmx.at> <871ux2nsrw.fsf@stupidchicken.com> <4E3AA5DA.8030403@gmx.at> <87mxfnn414.fsf@stupidchicken.com> <4E3D41F2.8060801@gmx.at> <4E3FA812.3080009@gmx.at> <87zkjkb572.fsf@mail.jurta.org> <4E3FD5ED.5000206@gmx.at> <4E412E2D.90908@gmx.at> <4E422ECA.2020207@gmx.at> <4E43A253.9040404@gmx.at> <4E45330C.9060801@gmx.at> <4E467FC9.9040008@gmx.at> NNTP-Posting-Host: lo.gmane.org Mime-Version: 1.0 Content-Type: text/plain X-Trace: dough.gmane.org 1313245827 31842 80.91.229.12 (13 Aug 2011 14:30:27 GMT) X-Complaints-To: usenet@dough.gmane.org NNTP-Posting-Date: Sat, 13 Aug 2011 14:30:27 +0000 (UTC) Cc: Juri Linkov , Chong Yidong , emacs-devel@gnu.org To: martin rudalics Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Sat Aug 13 16:30:21 2011 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([140.186.70.17]) by lo.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1QsFEB-0007uS-AB for ged-emacs-devel@m.gmane.org; Sat, 13 Aug 2011 16:30:19 +0200 Original-Received: from localhost ([::1]:36085 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1QsFEA-00059Z-PQ for ged-emacs-devel@m.gmane.org; Sat, 13 Aug 2011 10:30:18 -0400 Original-Received: from eggs.gnu.org ([140.186.70.92]:53094) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1QsFE8-00059J-Ea for emacs-devel@gnu.org; Sat, 13 Aug 2011 10:30:17 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1QsFE6-0004PB-T7 for emacs-devel@gnu.org; Sat, 13 Aug 2011 10:30:16 -0400 Original-Received: from ironport2-out.teksavvy.com ([206.248.154.181]:28289 helo=ironport2-out.pppoe.ca) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1QsFE6-0004Oo-MN for emacs-devel@gnu.org; Sat, 13 Aug 2011 10:30:14 -0400 X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: Av0EAFqJRk5FxKeo/2dsb2JhbABBp3d4gUABAQQBViMQCzQSFBgNJIgDuS6GRwSfboQ1 X-IronPort-AV: E=Sophos;i="4.67,366,1309752000"; d="scan'208";a="130993416" Original-Received: from 69-196-167-168.dsl.teksavvy.com (HELO ceviche.home) ([69.196.167.168]) by ironport2-out.pppoe.ca with ESMTP/TLS/ADH-AES256-SHA; 13 Aug 2011 10:30:11 -0400 Original-Received: by ceviche.home (Postfix, from userid 20848) id 6E756660CF; Sat, 13 Aug 2011 10:30:10 -0400 (EDT) In-Reply-To: <4E467FC9.9040008@gmx.at> (martin rudalics's message of "Sat, 13 Aug 2011 15:44:41 +0200") User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/24.0.50 (gnu/linux) X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 206.248.154.181 X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Original-Sender: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.devel:143195 Archived-At: >> You're referring to the following point, I think: >> - the display method has to handle everything, there's no common/shared >> postprocessing. >> The way I think we would handle it is by making most/all >> display-buffer- function finish by calling >> a display-buffer-post-process function, passing it the ALIST. >> So the ALIST may include something like (even-window . height) to >> specify whether and how to even windows. > Now this makes sense. We would have to decide whether we provide one > such function or more (depending on the functionality of the service or > the method used). And probably, if there's no suitable ALIST entry, > such a function would respect the old options where applicable. That's the idea, yes. I'm not completely satisfied with this, tho. I'd rather have a way to specify a list of post-processing functions, but I can't think of an elegant way to do that right now. >> Admittedly, you won't be able to do the equivalent of >> ((reuse-window foo bar) (reuse-window titi toto)) because the args >> passed to FUNCTIONs are the same for each FUNCTION, so if a FUNCTION >> appears twice both occurrences will behave identically. > I should be able to live with that. But how do we express that > splitting a window should try the largest window first and the lru > afterwards? You don't express it in display-buffer-alist but in Elisp code instead. Stefan