From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Lars Ingebrigtsen Newsgroups: gmane.emacs.bugs Subject: bug#47712: 27.1; Provide `string-display-width` function, which takes properties into account, `substring-width` Date: Tue, 13 Apr 2021 10:01:12 +0200 Message-ID: <87k0p6sjef.fsf@gnus.org> References: <642c8a37-31c7-2723-12af-06cd7f120c2f@daniel-mendler.de> <83r1jg2q72.fsf@gnu.org> <87h7kbzxwh.fsf@gnus.org> <7c96d858-7947-0cca-60fc-1f6d027bb909@daniel-mendler.de> Mime-Version: 1.0 Content-Type: text/plain Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="39092"; mail-complaints-to="usenet@ciao.gmane.io" User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/28.0.50 (gnu/linux) Cc: 47712@debbugs.gnu.org To: Daniel Mendler Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Tue Apr 13 10:02:12 2021 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 1lWDzv-000A08-OE for geb-bug-gnu-emacs@m.gmane-mx.org; Tue, 13 Apr 2021 10:02:11 +0200 Original-Received: from localhost ([::1]:56516 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1lWDzu-0002Q6-IQ for geb-bug-gnu-emacs@m.gmane-mx.org; Tue, 13 Apr 2021 04:02:10 -0400 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:42388) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1lWDzm-0002Po-RH for bug-gnu-emacs@gnu.org; Tue, 13 Apr 2021 04:02:02 -0400 Original-Received: from debbugs.gnu.org ([209.51.188.43]:47350) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1lWDzm-0002Yz-Jc for bug-gnu-emacs@gnu.org; Tue, 13 Apr 2021 04:02:02 -0400 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1lWDzm-0001ya-FJ for bug-gnu-emacs@gnu.org; Tue, 13 Apr 2021 04:02:02 -0400 X-Loop: help-debbugs@gnu.org Resent-From: Lars Ingebrigtsen Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Tue, 13 Apr 2021 08:02:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 47712 X-GNU-PR-Package: emacs Original-Received: via spool by 47712-submit@debbugs.gnu.org id=B47712.16183008927561 (code B ref 47712); Tue, 13 Apr 2021 08:02:02 +0000 Original-Received: (at 47712) by debbugs.gnu.org; 13 Apr 2021 08:01:32 +0000 Original-Received: from localhost ([127.0.0.1]:58896 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1lWDzH-0001xt-OK for submit@debbugs.gnu.org; Tue, 13 Apr 2021 04:01:31 -0400 Original-Received: from quimby.gnus.org ([95.216.78.240]:59350) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1lWDzE-0001xe-J9 for 47712@debbugs.gnu.org; Tue, 13 Apr 2021 04:01:29 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnus.org; s=20200322; h=Content-Type:MIME-Version:Message-ID:In-Reply-To:Date: References:Subject:Cc:To:From:Sender:Reply-To:Content-Transfer-Encoding: Content-ID:Content-Description:Resent-Date:Resent-From:Resent-Sender: Resent-To:Resent-Cc:Resent-Message-ID:List-Id:List-Help:List-Unsubscribe: List-Subscribe:List-Post:List-Owner:List-Archive; bh=CjDGCpIMsAMnDYi+os/1Hb9x2T4wOvTcDrJO1uV4mfU=; b=MFaL50lCVnMpJseCHBgHRHhtzg JUkpCkbb4LFDPT2ohiQX0mtldJdWmJwmzojWtPbbDyynnK+zcemhBc25bYHPRpMHu7IZMgL3wT54H 9SouQn+ev3EktuUFPWgIWU9bHusS07klRl1rv+QVY+ZsJEx1rvsGv18D419tq6dFdwhI=; Original-Received: from cm-84.212.220.105.getinternet.no ([84.212.220.105] helo=xo) by quimby.gnus.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1lWDyy-0000wB-Mh; Tue, 13 Apr 2021 10:01:21 +0200 Face: iVBORw0KGgoAAAANSUhEUgAAADAAAAAwBAMAAAClLOS0AAAABGdBTUEAALGPC/xhBQAAACBj SFJNAAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAAAD1BMVEXx6Oy8pMpvc6/d aJr///8sYALUAAAAAWJLR0QEj2jZUQAAAAd0SU1FB+UEDQceASu+R0AAAAF1SURBVDjLdZRbgoMw CEXDZAMhbKBkNiCy/70Nj2g1OqkfNofnhbYUP4itrGccpy8M7dg19vF5OAV8RjMH7H0Yud/3mYJX cib/F/C4pxkXEm74AJ3fASPfsoxLVW85mNcWT4fWXstlt28vobIasM8KwngF+8iuEQregI6sycxv APXorRUkFali78xcSPoJNM9W3LbqCZqlqULaSgRX4AwOOeUxAmBR7Jz1Ih8LEIAUsxP4yp5vauln KFANkNpVr9hcfhxsVy2ni61jWri3d+NZPL2DKf9WrR0AVPH0DkoJUyXvE0yKbpXaQ5LZUwGrLQRz RRrsnwOQEJJ1Zfcmh5kAJhAx49hiJRuOvz2A7rmVE2gIRF7Inks5ASXQCUbHK2g1vuR2z3IpZ57g d78AcRAieLxmg/x6FPcQV/rSuQQgDclTRJISQBp8QC+zoM0e3VAQuP/qd60hKUkrBmT5sdeNsJgH r/8C1bbAwXof62Hb2n3acxn+AE6tVO1qmSHXAAAAJXRFWHRkYXRlOmNyZWF0ZQAyMDIxLTA0LTEz VDA3OjMwOjAxKzAwOjAwHlQbjAAAACV0RVh0ZGF0ZTptb2RpZnkAMjAyMS0wNC0xM1QwNzozMDow MSswMDowMG8JozAAAAAASUVORK5CYII= X-Now-Playing: Marianne Faithfull's _A Child's Adventure_: "She's Got A Problem" In-Reply-To: <7c96d858-7947-0cca-60fc-1f6d027bb909@daniel-mendler.de> (Daniel Mendler's message of "Mon, 12 Apr 2021 11:08:52 +0200") 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:203953 Archived-At: Daniel Mendler writes: > Note that I would like to have an implementation of > `substring-width`/`string-display-width`/`substring-display-width` > which does not allocate, since this reduces the GC pressure when > formatting many items. How do you think about this? > > Regarding images, different fonts, maybe a > `string-property-pixel-width` would be useful too. But for the use > cases I have in mind (formatting monospaced text) computing columns is > sufficient. Sure; I think a non-allocating function to count monospaced string width would be useful. -- (domestic pets only, the antidote for overdose, milk.) bloggy blog: http://lars.ingebrigtsen.no