From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: martin rudalics Newsgroups: gmane.emacs.devel Subject: Re: Subwindow terminology Date: Sun, 06 Nov 2011 09:50:44 +0100 Message-ID: <4EB64A64.8080902@gmx.at> References: <87wrbfrxqz.fsf@gnu.org> <4EB51CCC.6040806@gmx.at> <87hb2iohql.fsf@uwakimon.sk.tsukuba.ac.jp> <4EB53A16.3030604@gmx.at> NNTP-Posting-Host: lo.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-15; format=flowed Content-Transfer-Encoding: 7bit X-Trace: dough.gmane.org 1320569459 9299 80.91.229.12 (6 Nov 2011 08:50:59 GMT) X-Complaints-To: usenet@dough.gmane.org NNTP-Posting-Date: Sun, 6 Nov 2011 08:50:59 +0000 (UTC) Cc: emacs-devel@gnu.org To: Dave Abrahams Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Sun Nov 06 09:50:55 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 1RMyRL-0006yj-Gw for ged-emacs-devel@m.gmane.org; Sun, 06 Nov 2011 09:50:55 +0100 Original-Received: from localhost ([::1]:33178 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1RMyRK-0001Cl-Ko for ged-emacs-devel@m.gmane.org; Sun, 06 Nov 2011 03:50:54 -0500 Original-Received: from eggs.gnu.org ([140.186.70.92]:52694) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1RMyRH-0001Cg-Nd for emacs-devel@gnu.org; Sun, 06 Nov 2011 03:50:52 -0500 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1RMyRG-0000c8-Ip for emacs-devel@gnu.org; Sun, 06 Nov 2011 03:50:51 -0500 Original-Received: from mailout-de.gmx.net ([213.165.64.23]:43902) by eggs.gnu.org with smtp (Exim 4.71) (envelope-from ) id 1RMyRG-0000bt-6r for emacs-devel@gnu.org; Sun, 06 Nov 2011 03:50:50 -0500 Original-Received: (qmail invoked by alias); 06 Nov 2011 08:50:46 -0000 Original-Received: from 62-47-58-45.adsl.highway.telekom.at (EHLO [62.47.58.45]) [62.47.58.45] by mail.gmx.net (mp023) with SMTP; 06 Nov 2011 09:50:46 +0100 X-Authenticated: #14592706 X-Provags-ID: V01U2FsdGVkX19XtMdy/alXgD4MCs/FPls/F2kXOgT3POApH4aLQg 4LMN6+GOTwtOFn User-Agent: Thunderbird 2.0.0.21 (Windows/20090302) In-Reply-To: X-Y-GMX-Trusted: 0 X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 213.165.64.23 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:145894 Archived-At: > So sometimes a child window is not necessarily a descendant window? If > so, that's just horrible. Some child windows have been adopted by their parents, others not. What's so horrible about that? Alternatively, we would have to demand that a fresh frame always has a parent window with one child window which doesn't strike me as very useful. > If you don't want to change the "subwindow" > terminology, maybe "child window" should become "immediate subwindow" or > "direct subwindow." I already regret that I started to describe the window tree at all. Do you think that I did not consider alternative ways of doing that? Window trees are described in terms of four well known concepts - root window, parent window, child window and subwindow. All these relations have been in the Emacs sources for years (think of `frame-root-window', the parent and vchild/hchild fields in the window structure, or the routine delete_all_subwindows) and I don't have much interest changing anything here. I didn't use the terms "ancestor" and "descendant" because these would introduce a genealogical connotation that doesn't exist. The terms "sibling" and "combination" are occasionally useful for describing the behavior of splitting and deleting windows. In any case, these terms have been widely used in Emacs 23 so I don't see a reason to change that. In addition I used the term "internal" for windows that are not visible on the screen and "live" or "leaf" for visible windows. I don't like the term "live" for the latter but this has been in Emacs ever since, so there's little hope to change this. We could abandon the term "internal window" in favor of "parent window" as Stefan suggested but this would lead to a connotation like "parent windows are not live" which I don't like (at least not as an explicit dichotomy). martin