Subject: bug#73978: 31.0.50; Text syntax applied on too many things in tsx-ts-mode

From: Theodor Thornhill <[email-masked]>
Date: Sun, 05 Jan 2025 12:55:11 +0100

Yuan Fu <[email-masked]> writes:

>> On Dec 12, 2024, at 9:19 AM, Dmitry Gutov <[email-masked]> wrote:
>> 
>> On 12/12/2024 06:56, Yuan Fu wrote:
>>> How hard is it to add a new syntax for this case? Or is there some way to work around this? We can’t just not apply the string syntax, because if the “a” is a parenthesis, etc, it would mess up the parenthesis balancing after it.
>> 
>> Probably not very hard, but that seems like it'd affect the total set of syntax classes - which means adding it to the manual, etc.
>> 
>>> Maybe just give it a whitespace syntax?
>> 
>> Right, in such cases I applied the "whitespace" or "punctuation" syntax to the whole character span, like in https://github.com/dgutov/mmm-mode/blob/master/mmm-erb.el#L97
>
> Thanks. I went with the whitespace trick and pushed my patch to master.
>
> Yuan

FWIW, I believe this is a regression caused by later versions of the
treesit grammar. What is talked about here was explicitly a goal for me
to handle at least better than what it appears it has been for some
time. IIRC they changed what nodes were applied as the jsx nodes quite
dramatically some time ago. I'm not surprised there are issues after
that, as most wasn't backward compatible

Theo