mirror of https://github.com/helix-editor/helix
add tree-sitter-regex (#1362)
* add tree-sitter-regex * adapt regex highlights from upstream * inject regex into elixir sigil_r/2 and sigil_R/2 * generate lang-support docs * capture interesting nodes in character-ranges * make $.character_class captures more consistent * fix fallthrough behavior for character classes * capture pattern characters as 'string' * use latest tree-sitter-regex * set elixir regex injections as combined * add link to upstream queries * inject regex in rust into 'Regex::new' raw string literalspull/1455/head^2
parent
2e02a1d6bc
commit
a8fd33ac01
@ -0,0 +1 @@
|
||||
Subproject commit e1cfca3c79896ff79842f057ea13e529b66af636
|
@ -1,2 +1,9 @@
|
||||
((comment) @injection.content
|
||||
(#set! injection.language "comment"))
|
||||
|
||||
((sigil
|
||||
(sigil_name) @_sigil_name
|
||||
(quoted_content) @injection.content)
|
||||
(#match? @_sigil_name "^(r|R)$")
|
||||
(#set! injection.language "regex")
|
||||
(#set! injection.combined))
|
||||
|
@ -0,0 +1,53 @@
|
||||
; upstream: https://github.com/tree-sitter/tree-sitter-regex/blob/e1cfca3c79896ff79842f057ea13e529b66af636/queries/highlights.scm
|
||||
|
||||
[
|
||||
"("
|
||||
")"
|
||||
"(?"
|
||||
"(?:"
|
||||
"(?<"
|
||||
">"
|
||||
"["
|
||||
"]"
|
||||
"{"
|
||||
"}"
|
||||
] @punctuation.bracket
|
||||
|
||||
[
|
||||
"*"
|
||||
"+"
|
||||
"|"
|
||||
"="
|
||||
"<="
|
||||
"!"
|
||||
"<!"
|
||||
"?"
|
||||
] @operator
|
||||
|
||||
[
|
||||
(identity_escape)
|
||||
(control_letter_escape)
|
||||
(character_class_escape)
|
||||
(control_escape)
|
||||
(start_assertion)
|
||||
(end_assertion)
|
||||
(boundary_assertion)
|
||||
(non_boundary_assertion)
|
||||
] @constant.character.escape
|
||||
|
||||
(group_name) @property
|
||||
|
||||
(count_quantifier
|
||||
[
|
||||
(decimal_digits) @constant.numeric
|
||||
"," @punctuation.delimiter
|
||||
])
|
||||
|
||||
(character_class
|
||||
[
|
||||
"^" @operator
|
||||
(class_range "-" @operator)
|
||||
])
|
||||
|
||||
(class_character) @constant.character
|
||||
(pattern_character) @string
|
Loading…
Reference in New Issue