From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: "Drew Adams" Newsgroups: gmane.emacs.bugs Subject: bug#14233: 24.3; Don't constrain frame size to character multiples Date: Sun, 28 Apr 2013 08:33:10 -0700 Message-ID: <7843BFD1369F48989C7E86E60FFA0C0A@us.oracle.com> References: <2r7gjy2gyy.fsf@fencepost.gnu.org> <83bo991z00.fsf@gnu.org><517257A0.4080607@gmx.at> <8338ul1rmb.fsf@gnu.org><517275A0.1040702@gmx.at> <83wqrxzbc7.fsf@gnu.org><51729A6A.7090404@gmx.at> <83mwstyxre.fsf@gnu.org><5172D1D6.8030200@gmx.at> <83bo99ys79.fsf@gnu.org><5173B0B2.9070607@gmx.at><51750438.5060106@gmx.at><8C0357F6-5720-42E5-90EB-B83416F0344E@swipnet.se><51762F4D.7070101@gmx.at> <8361zdxll8.fsf@gnu.org><51777DF3.5030206@gmx.at> <83fvyfx3c1.fsf@gnu.org><5178DB50.20404@gmx.at> <834neuvas1.fsf@gnu.org> <517A2FCE.30006@gmx.at> <97FD826D96FF4DAA91192817D475A0B3@us.oracle.com> <517B776B.2080007@gmx.at> <517D1370.5070603@gmx.at> NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset="US-ASCII" Content-Transfer-Encoding: 7bit X-Trace: ger.gmane.org 1367163232 23525 80.91.229.3 (28 Apr 2013 15:33:52 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Sun, 28 Apr 2013 15:33:52 +0000 (UTC) Cc: esabof@gmail.com, 14233@debbugs.gnu.org To: "'martin rudalics'" Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Sun Apr 28 17:33:56 2013 Return-path: Envelope-to: geb-bug-gnu-emacs@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by plane.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1UWTbv-0002zQ-Ff for geb-bug-gnu-emacs@m.gmane.org; Sun, 28 Apr 2013 17:33:55 +0200 Original-Received: from localhost ([::1]:46105 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1UWTbv-0005fO-4U for geb-bug-gnu-emacs@m.gmane.org; Sun, 28 Apr 2013 11:33:55 -0400 Original-Received: from eggs.gnu.org ([208.118.235.92]:58276) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1UWTbr-0005fI-SM for bug-gnu-emacs@gnu.org; Sun, 28 Apr 2013 11:33:52 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1UWTbq-0005mb-RD for bug-gnu-emacs@gnu.org; Sun, 28 Apr 2013 11:33:51 -0400 Original-Received: from debbugs.gnu.org ([140.186.70.43]:44565) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1UWTbq-0005mX-NK for bug-gnu-emacs@gnu.org; Sun, 28 Apr 2013 11:33:50 -0400 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.72) (envelope-from ) id 1UWTc2-0000vD-E0 for bug-gnu-emacs@gnu.org; Sun, 28 Apr 2013 11:34:02 -0400 X-Loop: help-debbugs@gnu.org Resent-From: "Drew Adams" Original-Sender: debbugs-submit-bounces@debbugs.gnu.org Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Sun, 28 Apr 2013 15:34:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 14233 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: Original-Received: via spool by 14233-submit@debbugs.gnu.org id=B14233.13671632223511 (code B ref 14233); Sun, 28 Apr 2013 15:34:02 +0000 Original-Received: (at 14233) by debbugs.gnu.org; 28 Apr 2013 15:33:42 +0000 Original-Received: from localhost ([127.0.0.1]:48673 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1UWTbh-0000ua-N0 for submit@debbugs.gnu.org; Sun, 28 Apr 2013 11:33:42 -0400 Original-Received: from aserp1040.oracle.com ([141.146.126.69]:26465) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1UWTbd-0000uL-J0 for 14233@debbugs.gnu.org; Sun, 28 Apr 2013 11:33:40 -0400 Original-Received: from acsinet21.oracle.com (acsinet21.oracle.com [141.146.126.237]) by aserp1040.oracle.com (Sentrion-MTA-4.3.1/Sentrion-MTA-4.3.1) with ESMTP id r3SFXMJE031152 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=OK); Sun, 28 Apr 2013 15:33:23 GMT Original-Received: from userz7022.oracle.com (userz7022.oracle.com [156.151.31.86]) by acsinet21.oracle.com (8.14.4+Sun/8.14.4) with ESMTP id r3SFXLXg012271 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=FAIL); Sun, 28 Apr 2013 15:33:22 GMT Original-Received: from abhmt109.oracle.com (abhmt109.oracle.com [141.146.116.61]) by userz7022.oracle.com (8.14.4+Sun/8.14.4) with ESMTP id r3SFXKjx002862; Sun, 28 Apr 2013 15:33:21 GMT Original-Received: from dradamslap1 (/71.202.147.44) by default (Oracle Beehive Gateway v4.0) with ESMTP ; Sun, 28 Apr 2013 08:33:20 -0700 X-Mailer: Microsoft Office Outlook 11 In-Reply-To: <517D1370.5070603@gmx.at> X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.6157 Thread-Index: Ac5EDcMrvZfb4G6+RZqbyCFJyuIaqQAEpZ1A X-Source-IP: acsinet21.oracle.com [141.146.126.237] X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.13 Precedence: list X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6.x X-Received-From: 140.186.70.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-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.bugs:73800 Archived-At: > Conceptually, `modify-frame-parameters' allows to change several frame > parameters for the next redisplay. But the outcome depends on the > evaluation order of the ALIST argument. Suppose you want to change a > frame's font and size in one and the same call. The result > would depend on which element is evaluated first due to the fact > that changing the font allows to change the size of the frame too. > This is not my idea of clean semantics. Respecting the order means that it is clear - pretty much equivalent, presumably, to modifying one frame parameter at a time, in order. Whether you do that using (a) separate calls, in sequence, to single-parameter setting functions or (b) using one or more calls to a general setting function that accepts an alist (which is of course ordered), changes nothing, AFAICT. Either way, you still have to take into account any interdependence among parameters. > > The new value is calculated this way (in frame-cmds.el):... > > (modify-frame-parameters frame (list (cons 'font fontname))) > > I suppose it would be trivial to change this single line to use > `set-frame-font' in order to deal with the change I propose. But if > people like the current behavior I can obviously leave things as they > are now. 1. `set-frame-font' apparently has this side effect, which is not appropriate here: Also, if FRAME is non-nil, alter the user's Customization settings as though the font-related attributes of the `default' face had been "set in this session", so that the font is applied to future frames. (It should say FRAMES, not FRAME, BTW.) Why does `set-frame-font' not allow you to change the font for a given frame (besides the selected frame), without also changing face `default' for future frames? Interestingly, in Emacs 20 (and in 21 it was essentially the same), `set-frame-font' just used `modify-frame-parameters' - very clear and simple: (defun set-frame-font (font-name) "Set the font of the selected frame to FONT. When called interactively, prompt for the name of the font to use. To get the frame's current default font, use `frame-parameters'." (interactive "sFont name: ") (modify-frame-parameters (selected-frame) (list (cons 'font font-name))) (frame-update-faces (selected-frame))) ;; And `frame-update-faces' was a no-op (obsolete in Emacs 21): (defun frame-update-faces (frame) nil) Nowadays, `set-frame-font' is an incomprehensible monster. 2. `modify-frame-parameters' is the basic, general, workhorse function for frames. It lets you set any number of frame parameters in any order. Yes, I would very much like it to continue working in the same, straightforward manner, including for parameter `font'.