From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Eli Zaretskii Newsgroups: gmane.emacs.bugs Subject: bug#19194: 24.4.50; `window-body-width' is not dynamic relative to font size changes Date: Sat, 20 Dec 2014 18:18:22 +0200 Message-ID: <834msqs3ap.fsf@gnu.org> References: <87h9xm6plp.fsf@gmail.com> <5476F298.5000205@gmx.at> <87ppc8rk08.fsf@gmail.com> <54776EED.9090303@gmx.at> <83y4qwmq66.fsf@gnu.org> <54778275.1090007@gmx.at> <83tx1kml24.fsf@gnu.org> <54782441.3030600@gmx.at> <83h9xjn1zz.fsf@gnu.org> <5478C11C.6050207@gmx.at> <83r3vvsa0p.fsf@gnu.org> <54954B15.7040002@gmx.at> <87r3vuedxm.fsf@gmail.com> <54958C83.8010209@gmx.at> Reply-To: Eli Zaretskii NNTP-Posting-Host: plane.gmane.org X-Trace: ger.gmane.org 1419092363 13532 80.91.229.3 (20 Dec 2014 16:19:23 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Sat, 20 Dec 2014 16:19:23 +0000 (UTC) Cc: holtzermann17@gmail.com, 19194@debbugs.gnu.org To: martin rudalics Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Sat Dec 20 17:19:16 2014 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 1Y2MkN-0004eC-Pn for geb-bug-gnu-emacs@m.gmane.org; Sat, 20 Dec 2014 17:19:15 +0100 Original-Received: from localhost ([::1]:34745 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Y2MkN-0004wE-7p for geb-bug-gnu-emacs@m.gmane.org; Sat, 20 Dec 2014 11:19:15 -0500 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:44659) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Y2MkF-0004w1-DX for bug-gnu-emacs@gnu.org; Sat, 20 Dec 2014 11:19:12 -0500 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1Y2MkA-00086G-8q for bug-gnu-emacs@gnu.org; Sat, 20 Dec 2014 11:19:07 -0500 Original-Received: from debbugs.gnu.org ([140.186.70.43]:43723) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Y2MkA-00086C-6A for bug-gnu-emacs@gnu.org; Sat, 20 Dec 2014 11:19:02 -0500 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.80) (envelope-from ) id 1Y2Mk9-00021i-Oq for bug-gnu-emacs@gnu.org; Sat, 20 Dec 2014 11:19:01 -0500 X-Loop: help-debbugs@gnu.org Resent-From: Eli Zaretskii Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Sat, 20 Dec 2014 16:19:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 19194 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: Original-Received: via spool by 19194-submit@debbugs.gnu.org id=B19194.14190923147757 (code B ref 19194); Sat, 20 Dec 2014 16:19:01 +0000 Original-Received: (at 19194) by debbugs.gnu.org; 20 Dec 2014 16:18:34 +0000 Original-Received: from localhost ([127.0.0.1]:53089 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1Y2Mjh-000212-Mj for submit@debbugs.gnu.org; Sat, 20 Dec 2014 11:18:34 -0500 Original-Received: from mtaout26.012.net.il ([80.179.55.182]:37302) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1Y2Mje-00020t-Hz for 19194@debbugs.gnu.org; Sat, 20 Dec 2014 11:18:31 -0500 Original-Received: from conversion-daemon.mtaout26.012.net.il by mtaout26.012.net.il (HyperSendmail v2007.08) id <0NGW001001XSVF00@mtaout26.012.net.il> for 19194@debbugs.gnu.org; Sat, 20 Dec 2014 18:17:41 +0200 (IST) Original-Received: from HOME-C4E4A596F7 ([87.69.4.28]) by mtaout26.012.net.il (HyperSendmail v2007.08) with ESMTPA id <0NGW00LCZ2LHP770@mtaout26.012.net.il>; Sat, 20 Dec 2014 18:17:41 +0200 (IST) In-reply-to: <54958C83.8010209@gmx.at> X-012-Sender: halo1@inter.net.il X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.15 Precedence: list X-detected-operating-system: by eggs.gnu.org: GNU/Linux 3.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:97614 Archived-At: > Date: Sat, 20 Dec 2014 15:49:39 +0100 > From: martin rudalics > CC: Eli Zaretskii , 19194@debbugs.gnu.org > > > The one thing I'd add is an explanation of how "character width" is > > found or computed for variable-width fonts. (E.g. is it the width of an > > "M"?) > > Elsewhere I proposed: > > (defun window-char-width (&optional window) > "Return default character width for WINDOW. > WINDOW must be a live window and defaults to the selected one." > (setq window (window-normalize-window window t)) > (with-current-buffer (window-buffer window) > (let* ((info (font-info (face-font 'default))) > (width (aref info 11))) > (if (> width 0) > width > (aref info 10))))) > > You could try to experiment with this and either use > > (width (aref info 10)) > > or > > (width (aref info 7)) > > instead of (aref info 11). Or use something like > > (face-font 'default ?M) instead of (face-font 'default). > > I use variable width fonts only in customization buffers, so I'm not > very qualified at checking this myself. We can use whatever you find > here provided we can pack it into an argument of `window-body-width'. > > And Eli certainly knows better, so wait. Maybe my idea is silly. I actually don't really understand the question. What does "character width" mean when each character has a different width? Do you (Joe) mean you want to know the actual width of each and every character? If so, what for? In any case, if you do need the width of individual characters, take a look at font-get-glyphs (and font-at to get you the font for that).