[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#73978: 31.0.50; Text syntax applied on too many things in tsx-ts-mod
From: |
Eli Zaretskii |
Subject: |
bug#73978: 31.0.50; Text syntax applied on too many things in tsx-ts-mode |
Date: |
Sat, 09 Nov 2024 11:11:14 +0200 |
Ping! Theo, can you answer Yuan's questions?
> Cc: theo@thornhill.no
> From: Yuan Fu <casouri@gmail.com>
> Date: Wed, 23 Oct 2024 21:06:40 -0700
>
> X-Debbugs-CC: theo@thornhill.no
>
> In tsx-ts-mode we use this query to apply syntax properties:
>
>
> (defvar tsx-ts--s-p-query
> (when (treesit-available-p)
> (treesit-query-compile 'tsx
> '(((regex pattern: (regex_pattern) @regexp))
> ((variable_declarator value: (jsx_element) @jsx))
> ((assignment_expression right: (jsx_element)
> @jsx))
> ((arguments (jsx_element) @jsx))
> ((parenthesized_expression (jsx_element) @jsx))
> ((return_statement (jsx_element) @jsx))))))
>
>
> And then in tsx-ts--syntax-propertize-captures we mark everything
> enclosed by the captured jsx_element nodes in text fences.
>
> Then for the following code
>
> <button onClick={() => {
> func();
> return true;
> }}>
> Text
> {func();}
> </button>
>
> All the func() and other code will be considered text because the whole
> jsx tag (<button>...</button>) are wrapped in string fences. Theo,
> what’s the original intention for marking jsx_elements as text? Can we
> only mark jsx_text as string?
>
> Yuan
>
>
>
>
>
- bug#73978: 31.0.50; Text syntax applied on too many things in tsx-ts-mode,
Eli Zaretskii <=