summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRiley Bruins <ribru17@hotmail.com>2023-12-21 15:31:40 -0800
committerChristian Clason <c.clason@uni-graz.at>2023-12-23 22:26:02 +0100
commit92572c0dfd53b0e74bf436ef968ecc5b5a7e2b76 (patch)
tree6f40e1239ad4e37c7ec6646f139c2027abedd1d9
parentUpdate parsers: elm, wing (diff)
downloadnvim-treesitter-92572c0dfd53b0e74bf436ef968ecc5b5a7e2b76.tar
nvim-treesitter-92572c0dfd53b0e74bf436ef968ecc5b5a7e2b76.tar.gz
nvim-treesitter-92572c0dfd53b0e74bf436ef968ecc5b5a7e2b76.tar.bz2
nvim-treesitter-92572c0dfd53b0e74bf436ef968ecc5b5a7e2b76.tar.lz
nvim-treesitter-92572c0dfd53b0e74bf436ef968ecc5b5a7e2b76.tar.xz
nvim-treesitter-92572c0dfd53b0e74bf436ef968ecc5b5a7e2b76.tar.zst
nvim-treesitter-92572c0dfd53b0e74bf436ef968ecc5b5a7e2b76.zip
feat: more `@string.regex` highlights
-rw-r--r--queries/lua/highlights.scm20
-rw-r--r--queries/luau/highlights.scm26
-rw-r--r--queries/query/highlights.scm16
3 files changed, 62 insertions, 0 deletions
diff --git a/queries/lua/highlights.scm b/queries/lua/highlights.scm
index 1af8e9aec..2f12d3ce2 100644
--- a/queries/lua/highlights.scm
+++ b/queries/lua/highlights.scm
@@ -247,3 +247,23 @@
(string) @string
(escape_sequence) @string.escape
+
+; string.match("123", "%d+")
+(function_call
+ (dot_index_expression
+ field: (identifier) @_method
+ (#any-of? @_method "find" "match" "gmatch" "gsub"))
+ arguments: (arguments
+ . (_)
+ .
+ (string
+ content: (string_content) @string.regex)))
+
+;("123"):match("%d+")
+(function_call
+ (method_index_expression
+ method: (identifier) @_method
+ (#any-of? @_method "find" "match" "gmatch" "gsub"))
+ arguments: (arguments
+ . (string
+ content: (string_content) @string.regex)))
diff --git a/queries/luau/highlights.scm b/queries/luau/highlights.scm
index 7a6bc2e35..a175276a7 100644
--- a/queries/luau/highlights.scm
+++ b/queries/luau/highlights.scm
@@ -246,3 +246,29 @@
((comment) @comment.documentation
(#lua-match? @comment.documentation "^[-][-](%s?)@"))
+
+; string.match("123", "%d+")
+(function_call
+ (dot_index_expression
+ field: (identifier) @_method
+ (#any-of? @_method "find" "format" "match"))
+ arguments: (arguments (_) . (string content: _ @string.regex)))
+
+(function_call
+ (dot_index_expression
+ field: (identifier) @_method
+ (#any-of? @_method "gmatch" "gsub"))
+ arguments: (arguments (_) (string content: _ @string.regex)))
+
+; ("123"):match("%d+")
+(function_call
+ (method_index_expression
+ method: (identifier) @_method
+ (#any-of? @_method "find" "format" "match"))
+ arguments: (arguments . (string content: _ @string.regex)))
+
+(function_call
+ (method_index_expression
+ method: (identifier) @_method
+ (#any-of? @_method "gmatch" "gsub"))
+ arguments: (arguments (string content: _ @string.regex)))
diff --git a/queries/query/highlights.scm b/queries/query/highlights.scm
index c7f0d891a..ccf13a6c8 100644
--- a/queries/query/highlights.scm
+++ b/queries/query/highlights.scm
@@ -32,3 +32,19 @@
((program . (comment)* . (comment) @preproc)
(#lua-match? @preproc "^;+ *extends *$"))
+
+((predicate
+ name: (identifier) @_name
+ parameters: (parameters (string "\"" @string "\"" @string) @string.regex))
+ (#any-of? @_name
+ "match"
+ "not-match"
+ "vim-match"
+ "not-vim-match"
+ "lua-match"
+ "not-lua-match"))
+
+((predicate
+ name: (identifier) @_name
+ parameters: (parameters (string "\"" @string "\"" @string) @string.regex . (string) .))
+ (#any-of? @_name "gsub" "not-gsub"))