diff options
| -rw-r--r-- | CONTRIBUTING.md | 3 | ||||
| -rw-r--r-- | SUPPORTED_LANGUAGES.md | 3 | ||||
| -rw-r--r-- | lua/nvim-treesitter/_meta/parsers.lua | 2 | ||||
| -rw-r--r-- | lua/nvim-treesitter/parsers.lua | 25 | ||||
| -rw-r--r-- | runtime/queries/blueprint/highlights.scm | 75 | ||||
| -rw-r--r-- | runtime/queries/blueprint/injections.scm | 2 | ||||
| -rw-r--r-- | runtime/queries/fusion/folds.scm | 6 | ||||
| -rw-r--r-- | runtime/queries/fusion/highlights.scm | 132 | ||||
| -rw-r--r-- | runtime/queries/fusion/indents.scm | 24 | ||||
| -rw-r--r-- | runtime/queries/fusion/injections.scm | 5 | ||||
| -rw-r--r-- | runtime/queries/fusion/locals.scm | 23 | ||||
| -rw-r--r-- | runtime/queries/jsonc/folds.scm | 1 | ||||
| -rw-r--r-- | runtime/queries/jsonc/highlights.scm | 3 | ||||
| -rw-r--r-- | runtime/queries/jsonc/indents.scm | 3 | ||||
| -rw-r--r-- | runtime/queries/jsonc/injections.scm | 2 | ||||
| -rw-r--r-- | runtime/queries/jsonc/locals.scm | 1 | ||||
| -rw-r--r-- | tests/query/highlights/fusion/afx.fusion | 17 | ||||
| -rw-r--r-- | tests/query/highlights/fusion/basic.fusion | 60 | ||||
| -rw-r--r-- | tests/query/highlights/fusion/expressions.fusion | 82 |
19 files changed, 4 insertions, 465 deletions
diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index c4ec8e192..0dc03947b 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -42,6 +42,9 @@ zimbu = { >[!IMPORTANT] > The "maintainers" here refers to the person maintaining the **queries** in `nvim-treesitter`, not the parser maintainers (who likely don't use Neovim). The maintainers' duty is to review issues and PRs related to the query and to keep them updated with respect to parser changes. +>[!IMPORTANT] +> Due to reliability issues with smaller codeforges, only Github-hosted parsers are currently eligible for inclusion. (The development may happen elsewhere, but there must at least exist a Github mirror to pull the source from.) We are monitoring the situation and hope to support more codeforges again in the future. + >[!NOTE] > To qualify for Tier 1 ("stable"), a parser needs to > * make releases following semver (_patch_ for fixes not affecting queries; _minor_ for changes introducing new nodes or patterns; _major_ for changes removing nodes or previously valid patterns); diff --git a/SUPPORTED_LANGUAGES.md b/SUPPORTED_LANGUAGES.md index 7a3380cd8..695171c15 100644 --- a/SUPPORTED_LANGUAGES.md +++ b/SUPPORTED_LANGUAGES.md @@ -28,7 +28,6 @@ Language | Tier | Queries | Maintainer [bicep](https://github.com/tree-sitter-grammars/tree-sitter-bicep) | unstable | `HFIJL` | @amaanq [bitbake](https://github.com/tree-sitter-grammars/tree-sitter-bitbake) | unstable | `HFIJL` | @amaanq [blade](https://github.com/EmranMR/tree-sitter-blade) | unstable | `HFIJ ` | @calebdw -[blueprint](https://gitlab.com/gabmus/tree-sitter-blueprint) | unstable | `H J ` | @gabmus [bp](https://github.com/ambroisie/tree-sitter-bp)[^bp] | unstable | `HFIJL` | @ambroisie [brightscript](https://github.com/ajdelcimmuto/tree-sitter-brightscript) | unstable | `HFIJ ` | @ajdelcimmuto [c](https://github.com/tree-sitter/tree-sitter-c) | unstable | `HFIJL` | @amaanq @@ -89,7 +88,6 @@ ecma (queries only)[^ecma] | unstable | `HFIJL` | @steelsojka [fsh](https://github.com/mgramigna/tree-sitter-fsh) | unstable | `H J ` | @mgramigna [fsharp](https://github.com/ionide/tree-sitter-fsharp) | unstable | `H J ` | @nsidorenco [func](https://github.com/tree-sitter-grammars/tree-sitter-func) | unstable | `H J ` | @amaanq -[fusion](https://gitlab.com/jirgn/tree-sitter-fusion) | unstable | `HFIJL` | @jirgn [gap](https://github.com/gap-system/tree-sitter-gap)[^gap] | unstable | `HF JL` | @reiniscirpons [gaptst](https://github.com/gap-system/tree-sitter-gaptst)[^gaptst] | unstable | `HF J ` | @reiniscirpons [gdscript](https://github.com/PrestonKnopp/tree-sitter-gdscript)[^gdscript] | unmaintained | `HFIJL` | @@ -152,7 +150,6 @@ html_tags (queries only)[^html_tags] | unstable | `H IJ ` | @TravonteD [jsdoc](https://github.com/tree-sitter/tree-sitter-jsdoc) | unstable | `H ` | @steelsojka [json](https://github.com/tree-sitter/tree-sitter-json) | unstable | `HFI L` | @steelsojka [json5](https://github.com/Joakker/tree-sitter-json5) | unstable | `H J ` | @Joakker -[jsonc](https://gitlab.com/WhyNotHugo/tree-sitter-jsonc) | unstable | `HFIJL` | @WhyNotHugo [jsonnet](https://github.com/sourcegraph/tree-sitter-jsonnet) | unstable | `HF JL` | @nawordar jsx (queries only)[^jsx] | unstable | `HFIJ ` | @steelsojka [julia](https://github.com/tree-sitter-grammars/tree-sitter-julia) | unstable | `HFIJL` | @clason diff --git a/lua/nvim-treesitter/_meta/parsers.lua b/lua/nvim-treesitter/_meta/parsers.lua index 5af809bb0..3a97b35a5 100644 --- a/lua/nvim-treesitter/_meta/parsers.lua +++ b/lua/nvim-treesitter/_meta/parsers.lua @@ -3,7 +3,7 @@ error('Cannot require a meta file') ---@class InstallInfo --- ----URL of parser repo (Github/Gitlab) +---URL of parser repo (Github) ---@field url string --- ---Commit hash of parser to download (compatible with queries) diff --git a/lua/nvim-treesitter/parsers.lua b/lua/nvim-treesitter/parsers.lua index 304e3a24d..1351a00de 100644 --- a/lua/nvim-treesitter/parsers.lua +++ b/lua/nvim-treesitter/parsers.lua @@ -131,14 +131,6 @@ return { maintainers = { '@calebdw' }, tier = 2, }, - blueprint = { - install_info = { - revision = '355ef84ef8a958ac822117b652cf4d49bac16c79', - url = 'https://gitlab.com/gabmus/tree-sitter-blueprint', - }, - maintainers = { '@gabmus' }, - tier = 2, - }, bp = { install_info = { revision = 'ee641d15390183d7535777947ce0f2f1fbcee69f', @@ -623,14 +615,6 @@ return { maintainers = { '@amaanq' }, tier = 2, }, - fusion = { - install_info = { - revision = '19db2f47ba4c3a0f6238d4ae0e2abfca16e61dd6', - url = 'https://gitlab.com/jirgn/tree-sitter-fusion', - }, - maintainers = { '@jirgn' }, - tier = 2, - }, gap = { install_info = { revision = '2bac14863b76ad0ff6fd7204c50574732acd66df', @@ -1142,15 +1126,6 @@ return { maintainers = { '@Joakker' }, tier = 2, }, - jsonc = { - install_info = { - revision = '02b01653c8a1c198ae7287d566efa86a135b30d5', - url = 'https://gitlab.com/WhyNotHugo/tree-sitter-jsonc', - }, - maintainers = { '@WhyNotHugo' }, - requires = { 'json' }, - tier = 2, - }, jsonnet = { install_info = { revision = 'ddd075f1939aed8147b7aa67f042eda3fce22790', diff --git a/runtime/queries/blueprint/highlights.scm b/runtime/queries/blueprint/highlights.scm deleted file mode 100644 index f3c39f232..000000000 --- a/runtime/queries/blueprint/highlights.scm +++ /dev/null @@ -1,75 +0,0 @@ -(object_id) @variable - -(string) @string - -(escape_sequence) @string.escape - -(comment) @comment @spell - -(constant) @constant.builtin - -(boolean) @boolean - -(using) @keyword.import - -(template) @keyword - -(decorator) @attribute - -(property_definition - (property_name) @property) - -(object) @type - -(signal_binding - (signal_name) @function.builtin) - -(signal_binding - (function - (identifier)) @function) - -(signal_binding - "swapped" @keyword) - -(styles_list - "styles" @function.macro) - -(layout_definition - "layout" @function.macro) - -(gettext_string - "_" @function.builtin) - -(menu_definition - "menu" @keyword) - -(menu_section - "section" @keyword) - -(menu_item - "item" @function.macro) - -(import_statement - (gobject_library) @module) - -(import_statement - (version_number) @number.float) - -(float) @number.float - -(number) @number - -[ - ";" - "." - "," -] @punctuation.delimiter - -[ - "(" - ")" - "[" - "]" - "{" - "}" -] @punctuation.bracket diff --git a/runtime/queries/blueprint/injections.scm b/runtime/queries/blueprint/injections.scm deleted file mode 100644 index 2f0e58eb6..000000000 --- a/runtime/queries/blueprint/injections.scm +++ /dev/null @@ -1,2 +0,0 @@ -((comment) @injection.content - (#set! injection.language "comment")) diff --git a/runtime/queries/fusion/folds.scm b/runtime/queries/fusion/folds.scm deleted file mode 100644 index 179fc160b..000000000 --- a/runtime/queries/fusion/folds.scm +++ /dev/null @@ -1,6 +0,0 @@ -[ - (comment) - (block) - (afx_comment) - (afx_element) -] @fold diff --git a/runtime/queries/fusion/highlights.scm b/runtime/queries/fusion/highlights.scm deleted file mode 100644 index 7108e5705..000000000 --- a/runtime/queries/fusion/highlights.scm +++ /dev/null @@ -1,132 +0,0 @@ -(comment) @comment @spell - -(afx_comment) @comment @spell - -; identifiers afx -(afx_opening_element - (afx_identifier) @tag) - -(afx_closing_element - (afx_identifier) @tag) - -(afx_element_self_closing - (afx_identifier) @tag) - -(afx_attribute - (afx_property_identifier) @tag.attribute) - -(afx_text) @spell - -; identifiers eel -(eel_object_path - (eel_path_identifier) @variable.builtin - (#any-of? @variable.builtin "this" "props")) - -(eel_object_path - (eel_path_identifier) @variable) - -(eel_object_pair - key: (eel_property_name) @property) - -(eel_method_name) @function - -(eel_parameter) @variable - -; identifiers fusion -; ----------- -(path_part) @property - -(meta_property) @attribute - -(prototype_signature - "prototype" @keyword) - -(include_statement - "include" @keyword.import - (source_file) @string.special.url) - -(namespace_declaration - "namespace" @keyword.type - (alias_namespace) @module) - -(type - name: (type_name) @type) - -; tokens -; ------ -(afx_opening_element - [ - "<" - ">" - ] @punctuation.bracket) - -(afx_closing_element - [ - "<" - ">" - "/" - ] @punctuation.bracket) - -(afx_element_self_closing - [ - "<" - "/>" - ] @punctuation.bracket) - -[ - (package_name) - (alias_namespace) -] @module - -(namespace_declaration - "=" @operator) - -(assignment - "=" @operator) - -(copy - "<" @operator) - -(deletion) @operator - -(eel_binary_expression - operator: _ @operator) - -(eel_not_expression - [ - "!" - "not" - ] @operator) - -(string) @string - -(number) @number - -(boolean) @boolean - -(null) @constant.builtin - -(value_expression - start: _ @punctuation.special - end: _ @punctuation.special) - -[ - "(" - ")" - "{" - "}" - "[" - "]" -] @punctuation.bracket - -[ - ":" - "." - "?" -] @punctuation.delimiter - -(eel_ternary_expression - [ - "?" - ":" - ] @keyword.conditional.ternary) diff --git a/runtime/queries/fusion/indents.scm b/runtime/queries/fusion/indents.scm deleted file mode 100644 index 0ba6cf758..000000000 --- a/runtime/queries/fusion/indents.scm +++ /dev/null @@ -1,24 +0,0 @@ -[ - (block) - (value_dsl) - (afx_element) - (afx_element_self_closing) - (eel_array) - (eel_object) -] @indent.begin - -(block - end: _ @indent.branch) - -(value_dsl - end: _ @indent.branch) - -(eel_array - end: _ @indent.branch) - -(eel_object - end: _ @indent.branch) - -(afx_closing_element) @indent.branch - -(comment) @indent.ignore diff --git a/runtime/queries/fusion/injections.scm b/runtime/queries/fusion/injections.scm deleted file mode 100644 index 085cdb458..000000000 --- a/runtime/queries/fusion/injections.scm +++ /dev/null @@ -1,5 +0,0 @@ -([ - (comment) - (afx_comment) -] @injection.content - (#set! injection.language "comment")) diff --git a/runtime/queries/fusion/locals.scm b/runtime/queries/fusion/locals.scm deleted file mode 100644 index d23e0ab46..000000000 --- a/runtime/queries/fusion/locals.scm +++ /dev/null @@ -1,23 +0,0 @@ -; Fusion base -(block) @local.scope - -(namespace_declaration - (alias_namespace) @local.definition.namespace) - -(property - (path - (path_part) @local.definition.field)) - -(type - namespace: (package_name)? @local.definition.namespace - name: (type_name) @local.definition.type) - -; Eel Expressions -(eel_arrow_function) @local.scope - -(eel_object) @local.scope - -(eel_parameter) @local.definition.parameter - -(eel_object_pair - key: (eel_property_name) @local.definition.field) diff --git a/runtime/queries/jsonc/folds.scm b/runtime/queries/jsonc/folds.scm deleted file mode 100644 index 41269219e..000000000 --- a/runtime/queries/jsonc/folds.scm +++ /dev/null @@ -1 +0,0 @@ -; inherits: json diff --git a/runtime/queries/jsonc/highlights.scm b/runtime/queries/jsonc/highlights.scm deleted file mode 100644 index e50112155..000000000 --- a/runtime/queries/jsonc/highlights.scm +++ /dev/null @@ -1,3 +0,0 @@ -; inherits: json - -(comment) @comment @spell diff --git a/runtime/queries/jsonc/indents.scm b/runtime/queries/jsonc/indents.scm deleted file mode 100644 index 3b01ca999..000000000 --- a/runtime/queries/jsonc/indents.scm +++ /dev/null @@ -1,3 +0,0 @@ -; inherits: json - -(comment) @indent.ignore diff --git a/runtime/queries/jsonc/injections.scm b/runtime/queries/jsonc/injections.scm deleted file mode 100644 index 2f0e58eb6..000000000 --- a/runtime/queries/jsonc/injections.scm +++ /dev/null @@ -1,2 +0,0 @@ -((comment) @injection.content - (#set! injection.language "comment")) diff --git a/runtime/queries/jsonc/locals.scm b/runtime/queries/jsonc/locals.scm deleted file mode 100644 index 41269219e..000000000 --- a/runtime/queries/jsonc/locals.scm +++ /dev/null @@ -1 +0,0 @@ -; inherits: json diff --git a/tests/query/highlights/fusion/afx.fusion b/tests/query/highlights/fusion/afx.fusion deleted file mode 100644 index 4ccb8174f..000000000 --- a/tests/query/highlights/fusion/afx.fusion +++ /dev/null @@ -1,17 +0,0 @@ -property = afx` - <!-- some comment --> -<!-- ^@comment --> - - <div attribute="value">text</div> -<!-- ^@tag --> -<!-- ^@tag.attribute --> -<!-- ^@string --> -<!-- ^@punctuation.bracket --> -<!-- ^@tag --> - - <Namespace:Type {...spread} some={(a) => true} /> -<!-- ^@tag --> -<!-- ^@variable --> -<!-- ^@variable --> -<!-- ^@boolean --> -` diff --git a/tests/query/highlights/fusion/basic.fusion b/tests/query/highlights/fusion/basic.fusion deleted file mode 100644 index 5f3cc346a..000000000 --- a/tests/query/highlights/fusion/basic.fusion +++ /dev/null @@ -1,60 +0,0 @@ -include: SomeFile.fusion -//<- @keyword.import -// ^ @string.special.url - -namespace: ns = Neos.Fusion.Space -//<- @keyword.type -// ^ @module -// ^ @operator -// ^ @module - -prototype(MyType) < prototype(ns:SuperType) { -//<-keyword -// ^ @punctuation.bracket -// ^ @type -// ^ @punctuation.bracket -// ^ @operator -// ^ @module -// ^ @type - - deleteProp > - // ^ @operator - - string = 'value' - //<- @property - // ^ @operator - // ^ @string - - number = 10.2 - // ^ @number - - null = null - // ^ @constant.builtin - - boolean = true - // ^ @boolean - - property.inner = "value" - //<- @property - // ^ @property - - property.@meta = "value" - //<- @property - // ^ @attribute - - property.type = SomeType - //<- @property - // ^ @type - - property.aliasedType = ns:SomeType - //<- @property - // ^ @module - // ^ @type - - property.fullQualifiedType = SomeNamespace:SomeType - //<- @property - // ^ @module - // ^ @type - -} - diff --git a/tests/query/highlights/fusion/expressions.fusion b/tests/query/highlights/fusion/expressions.fusion deleted file mode 100644 index b1822dda8..000000000 --- a/tests/query/highlights/fusion/expressions.fusion +++ /dev/null @@ -1,82 +0,0 @@ -string = ${'foo'} -// ^string - -string = ${'foo \'bar\' baz'} -// ^string - -string = ${"foo"} -// ^string - -string = ${"foo ${test}"} -// ^string - -boolean = ${true} -// ^boolean - -number = ${1} -// ^number - -number = ${1.2} -// ^number - -propertyPath = ${property.path} -// ^variable -// ^variable - -thisorProps = ${this.path} -// ^variable.builtin -// ^variable - -thisorProps = ${props.path} -// ^variable.builtin -// ^variable - -array = ${[]} -// ^punctuation.bracket - -array = ${[true, 'string', 1, [true]]} -// ^punctuation.bracket -// ^boolean -// ^string -// ^number -// ^punctuation.bracket -// ^boolean - -object = ${{}} -// ^punctuation.bracket - -object = ${{first: 'value', second: true, third: [], fourth: object.path }} -// ^property -// ^string -// ^property -// ^boolean -// ^property -// ^punctuation.bracket -// ^property -// ^variable - -result = ${methodCall()} -// ^function - -result = ${Some.methodCall(param, param)} -// ^function -// ^variable -// ^variable - -arrowFunction = ${map(foo, (bar, buz) => bar * buz)} -// ^function -// ^variable -// ^variable - -logic = ${!foo && !(bar || baz) and not 'string'} -// ^operator -// ^operator -// ^operator -// ^operator -// ^operator - -ternary = ${ check ? true : false} -// ^@keyword.conditional.ternary -// ^@keyword.conditional.ternary - - |
