From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: martin rudalics Newsgroups: gmane.emacs.bugs Subject: bug#44483: 27.1.50; Window parameter `min-margins' doesn't split window in half Date: Fri, 6 Nov 2020 19:12:51 +0100 Message-ID: References: <87tuu2inkv.fsf@fastmail.fm> Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="------------AE57AB0807172403D03752F4" Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="37113"; mail-complaints-to="usenet@ciao.gmane.io" To: Joost Kremers , 44483@debbugs.gnu.org Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Fri Nov 06 19:14:50 2020 Return-path: Envelope-to: geb-bug-gnu-emacs@m.gmane-mx.org Original-Received: from lists.gnu.org ([209.51.188.17]) by ciao.gmane.io with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1kb6GA-0009V9-DJ for geb-bug-gnu-emacs@m.gmane-mx.org; Fri, 06 Nov 2020 19:14:50 +0100 Original-Received: from localhost ([::1]:46480 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kb6G9-0001Vc-6l for geb-bug-gnu-emacs@m.gmane-mx.org; Fri, 06 Nov 2020 13:14:49 -0500 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:51886) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kb6FO-0001UC-Fg for bug-gnu-emacs@gnu.org; Fri, 06 Nov 2020 13:14:02 -0500 Original-Received: from debbugs.gnu.org ([209.51.188.43]:45729) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1kb6FO-0003NF-5s for bug-gnu-emacs@gnu.org; Fri, 06 Nov 2020 13:14:02 -0500 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1kb6FN-0004hu-Vh for bug-gnu-emacs@gnu.org; Fri, 06 Nov 2020 13:14:01 -0500 X-Loop: help-debbugs@gnu.org Resent-From: martin rudalics Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Fri, 06 Nov 2020 18:14:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 44483 X-GNU-PR-Package: emacs Original-Received: via spool by 44483-submit@debbugs.gnu.org id=B44483.160468638318009 (code B ref 44483); Fri, 06 Nov 2020 18:14:01 +0000 Original-Received: (at 44483) by debbugs.gnu.org; 6 Nov 2020 18:13:03 +0000 Original-Received: from localhost ([127.0.0.1]:57273 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kb6ER-0004gP-Gq for submit@debbugs.gnu.org; Fri, 06 Nov 2020 13:13:03 -0500 Original-Received: from mout.gmx.net ([212.227.17.20]:34289) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kb6EQ-0004ft-02 for 44483@debbugs.gnu.org; Fri, 06 Nov 2020 13:13:02 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=gmx.net; s=badeba3b8450; t=1604686372; bh=M95HHeE3uHIs/SGIXcDvXXRLCawIzES9MX8mD6Yfgxw=; h=X-UI-Sender-Class:Subject:To:References:From:Date:In-Reply-To; b=EwijTrtY97WWKKX7IhHvwqWlJcKX4ZjWFNmTHuueTsIDdXze8s3P11xiyFYcCiGrG T1fLiOPUx3kzRVNb6v6lN9PNWPZErgptG5Fuc+GW+ldTIyN1zEeLWmK25iGXZJCYUf TOqcnfEG+/XMGm5FsKzWjoXQdoD1cetATPpYrm00= X-UI-Sender-Class: 01bb95c1-4bf8-414a-932a-4f6e2808ef9c Original-Received: from [192.168.1.100] ([212.95.5.231]) by mail.gmx.com (mrgmx104 [212.227.17.168]) with ESMTPSA (Nemesis) id 1MG9g4-1kXpVI1cRY-00GZ9V; Fri, 06 Nov 2020 19:12:52 +0100 In-Reply-To: <87tuu2inkv.fsf@fastmail.fm> Content-Language: en-US X-Provags-ID: V03:K1:9+S1zluhPbt9RylYqfT6l6bU0xPboaLYk+XoyOKUq9CM/mf7wQo yAEekRCG44NL9PjnDbTSHP0DvsFu3yh9GO3hK2q/QdxD9gHSlkNfm0E9Hr1yXrXIBu68NVq B0W4NMcvibsRiRecwtyQTZ40aAXgjI+ExkksXy4Cw+nzcOhOdnzJjhy/bWFO7xVWgnq9PvY Idqdd9x5O3Q78MwpBW23A== X-UI-Out-Filterresults: notjunk:1;V03:K0:msoCw0UDuoo=:usen1UYduZ9j6e2a/ZyZSw tEQY8OWQyZbPyDbe099ZDqwfMl35VumnCqkePFdtu+LODM44GztPt9jBiV7Vm7qiSI+o/WVK0 tF1SE4JvO0gm+slEYOI/mqNwTjNIMvaOvSAEomnWwTrnkiOsSBJYt8jm909kE0rfRjoLaznxe ytd96uvm+H9MoIw0uAAwLHLIhG8kVNhMEXiSL+lGsasscI6xI/000uCaunSYvwejdFUxmxzd8 Mpj0+hsir4un/A+JNK9sRvpo6uNRzES3B6TSSvqziPC9zO7MC4nY/sIQstA4z/U3ScXhQj4iU 29JFNrf2YrQI48e/uWGm3x31bMU8e9letJkwiJfmTxadIK2Z9Ei9on2Vy/LeY2vluYyScKVww VDx+rs4gJt4bVE9ryWiR/ybRcR7xNmC44+ekebFvDj7BLGdRafdHVw/axXFFgLDics3klB1WE lcgXvEbK0YKaK90eMk3lSnSyv9DW/abHnFiMYVubiyAEjiAXTDiulITxeFI6i4/R0IWZsuRII +NIWVhKo1mf5zNJefVIb+WFaPZqfvt3EkjuqQSQCSfTi9u7l2FdrTYMPTvYbAy62qW5n4sRHS NsiHxsbAOV76+cZcgqT9DXCAry+WHFmga4L91dMtQOuLrobA4SRJHJANsS28NZ+QvNzIN+zvU w6YZ5x1t89dl2fJegDtXUXxAE8axd8OVfZkoPjAMb9bUoL//vZsvW258B0tkuA1deJDoD4Aty wom7PsADtN2kJG3s7Dsfu2dUJWE7lDGvs74NB6tddiblk91nY3PBl5tRtWspVs4/diQHb7fi X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: bug-gnu-emacs@gnu.org List-Id: "Bug reports for GNU Emacs, the Swiss army knife of text editors" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Original-Sender: "bug-gnu-emacs" Xref: news.gmane.io gmane.emacs.bugs:192791 Archived-At: This is a multi-part message in MIME format. --------------AE57AB0807172403D03752F4 Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 7bit > 1. Open any text file, preferably with long lines (to better see the effect). > > 2. `M-x visual-line-mode RET` > > 3. `M-: (set-window-margins (selected-window) 0 150) RET` > > The number 150 is arbitrary. It's appropriate for my case (with a frame width of > about 238 characters). > > 4. `M-: (set-window-parameter (selected-window) 'min-margins '(0 . 0)) RET` > > 5. `C-x 3` > > At this point, I expect the window to be split into two equally-sized > side-by-side windows, but the split is at about one third of the original window > width. The problem is that when we split the original window, the new window does not get its 'min-margins' parameter set and the subsequent sanitizing step screws up things. Please try the attached patch. And please look also into what happens when you shrink a frame with such large margins to a size that won't accommodate those margins any more unless they get shrunk. I'm afraid that the subsequent sanitizing step might cause troubles there as well. Thanks, martin --------------AE57AB0807172403D03752F4 Content-Type: text/x-patch; name="joost.diff" Content-Transfer-Encoding: quoted-printable Content-Disposition: attachment; filename="joost.diff" diff --git a/lisp/window.el b/lisp/window.el index 48005fc93e..6c08e71aae 100644 =2D-- a/lisp/window.el +++ b/lisp/window.el @@ -5414,6 +5414,12 @@ split-window ;; Sanitize sizes unless SIZE was specified. (unless size + ;; Make sure the new window gets any `min-margins' parameter + ;; of WINDOW. Otherwise, sanitizing screws up window sizes + ;; considerably (Bug#44483). + (let ((min-margins (window-parameter window 'min-margins))) + (when min-margins + (set-window-parameter new 'min-margins min-margins))) (window--sanitize-window-sizes horizontal)) (run-window-scroll-functions new) --------------AE57AB0807172403D03752F4--