mirror of
https://github.com/nvim-treesitter/nvim-treesitter.git
synced 2026-07-01 19:17:02 -04:00
update fusion to version 1.1.1 (#2148)
* feat(fusion): update tests * fix(fusion): update lockfile * fix(fusion): update to (highlight breaking) version 1.1.0 * update grammer to introduce afx support * update tests and queries * fix: revert lockfile update of unrelated grammars * fix: update to 1.1.1 and fix hightlights * fix: use @tag.attribute capture to match specs Co-authored-by: Jirgn <jirgn76@googlemail.com>
This commit is contained in:
parent
56634f49ab
commit
6b5b37cc3e
6 changed files with 73 additions and 26 deletions
|
|
@ -69,7 +69,7 @@
|
|||
"revision": "f0f2f100952a353e64e26b0fa710b4c296d7af13"
|
||||
},
|
||||
"fusion": {
|
||||
"revision": "f588d2cba166de2dbf5e2b7f848e7a2e82b803ce"
|
||||
"revision": "016ce4a7695ebad5eeebfbe07525a2ec0639d78d"
|
||||
},
|
||||
"gdscript": {
|
||||
"revision": "eed1595d830407b49775aa33b871a9400e5a44e6"
|
||||
|
|
|
|||
|
|
@ -135,7 +135,7 @@ list.rust = {
|
|||
list.fusion = {
|
||||
install_info = {
|
||||
url = "https://gitlab.com/jirgn/tree-sitter-fusion.git",
|
||||
files = { "src/parser.c" },
|
||||
files = { "src/parser.c", "src/scanner.c" },
|
||||
branch = "main",
|
||||
},
|
||||
maintainers = { "@jirgn" },
|
||||
|
|
|
|||
|
|
@ -1,7 +1,24 @@
|
|||
(comment) @comment
|
||||
(afx_comment) @comment
|
||||
|
||||
; identifiers afx
|
||||
(afx_opening_element
|
||||
(afx_identifier) @tag)
|
||||
(afx_closing_element
|
||||
(afx_identifier) @tag)
|
||||
(afx_element_self_closing
|
||||
(afx_identifier) @tag)
|
||||
|
||||
(afx_attribute
|
||||
(afx_property_identifier) @tag.attribute)
|
||||
|
||||
; identifiers eel
|
||||
|
||||
(eel_object_path
|
||||
(eel_path_identifier) @variable.builtin
|
||||
(#match? @variable.builtin "^(this|props)$")
|
||||
)
|
||||
|
||||
(eel_object_path
|
||||
(eel_path_identifier) @variable)
|
||||
|
||||
|
|
@ -12,7 +29,6 @@
|
|||
|
||||
(eel_parameter) @variable
|
||||
|
||||
|
||||
; identifiers fusion
|
||||
; -----------
|
||||
|
||||
|
|
@ -38,38 +54,47 @@
|
|||
|
||||
; tokens
|
||||
; ------
|
||||
(afx_opening_element
|
||||
[
|
||||
"<"
|
||||
">"
|
||||
] @punctuation.bracket)
|
||||
|
||||
(afx_closing_element
|
||||
[
|
||||
"<"
|
||||
">"
|
||||
"/"
|
||||
] @punctuation.bracket)
|
||||
|
||||
(afx_element_self_closing
|
||||
[
|
||||
"<"
|
||||
"/>"
|
||||
] @punctuation.bracket)
|
||||
|
||||
[
|
||||
(package_name)
|
||||
(alias_namespace)
|
||||
] @namespace
|
||||
|
||||
[
|
||||
"="
|
||||
"<"
|
||||
"&&"
|
||||
"and"
|
||||
"||"
|
||||
"or"
|
||||
"*"
|
||||
"/"
|
||||
"%"
|
||||
"+"
|
||||
"-"
|
||||
"!"
|
||||
"not"
|
||||
(deletion)
|
||||
] @operator
|
||||
(namespace_declaration "=" @operator)
|
||||
(assignment "=" @operator)
|
||||
(copy "<" @operator)
|
||||
(deletion) @operator
|
||||
(eel_binary_expression
|
||||
operator: _ @operator)
|
||||
(eel_not_expression
|
||||
[
|
||||
"!"
|
||||
"not"
|
||||
] @operator)
|
||||
|
||||
(string) @string
|
||||
(number) @number
|
||||
(boolean) @boolean
|
||||
(null) @constant.builtin
|
||||
|
||||
|
||||
; punctuation
|
||||
; ----------
|
||||
|
||||
[
|
||||
"("
|
||||
")"
|
||||
|
|
@ -84,5 +109,3 @@
|
|||
"."
|
||||
"?"
|
||||
] @punctuation.delimiter
|
||||
|
||||
|
||||
|
|
|
|||
17
tests/query/highlights/fusion/afx.fusion
Normal file
17
tests/query/highlights/fusion/afx.fusion
Normal file
|
|
@ -0,0 +1,17 @@
|
|||
property = afx`
|
||||
<!-- some comment -->
|
||||
<!-- ^@comment -->
|
||||
|
||||
<div attribute="value">text</div>
|
||||
<!-- ^@tag -->
|
||||
<!-- ^@tag.attribute -->
|
||||
<!-- ^@string -->
|
||||
<!-- ^@punctuation.bracket -->
|
||||
<!-- ^@tag -->
|
||||
|
||||
<Namespace:Type {...spread} some={(a) => true} />
|
||||
<!-- ^@tag -->
|
||||
<!-- ^@variable -->
|
||||
<!-- ^@variable -->
|
||||
<!-- ^@boolean -->
|
||||
`
|
||||
|
|
@ -1,6 +1,5 @@
|
|||
include: SomeFile.fusion
|
||||
//<- include
|
||||
// ^punctuation.delimiter
|
||||
// ^text.uri
|
||||
|
||||
namespace: ns = Neos.Fusion.Space
|
||||
|
|
|
|||
|
|
@ -23,6 +23,14 @@ propertyPath = ${property.path}
|
|||
// ^variable
|
||||
// ^variable
|
||||
|
||||
thisorProps = ${this.path}
|
||||
// ^variable.builtin
|
||||
// ^variable
|
||||
|
||||
thisorProps = ${props.path}
|
||||
// ^variable.builtin
|
||||
// ^variable
|
||||
|
||||
array = ${[]}
|
||||
// ^punctuation.bracket
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue