From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Eli Zaretskii Newsgroups: gmane.emacs.bugs Subject: bug#34476: fluffy whitespace in the mode-line, despite it running off the screen Date: Tue, 29 Dec 2020 17:02:29 +0200 Message-ID: <83czysk64a.fsf@gnu.org> References: <87lg2icx3u.fsf@jidanni.org> <87mu367iue.fsf@gnus.org> <83sgcy7ebz.fsf@gnu.org> <87wo295wob.fsf@gnus.org> <83364x79jl.fsf@gnu.org> <83zh755udw.fsf@gnu.org> <87k0y94c8p.fsf@gnus.org> <83sgcx5mbm.fsf@gnu.org> <87tuxdxly3.fsf@gnus.org> <83r1sh5gjc.fsf@gnu.org> <87d040w3av.fsf@gnus.org> <83ft8v6hh7.fsf@gnu.org> <83sgcu4kz2.fsf@gnu.org> <83lfihld38.fsf@gnu.org> <83wo20jnwq.fsf@gnu.org> <87zh6wyy8q.fsf@gnus.org> <83h7t4j64c.fsf@gnu.org> <874kp2x2d9.fsf@gnus.org> <83ft8mirca.fsf@gnu.org> <874kp1r7s4.fsf@gnus.org> <83mu2tgxv1.fsf@gnu.org> <871rf9gtbx.fsf@gnus.org> Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="21248"; mail-complaints-to="usenet@ciao.gmane.io" Cc: contovob@tcd.ie, 34476@debbugs.gnu.org To: Lars Ingebrigtsen Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Tue Dec 29 16:03:19 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 1kuGWs-0005Pm-Uo for geb-bug-gnu-emacs@m.gmane-mx.org; Tue, 29 Dec 2020 16:03:18 +0100 Original-Received: from localhost ([::1]:59630 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kuGWr-0006rt-SK for geb-bug-gnu-emacs@m.gmane-mx.org; Tue, 29 Dec 2020 10:03:17 -0500 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:53600) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kuGWe-0006qf-2k for bug-gnu-emacs@gnu.org; Tue, 29 Dec 2020 10:03:05 -0500 Original-Received: from debbugs.gnu.org ([209.51.188.43]:56611) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1kuGWc-00018Y-KJ for bug-gnu-emacs@gnu.org; Tue, 29 Dec 2020 10:03:03 -0500 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1kuGWc-0006Xr-Db; Tue, 29 Dec 2020 10:03:02 -0500 X-Loop: help-debbugs@gnu.org Resent-From: Eli Zaretskii Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org, bugs@gnus.org Resent-Date: Tue, 29 Dec 2020 15:03:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 34476 X-GNU-PR-Package: emacs,gnus X-GNU-PR-Keywords: fixed Original-Received: via spool by 34476-submit@debbugs.gnu.org id=B34476.160925416725137 (code B ref 34476); Tue, 29 Dec 2020 15:03:02 +0000 Original-Received: (at 34476) by debbugs.gnu.org; 29 Dec 2020 15:02:47 +0000 Original-Received: from localhost ([127.0.0.1]:39924 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kuGWM-0006XL-Dt for submit@debbugs.gnu.org; Tue, 29 Dec 2020 10:02:46 -0500 Original-Received: from eggs.gnu.org ([209.51.188.92]:60326) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kuGWJ-0006X5-3n for 34476@debbugs.gnu.org; Tue, 29 Dec 2020 10:02:44 -0500 Original-Received: from fencepost.gnu.org ([2001:470:142:3::e]:60150) by eggs.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kuGWD-0000zh-HU; Tue, 29 Dec 2020 10:02:37 -0500 Original-Received: from 84.94.185.95.cable.012.net.il ([84.94.185.95]:3350 helo=home-c4e4a596f7) by fencepost.gnu.org with esmtpsa (TLS1.2:RSA_AES_256_CBC_SHA1:256) (Exim 4.82) (envelope-from ) id 1kuGWC-00012J-JN; Tue, 29 Dec 2020 10:02:37 -0500 In-Reply-To: <871rf9gtbx.fsf@gnus.org> (message from Lars Ingebrigtsen on Tue, 29 Dec 2020 04:54:42 +0100) 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:196935 Archived-At: > From: Lars Ingebrigtsen > Cc: contovob@tcd.ie, 34476@debbugs.gnu.org > Date: Tue, 29 Dec 2020 04:54:42 +0100 > > I've now gone ahead and polished up this a bit (and introduced the > `long' setting, too). After using it for a while, I see the obvious > thing that `format-mode-line' does wrong -- it discards all text > properties? So I'll open a new bug report for that, and I'm closing > this bug report. Hmm... does the test below really work reliably on GUI frames? > + if (EQ (Vmode_line_compact, Qlong) > + && window_body_width (XWINDOW (selected_window), false) >= > + SCHARS (mode_string)) > + { > + /* The window is wide enough; just display the mode line we > + just computed. */ > + display_string (NULL, mode_string, Qnil, > + 0, 0, &it, 0, 0, 0, > + STRING_MULTIBYTE (mode_string)); You are comparing the number of characters with the window-body width, but the latter is measured in units of the frame's canonical character width, i.e. the average width of the default face's font. If someone modifies the mode-line face to use a font of a different size, or even has enough wide characters there to violate the "1 character = 1 column" assumption, that test will produce either truncated mode-line string or will unnecessarily squeeze spaces from it. I understand the difficulty of doing TRT, but perhaps we should at least document this limitation, so that users don't expect too much from this feature, and we don't get bug reports that will be hard to fix?