aboutsummaryrefslogtreecommitdiff
path: root/runtime/queries
diff options
context:
space:
mode:
authorMichael Davis2022-04-13 01:55:30 +0000
committerBlaž Hrastnik2022-04-13 05:28:51 +0000
commit9d095e0fdc78ad42c033193dd980b6218c9484d6 (patch)
treee3ba30af229e385c63b83c41f8cc13ad7cc7dcb3 /runtime/queries
parent4ac94a5c431c8ddff38bba5061e66ed355c42747 (diff)
add tree-sitter-eex
EEx is an templating language for Elixir. Since the incremental parsing refactor we can used combined injections which allows us to add EEx support.
Diffstat (limited to 'runtime/queries')
-rw-r--r--runtime/queries/eex/highlights.scm6
-rw-r--r--runtime/queries/eex/injections.scm9
2 files changed, 15 insertions, 0 deletions
diff --git a/runtime/queries/eex/highlights.scm b/runtime/queries/eex/highlights.scm
new file mode 100644
index 00000000..e900a43d
--- /dev/null
+++ b/runtime/queries/eex/highlights.scm
@@ -0,0 +1,6 @@
+; https://github.com/connorlay/tree-sitter-eex/blob/f742f2fe327463335e8671a87c0b9b396905d1d1/queries/highlights.scm
+
+; wrapping in (directive .. ) prevents us from highlighting '%>' in a comment as a keyword
+(directive ["<%" "<%=" "<%%" "<%%=" "%>"] @keyword)
+
+(comment) @comment
diff --git a/runtime/queries/eex/injections.scm b/runtime/queries/eex/injections.scm
new file mode 100644
index 00000000..4686bf4d
--- /dev/null
+++ b/runtime/queries/eex/injections.scm
@@ -0,0 +1,9 @@
+; https://github.com/connorlay/tree-sitter-eex/blob/f742f2fe327463335e8671a87c0b9b396905d1d1/queries/injections.scm
+
+((directive (expression) @injection.content)
+ (#set! injection.language "elixir"))
+
+((partial_expression) @injection.content
+ (#set! injection.language "elixir")
+ (#set! injection.include-children)
+ (#set! injection.combined))