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: bug of display-table & make-glyph-code Date: Fri, 07 Sep 2007 16:25:03 -0400 Message-ID: References: <200708271732.22306.zslevin@gmail.com> <46DD9F41.8090700@gmx.at> <46DE63EE.3070509@gmx.at> <87wsv4fvav.fsf@stupidchicken.com> <46DFC3AE.3020009@gmx.at> <46E0136F.6080602@gmx.at> <46E06C5B.80408@gmx.at> <46E198D8.8080507@gmx.at> NNTP-Posting-Host: lo.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Trace: sea.gmane.org 1189196731 14373 80.91.229.12 (7 Sep 2007 20:25:31 GMT) X-Complaints-To: usenet@sea.gmane.org NNTP-Posting-Date: Fri, 7 Sep 2007 20:25:31 +0000 (UTC) Cc: Glenn Morris , Chong Yidong , rms@gnu.org, emacs-devel@gnu.org To: martin rudalics Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Fri Sep 07 22:25:30 2007 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([199.232.76.165]) by lo.gmane.org with esmtp (Exim 4.50) id 1ITkOL-0007e8-3F for ged-emacs-devel@m.gmane.org; Fri, 07 Sep 2007 22:25:25 +0200 Original-Received: from localhost ([127.0.0.1] helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1ITkOI-00043r-VW for ged-emacs-devel@m.gmane.org; Fri, 07 Sep 2007 16:25:23 -0400 Original-Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1ITkOE-000426-Dh for emacs-devel@gnu.org; Fri, 07 Sep 2007 16:25:18 -0400 Original-Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1ITkOC-00040v-JD for emacs-devel@gnu.org; Fri, 07 Sep 2007 16:25:17 -0400 Original-Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1ITkOC-00040p-85 for emacs-devel@gnu.org; Fri, 07 Sep 2007 16:25:16 -0400 Original-Received: from x-132-204-253-127.xtpr.umontreal.ca ([132.204.253.127] helo=ceviche.home) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1ITkO3-0001CR-5O; Fri, 07 Sep 2007 16:25:07 -0400 Original-Received: by ceviche.home (Postfix, from userid 20848) id 72739B40A1; Fri, 7 Sep 2007 16:25:03 -0400 (EDT) In-Reply-To: <46E198D8.8080507@gmx.at> (martin rudalics's message of "Fri\, 07 Sep 2007 20\:30\:48 +0200") User-Agent: Gnus/5.11 (Gnus v5.11) Emacs/23.0.50 (gnu/linux) X-Detected-Kernel: Linux 2.6 (newer, 3) X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Original-Sender: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.devel:78199 Archived-At: >> I must have lost too much context: I do not understand the >> above description. Can someone spell it out in baby-steps for my poor >> excuse for a brain? > The OP explained it as follows: >> Split an emacs frame in two windows showing buffers A and B: >> >> +-------------+ >> | | >> | A | >> | | >> +-------------+ >> | | >> | B | >> | | >> +-------------+ >> >> While in the lower window, run >> >> (set-window-dedicated-p (selected-window) t) >> >> Now, in the upper window, run >> >> (display-buffer "C") >> >> In Emacs 21, this will be the result: >> >> +-------------+ >> | A | >> +-------------+ >> | C | >> +-------------+ >> | | >> | B | >> | | >> +-------------+ >> >> In Emacs 22, this will be the result: >> >> +-------------+ >> | | >> | C | >> | | >> +-------------+ >> | | >> | B | >> | | >> +-------------+ >> >> In Emacs 22 with split-heigh-threshold=10, this will be the result: >> >> +-------------+ >> | | >> | A | >> | | >> +-------------+ >> | B | >> +-------------+ >> | C | >> +-------------+ >> > What he apparently wants is window B always display the same buffer, stay > below all other windows, and not change its size. I guess I see the following problems: 0 - it's not clear to me why Emacs chooses to split B rather than A. It seems unrelated to the split-height-threshold fix, so we need to look into this before being able to determine how best to fix it. 1 - since we're in buffer/window A, it would probably be preferable to place buffer C closer rather than further, so in this case after splitting B display-buffer should prefer using the top window for C and the bottom one for B. 2 - "dedicated" is mostly meant to cause deletion of the buffer to also cause deletion of the window. It says nothing about the window having a fixed size or being non-splittable. 3 - we have window-size-fixed for that. 4 - we don't have window-(un)splittable for that (there's a frame parameter to prevent splitting windows in that frame, tho). -- Stefan