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.devel Subject: Re: How to make Emacs popular again: Use monospaced fonts less Date: Mon, 12 Oct 2020 19:49:26 +0300 Message-ID: <83imbf2xux.fsf@gnu.org> References: <84273aa2-24a9-7584-18b9-03a5ac783d62@yandex.ru> <835z7vjrg3.fsf@gnu.org> <83tuvegkmo.fsf@gnu.org> <83v9ftf6n9.fsf@gnu.org> <835z7qfp6h.fsf@gnu.org> <87ft6lgw5y.fsf_-_@gnus.org> <1F8F3522-1E6C-40A3-B61A-B9B84FC0AD18@gnu.org> <87blh9gthg.fsf@gnus.org> <87tuv1f2y9.fsf@gnus.org> <87o8l9f1dl.fsf@gnus.org> <83lfgc50gb.fsf@gnu.org> <875z7gflpl.fsf@gnus.org> Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="12152"; mail-complaints-to="usenet@ciao.gmane.io" Cc: emacs-devel@gnu.org To: Lars Ingebrigtsen Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Mon Oct 12 18:51:11 2020 Return-path: Envelope-to: ged-emacs-devel@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 1kS12V-00030o-7A for ged-emacs-devel@m.gmane-mx.org; Mon, 12 Oct 2020 18:51:11 +0200 Original-Received: from localhost ([::1]:38684 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kS12U-000075-6p for ged-emacs-devel@m.gmane-mx.org; Mon, 12 Oct 2020 12:51:10 -0400 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:46476) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kS10j-0007l8-EK for emacs-devel@gnu.org; Mon, 12 Oct 2020 12:49:21 -0400 Original-Received: from fencepost.gnu.org ([2001:470:142:3::e]:46329) by eggs.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kS10i-0008TG-3w; Mon, 12 Oct 2020 12:49:21 -0400 Original-Received: from [176.228.60.248] (port=1610 helo=home-c4e4a596f7) by fencepost.gnu.org with esmtpsa (TLS1.2:RSA_AES_256_CBC_SHA1:256) (Exim 4.82) (envelope-from ) id 1kS10h-0001PJ-Ho; Mon, 12 Oct 2020 12:49:19 -0400 In-Reply-To: <875z7gflpl.fsf@gnus.org> (message from Lars Ingebrigtsen on Mon, 12 Oct 2020 00:21:10 +0200) X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Original-Sender: "Emacs-devel" Xref: news.gmane.io gmane.emacs.devel:257479 Archived-At: > From: Lars Ingebrigtsen > Cc: emacs-devel@gnu.org > Date: Mon, 12 Oct 2020 00:21:10 +0200 > > > Btw, if there were such a property, how would you calculate the value > > to put there? > > It depends -- for instance, when calculating tabular layouts, I'd know > the number of pixels already. In the mode line, I'd take 5x > typical-character-width if I wanted to display something that should > typically not take more than 5 characters. If this is what you already know, then calculating the goal coordinates for :align-to should be a simple matter of adding up the column widths. Right? > OK, here's another random idea for padding variable-pitch elements in > the mode lines in particular: > > (setq mode-line-thing > `(:propertize > "some-string" > :min-width 15)) > > which could have well-defined semantics, like "this element should have > the width of at least 15 typical characters", and be pretty easy to use? This stuff is basically unworkable without having a window in whose context the string will be shown. That's because we need metrics of each character glyph, and that presumes fonts, and that presumes faces and other stuff. This is why we use 'display' property: when the text is displayed, we have this data by definition. But not when we just have a string.