[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
emacs-29 95091b77f0b: Fix some tree-sitter :match regexps
From: |
Basil L. Contovounesios |
Subject: |
emacs-29 95091b77f0b: Fix some tree-sitter :match regexps |
Date: |
Sat, 17 Jun 2023 12:10:05 -0400 (EDT) |
branch: emacs-29
commit 95091b77f0bbb2ae1aa94ef4a413626e7d434d58
Author: Basil L. Contovounesios <contovob@tcd.ie>
Commit: Basil L. Contovounesios <contovob@tcd.ie>
Fix some tree-sitter :match regexps
The shy groups were caught by modified versions of the GNU ELPA
packages xr and relint:
- https://github.com/mattiase/xr/pull/6
- https://github.com/mattiase/relint/pull/14
* lisp/progmodes/ruby-ts-mode.el (ruby-ts--s-p-query): Quote special
character in regexp.
* lisp/progmodes/java-ts-mode.el (java-ts-mode--font-lock-settings):
* lisp/progmodes/js.el (js--plain-method-re):
(js--treesit-font-lock-settings):
* lisp/progmodes/rust-ts-mode.el (rust-ts-mode--font-lock-settings):
* lisp/progmodes/typescript-ts-mode.el
(typescript-ts-mode--font-lock-settings): Replace character
alternative [\\d], which matches '\' or 'd', with the most likely
intention [0-9]. Fix shy groups mistyped as optional colons.
Remove unneeded numbered :match group in rust-ts-mode (bug#64019).
---
lisp/progmodes/java-ts-mode.el | 2 +-
lisp/progmodes/js.el | 6 +++---
lisp/progmodes/ruby-ts-mode.el | 2 +-
lisp/progmodes/rust-ts-mode.el | 13 ++++++++-----
lisp/progmodes/typescript-ts-mode.el | 4 ++--
5 files changed, 15 insertions(+), 12 deletions(-)
diff --git a/lisp/progmodes/java-ts-mode.el b/lisp/progmodes/java-ts-mode.el
index 463872dcbc8..7f2fc4188a3 100644
--- a/lisp/progmodes/java-ts-mode.el
+++ b/lisp/progmodes/java-ts-mode.el
@@ -168,7 +168,7 @@ the available version of Tree-sitter for java."
:override t
:feature 'constant
`(((identifier) @font-lock-constant-face
- (:match "\\`[A-Z_][A-Z_\\d]*\\'" @font-lock-constant-face))
+ (:match "\\`[A-Z_][0-9A-Z_]*\\'" @font-lock-constant-face))
[(true) (false)] @font-lock-constant-face)
:language 'java
:override t
diff --git a/lisp/progmodes/js.el b/lisp/progmodes/js.el
index 414b6eb2baf..48fecf69537 100644
--- a/lisp/progmodes/js.el
+++ b/lisp/progmodes/js.el
@@ -106,7 +106,7 @@ name.")
(defconst js--plain-method-re
(concat "^\\s-*?\\(" js--dotted-name-re "\\)\\.prototype"
- "\\.\\(" js--name-re "\\)\\s-*?=\\s-*?\\(\\(:?async[
\t\n]+\\)function\\)\\_>")
+ "\\.\\(" js--name-re "\\)\\s-*?=\\s-*?\\(\\(?:async[
\t\n]+\\)function\\)\\_>")
"Regexp matching an explicit JavaScript prototype \"method\" declaration.
Group 1 is a (possibly-dotted) class name, group 2 is a method name,
and group 3 is the `function' keyword.")
@@ -3493,7 +3493,7 @@ This function is intended for use in
`after-change-functions'."
:language 'javascript
:feature 'constant
'(((identifier) @font-lock-constant-face
- (:match "\\`[A-Z_][A-Z_\\d]*\\'" @font-lock-constant-face))
+ (:match "\\`[A-Z_][0-9A-Z_]*\\'" @font-lock-constant-face))
[(true) (false) (null)] @font-lock-constant-face)
@@ -3612,7 +3612,7 @@ This function is intended for use in
`after-change-functions'."
:feature 'number
'((number) @font-lock-number-face
((identifier) @font-lock-number-face
- (:match "\\`\\(:?NaN\\|Infinity\\)\\'" @font-lock-number-face)))
+ (:match "\\`\\(?:NaN\\|Infinity\\)\\'" @font-lock-number-face)))
:language 'javascript
:feature 'operator
diff --git a/lisp/progmodes/ruby-ts-mode.el b/lisp/progmodes/ruby-ts-mode.el
index 91d65a2777b..4b951f7606f 100644
--- a/lisp/progmodes/ruby-ts-mode.el
+++ b/lisp/progmodes/ruby-ts-mode.el
@@ -1021,7 +1021,7 @@ leading double colon is not added."
(:match "\\`\\$[#\"'`:?]" @global_var))
;; ?' ?" ?` are character literals.
((character) @char
- (:match "\\`?[#\"'`:?]" @char))
+ (:match "\\`\\?[#\"'`:?]" @char))
;; Symbols like :+, :<=> or :foo=.
((simple_symbol) @symbol
(:match "\\s." @symbol))
diff --git a/lisp/progmodes/rust-ts-mode.el b/lisp/progmodes/rust-ts-mode.el
index b55af0b49e3..999c1d7ae96 100644
--- a/lisp/progmodes/rust-ts-mode.el
+++ b/lisp/progmodes/rust-ts-mode.el
@@ -143,7 +143,7 @@
eol))
@font-lock-builtin-face)))
((identifier) @font-lock-type-face
- (:match "\\`\\(:?Err\\|Ok\\|None\\|Some\\)\\'" @font-lock-type-face)))
+ (:match "\\`\\(?:Err\\|Ok\\|None\\|Some\\)\\'" @font-lock-type-face)))
:language 'rust
:feature 'comment
@@ -232,9 +232,12 @@
(type_identifier) @font-lock-type-face
((scoped_identifier name: (identifier) @rust-ts-mode--fontify-tail))
((scoped_identifier path: (identifier) @font-lock-type-face)
- (:match
-
"\\`\\(u8\\|u16\\|u32\\|u64\\|u128\\|usize\\|i8\\|i16\\|i32\\|i64\\|i128\\|isize\\|char\\|str\\)\\'"
- @font-lock-type-face))
+ (:match ,(rx bos
+ (or "u8" "u16" "u32" "u64" "u128" "usize"
+ "i8" "i16" "i32" "i64" "i128" "isize"
+ "char" "str")
+ eos)
+ @font-lock-type-face))
((scoped_identifier path: (identifier) @rust-ts-mode--fontify-scope))
((scoped_type_identifier path: (identifier) @rust-ts-mode--fontify-scope))
(type_identifier) @font-lock-type-face)
@@ -249,7 +252,7 @@
:feature 'constant
`((boolean_literal) @font-lock-constant-face
((identifier) @font-lock-constant-face
- (:match "\\`[A-Z][A-Z\\d_]*\\'" @font-lock-constant-face)))
+ (:match "\\`[A-Z][0-9A-Z_]*\\'" @font-lock-constant-face)))
:language 'rust
:feature 'variable
diff --git a/lisp/progmodes/typescript-ts-mode.el
b/lisp/progmodes/typescript-ts-mode.el
index 5df34de0472..68aefd90f92 100644
--- a/lisp/progmodes/typescript-ts-mode.el
+++ b/lisp/progmodes/typescript-ts-mode.el
@@ -153,7 +153,7 @@ Argument LANGUAGE is either `typescript' or `tsx'."
:language language
:feature 'constant
`(((identifier) @font-lock-constant-face
- (:match "\\`[A-Z_][A-Z_\\d]*\\'" @font-lock-constant-face))
+ (:match "\\`[A-Z_][0-9A-Z_]*\\'" @font-lock-constant-face))
[(true) (false) (null)] @font-lock-constant-face)
:language language
@@ -311,7 +311,7 @@ Argument LANGUAGE is either `typescript' or `tsx'."
:feature 'number
`((number) @font-lock-number-face
((identifier) @font-lock-number-face
- (:match "\\`\\(:?NaN\\|Infinity\\)\\'" @font-lock-number-face)))
+ (:match "\\`\\(?:NaN\\|Infinity\\)\\'" @font-lock-number-face)))
:language language
:feature 'operator
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- emacs-29 95091b77f0b: Fix some tree-sitter :match regexps,
Basil L. Contovounesios <=