mirror of
https://github.com/laosb/SvelteNova.git
synced 2025-04-30 12:41:09 +00:00
feat: Basic folding.
This commit is contained in:
parent
c7c2377e9c
commit
e197ad7429
2 changed files with 85 additions and 0 deletions
84
SvelteNova.novaextension/Queries/folds.scm
Normal file
84
SvelteNova.novaextension/Queries/folds.scm
Normal file
|
@ -0,0 +1,84 @@
|
|||
; <style>
|
||||
(
|
||||
(style_element
|
||||
(start_tag) @start
|
||||
(end_tag) @end
|
||||
)
|
||||
(#set! role tag)
|
||||
)
|
||||
|
||||
; <script>
|
||||
(
|
||||
(script_element
|
||||
(start_tag) @start
|
||||
(end_tag) @end
|
||||
)
|
||||
(#set! role tag)
|
||||
)
|
||||
|
||||
; other HTML elements
|
||||
(
|
||||
(element
|
||||
(start_tag) @start
|
||||
(end_tag) @end
|
||||
)
|
||||
(#set! role tag)
|
||||
)
|
||||
|
||||
; {#if expr}
|
||||
(
|
||||
(if_statement
|
||||
(if_start_expr) @start
|
||||
[
|
||||
(if_end_expr)
|
||||
(else_statement)
|
||||
(else_if_statement)
|
||||
] @end
|
||||
)
|
||||
(#set! role block)
|
||||
)
|
||||
|
||||
; {:else if expr}
|
||||
(
|
||||
(else_if_statement
|
||||
(else_if_expr) @start
|
||||
[
|
||||
(if_end_expr)
|
||||
(else_statement)
|
||||
(else_if_statement)
|
||||
] @end
|
||||
)
|
||||
(#set! role block)
|
||||
)
|
||||
|
||||
; {:else} in {#if}
|
||||
(
|
||||
(else_statement
|
||||
(else_expr) @start
|
||||
(if_end_expr) @end
|
||||
)
|
||||
(#set! role block)
|
||||
)
|
||||
|
||||
; {#each}
|
||||
(
|
||||
(each_statement
|
||||
(each_start_expr) @start
|
||||
[
|
||||
(else_each_statement)
|
||||
(each_end_expr)
|
||||
] @end
|
||||
)
|
||||
(#set! role block)
|
||||
)
|
||||
|
||||
; {:else} in {#each}
|
||||
(
|
||||
(else_each_statement
|
||||
(else_expr) @start
|
||||
(each_end_expr) @end
|
||||
)
|
||||
(#set! role block)
|
||||
)
|
||||
|
||||
; TODO: {#await expr}
|
|
@ -13,6 +13,7 @@
|
|||
<tree-sitter>
|
||||
<highlights />
|
||||
<injections />
|
||||
<folds />
|
||||
</tree-sitter>
|
||||
|
||||
<detectors>
|
||||
|
|
Loading…
Add table
Reference in a new issue