aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPham Huy Hoang <hoangtun0810@gmail.com>2023-11-06 11:04:13 +0900
committerGitHub <noreply@github.com>2023-11-06 11:04:13 +0900
commit80f66cdef147bd8d8a619dfd9b18da37af5ceaf6 (patch)
tree39de3655870beff9436fe89d7b5930ae29ede284
parentUpdate parsers: awk, gleam, janet_simple, markdown, markdown_inline, wing (diff)
downloadnvim-treesitter-80f66cdef147bd8d8a619dfd9b18da37af5ceaf6.tar
nvim-treesitter-80f66cdef147bd8d8a619dfd9b18da37af5ceaf6.tar.gz
nvim-treesitter-80f66cdef147bd8d8a619dfd9b18da37af5ceaf6.tar.bz2
nvim-treesitter-80f66cdef147bd8d8a619dfd9b18da37af5ceaf6.tar.lz
nvim-treesitter-80f66cdef147bd8d8a619dfd9b18da37af5ceaf6.tar.xz
nvim-treesitter-80f66cdef147bd8d8a619dfd9b18da37af5ceaf6.tar.zst
nvim-treesitter-80f66cdef147bd8d8a619dfd9b18da37af5ceaf6.zip
injections(vue): inject typescript instead of js (#5577)
Interpolations (`{{valid js code}}`) and directive attributes (`<element :directive="valid js code"`) can also be typescript code, hence we can inject typescript instead of javascript here and still be ok with highlights (bar some syntax differences between ts and js)
-rw-r--r--queries/vue/injections.scm4
-rw-r--r--tests/query/injections/vue/test-vue-injections.vue4
2 files changed, 4 insertions, 4 deletions
diff --git a/queries/vue/injections.scm b/queries/vue/injections.scm
index 57a264d9b..583a05c3f 100644
--- a/queries/vue/injections.scm
+++ b/queries/vue/injections.scm
@@ -57,12 +57,12 @@
((interpolation
(raw_text) @injection.content)
- (#set! injection.language "javascript"))
+ (#set! injection.language "typescript"))
(directive_attribute
(quoted_attribute_value
(attribute_value) @injection.content
- (#set! injection.language "javascript")))
+ (#set! injection.language "typescript")))
(template_element
(start_tag
diff --git a/tests/query/injections/vue/test-vue-injections.vue b/tests/query/injections/vue/test-vue-injections.vue
index 75d3d831c..773e53a5f 100644
--- a/tests/query/injections/vue/test-vue-injections.vue
+++ b/tests/query/injections/vue/test-vue-injections.vue
@@ -1,12 +1,12 @@
<template>
<span>{{"Text inside interpolation"}}</span>
- <!-- ^ javascript -->
+ <!-- ^ typescript -->
<template lang="pug"> a(:href="url") some link title in pug: </template>
<!-- ^ pug -->
<template v-if="'text inside directives'"></template>
-<!-- ^ javascript -->
+<!-- ^ typescript -->
</template>
<script> const foo = "1" </script>
<!-- ^ javascript -->