GNU bug report logs -
#65470
29.1.50; js-ts-mode: regex pattern can cause incorrect parenthesis matching
Previous Next
Reported by: Augustin Chéneau (BTuin) <btuin <at> mailo.com>
Date: Wed, 23 Aug 2023 11:16:01 UTC
Severity: normal
Tags: patch
Found in version 29.1.50
Done: Eli Zaretskii <eliz <at> gnu.org>
Bug is archived. No further changes may be made.
Full log
View this message in rfc822 format
On 12/09/2023 09:29, Jostein Kjønigsen wrote:
> Good feedback. I’ve tested and included those as well. Attached is a new patch.
Thanks! Installed. It would've been better with a commit message too
(next time).
Speaking of the TSX difficulties, though, which Yuan hinted at recently:
I think the current fix (tsx-ts-mode--font-lock-compatibility-bb1f97b)
is not working. To be clear, that's unrelated to the current patch.
Basically, the query for ((member_expression) @capture) succeeds, but
then the more complex one fails with
Structure error at: 22
(jsx_opening_element [(member_expression (identifier)) (identifier)]
@typescript-ts-jsx-tag-face) (jsx_closing_element [(member_expression
(identifier)) (identifier)] @typescript-ts-jsx-tag-face)
(jsx_self_closing_element [(member_expression (identifier))
(identifier)] @typescript-ts-jsx-tag-face)
This patch seems to fix that and bring JSX syntax highlighting back:
diff --git a/lisp/progmodes/typescript-ts-mode.el
b/lisp/progmodes/typescript-ts-mode.el
index 57382c9cb31..7108ff49b28 100644
--- a/lisp/progmodes/typescript-ts-mode.el
+++ b/lisp/progmodes/typescript-ts-mode.el
@@ -163,7 +163,7 @@ tsx-ts-mode--font-lock-compatibility-bb1f97b
;; but then raises an error if the wrong node type is used. So it is
;; important to check with the new node type (member_expression)
(condition-case nil
- (progn (treesit-query-capture language '((member_expression)
@capture))
+ (progn (treesit-query-capture language '(jsx_opening_element
(member_expression) @capture))
'((jsx_opening_element
[(member_expression (identifier)) (identifier)]
@typescript-ts-jsx-tag-face)
This bug report was last modified 1 year and 249 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.