From 890464e7ba15b4827965b349e92f1ebd971ff142 Mon Sep 17 00:00:00 2001 From: Frans Skarman Date: Sun, 14 Dec 2025 18:23:30 +0100 Subject: [PATCH] Bump Spade grammar (#14920) --- book/src/generated/lang-support.md | 2 +- languages.toml | 2 +- runtime/queries/spade/highlights.scm | 10 ++++++-- runtime/queries/spade/rainbows.scm | 38 ++++++++++++++++++++++++++++ 4 files changed, 48 insertions(+), 4 deletions(-) create mode 100644 runtime/queries/spade/rainbows.scm diff --git a/book/src/generated/lang-support.md b/book/src/generated/lang-support.md index 5c2cb0f1..cd4c81c8 100644 --- a/book/src/generated/lang-support.md +++ b/book/src/generated/lang-support.md @@ -253,7 +253,7 @@ | snakemake | ✓ | | ✓ | | | `pylsp` | | solidity | ✓ | ✓ | | | | `solc` | | sourcepawn | ✓ | ✓ | | | | `sourcepawn-studio` | -| spade | ✓ | | ✓ | | | `spade-language-server` | +| spade | ✓ | | ✓ | | ✓ | `spade-language-server` | | spicedb | ✓ | | | ✓ | | | | sql | ✓ | ✓ | | | | | | sshclientconfig | ✓ | | | | | | diff --git a/languages.toml b/languages.toml index b979db49..2bcee1cc 100644 --- a/languages.toml +++ b/languages.toml @@ -4495,7 +4495,7 @@ indent = { tab-width = 4, unit = " " } [[grammar]] name = "spade" -source = { git = "https://gitlab.com/spade-lang/tree-sitter-spade", rev = "78bf09a88fc1d396f66b69879f908fc6bd2e6934" } +source = { git = "https://gitlab.com/spade-lang/tree-sitter-spade", rev = "6569cd11cc9362e277845ce24111735059b145ee" } [[language]] name = "amber" diff --git a/runtime/queries/spade/highlights.scm b/runtime/queries/spade/highlights.scm index ba5d5d73..5578708f 100644 --- a/runtime/queries/spade/highlights.scm +++ b/runtime/queries/spade/highlights.scm @@ -25,6 +25,8 @@ (#any-of? @type.enum.variant.builtin "Some" "None")) ((pipeline_stage_name) @label) +((label) @label) +((label_ref) @label) ((stage_reference stage: (identifier) @label)) @@ -49,14 +51,15 @@ "mod" "where" "trait" + "for" ] @keyword [ - "use" + "use" ] @keyword.import [ - "gen" + "gen" ] @keyword.directive ((gen_if_expression ["if" "else"] @keyword.directive)) @@ -72,6 +75,8 @@ (bool_literal) @constant.builtin.boolean (int_literal) @constant.numeric.integer +(char_literal) @constant.character +(string_literal) @string [ "&" @@ -89,6 +94,7 @@ ] @operator +((op_custom_infix) @operator) ((op_add) @operator) ((op_sub) @operator) ((op_mul) @operator) diff --git a/runtime/queries/spade/rainbows.scm b/runtime/queries/spade/rainbows.scm new file mode 100644 index 00000000..511f0bbf --- /dev/null +++ b/runtime/queries/spade/rainbows.scm @@ -0,0 +1,38 @@ +[ + (block) + (impl) + (attribute) + (generic_parameters) + (parameter_list) + (impl) + (trait) + (enum_body) + (enum_member) + (mod) + (reg_reset) + (reg_initial) + (match_block) + (lambda_params) + (paren_expression) + (turbofish) + (stage_reference) + (argument_list) + (braced_parameter_list) + (tuple_literal) + (array_type) + (array_literal) + (array_pattern) + (index) + (tuple_pattern) +] @rainbow.scope + + +[ + "[" "]" + "(" ")" + "{" "}" + "<" ">" + "$(" + "::<" + "::$<" +] @rainbow.bracket -- 2.51.2