aboutsummaryrefslogtreecommitdiffstats
path: root/runtime/queries/liquid
diff options
context:
space:
mode:
authorChristian Clason <c.clason@uni-graz.at>2023-06-12 09:54:30 -0600
committerChristian Clason <c.clason@uni-graz.at>2025-05-12 18:43:40 +0200
commit692b051b09935653befdb8f7ba8afdb640adf17b (patch)
tree167162b6b129ae04f68c5735078521a72917c742 /runtime/queries/liquid
parentfeat(c-family): inherit injections (diff)
downloadnvim-treesitter-692b051b09935653befdb8f7ba8afdb640adf17b.tar
nvim-treesitter-692b051b09935653befdb8f7ba8afdb640adf17b.tar.gz
nvim-treesitter-692b051b09935653befdb8f7ba8afdb640adf17b.tar.bz2
nvim-treesitter-692b051b09935653befdb8f7ba8afdb640adf17b.tar.lz
nvim-treesitter-692b051b09935653befdb8f7ba8afdb640adf17b.tar.xz
nvim-treesitter-692b051b09935653befdb8f7ba8afdb640adf17b.tar.zst
nvim-treesitter-692b051b09935653befdb8f7ba8afdb640adf17b.zip
feat!: drop modules, general refactor and cleanup
Diffstat (limited to 'runtime/queries/liquid')
-rw-r--r--runtime/queries/liquid/highlights.scm134
-rw-r--r--runtime/queries/liquid/injections.scm27
2 files changed, 161 insertions, 0 deletions
diff --git a/runtime/queries/liquid/highlights.scm b/runtime/queries/liquid/highlights.scm
new file mode 100644
index 000000000..38750db41
--- /dev/null
+++ b/runtime/queries/liquid/highlights.scm
@@ -0,0 +1,134 @@
+((comment) @comment @spell
+ (#set! priority 110))
+
+(raw_statement
+ (raw_content) @spell
+ (#set! priority 110))
+
+((identifier) @variable
+ (#set! priority 110))
+
+((string) @string
+ (#set! priority 110))
+
+((boolean) @boolean
+ (#set! priority 110))
+
+((number) @number
+ (#set! priority 110))
+
+(filter
+ name: (identifier) @function.call
+ (#set! priority 110))
+
+([
+ "as"
+ "assign"
+ "capture"
+ (custom_unpaired_statement)
+ "decrement"
+ "echo"
+ "endcapture"
+ "endform"
+ "endjavascript"
+ "endraw"
+ "endschema"
+ "endstyle"
+ "form"
+ "increment"
+ "javascript"
+ "layout"
+ "liquid"
+ "raw"
+ "schema"
+ "style"
+ "with"
+] @keyword
+ (#set! priority 110))
+
+([
+ "case"
+ "else"
+ "elsif"
+ "endcase"
+ "endif"
+ "endunless"
+ "if"
+ "unless"
+ "when"
+] @keyword.conditional
+ (#set! priority 110))
+
+([
+ (break_statement)
+ (continue_statement)
+ "by"
+ "cycle"
+ "endfor"
+ "endpaginate"
+ "endtablerow"
+ "for"
+ "paginate"
+ "tablerow"
+] @keyword.repeat
+ (#set! priority 110))
+
+([
+ "and"
+ "contains"
+ "in"
+ "or"
+] @keyword.operator
+ (#set! priority 110))
+
+([
+ "{{"
+ "}}"
+ "{{-"
+ "-}}"
+ "{%"
+ "%}"
+ "{%-"
+ "-%}"
+] @tag.delimiter
+ (#set! priority 110))
+
+[
+ "include"
+ "include_relative"
+ "render"
+ "section"
+ "sections"
+] @keyword.import
+
+[
+ "|"
+ ":"
+ "="
+ "+"
+ "-"
+ "*"
+ "/"
+ "%"
+ "^"
+ "=="
+ "<"
+ "<="
+ "!="
+ ">="
+ ">"
+] @operator
+
+[
+ "]"
+ "["
+ ")"
+ "("
+] @punctuation.bracket
+
+[
+ ","
+ "."
+] @punctuation.delimiter
+
+(front_matter) @keyword.directive
diff --git a/runtime/queries/liquid/injections.scm b/runtime/queries/liquid/injections.scm
new file mode 100644
index 000000000..ab0ced6ae
--- /dev/null
+++ b/runtime/queries/liquid/injections.scm
@@ -0,0 +1,27 @@
+((template_content) @injection.content
+ (#set! injection.language "html")
+ (#set! injection.combined))
+
+; TODO we can switch to quantifiers once neovim 0.10 becomes stable
+(javascript_statement
+ (js_content) @injection.content
+ (#set! injection.language "javascript")
+ (#set! injection.combined))
+
+(schema_statement
+ (json_content) @injection.content
+ (#set! injection.language "json")
+ (#set! injection.combined))
+
+(style_statement
+ (style_content) @injection.content
+ (#set! injection.language "css")
+ (#set! injection.combined))
+
+((front_matter) @injection.content
+ (#set! injection.language "yaml")
+ (#offset! @injection.content 1 0 -1 0)
+ (#set! injection.include-children))
+
+((comment) @injection.content
+ (#set! injection.language "comment"))