diff --git a/book/src/generated/lang-support.md b/book/src/generated/lang-support.md index 37ceec16..78362384 100644 --- a/book/src/generated/lang-support.md +++ b/book/src/generated/lang-support.md @@ -1,5 +1,6 @@ | Language | Syntax Highlighting | Treesitter Textobjects | Auto Indent | Default LSP | | --- | --- | --- | --- | --- | +| astro | ✓ | | | | | awk | ✓ | ✓ | | `awk-language-server` | | bash | ✓ | | | `bash-language-server` | | beancount | ✓ | | | | diff --git a/languages.toml b/languages.toml index 83e4affd..5e563178 100644 --- a/languages.toml +++ b/languages.toml @@ -1754,3 +1754,15 @@ language-server = { command = "jsonnet-language-server", args= ["-t", "--lint"] [[grammar]] name = "jsonnet" source = { git = "https://github.com/sourcegraph/tree-sitter-jsonnet", rev = "0475a5017ad7dc84845d1d33187f2321abcb261d" } + +[[language]] +name = "astro" +scope = "source.astro" +injection-regex = "astro" +file-types = ["astro"] +roots = [] +indent = { tab-width = 2, unit = " " } + +[[grammar]] +name = "astro" +source = { git = "https://github.com/virchau13/tree-sitter-astro", rev = "5f5c3e73c45967df9aa42f861fad2d77cd4e0900" } diff --git a/runtime/queries/astro/highlights.scm b/runtime/queries/astro/highlights.scm new file mode 100644 index 00000000..3d0792b8 --- /dev/null +++ b/runtime/queries/astro/highlights.scm @@ -0,0 +1,3 @@ +; inherits: html + +["---"] @punctuation.delimiter diff --git a/runtime/queries/astro/injections.scm b/runtime/queries/astro/injections.scm new file mode 100644 index 00000000..e3cff178 --- /dev/null +++ b/runtime/queries/astro/injections.scm @@ -0,0 +1,9 @@ +; inherits: html + +((frontmatter + (raw_text) @injection.content) + (#set! injection.language "typescript")) + +((interpolation + (raw_text) @injection.content) + (#set! injection.language "tsx"))