unofficial mirror of bug-gnu-emacs@gnu.org 
 help / color / mirror / code / Atom feed
From: Yixuan Chen <xuan@xlk.me>
To: Eli Zaretskii <eliz@gnu.org>
Cc: luangruo@yahoo.com, 73752@debbugs.gnu.org, visuweshm@gmail.com
Subject: bug#73752: 29.4; Ligatures are randomly rendered with extra spaces
Date: Sun, 27 Oct 2024 15:47:57 -0400	[thread overview]
Message-ID: <e5876300-1c8c-480d-83b6-b5fa012daf76@xlk.me> (raw)
In-Reply-To: <86zfmp72ku.fsf@gnu.org>

On 10/27/24 15:44, Eli Zaretskii wrote:
>> Date: Sun, 27 Oct 2024 15:36:06 -0400
>> Cc: visuweshm@gmail.com, luangruo@yahoo.com, 73752@debbugs.gnu.org
>> From: Yixuan Chen <xuan@xlk.me>
>>
>> On 10/27/24 15:14, Eli Zaretskii wrote:
>>>> Date: Sun, 27 Oct 2024 13:46:55 -0400
>>>> Cc: visuweshm@gmail.com, luangruo@yahoo.com, 73752@debbugs.gnu.org
>>>> From: Yixuan Chen <xuan@xlk.me>
>>>>
>>>>> Sorry, I still don't understand.  Your code does
>>>>>
>>>>>      (highlight-lines-matching-regexp (cdr face) (car face))
>>>>>
>>>>> This potentially shows each line in a different face, and thus can
>>>>> affect the metrics of the SPC character glyph which is what the
>>>>> indentation is made of.  So why is this a problem, let alone a bug?
>>>>
>>>> The problem is executing that line at 10PM today may render the font one
>>>> way, while executing that line at 6AM tomorrow (with exactly the same
>>>> "face" variable) may render the font a different way, even if all the
>>>> other variables remains the same.
>>>
>>> But you modify the faces in a random fashion, so why is this a
>>> surprise that it is not deterministic?
>>
>> I said,
>>
>>   > ... (with exactly the same "face" variable) ... even if all the
>>   > other variables remains the same.
>>
>> Yes, this script is modifying the scripts in a random fashion, but let's
>> imagine this:
>>
>> 1. the first time I open emacs, start the script and it randomizes the
>> first line to a combination of face attributes (let's say (16, bold,
>> regular)) in 5 seconds after going through 50 different combinations, it
>> looks one way.
>>
>> 2. I restart emacs, start the script and it randomizes the first line to
>> the same combination of face attributes (16, bold, regular) in 5 minutes
>> after going through 3000 combinations, it looks differently from the
>> first time,
>>
>> Do you agree that in both cases that single line should look the same?
>> And they should always look the same as long as the randomization hits
>> (16, bold, regular) on that line regardless of time and previous history?
> 
> That depends when redisplay kicks in, between your face
> randomizations.  Among other factors.
> 
> And I still fail to understand why this largely artificial program is
> important to investigate.  Are there any real-life cases where you see
> the same face displayed differently when ligatures are involved?  If
> not, what useful stuff will we learn by digging into this, especially
> since reproducing the problem is so hard?

Maybe you missed one of my previous email, let me copy paste what I said 
again,

> It's not about frequency, but probably total number of font face 
> attribute changes. The lisp code I submitted was changing the attributes 
> rapidly just to recreate the problem faster. In real-life, this problem 
> happens with normal emacs configuration, usually within half an hour.
> 
> For reference, here 
> (https://github.com/LukeXuan/dot-files/tree/e6067ec232ea34e01fb9a1f1a358d1c328d47c50/.config/doom) 
> is my emacs configuration on top of doom. I primarily write LaTeX and 
> Coq and this problem occurs every 30 minutes or so. The solution is to 
> either restart emacs (what I used to do) or disable ligature altogether 
> (what I do now).
> 







  reply	other threads:[~2024-10-27 19:47 UTC|newest]

Thread overview: 50+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-10-11 16:18 bug#73752: 29.4; Ligatures are randomly rendered with extra spaces xuan
2024-10-12  8:02 ` Eli Zaretskii
2024-10-12 16:09   ` Yixuan Chen
2024-10-27 10:21     ` Eli Zaretskii
2024-10-27 16:19       ` Visuwesh
2024-10-27 17:19         ` Eli Zaretskii
2024-10-27 17:27           ` Eli Zaretskii
2024-10-27 17:39             ` Yixuan Chen
2024-10-27 17:43               ` Eli Zaretskii
2024-10-27 17:46                 ` Yixuan Chen
2024-10-27 19:14                   ` Eli Zaretskii
2024-10-27 19:36                     ` Yixuan Chen
2024-10-27 19:44                       ` Eli Zaretskii
2024-10-27 19:47                         ` Yixuan Chen [this message]
2024-10-27 20:11                           ` Eli Zaretskii
2024-10-27 19:41                     ` Yixuan Chen
2024-10-27 20:07                       ` Eli Zaretskii
2024-10-27 20:32                         ` Yixuan Chen
2024-10-28 14:25                           ` Eli Zaretskii
2024-10-28 14:44                             ` Yixuan Chen
2024-10-28 14:47                               ` Yixuan Chen
2024-10-28 15:05                               ` Eli Zaretskii
2024-10-28 15:20                                 ` Yixuan Chen
2024-10-28 17:19                                   ` Eli Zaretskii
2024-10-28 17:26                                     ` Eli Zaretskii
2024-10-28 17:28                                     ` Yixuan Chen
2024-10-28 18:41                                       ` Eli Zaretskii
2024-10-28  4:26             ` Visuwesh
2024-10-28 14:59               ` Eli Zaretskii
2024-10-28 15:24                 ` Yixuan Chen
2024-10-28 16:18                 ` Visuwesh
2024-10-28 17:13                   ` Eli Zaretskii
2024-10-29 10:59                     ` Visuwesh
2024-10-29 13:04                       ` Eli Zaretskii
2024-10-29 13:54                         ` Visuwesh
2024-10-29 14:00                           ` Visuwesh
2024-10-29 15:38                           ` Eli Zaretskii
2024-10-29 16:46                             ` Visuwesh
2024-10-29 17:45                               ` Eli Zaretskii
2024-10-30  5:43                                 ` Visuwesh
2024-10-29 16:51                             ` Eli Zaretskii
2024-10-27 17:29           ` Yixuan Chen
2024-10-29 23:14 ` Tim Ruffing
2024-10-30 15:12   ` Eli Zaretskii
2024-10-30 15:45     ` Eli Zaretskii
     [not found]     ` <mvmikt9zkcq.fsf@suse.de>
2024-10-30 15:47       ` Eli Zaretskii
2024-10-30 17:34         ` Tim Ruffing
2024-10-30 17:46           ` Eli Zaretskii
2024-10-30 18:00             ` Tim Ruffing
2024-10-30 18:57               ` Eli Zaretskii

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://www.gnu.org/software/emacs/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=e5876300-1c8c-480d-83b6-b5fa012daf76@xlk.me \
    --to=xuan@xlk.me \
    --cc=73752@debbugs.gnu.org \
    --cc=eliz@gnu.org \
    --cc=luangruo@yahoo.com \
    --cc=visuweshm@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).