bug-gnu-emacs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

bug#66732: tree-sitter fontification doesn't update multi-line syntax re


From: Dmitry Gutov
Subject: bug#66732: tree-sitter fontification doesn't update multi-line syntax reliably
Date: Tue, 19 Dec 2023 14:44:17 +0200
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.13.0

On 19/12/2023 14:41, Eli Zaretskii wrote:
From: Stefan Monnier<monnier@iro.umontreal.ca>
Cc: Dmitry Gutov<dmitry@gutov.dev>,66732@debbugs.gnu.org,
   dominik@honnef.co,casouri@gmail.com
Date: Mon, 18 Dec 2023 22:40:59 -0500

It seems like in our scenario the region does not get re-rendered even
when some of the faces changed in there.
Can't happen.
I think Dmitry is talking about the case where the faces were change
after the text was rendered (but before the end of the redisplay cycle).

I.e. the redisplay starts, renders up to position POS, then calls
jit-lock because `fonfitied` is nil, and jit-lock modifies faces of text
*before*  POS.
This can only happen if a function called from jit-lock doesn't comply
to the protocol wrt such changes, right?

We have a protocol: font-lock-extend-region-functions, but it's not working well enough due to the aforementioned problem.

Because otherwise the
modified region would have been re-rendered on the next redisplay
cycle at the latest.

That does indeed happen, but seems too late from the user's POV.





reply via email to

[Prev in Thread] Current Thread [Next in Thread]