summaryrefslogtreecommitdiff
path: root/queries/svelte
diff options
context:
space:
mode:
authorelianiva <dicha.arkana03@gmail.com>2021-02-05 13:45:26 +0700
committerStephan Seitz <stephan.lauf@yahoo.de>2021-02-23 16:27:16 +0100
commita73e200abf609663975c808f68d08a05d96e3b61 (patch)
tree2769a51db02e026b726f9fc83a8c143e8d039690 /queries/svelte
parent2d82a7fe07f3e4959219e231a58e0707d577262e (diff)
feat: add support for svelte
Diffstat (limited to 'queries/svelte')
-rw-r--r--queries/svelte/folds.scm9
-rw-r--r--queries/svelte/highlights.scm29
-rw-r--r--queries/svelte/indents.scm16
-rw-r--r--queries/svelte/injections.scm16
4 files changed, 70 insertions, 0 deletions
diff --git a/queries/svelte/folds.scm b/queries/svelte/folds.scm
new file mode 100644
index 00000000..795c32fc
--- /dev/null
+++ b/queries/svelte/folds.scm
@@ -0,0 +1,9 @@
+[
+ (style_element)
+ (script_element)
+ (element)
+ (if_statement)
+ (else_statement)
+ (each_statement)
+ (await_statement)
+] @fold
diff --git a/queries/svelte/highlights.scm b/queries/svelte/highlights.scm
new file mode 100644
index 00000000..f2f0b453
--- /dev/null
+++ b/queries/svelte/highlights.scm
@@ -0,0 +1,29 @@
+(tag_name) @tag
+(attribute_name) @property
+(attribute_value) @string
+(quoted_attribute_value) @string
+(comment) @comment
+
+[
+ (special_block_keyword)
+ (then)
+ (as)
+] @keyword
+
+[
+ "{"
+ "}"
+] @punctuation.bracket
+
+"=" @operator
+
+[
+ "<"
+ ">"
+ "</"
+ "/>"
+ "#"
+ ":"
+ "/"
+ "@"
+] @tag.delimiter
diff --git a/queries/svelte/indents.scm b/queries/svelte/indents.scm
new file mode 100644
index 00000000..9f97a018
--- /dev/null
+++ b/queries/svelte/indents.scm
@@ -0,0 +1,16 @@
+[
+ (element)
+ (if_statement)
+ (each_statement)
+ (await_statement)
+] @indent
+
+[
+ (end_tag)
+ (else_statement)
+ (if_end_expr)
+ (each_end_expr)
+ (await_end_expr)
+ ">"
+ "/>"
+] @branch
diff --git a/queries/svelte/injections.scm b/queries/svelte/injections.scm
new file mode 100644
index 00000000..2e16b0d1
--- /dev/null
+++ b/queries/svelte/injections.scm
@@ -0,0 +1,16 @@
+((style_element
+ (raw_text) @css))
+
+((script_element
+ (raw_text) @javascript))
+
+((raw_text_expr) @javascript)
+
+(
+ (script_element
+ (start_tag
+ (attribute
+ (quoted_attribute_value (attribute_value) @_lang)))
+ (raw_text) @typescript)
+ (#match? @_lang "(ts|typescript)")
+)