From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!.POSTED.blaine.gmane.org!not-for-mail From: martin rudalics Newsgroups: gmane.emacs.devel Subject: Re: Understanding atomic window groups Date: Sat, 25 May 2019 09:59:03 +0200 Message-ID: <171bed6b-96d6-0fa0-f4f4-b09cb72c7192@gmx.at> References: <87tvdmqsxq.fsf@ericabrahamsen.net> <0a820a2c-8b37-469e-6b0e-61b126b6c7b8@gmx.at> <87lfyxszb5.fsf@ericabrahamsen.net> <875zpzedy5.fsf@ericabrahamsen.net> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 7bit Injection-Info: blaine.gmane.org; posting-host="blaine.gmane.org:195.159.176.226"; logging-data="77471"; mail-complaints-to="usenet@blaine.gmane.org" To: Eric Abrahamsen , emacs-devel@gnu.org Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Sat May 25 09:59:24 2019 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([209.51.188.17]) by blaine.gmane.org with esmtps (TLS1.0:RSA_AES_256_CBC_SHA1:256) (Exim 4.89) (envelope-from ) id 1hURaO-000K3M-6x for ged-emacs-devel@m.gmane.org; Sat, 25 May 2019 09:59:24 +0200 Original-Received: from localhost ([127.0.0.1]:37656 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1hURaN-00084t-16 for ged-emacs-devel@m.gmane.org; Sat, 25 May 2019 03:59:23 -0400 Original-Received: from eggs.gnu.org ([209.51.188.92]:60093) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1hURaH-00084i-V4 for emacs-devel@gnu.org; Sat, 25 May 2019 03:59:18 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1hURaG-000483-VD for emacs-devel@gnu.org; Sat, 25 May 2019 03:59:17 -0400 Original-Received: from mout.gmx.net ([212.227.17.20]:59873) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1hURaG-00046U-Ll for emacs-devel@gnu.org; Sat, 25 May 2019 03:59:16 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=gmx.net; s=badeba3b8450; t=1558771142; bh=4OnPYYu/iu/H1Vg+MTZV/ZSXL/cUvQIM3qhALAfMZWE=; h=X-UI-Sender-Class:Subject:To:References:From:Date:In-Reply-To; b=VOgsanYb7t7INdwFURGgkvCOXDfuVum2Rhy1XYFFE72m6ti8hefuO6ziSA5O3B0Jh orHlRC8SNzzFYygduriGJkUgoT0QM9PjuGkTqYHYKtE9r2Enfylhk/BvPlMzO+EUDF ppBGm06WGdL7pHE2cNvp2EBdFyhSKyMPxgYXiMhY= X-UI-Sender-Class: 01bb95c1-4bf8-414a-932a-4f6e2808ef9c Original-Received: from [192.168.1.101] ([213.162.73.253]) by mail.gmx.com (mrgmx105 [212.227.17.168]) with ESMTPSA (Nemesis) id 1MCbEp-1hMR6b2ykV-009epU; Sat, 25 May 2019 09:59:02 +0200 In-Reply-To: <875zpzedy5.fsf@ericabrahamsen.net> Content-Language: de-DE X-Provags-ID: V03:K1:pRsGmXHYRgFmDAWmXmFRRWRF8wBh5/W0Obv+0Vr63+M287EcCeC gN1vKkcBUD4cNONkQ+70m3B1QzIC6gHMTMUlLdAr3Rctlotn7xIvZv04VrfNaf/ASYqRYKc M3EWjPKg7Vn8Q8eO1DPFiggOOc4im1GmK/SenPIZZcJndKVTe10h/obFGETgOiRUeD56dIM m/nupKqumLt4pRedqgNSQ== X-UI-Out-Filterresults: notjunk:1;V03:K0:TDSylIMLWFw=:4XV0YJFJLQkrmESkVjd65v zWR7ffp1IsyaauHzM+PbIIFoqRiqxO+7/u19v9Bf1JIki1R9humuUKONwx8hgUhv1KA9QTHbO cWog/6HorxYpFJdIvtEtBnxn7frIjp/mt0HiVB7xGY4Oi3FvUA9uNvMSbL4RODGG6XkNFxtlz qbYK12ZWmjokAngm2LOfmtRnmjXTsJT9F9gkd21KQC2qhH1YWBAByP6AeMoifJfX7bXIWkYtZ UvlmbqbJBxfqRQO3pg1Y9stJihZQfEEvkymAlMbjePOBd660VTAKsi/N6NYjnXB4SCIsC2iyH j2+JJdN1nyG4FZDzqporniwzN+wNYOJdimIL+NOlXbbgBV0M2HoeDK74MNHNso4HOC30DfrXN UysCP/Pq1KSMjQ4VuZfiP5L01Z60fcvNGToyc700V9PtMnoUZeckugkeR7kZ9PyxoG95zH/8S pPcShfrtc/6/JF8TwZx1lf0K44hIkviMXH5LsDTNOjG2y9fdtDsSdT28aJfU1egO1AA+GBFzO fDTboeiDxYNnApaD+9tdfJz/xWwSGJxv6pHRbuLhRxMgZovNv/7civLnJiOq/vP5qE9T3tr/+ u8eyw/NLBI85XQxNvAO0FGuyFcKFGFFIm7FtCXF97TsLOKulL793yOJiefw/VVlqjWuSm/l17 f805WNzJFqqiI21b3gNqDOEafnbaF32/7XE+mnA/9PYoQMhOZXV88AnWfuhzWkX23jYd7EpBv MEqBN6SLaoUytEIlI2NVi7SRxthOEEu7jEWwdxWmhSrO5nArw5fWjTFEeh9ol40sf/drijOu X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 212.227.17.20 X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.21 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" Xref: news.gmane.org gmane.emacs.devel:236974 Archived-At: > `quit-window' just behaved unpredictably. The idea behind `quit-window' is that it should _never_ bark at the user but silently use the next-best solution when the predefined one fails. For example, typing C-h m usually displays a new *Help* window. Typing 'q' in that window conceptually deletes that window because it did not exist before showing *Help*. But if you do C-x 1 in the *Help* window first and then type 'q', that window can't be deleted and thus will have to show some other buffer instead. > This is really helpful, and I see that the docstring of `delete-window' > actually mentions the case of atomic windows. I agree with Eli that > maybe more documentation is in order. I feel like all the pieces are > present (here and there), but there's no one place to get a full > overview. The "one place" should be section 28.18 of the Elisp manual. If something is missing there, please complain right away. I'll now try to amend the manual entries for 'split-window', 'delete-window' and 'delete-other-windows' appropriately as Eli suggested. There I'll then have to talk about side windows as well so this may take some time. And if you want a function like the below please tell me. Thanks, martin (defun window-dissolve-atom (&optional window) "Dissolve atomic window WINDOW is part of. WINDOW must be a valid window and defaults to the selected one." (setq window (window-normalize-window window)) (when (window-parameter window 'window-atom) (let ((root (window-atom-root window))) (walk-window-subtree (lambda (window) (when (window-parameter window 'window-atom) (set-window-parameter window 'window-atom nil))) root t))))