From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!.POSTED!not-for-mail From: martin rudalics Newsgroups: gmane.emacs.bugs Subject: bug#32825: 27.0.50; Deterministic window management Date: Wed, 05 Dec 2018 10:15:55 +0100 Message-ID: <5C07974B.4060408@gmx.at> References: <874leeaiah.fsf@mail.linkov.net> <5BAA76CF.8010808@gmx.at> <878t3nublx.fsf@mail.linkov.net> <87wor7uqgb.fsf@web.de> <87o9bhkeih.fsf@mail.linkov.net> <87h8h9hk4w.fsf@web.de> <87d0rvb7xg.fsf@mail.linkov.net> <87sh0rkucr.fsf@web.de> <87d0rvqf5r.fsf@mail.linkov.net> <87k1m3krvm.fsf@web.de> <87o9bf13b4.fsf@mail.linkov.net> <87d0rvkq01.fsf@web.de> <5BD57C2B.7020109@gmx.at> <87tvl3rvks.fsf@mail.linkov.net> <5BD96392.3040008@gmx.at> <87y3adakkh.fsf@mail.linkov.net> <5BDAC0ED.9030405@gmx.at> <87h8h0juwn.fsf@mail.linkov.net> <5BDC0E38.5020901@gmx.at> <87bm62p5ea.fsf@mail.linkov.net> <5C063BA5.8080603@gmx.at> <87r2ex6icv.fsf@mail.linkov.net> NNTP-Posting-Host: blaine.gmane.org Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="------------070306020406050105090701" X-Trace: blaine.gmane.org 1544001319 12300 195.159.176.226 (5 Dec 2018 09:15:19 GMT) X-Complaints-To: usenet@blaine.gmane.org NNTP-Posting-Date: Wed, 5 Dec 2018 09:15:19 +0000 (UTC) Cc: Michael Heerdegen , 32825@debbugs.gnu.org To: Juri Linkov Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Wed Dec 05 10:15:15 2018 Return-path: Envelope-to: geb-bug-gnu-emacs@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by blaine.gmane.org with esmtp (Exim 4.84_2) (envelope-from ) id 1gUTH0-00034V-FS for geb-bug-gnu-emacs@m.gmane.org; Wed, 05 Dec 2018 10:15:14 +0100 Original-Received: from localhost ([::1]:32994 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1gUTJ6-0004Fb-72 for geb-bug-gnu-emacs@m.gmane.org; Wed, 05 Dec 2018 04:17:24 -0500 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:40816) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1gUTIm-0004CE-A6 for bug-gnu-emacs@gnu.org; Wed, 05 Dec 2018 04:17:06 -0500 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1gUTIk-0001mp-Ul for bug-gnu-emacs@gnu.org; Wed, 05 Dec 2018 04:17:04 -0500 Original-Received: from debbugs.gnu.org ([208.118.235.43]:57081) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1gUTIk-0001ma-P1 for bug-gnu-emacs@gnu.org; Wed, 05 Dec 2018 04:17:02 -0500 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1gUTIk-0007M4-Ig for bug-gnu-emacs@gnu.org; Wed, 05 Dec 2018 04:17:02 -0500 X-Loop: help-debbugs@gnu.org Resent-From: martin rudalics Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Wed, 05 Dec 2018 09:17:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 32825 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: Original-Received: via spool by 32825-submit@debbugs.gnu.org id=B32825.154400137528214 (code B ref 32825); Wed, 05 Dec 2018 09:17:02 +0000 Original-Received: (at 32825) by debbugs.gnu.org; 5 Dec 2018 09:16:15 +0000 Original-Received: from localhost ([127.0.0.1]:33106 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1gUTHz-0007L0-6A for submit@debbugs.gnu.org; Wed, 05 Dec 2018 04:16:15 -0500 Original-Received: from mout.gmx.net ([212.227.15.15]:48003) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1gUTHw-0007Kl-GQ for 32825@debbugs.gnu.org; Wed, 05 Dec 2018 04:16:13 -0500 Original-Received: from [192.168.1.101] ([212.95.5.150]) by mail.gmx.com (mrgmx001 [212.227.17.190]) with ESMTPSA (Nemesis) id 0M5Lqx-1hPrGH2jwl-00zToZ; Wed, 05 Dec 2018 10:16:02 +0100 In-Reply-To: <87r2ex6icv.fsf@mail.linkov.net> X-Provags-ID: V03:K1:3bt5hzUYuNooHtJevStDBovBmUU2hThmcaztqJaaFrC3ku7kVqp aTd/dQlR1Vg5kp/sX3fKEs9Mg3kh8cOvFPGYupsZJxtBeenbHkiepmjMFaNGVLWPKpvxVf7 PcPLN63kSweJzeCU6l95kaQrKl262Q5pWRro2/O7pV7ytYU31CF+BYzuRaRw0vPTDHMk5g/ T3aIsFAt+E4yqMxAggmjg== X-UI-Out-Filterresults: notjunk:1;V03:K0:0qq/6Q5Aigw=:FLZQaEm6vB2JdhGSPJONfP 3MaL1oI542xlSVBtZbbrKbc51Mw+ONox53D5EUJMWqMoyF4HUXakUu9JKIPzxQqVSfjpxmqml c4Y6VvqXqnkDR+3nwB6WjWqkSY4bFakxVrBboKOAw+NAonqpasoBGj+lnSD6CJKw/ITkuEjBC 4fj4v/yNbXQ8/NGZRtqIKc31razIKZ4MsuF7CU/xQRZwVNe7TIl7NBGU1EmGvCGW+bjO/Dn6m 5mDfuSJJvuS7B2TfaksgjFt0KwrACfLyrhftm2t75tAc1IyWb8Tipl6IGzSCQzUytxcs/5541 WF8dfcLViF+Dt0arA0D2uVxOPU6b33pos9OaqBKB6mBBuIfXgq0bJfyYu815vGcnnTWIZWP85 5jktzU6fTDa0SduGGZ4sE6jCKQkfzpoCt8f17JQ8mhWch74QgrukVCW1WYfB+bDCsOTSXYaz0 1kZA7T9Nd4ruf192FXybkCrshGoloZcvbsUJJzoOEMQsqioXegAmpu5AyyLry0+9OcoVfWyso OGNPKXqDTNYV2yNb3apqZeBe0hdI9F9w/PrcqIWdXVp1E/LuQSo35D/SM58RpjwlbHyZrxbwC plefGqXicP6JVEdweD9/Ge0jpA31h0JWQeDTFDUadYILktqok2BLlXjHn/ByLq7MZoTbrcsyW nnNSkbrWj62NkEmsMxPy3K8MdJjXPurnSOSSYiK499a088ZGw76Qtxp97q4XvVv4ql9IAXf8E G9+KEaYPgBvvEWhda69l8pG9I1DgLPQi14eCjI/mSlTE3Eq3eLJdtIJWr+lXuqkmdgUslG2j X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 208.118.235.43 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.org@gnu.org Original-Sender: "bug-gnu-emacs" Xref: news.gmane.org gmane.emacs.bugs:153098 Archived-At: This is a multi-part message in MIME format. --------------070306020406050105090701 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit >> Would that suffice? If so, would we use the same for >> 'display-buffer-pop-up-window' and 'display-buffer-at-bottom'? > > I don't know about display-buffer-pop-up-window, but for > display-buffer-at-bottom where the height depends on the > number of lines in the displayed buffer like e.g. *Completions* > this is not needed. Note that 'display-buffer-at-bottom' is agnostic of the number of lines in the displayed buffer. We eventually need a generally applicable rule because the user might want to add such an entry to 'display-buffer-alist'. And we might want a corresponding width entry for symmetry. For the moment, we can say that the entry is handled by 'display-buffer-below-selected' only. In the attached two functions I renamed it to 'window-min-height' to make it more consistent with 'window-height'. Please have a look. > I think the semantics of 'min-height' should be a minimal height > of the displayed window wherever it can be displayed. To amend the remaining buffer display action functions, a substantial number of changes will have to be made. 'window-splittable-p', for example, would need an additional MIN-SIZE argument. And what about 'display-buffer-same-window' or 'display-buffer-in-previous-window'? martin --------------070306020406050105090701 Content-Type: application/emacs-lisp; name="window--ensure-min-size.el" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="window--ensure-min-size.el" KGRlZnVuIHdpbmRvdy1lbnN1cmUtbWluLXNpemUgKHdpbmRvdyBtaW4tc2l6ZSAmb3B0aW9u YWwgaG9yaXpvbnRhbCkKICAiRW5zdXJlIHRoYXQgV0lORE9XIGlzIGF0IGxlYXN0IE1JTi1T SVpFIGxpbmVzIGhpZ2gsIGlmIHBvc3NpYmxlLgpPcHRpb25hbCBhcmd1bWVudCBIT1JJWk9O VEFMIG5vbi1uaWwgbWVhbnMgZW5zdXJlIHRoYXQgV0lORE9XIGlzCmF0IGxlYXN0IE1JTi1T SVpFIGNvbHVtbnMgd2lkZS4KClJldHVybiBub24tbmlsIGlmIFdJTkRPVyBoYXMsIG9yIGhh cyBiZWVuIHJlc2l6ZWQgdG8sIHRoZQpyZXF1aXJlZCBzaXplLiAgUmV0dXJuIG5vbi1uaWwg YWxzbyBpbiB0aGUgY2FzZSB3aGVyZSBNSU4tU0laRSBpcwpub3QgYSBudW1iZXIuICBSZXR1 cm4gbmlsIGlmIE1JTi1TSVpFIGlzIGEgbnVtYmVyLCBXSU5ET1cgZG9lcwpub3QgaGF2ZSB0 aGUgcmVxdWlyZWQgc2l6ZSBhbmQgY291bGQgbm90IGJlIHJlc2l6ZWQgdG8gaXQuICBOZXZl cgpzaWduYWwgYW4gZXJyb3IuIgogIChvciAobm90IChudW1iZXJwIG1pbi1zaXplKSkKICAg ICAgKGxldCAoKHNpemUgKHdpbmRvdy1zaXplIHdpbmRvdyBob3Jpem9udGFsKSkpCgkob3Ig KD49IHNpemUgbWluLXNpemUpCgkgICAgKGFuZCAod2luZG93LXNpemFibGUgd2luZG93ICgt IG1pbi1zaXplIHNpemUpIGhvcml6b250YWwpCgkJIChjb25kaXRpb24tY2FzZSBuaWwKCQkg ICAgICh3aW5kb3ctcmVzaXplIHdpbmRvdyAoLSBtaW4tc2l6ZSBzaXplKSBob3Jpem9udGFs KQoJCSAgIChlcnJvciBuaWwpKSkpKSkpCgooZGVmdW4gZGlzcGxheS1idWZmZXItYmVsb3ct c2VsZWN0ZWQgKGJ1ZmZlciBhbGlzdCkKICAiVHJ5IGRpc3BsYXlpbmcgQlVGRkVSIGluIGEg d2luZG93IGJlbG93IHRoZSBzZWxlY3RlZCB3aW5kb3cuCklmIHRoZXJlIGlzIGEgd2luZG93 IGJlbG93IHRoZSBzZWxlY3RlZCBvbmUgYW5kIHRoYXQgd2luZG93CmFscmVhZHkgZGlzcGxh eXMgQlVGRkVSLCB1c2UgdGhhdCB3aW5kb3cuICBPdGhlcndpc2UsIHRyeSB0bwpjcmVhdGUg YSBuZXcgd2luZG93IGJlbG93IHRoZSBzZWxlY3RlZCBvbmUgYW5kIHNob3cgQlVGRkVSIHRo ZXJlLgpJZiB0aGF0IGF0dGVtcHQgZmFpbHMgYXMgd2VsbCBhbmQgdGhlcmUgaXMgYSBub24t ZGVkaWNhdGVkIHdpbmRvdwpiZWxvdyB0aGUgc2VsZWN0ZWQgb25lLCB1c2UgdGhhdCB3aW5k b3cuCgpJZiBBTElTVCBjb250YWlucyBhICd3aW5kb3ctbWluLWhlaWdodCcgZW50cnksIGVu c3VyZSB0aGF0IHRoZQp3aW5kb3cgdXNlZCBpcyBhdCBsZWFzdCBhcyBoaWdoIGFzIHByZXNj cmliZWQgYnkgdGhhdCBlbnRyeSdzCnZhbHVlLiIKICAobGV0ICgobWluLWhlaWdodCAoY2Ry IChhc3NxICd3aW5kb3ctLW1pbi1oZWlnaHQgYWxpc3QpKSkKCXdpbmRvdykKICAgIChvciAo YW5kIChzZXRxIHdpbmRvdyAod2luZG93LWluLWRpcmVjdGlvbiAnYmVsb3cpKQogICAgICAg ICAgICAgKGVxIGJ1ZmZlciAod2luZG93LWJ1ZmZlciB3aW5kb3cpKQoJICAgICAod2luZG93 LWVuc3VyZS1taW4tc2l6ZSB3aW5kb3cgbWluLWhlaWdodCkKCSAgICAgKHdpbmRvdy0tZGlz cGxheS1idWZmZXIgYnVmZmVyIHdpbmRvdyAncmV1c2UgYWxpc3QpKQoJKGFuZCAobm90IChm cmFtZS1wYXJhbWV0ZXIgbmlsICd1bnNwbGl0dGFibGUpKQogICAgICAgICAgICAgKG9yIChu b3QgKG51bWJlcnAgbWluLWhlaWdodCkpCgkJICh3aW5kb3ctc2l6YWJsZS1wIG5pbCAoLSBt aW4taGVpZ2h0KSkpCiAgICAgICAgICAgICAobGV0ICgoc3BsaXQtaGVpZ2h0LXRocmVzaG9s ZCAwKQoJCSAgIHNwbGl0LXdpZHRoLXRocmVzaG9sZCkKICAgICAgICAgICAgICAgKHNldHEg d2luZG93ICh3aW5kb3ctLXRyeS10by1zcGxpdC13aW5kb3cKICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAoc2VsZWN0ZWQtd2luZG93KSBhbGlzdCkpKQogICAgICAgICAgICAgKHdp bmRvdy0tZGlzcGxheS1idWZmZXIKICAgICAgICAgICAgICBidWZmZXIgd2luZG93ICd3aW5k b3cgYWxpc3QgZGlzcGxheS1idWZmZXItbWFyay1kZWRpY2F0ZWQpKQoJKGFuZCAoc2V0cSB3 aW5kb3cgKHdpbmRvdy1pbi1kaXJlY3Rpb24gJ2JlbG93KSkKICAgICAgICAgICAgIChub3Qg KHdpbmRvdy1kZWRpY2F0ZWQtcCB3aW5kb3cpKQoJICAgICAod2luZG93LWVuc3VyZS1taW4t c2l6ZSB3aW5kb3cgbWluLWhlaWdodCkKICAgICAgICAgICAgICh3aW5kb3ctLWRpc3BsYXkt YnVmZmVyCiAgICAgICAgICAgICAgYnVmZmVyIHdpbmRvdyAncmV1c2UgYWxpc3QgZGlzcGxh eS1idWZmZXItbWFyay1kZWRpY2F0ZWQpKSkpKQo= --------------070306020406050105090701--