diff --git a/.emmyrc.json b/.emmyrc.json new file mode 100644 index 000000000..34d1e0b86 --- /dev/null +++ b/.emmyrc.json @@ -0,0 +1,25 @@ +{ + "$schema": "https://raw.githubusercontent.com/EmmyLuaLs/emmylua-analyzer-rust/refs/heads/main/crates/emmylua_code_analysis/resources/schema.json", + "format": { + "externalTool": { + "program": "stylua", + "args": [ + "-", + "--stdin-filepath", + "${file}" + ] + } + }, + "diagnostics": { + "disable": [ + "unnecessary-if" + ] + }, + "codeAction": { + "insertSpace": true + }, + "strict": { + "typeCall": true, + "arrayIndex": true + } +} diff --git a/.github/FUNDING.yml b/.github/FUNDING.yml deleted file mode 100644 index b2844b214..000000000 --- a/.github/FUNDING.yml +++ /dev/null @@ -1,2 +0,0 @@ -open_collective: "nvim-treesitter" -github: "nvim-treesitter" diff --git a/.github/dependabot.yml b/.github/dependabot.yml new file mode 100644 index 000000000..e80604577 --- /dev/null +++ b/.github/dependabot.yml @@ -0,0 +1,16 @@ +version: 2 +updates: + - package-ecosystem: "github-actions" + directory: "/" + schedule: + interval: "weekly" + cooldown: + default-days: 3 + commit-message: + prefix: "ci" + labels: + - "CI" + groups: + actions: + patterns: ["*"] + diff --git a/.github/workflows/downstream.yml b/.github/workflows/downstream.yml index b4ea6fc85..46e699613 100644 --- a/.github/workflows/downstream.yml +++ b/.github/workflows/downstream.yml @@ -8,6 +8,10 @@ on: - "lua/nvim-treesitter/parsers.lua" workflow_dispatch: +concurrency: + group: ${{ github.workflow }}-${{ github.ref }} + cancel-in-progress: ${{ github.event_name == 'pull_request' }} + jobs: test-downstream: name: Check downstream queries @@ -15,8 +19,8 @@ jobs: env: NVIM: "nvim" steps: - - uses: actions/checkout@v5 - - uses: tree-sitter/setup-action/cli@v1 + - uses: actions/checkout@v6 + - uses: tree-sitter/setup-action/cli@v2 - name: Install and prepare Neovim env: @@ -31,7 +35,7 @@ jobs: run: curl -fL https://github.com/ribru17/ts_query_ls/releases/latest/download/ts_query_ls-x86_64-unknown-linux-gnu.tar.gz | tar -xz - name: Clone textobjects - uses: actions/checkout@v5 + uses: actions/checkout@v6 with: repository: nvim-treesitter/nvim-treesitter-textobjects ref: main @@ -44,7 +48,7 @@ jobs: - name: Clone context if: always() - uses: actions/checkout@v5 + uses: actions/checkout@v6 with: repository: nvim-treesitter/nvim-treesitter-context ref: master diff --git a/.github/workflows/lint.yml b/.github/workflows/lint.yml index 27a75f8c0..6ed8e7ba2 100644 --- a/.github/workflows/lint.yml +++ b/.github/workflows/lint.yml @@ -12,9 +12,9 @@ on: jobs: lua: name: Lint Lua files - runs-on: ubuntu-latest + runs-on: ubuntu-slim steps: - - uses: actions/checkout@v5 + - uses: actions/checkout@v6 - name: Format run: | @@ -26,9 +26,9 @@ jobs: queries: name: Lint query files - runs-on: ubuntu-latest + runs-on: ubuntu-slim steps: - - uses: actions/checkout@v5 + - uses: actions/checkout@v6 - name: Format run: | @@ -40,9 +40,9 @@ jobs: readme: name: Lint docs - runs-on: ubuntu-latest + runs-on: ubuntu-slim steps: - - uses: actions/checkout@v5 + - uses: actions/checkout@v6 - name: Check SUPPORTED_LANGUAGES run: | diff --git a/.github/workflows/test-core.yml b/.github/workflows/test-core.yml index f20f1939d..3a0b3cffa 100644 --- a/.github/workflows/test-core.yml +++ b/.github/workflows/test-core.yml @@ -21,8 +21,8 @@ jobs: env: NVIM: ${{ matrix.os == 'windows-latest' && 'nvim-win64\\bin\\nvim.exe' || 'nvim' }} steps: - - uses: actions/checkout@v5 - - uses: tree-sitter/setup-action/cli@v1 + - uses: actions/checkout@v6 + - uses: tree-sitter/setup-action/cli@v2 - uses: ilammy/msvc-dev-cmd@v1 - name: Install and prepare Neovim diff --git a/.github/workflows/update-parsers.yml b/.github/workflows/update-parsers.yml index 533fc2ddd..7b68b2412 100644 --- a/.github/workflows/update-parsers.yml +++ b/.github/workflows/update-parsers.yml @@ -15,9 +15,9 @@ jobs: matrix: tier: [1, 2] name: Update parsers tier ${{ matrix.tier }} - runs-on: ubuntu-latest + runs-on: ubuntu-slim steps: - - uses: actions/checkout@v5 + - uses: actions/checkout@v6 with: ref: main @@ -42,7 +42,7 @@ jobs: run: ./scripts/update-parsers.lua --tier=${{ matrix.tier }} - name: Create Pull Request - uses: peter-evans/create-pull-request@v7 + uses: peter-evans/create-pull-request@v8 with: add-paths: lua/nvim-treesitter/parsers.lua token: ${{ steps.app-token.outputs.token }} diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index c4ec8e192..52ec52633 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -14,6 +14,21 @@ Before describing these in detail, some general advice: ## Parsers +>[!IMPORTANT] +> To qualify for inclusion, a parser must meet the following criteria: +> * correspond to a filetype detected by Neovim (nightly) +> * feature complete, tested by users, and actively maintained (according to maintainer discretion) +> * hosted or mirrored on Github (other codeforges are not reliable enough for CI) +> * covered by CI using [upstream workflows](https://github.com/tree-sitter/workflows) +> * provide reference queries covered by a [`ts_query_ls` workflow](https://github.com/tree-sitter-grammars/template/blob/9c46d09d688d27c7aef31c2b32f50260de4e7906/.github/workflows/ci.yml#L69-L86) +> * if the repo contains a `src/parser.c`, it must support the latest ABI +> * if the repo does _not_ contain a `src/parser.c`, it must contain an up-to-date `src/grammar.json` +> * if the repo contains an external scanner, it must be written in C99 +> +> Tier 1 parsers (preferred) in addition need to +> * make regular 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) +> * provide WASM release artifacts + To add a new parser, edit the following files: 1. In `lua/parsers.lua`, add an entry to the returned table of the following form: @@ -36,27 +51,15 @@ zimbu = { } ``` ->[!IMPORTANT] -> If the repo does not contain a pre-generated `src/parser.c`, it **must** at least contain `src/grammar.json` so that the parser can be generated without having `node` installed. - >[!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. ->[!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); -> * provide WASM release artifacts; -> * include and maintain reference queries. - 2. If the parser name is not the same as the Vim filetype, add an entry to the `filetypes` table in `plugin/filetypes.lua`: ```lua zimbu = { 'zu' }, ``` ->[!IMPORTANT] -> Only external scanners written in C are supported for portability reasons. - 3. Update the list of [supported languages] by running `make docs` (or `./scripts/update-readme.lua` if on Windows). 4. Test if both `:TSInstall zimbu` and `:TSInstallFromGrammar zimbu` work without errors (`:checkhealth treesitter` or `./scripts/check-parsers.lua zimbu`). diff --git a/Makefile b/Makefile index 15482e03b..9442df997 100644 --- a/Makefile +++ b/Makefile @@ -1,5 +1,5 @@ NVIM_VERSION ?= nightly -LUALS_VERSION := 3.15.0 +LUALS_VERSION := 3.17.1 DEPDIR ?= .test-deps CURL ?= curl -sL --create-dirs diff --git a/README.md b/README.md index 3ddf5b3df..94206aa31 100644 --- a/README.md +++ b/README.md @@ -10,52 +10,47 @@ The `nvim-treesitter` plugin provides For details on these and how to help improving them, see [CONTRIBUTING.md](./CONTRIBUTING.md). >[!CAUTION] -> This is a full, incompatible, rewrite. If you can't or don't want to update, check out the [`master` branch](https://github.com/nvim-treesitter/nvim-treesitter/blob/master/README.md) (which is locked but will remain available for backward compatibility). +> This is a full, incompatible, rewrite. If you can't or don't want to update, specify the [`master` branch](https://github.com/nvim-treesitter/nvim-treesitter/blob/master/README.md) (which is locked but will remain available for backward compatibility). # Quickstart ## Requirements -- Neovim 0.11.0 or later (nightly) +- Neovim 0.12.0 or later (nightly) - `tar` and `curl` in your path -- [`tree-sitter-cli`](https://github.com/tree-sitter/tree-sitter/blob/master/crates/cli/README.md) (0.25.0 or later) +- [`tree-sitter-cli`](https://github.com/tree-sitter/tree-sitter/blob/master/crates/cli/README.md) (0.26.1 or later, installed via your package manager, **not npm**) - a C compiler in your path (see ) >[!IMPORTANT] -> The **support policy** for Neovim is -> 1. the _latest_ [stable release](https://github.com/neovim/neovim/releases/tag/stable); -> 2. the _latest_ [nightly prerelease](https://github.com/neovim/neovim/releases/tag/nightly). -> Other versions may work but are neither tested nor considered for fixes. In general, compatibility with Nvim 0.X is removed after the release of Nvim 0.(X+1).1. +> The current **support policy** for Neovim is +> * the _latest_ [nightly prerelease](https://github.com/neovim/neovim/releases/tag/nightly). +> Other versions may work but are neither tested nor considered for fixes. Once this plugin is [considered stable](https://github.com/nvim-treesitter/nvim-treesitter/issues/4767), support will be added for the latest release. ## Installation You can install `nvim-treesitter` with your favorite package manager (or using the native `package` feature of vim, see `:h packages`). This plugin is only guaranteed to work with specific versions of language parsers** (as specified in the `parser.lua` table). **When upgrading the plugin, you must make sure that all installed parsers are updated to the latest version** via `:TSUpdate`. -It is strongly recommended to automate this; e.g., using [lazy.nvim](https://github.com/folke/lazy.nvim) +It is strongly recommended to automate this; e.g., using the following spec with [lazy.nvim](https://github.com/folke/lazy.nvim): ```lua -require('lazy').setup({ +{ 'nvim-treesitter/nvim-treesitter', lazy = false, - branch = 'main', build = ':TSUpdate' -}) +} ``` >[!IMPORTANT] > This plugin does not support lazy-loading. ->[!IMPORTANT] -> Make sure to specify the `main` branch since (for now) the default branch is [`master`](https://github.com/nvim-treesitter/nvim-treesitter/blob/master/README.md). - ## Setup -`nvim-treesitter` can be configured by calling `setup`. The following snippet lists the available options and their default values. **You do not need to call `setup` for `nvim-treesitter` to work using default values.** +`nvim-treesitter` can be configured by calling `setup`. **You do not need to call `setup` for `nvim-treesitter` to work using default values.** ```lua -require'nvim-treesitter'.setup { - -- Directory to install parsers and queries to +require('nvim-treesitter').setup { + -- Directory to install parsers and queries to (prepended to `runtimepath` to have priority) install_dir = vim.fn.stdpath('data') .. '/site' } ``` @@ -63,7 +58,7 @@ require'nvim-treesitter'.setup { Parsers and queries can then be installed with ```lua -require'nvim-treesitter'.install { 'rust', 'javascript', 'zig' } +require('nvim-treesitter').install { 'rust', 'javascript', 'zig' } ``` (This is a no-op if the parsers are already installed.) Note that this function runs asynchronously; for synchronous installation in a script context ("bootstrapping"), you need to `wait()` for it to finish: @@ -100,7 +95,8 @@ vim.api.nvim_create_autocmd('FileType', { Treesitter-based folding is provided by Neovim. To enable it, put the following in your `ftplugin` or `FileType` autocommand: ```lua -vim.wo.foldexpr = 'v:lua.vim.treesitter.foldexpr()' +vim.wo[0][0].foldexpr = 'v:lua.vim.treesitter.foldexpr()' +vim.wo[0][0].foldmethod = 'expr' ``` ## Indentation @@ -140,7 +136,7 @@ callback = function() branch = 'develop', -- only needed if different from default branch location = 'parser', -- only needed if the parser is in subdirectory of a "monorepo" generate = true, -- only needed if repo does not contain pre-generated `src/parser.c` - generate_from_json = false, -- only needed if repo does not contain `src/grammar.json` either -- WARNING: requires `node` for tree-sitter-cli <0.26.0! + generate_from_json = false, -- only needed if repo does not contain `src/grammar.json` either queries = 'queries/neovim', -- also install queries from given directory }, } @@ -172,7 +168,7 @@ If Neovim does not detect your language's filetype by default, you can use [Neov 3. Start `nvim` and `:TSInstall zimbu`. >[!IMPORTANT] -> Parsers using external scanner need to be written in C. +> If the parser requires an external scanner, this must be written in C. ### Modifying parsers diff --git a/SUPPORTED_LANGUAGES.md b/SUPPORTED_LANGUAGES.md index 17644448a..978a4b8ed 100644 --- a/SUPPORTED_LANGUAGES.md +++ b/SUPPORTED_LANGUAGES.md @@ -4,8 +4,7 @@ The following is a list of languages for which a parser can be installed through Legend: - **Tier:** _stable_ (updates follow semver releases), _unstable_ (updates follow HEAD), _unmaintained_ (no automatic updates), or _unsupported_ (known to be broken, cannot be installed) -- **Queries** available for **H**ighlights, **I**ndents, **F**olds, In**J**ections, **L**ocals -- **Node:** Parser requires `node` for installation +- **Queries** available for **H**ighlights, **F**olds, **I**ndents, In**J**ections, **L**ocals - **Maintainer** of queries in nvim-treesitter (may be different from parser maintainer!) @@ -21,20 +20,20 @@ Language | Tier | Queries | Maintainer [astro](https://github.com/virchau13/tree-sitter-astro) | unstable | `HFIJL` | @virchau13 [authzed](https://github.com/mleonidas/tree-sitter-authzed) | unstable | `H  J ` | @mattpolzin [awk](https://github.com/Beaglefoot/tree-sitter-awk) | unstable | `H  J ` | -[bash](https://github.com/tree-sitter/tree-sitter-bash) | unstable | `HF JL` | @TravonteD +[bash](https://github.com/tree-sitter/tree-sitter-bash) | unstable | `HFIJL` | @TravonteD [bass](https://github.com/vito/tree-sitter-bass) | unstable | `HFIJL` | @amaanq [beancount](https://github.com/polarmutex/tree-sitter-beancount) | unstable | `HF J ` | @polarmutex [bibtex](https://github.com/latex-lsp/tree-sitter-bibtex) | unstable | `HFIJ ` | @theHamsta, @clason [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 +[bpftrace](https://github.com/sgruszka/tree-sitter-bpftrace) | unstable | `H  J ` | @sgruszka [brightscript](https://github.com/ajdelcimmuto/tree-sitter-brightscript) | unstable | `HFIJ ` | @ajdelcimmuto [c](https://github.com/tree-sitter/tree-sitter-c) | unstable | `HFIJL` | @amaanq [c3](https://github.com/c3lang/tree-sitter-c3) | unstable | `HFIJ ` | @cbuttner [c_sharp](https://github.com/tree-sitter/tree-sitter-c-sharp) | unstable | `HF JL` | @amaanq -[caddy](https://github.com/opa-oz/tree-sitter-caddy) | unmaintained | `HFIJ ` | @opa-oz +[caddy](https://github.com/opa-oz/tree-sitter-caddy) | unmaintained | `HFIJ ` | [cairo](https://github.com/tree-sitter-grammars/tree-sitter-cairo) | unstable | `HFIJL` | @amaanq [capnp](https://github.com/tree-sitter-grammars/tree-sitter-capnp) | unstable | `HFIJL` | @amaanq [chatito](https://github.com/tree-sitter-grammars/tree-sitter-chatito) | unstable | `HFIJL` | @ObserverOfTime @@ -54,7 +53,7 @@ Language | Tier | Queries | Maintainer [cylc](https://github.com/elliotfontaine/tree-sitter-cylc) | unstable | `HFIJ ` | @elliotfontaine [d](https://github.com/gdamore/tree-sitter-d) | unstable | `HFIJL` | @amaanq [dart](https://github.com/UserNobody14/tree-sitter-dart) | unstable | `HFIJL` | @akinsho -[desktop](https://github.com/ValdezFOmar/tree-sitter-desktop) | unstable | `HF J ` | @ValdezFOmar +[desktop](https://github.com/ValdezFOmar/tree-sitter-desktop) | stable | `HF J ` | @ValdezFOmar [devicetree](https://github.com/joelspadin/tree-sitter-devicetree) | unstable | `HFIJL` | @jedrzejboczar [dhall](https://github.com/jbellerb/tree-sitter-dhall) | unstable | `HF J ` | @amaanq [diff](https://github.com/tree-sitter-grammars/tree-sitter-diff) | unstable | `HF J ` | @gbprod @@ -67,7 +66,7 @@ Language | Tier | Queries | Maintainer [earthfile](https://github.com/glehmann/tree-sitter-earthfile) | unstable | `H  J ` | @glehmann [ebnf](https://github.com/RubixDev/ebnf) | unstable | `H  J ` | @RubixDev ecma (queries only)[^ecma] | unstable | `HFIJL` | @steelsojka -[editorconfig](https://github.com/ValdezFOmar/tree-sitter-editorconfig) | unstable | `HF J ` | @ValdezFOmar +[editorconfig](https://github.com/ValdezFOmar/tree-sitter-editorconfig) | stable | `HF J ` | @ValdezFOmar [eds](https://github.com/uyha/tree-sitter-eds) | unstable | `HF   ` | @uyha [eex](https://github.com/connorlay/tree-sitter-eex) | unstable | `H  J ` | @connorlay [elixir](https://github.com/elixir-lang/tree-sitter-elixir) | unstable | `HFIJL` | @connorlay @@ -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` | @@ -140,7 +138,7 @@ html_tags (queries only)[^html_tags] | unstable | `H IJ ` | @TravonteD [idl](https://github.com/cathaysia/tree-sitter-idl) | unstable | `H IJ ` | @cathaysia [idris](https://github.com/kayhide/tree-sitter-idris) | unstable | `HF JL` | [ini](https://github.com/justinmk/tree-sitter-ini) | unstable | `HF J ` | @theHamsta -[inko](https://github.com/inko-lang/tree-sitter-inko) | unstable | `HFIJL` | @yorickpeterse +[inko](https://github.com/inko-lang/tree-sitter-inko) | stable | `HFIJL` | @yorickpeterse [ispc](https://github.com/tree-sitter-grammars/tree-sitter-ispc) | unstable | `HFIJL` | @fab4100 [janet_simple](https://github.com/sogaiu/tree-sitter-janet-simple) | unstable | `HF JL` | @sogaiu [java](https://github.com/tree-sitter/tree-sitter-java) | unstable | `HFIJL` | @p00f @@ -150,9 +148,8 @@ html_tags (queries only)[^html_tags] | unstable | `H IJ ` | @TravonteD [jinja_inline](https://github.com/cathaysia/tree-sitter-jinja)[^jinja_inline] | unstable | `H  J ` | @cathaysia [jq](https://github.com/flurie/tree-sitter-jq) | unstable | `H  JL` | @ObserverOfTime [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 +[json](https://github.com/tree-sitter/tree-sitter-json) | unstable | `HFIJL` | @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 @@ -161,7 +158,8 @@ jsx (queries only)[^jsx] | unstable | `HFIJ ` | @steelsojka [kconfig](https://github.com/tree-sitter-grammars/tree-sitter-kconfig) | unstable | `HFIJL` | @amaanq [kdl](https://github.com/tree-sitter-grammars/tree-sitter-kdl) | unstable | `HFIJL` | @amaanq [kitty](https://github.com/OXY2DEV/tree-sitter-kitty) | unstable | `H  J ` | @OXY2DEV -[kotlin](https://github.com/fwcd/tree-sitter-kotlin) | unstable | `HF JL` | @SalBakraa +[kos](https://github.com/kos-lang/tree-sitter-kos) | unstable | `HF JL` | @cdragan +[kotlin](https://github.com/fwcd/tree-sitter-kotlin) | unstable | `HF JL` | [koto](https://github.com/koto-lang/tree-sitter-koto) | unstable | `HF JL` | @irh [kusto](https://github.com/Willem-J-an/tree-sitter-kusto) | unstable | `H  J ` | @Willem-J-an [lalrpop](https://github.com/traxys/tree-sitter-lalrpop) | unstable | `HF JL` | @traxys @@ -177,7 +175,7 @@ jsx (queries only)[^jsx] | unstable | `HFIJ ` | @steelsojka [luap](https://github.com/tree-sitter-grammars/tree-sitter-luap)[^luap] | unstable | `H    ` | @amaanq [luau](https://github.com/tree-sitter-grammars/tree-sitter-luau) | unstable | `HFIJL` | @amaanq [m68k](https://github.com/grahambates/tree-sitter-m68k) | unstable | `HF JL` | @grahambates -[make](https://github.com/alemuller/tree-sitter-make) | unstable | `HF J ` | @lewis6991 +[make](https://github.com/tree-sitter-grammars/tree-sitter-make) | unstable | `HF J ` | @lewis6991 [markdown](https://github.com/tree-sitter-grammars/tree-sitter-markdown)[^markdown] | unstable | `HFIJ ` | @MDeiml [markdown_inline](https://github.com/tree-sitter-grammars/tree-sitter-markdown)[^markdown_inline] | unstable | `H  J ` | @MDeiml [matlab](https://github.com/acristoffers/tree-sitter-matlab) | unstable | `HFIJL` | @acristoffers @@ -192,7 +190,7 @@ jsx (queries only)[^jsx] | unstable | `HFIJ ` | @steelsojka [nim](https://github.com/alaviss/tree-sitter-nim) | unstable | `HF JL` | @aMOPel [nim_format_string](https://github.com/aMOPel/tree-sitter-nim-format-string) | unstable | `H  J ` | @aMOPel [ninja](https://github.com/alemuller/tree-sitter-ninja) | unstable | `HFIJ ` | @alemuller -[nix](https://github.com/nix-community/tree-sitter-nix) | unstable | `HFIJL` | @leo60228, @zimbatm +[nix](https://github.com/nix-community/tree-sitter-nix) | unstable | `HFIJL` | @leo60228, @mrcjkb, @zimbatm [nqc](https://github.com/tree-sitter-grammars/tree-sitter-nqc) | unstable | `HFIJL` | @amaanq [nu](https://github.com/nushell/tree-sitter-nu) | unstable | `HFIJ ` | @abhisheksingh0x558 [objc](https://github.com/tree-sitter-grammars/tree-sitter-objc) | unstable | `HFIJL` | @amaanq @@ -221,7 +219,7 @@ jsx (queries only)[^jsx] | unstable | `HFIJ ` | @steelsojka [prolog](https://github.com/foxyseta/tree-sitter-prolog) | unstable | `HFIJ ` | @foxyseta [promql](https://github.com/MichaHoffmann/tree-sitter-promql) | unstable | `H  J ` | @MichaHoffmann [properties](https://github.com/tree-sitter-grammars/tree-sitter-properties)[^properties] | unstable | `H  JL` | @ObserverOfTime -[proto](https://github.com/treywood/tree-sitter-proto) | unstable | `HFIJ ` | @treywood +[proto](https://github.com/coder3101/tree-sitter-proto) | unstable | `HFIJ ` | @stefanvanburen [prql](https://github.com/PRQL/tree-sitter-prql) | unstable | `H  J ` | @matthias-Q [psv](https://github.com/tree-sitter-grammars/tree-sitter-csv) | unstable | `H    ` | @amaanq [pug](https://github.com/zealot128/tree-sitter-pug) | unstable | `H  J ` | @zealot128 @@ -247,9 +245,9 @@ jsx (queries only)[^jsx] | unstable | `HFIJ ` | @steelsojka [rescript](https://github.com/rescript-lang/tree-sitter-rescript) | unstable | `HFIJL` | @ribru17 [rifleconf](https://github.com/purarue/tree-sitter-rifleconf) | unstable | `H  J ` | @purarue [rnoweb](https://github.com/bamonroe/tree-sitter-rnoweb) | unstable | `HF J ` | @bamonroe -[robot](https://github.com/Hubro/tree-sitter-robot) | unstable | `HFIJ ` | @Hubro -[robots](https://github.com/opa-oz/tree-sitter-robots-txt) | unstable | `H  J ` | @opa-oz -[roc](https://github.com/faldor20/tree-sitter-roc) | unstable | `H IJL` | @nat-418 +[robot](https://github.com/Hubro/tree-sitter-robot) | unmaintained | `HFIJ ` | +[robots_txt](https://github.com/opa-oz/tree-sitter-robots-txt) | unstable | `H  J ` | @opa-oz +[roc](https://github.com/faldor20/tree-sitter-roc) | unmaintained | `H IJL` | [ron](https://github.com/tree-sitter-grammars/tree-sitter-ron) | unstable | `HFIJL` | @amaanq [rst](https://github.com/stsewd/tree-sitter-rst) | unstable | `H  JL` | @stsewd [ruby](https://github.com/tree-sitter/tree-sitter-ruby) | unstable | `HFIJL` | @TravonteD @@ -279,7 +277,7 @@ jsx (queries only)[^jsx] | unstable | `HFIJ ` | @steelsojka [starlark](https://github.com/tree-sitter-grammars/tree-sitter-starlark) | unstable | `HFIJL` | @amaanq [strace](https://github.com/sigmaSd/tree-sitter-strace) | unstable | `H  J ` | @amaanq [styled](https://github.com/mskelton/tree-sitter-styled) | unstable | `HFIJ ` | @mskelton -[supercollider](https://github.com/madskjeldgaard/tree-sitter-supercollider) | unstable | `HFIJL` | @madskjeldgaard +[supercollider](https://github.com/madskjeldgaard/tree-sitter-supercollider) | unstable | `HFIJL` | @madskjeldgaard, @elgiano [superhtml](https://github.com/kristoff-it/superhtml) | unstable | `H  J ` | @rockorager [surface](https://github.com/connorlay/tree-sitter-surface) | unstable | `HFIJ ` | @connorlay [svelte](https://github.com/tree-sitter-grammars/tree-sitter-svelte) | unstable | `HFIJL` | @amaanq @@ -318,7 +316,7 @@ jsx (queries only)[^jsx] | unstable | `HFIJ ` | @steelsojka [uxntal](https://github.com/tree-sitter-grammars/tree-sitter-uxntal) | unstable | `HFIJL` | @amaanq [v](https://github.com/vlang/v-analyzer) | unstable | `HFIJL` | @kkharji, @amaanq [vala](https://github.com/vala-lang/tree-sitter-vala) | unstable | `HF J ` | @Prince781 -[vento](https://github.com/ventojs/tree-sitter-vento) | unstable | `H  J ` | @wrapperup, @oscarotero +[vento](https://github.com/ventojs/tree-sitter-vento) | unmaintained | `H  J ` | [vhdl](https://github.com/jpt13653903/tree-sitter-vhdl) | unstable | `HF J ` | @jpt13653903 [vhs](https://github.com/charmbracelet/tree-sitter-vhs) | unstable | `H  J ` | @caarlos0 [vim](https://github.com/tree-sitter-grammars/tree-sitter-vim) | unstable | `HF JL` | @clason @@ -332,7 +330,7 @@ jsx (queries only)[^jsx] | unstable | `HFIJ ` | @steelsojka [wxml](https://github.com/BlockLune/tree-sitter-wxml) | unstable | `HFIJ ` | @BlockLune [xcompose](https://github.com/tree-sitter-grammars/tree-sitter-xcompose) | unstable | `H  JL` | @ObserverOfTime [xml](https://github.com/tree-sitter-grammars/tree-sitter-xml) | unstable | `HFIJL` | @ObserverOfTime -[xresources](https://github.com/ValdezFOmar/tree-sitter-xresources) | unstable | `HF JL` | @ValdezFOmar +[xresources](https://github.com/ValdezFOmar/tree-sitter-xresources) | stable | `HF JL` | @ValdezFOmar [yaml](https://github.com/tree-sitter-grammars/tree-sitter-yaml) | unstable | `HFIJL` | @amaanq [yang](https://github.com/Hubro/tree-sitter-yang) | unstable | `HFIJ ` | @Hubro [yuck](https://github.com/tree-sitter-grammars/tree-sitter-yuck) | unstable | `HFIJL` | @Philipp-M, @amaanq @@ -340,7 +338,7 @@ jsx (queries only)[^jsx] | unstable | `HFIJ ` | @steelsojka [zig](https://github.com/tree-sitter-grammars/tree-sitter-zig) | unstable | `HFIJL` | @amaanq [ziggy](https://github.com/kristoff-it/ziggy) | unmaintained | `H I  ` | [ziggy_schema](https://github.com/kristoff-it/ziggy) | unmaintained | `H I  ` | -[zsh](https://github.com/georgeharker/tree-sitter-zsh) | stable | `HF JL` | @georgeharker +[zsh](https://github.com/georgeharker/tree-sitter-zsh) | unstable | `HF JL` | @georgeharker [^bp]: Android Blueprint [^ecma]: queries required by javascript, typescript, tsx, qmljs [^gap]: GAP system diff --git a/doc/nvim-treesitter.txt b/doc/nvim-treesitter.txt index 3bb3f9356..e6a67f398 100644 --- a/doc/nvim-treesitter.txt +++ b/doc/nvim-treesitter.txt @@ -45,6 +45,7 @@ Treesitter features for installed languages need to be enabled manually in a vim.treesitter.start() -- folds, provided by Neovim vim.wo.foldexpr = 'v:lua.vim.treesitter.foldexpr()' + vim.wo.foldmethod = 'expr' -- indentation, provided by nvim-treesitter vim.bo.indentexpr = "v:lua.require'nvim-treesitter'.indentexpr()" end, 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/config.lua b/lua/nvim-treesitter/config.lua index 8150ad8a8..97fca649f 100644 --- a/lua/nvim-treesitter/config.lua +++ b/lua/nvim-treesitter/config.lua @@ -7,7 +7,7 @@ M.tiers = { 'stable', 'unstable', 'unmaintained', 'unsupported' } ---@type TSConfig local config = { - install_dir = vim.fs.joinpath(vim.fn.stdpath('data'), 'site'), + install_dir = vim.fs.joinpath(vim.fn.stdpath('data') --[[@as string]], 'site'), } ---Setup call for users to override configuration configurations. @@ -16,7 +16,7 @@ function M.setup(user_data) if user_data then if user_data.install_dir then user_data.install_dir = vim.fs.normalize(user_data.install_dir) - vim.opt.runtimepath:prepend(user_data.install_dir) + vim.o.rtp = user_data.install_dir .. ',' .. vim.o.rtp end config = vim.tbl_deep_extend('force', config, user_data) end @@ -140,8 +140,12 @@ function M.norm_languages(languages, skip) languages = vim.tbl_filter( --- @param v string function(v) - -- TODO(lewis6991): warn of any unknown parsers? - return parsers[v] ~= nil + if parsers[v] ~= nil then + return true + else + require('nvim-treesitter.log').warn('skipping unsupported language: ' .. v) + return false + end end, languages ) diff --git a/lua/nvim-treesitter/health.lua b/lua/nvim-treesitter/health.lua index 08ec42bb7..2fcaea5a0 100644 --- a/lua/nvim-treesitter/health.lua +++ b/lua/nvim-treesitter/health.lua @@ -7,7 +7,7 @@ local health = vim.health local M = {} local NVIM_TREESITTER_MINIMUM_ABI = 13 -local TREE_SITTER_MIN_VER = { 0, 25, 0 } +local TREE_SITTER_MIN_VER = { 0, 26, 1 } ---@param name string ---@return table? @@ -95,11 +95,7 @@ local function install_health() else health.error('is not writable.') end - if - vim.iter(vim.api.nvim_list_runtime_paths()):any(function(p) - return installdir == vim.fs.normalize(p) .. '/' - end) - then + if vim.list_contains(vim.api.nvim_list_runtime_paths(), installdir) then health.ok('is in runtimepath.') else health.error('is not in runtimepath.') @@ -148,7 +144,7 @@ function M.check() end health.info(vim.fn.trim(out, ' ', 2)) end - health.start(' Legend: H[ighlights], L[ocals], F[olds], I[ndents], In[J]ections') + health.start(' Legend: [H]ighlights, [L]ocals, [F]olds, [I]ndents, In[J]ections') if #error_collection > 0 then health.start('The following errors have been detected in query files:') diff --git a/lua/nvim-treesitter/install.lua b/lua/nvim-treesitter/install.lua index 94d21d46a..2c564b9ab 100644 --- a/lua/nvim-treesitter/install.lua +++ b/lua/nvim-treesitter/install.lua @@ -97,7 +97,31 @@ end local function system(cmd, opts) local cwd = opts and opts.cwd or uv.cwd() log.trace('running job: (cwd=%s) %s', cwd, table.concat(cmd, ' ')) - local r = a.await(3, vim.system, cmd, opts) --[[@as vim.SystemCompleted]] + + ---vim.system throws an error when uv.spawn fails, in particular if cmd or cwd + ---does not exist. This kills the coroutine, so the async'ed call simply hangs. + ---Instead, we pass a wrapper that catches errors and propagates them as a proper + ---`SystemObj`. + ---TODO(clason): remove when https://github.com/neovim/neovim/issues/38257 is resolved. + ---@param _cmd string[] + ---@param _opts vim.SystemOpts + ---@param on_exit fun(result: vim.SystemCompleted) + ---@return vim.SystemObj? + local function system_wrap(_cmd, _opts, on_exit) + local ok, ret = pcall(vim.system, _cmd, _opts, on_exit) + if not ok then + on_exit({ + code = 125, + signal = 0, + stdout = '', + stderr = ret --[[@as string]], + }) + return nil + end + return ret --[[@as vim.SystemObj]] + end + + local r = a.await(3, system_wrap, cmd, opts) --[[@as vim.SystemCompleted]] a.schedule() if r.stdout and r.stdout ~= '' then log.trace('stdout -> %s', r.stdout) @@ -197,17 +221,13 @@ end ---@param output_dir string ---@return string? err local function do_download(logger, url, project_name, cache_dir, revision, output_dir) - local is_gitlab = url:find('gitlab.com', 1, true) - local tmp = output_dir .. '-tmp' rmpath(tmp) a.schedule() url = url:gsub('.git$', '') - local target = is_gitlab - and string.format('%s/-/archive/%s/%s-%s.tar.gz', url, revision, project_name, revision) - or string.format('%s/archive/%s.tar.gz', url, revision) + local target = string.format('%s/archive/%s.tar.gz', url, revision) local tarball_path = fs.joinpath(cache_dir, project_name .. '.tar.gz') @@ -218,6 +238,8 @@ local function do_download(logger, url, project_name, cache_dir, revision, outpu '--silent', '--fail', '--show-error', + '--retry', + '7', '-L', -- follow redirects target, '--output', @@ -304,6 +326,8 @@ local function do_install(logger, compile_location, target_location) local tempfile = target_location .. tostring(uv.hrtime()) uv_rename(target_location, tempfile) -- parser may be in use: rename... uv_unlink(tempfile) -- ...and mark for garbage collection + else + uv_unlink(target_location) -- don't disturb existing memory-mapped content end local err = uv_copyfile(compile_location, target_location) @@ -487,7 +511,7 @@ end local function install(languages, options) options = options or {} - local cache_dir = fs.normalize(fn.stdpath('cache')) + local cache_dir = fs.normalize(fn.stdpath('cache') --[[@as string]]) if not uv.fs_stat(cache_dir) then fn.mkdir(cache_dir, 'p') end diff --git a/lua/nvim-treesitter/parsers.lua b/lua/nvim-treesitter/parsers.lua index 49d2a3bed..d894046cc 100644 --- a/lua/nvim-treesitter/parsers.lua +++ b/lua/nvim-treesitter/parsers.lua @@ -2,7 +2,7 @@ return { ada = { install_info = { - revision = '6c26c4413965dc7bacbccfa66503bf6b8228e254', + revision = '6b58259a08b1a22ba0247a7ce30be384db618da6', url = 'https://github.com/briot/tree-sitter-ada', }, maintainers = { '@briot' }, @@ -18,7 +18,7 @@ return { }, angular = { install_info = { - revision = '56fffa8c9ea7389cb2237f4a01c4a2058ac64416', + revision = 'f0d0685701b70883fa2dfe94ee7dc27965cab841', url = 'https://github.com/dlvandenberg/tree-sitter-angular', }, maintainers = { '@dlvandenberg' }, @@ -77,7 +77,7 @@ return { }, bash = { install_info = { - revision = '20f55fb9663568f16ebceaac7673d2aa530add46', + revision = 'a06c2e4415e9bc0346c6b86d401879ffb44058f7', url = 'https://github.com/tree-sitter/tree-sitter-bash', }, maintainers = { '@TravonteD' }, @@ -93,7 +93,7 @@ return { }, beancount = { install_info = { - revision = 'b7a2557e6c8cf1dc70a52cece1861522ad3903fc', + revision = 'd7a03a7506fbbbc4b16a9a2054ff7c2b337744b8', url = 'https://github.com/polarmutex/tree-sitter-beancount', }, maintainers = { '@polarmutex' }, @@ -125,20 +125,12 @@ return { }, blade = { install_info = { - revision = 'cc764dadcbbceb3f259396fef66f970c72e94f96', + revision = 'b9436b7b936907aff730de0dac1b99d7c632cc86', url = 'https://github.com/EmranMR/tree-sitter-blade', }, 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', @@ -148,9 +140,17 @@ return { readme_note = 'Android Blueprint', tier = 2, }, + bpftrace = { + install_info = { + revision = '774f4458ad39691336ead1ee361b22434c4cdec7', + url = 'https://github.com/sgruszka/tree-sitter-bpftrace', + }, + maintainers = { '@sgruszka' }, + tier = 2, + }, brightscript = { install_info = { - revision = '55168264ea174085d2e91377a33f216190df2f51', + revision = '253fdfaa23814cb46c2d5fc19049fa0f2f62c6da', url = 'https://github.com/ajdelcimmuto/tree-sitter-brightscript', }, maintainers = { '@ajdelcimmuto' }, @@ -166,7 +166,7 @@ return { }, c3 = { install_info = { - revision = '2e852d524cdab2e857ac7fb3ad814b39ae858916', + revision = '24dc1da56e412a59c9d3ee4ffaf55dac58cc1dd4', url = 'https://github.com/c3lang/tree-sitter-c3', }, maintainers = { '@cbuttner' }, @@ -174,7 +174,7 @@ return { }, c_sharp = { install_info = { - revision = '485f0bae0274ac9114797fc10db6f7034e4086e3', + revision = '88366631d598ce6595ec655ce1591b315cffb14c', url = 'https://github.com/tree-sitter/tree-sitter-c-sharp', }, maintainers = { '@amaanq' }, @@ -185,7 +185,6 @@ return { revision = '2686186edb61be47960431c93a204fb249681360', url = 'https://github.com/opa-oz/tree-sitter-caddy', }, - maintainers = { '@opa-oz' }, tier = 3, }, cairo = { @@ -238,7 +237,7 @@ return { }, comment = { install_info = { - revision = 'db922d7809637900089709e07e31b88c42354ec2', + revision = '66272d2b6c73fb61157541b69dd0a7ce7b42a5ad', url = 'https://github.com/stsewd/tree-sitter-comment', }, maintainers = { '@stsewd' }, @@ -278,7 +277,7 @@ return { }, cpp = { install_info = { - revision = '12bd6f7e96080d2e70ec51d4068f2f66120dde35', + revision = '8b5b49eb196bec7040441bee33b2c9a4838d6967', url = 'https://github.com/tree-sitter/tree-sitter-cpp', }, maintainers = { '@theHamsta' }, @@ -314,7 +313,7 @@ return { }, cue = { install_info = { - revision = '770737bcff2c4aa3f624d439e32b07dbb07102d3', + revision = 'be0f609c73cc2929811a9bce0ed90ca71ea87604', url = 'https://github.com/eonpatapon/tree-sitter-cue', }, maintainers = { '@amaanq' }, @@ -338,7 +337,7 @@ return { }, dart = { install_info = { - revision = 'd4d8f3e337d8be23be27ffc35a0aef972343cd54', + revision = '81638dbbdb76a0e88ea8c31b95ec76b9625ddb84', url = 'https://github.com/UserNobody14/tree-sitter-dart', }, maintainers = { '@akinsho' }, @@ -346,11 +345,11 @@ return { }, desktop = { install_info = { - revision = '2d93b616b0c247121dab59590b3182af1a9ecb3b', + revision = 'v1.1.1', url = 'https://github.com/ValdezFOmar/tree-sitter-desktop', }, maintainers = { '@ValdezFOmar' }, - tier = 2, + tier = 1, }, devicetree = { install_info = { @@ -419,7 +418,7 @@ return { dtd = { install_info = { location = 'dtd', - revision = '863dbc381f44f6c136a399e684383b977bb2beaa', + revision = '5000ae8f22d11fbe93939b05c1e37cf21117162d', url = 'https://github.com/tree-sitter-grammars/tree-sitter-xml', }, maintainers = { '@ObserverOfTime' }, @@ -449,11 +448,11 @@ return { }, editorconfig = { install_info = { - revision = 'f08fb1f53130d2c765e45181eae26535e1a7a7f1', + revision = 'v2.0.0', url = 'https://github.com/ValdezFOmar/tree-sitter-editorconfig', }, maintainers = { '@ValdezFOmar' }, - tier = 2, + tier = 1, }, eds = { install_info = { @@ -473,7 +472,7 @@ return { }, elixir = { install_info = { - revision = 'd24cecee673c4c770f797bac6f87ae4b6d7ddec5', + revision = '7937d3b4d65fa574163cfa59394515d3c1cf16f4', url = 'https://github.com/elixir-lang/tree-sitter-elixir', }, maintainers = { '@connorlay' }, @@ -481,7 +480,7 @@ return { }, elm = { install_info = { - revision = '027728466b8115cf807517af943cbeaed34053fc', + revision = '6d9511c28181db66daee4e883f811f6251220943', url = 'https://github.com/elm-tooling/tree-sitter-elm', }, maintainers = { '@zweimach' }, @@ -520,7 +519,7 @@ return { }, erlang = { install_info = { - revision = 'a260cb65eaa6e055289a34434f98c3aae6137ed5', + revision = '1d78195c4fbb1fc027eb3e4220427f1eb8bfc89e', url = 'https://github.com/WhatsApp/tree-sitter-erlang', }, maintainers = { '@filmor' }, @@ -544,7 +543,7 @@ return { }, fennel = { install_info = { - revision = 'fd4a24e349bcbac8a03a5a00d0dfa207baf53ca5', + revision = '3f0f6b24d599e92460b969aabc4f4c5a914d15a0', url = 'https://github.com/alexmozaidze/tree-sitter-fennel', }, maintainers = { '@alexmozaidze' }, @@ -568,7 +567,7 @@ return { }, fish = { install_info = { - revision = 'aa074a0bacde8b5823c592574d7138f156a95776', + revision = 'fa2143f5d66a9eb6c007ba9173525ea7aaafe788', url = 'https://github.com/ram02z/tree-sitter-fish', }, maintainers = { '@ram02z' }, @@ -584,7 +583,7 @@ return { }, forth = { install_info = { - revision = '90189238385cf636b9ee99ce548b9e5b5e569d48', + revision = '360ef13f8c609ec6d2e80782af69958b84e36cd0', url = 'https://github.com/AlexanderBrevig/tree-sitter-forth', }, maintainers = { '@amaanq' }, @@ -592,7 +591,7 @@ return { }, fortran = { install_info = { - revision = '8334abca785db3a041292e3b3b818a82a55b238f', + revision = '2880b7aab4fb7cc618de1ef3d4c6d93b2396c031', url = 'https://github.com/stadelmanma/tree-sitter-fortran', }, maintainers = { '@amaanq' }, @@ -609,7 +608,7 @@ return { fsharp = { install_info = { location = 'fsharp', - revision = '5141851c278a99958469eb1736c7afc4ec738e47', + revision = '2b3c4fae185d5185b5fa1a3d3117cad35f669352', url = 'https://github.com/ionide/tree-sitter-fsharp', }, maintainers = { '@nsidorenco' }, @@ -623,17 +622,9 @@ 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', + revision = 'ed2480d42281586932920527823b307bc45052b8', url = 'https://github.com/gap-system/tree-sitter-gap', }, maintainers = { '@reiniscirpons' }, @@ -692,7 +683,7 @@ return { }, gitcommit = { install_info = { - revision = 'a716678c0f00645fed1e6f1d0eb221481dbd6f6d', + revision = '33fe8548abcc6e374feaac5724b5a2364bf23090', url = 'https://github.com/gbprod/tree-sitter-gitcommit', }, maintainers = { '@gbprod' }, @@ -708,7 +699,7 @@ return { }, gleam = { install_info = { - revision = 'f4d55f3c5b690d4afe8853da892bc290d96deb34', + revision = '6ea757f7eb8d391dbf24dbb9461990757946dd5e', url = 'https://github.com/gleam-lang/tree-sitter-gleam', }, maintainers = { '@amaanq' }, @@ -716,7 +707,7 @@ return { }, glimmer = { install_info = { - revision = 'da605af8c5999b43e6839b575eae5e6cafabb06f', + revision = '88af85568bde3b91acb5d4c352ed094d0c1f9d84', url = 'https://github.com/ember-tooling/tree-sitter-glimmer', }, maintainers = { '@NullVoxPopuli' }, @@ -810,7 +801,7 @@ return { }, gotmpl = { install_info = { - revision = '9e54fa38db26c556c2669492063324ef481c9d43', + revision = '04270cd3512e2c7de0c5f2823725d7b0c4c01fda', url = 'https://github.com/ngalaiko/tree-sitter-go-template', }, maintainers = { '@qvalentin' }, @@ -850,7 +841,7 @@ return { }, groovy = { install_info = { - revision = '86911590a8e46d71301c66468e5620d9faa5b6af', + revision = '781d9cd1b482a70a6b27091e5c9e14bbcab3b768', url = 'https://github.com/murtaza64/tree-sitter-groovy', }, maintainers = { '@murtaza64' }, @@ -905,7 +896,7 @@ return { }, hcl = { install_info = { - revision = 'fad991865fee927dd1de5e172fb3f08ac674d914', + revision = '64ad62785d442eb4d45df3a1764962dafd5bc98b', url = 'https://github.com/tree-sitter-grammars/tree-sitter-hcl', }, maintainers = { '@MichaHoffmann' }, @@ -922,7 +913,7 @@ return { helm = { install_info = { location = 'dialects/helm', - revision = '9e54fa38db26c556c2669492063324ef481c9d43', + revision = '04270cd3512e2c7de0c5f2823725d7b0c4c01fda', url = 'https://github.com/ngalaiko/tree-sitter-go-template', }, maintainers = { '@qvalentin' }, @@ -1010,7 +1001,7 @@ return { }, hyprlang = { install_info = { - revision = '22723f25f3faf329863d952c9601b492afd971c9', + revision = 'cecd6b748107d9da1f7b4ca03ef95f1f71d93b8f', url = 'https://github.com/tree-sitter-grammars/tree-sitter-hyprlang', }, maintainers = { '@luckasRanarison' }, @@ -1018,7 +1009,7 @@ return { }, idl = { install_info = { - revision = '0c9aa1588cec4c64235ec3ed014ca72aa79e72ca', + revision = 'e07d32972b41cc4c02cfd49f9df2abaa3ae54303', url = 'https://github.com/cathaysia/tree-sitter-idl', }, maintainers = { '@cathaysia' }, @@ -1033,7 +1024,7 @@ return { }, ini = { install_info = { - revision = 'bea223734aa9cea2c8793bf9098bd7fdef912f57', + revision = 'e4018b5176132b4f3c5d6e61cea383f42288d0f5', url = 'https://github.com/justinmk/tree-sitter-ini', }, maintainers = { '@theHamsta' }, @@ -1041,11 +1032,11 @@ return { }, inko = { install_info = { - revision = '9d7ed4f6c0ea2a8f846f3bb00e33ab21ec9ca379', + revision = 'v0.5.1', url = 'https://github.com/inko-lang/tree-sitter-inko', }, maintainers = { '@yorickpeterse' }, - tier = 2, + tier = 1, }, ispc = { install_info = { @@ -1058,7 +1049,7 @@ return { }, janet_simple = { install_info = { - revision = '7e28cbf1ca061887ea43591a2898001f4245fddf', + revision = 'd183186995204314700be3e9e0a48053ea16b350', url = 'https://github.com/sogaiu/tree-sitter-janet-simple', }, maintainers = { '@sogaiu' }, @@ -1074,7 +1065,7 @@ return { }, javadoc = { install_info = { - revision = '2533affe83e57df9b0dbf7350cd73a84af9811b3', + revision = '42c9bc340c90ec15ed96eb4314269e8249376be9', url = 'https://github.com/rmuir/tree-sitter-javadoc', }, maintainers = { '@rmuir' }, @@ -1092,7 +1083,7 @@ return { jinja = { install_info = { location = 'tree-sitter-jinja', - revision = 'e589222a1ad44361bc376d5abdccd08e1fecfee5', + revision = '7bd0422c6a57aaabfee8603502d7708d0a536f5f', url = 'https://github.com/cathaysia/tree-sitter-jinja', }, maintainers = { '@cathaysia' }, @@ -1103,7 +1094,7 @@ return { jinja_inline = { install_info = { location = 'tree-sitter-jinja_inline', - revision = 'e589222a1ad44361bc376d5abdccd08e1fecfee5', + revision = '7bd0422c6a57aaabfee8603502d7708d0a536f5f', url = 'https://github.com/cathaysia/tree-sitter-jinja', }, maintainers = { '@cathaysia' }, @@ -1142,15 +1133,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', @@ -1166,7 +1148,7 @@ return { }, julia = { install_info = { - revision = '5a5d3082e13edd5afc4c274498d6125ecc914870', + revision = '8454f266717232525ed03c7b09164b0404a03150', url = 'https://github.com/tree-sitter-grammars/tree-sitter-julia', }, maintainers = { '@clason' }, @@ -1174,7 +1156,7 @@ return { }, just = { install_info = { - revision = 'bb0c898a80644de438e6efe5d88d30bf092935cd', + revision = '60df3d5b3fda2a22fdb3621226cafab50b763663', url = 'https://github.com/IndianBoy42/tree-sitter-just', }, maintainers = { '@Hubro' }, @@ -1206,18 +1188,25 @@ return { }, kitty = { install_info = { - revision = '2e9b602ca676cac63887cca5a4535106f3475c82', + revision = 'fa6ab3fd32d890a0217495c96b35761e6d2dcb5b', url = 'https://github.com/OXY2DEV/tree-sitter-kitty', }, maintainers = { '@OXY2DEV' }, tier = 2, }, + kos = { + install_info = { + revision = '03b261c1a78b71c38cf4616497f253c4a4ce118b', + url = 'https://github.com/kos-lang/tree-sitter-kos', + }, + maintainers = { '@cdragan' }, + tier = 2, + }, kotlin = { install_info = { - revision = '57fb4560ba8641865bc0baa6b3f413b236112c4c', + revision = 'a1760ba7178fe76515e7cfe7577deae2335fa57d', url = 'https://github.com/fwcd/tree-sitter-kotlin', }, - maintainers = { '@SalBakraa' }, tier = 2, }, koto = { @@ -1238,7 +1227,7 @@ return { }, lalrpop = { install_info = { - revision = '8d38e9755c05d37df8a24dadb0fc64f6588ac188', + revision = '27b0f7bb55b4cabd8f01a933d9ee6a49dbfc2192', url = 'https://github.com/traxys/tree-sitter-lalrpop', }, maintainers = { '@traxys' }, @@ -1255,7 +1244,7 @@ return { }, ledger = { install_info = { - revision = '96c92d4908a836bf8f661166721c98439f8afb80', + revision = '2edce0372079896c810c7b218587f2b3fbb7a086', url = 'https://github.com/cbarrete/tree-sitter-ledger', }, maintainers = { '@cbarrete' }, @@ -1279,7 +1268,7 @@ return { }, liquid = { install_info = { - revision = 'd6ebde3974742cd1b61b55d1d94aab1dacb41056', + revision = 'fa11c7ba45038b61e03a8a00ad667fb5f3d72088', url = 'https://github.com/hankthetank27/tree-sitter-liquid', }, maintainers = { '@hankthetank27' }, @@ -1287,7 +1276,7 @@ return { }, liquidsoap = { install_info = { - revision = '4de01f44de2c051c33832ce523cf44690561320d', + revision = '0169d92b0a93e9f32289533ef23abdafca579e56', url = 'https://github.com/savonet/tree-sitter-liquidsoap', }, maintainers = { '@toots' }, @@ -1303,7 +1292,7 @@ return { }, lua = { install_info = { - revision = 'd76023017f7485eae629cb60d406c7a1ca0f40c9', + revision = '10fe0054734eec83049514ea2e718b2a56acd0c9', url = 'https://github.com/tree-sitter-grammars/tree-sitter-lua', }, maintainers = { '@muniftanjim' }, @@ -1345,8 +1334,8 @@ return { }, make = { install_info = { - revision = 'a4b9187417d6be349ee5fd4b6e77b4172c6827dd', - url = 'https://github.com/alemuller/tree-sitter-make', + revision = '70613f3d812cbabbd7f38d104d60a409c4008b43', + url = 'https://github.com/tree-sitter-grammars/tree-sitter-make', }, maintainers = { '@lewis6991' }, tier = 2, @@ -1354,7 +1343,7 @@ return { markdown = { install_info = { location = 'tree-sitter-markdown', - revision = '2dfd57f547f06ca5631a80f601e129d73fc8e9f0', + revision = 'f969cd3ae3f9fbd4e43205431d0ae286014c05b5', url = 'https://github.com/tree-sitter-grammars/tree-sitter-markdown', }, maintainers = { '@MDeiml' }, @@ -1365,7 +1354,7 @@ return { markdown_inline = { install_info = { location = 'tree-sitter-markdown-inline', - revision = '2dfd57f547f06ca5631a80f601e129d73fc8e9f0', + revision = 'f969cd3ae3f9fbd4e43205431d0ae286014c05b5', url = 'https://github.com/tree-sitter-grammars/tree-sitter-markdown', }, maintainers = { '@MDeiml' }, @@ -1374,7 +1363,7 @@ return { }, matlab = { install_info = { - revision = '1bccabdbd420a9c3c3f96f36d7f9e65b3d9c88ef', + revision = 'c2390a59016f74e7d5f75ef09510768b4f30217e', url = 'https://github.com/acristoffers/tree-sitter-matlab', }, maintainers = { '@acristoffers' }, @@ -1397,7 +1386,7 @@ return { }, meson = { install_info = { - revision = '280b6e59186f18528bab1567f5cc43b78b9cd881', + revision = 'c84f3540624b81fc44067030afce2ff78d6ede05', url = 'https://github.com/tree-sitter-grammars/tree-sitter-meson', }, maintainers = { '@Decodetalkers' }, @@ -1406,7 +1395,7 @@ return { mlir = { install_info = { generate = true, - revision = '80ac665f68a5d1c6ca0443f71b6cd60e24e84157', + revision = '1cff1bf79135f8effef87d7cee9d3b26d1970ee9', url = 'https://github.com/artagnon/tree-sitter-mlir', }, maintainers = { '@artagnon' }, @@ -1430,7 +1419,7 @@ return { }, nginx = { install_info = { - revision = '989da760be05a3334af3ec88705cbf57e6a9c41d', + revision = '47ade644d754cce57974aac44d2c9450e823d4f4', url = 'https://github.com/opa-oz/tree-sitter-nginx', }, maintainers = { '@opa-oz' }, @@ -1438,14 +1427,14 @@ return { }, nickel = { install_info = { - revision = 'a0a5d98a6f0edb5d00a18e62e7d1d02a5607c391', + revision = 'b5b6cc3bc7b9ea19f78fed264190685419cd17a8', url = 'https://github.com/nickel-lang/tree-sitter-nickel', }, tier = 2, }, nim = { install_info = { - revision = '4ad352773688deb84a95eeaa9872acda5b466439', + revision = '9b4ede21a6ca866d29263f6b66c070961bc622b4', url = 'https://github.com/alaviss/tree-sitter-nim', }, maintainers = { '@aMOPel' }, @@ -1470,10 +1459,10 @@ return { }, nix = { install_info = { - revision = 'bfcb03e6ddccc5a1eb84cea0176096f85a7af333', + revision = 'eabf96807ea4ab6d6c7f09b671a88cd483542840', url = 'https://github.com/nix-community/tree-sitter-nix', }, - maintainers = { '@leo60228', '@zimbatm' }, + maintainers = { '@leo60228', '@mrcjkb', '@zimbatm' }, tier = 2, }, nqc = { @@ -1486,7 +1475,7 @@ return { }, nu = { install_info = { - revision = '47d4b4f5369c0cae866724758ae88ef07e10e4f1', + revision = 'f4793e3809bb84e78dee260b47085d8203a58d88', url = 'https://github.com/nushell/tree-sitter-nu', }, maintainers = { '@abhisheksingh0x558' }, @@ -1547,7 +1536,7 @@ return { }, pascal = { install_info = { - revision = '5054931bcd022860dd5936864f981e359fb63aef', + revision = '042119eca2e18a60e56317fb06ee3ba5c32cb447', url = 'https://github.com/Isopod/tree-sitter-pascal', }, maintainers = { '@Isopod' }, @@ -1581,7 +1570,7 @@ return { php = { install_info = { location = 'php', - revision = '7d07b41ce2d442ca9a90ed85d0075eccc17ae315', + revision = '015ce839db5ae9ceda763bf12e071867fbe8cc89', url = 'https://github.com/tree-sitter/tree-sitter-php', }, maintainers = { '@tk-shirasaka', '@calebdw' }, @@ -1592,7 +1581,7 @@ return { php_only = { install_info = { location = 'php_only', - revision = '7d07b41ce2d442ca9a90ed85d0075eccc17ae315', + revision = '015ce839db5ae9ceda763bf12e071867fbe8cc89', url = 'https://github.com/tree-sitter/tree-sitter-php', }, maintainers = { '@tk-shirasaka', '@calebdw' }, @@ -1601,7 +1590,7 @@ return { }, phpdoc = { install_info = { - revision = '03bb10330704b0b371b044e937d5cc7cd40b4999', + revision = '12d50307e6c02e5f4f876fa6cf2edea1f7808c0d', url = 'https://github.com/claytonrcarter/tree-sitter-phpdoc', }, maintainers = { '@mikehaertl' }, @@ -1617,7 +1606,7 @@ return { }, pkl = { install_info = { - revision = '82f0e990b727374014371681457cc6ea5c3daa97', + revision = '7c8a0d15d83c1a436e91277d5023340f1ae5726b', url = 'https://github.com/apple/tree-sitter-pkl', }, maintainers = { '@ribru17' }, @@ -1660,7 +1649,7 @@ return { powershell = { filetype = 'ps1', install_info = { - revision = '9379c77984af1f3d3d7e3cc5e897de3496725280', + revision = 'b881dfbe71a770ea37d434c80d3523091b81f6db', url = 'https://github.com/airbus-cert/tree-sitter-powershell', }, maintainers = { '@L2jLiga' }, @@ -1720,10 +1709,10 @@ return { }, proto = { install_info = { - revision = 'e9f6b43f6844bd2189b50a422d4e2094313f6aa3', - url = 'https://github.com/treywood/tree-sitter-proto', + revision = 'eacb7f162e35a18a0dd8ce734f7e7baf2a8398ca', + url = 'https://github.com/coder3101/tree-sitter-proto', }, - maintainers = { '@treywood' }, + maintainers = { '@stefanvanburen' }, tier = 2, }, prql = { @@ -1812,7 +1801,7 @@ return { }, query = { install_info = { - revision = 'a225e21d81201be77da58de614e2b7851735677a', + revision = 'fc5409c6820dd5e02b0b0a309d3da2bfcde2db17', url = 'https://github.com/tree-sitter-grammars/tree-sitter-query', }, maintainers = { '@steelsojka' }, @@ -1829,7 +1818,7 @@ return { }, racket = { install_info = { - revision = '130e76536bd3a45df7b7fd71cfa3d0df25fcfe8e', + revision = '56b57807f86aa4ddb14892572b318edd4bc90ebe', url = 'https://github.com/6cdh/tree-sitter-racket', }, tier = 2, @@ -1892,7 +1881,7 @@ return { }, rego = { install_info = { - revision = '20b5a5958c837bc9f74b231022a68a594a313f6d', + revision = 'ddd39af81fe8b0288102a7cb97959dfce723e0f3', url = 'https://github.com/FallenAngel97/tree-sitter-rego', }, maintainers = { '@FallenAngel97' }, @@ -1909,7 +1898,7 @@ return { }, rescript = { install_info = { - revision = 'd2df8a285fff95de56a91d2f8152aeceb66f40ef', + revision = '43c2f1f35024918d415dc933d4cc534d6419fedf', url = 'https://github.com/rescript-lang/tree-sitter-rescript', }, maintainers = { '@ribru17' }, @@ -1917,7 +1906,7 @@ return { }, rifleconf = { install_info = { - revision = 'fe10eab6cacff239ec61f4456e793bed15703aaf', + revision = '6389ef0fc0d48f0397ec233109c074a0cb685e36', url = 'https://github.com/purarue/tree-sitter-rifleconf', }, maintainers = { '@purarue' }, @@ -1933,15 +1922,14 @@ return { }, robot = { install_info = { - revision = 'e34def7cb0d8a66a59ec5057fe17bb4e6b17b56a', + revision = 'v1.3.0', url = 'https://github.com/Hubro/tree-sitter-robot', }, - maintainers = { '@Hubro' }, - tier = 2, + tier = 3, }, - robots = { + robots_txt = { install_info = { - revision = '8e3a4205b76236bb6dbebdbee5afc262ce38bb62', + revision = '0c066107e3548de79316a6a4ec771e2f7cf7c468', url = 'https://github.com/opa-oz/tree-sitter-robots-txt', }, maintainers = { '@opa-oz' }, @@ -1952,8 +1940,7 @@ return { revision = '40e52f343f1b1f270d6ecb2ca898ca9b8cba6936', url = 'https://github.com/faldor20/tree-sitter-roc', }, - maintainers = { '@nat-418' }, - tier = 2, + tier = 3, }, ron = { install_info = { @@ -1973,7 +1960,7 @@ return { }, ruby = { install_info = { - revision = '89bd7a8e5450cb6a942418a619d30469f259e5d6', + revision = 'ad907a69da0c8a4f7a943a7fe012712208da6dee', url = 'https://github.com/tree-sitter/tree-sitter-ruby', }, maintainers = { '@TravonteD' }, @@ -1997,7 +1984,7 @@ return { }, scala = { install_info = { - revision = '97aead18d97708190a51d4f551ea9b05b60641c9', + revision = '14c5cfd2b8e0f057ba0f4f72ee4812b0ae6cdce3', url = 'https://github.com/tree-sitter/tree-sitter-scala', }, maintainers = { '@stevanmilic' }, @@ -2013,7 +2000,7 @@ return { }, scheme = { install_info = { - revision = '591893b9a8b9ec85f5cef86e0cc1028012ad9f0e', + revision = '8004e59a1d17ca670aa34d09021c8499fdefaf61', url = 'https://github.com/6cdh/tree-sitter-scheme', }, tier = 2, @@ -2056,7 +2043,7 @@ return { }, slint = { install_info = { - revision = '927f3e2f0213d0eea7f12c978c81067c3dc4289d', + revision = '4d7ad0617c30f865f051bbac04a9826bea29f987', url = 'https://github.com/slint-ui/tree-sitter-slint', }, maintainers = { '@hunger' }, @@ -2097,7 +2084,7 @@ return { }, solidity = { install_info = { - revision = '4e938a46c7030dd001bc99e1ac0f0c750ac98254', + revision = '048fe686cb1fde267243739b8bdbec8fc3a55272', url = 'https://github.com/JoranHonig/tree-sitter-solidity', }, maintainers = { '@amaanq' }, @@ -2148,7 +2135,7 @@ return { sql = { install_info = { branch = 'gh-pages', - revision = '0a3d963f48bf34d2765301f92ea525b4c5103696', + revision = '851e9cb257ba7c66cc8c14214a31c44d2f1e954e', url = 'https://github.com/derekstride/tree-sitter-sql', }, maintainers = { '@derekstride' }, @@ -2180,7 +2167,7 @@ return { }, strace = { install_info = { - revision = 'd819cdd5dbe455bd3c859193633c8d91c0df7c36', + revision = 'ac874ddfcc08d689fee1f4533789e06d88388f29', url = 'https://github.com/sigmaSd/tree-sitter-strace', }, maintainers = { '@amaanq' }, @@ -2196,10 +2183,10 @@ return { }, supercollider = { install_info = { - revision = '76b3cab1773f08bb7d3a185420b0a44c6da8c294', + revision = 'e2d1480de0a62cd53f81645cb39bc1f3fa2dce5a', url = 'https://github.com/madskjeldgaard/tree-sitter-supercollider', }, - maintainers = { '@madskjeldgaard' }, + maintainers = { '@madskjeldgaard', '@elgiano' }, tier = 2, }, superhtml = { @@ -2239,7 +2226,7 @@ return { swift = { install_info = { generate = true, - revision = '78d84ef82c387fceeb6094038da28717ea052e39', + revision = '30e18c7b0210b33ffd6e8a7028e170a9dc90825b', url = 'https://github.com/alex-pinkus/tree-sitter-swift', }, maintainers = { '@alex-pinkus' }, @@ -2263,7 +2250,7 @@ return { }, systemverilog = { install_info = { - revision = '7c4b01b7df2f6e7fa1f698c9d30ac8f93af18ed2', + revision = '293928578cb27fbd0005fcc5f09c09a1e8628c89', url = 'https://github.com/gmlarumbe/tree-sitter-systemverilog', }, maintainers = { '@zhangwwpeng' }, @@ -2271,7 +2258,7 @@ return { }, t32 = { install_info = { - revision = 'c3f72e1786b3440b98cb1b082c13c9033e1d08a9', + revision = '3bce3977303c3f88bfa9fcdfcfd1a4f8f6ffa0b0', url = 'https://github.com/xasc/tree-sitter-t32', }, maintainers = { '@xasc' }, @@ -2312,7 +2299,7 @@ return { }, templ = { install_info = { - revision = '1975f67058325403c5412cde48b181a3fa817870', + revision = '1c6db04effbcd7773c826bded9783cbc3061bd55', url = 'https://github.com/vrischmann/tree-sitter-templ', }, maintainers = { '@vrischmann' }, @@ -2320,7 +2307,7 @@ return { }, tera = { install_info = { - revision = '692937d52c8dfd91ce0dde722b9b4febbc9bc712', + revision = '3a38c368e806268daac9923a27e72bcafbbc16bb', url = 'https://github.com/uncenter/tree-sitter-tera', }, maintainers = { '@uncenter' }, @@ -2329,7 +2316,7 @@ return { terraform = { install_info = { location = 'dialects/terraform', - revision = 'fad991865fee927dd1de5e172fb3f08ac674d914', + revision = '64ad62785d442eb4d45df3a1764962dafd5bc98b', url = 'https://github.com/MichaHoffmann/tree-sitter-hcl', }, maintainers = { '@MichaHoffmann' }, @@ -2362,7 +2349,7 @@ return { }, tlaplus = { install_info = { - revision = '2d831940c782850f64dabf5b7b17e9e51f7f0ebb', + revision = 'add40814fda369f6efd989977b2c498aaddde984', url = 'https://github.com/tlaplus-community/tree-sitter-tlaplus', }, maintainers = { '@ahelwer', '@susliko' }, @@ -2439,7 +2426,7 @@ return { }, typespec = { install_info = { - revision = '814c98283fd92a248ba9d49ebfe61bc672a35875', + revision = '395bef1e1eb4dd18365401642beb534e8a244056', url = 'https://github.com/happenslol/tree-sitter-typespec', }, maintainers = { '@happenslol' }, @@ -2447,7 +2434,7 @@ return { }, typoscript = { install_info = { - revision = '5d8fde870b0ded1f429ba5bb249a9d9f8589ff5f', + revision = '1811c767f3f72be669891b524a07c58b1eb0db87', url = 'https://github.com/Teddytrombone/tree-sitter-typoscript', }, maintainers = { '@Teddytrombone' }, @@ -2480,7 +2467,7 @@ return { unison = { install_info = { generate = true, - revision = '169e7f748a540ec360c0cb086b448faad012caa4', + revision = '10365cc70ab2b2de85ea7ab35cf6b7636c36ce8b', url = 'https://github.com/kylegoetz/tree-sitter-unison', }, maintainers = { '@tapegram' }, @@ -2505,7 +2492,7 @@ return { v = { install_info = { location = 'tree_sitter_v', - revision = '236d51bba1bccd57fd2950956fbffe5fe0248735', + revision = '095865df4b9ddd21e376d635586c663d5a736f71', url = 'https://github.com/vlang/v-analyzer', }, maintainers = { '@kkharji', '@amaanq' }, @@ -2521,15 +2508,14 @@ return { }, vento = { install_info = { - revision = '3b32474bc29584ea214e4e84b47102408263fe0e', + revision = 'edd6596d4b0f392b87fc345dc26d84a6c32f7059', url = 'https://github.com/ventojs/tree-sitter-vento', }, - maintainers = { '@wrapperup', '@oscarotero' }, - tier = 2, + tier = 3, }, vhdl = { install_info = { - revision = '0c25aa064dc489ec5291e4879fa7ed41cf5fe680', + revision = '58114f35d0865e348692256bfc5ae661fc1efb0c', url = 'https://github.com/jpt13653903/tree-sitter-vhdl', }, maintainers = { '@jpt13653903' }, @@ -2545,7 +2531,7 @@ return { }, vim = { install_info = { - revision = '3dd4747082d1b717b8978211c06ef7b6cd16125b', + revision = '3092fcd99eb87bbd0fc434aa03650ba58bd5b43b', url = 'https://github.com/tree-sitter-grammars/tree-sitter-vim', }, maintainers = { '@clason' }, @@ -2553,7 +2539,7 @@ return { }, vimdoc = { install_info = { - revision = '5cb043a38ff04cadb6b8e6688aabbf34edd0c3e3', + revision = 'f061895a0eff1d5b90e4fb60d21d87be3267031a', url = 'https://github.com/neovim/tree-sitter-vimdoc', }, maintainers = { '@clason' }, @@ -2570,7 +2556,7 @@ return { vue = { install_info = { branch = 'main', - revision = '22bdfa6c9fc0f5ffa44c6e938ec46869ac8a99ff', + revision = 'ce8011a414fdf8091f4e4071752efc376f4afb08', url = 'https://github.com/tree-sitter-grammars/tree-sitter-vue', }, maintainers = { '@WhyNotHugo', '@lucario387' }, @@ -2603,7 +2589,7 @@ return { }, wit = { install_info = { - revision = 'v1.2.0', + revision = 'v1.3.0', url = 'https://github.com/bytecodealliance/tree-sitter-wit', }, maintainers = { '@mkatychev' }, @@ -2628,7 +2614,7 @@ return { xml = { install_info = { location = 'xml', - revision = '863dbc381f44f6c136a399e684383b977bb2beaa', + revision = '5000ae8f22d11fbe93939b05c1e37cf21117162d', url = 'https://github.com/tree-sitter-grammars/tree-sitter-xml', }, maintainers = { '@ObserverOfTime' }, @@ -2637,15 +2623,15 @@ return { }, xresources = { install_info = { - revision = 'd466418f1c8850276bb7787a135372cb70868b1d', + revision = 'v1.0.0', url = 'https://github.com/ValdezFOmar/tree-sitter-xresources', }, maintainers = { '@ValdezFOmar' }, - tier = 2, + tier = 1, }, yaml = { install_info = { - revision = '7708026449bed86239b1cd5bce6e3c34dbca6415', + revision = '4463985dfccc640f3d6991e3396a2047610cf5f8', url = 'https://github.com/tree-sitter-grammars/tree-sitter-yaml', }, maintainers = { '@amaanq' }, @@ -2701,10 +2687,10 @@ return { }, zsh = { install_info = { - revision = 'v0.48.0', + revision = '5aa8b258cc81a5ac1b76faf7dfc1a11dad300830', url = 'https://github.com/georgeharker/tree-sitter-zsh', }, maintainers = { '@georgeharker' }, - tier = 1, + tier = 2, }, } diff --git a/plugin/filetypes.lua b/plugin/filetypes.lua index 5e23adffd..f8fe0c287 100644 --- a/plugin/filetypes.lua +++ b/plugin/filetypes.lua @@ -2,7 +2,7 @@ local filetypes = { angular = { 'htmlangular' }, bash = { 'sh' }, bibtex = { 'bib' }, - c_sharp = { 'cs', 'csharp', 'c-sharp' }, + c_sharp = { 'cs', 'csharp' }, commonlisp = { 'lisp' }, cooklang = { 'cook' }, devicetree = { 'dts' }, @@ -24,6 +24,7 @@ local filetypes = { ini = { 'confini', 'dosini' }, janet_simple = { 'janet' }, javascript = { 'javascriptreact', 'ecma', 'ecmascript', 'jsx', 'js' }, + json = { 'jsonc' }, glimmer_javascript = { 'javascript.glimmer' }, latex = { 'tex' }, linkerscript = { 'ld' }, diff --git a/runtime/queries/angular/highlights.scm b/runtime/queries/angular/highlights.scm index 4793745b4..d248d2e4c 100644 --- a/runtime/queries/angular/highlights.scm +++ b/runtime/queries/angular/highlights.scm @@ -2,6 +2,8 @@ (identifier) @variable +(style_unit) @variable + (pipe_operator) @operator (string) @string @@ -26,6 +28,12 @@ (binding_name (identifier) @keyword) +(class_binding + [ + (identifier) + (class_name) + ] @keyword) + (event_binding (binding_name (identifier) @keyword)) diff --git a/runtime/queries/bash/highlights.scm b/runtime/queries/bash/highlights.scm index 6fe370011..69bfaad1a 100644 --- a/runtime/queries/bash/highlights.scm +++ b/runtime/queries/bash/highlights.scm @@ -105,21 +105,6 @@ (special_variable_name) @constant -; trap -l -((word) @constant.builtin - (#any-of? @constant.builtin - "SIGHUP" "SIGINT" "SIGQUIT" "SIGILL" "SIGTRAP" "SIGABRT" "SIGBUS" "SIGFPE" "SIGKILL" "SIGUSR1" - "SIGSEGV" "SIGUSR2" "SIGPIPE" "SIGALRM" "SIGTERM" "SIGSTKFLT" "SIGCHLD" "SIGCONT" "SIGSTOP" - "SIGTSTP" "SIGTTIN" "SIGTTOU" "SIGURG" "SIGXCPU" "SIGXFSZ" "SIGVTALRM" "SIGPROF" "SIGWINCH" - "SIGIO" "SIGPWR" "SIGSYS" "SIGRTMIN" "SIGRTMIN+1" "SIGRTMIN+2" "SIGRTMIN+3" "SIGRTMIN+4" - "SIGRTMIN+5" "SIGRTMIN+6" "SIGRTMIN+7" "SIGRTMIN+8" "SIGRTMIN+9" "SIGRTMIN+10" "SIGRTMIN+11" - "SIGRTMIN+12" "SIGRTMIN+13" "SIGRTMIN+14" "SIGRTMIN+15" "SIGRTMAX-14" "SIGRTMAX-13" - "SIGRTMAX-12" "SIGRTMAX-11" "SIGRTMAX-10" "SIGRTMAX-9" "SIGRTMAX-8" "SIGRTMAX-7" "SIGRTMAX-6" - "SIGRTMAX-5" "SIGRTMAX-4" "SIGRTMAX-3" "SIGRTMAX-2" "SIGRTMAX-1" "SIGRTMAX")) - -((word) @boolean - (#any-of? @boolean "true" "false")) - (comment) @comment @spell (test_operator) @operator @@ -182,6 +167,30 @@ (word) @variable.parameter) ]) +; help trap +(command + name: (command_name + (word) @_command) + argument: (word) @string.special + (#eq? @_command "trap") + (#any-of? @string.special "EXIT" "DEBUG" "RETURN" "ERR")) + +; trap -l +(command + name: (command_name + (word) @_command) + argument: (word) @string.special + (#any-of? @_command "trap" "kill") + (#any-of? @string.special + "SIGHUP" "SIGINT" "SIGQUIT" "SIGILL" "SIGTRAP" "SIGABRT" "SIGBUS" "SIGFPE" "SIGKILL" "SIGUSR1" + "SIGSEGV" "SIGUSR2" "SIGPIPE" "SIGALRM" "SIGTERM" "SIGSTKFLT" "SIGCHLD" "SIGCONT" "SIGSTOP" + "SIGTSTP" "SIGTTIN" "SIGTTOU" "SIGURG" "SIGXCPU" "SIGXFSZ" "SIGVTALRM" "SIGPROF" "SIGWINCH" + "SIGIO" "SIGPWR" "SIGSYS" "SIGRTMIN" "SIGRTMIN+1" "SIGRTMIN+2" "SIGRTMIN+3" "SIGRTMIN+4" + "SIGRTMIN+5" "SIGRTMIN+6" "SIGRTMIN+7" "SIGRTMIN+8" "SIGRTMIN+9" "SIGRTMIN+10" "SIGRTMIN+11" + "SIGRTMIN+12" "SIGRTMIN+13" "SIGRTMIN+14" "SIGRTMIN+15" "SIGRTMAX-14" "SIGRTMAX-13" + "SIGRTMAX-12" "SIGRTMAX-11" "SIGRTMAX-10" "SIGRTMAX-9" "SIGRTMAX-8" "SIGRTMAX-7" "SIGRTMAX-6" + "SIGRTMAX-5" "SIGRTMAX-4" "SIGRTMAX-3" "SIGRTMAX-2" "SIGRTMAX-1" "SIGRTMAX")) + (declaration_command (word) @variable.parameter) @@ -190,9 +199,6 @@ (number) @number -((word) @number - (#lua-match? @number "^[0-9]+$")) - (file_redirect (word) @string.special.path) diff --git a/runtime/queries/bash/indents.scm b/runtime/queries/bash/indents.scm new file mode 100644 index 000000000..c0a4bed47 --- /dev/null +++ b/runtime/queries/bash/indents.scm @@ -0,0 +1,32 @@ +[ + (if_statement) + (for_statement) + (while_statement) + (case_statement) + (function_definition) + (compound_statement) + (subshell) + (command_substitution) + (do_group) + (case_item) +] @indent.begin + +[ + "fi" + "done" + "esac" + "}" + ")" + "then" + "do" + (elif_clause) + (else_clause) +] @indent.branch + +[ + "fi" + "done" + "esac" + "}" + ")" +] @indent.end diff --git a/runtime/queries/bash/injections.scm b/runtime/queries/bash/injections.scm index e1095773b..5b7e06bac 100644 --- a/runtime/queries/bash/injections.scm +++ b/runtime/queries/bash/injections.scm @@ -76,3 +76,15 @@ (#offset! @injection.content 0 1 0 -1) (#set! injection.include-children) (#set! injection.language "readline")) + +((command + name: (command_name) @_command + . + argument: [ + (string) + (raw_string) + ] @injection.content) + (#eq? @_command "trap") + (#offset! @injection.content 0 1 0 -1) + (#set! injection.include-children) + (#set! injection.self)) 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/bpftrace/highlights.scm b/runtime/queries/bpftrace/highlights.scm new file mode 100644 index 000000000..19e568515 --- /dev/null +++ b/runtime/queries/bpftrace/highlights.scm @@ -0,0 +1,229 @@ +; Comments +[ + (line_comment) + (block_comment) +] @comment @spell + +; String and numeric literals +(string_literal) @string + +(escape_sequence) @string.escape + +(integer_literal) @number + +(boolean_literal) @boolean + +; Variables +(identifier) @variable + +(args_keyword) @variable.builtin + +(argn_identifier) @variable.builtin + +(retval_identifier) @variable.builtin + +(scratch_variable) @variable + +(map_variable) @variable + +(script_parameter) @variable.parameter + +; Macro +(macro_definition + (identifier) @function.macro) + +; Probes +; fentry/fexit, kprobe/kretprobe, rawtracepoint +(probe + provider: (_) @type.builtin + module: (wildcard_identifier) @module + function: (wildcard_identifier) @property) + +(probe + provider: (_) @type.builtin + function: (wildcard_identifier) @property) + +; uprobe/uretprobe +(probe + provider: (uprobe_uretprobe_provider) @type.builtin + binary: (file_identifier) @string.special.path + function: (identifier) @property) + +; tracepoint +(probe + provider: (_) @type.builtin + subsys: (wildcard_identifier) @module + event: (wildcard_identifier) @property) + +; software/hardware +(probe + provider: (_) @type.builtin + event: (identifier_with_dash) @property + count: (integer_literal) @number) + +(probe + provider: (_) @type.builtin + event: (identifier_with_dash) @property) + +; bench/test +(probe + provider: (bench_test_provider) @type.builtin + function: (identifier) @property) + +; profile/interval +(probe + provider: (profile_interval_provider) @type.builtin + unit: (time_unit) @string.special + count: (integer_literal) @property) + +(probe + provider: (profile_interval_provider) @type.builtin + count: (integer_literal) @number) + +; iter +(probe + provider: (iter_provider) @type.builtin + object: (identifier) @module + pin: (file_identifier) @property) + +(probe + provider: (iter_provider) @type.builtin + object: (identifier) @module) + +; ustd +(probe + provider: (ustd_provider) @type.builtin + binary: (file_identifier) @string.special.path + namespace: (identifier) @variable + function: (identifier) @property) + +(probe + provider: (ustd_provider) @type.builtin + binary: (file_identifier) @string.special.path + function: (identifier) @property) + +; watchpoint/asyncwatchpoint +(probe + provider: (watchpoint_provider) @type.builtin + address: (integer_literal) @number + length: (integer_literal) @number + mode: (watchpoint_mode) @property) + +; Types +(type_specifier) @type + +(integer_type) @type.builtin + +[ + "BEGIN" + "begin" + "END" + "end" +] @type.builtin + +; Keywords +(hashbang) @keyword.directive + +(return_statement) @keyword.return + +[ + "config" + "let" + "macro" + "offsetof" + "sizeof" +] @keyword + +[ + "if" + "else" +] @keyword.conditional + +[ + "for" + "unroll" + "while" + (break_statement) + (continue_statement) +] @keyword.repeat + +"import" @keyword.import + +(field_expression + field: (identifier) @property) + +(call_expression + function: (identifier) @function.call) + +; Punctuations +[ + "(" + ")" + "[" + "]" + "{" + "}" +] @punctuation.bracket + +[ + "," + ";" + ":" + "." +] @punctuation.delimiter + +; Operators +[ + ; Field access + "->" + ; Range + ".." + ; Assignment + "=" + "<<=" + ">>=" + "+=" + "-=" + "*=" + "/=" + "%=" + "&=" + "|=" + "^=" + ; Update + "--" + "++" + ; Arithmetic + "%" + "+" + "-" + "*" + "/" + ; Relational + "<=" + "<" + ">=" + ">" + "==" + "!=" + ; Bitwise + "&" + "^" + "|" + "~" + "<<" + ">>" + ; Logical + "&&" + "||" + "!" +] @operator + +(conditional_expression + [ + "?" + ":" + ] @keyword.conditional.ternary) + +(predicate + "/" @punctuation.delimiter) diff --git a/runtime/queries/bpftrace/injections.scm b/runtime/queries/bpftrace/injections.scm new file mode 100644 index 000000000..8907d9f84 --- /dev/null +++ b/runtime/queries/bpftrace/injections.scm @@ -0,0 +1,12 @@ +([ + (c_struct) + (c_preproc) + (c_preproc_block) +] @injection.content + (#set! injection.language "c")) + +([ + (line_comment) + (block_comment) +] @injection.content + (#set! injection.language "comment")) diff --git a/runtime/queries/c3/highlights.scm b/runtime/queries/c3/highlights.scm index 1f02496b8..f2aa46dea 100644 --- a/runtime/queries/c3/highlights.scm +++ b/runtime/queries/c3/highlights.scm @@ -106,6 +106,7 @@ "$if" "$include" "$is_const" + "$kindof" "$nameof" "$offsetof" "$qnameof" @@ -218,6 +219,8 @@ "&&&" "+++" "|||" + "???" + "+++=" ] @operator (range_expr @@ -232,6 +235,7 @@ (ternary_expr [ "?" + "???" ":" ] @keyword.conditional.ternary) @@ -268,8 +272,8 @@ (#any-of? @variable.builtin "alignof" "associated" "elements" "extnameof" "from_ordinal" "get" "inf" "is_eq" "is_ordered" "is_substruct" "len" "lookup" "lookup_field" "max" "membersof" "methodsof" "min" "nan" "inner" - "kindof" "names" "nameof" "params" "paramsof" "parentof" "qnameof" "returns" "sizeof" "tagof" - "has_tagof" "values" "typeid"))) + "kindof" "names" "nameof" "params" "paramsof" "parentof" "qnameof" "returns" "sizeof" "set" + "tagof" "has_tagof" "values" "typeid"))) ; Label [ @@ -285,7 +289,7 @@ (path_ident (ident) @module)) -(import_declaration +(import_path (path_ident (ident) @module)) @@ -298,6 +302,9 @@ (call_inline_attributes (at_ident) @attribute) +(type_suffix + (at_ident) @attribute) + (asm_block_stmt (at_ident) @attribute) diff --git a/runtime/queries/c_sharp/highlights.scm b/runtime/queries/c_sharp/highlights.scm index 0c9489506..75aa3f847 100644 --- a/runtime/queries/c_sharp/highlights.scm +++ b/runtime/queries/c_sharp/highlights.scm @@ -327,6 +327,9 @@ (lambda_expression type: (identifier) @type) +(lambda_expression + (modifier) @keyword.modifier) + (as_expression right: (identifier) @type) diff --git a/runtime/queries/ecma/injections.scm b/runtime/queries/ecma/injections.scm index 669c75671..69afb6d41 100644 --- a/runtime/queries/ecma/injections.scm +++ b/runtime/queries/ecma/injections.scm @@ -59,10 +59,15 @@ (#set! injection.include-children) (#set! injection.language "groq")) +; gql`...` or gql(`...`) (call_expression function: (identifier) @_name (#eq? @_name "gql") - arguments: (template_string) @injection.content + arguments: [ + (arguments + (template_string) @injection.content) + (template_string) @injection.content + ] (#offset! @injection.content 0 1 0 -1) (#set! injection.include-children) (#set! injection.language "graphql")) diff --git a/runtime/queries/ecma/locals.scm b/runtime/queries/ecma/locals.scm index adc58531d..97570e44a 100644 --- a/runtime/queries/ecma/locals.scm +++ b/runtime/queries/ecma/locals.scm @@ -25,6 +25,11 @@ name: (object_pattern (shorthand_property_identifier_pattern) @local.definition.var)) +(variable_declarator + (object_pattern + (pair_pattern + (identifier) @local.definition.var))) + (import_specifier (identifier) @local.definition.import) diff --git a/runtime/queries/editorconfig/highlights.scm b/runtime/queries/editorconfig/highlights.scm index feb0a524c..a1d686b36 100644 --- a/runtime/queries/editorconfig/highlights.scm +++ b/runtime/queries/editorconfig/highlights.scm @@ -1,14 +1,19 @@ (comment) @comment @spell -(section - (section_name) @string.special.path) +(property) @property -(character_choice - (character) @constant) +(string) @string -(character_range - start: (character) @constant - end: (character) @constant) +(header + (glob) @string.special.path) + +(character) @character + +(character_escape) @string.escape + +(wildcard) @character.special + +(integer) @number [ "[" @@ -20,36 +25,11 @@ [ "," ".." - (path_separator) + "/" + "-" ] @punctuation.delimiter [ - "-" "=" - (negation) + "!" ] @operator - -[ - (wildcard_characters) - (wildcard_any_characters) - (wildcard_single_character) -] @character.special - -(escaped_character) @string.escape - -(pair - key: (identifier) @property - value: (_) @string) - -(boolean) @boolean - -(integer) @number - -(unset) @constant.builtin - -[ - (spelling_language) - (indent_style) - (end_of_line) - (charset) -] @string.special diff --git a/runtime/queries/fennel/highlights.scm b/runtime/queries/fennel/highlights.scm index c02f7bd14..a70f200dc 100644 --- a/runtime/queries/fennel/highlights.scm +++ b/runtime/queries/fennel/highlights.scm @@ -102,13 +102,13 @@ ]) ((symbol) @variable.parameter - (#any-of? @variable.parameter "$" "$...")) + (#lua-match? @variable.parameter "^%$[1-9]?$")) ((symbol_fragment) @variable.parameter - (#eq? @variable.parameter "$")) + (#lua-match? @variable.parameter "^%$[1-9]?$")) ((symbol) @variable.parameter - (#lua-match? @variable.parameter "^%$[1-9]$")) + (#eq? @variable.parameter "$...")) ((symbol) @operator (#any-of? @operator diff --git a/runtime/queries/fish/highlights.scm b/runtime/queries/fish/highlights.scm index 549bceda0..da5c52a32 100644 --- a/runtime/queries/fish/highlights.scm +++ b/runtime/queries/fish/highlights.scm @@ -112,15 +112,16 @@ (command name: (word) @function.call) -; derived from builtin -n (fish 3.2.2) +; derived from builtin -n (fish 4.3.3) (command name: [ (word) @function.builtin (#any-of? @function.builtin "." ":" "_" "abbr" "alias" "argparse" "bg" "bind" "block" "breakpoint" "builtin" "cd" "command" "commandline" "complete" "contains" "count" "disown" "echo" "emit" "eval" "exec" - "exit" "fg" "functions" "history" "isatty" "jobs" "math" "path" "printf" "pwd" "random" "read" - "realpath" "set" "set_color" "source" "status" "string" "test" "time" "type" "ulimit" "wait") + "exit" "fg" "fish_indent" "fish_key_reader" "functions" "history" "isatty" "jobs" "math" + "path" "printf" "pwd" "random" "read" "realpath" "set" "set_color" "source" "status" "string" + "test" "time" "type" "ulimit" "wait") ]) ; Functions @@ -163,15 +164,15 @@ ; Reference: https://fishshell.com/docs/current/language.html#special-variables ((variable_name) @variable.builtin (#any-of? @variable.builtin - "PATH" "CDPATH" "LANG" "LC_ALL" "LC_COLLATE" "LC_CTYPE" "LC_MESSAGES" "LC_MONETARY" "LC_NUMERIC" - "LC_TIME" "fish_color_normal" "fish_color_command" "fish_color_keyword" "fish_color_keyword" - "fish_color_redirection" "fish_color_end" "fish_color_error" "fish_color_param" - "fish_color_valid_path" "fish_color_option" "fish_color_comment" "fish_color_selection" - "fish_color_operator" "fish_color_escape" "fish_color_autosuggestion" "fish_color_cwd" - "fish_color_cwd_root" "fish_color_user" "fish_color_host" "fish_color_host_remote" - "fish_color_status" "fish_color_cancel" "fish_color_search_match" "fish_color_history_current" - "fish_pager_color_progress" "fish_pager_color_background" "fish_pager_color_prefix" - "fish_pager_color_completion" "fish_pager_color_description" + "PATH" "CDPATH" "LANG" "LANGUAGE" "LC_ALL" "LC_COLLATE" "LC_CTYPE" "LC_MESSAGES" "LC_MONETARY" + "LC_NUMERIC" "LC_TIME" "fish_color_normal" "fish_color_command" "fish_color_keyword" + "fish_color_keyword" "fish_color_redirection" "fish_color_end" "fish_color_error" + "fish_color_param" "fish_color_valid_path" "fish_color_option" "fish_color_comment" + "fish_color_selection" "fish_color_operator" "fish_color_escape" "fish_color_autosuggestion" + "fish_color_cwd" "fish_color_cwd_root" "fish_color_user" "fish_color_host" + "fish_color_host_remote" "fish_color_status" "fish_color_cancel" "fish_color_search_match" + "fish_color_history_current" "fish_pager_color_progress" "fish_pager_color_background" + "fish_pager_color_prefix" "fish_pager_color_completion" "fish_pager_color_description" "fish_pager_color_selected_background" "fish_pager_color_selected_prefix" "fish_pager_color_selected_completion" "fish_pager_color_selected_description" "fish_pager_color_secondary_background" "fish_pager_color_secondary_prefix" @@ -183,8 +184,8 @@ "fish_cursor_visual" "fish_cursor_external" "fish_function_path" "fish_greeting" "fish_history" "fish_trace" "FISH_DEBUG" "FISH_DEBUG_OUTPUT" "fish_user_paths" "umask" "BROWSER" "_" "argv" "CMD_DURATION" "COLUMNS" "LINES" "fish_kill_signal" "fish_killring" "fish_read_limit" "fish_pid" - "history" "HOME" "hostname" "IFS" "last_pid" "PWD" "pipestatus" "SHLVL" "status" - "status_generation" "TERM" "USER" "EUID" "version" "FISH_VERSION")) + "fish_terminal_color_theme" "history" "HOME" "hostname" "IFS" "last_pid" "PWD" "pipestatus" + "SHLVL" "status" "status_generation" "TERM" "USER" "EUID" "version" "FISH_VERSION")) ; Nodes [ diff --git a/runtime/queries/fortran/folds.scm b/runtime/queries/fortran/folds.scm index cedbdb635..7b06b1719 100644 --- a/runtime/queries/fortran/folds.scm +++ b/runtime/queries/fortran/folds.scm @@ -3,7 +3,7 @@ (if_statement) (where_statement) (enum_statement) - (do_loop_statement) + (do_loop) (derived_type_definition) (function) (subroutine) diff --git a/runtime/queries/fortran/indents.scm b/runtime/queries/fortran/indents.scm index 86704c4f4..0f9ba3d7e 100644 --- a/runtime/queries/fortran/indents.scm +++ b/runtime/queries/fortran/indents.scm @@ -5,7 +5,7 @@ (function) ; (interface) (if_statement) - (do_loop_statement) + (do_loop) (where_statement) (derived_type_definition) (enum) 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/gdscript/highlights.scm b/runtime/queries/gdscript/highlights.scm index 3885d0068..737453059 100644 --- a/runtime/queries/gdscript/highlights.scm +++ b/runtime/queries/gdscript/highlights.scm @@ -248,34 +248,241 @@ ; Builtins ; generated from -; - godot commit: fb10e67fef -; - https://github.com/godotengine/godot/blob/fb10e67fef/doc/classes -; - https://github.com/godotengine/godot/blob/fb10e67fef/doc/classes/@GlobalScope.xml -; - https://github.com/godotengine/godot/blob/fb10e67fef/modules/gdscript/doc_classes/@GDScript.xml +; - godot commit: 10c7cb8 +; - https://github.com/godotengine/godot/blob/10c7cb878a/doc/classes +; - https://github.com/godotengine/godot/blob/10c7cb878a/doc/classes/@GlobalScope.xml +; - https://github.com/godotengine/godot/blob/10c7cb878a/modules/gdscript/doc_classes/@GDScript.xml ; Built-in Annotations ((annotation "@" @attribute (identifier) @attribute) (#any-of? @attribute ; from modules/gdscript/doc_classes/@GDScript.xml - "export" "export_category" "export_color_no_alpha" "export_custom" "export_dir" "export_enum" - "export_exp_easing" "export_file" "export_flags" "export_flags_2d_navigation" - "export_flags_2d_physics" "export_flags_2d_render" "export_flags_3d_navigation" - "export_flags_3d_physics" "export_flags_3d_render" "export_flags_avoidance" "export_global_dir" - "export_global_file" "export_group" "export_multiline" "export_node_path" "export_placeholder" - "export_range" "export_storage" "export_subgroup" "icon" "onready" "rpc" "static_unload" "tool" - "warning_ignore")) + "abstract" "export" "export_category" "export_color_no_alpha" "export_custom" "export_dir" + "export_enum" "export_exp_easing" "export_file" "export_file_path" "export_flags" + "export_flags_2d_navigation" "export_flags_2d_physics" "export_flags_2d_render" + "export_flags_3d_navigation" "export_flags_3d_physics" "export_flags_3d_render" + "export_flags_avoidance" "export_global_dir" "export_global_file" "export_group" + "export_multiline" "export_node_path" "export_placeholder" "export_range" "export_storage" + "export_subgroup" "export_tool_button" "icon" "onready" "rpc" "static_unload" "tool" + "warning_ignore" "warning_ignore_restore" "warning_ignore_start")) ; Builtin Types ((identifier) @type.builtin (#any-of? @type.builtin ; from doc/classes/*.xml - "AABB" "Array" "Basis" "Callable" "Color" "Dictionary" "NodePath" "PackedByteArray" - "PackedColorArray" "PackedFloat32Array" "PackedFloat64Array" "PackedInt32Array" - "PackedInt64Array" "PackedStringArray" "PackedVector2Array" "PackedVector3Array" "Plane" - "Projection" "Quaternion" "RID" "Rect2" "Rect2i" "Signal" "String" "StringName" "Transform2D" - "Transform3D" "Vector2" "Vector2i" "Vector3" "Vector3i" "Vector4" "Vector4i" "bool" "float" - "int" + "AABB" "AESContext" "AStar2D" "AStar3D" "AStarGrid2D" "AcceptDialog" "AimModifier3D" + "AnimatableBody2D" "AnimatableBody3D" "AnimatedSprite2D" "AnimatedSprite3D" "AnimatedTexture" + "Animation" "AnimationLibrary" "AnimationMixer" "AnimationNode" "AnimationNodeAdd2" + "AnimationNodeAdd3" "AnimationNodeAnimation" "AnimationNodeBlend2" "AnimationNodeBlend3" + "AnimationNodeBlendSpace1D" "AnimationNodeBlendSpace2D" "AnimationNodeBlendTree" + "AnimationNodeExtension" "AnimationNodeOneShot" "AnimationNodeOutput" + "AnimationNodeStateMachine" "AnimationNodeStateMachinePlayback" + "AnimationNodeStateMachineTransition" "AnimationNodeSub2" "AnimationNodeSync" + "AnimationNodeTimeScale" "AnimationNodeTimeSeek" "AnimationNodeTransition" "AnimationPlayer" + "AnimationRootNode" "AnimationTree" "Area2D" "Area3D" "Array" "ArrayMesh" "ArrayOccluder3D" + "AspectRatioContainer" "AtlasTexture" "AudioBusLayout" "AudioEffect" "AudioEffectAmplify" + "AudioEffectBandLimitFilter" "AudioEffectBandPassFilter" "AudioEffectCapture" + "AudioEffectChorus" "AudioEffectCompressor" "AudioEffectDelay" "AudioEffectDistortion" + "AudioEffectEQ" "AudioEffectEQ10" "AudioEffectEQ21" "AudioEffectEQ6" "AudioEffectFilter" + "AudioEffectHardLimiter" "AudioEffectHighPassFilter" "AudioEffectHighShelfFilter" + "AudioEffectInstance" "AudioEffectLimiter" "AudioEffectLowPassFilter" + "AudioEffectLowShelfFilter" "AudioEffectNotchFilter" "AudioEffectPanner" "AudioEffectPhaser" + "AudioEffectPitchShift" "AudioEffectRecord" "AudioEffectReverb" "AudioEffectSpectrumAnalyzer" + "AudioEffectSpectrumAnalyzerInstance" "AudioEffectStereoEnhance" "AudioListener2D" + "AudioListener3D" "AudioSample" "AudioSamplePlayback" "AudioServer" "AudioStream" + "AudioStreamGenerator" "AudioStreamGeneratorPlayback" "AudioStreamMicrophone" + "AudioStreamPlayback" "AudioStreamPlaybackPolyphonic" "AudioStreamPlaybackResampled" + "AudioStreamPlayer" "AudioStreamPlayer2D" "AudioStreamPlayer3D" "AudioStreamPolyphonic" + "AudioStreamRandomizer" "AudioStreamWAV" "BackBufferCopy" "BaseButton" "BaseMaterial3D" "Basis" + "BitMap" "Bone2D" "BoneAttachment3D" "BoneConstraint3D" "BoneMap" "BoneTwistDisperser3D" + "BoxContainer" "BoxMesh" "BoxOccluder3D" "BoxShape3D" "Button" "ButtonGroup" "CCDIK3D" + "CPUParticles2D" "CPUParticles3D" "Callable" "CallbackTweener" "Camera2D" "Camera3D" + "CameraAttributes" "CameraAttributesPhysical" "CameraAttributesPractical" "CameraFeed" + "CameraServer" "CameraTexture" "CanvasGroup" "CanvasItem" "CanvasItemMaterial" "CanvasLayer" + "CanvasModulate" "CanvasTexture" "CapsuleMesh" "CapsuleShape2D" "CapsuleShape3D" + "CenterContainer" "ChainIK3D" "CharFXTransform" "CharacterBody2D" "CharacterBody3D" "CheckBox" + "CheckButton" "CircleShape2D" "ClassDB" "CodeEdit" "CodeHighlighter" "CollisionObject2D" + "CollisionObject3D" "CollisionPolygon2D" "CollisionPolygon3D" "CollisionShape2D" + "CollisionShape3D" "Color" "ColorPalette" "ColorPicker" "ColorPickerButton" "ColorRect" + "Compositor" "CompositorEffect" "CompressedCubemap" "CompressedCubemapArray" + "CompressedTexture2D" "CompressedTexture2DArray" "CompressedTexture3D" + "CompressedTextureLayered" "ConcavePolygonShape2D" "ConcavePolygonShape3D" "ConeTwistJoint3D" + "ConfigFile" "ConfirmationDialog" "Container" "Control" "ConvertTransformModifier3D" + "ConvexPolygonShape2D" "ConvexPolygonShape3D" "CopyTransformModifier3D" "Crypto" "CryptoKey" + "Cubemap" "CubemapArray" "Curve" "Curve2D" "Curve3D" "CurveTexture" "CurveXYZTexture" + "CylinderMesh" "CylinderShape3D" "DPITexture" "DTLSServer" "DampedSpringJoint2D" "Decal" + "Dictionary" "DirAccess" "DirectionalLight2D" "DirectionalLight3D" "DisplayServer" + "EditorCommandPalette" "EditorContextMenuPlugin" "EditorDebuggerPlugin" "EditorDebuggerSession" + "EditorDock" "EditorExportPlatform" "EditorExportPlatformAppleEmbedded" + "EditorExportPlatformExtension" "EditorExportPlatformPC" "EditorExportPlugin" + "EditorExportPreset" "EditorFeatureProfile" "EditorFileDialog" "EditorFileSystem" + "EditorFileSystemDirectory" "EditorFileSystemImportFormatSupportQuery" "EditorImportPlugin" + "EditorInspector" "EditorInspectorPlugin" "EditorInterface" "EditorNode3DGizmo" + "EditorNode3DGizmoPlugin" "EditorPaths" "EditorPlugin" "EditorProperty" + "EditorResourceConversionPlugin" "EditorResourcePicker" "EditorResourcePreview" + "EditorResourcePreviewGenerator" "EditorResourceTooltipPlugin" "EditorSceneFormatImporter" + "EditorScenePostImport" "EditorScenePostImportPlugin" "EditorScript" "EditorScriptPicker" + "EditorSelection" "EditorSettings" "EditorSpinSlider" "EditorSyntaxHighlighter" "EditorToaster" + "EditorTranslationParserPlugin" "EditorUndoRedoManager" "EditorVCSInterface" "EncodedObjectAsID" + "Engine" "EngineDebugger" "EngineProfiler" "Environment" "Expression" "ExternalTexture" + "FABRIK3D" "FileAccess" "FileDialog" "FileSystemDock" "FlowContainer" "FogMaterial" "FogVolume" + "FoldableContainer" "FoldableGroup" "Font" "FontFile" "FontVariation" "FramebufferCacheRD" + "GDExtension" "GDExtensionManager" "GPUParticles2D" "GPUParticles3D" "GPUParticlesAttractor3D" + "GPUParticlesAttractorBox3D" "GPUParticlesAttractorSphere3D" + "GPUParticlesAttractorVectorField3D" "GPUParticlesCollision3D" "GPUParticlesCollisionBox3D" + "GPUParticlesCollisionHeightField3D" "GPUParticlesCollisionSDF3D" + "GPUParticlesCollisionSphere3D" "Generic6DOFJoint3D" "Geometry2D" "Geometry3D" + "GeometryInstance3D" "GodotInstance" "Gradient" "GradientTexture1D" "GradientTexture2D" + "GraphEdit" "GraphElement" "GraphFrame" "GraphNode" "GridContainer" "GrooveJoint2D" + "HBoxContainer" "HFlowContainer" "HMACContext" "HScrollBar" "HSeparator" "HSlider" + "HSplitContainer" "HTTPClient" "HTTPRequest" "HashingContext" "HeightMapShape3D" "HingeJoint3D" + "IKModifier3D" "IP" "Image" "ImageFormatLoader" "ImageFormatLoaderExtension" "ImageTexture" + "ImageTexture3D" "ImageTextureLayered" "ImmediateMesh" "ImporterMesh" "ImporterMeshInstance3D" + "Input" "InputEvent" "InputEventAction" "InputEventFromWindow" "InputEventGesture" + "InputEventJoypadButton" "InputEventJoypadMotion" "InputEventKey" "InputEventMIDI" + "InputEventMagnifyGesture" "InputEventMouse" "InputEventMouseButton" "InputEventMouseMotion" + "InputEventPanGesture" "InputEventScreenDrag" "InputEventScreenTouch" "InputEventShortcut" + "InputEventWithModifiers" "InputMap" "InstancePlaceholder" "IntervalTweener" "ItemList" + "IterateIK3D" "JNISingleton" "JSON" "JSONRPC" "JacobianIK3D" "JavaClass" "JavaClassWrapper" + "JavaObject" "JavaScriptBridge" "JavaScriptObject" "Joint2D" "Joint3D" "JointLimitation3D" + "JointLimitationCone3D" "KinematicCollision2D" "KinematicCollision3D" "Label" "Label3D" + "LabelSettings" "Light2D" "Light3D" "LightOccluder2D" "LightmapGI" "LightmapGIData" + "LightmapProbe" "Lightmapper" "LightmapperRD" "LimitAngularVelocityModifier3D" "Line2D" + "LineEdit" "LinkButton" "Logger" "LookAtModifier3D" "MainLoop" "MarginContainer" "Marker2D" + "Marker3D" "Marshalls" "Material" "MenuBar" "MenuButton" "Mesh" + "MeshConvexDecompositionSettings" "MeshDataTool" "MeshInstance2D" "MeshInstance3D" "MeshLibrary" + "MeshTexture" "MethodTweener" "MissingNode" "MissingResource" "ModifierBoneTarget3D" + "MovieWriter" "MultiMesh" "MultiMeshInstance2D" "MultiMeshInstance3D" "MultiplayerAPI" + "MultiplayerAPIExtension" "MultiplayerPeer" "MultiplayerPeerExtension" "Mutex" "NativeMenu" + "NavigationAgent2D" "NavigationAgent3D" "NavigationLink2D" "NavigationLink3D" "NavigationMesh" + "NavigationMeshGenerator" "NavigationMeshSourceGeometryData2D" + "NavigationMeshSourceGeometryData3D" "NavigationObstacle2D" "NavigationObstacle3D" + "NavigationPathQueryParameters2D" "NavigationPathQueryParameters3D" + "NavigationPathQueryResult2D" "NavigationPathQueryResult3D" "NavigationPolygon" + "NavigationRegion2D" "NavigationRegion3D" "NavigationServer2D" "NavigationServer2DManager" + "NavigationServer3D" "NavigationServer3DManager" "NinePatchRect" "Node" "Node2D" "Node3D" + "Node3DGizmo" "NodePath" "ORMMaterial3D" "OS" "Object" "Occluder3D" "OccluderInstance3D" + "OccluderPolygon2D" "OmniLight3D" "OptimizedTranslation" "OptionButton" "PCKPacker" + "PackedByteArray" "PackedColorArray" "PackedDataContainer" "PackedDataContainerRef" + "PackedFloat32Array" "PackedFloat64Array" "PackedInt32Array" "PackedInt64Array" "PackedScene" + "PackedStringArray" "PackedVector2Array" "PackedVector3Array" "PackedVector4Array" "PacketPeer" + "PacketPeerDTLS" "PacketPeerExtension" "PacketPeerStream" "PacketPeerUDP" "Panel" + "PanelContainer" "PanoramaSkyMaterial" "Parallax2D" "ParallaxBackground" "ParallaxLayer" + "ParticleProcessMaterial" "Path2D" "Path3D" "PathFollow2D" "PathFollow3D" "Performance" + "PhysicalBone2D" "PhysicalBone3D" "PhysicalBoneSimulator3D" "PhysicalSkyMaterial" + "PhysicsBody2D" "PhysicsBody3D" "PhysicsDirectBodyState2D" "PhysicsDirectBodyState2DExtension" + "PhysicsDirectBodyState3D" "PhysicsDirectBodyState3DExtension" "PhysicsDirectSpaceState2D" + "PhysicsDirectSpaceState2DExtension" "PhysicsDirectSpaceState3D" + "PhysicsDirectSpaceState3DExtension" "PhysicsMaterial" "PhysicsPointQueryParameters2D" + "PhysicsPointQueryParameters3D" "PhysicsRayQueryParameters2D" "PhysicsRayQueryParameters3D" + "PhysicsServer2D" "PhysicsServer2DExtension" "PhysicsServer2DManager" "PhysicsServer3D" + "PhysicsServer3DExtension" "PhysicsServer3DManager" "PhysicsServer3DRenderingServerHandler" + "PhysicsShapeQueryParameters2D" "PhysicsShapeQueryParameters3D" "PhysicsTestMotionParameters2D" + "PhysicsTestMotionParameters3D" "PhysicsTestMotionResult2D" "PhysicsTestMotionResult3D" + "PinJoint2D" "PinJoint3D" "PlaceholderCubemap" "PlaceholderCubemapArray" "PlaceholderMaterial" + "PlaceholderMesh" "PlaceholderTexture2D" "PlaceholderTexture2DArray" "PlaceholderTexture3D" + "PlaceholderTextureLayered" "Plane" "PlaneMesh" "PointLight2D" "PointMesh" "Polygon2D" + "PolygonOccluder3D" "PolygonPathFinder" "Popup" "PopupMenu" "PopupPanel" + "PortableCompressedTexture2D" "PrimitiveMesh" "PrismMesh" "ProceduralSkyMaterial" "ProgressBar" + "ProjectSettings" "Projection" "PropertyTweener" "QuadMesh" "QuadOccluder3D" "Quaternion" + "RDAttachmentFormat" "RDFramebufferPass" "RDPipelineColorBlendState" + "RDPipelineColorBlendStateAttachment" "RDPipelineDepthStencilState" "RDPipelineMultisampleState" + "RDPipelineRasterizationState" "RDPipelineSpecializationConstant" "RDSamplerState" + "RDShaderFile" "RDShaderSPIRV" "RDShaderSource" "RDTextureFormat" "RDTextureView" "RDUniform" + "RDVertexAttribute" "RID" "RandomNumberGenerator" "Range" "RayCast2D" "RayCast3D" "Rect2" + "Rect2i" "RectangleShape2D" "RefCounted" "ReferenceRect" "ReflectionProbe" "RemoteTransform2D" + "RemoteTransform3D" "RenderData" "RenderDataExtension" "RenderDataRD" "RenderSceneBuffers" + "RenderSceneBuffersConfiguration" "RenderSceneBuffersExtension" "RenderSceneBuffersRD" + "RenderSceneData" "RenderSceneDataExtension" "RenderSceneDataRD" "RenderingDevice" + "RenderingServer" "Resource" "ResourceFormatLoader" "ResourceFormatSaver" "ResourceImporter" + "ResourceImporterBMFont" "ResourceImporterBitMap" "ResourceImporterCSVTranslation" + "ResourceImporterDynamicFont" "ResourceImporterImage" "ResourceImporterImageFont" + "ResourceImporterLayeredTexture" "ResourceImporterOBJ" "ResourceImporterSVG" + "ResourceImporterScene" "ResourceImporterShaderFile" "ResourceImporterTexture" + "ResourceImporterTextureAtlas" "ResourceImporterWAV" "ResourceLoader" "ResourcePreloader" + "ResourceSaver" "ResourceUID" "RetargetModifier3D" "RibbonTrailMesh" "RichTextEffect" + "RichTextLabel" "RigidBody2D" "RigidBody3D" "RootMotionView" "SceneState" "SceneTree" + "SceneTreeTimer" "Script" "ScriptBacktrace" "ScriptCreateDialog" "ScriptEditor" + "ScriptEditorBase" "ScriptExtension" "ScriptLanguage" "ScriptLanguageExtension" "ScrollBar" + "ScrollContainer" "SegmentShape2D" "Semaphore" "SeparationRayShape2D" "SeparationRayShape3D" + "Separator" "Shader" "ShaderGlobalsOverride" "ShaderInclude" "ShaderIncludeDB" "ShaderMaterial" + "Shape2D" "Shape3D" "ShapeCast2D" "ShapeCast3D" "Shortcut" "Signal" "Skeleton2D" "Skeleton3D" + "SkeletonIK3D" "SkeletonModification2D" "SkeletonModification2DCCDIK" + "SkeletonModification2DFABRIK" "SkeletonModification2DJiggle" "SkeletonModification2DLookAt" + "SkeletonModification2DPhysicalBones" "SkeletonModification2DStackHolder" + "SkeletonModification2DTwoBoneIK" "SkeletonModificationStack2D" "SkeletonModifier3D" + "SkeletonProfile" "SkeletonProfileHumanoid" "Skin" "SkinReference" "Sky" "Slider" + "SliderJoint3D" "SocketServer" "SoftBody3D" "SphereMesh" "SphereOccluder3D" "SphereShape3D" + "SpinBox" "SplineIK3D" "SplitContainer" "SpotLight3D" "SpringArm3D" "SpringBoneCollision3D" + "SpringBoneCollisionCapsule3D" "SpringBoneCollisionPlane3D" "SpringBoneCollisionSphere3D" + "SpringBoneSimulator3D" "Sprite2D" "Sprite3D" "SpriteBase3D" "SpriteFrames" "StandardMaterial3D" + "StaticBody2D" "StaticBody3D" "StatusIndicator" "StreamPeer" "StreamPeerBuffer" + "StreamPeerExtension" "StreamPeerGZIP" "StreamPeerSocket" "StreamPeerTCP" "StreamPeerTLS" + "StreamPeerUDS" "String" "StringName" "StyleBox" "StyleBoxEmpty" "StyleBoxFlat" "StyleBoxLine" + "StyleBoxTexture" "SubViewport" "SubViewportContainer" "SubtweenTweener" "SurfaceTool" + "SyntaxHighlighter" "SystemFont" "TCPServer" "TLSOptions" "TabBar" "TabContainer" "TextEdit" + "TextLine" "TextMesh" "TextParagraph" "TextServer" "TextServerDummy" "TextServerExtension" + "TextServerManager" "Texture" "Texture2D" "Texture2DArray" "Texture2DArrayRD" "Texture2DRD" + "Texture3D" "Texture3DRD" "TextureButton" "TextureCubemapArrayRD" "TextureCubemapRD" + "TextureLayered" "TextureLayeredRD" "TextureProgressBar" "TextureRect" "Theme" "ThemeDB" + "Thread" "TileData" "TileMap" "TileMapLayer" "TileMapPattern" "TileSet" "TileSetAtlasSource" + "TileSetScenesCollectionSource" "TileSetSource" "Time" "Timer" "TorusMesh" "TouchScreenButton" + "Transform2D" "Transform3D" "Translation" "TranslationDomain" "TranslationServer" "Tree" + "TreeItem" "TriangleMesh" "TubeTrailMesh" "Tween" "Tweener" "TwoBoneIK3D" "UDPServer" + "UDSServer" "UndoRedo" "UniformSetCacheRD" "VBoxContainer" "VFlowContainer" "VScrollBar" + "VSeparator" "VSlider" "VSplitContainer" "Variant" "Vector2" "Vector2i" "Vector3" "Vector3i" + "Vector4" "Vector4i" "VehicleBody3D" "VehicleWheel3D" "VideoStream" "VideoStreamPlayback" + "VideoStreamPlayer" "Viewport" "ViewportTexture" "VisibleOnScreenEnabler2D" + "VisibleOnScreenEnabler3D" "VisibleOnScreenNotifier2D" "VisibleOnScreenNotifier3D" + "VisualInstance3D" "VisualShader" "VisualShaderNode" "VisualShaderNodeBillboard" + "VisualShaderNodeBooleanConstant" "VisualShaderNodeBooleanParameter" "VisualShaderNodeClamp" + "VisualShaderNodeColorConstant" "VisualShaderNodeColorFunc" "VisualShaderNodeColorOp" + "VisualShaderNodeColorParameter" "VisualShaderNodeComment" "VisualShaderNodeCompare" + "VisualShaderNodeConstant" "VisualShaderNodeCubemap" "VisualShaderNodeCubemapParameter" + "VisualShaderNodeCurveTexture" "VisualShaderNodeCurveXYZTexture" "VisualShaderNodeCustom" + "VisualShaderNodeDerivativeFunc" "VisualShaderNodeDeterminant" "VisualShaderNodeDistanceFade" + "VisualShaderNodeDotProduct" "VisualShaderNodeExpression" "VisualShaderNodeFaceForward" + "VisualShaderNodeFloatConstant" "VisualShaderNodeFloatFunc" "VisualShaderNodeFloatOp" + "VisualShaderNodeFloatParameter" "VisualShaderNodeFrame" "VisualShaderNodeFresnel" + "VisualShaderNodeGlobalExpression" "VisualShaderNodeGroupBase" "VisualShaderNodeIf" + "VisualShaderNodeInput" "VisualShaderNodeIntConstant" "VisualShaderNodeIntFunc" + "VisualShaderNodeIntOp" "VisualShaderNodeIntParameter" "VisualShaderNodeIs" + "VisualShaderNodeLinearSceneDepth" "VisualShaderNodeMix" "VisualShaderNodeMultiplyAdd" + "VisualShaderNodeOuterProduct" "VisualShaderNodeOutput" "VisualShaderNodeParameter" + "VisualShaderNodeParameterRef" "VisualShaderNodeParticleAccelerator" + "VisualShaderNodeParticleBoxEmitter" "VisualShaderNodeParticleConeVelocity" + "VisualShaderNodeParticleEmit" "VisualShaderNodeParticleEmitter" + "VisualShaderNodeParticleMeshEmitter" "VisualShaderNodeParticleMultiplyByAxisAngle" + "VisualShaderNodeParticleOutput" "VisualShaderNodeParticleRandomness" + "VisualShaderNodeParticleRingEmitter" "VisualShaderNodeParticleSphereEmitter" + "VisualShaderNodeProximityFade" "VisualShaderNodeRandomRange" "VisualShaderNodeRemap" + "VisualShaderNodeReroute" "VisualShaderNodeResizableBase" "VisualShaderNodeRotationByAxis" + "VisualShaderNodeSDFRaymarch" "VisualShaderNodeSDFToScreenUV" "VisualShaderNodeSample3D" + "VisualShaderNodeScreenNormalWorldSpace" "VisualShaderNodeScreenUVToSDF" + "VisualShaderNodeSmoothStep" "VisualShaderNodeStep" "VisualShaderNodeSwitch" + "VisualShaderNodeTexture" "VisualShaderNodeTexture2DArray" + "VisualShaderNodeTexture2DArrayParameter" "VisualShaderNodeTexture2DParameter" + "VisualShaderNodeTexture3D" "VisualShaderNodeTexture3DParameter" + "VisualShaderNodeTextureParameter" "VisualShaderNodeTextureParameterTriplanar" + "VisualShaderNodeTextureSDF" "VisualShaderNodeTextureSDFNormal" + "VisualShaderNodeTransformCompose" "VisualShaderNodeTransformConstant" + "VisualShaderNodeTransformDecompose" "VisualShaderNodeTransformFunc" + "VisualShaderNodeTransformOp" "VisualShaderNodeTransformParameter" + "VisualShaderNodeTransformVecMult" "VisualShaderNodeUIntConstant" "VisualShaderNodeUIntFunc" + "VisualShaderNodeUIntOp" "VisualShaderNodeUIntParameter" "VisualShaderNodeUVFunc" + "VisualShaderNodeUVPolarCoord" "VisualShaderNodeVarying" "VisualShaderNodeVaryingGetter" + "VisualShaderNodeVaryingSetter" "VisualShaderNodeVec2Constant" "VisualShaderNodeVec2Parameter" + "VisualShaderNodeVec3Constant" "VisualShaderNodeVec3Parameter" "VisualShaderNodeVec4Constant" + "VisualShaderNodeVec4Parameter" "VisualShaderNodeVectorBase" "VisualShaderNodeVectorCompose" + "VisualShaderNodeVectorDecompose" "VisualShaderNodeVectorDistance" "VisualShaderNodeVectorFunc" + "VisualShaderNodeVectorLen" "VisualShaderNodeVectorOp" "VisualShaderNodeVectorRefract" + "VisualShaderNodeWorldPositionFromDepth" "VoxelGI" "VoxelGIData" "WeakRef" "Window" + "WorkerThreadPool" "World2D" "World3D" "WorldBoundaryShape2D" "WorldBoundaryShape3D" + "WorldEnvironment" "X509Certificate" "XMLParser" "XRAnchor3D" "XRBodyModifier3D" "XRBodyTracker" + "XRCamera3D" "XRController3D" "XRControllerTracker" "XRFaceModifier3D" "XRFaceTracker" + "XRHandModifier3D" "XRHandTracker" "XRInterface" "XRInterfaceExtension" "XRNode3D" "XROrigin3D" + "XRPose" "XRPositionalTracker" "XRServer" "XRTracker" "XRVRS" "bool" "float" "int" ; from doc/classes/@GlobalScope.xml "AudioServer" "CameraServer" "ClassDB" "DisplayServer" "EditorInterface" "Engine" "EngineDebugger" "GDExtensionManager" "Geometry2D" "Geometry3D" "GodotSharp" "IP" "Input" @@ -307,7 +514,7 @@ "var_to_str" "weakref" "wrap" "wrapf" "wrapi" ; from modules/gdscript/doc_classes/@GDScript.xml "Color8" "assert" "char" "convert" "dict_to_inst" "get_stack" "inst_to_dict" "is_instance_of" - "len" "load" "preload" "print_debug" "print_stack" "range" "type_exists")) + "len" "load" "ord" "preload" "print_debug" "print_stack" "range" "type_exists")) ; Builtin Constants ((identifier) @constant.builtin @@ -322,7 +529,7 @@ "ERR_DATABASE_CANT_READ" "ERR_DATABASE_CANT_WRITE" "ERR_DOES_NOT_EXIST" "ERR_DUPLICATE_SYMBOL" "ERR_FILE_ALREADY_IN_USE" "ERR_FILE_BAD_DRIVE" "ERR_FILE_BAD_PATH" "ERR_FILE_CANT_OPEN" "ERR_FILE_CANT_READ" "ERR_FILE_CANT_WRITE" "ERR_FILE_CORRUPT" "ERR_FILE_EOF" - "ERR_FILE_MISSING_DEPENDENCIES" "ERR_FILE_NOT_FOUND" "ERR_FILE_NO_PERMISSION" + "ERR_FILE_MISSING_DEPENDENCIES" "ERR_FILE_NO_PERMISSION" "ERR_FILE_NOT_FOUND" "ERR_FILE_UNRECOGNIZED" "ERR_HELP" "ERR_INVALID_DATA" "ERR_INVALID_DECLARATION" "ERR_INVALID_PARAMETER" "ERR_LINK_FAILED" "ERR_LOCKED" "ERR_METHOD_NOT_FOUND" "ERR_OUT_OF_MEMORY" "ERR_PARAMETER_RANGE_ERROR" "ERR_PARSE_ERROR" "ERR_PRINTER_ON_FIRE" @@ -332,9 +539,9 @@ "HORIZONTAL_ALIGNMENT_CENTER" "HORIZONTAL_ALIGNMENT_FILL" "HORIZONTAL_ALIGNMENT_LEFT" "HORIZONTAL_ALIGNMENT_RIGHT" "INLINE_ALIGNMENT_BASELINE_TO" "INLINE_ALIGNMENT_BOTTOM" "INLINE_ALIGNMENT_BOTTOM_TO" "INLINE_ALIGNMENT_CENTER" "INLINE_ALIGNMENT_CENTER_TO" - "INLINE_ALIGNMENT_IMAGE_MASK" "INLINE_ALIGNMENT_TEXT_MASK" "INLINE_ALIGNMENT_TOP" - "INLINE_ALIGNMENT_TOP_TO" "INLINE_ALIGNMENT_TO_BASELINE" "INLINE_ALIGNMENT_TO_BOTTOM" - "INLINE_ALIGNMENT_TO_CENTER" "INLINE_ALIGNMENT_TO_TOP" "JOY_AXIS_INVALID" "JOY_AXIS_LEFT_X" + "INLINE_ALIGNMENT_IMAGE_MASK" "INLINE_ALIGNMENT_TEXT_MASK" "INLINE_ALIGNMENT_TO_BASELINE" + "INLINE_ALIGNMENT_TO_BOTTOM" "INLINE_ALIGNMENT_TO_CENTER" "INLINE_ALIGNMENT_TOP" + "INLINE_ALIGNMENT_TOP_TO" "INLINE_ALIGNMENT_TO_TOP" "JOY_AXIS_INVALID" "JOY_AXIS_LEFT_X" "JOY_AXIS_LEFT_Y" "JOY_AXIS_MAX" "JOY_AXIS_RIGHT_X" "JOY_AXIS_RIGHT_Y" "JOY_AXIS_SDL_MAX" "JOY_AXIS_TRIGGER_LEFT" "JOY_AXIS_TRIGGER_RIGHT" "JOY_BUTTON_A" "JOY_BUTTON_B" "JOY_BUTTON_BACK" "JOY_BUTTON_DPAD_DOWN" "JOY_BUTTON_DPAD_LEFT" "JOY_BUTTON_DPAD_RIGHT" "JOY_BUTTON_DPAD_UP" @@ -370,11 +577,11 @@ "KEY_SECTION" "KEY_SEMICOLON" "KEY_SHIFT" "KEY_SLASH" "KEY_SPACE" "KEY_SPECIAL" "KEY_STANDBY" "KEY_STOP" "KEY_SYSREQ" "KEY_T" "KEY_TAB" "KEY_U" "KEY_UNDERSCORE" "KEY_UNKNOWN" "KEY_UP" "KEY_V" "KEY_VOLUMEDOWN" "KEY_VOLUMEMUTE" "KEY_VOLUMEUP" "KEY_W" "KEY_X" "KEY_Y" "KEY_YEN" - "KEY_Z" "METHOD_FLAGS_DEFAULT" "METHOD_FLAG_CONST" "METHOD_FLAG_EDITOR" "METHOD_FLAG_NORMAL" - "METHOD_FLAG_OBJECT_CORE" "METHOD_FLAG_STATIC" "METHOD_FLAG_VARARG" "METHOD_FLAG_VIRTUAL" - "MIDI_MESSAGE_ACTIVE_SENSING" "MIDI_MESSAGE_AFTERTOUCH" "MIDI_MESSAGE_CHANNEL_PRESSURE" - "MIDI_MESSAGE_CONTINUE" "MIDI_MESSAGE_CONTROL_CHANGE" "MIDI_MESSAGE_NONE" - "MIDI_MESSAGE_NOTE_OFF" "MIDI_MESSAGE_NOTE_ON" "MIDI_MESSAGE_PITCH_BEND" + "KEY_Z" "METHOD_FLAG_CONST" "METHOD_FLAG_EDITOR" "METHOD_FLAG_NORMAL" "METHOD_FLAG_OBJECT_CORE" + "METHOD_FLAGS_DEFAULT" "METHOD_FLAG_STATIC" "METHOD_FLAG_VARARG" "METHOD_FLAG_VIRTUAL" + "METHOD_FLAG_VIRTUAL_REQUIRED" "MIDI_MESSAGE_ACTIVE_SENSING" "MIDI_MESSAGE_AFTERTOUCH" + "MIDI_MESSAGE_CHANNEL_PRESSURE" "MIDI_MESSAGE_CONTINUE" "MIDI_MESSAGE_CONTROL_CHANGE" + "MIDI_MESSAGE_NONE" "MIDI_MESSAGE_NOTE_OFF" "MIDI_MESSAGE_NOTE_ON" "MIDI_MESSAGE_PITCH_BEND" "MIDI_MESSAGE_PROGRAM_CHANGE" "MIDI_MESSAGE_QUARTER_FRAME" "MIDI_MESSAGE_SONG_POSITION_POINTER" "MIDI_MESSAGE_SONG_SELECT" "MIDI_MESSAGE_START" "MIDI_MESSAGE_STOP" "MIDI_MESSAGE_SYSTEM_EXCLUSIVE" "MIDI_MESSAGE_SYSTEM_RESET" "MIDI_MESSAGE_TIMING_CLOCK" @@ -387,40 +594,42 @@ "OP_GREATER_EQUAL" "OP_IN" "OP_LESS" "OP_LESS_EQUAL" "OP_MAX" "OP_MODULE" "OP_MULTIPLY" "OP_NEGATE" "OP_NOT" "OP_NOT_EQUAL" "OP_OR" "OP_POSITIVE" "OP_POWER" "OP_SHIFT_LEFT" "OP_SHIFT_RIGHT" "OP_SUBTRACT" "OP_XOR" "PROPERTY_HINT_ARRAY_TYPE" - "PROPERTY_HINT_COLOR_NO_ALPHA" "PROPERTY_HINT_DIR" "PROPERTY_HINT_ENUM" - "PROPERTY_HINT_ENUM_SUGGESTION" "PROPERTY_HINT_EXPRESSION" "PROPERTY_HINT_EXP_EASING" - "PROPERTY_HINT_FILE" "PROPERTY_HINT_FLAGS" "PROPERTY_HINT_GLOBAL_DIR" - "PROPERTY_HINT_GLOBAL_FILE" "PROPERTY_HINT_GLOBAL_SAVE_FILE" - "PROPERTY_HINT_HIDE_QUATERNION_EDIT" "PROPERTY_HINT_INT_IS_OBJECTID" - "PROPERTY_HINT_INT_IS_POINTER" "PROPERTY_HINT_LAYERS_2D_NAVIGATION" - "PROPERTY_HINT_LAYERS_2D_PHYSICS" "PROPERTY_HINT_LAYERS_2D_RENDER" - "PROPERTY_HINT_LAYERS_3D_NAVIGATION" "PROPERTY_HINT_LAYERS_3D_PHYSICS" - "PROPERTY_HINT_LAYERS_3D_RENDER" "PROPERTY_HINT_LAYERS_AVOIDANCE" "PROPERTY_HINT_LINK" - "PROPERTY_HINT_LOCALE_ID" "PROPERTY_HINT_LOCALIZABLE_STRING" "PROPERTY_HINT_MAX" - "PROPERTY_HINT_MULTILINE_TEXT" "PROPERTY_HINT_NODE_PATH_TO_EDITED_NODE" - "PROPERTY_HINT_NODE_PATH_VALID_TYPES" "PROPERTY_HINT_NODE_TYPE" "PROPERTY_HINT_NONE" - "PROPERTY_HINT_OBJECT_ID" "PROPERTY_HINT_OBJECT_TOO_BIG" "PROPERTY_HINT_PASSWORD" + "PROPERTY_HINT_COLOR_NO_ALPHA" "PROPERTY_HINT_DICTIONARY_TYPE" "PROPERTY_HINT_DIR" + "PROPERTY_HINT_ENUM" "PROPERTY_HINT_ENUM_SUGGESTION" "PROPERTY_HINT_EXP_EASING" + "PROPERTY_HINT_EXPRESSION" "PROPERTY_HINT_FILE" "PROPERTY_HINT_FILE_PATH" "PROPERTY_HINT_FLAGS" + "PROPERTY_HINT_GLOBAL_DIR" "PROPERTY_HINT_GLOBAL_FILE" "PROPERTY_HINT_GLOBAL_SAVE_FILE" + "PROPERTY_HINT_GROUP_ENABLE" "PROPERTY_HINT_HIDE_QUATERNION_EDIT" "PROPERTY_HINT_INPUT_NAME" + "PROPERTY_HINT_INT_IS_OBJECTID" "PROPERTY_HINT_INT_IS_POINTER" + "PROPERTY_HINT_LAYERS_2D_NAVIGATION" "PROPERTY_HINT_LAYERS_2D_PHYSICS" + "PROPERTY_HINT_LAYERS_2D_RENDER" "PROPERTY_HINT_LAYERS_3D_NAVIGATION" + "PROPERTY_HINT_LAYERS_3D_PHYSICS" "PROPERTY_HINT_LAYERS_3D_RENDER" + "PROPERTY_HINT_LAYERS_AVOIDANCE" "PROPERTY_HINT_LINK" "PROPERTY_HINT_LOCALE_ID" + "PROPERTY_HINT_LOCALIZABLE_STRING" "PROPERTY_HINT_MAX" "PROPERTY_HINT_MULTILINE_TEXT" + "PROPERTY_HINT_NODE_PATH_TO_EDITED_NODE" "PROPERTY_HINT_NODE_PATH_VALID_TYPES" + "PROPERTY_HINT_NODE_TYPE" "PROPERTY_HINT_NONE" "PROPERTY_HINT_OBJECT_ID" + "PROPERTY_HINT_OBJECT_TOO_BIG" "PROPERTY_HINT_ONESHOT" "PROPERTY_HINT_PASSWORD" "PROPERTY_HINT_PLACEHOLDER_TEXT" "PROPERTY_HINT_RANGE" "PROPERTY_HINT_RESOURCE_TYPE" - "PROPERTY_HINT_SAVE_FILE" "PROPERTY_HINT_TYPE_STRING" "PROPERTY_USAGE_ALWAYS_DUPLICATE" - "PROPERTY_USAGE_ARRAY" "PROPERTY_USAGE_CATEGORY" "PROPERTY_USAGE_CHECKABLE" - "PROPERTY_USAGE_CHECKED" "PROPERTY_USAGE_CLASS_IS_BITFIELD" "PROPERTY_USAGE_CLASS_IS_ENUM" - "PROPERTY_USAGE_DEFAULT" "PROPERTY_USAGE_DEFERRED_SET_RESOURCE" "PROPERTY_USAGE_EDITOR" - "PROPERTY_USAGE_EDITOR_BASIC_SETTING" "PROPERTY_USAGE_EDITOR_INSTANTIATE_OBJECT" - "PROPERTY_USAGE_GROUP" "PROPERTY_USAGE_HIGH_END_GFX" "PROPERTY_USAGE_INTERNAL" - "PROPERTY_USAGE_KEYING_INCREMENTS" "PROPERTY_USAGE_NEVER_DUPLICATE" - "PROPERTY_USAGE_NIL_IS_VARIANT" "PROPERTY_USAGE_NODE_PATH_FROM_SCENE_ROOT" "PROPERTY_USAGE_NONE" - "PROPERTY_USAGE_NO_EDITOR" "PROPERTY_USAGE_NO_INSTANCE_STATE" "PROPERTY_USAGE_READ_ONLY" - "PROPERTY_USAGE_RESOURCE_NOT_PERSISTENT" "PROPERTY_USAGE_RESTART_IF_CHANGED" - "PROPERTY_USAGE_SCRIPT_DEFAULT_VALUE" "PROPERTY_USAGE_SCRIPT_VARIABLE" "PROPERTY_USAGE_SECRET" - "PROPERTY_USAGE_STORAGE" "PROPERTY_USAGE_STORE_IF_NULL" "PROPERTY_USAGE_SUBGROUP" - "PROPERTY_USAGE_UPDATE_ALL_IF_MODIFIED" "SIDE_BOTTOM" "SIDE_LEFT" "SIDE_RIGHT" "SIDE_TOP" - "TYPE_AABB" "TYPE_ARRAY" "TYPE_BASIS" "TYPE_BOOL" "TYPE_CALLABLE" "TYPE_COLOR" "TYPE_DICTIONARY" - "TYPE_FLOAT" "TYPE_INT" "TYPE_MAX" "TYPE_NIL" "TYPE_NODE_PATH" "TYPE_OBJECT" - "TYPE_PACKED_BYTE_ARRAY" "TYPE_PACKED_COLOR_ARRAY" "TYPE_PACKED_FLOAT32_ARRAY" - "TYPE_PACKED_FLOAT64_ARRAY" "TYPE_PACKED_INT32_ARRAY" "TYPE_PACKED_INT64_ARRAY" - "TYPE_PACKED_STRING_ARRAY" "TYPE_PACKED_VECTOR2_ARRAY" "TYPE_PACKED_VECTOR3_ARRAY" "TYPE_PLANE" - "TYPE_PROJECTION" "TYPE_QUATERNION" "TYPE_RECT2" "TYPE_RECT2I" "TYPE_RID" "TYPE_SIGNAL" - "TYPE_STRING" "TYPE_STRING_NAME" "TYPE_TRANSFORM2D" "TYPE_TRANSFORM3D" "TYPE_VECTOR2" - "TYPE_VECTOR2I" "TYPE_VECTOR3" "TYPE_VECTOR3I" "TYPE_VECTOR4" "TYPE_VECTOR4I" "VERTICAL" + "PROPERTY_HINT_SAVE_FILE" "PROPERTY_HINT_TOOL_BUTTON" "PROPERTY_HINT_TYPE_STRING" + "PROPERTY_USAGE_ALWAYS_DUPLICATE" "PROPERTY_USAGE_ARRAY" "PROPERTY_USAGE_CATEGORY" + "PROPERTY_USAGE_CHECKABLE" "PROPERTY_USAGE_CHECKED" "PROPERTY_USAGE_CLASS_IS_BITFIELD" + "PROPERTY_USAGE_CLASS_IS_ENUM" "PROPERTY_USAGE_DEFAULT" "PROPERTY_USAGE_DEFERRED_SET_RESOURCE" + "PROPERTY_USAGE_EDITOR" "PROPERTY_USAGE_EDITOR_BASIC_SETTING" + "PROPERTY_USAGE_EDITOR_INSTANTIATE_OBJECT" "PROPERTY_USAGE_GROUP" "PROPERTY_USAGE_HIGH_END_GFX" + "PROPERTY_USAGE_INTERNAL" "PROPERTY_USAGE_KEYING_INCREMENTS" "PROPERTY_USAGE_NEVER_DUPLICATE" + "PROPERTY_USAGE_NIL_IS_VARIANT" "PROPERTY_USAGE_NODE_PATH_FROM_SCENE_ROOT" + "PROPERTY_USAGE_NO_EDITOR" "PROPERTY_USAGE_NO_INSTANCE_STATE" "PROPERTY_USAGE_NONE" + "PROPERTY_USAGE_READ_ONLY" "PROPERTY_USAGE_RESOURCE_NOT_PERSISTENT" + "PROPERTY_USAGE_RESTART_IF_CHANGED" "PROPERTY_USAGE_SCRIPT_DEFAULT_VALUE" + "PROPERTY_USAGE_SCRIPT_VARIABLE" "PROPERTY_USAGE_SECRET" "PROPERTY_USAGE_STORAGE" + "PROPERTY_USAGE_STORE_IF_NULL" "PROPERTY_USAGE_SUBGROUP" "PROPERTY_USAGE_UPDATE_ALL_IF_MODIFIED" + "SIDE_BOTTOM" "SIDE_LEFT" "SIDE_RIGHT" "SIDE_TOP" "TYPE_AABB" "TYPE_ARRAY" "TYPE_BASIS" + "TYPE_BOOL" "TYPE_CALLABLE" "TYPE_COLOR" "TYPE_DICTIONARY" "TYPE_FLOAT" "TYPE_INT" "TYPE_MAX" + "TYPE_NIL" "TYPE_NODE_PATH" "TYPE_OBJECT" "TYPE_PACKED_BYTE_ARRAY" "TYPE_PACKED_COLOR_ARRAY" + "TYPE_PACKED_FLOAT32_ARRAY" "TYPE_PACKED_FLOAT64_ARRAY" "TYPE_PACKED_INT32_ARRAY" + "TYPE_PACKED_INT64_ARRAY" "TYPE_PACKED_STRING_ARRAY" "TYPE_PACKED_VECTOR2_ARRAY" + "TYPE_PACKED_VECTOR3_ARRAY" "TYPE_PACKED_VECTOR4_ARRAY" "TYPE_PLANE" "TYPE_PROJECTION" + "TYPE_QUATERNION" "TYPE_RECT2" "TYPE_RECT2I" "TYPE_RID" "TYPE_SIGNAL" "TYPE_STRING" + "TYPE_STRING_NAME" "TYPE_TRANSFORM2D" "TYPE_TRANSFORM3D" "TYPE_VECTOR2" "TYPE_VECTOR2I" + "TYPE_VECTOR3" "TYPE_VECTOR3I" "TYPE_VECTOR4" "TYPE_VECTOR4I" "VERTICAL" "VERTICAL_ALIGNMENT_BOTTOM" "VERTICAL_ALIGNMENT_CENTER" "VERTICAL_ALIGNMENT_FILL" "VERTICAL_ALIGNMENT_TOP")) diff --git a/runtime/queries/gleam/highlights.scm b/runtime/queries/gleam/highlights.scm index f80bda240..f25926f92 100644 --- a/runtime/queries/gleam/highlights.scm +++ b/runtime/queries/gleam/highlights.scm @@ -106,7 +106,7 @@ (string) @string ; Bit Strings -(bit_string_segment) @string.special +(bit_array_segment) @string.special ; Numbers (integer) @number diff --git a/runtime/queries/glimmer/injections.scm b/runtime/queries/glimmer/injections.scm index 30b438682..9efa71f5e 100644 --- a/runtime/queries/glimmer/injections.scm +++ b/runtime/queries/glimmer/injections.scm @@ -3,19 +3,12 @@ (#set! injection.language "comment")) ;