Subject: Re: bug#73752: 29.4; Ligatures are randomly rendered with extra spaces

From: Eli Zaretskii <[email-masked]>
Date: Sun, 27 Oct 2024 22:07:05 +0200

> Date: Sun, 27 Oct 2024 15:41:06 -0400
> Cc: [email-masked], [email-masked], [email-masked]
> From: Yixuan Chen <[email-masked]>
> 
> On 10/27/24 15:14, Eli Zaretskii wrote:
> >> Date: Sun, 27 Oct 2024 13:46:55 -0400
> >> Cc: [email-masked], [email-masked], [email-masked]
> >> From: Yixuan Chen <[email-masked]>
> >>
> >>> 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?
> 
> Just in case my last explanation wasn't clear enough: by "with exactly 
> the same face variable", I'm saying that when the randomizer picks the 
> same font attribute (the same everything), there is a chance it will 
> render that line differently.

That's not what I see in the images I've been shown.  The lines that
have different indentation have either different slant or different
weight.

To convince me that this is really happening (although I'm unable to
understand how it could, given how Emacs faces work), you will need to
show some code which generates such a situation in a reproducible
manner, and then show me by using "M-x describe-text-properties" and
"C-u C-x =" that indeed the same characters in the same face are shown
on different lines with different metrics.