Stefan Kangas <stefankangas@HIDDEN>
to control <at> debbugs.gnu.org
.
Full text available.Received: (at 64986) by debbugs.gnu.org; 3 Aug 2023 08:55:34 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Thu Aug 03 04:55:34 2023 Received: from localhost ([127.0.0.1]:50852 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1qRU7J-0003JN-TL for submit <at> debbugs.gnu.org; Thu, 03 Aug 2023 04:55:34 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:36138) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <eliz@HIDDEN>) id 1qRU7I-0003JA-1g for 64986 <at> debbugs.gnu.org; Thu, 03 Aug 2023 04:55:32 -0400 Received: from fencepost.gnu.org ([2001:470:142:3::e]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from <eliz@HIDDEN>) id 1qRU7B-0005QO-Io; Thu, 03 Aug 2023 04:55:25 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=References:Subject:In-Reply-To:To:From:Date: mime-version; bh=SS1tFpmEBJZCnEd/laXyZzTGl1BrHeQrRASBaYhjkco=; b=PO5TI0mwJ939 740SeJTXPAjGwhddoWtOh6nHjA2zeWHAU1VRGaok7Zw0f68FN3tWqn52krct2rKiMTFckcuZI+Itv ZfJ/7jPJgK4m+i1dSPtADKs2kmUEerwvyjATIPRSOg3oSR2lu9CbM7043GFl2hgINQXoh2NQKtnHC 7nRcoycvSp/9zOyQW7pDJNuwj1mvaoV4exZiAXp9fEdbu48GPf1nBGG4OkjXkFWCXSSL/m9IFhxuz Rqwug+mgXX/EYC3hRvIoBJgX5J7LIl2a6sLOg/82pP9porBArPOVLGsDDXsF8Lf3RjZdd6orohUkm WzUAs9JslCNj/LLBuM4KPw==; Received: from [87.69.77.57] (helo=home-c4e4a596f7) by fencepost.gnu.org with esmtpsa (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from <eliz@HIDDEN>) id 1qRU7B-0002GA-23; Thu, 03 Aug 2023 04:55:25 -0400 Date: Thu, 03 Aug 2023 11:55:35 +0300 Message-Id: <83fs50y06w.fsf@HIDDEN> From: Eli Zaretskii <eliz@HIDDEN> To: Ihor Radchenko <yantar92@HIDDEN>, Lars Ingebrigtsen <larsi@HIDDEN> In-Reply-To: <87edkmq523.fsf@localhost> (message from Ihor Radchenko on Tue, 01 Aug 2023 13:13:08 +0000) Subject: Re: bug#64986: 30.0.50; window-text-pixel-size sometimes returns 0 width when called from temporary buffer References: <87o7jrgq5n.fsf@localhost> <83pm470xuv.fsf@HIDDEN> <87edkmq523.fsf@localhost> X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 64986 Cc: 64986 <at> debbugs.gnu.org X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -3.3 (---) > From: Ihor Radchenko <yantar92@HIDDEN> > Cc: 64986 <at> debbugs.gnu.org > Date: Tue, 01 Aug 2023 13:13:08 +0000 > > Eli Zaretskii <eliz@HIDDEN> writes: > > > This tricky part is why we now have buffer-text-pixel-size: it takes > > care of making the buffer "temporarily shown" in the window. So I > > believe you should use that function instead. > > Indeed. We previously used `set-window-buffer' as in shr.el, but that > felt like an awkward workaround because it can sometimes err when > selected-window is dedicated. > > I am wondering if `shr-pixel-buffer-width' and `shr-pixel-column' should > also use `buffer-text-pixel-size'. The `(set-window-dedicated-p nil > nil)` is not nice as it could override user customization. Probably. Patches to that effect are welcome.
bug-gnu-emacs@HIDDEN
:bug#64986
; Package emacs
.
Full text available.Received: (at 64986) by debbugs.gnu.org; 1 Aug 2023 13:13:03 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Tue Aug 01 09:13:03 2023 Received: from localhost ([127.0.0.1]:47389 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1qQpBP-00049N-7B for submit <at> debbugs.gnu.org; Tue, 01 Aug 2023 09:13:03 -0400 Received: from mout01.posteo.de ([185.67.36.65]:35745) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <yantar92@HIDDEN>) id 1qQpBN-00048s-Ov for 64986 <at> debbugs.gnu.org; Tue, 01 Aug 2023 09:13:02 -0400 Received: from submission (posteo.de [185.67.36.169]) by mout01.posteo.de (Postfix) with ESMTPS id B1887240029 for <64986 <at> debbugs.gnu.org>; Tue, 1 Aug 2023 15:12:55 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=posteo.net; s=2017; t=1690895575; bh=p/nRSL2ShaxAwOUs0dzUvuDYJrclXyfrXqz4k5+0ZWY=; h=From:To:Cc:Subject:Date:Message-ID:MIME-Version:From; b=nc8q2nx/9CEkSDO511wd36DfFrT6TOm+8ZqBsPc9X9b7G9m2hnF5cYEfyJFbZoLt9 n4s7n0L83JbWSDXBsXIj7DH3+Kz4NNXlJ3j8PNVnylY1FpjaplMkxb9IgO3aqUV/cj hHNlfhU1qb9HXpmXAdM8tY2tQOlAUJmvCNTPl5xqc3VRxk7w/An8Tl8C5SH6pEgvcp jJViIdbNOq5RcE8nY7I5pj7DbmA7FeysXNpvl6w0a1Zy1ION29sOeZn3m95gIukzs/ G+4o+RW+eulk0s52GSrkXL6iT3EcMHYhL/icYJe8Mqo4rUcDICyp7rrhqhkQXIXacd dLryucjpswOyA== Received: from customer (localhost [127.0.0.1]) by submission (posteo.de) with ESMTPSA id 4RFbBZ37Sqz9rxD; Tue, 1 Aug 2023 15:12:54 +0200 (CEST) From: Ihor Radchenko <yantar92@HIDDEN> To: Eli Zaretskii <eliz@HIDDEN> Subject: Re: bug#64986: 30.0.50; window-text-pixel-size sometimes returns 0 width when called from temporary buffer In-Reply-To: <83pm470xuv.fsf@HIDDEN> References: <87o7jrgq5n.fsf@localhost> <83pm470xuv.fsf@HIDDEN> Date: Tue, 01 Aug 2023 13:13:08 +0000 Message-ID: <87edkmq523.fsf@localhost> MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: -3.3 (---) X-Debbugs-Envelope-To: 64986 Cc: 64986 <at> debbugs.gnu.org X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -4.3 (----) Eli Zaretskii <eliz@HIDDEN> writes: > So what your code is doing is measure the size of the text of the > buffer shown in WINDOW (in your case, the selected window) between > buffer positions 1 and 2. And the buffer shown in the selected > window, the one created by org-test-with-temp-text-in-file, begins > with an empty line, so the function correctly returns zero as the > horizontal dimensions of the text. Ouch! Thanks for the explanation. > This tricky part is why we now have buffer-text-pixel-size: it takes > care of making the buffer "temporarily shown" in the window. So I > believe you should use that function instead. Indeed. We previously used `set-window-buffer' as in shr.el, but that felt like an awkward workaround because it can sometimes err when selected-window is dedicated. I am wondering if `shr-pixel-buffer-width' and `shr-pixel-column' should also use `buffer-text-pixel-size'. The `(set-window-dedicated-p nil nil)` is not nice as it could override user customization. -- Ihor Radchenko // yantar92, Org mode contributor, Learn more about Org mode at <https://orgmode.org/>. Support Org development at <https://liberapay.com/org-mode>, or support my work at <https://liberapay.com/yantar92>
bug-gnu-emacs@HIDDEN
:bug#64986
; Package emacs
.
Full text available.Received: (at 64986) by debbugs.gnu.org; 1 Aug 2023 12:07:58 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Tue Aug 01 08:07:58 2023 Received: from localhost ([127.0.0.1]:47353 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1qQoAP-0008NK-OA for submit <at> debbugs.gnu.org; Tue, 01 Aug 2023 08:07:58 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:53966) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <eliz@HIDDEN>) id 1qQoAL-0008N6-I9 for 64986 <at> debbugs.gnu.org; Tue, 01 Aug 2023 08:07:55 -0400 Received: from fencepost.gnu.org ([2001:470:142:3::e]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from <eliz@HIDDEN>) id 1qQoAG-0008Rq-3Q; Tue, 01 Aug 2023 08:07:48 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=References:Subject:In-Reply-To:To:From:Date: mime-version; bh=Zk9QHSFlD4QOcUquM3FX0IJnN2aj4irK7vDUgMnSkRE=; b=qq1vEH4Kw85G LLCcuinJj6CkiEuOtdQTw0xpP+yrWT4vPuseCgaG10tInQSn1bDTRQj/i5sqL7Kbu6/9LtwMad0y8 OjIBRXsvCpQ4ISz2WT6NjVxrJVB27SoPboimZj/m4MAp6l3Xs1lELy5aHgs5CE8rUrh6WStf7WmA8 IvUYlCUe5CHwtLCzdOpMFqraMkH9m8xway658WRXMR5Nc8CJN1TNzcS0Qma3+k5t+5NG8p7FSOHvD VfITCmT7pJJJeqviIPE+MqaEWQusTtnV5uVfPrsimVLTM4FZKNP6yT8qpdLl6tPYhHRM1gu9AJFee aNi13csEnyJGVBSp19e+9g==; Received: from [87.69.77.57] (helo=home-c4e4a596f7) by fencepost.gnu.org with esmtpsa (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from <eliz@HIDDEN>) id 1qQoAF-0004c5-GH; Tue, 01 Aug 2023 08:07:47 -0400 Date: Tue, 01 Aug 2023 15:07:52 +0300 Message-Id: <83pm470xuv.fsf@HIDDEN> From: Eli Zaretskii <eliz@HIDDEN> To: Ihor Radchenko <yantar92@HIDDEN> In-Reply-To: <87o7jrgq5n.fsf@localhost> (message from Ihor Radchenko on Tue, 01 Aug 2023 07:47:32 +0000) Subject: Re: bug#64986: 30.0.50; window-text-pixel-size sometimes returns 0 width when called from temporary buffer References: <87o7jrgq5n.fsf@localhost> X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 64986 Cc: 64986 <at> debbugs.gnu.org X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -3.3 (---) > From: Ihor Radchenko <yantar92@HIDDEN> > Date: Tue, 01 Aug 2023 07:47:32 +0000 > > (with-current-buffer (get-buffer-create " *Org string width*") > (setq-local display-line-numbers nil > line-prefix nil > wrap-prefix nil) > (setq-local buffer-invisibility-spec > (if (listp current-invisibility-spec) > (mapcar (lambda (el) > ;; Consider ellipsis to have 0 width. > ;; It is what Emacs 28+ does, but we have > ;; to force it in earlier Emacs versions. > (if (and (consp el) (cdr el)) > (list (car el)) > el)) > current-invisibility-spec) > current-invisibility-spec)) > (setq-local char-property-alias-alist > current-char-property-alias-alist) > (let (pixel-width symbol-width) > (with-silent-modifications > (erase-buffer) > (insert string) > (setq pixel-width > (car (window-text-pixel-size > nil (line-beginning-position) (point-max)))) > (unless pixels > (erase-buffer) > (insert "a") > (setq symbol-width > (car (window-text-pixel-size ;; <---- unexpected return > nil (line-beginning-position) (point-max)))))) > (if pixels > pixel-width > (/ pixel-width symbol-width))))))) You are using window-text-pixel-size incorrectly. Its doc string says: Return the size of the text of WINDOW's buffer in pixels. Note the "WINDOW's buffer" part: it is there for a reason. So what your code is doing is measure the size of the text of the buffer shown in WINDOW (in your case, the selected window) between buffer positions 1 and 2. And the buffer shown in the selected window, the one created by org-test-with-temp-text-in-file, begins with an empty line, so the function correctly returns zero as the horizontal dimensions of the text. Your code seems to assume that with-current-buffer makes the named buffer be "temporarily shown" in the selected window, but that is not what happens: it just makes that buffer the current buffer. This tricky part is why we now have buffer-text-pixel-size: it takes care of making the buffer "temporarily shown" in the window. So I believe you should use that function instead.
bug-gnu-emacs@HIDDEN
:bug#64986
; Package emacs
.
Full text available.Received: (at submit) by debbugs.gnu.org; 1 Aug 2023 07:47:34 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Tue Aug 01 03:47:34 2023 Received: from localhost ([127.0.0.1]:47107 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1qQk6P-0007Jt-UC for submit <at> debbugs.gnu.org; Tue, 01 Aug 2023 03:47:34 -0400 Received: from lists.gnu.org ([2001:470:142::17]:58600) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <yantar92@HIDDEN>) id 1qQk6O-0007Jf-3t for submit <at> debbugs.gnu.org; Tue, 01 Aug 2023 03:47:32 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from <yantar92@HIDDEN>) id 1qQk6I-0004su-TV for bug-gnu-emacs@HIDDEN; Tue, 01 Aug 2023 03:47:26 -0400 Received: from mout01.posteo.de ([185.67.36.65]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from <yantar92@HIDDEN>) id 1qQk6G-0001C8-D3 for bug-gnu-emacs@HIDDEN; Tue, 01 Aug 2023 03:47:26 -0400 Received: from submission (posteo.de [185.67.36.169]) by mout01.posteo.de (Postfix) with ESMTPS id C8B91240028 for <bug-gnu-emacs@HIDDEN>; Tue, 1 Aug 2023 09:47:21 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=posteo.net; s=2017; t=1690876041; bh=dIcgUhnuolgVext6gDl+gdy6cGtGkBfEiEmUwOncPPA=; h=From:To:Subject:Date:Message-ID:MIME-Version:From; b=U2tZxXOqCAsInmOUc4SaH81pTed6si5chlBuHXRMlkQr1dnYRSdrudrd6Z+CH1OTm 4sGj1HUyT5Ml/XnOUTKd6TkXBjB23iskFZn5G3bKlGJ/0WKJYfVpmt20TFZ235cazw 7AaHpEi+QTUkORQfh3C6HUmPbcRk/hQJd2ceTqmelrHwJgVhAXvWumniriewNENlM2 Sv/T72f3XLRRWFfJIkkDVvloXHI7LgZCNM1Eqg676kjD4dfq4NEI8/kcI3lRoEddet dijlE6Oub2G42hZYtSQIlRRFIAhwRFNWxZ4SRg+cM2uSA0wyRfzOrHgLtG7OVmfZGb nzUG0Lhk2jffQ== Received: from customer (localhost [127.0.0.1]) by submission (posteo.de) with ESMTPSA id 4RFRyx11VGz9sH8 for <bug-gnu-emacs@HIDDEN>; Tue, 1 Aug 2023 09:47:20 +0200 (CEST) From: Ihor Radchenko <yantar92@HIDDEN> To: bug-gnu-emacs@HIDDEN Subject: 30.0.50; window-text-pixel-size sometimes returns 0 width when called from temporary buffer Date: Tue, 01 Aug 2023 07:47:32 +0000 Message-ID: <87o7jrgq5n.fsf@localhost> MIME-Version: 1.0 Content-Type: text/plain Received-SPF: pass client-ip=185.67.36.65; envelope-from=yantar92@HIDDEN; helo=mout01.posteo.de X-Spam_score_int: -53 X-Spam_score: -5.4 X-Spam_bar: ----- X-Spam_report: (-5.4 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_MED=-2.3, RCVD_IN_MSPIKE_H5=-1, RCVD_IN_MSPIKE_WL=-0.01, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 autolearn=ham autolearn_force=no X-Spam_action: no action X-Spam-Score: 1.0 (+) X-Debbugs-Envelope-To: submit X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -0.0 (/) Hi, I stumbled upon apparently unexpected return value of `window-text-pixel-size'. There is no easy reproducer involving emacs -Q, but I can reliably reproduce it with certain variant of `org-string-width' function. I am not 100% sure if it is a real Emacs bug or if it is my misunderstanding of `window-text-pixel-size'. Steps to reproduce: 1. git clone --depth 1 --branch bug/window-text-pixel-size https://git.sr.ht/~yantar92/org-mode 2. cd org-mode 3. make repro REPRO_ARGS="-l ./testing/org-test.el" 4. (setq org-confirm-babel-evaluate nil) 5. M-x debug-on-entry org-string-width 6. Insert and execute the following in *scratch* (org-test-with-temp-text-in-file " #+NAME: example-list - simple - not - nested - list <point>#+BEGIN_SRC emacs-lisp :var x=example-list (print x) #+END_SRC" (should (equal '("simple" "list") (org-babel-execute-src-block))) (forward-line 5) (should (string= "| simple | list |" (buffer-substring (point-at-bol) (point-at-eol))))) 7. If we "c" in the debugger, there is arith error originating from the second call to `window-text-pixel-size' returning (0 . X) in buffer containing text "a". The code of `org-string-width' is: (defun org-string-width (string &optional pixels) "Return width of STRING when displayed in the current buffer. Return width in pixels when PIXELS is non-nil." .... (with-current-buffer (get-buffer-create " *Org string width*") (setq-local display-line-numbers nil line-prefix nil wrap-prefix nil) (setq-local buffer-invisibility-spec (if (listp current-invisibility-spec) (mapcar (lambda (el) ;; Consider ellipsis to have 0 width. ;; It is what Emacs 28+ does, but we have ;; to force it in earlier Emacs versions. (if (and (consp el) (cdr el)) (list (car el)) el)) current-invisibility-spec) current-invisibility-spec)) (setq-local char-property-alias-alist current-char-property-alias-alist) (let (pixel-width symbol-width) (with-silent-modifications (erase-buffer) (insert string) (setq pixel-width (car (window-text-pixel-size nil (line-beginning-position) (point-max)))) (unless pixels (erase-buffer) (insert "a") (setq symbol-width (car (window-text-pixel-size ;; <---- unexpected return nil (line-beginning-position) (point-max)))))) (if pixels pixel-width (/ pixel-width symbol-width))))))) In GNU Emacs 30.0.50 (build 5, x86_64-pc-linux-gnu, GTK+ Version 3.24.38, cairo version 1.17.8) of 2023-07-29 built on localhost Repository revision: ce48073f1597ceecb82800e71c89b53badc9f9d0 Repository branch: master Windowing system distributor 'The X.Org Foundation', version 11.0.12101008 System Description: Gentoo Linux Configured using: 'configure --with-native-compilation' -- Ihor Radchenko // yantar92, Org mode contributor, Learn more about Org mode at <https://orgmode.org/>. Support Org development at <https://liberapay.com/org-mode>, or support my work at <https://liberapay.com/yantar92>
Ihor Radchenko <yantar92@HIDDEN>
:bug-gnu-emacs@HIDDEN
.
Full text available.bug-gnu-emacs@HIDDEN
:bug#64986
; Package emacs
.
Full text available.
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997 nCipher Corporation Ltd,
1994-97 Ian Jackson.