From a7f49fa56fecd7f44efca7e6074e5cd9e5d91c92 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Thomas=20Wehm=C3=B6ller?= Date: Sun, 10 Oct 2021 15:09:17 +0200 Subject: [PATCH] Add Vue tree sitter grammar (#787) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * ✨ Add vue tree sitter support * Update .gitmodules Co-authored-by: Blaž Hrastnik --- .gitmodules | 4 ++++ helix-syntax/languages/tree-sitter-vue | 1 + languages.toml | 9 +++++++++ runtime/queries/vue/highlights.scm | 21 +++++++++++++++++++++ runtime/queries/vue/injections.scm | 17 +++++++++++++++++ 5 files changed, 52 insertions(+) create mode 160000 helix-syntax/languages/tree-sitter-vue create mode 100644 runtime/queries/vue/highlights.scm create mode 100644 runtime/queries/vue/injections.scm diff --git a/.gitmodules b/.gitmodules index d1fc1517..95b3670b 100644 --- a/.gitmodules +++ b/.gitmodules @@ -122,3 +122,7 @@ path = helix-syntax/languages/tree-sitter-svelte url = https://github.com/Himujjal/tree-sitter-svelte shallow = true +[submodule "helix-syntax/languages/tree-sitter-vue"] + path = helix-syntax/languages/tree-sitter-vue + url = https://github.com/ikatyang/tree-sitter-vue + shallow = true diff --git a/helix-syntax/languages/tree-sitter-vue b/helix-syntax/languages/tree-sitter-vue new file mode 160000 index 00000000..91fe2754 --- /dev/null +++ b/helix-syntax/languages/tree-sitter-vue @@ -0,0 +1 @@ +Subproject commit 91fe2754796cd8fba5f229505a23fa08f3546c06 diff --git a/languages.toml b/languages.toml index 509100e7..e716b3dc 100644 --- a/languages.toml +++ b/languages.toml @@ -278,6 +278,15 @@ roots = [] indent = { tab-width = 2, unit = " " } language-server = { command = "svelteserver", args = ["--stdio"] } + +[[language]] +name = "vue" +scope = "source.vue" +injection-regex = "vue" +file-types = ["vue"] +roots = [] +indent = { tab-width = 2, unit = " " } + [[language]] name = "yaml" scope = "source.yaml" diff --git a/runtime/queries/vue/highlights.scm b/runtime/queries/vue/highlights.scm new file mode 100644 index 00000000..f90ae429 --- /dev/null +++ b/runtime/queries/vue/highlights.scm @@ -0,0 +1,21 @@ +(tag_name) @tag +(end_tag) @tag + +(directive_name) @keyword +(directive_argument) @constant + +(attribute + (attribute_name) @attribute + (quoted_attribute_value + (attribute_value) @string) +) + +(comment) @comment + +[ + "<" + ">" + "