mirror of
https://github.com/nvim-treesitter/nvim-treesitter.git
synced 2026-07-15 09:50:04 -04:00
feat: add parser tiers
Tier 1: Stable Tier 2: Core (maintained by org members) Tier 3: Community (maintained by external contributors, to varying degree) Tier 4: Unsupported (lacking active maintainer or declared experimental); skipped in lockfile update and ignored for automatic install by default
This commit is contained in:
parent
c9ee49f61d
commit
0ce8619a25
8 changed files with 390 additions and 242 deletions
|
|
@ -53,11 +53,11 @@ require('lazy').setup(
|
||||||
|
|
||||||
```lua
|
```lua
|
||||||
require'nvim-treesitter'.setup {
|
require'nvim-treesitter'.setup {
|
||||||
-- A list of parser names or tiers ('core', 'stable', 'community', 'unstable')
|
-- A list of parser names or tiers ('stable', 'core', 'community', 'unsupported')
|
||||||
ensure_install = { },
|
ensure_install = { },
|
||||||
|
|
||||||
-- List of parsers to ignore installing
|
-- List of parsers to ignore installing
|
||||||
ignore_install = { },
|
ignore_install = { 'unsupported' },
|
||||||
|
|
||||||
-- Automatically install missing parsers when entering buffer
|
-- Automatically install missing parsers when entering buffer
|
||||||
auto_install = false,
|
auto_install = false,
|
||||||
|
|
|
||||||
|
|
@ -3,7 +3,7 @@
|
||||||
The following is a list of languages for which a parser can be installed through `:TSInstall`.
|
The following is a list of languages for which a parser can be installed through `:TSInstall`.
|
||||||
|
|
||||||
Legend:
|
Legend:
|
||||||
- **Tier:** _core_, _stable_, _community_, or _unstable_
|
- **Tier:** _stable_, _core_, _community_, or _unsupported_
|
||||||
- **CLI:** `:TSInstall` requires `tree-sitter` CLI installed
|
- **CLI:** `:TSInstall` requires `tree-sitter` CLI installed
|
||||||
- **NPM:** `:TSInstallFromGrammar` requires `node` installed
|
- **NPM:** `:TSInstallFromGrammar` requires `node` installed
|
||||||
- **Queries** available for **H**ighlights, **I**ndents, **F**olds, In**J**ections, **L**ocals
|
- **Queries** available for **H**ighlights, **I**ndents, **F**olds, In**J**ections, **L**ocals
|
||||||
|
|
@ -12,228 +12,227 @@ Legend:
|
||||||
<!--parserinfo-->
|
<!--parserinfo-->
|
||||||
Language | Tier | Queries | CLI | NPM | Maintainer
|
Language | Tier | Queries | CLI | NPM | Maintainer
|
||||||
-------- |:----:|:-------:|:---:|:---:| ----------
|
-------- |:----:|:-------:|:---:|:---:| ----------
|
||||||
[ada](https://github.com/briot/tree-sitter-ada) | | `HF L` | | | @briot
|
[ada](https://github.com/briot/tree-sitter-ada) | community | `HF L` | | | @briot
|
||||||
[agda](https://github.com/AusCyberman/tree-sitter-agda) | | `HF ` | | | @Decodetalkers
|
[agda](https://github.com/AusCyberman/tree-sitter-agda) | community | `HF ` | | | @Decodetalkers
|
||||||
[arduino](https://github.com/ObserverOfTime/tree-sitter-arduino) | | `HFIJL` | | | @ObserverOfTime
|
[arduino](https://github.com/ObserverOfTime/tree-sitter-arduino) | core | `HFIJL` | | | @ObserverOfTime
|
||||||
[astro](https://github.com/virchau13/tree-sitter-astro) | | `HFIJL` | | | @virchau13
|
[astro](https://github.com/virchau13/tree-sitter-astro) | community | `HFIJL` | | | @virchau13
|
||||||
[awk](https://github.com/Beaglefoot/tree-sitter-awk) | | `H J ` | | |
|
[awk](https://github.com/Beaglefoot/tree-sitter-awk) | unsupported | `H J ` | | |
|
||||||
[bash](https://github.com/tree-sitter/tree-sitter-bash) | | `HF JL` | | | @TravonteD
|
[bash](https://github.com/tree-sitter/tree-sitter-bash) | community | `HF JL` | | | @TravonteD
|
||||||
[bass](https://github.com/amaanq/tree-sitter-bass) | | `HFIJL` | | | @amaanq
|
[bass](https://github.com/amaanq/tree-sitter-bass) | core | `HFIJL` | | | @amaanq
|
||||||
[beancount](https://github.com/polarmutex/tree-sitter-beancount) | | `HF ` | | | @polarmutex
|
[beancount](https://github.com/polarmutex/tree-sitter-beancount) | community | `HF ` | | | @polarmutex
|
||||||
[bibtex](https://github.com/latex-lsp/tree-sitter-bibtex) | community | `HFI ` | | | @theHamsta, @clason
|
[bibtex](https://github.com/latex-lsp/tree-sitter-bibtex) | core | `HFI ` | | | @theHamsta, @clason
|
||||||
[bicep](https://github.com/amaanq/tree-sitter-bicep) | | `HFIJL` | | | @amaanq
|
[bicep](https://github.com/amaanq/tree-sitter-bicep) | core | `HFIJL` | | | @amaanq
|
||||||
[bitbake](https://github.com/amaanq/tree-sitter-bitbake) | stable | `HFIJL` | | | @amaanq
|
[bitbake](https://github.com/amaanq/tree-sitter-bitbake) | core | `HFIJL` | | | @amaanq
|
||||||
[blueprint](https://gitlab.com/gabmus/tree-sitter-blueprint.git) | unstable | `H ` | | | @gabmus
|
[blueprint](https://gitlab.com/gabmus/tree-sitter-blueprint.git) | unsupported | `H ` | | | @gabmus
|
||||||
[c](https://github.com/tree-sitter/tree-sitter-c) | core | `HFIJL` | | | @amaanq
|
[c](https://github.com/tree-sitter/tree-sitter-c) | stable | `HFIJL` | | | @amaanq
|
||||||
[c_sharp](https://github.com/tree-sitter/tree-sitter-c-sharp) | | `HF JL` | | | @Luxed
|
[c_sharp](https://github.com/tree-sitter/tree-sitter-c-sharp) | community | `HF JL` | | | @Luxed
|
||||||
[cairo](https://github.com/amaanq/tree-sitter-cairo) | stable | `HFIJL` | | | @amaanq
|
[cairo](https://github.com/amaanq/tree-sitter-cairo) | core | `HFIJL` | | | @amaanq
|
||||||
[capnp](https://github.com/amaanq/tree-sitter-capnp) | | `HFIJL` | | | @amaanq
|
[capnp](https://github.com/amaanq/tree-sitter-capnp) | core | `HFIJL` | | | @amaanq
|
||||||
[chatito](https://github.com/ObserverOfTime/tree-sitter-chatito) | | `HFIJL` | | | @ObserverOfTime
|
[chatito](https://github.com/ObserverOfTime/tree-sitter-chatito) | core | `HFIJL` | | | @ObserverOfTime
|
||||||
[clojure](https://github.com/sogaiu/tree-sitter-clojure) | | `HF JL` | | | @sogaiu
|
[clojure](https://github.com/sogaiu/tree-sitter-clojure) | community | `HF JL` | | | @sogaiu
|
||||||
[cmake](https://github.com/uyha/tree-sitter-cmake) | | `HFI ` | | | @uyha
|
[cmake](https://github.com/uyha/tree-sitter-cmake) | unsupported | `HFI ` | | | @uyha
|
||||||
[comment](https://github.com/stsewd/tree-sitter-comment) | stable | `H ` | | | @stsewd
|
[comment](https://github.com/stsewd/tree-sitter-comment) | core | `H ` | | | @stsewd
|
||||||
[commonlisp](https://github.com/theHamsta/tree-sitter-commonlisp) | | `HF L` | | ✓ | @theHamsta
|
[commonlisp](https://github.com/theHamsta/tree-sitter-commonlisp) | core | `HF L` | | ✓ | @theHamsta
|
||||||
[cooklang](https://github.com/addcninblue/tree-sitter-cooklang) | | `H ` | | | @addcninblue
|
[cooklang](https://github.com/addcninblue/tree-sitter-cooklang) | community | `H ` | | | @addcninblue
|
||||||
[corn](https://github.com/jakestanger/tree-sitter-corn) | community | `HFI L` | | | @jakestanger
|
[corn](https://github.com/jakestanger/tree-sitter-corn) | community | `HFI L` | | | @jakestanger
|
||||||
[cpon](https://github.com/amaanq/tree-sitter-cpon) | | `HFIJL` | | | @amaanq
|
[cpon](https://github.com/amaanq/tree-sitter-cpon) | core | `HFIJL` | | | @amaanq
|
||||||
[cpp](https://github.com/tree-sitter/tree-sitter-cpp) | | `HFIJL` | | ✓ | @theHamsta
|
[cpp](https://github.com/tree-sitter/tree-sitter-cpp) | stable | `HFIJL` | | ✓ | @theHamsta
|
||||||
[css](https://github.com/tree-sitter/tree-sitter-css) | | `HFIJ ` | | | @TravonteD
|
[css](https://github.com/tree-sitter/tree-sitter-css) | community | `HFIJ ` | | | @TravonteD
|
||||||
[csv](https://github.com/amaanq/tree-sitter-csv) | stable | `H ` | | | @amaanq
|
[csv](https://github.com/amaanq/tree-sitter-csv) | core | `H ` | | | @amaanq
|
||||||
[cuda](https://github.com/theHamsta/tree-sitter-cuda) | | `HFIJL` | | ✓ | @theHamsta
|
[cuda](https://github.com/theHamsta/tree-sitter-cuda) | core | `HFIJL` | | ✓ | @theHamsta
|
||||||
[cue](https://github.com/eonpatapon/tree-sitter-cue) | | `HFIJL` | | | @amaanq
|
[cue](https://github.com/eonpatapon/tree-sitter-cue) | core | `HFIJL` | | | @amaanq
|
||||||
[d](https://github.com/CyberShadow/tree-sitter-d) | unstable | `HFIJ ` | ✓ | | @nawordar
|
[d](https://github.com/CyberShadow/tree-sitter-d) | unsupported | `HFIJ ` | ✓ | | @nawordar
|
||||||
[dart](https://github.com/UserNobody14/tree-sitter-dart) | | `HFIJL` | | | @akinsho
|
[dart](https://github.com/UserNobody14/tree-sitter-dart) | unsupported | `HFIJL` | | | @akinsho
|
||||||
[devicetree](https://github.com/joelspadin/tree-sitter-devicetree) | | `HFIJL` | | | @jedrzejboczar
|
[devicetree](https://github.com/joelspadin/tree-sitter-devicetree) | community | `HFIJL` | | | @jedrzejboczar
|
||||||
[dhall](https://github.com/jbellerb/tree-sitter-dhall) | | `HF J ` | | | @amaanq
|
[dhall](https://github.com/jbellerb/tree-sitter-dhall) | core | `HF J ` | | | @amaanq
|
||||||
[diff](https://github.com/the-mikedavis/tree-sitter-diff) | | `H ` | | | @gbprod
|
[diff](https://github.com/the-mikedavis/tree-sitter-diff) | community | `H ` | | | @gbprod
|
||||||
[dockerfile](https://github.com/camdencheek/tree-sitter-dockerfile) | | `H J ` | | | @camdencheek
|
[dockerfile](https://github.com/camdencheek/tree-sitter-dockerfile) | community | `H J ` | | | @camdencheek
|
||||||
[dot](https://github.com/rydesun/tree-sitter-dot) | | `H J ` | | | @rydesun
|
[dot](https://github.com/rydesun/tree-sitter-dot) | community | `H J ` | | | @rydesun
|
||||||
[doxygen](https://github.com/amaanq/tree-sitter-doxygen) | stable | `H IJ ` | | | @amaanq
|
[doxygen](https://github.com/amaanq/tree-sitter-doxygen) | core | `H IJ ` | | | @amaanq
|
||||||
[dtd](https://github.com/ObserverOfTime/tree-sitter-xml) | stable | `HF J ` | | | @ObserverOfTime
|
[dtd](https://github.com/ObserverOfTime/tree-sitter-xml) | core | `HF J ` | | | @ObserverOfTime
|
||||||
[ebnf](https://github.com/RubixDev/ebnf) | unstable | `H ` | | | @RubixDev
|
[ebnf](https://github.com/RubixDev/ebnf) | unsupported | `H ` | | | @RubixDev
|
||||||
ecma (queries only)[^ecma] | | `HFIJL` | | | @steelsojka
|
ecma (queries only)[^ecma] | core | `HFIJL` | | | @steelsojka
|
||||||
[eex](https://github.com/connorlay/tree-sitter-eex) | | `H J ` | | | @connorlay
|
[eex](https://github.com/connorlay/tree-sitter-eex) | community | `H J ` | | | @connorlay
|
||||||
[elixir](https://github.com/elixir-lang/tree-sitter-elixir) | | `HFIJL` | | | @connorlay
|
[elixir](https://github.com/elixir-lang/tree-sitter-elixir) | community | `HFIJL` | | | @connorlay
|
||||||
[elm](https://github.com/elm-tooling/tree-sitter-elm) | | `H J ` | | | @zweimach
|
[elm](https://github.com/elm-tooling/tree-sitter-elm) | unsupported | `H J ` | | | @zweimach
|
||||||
[elsa](https://github.com/glapa-grossklag/tree-sitter-elsa) | | `HFIJL` | | | @glapa-grossklag, @amaanq
|
[elsa](https://github.com/glapa-grossklag/tree-sitter-elsa) | core | `HFIJL` | | | @glapa-grossklag, @amaanq
|
||||||
[elvish](https://github.com/elves/tree-sitter-elvish) | | `H J ` | | | @elves
|
[elvish](https://github.com/elves/tree-sitter-elvish) | community | `H J ` | | | @elves
|
||||||
[embedded_template](https://github.com/tree-sitter/tree-sitter-embedded-template) | unstable | `H J ` | | |
|
[embedded_template](https://github.com/tree-sitter/tree-sitter-embedded-template) | unsupported | `H J ` | | |
|
||||||
[erlang](https://github.com/WhatsApp/tree-sitter-erlang) | | `HF ` | | | @filmor
|
[erlang](https://github.com/WhatsApp/tree-sitter-erlang) | community | `HF ` | | | @filmor
|
||||||
[fennel](https://github.com/travonted/tree-sitter-fennel) | | `HF JL` | | | @TravonteD
|
[fennel](https://github.com/travonted/tree-sitter-fennel) | community | `HF JL` | | | @TravonteD
|
||||||
[firrtl](https://github.com/amaanq/tree-sitter-firrtl) | | `HFIJL` | | | @amaanq
|
[firrtl](https://github.com/amaanq/tree-sitter-firrtl) | core | `HFIJL` | | | @amaanq
|
||||||
[fish](https://github.com/ram02z/tree-sitter-fish) | | `HFIJL` | | | @ram02z
|
[fish](https://github.com/ram02z/tree-sitter-fish) | community | `HFIJL` | | | @ram02z
|
||||||
[foam](https://github.com/FoamScience/tree-sitter-foam) | unstable | `HFIJL` | | | @FoamScience
|
[foam](https://github.com/FoamScience/tree-sitter-foam) | community | `HFIJL` | | | @FoamScience
|
||||||
[forth](https://github.com/AlexanderBrevig/tree-sitter-forth) | stable | `HFIJL` | | | @amaanq
|
[forth](https://github.com/AlexanderBrevig/tree-sitter-forth) | core | `HFIJL` | | | @amaanq
|
||||||
[fortran](https://github.com/stadelmanma/tree-sitter-fortran) | | `HFI ` | | | @amaanq
|
[fortran](https://github.com/stadelmanma/tree-sitter-fortran) | core | `HFI ` | | | @amaanq
|
||||||
[fsh](https://github.com/mgramigna/tree-sitter-fsh) | | `H ` | | | @mgramigna
|
[fsh](https://github.com/mgramigna/tree-sitter-fsh) | community | `H ` | | | @mgramigna
|
||||||
[func](https://github.com/amaanq/tree-sitter-func) | | `H ` | | | @amaanq
|
[func](https://github.com/amaanq/tree-sitter-func) | core | `H ` | | | @amaanq
|
||||||
[fusion](https://gitlab.com/jirgn/tree-sitter-fusion.git) | | `HFI L` | | | @jirgn
|
[fusion](https://gitlab.com/jirgn/tree-sitter-fusion.git) | community | `HFI L` | | | @jirgn
|
||||||
[gdscript](https://github.com/PrestonKnopp/tree-sitter-gdscript)[^gdscript] | | `HFIJL` | | | @PrestonKnopp
|
[gdscript](https://github.com/PrestonKnopp/tree-sitter-gdscript)[^gdscript] | community | `HFIJL` | | | @PrestonKnopp
|
||||||
[git_config](https://github.com/the-mikedavis/tree-sitter-git-config)[^git_config] | | `HF ` | | | @amaanq
|
[git_config](https://github.com/the-mikedavis/tree-sitter-git-config) | core | `HF ` | | | @amaanq
|
||||||
[git_rebase](https://github.com/the-mikedavis/tree-sitter-git-rebase) | | `H J ` | | | @gbprod
|
[git_rebase](https://github.com/the-mikedavis/tree-sitter-git-rebase) | community | `H J ` | | | @gbprod
|
||||||
[gitattributes](https://github.com/ObserverOfTime/tree-sitter-gitattributes) | | `H J ` | | | @ObserverOfTime
|
[gitattributes](https://github.com/ObserverOfTime/tree-sitter-gitattributes) | core | `H J ` | | | @ObserverOfTime
|
||||||
[gitcommit](https://github.com/gbprod/tree-sitter-gitcommit) | | `H J ` | | | @gbprod
|
[gitcommit](https://github.com/gbprod/tree-sitter-gitcommit) | community | `H J ` | | | @gbprod
|
||||||
[gitignore](https://github.com/shunsambongi/tree-sitter-gitignore) | | `H ` | | | @theHamsta
|
[gitignore](https://github.com/shunsambongi/tree-sitter-gitignore) | core | `H ` | | | @theHamsta
|
||||||
[gleam](https://github.com/gleam-lang/tree-sitter-gleam) | | `HFIJL` | | | @amaanq
|
[gleam](https://github.com/gleam-lang/tree-sitter-gleam) | core | `HFIJL` | | | @amaanq
|
||||||
[glimmer](https://github.com/alexlafroscia/tree-sitter-glimmer)[^glimmer] | | `HFI L` | | | @NullVoxPopuli
|
[glimmer](https://github.com/alexlafroscia/tree-sitter-glimmer)[^glimmer] | community | `HFI L` | | | @NullVoxPopuli
|
||||||
[glsl](https://github.com/theHamsta/tree-sitter-glsl) | | `HFIJL` | | ✓ | @theHamsta
|
[glsl](https://github.com/theHamsta/tree-sitter-glsl) | core | `HFIJL` | | ✓ | @theHamsta
|
||||||
[go](https://github.com/tree-sitter/tree-sitter-go) | | `HFIJL` | | | @theHamsta, @WinWisely268
|
[go](https://github.com/tree-sitter/tree-sitter-go) | stable | `HFIJL` | | | @theHamsta, @WinWisely268
|
||||||
[godot_resource](https://github.com/PrestonKnopp/tree-sitter-godot-resource)[^godot_resource] | | `HF L` | | | @pierpo
|
[godot_resource](https://github.com/PrestonKnopp/tree-sitter-godot-resource)[^godot_resource] | community | `HF L` | | | @pierpo
|
||||||
[gomod](https://github.com/camdencheek/tree-sitter-go-mod) | | `H J ` | | | @camdencheek
|
[gomod](https://github.com/camdencheek/tree-sitter-go-mod) | community | `H J ` | | | @camdencheek
|
||||||
[gosum](https://github.com/amaanq/tree-sitter-go-sum) | | `H ` | | | @amaanq
|
[gosum](https://github.com/amaanq/tree-sitter-go-sum) | core | `H ` | | | @amaanq
|
||||||
[gowork](https://github.com/omertuc/tree-sitter-go-work) | | `H J ` | | | @omertuc
|
[gowork](https://github.com/omertuc/tree-sitter-go-work) | community | `H J ` | | | @omertuc
|
||||||
[gpg](https://github.com/ObserverOfTime/tree-sitter-gpg-config) | stable | `H J ` | | | @ObserverOfTime
|
[gpg](https://github.com/ObserverOfTime/tree-sitter-gpg-config) | core | `H J ` | | | @ObserverOfTime
|
||||||
[graphql](https://github.com/bkegley/tree-sitter-graphql) | | `H IJ ` | | | @bkegley
|
[graphql](https://github.com/bkegley/tree-sitter-graphql) | community | `H IJ ` | | | @bkegley
|
||||||
[groovy](https://github.com/Decodetalkers/tree-sitter-groovy) | community | `H J ` | | | @Decodetalkers
|
[groovy](https://github.com/Decodetalkers/tree-sitter-groovy) | community | `H J ` | | | @Decodetalkers
|
||||||
[hack](https://github.com/slackhq/tree-sitter-hack) | unstable | `H ` | | |
|
[hack](https://github.com/slackhq/tree-sitter-hack) | unsupported | `H ` | | |
|
||||||
[hare](https://github.com/amaanq/tree-sitter-hare) | | `HFIJL` | | | @amaanq
|
[hare](https://github.com/amaanq/tree-sitter-hare) | core | `HFIJL` | | | @amaanq
|
||||||
[haskell](https://github.com/tree-sitter/tree-sitter-haskell) | unstable | `HF J ` | | |
|
[haskell](https://github.com/tree-sitter/tree-sitter-haskell) | unsupported | `HF J ` | | |
|
||||||
[haskell_persistent](https://github.com/MercuryTechnologies/tree-sitter-haskell-persistent) | | `HF ` | | | @lykahb
|
[haskell_persistent](https://github.com/MercuryTechnologies/tree-sitter-haskell-persistent) | community | `HF ` | | | @lykahb
|
||||||
[hcl](https://github.com/MichaHoffmann/tree-sitter-hcl) | | `HFIJ ` | | | @MichaHoffmann
|
[hcl](https://github.com/MichaHoffmann/tree-sitter-hcl) | community | `HFIJ ` | | | @MichaHoffmann
|
||||||
[heex](https://github.com/connorlay/tree-sitter-heex) | | `HFIJL` | | | @connorlay
|
[heex](https://github.com/connorlay/tree-sitter-heex) | community | `HFIJL` | | | @connorlay
|
||||||
[hjson](https://github.com/winston0410/tree-sitter-hjson) | | `HFIJL` | | ✓ | @winston0410
|
[hjson](https://github.com/winston0410/tree-sitter-hjson) | community | `HFIJL` | | ✓ | @winston0410
|
||||||
[hlsl](https://github.com/theHamsta/tree-sitter-hlsl) | | `HFIJL` | | ✓ | @theHamsta
|
[hlsl](https://github.com/theHamsta/tree-sitter-hlsl) | core | `HFIJL` | | ✓ | @theHamsta
|
||||||
[hocon](https://github.com/antosha417/tree-sitter-hocon) | | `H J ` | | ✓ | @antosha417
|
[hocon](https://github.com/antosha417/tree-sitter-hocon) | unsupported | `H J ` | | ✓ | @antosha417
|
||||||
[hoon](https://github.com/urbit-pilled/tree-sitter-hoon) | unstable | `HF L` | | | @urbit-pilled
|
[hoon](https://github.com/urbit-pilled/tree-sitter-hoon) | unsupported | `HF L` | | | @urbit-pilled
|
||||||
[html](https://github.com/tree-sitter/tree-sitter-html) | | `HFIJL` | | | @TravonteD
|
[html](https://github.com/tree-sitter/tree-sitter-html) | community | `HFIJL` | | | @TravonteD
|
||||||
html_tags (queries only)[^html_tags] | | `H IJ ` | | | @TravonteD
|
html_tags (queries only)[^html_tags] | community | `H IJ ` | | | @TravonteD
|
||||||
[htmldjango](https://github.com/interdependence/tree-sitter-htmldjango) | unstable | `HFIJ ` | | | @ObserverOfTime
|
[htmldjango](https://github.com/interdependence/tree-sitter-htmldjango) | unsupported | `HFIJ ` | | | @ObserverOfTime
|
||||||
[http](https://github.com/rest-nvim/tree-sitter-http) | | `H J ` | | ✓ | @amaanq
|
[http](https://github.com/rest-nvim/tree-sitter-http) | core | `H J ` | | ✓ | @amaanq
|
||||||
[hurl](https://github.com/pfeiferj/tree-sitter-hurl) | community | `HFIJ ` | | | @pfeiferj
|
[hurl](https://github.com/pfeiferj/tree-sitter-hurl) | community | `HFIJ ` | | | @pfeiferj
|
||||||
[ini](https://github.com/justinmk/tree-sitter-ini) | unstable | `HF ` | | | @theHamsta
|
[ini](https://github.com/justinmk/tree-sitter-ini) | unsupported | `HF ` | | | @theHamsta
|
||||||
[ispc](https://github.com/fab4100/tree-sitter-ispc) | | `HFIJL` | | ✓ | @fab4100
|
[ispc](https://github.com/fab4100/tree-sitter-ispc) | community | `HFIJL` | | ✓ | @fab4100
|
||||||
[janet_simple](https://github.com/sogaiu/tree-sitter-janet-simple) | | `HF JL` | | | @sogaiu
|
[janet_simple](https://github.com/sogaiu/tree-sitter-janet-simple) | community | `HF JL` | | | @sogaiu
|
||||||
[java](https://github.com/tree-sitter/tree-sitter-java) | | `HFIJL` | | | @p00f
|
[java](https://github.com/tree-sitter/tree-sitter-java) | community | `HFIJL` | | | @p00f
|
||||||
[javascript](https://github.com/tree-sitter/tree-sitter-javascript) | | `HFIJL` | | | @steelsojka
|
[javascript](https://github.com/tree-sitter/tree-sitter-javascript) | core | `HFIJL` | | | @steelsojka
|
||||||
[jq](https://github.com/flurie/tree-sitter-jq) | | `H J ` | | | @ObserverOfTime
|
[jq](https://github.com/flurie/tree-sitter-jq) | core | `H J ` | | | @ObserverOfTime
|
||||||
[jsdoc](https://github.com/tree-sitter/tree-sitter-jsdoc) | | `H ` | | | @steelsojka
|
[jsdoc](https://github.com/tree-sitter/tree-sitter-jsdoc) | core | `H ` | | | @steelsojka
|
||||||
[json](https://github.com/tree-sitter/tree-sitter-json) | | `HFI L` | | | @steelsojka
|
[json](https://github.com/tree-sitter/tree-sitter-json) | core | `HFI L` | | | @steelsojka
|
||||||
[json5](https://github.com/Joakker/tree-sitter-json5) | | `H J ` | | | @Joakker
|
[json5](https://github.com/Joakker/tree-sitter-json5) | community | `H J ` | | | @Joakker
|
||||||
[jsonc](https://gitlab.com/WhyNotHugo/tree-sitter-jsonc.git) | | `HFIJL` | | ✓ | @WhyNotHugo
|
[jsonc](https://gitlab.com/WhyNotHugo/tree-sitter-jsonc.git) | community | `HFIJL` | | ✓ | @WhyNotHugo
|
||||||
[jsonnet](https://github.com/sourcegraph/tree-sitter-jsonnet) | | `HF L` | | | @nawordar
|
[jsonnet](https://github.com/sourcegraph/tree-sitter-jsonnet) | community | `HF L` | | | @nawordar
|
||||||
jsx (queries only)[^jsx] | | `HFIJ ` | | | @steelsojka
|
jsx (queries only)[^jsx] | core | `HFIJ ` | | | @steelsojka
|
||||||
[julia](https://github.com/tree-sitter/tree-sitter-julia) | community | `HFIJL` | | | @theHamsta
|
[julia](https://github.com/tree-sitter/tree-sitter-julia) | core | `HFIJL` | | | @theHamsta
|
||||||
[kconfig](https://github.com/amaanq/tree-sitter-kconfig) | stable | `HFIJL` | | | @amaanq
|
[kconfig](https://github.com/amaanq/tree-sitter-kconfig) | core | `HFIJL` | | | @amaanq
|
||||||
[kdl](https://github.com/amaanq/tree-sitter-kdl) | | `HFIJL` | | | @amaanq
|
[kdl](https://github.com/amaanq/tree-sitter-kdl) | core | `HFIJL` | | | @amaanq
|
||||||
[kotlin](https://github.com/fwcd/tree-sitter-kotlin) | | `HF JL` | | | @SalBakraa
|
[kotlin](https://github.com/fwcd/tree-sitter-kotlin) | community | `HF JL` | | | @SalBakraa
|
||||||
[lalrpop](https://github.com/traxys/tree-sitter-lalrpop) | | `H JL` | | | @traxys
|
[lalrpop](https://github.com/traxys/tree-sitter-lalrpop) | community | `H JL` | | | @traxys
|
||||||
[latex](https://github.com/latex-lsp/tree-sitter-latex) | community | `HF J ` | | | @theHamsta, @clason
|
[latex](https://github.com/latex-lsp/tree-sitter-latex) | core | `HF J ` | | | @theHamsta, @clason
|
||||||
[ledger](https://github.com/cbarrete/tree-sitter-ledger) | | `HFIJ ` | | | @cbarrete
|
[ledger](https://github.com/cbarrete/tree-sitter-ledger) | community | `HFIJ ` | | | @cbarrete
|
||||||
[llvm](https://github.com/benwilliamgraham/tree-sitter-llvm) | | `H ` | | | @benwilliamgraham
|
[llvm](https://github.com/benwilliamgraham/tree-sitter-llvm) | community | `H ` | | | @benwilliamgraham
|
||||||
[lua](https://github.com/MunifTanjim/tree-sitter-lua) | core | `HFIJL` | | | @muniftanjim
|
[lua](https://github.com/MunifTanjim/tree-sitter-lua) | stable | `HFIJL` | | | @muniftanjim
|
||||||
[luadoc](https://github.com/amaanq/tree-sitter-luadoc) | | `H ` | | | @amaanq
|
[luadoc](https://github.com/amaanq/tree-sitter-luadoc) | core | `H ` | | | @amaanq
|
||||||
[luap](https://github.com/amaanq/tree-sitter-luap)[^luap] | | `H ` | | | @amaanq
|
[luap](https://github.com/amaanq/tree-sitter-luap)[^luap] | core | `H ` | | | @amaanq
|
||||||
[luau](https://github.com/amaanq/tree-sitter-luau) | | `HFIJL` | | | @amaanq
|
[luau](https://github.com/amaanq/tree-sitter-luau) | core | `HFIJL` | | | @amaanq
|
||||||
[m68k](https://github.com/grahambates/tree-sitter-m68k) | | `HF JL` | | | @grahambates
|
[m68k](https://github.com/grahambates/tree-sitter-m68k) | community | `HF JL` | | | @grahambates
|
||||||
[make](https://github.com/alemuller/tree-sitter-make) | | `HF J ` | | | @lewis6991
|
[make](https://github.com/alemuller/tree-sitter-make) | core | `HF J ` | | | @lewis6991
|
||||||
[markdown](https://github.com/MDeiml/tree-sitter-markdown)[^markdown] | core | `HFIJ ` | | | @MDeiml
|
[markdown](https://github.com/MDeiml/tree-sitter-markdown)[^markdown] | stable | `HFIJ ` | | | @MDeiml
|
||||||
[markdown_inline](https://github.com/MDeiml/tree-sitter-markdown)[^markdown_inline] | core | `H J ` | | | @MDeiml
|
[markdown_inline](https://github.com/MDeiml/tree-sitter-markdown)[^markdown_inline] | stable | `H J ` | | | @MDeiml
|
||||||
[matlab](https://github.com/acristoffers/tree-sitter-matlab) | | `HFIJL` | | | @acristoffers
|
[matlab](https://github.com/acristoffers/tree-sitter-matlab) | community | `HFIJL` | | | @acristoffers
|
||||||
[menhir](https://github.com/Kerl13/tree-sitter-menhir) | | `H J ` | | | @Kerl13
|
[menhir](https://github.com/Kerl13/tree-sitter-menhir) | community | `H J ` | | | @Kerl13
|
||||||
[mermaid](https://github.com/monaqa/tree-sitter-mermaid) | unstable | `H ` | | |
|
[mermaid](https://github.com/monaqa/tree-sitter-mermaid) | unsupported | `H ` | | |
|
||||||
[meson](https://github.com/Decodetalkers/tree-sitter-meson) | | `HF J ` | | | @Decodetalkers
|
[meson](https://github.com/Decodetalkers/tree-sitter-meson) | community | `HF J ` | | | @Decodetalkers
|
||||||
[mlir](https://github.com/artagnon/tree-sitter-mlir) | unstable | `H L` | ✓ | | @artagnon
|
[mlir](https://github.com/artagnon/tree-sitter-mlir) | unsupported | `H L` | ✓ | | @artagnon
|
||||||
[nickel](https://github.com/nickel-lang/tree-sitter-nickel) | unstable | `H I ` | | |
|
[nickel](https://github.com/nickel-lang/tree-sitter-nickel) | unsupported | `H I ` | | |
|
||||||
[ninja](https://github.com/alemuller/tree-sitter-ninja) | | `HFI ` | | | @alemuller
|
[ninja](https://github.com/alemuller/tree-sitter-ninja) | community | `HFI ` | | | @alemuller
|
||||||
[nix](https://github.com/cstrahan/tree-sitter-nix) | | `HF JL` | | | @leo60228
|
[nix](https://github.com/cstrahan/tree-sitter-nix) | community | `HF JL` | | | @leo60228
|
||||||
[nqc](https://github.com/amaanq/tree-sitter-nqc) | stable | `HFIJL` | | | @amaanq
|
[nqc](https://github.com/amaanq/tree-sitter-nqc) | core | `HFIJL` | | | @amaanq
|
||||||
[objc](https://github.com/amaanq/tree-sitter-objc) | | `HFIJL` | | | @amaanq
|
[objc](https://github.com/amaanq/tree-sitter-objc) | core | `HFIJL` | | | @amaanq
|
||||||
[ocaml](https://github.com/tree-sitter/tree-sitter-ocaml) | | `HFIJL` | | | @undu
|
[ocaml](https://github.com/tree-sitter/tree-sitter-ocaml) | community | `HFIJL` | | | @undu
|
||||||
[ocaml_interface](https://github.com/tree-sitter/tree-sitter-ocaml) | | `HFIJL` | | | @undu
|
[ocaml_interface](https://github.com/tree-sitter/tree-sitter-ocaml) | community | `HFIJL` | | | @undu
|
||||||
[ocamllex](https://github.com/atom-ocaml/tree-sitter-ocamllex) | | `H J ` | ✓ | | @undu
|
[ocamllex](https://github.com/atom-ocaml/tree-sitter-ocamllex) | community | `H J ` | ✓ | | @undu
|
||||||
[odin](https://github.com/amaanq/tree-sitter-odin) | | `HFIJL` | | | @amaanq
|
[odin](https://github.com/amaanq/tree-sitter-odin) | core | `HFIJL` | | | @amaanq
|
||||||
[org](https://github.com/milisims/tree-sitter-org) | unstable | ` ` | | |
|
[org](https://github.com/milisims/tree-sitter-org) | unsupported | ` ` | | |
|
||||||
[pascal](https://github.com/Isopod/tree-sitter-pascal.git) | | `HFIJL` | | | @Isopod
|
[pascal](https://github.com/Isopod/tree-sitter-pascal.git) | community | `HFIJL` | | | @Isopod
|
||||||
[passwd](https://github.com/ath3/tree-sitter-passwd) | | `H ` | | | @amaanq
|
[passwd](https://github.com/ath3/tree-sitter-passwd) | community | `H ` | | | @amaanq
|
||||||
[pem](https://github.com/ObserverOfTime/tree-sitter-pem) | stable | `HF J ` | | | @ObserverOfTime
|
[pem](https://github.com/ObserverOfTime/tree-sitter-pem) | core | `HF J ` | | | @ObserverOfTime
|
||||||
[perl](https://github.com/ganezdragon/tree-sitter-perl) | | `HF J ` | | | @lcrownover
|
[perl](https://github.com/ganezdragon/tree-sitter-perl) | unsupported | `HF J ` | | |
|
||||||
[php](https://github.com/tree-sitter/tree-sitter-php) | | `HFIJL` | | | @tk-shirasaka
|
[php](https://github.com/tree-sitter/tree-sitter-php) | community | `HFIJL` | | | @tk-shirasaka
|
||||||
[phpdoc](https://github.com/claytonrcarter/tree-sitter-phpdoc) | unstable | `H ` | | ✓ | @mikehaertl
|
[phpdoc](https://github.com/claytonrcarter/tree-sitter-phpdoc) | unsupported | `H ` | | ✓ | @mikehaertl
|
||||||
[pioasm](https://github.com/leo60228/tree-sitter-pioasm) | | `H J ` | | | @leo60228
|
[pioasm](https://github.com/leo60228/tree-sitter-pioasm) | community | `H J ` | | | @leo60228
|
||||||
[po](https://github.com/erasin/tree-sitter-po) | | `HF J ` | | | @amaanq
|
[po](https://github.com/erasin/tree-sitter-po) | core | `HF J ` | | | @amaanq
|
||||||
[poe_filter](https://github.com/ObserverOfTime/tree-sitter-poe-filter)[^poe_filter] | unstable | `HFIJ ` | | | @ObserverOfTime
|
[poe_filter](https://github.com/ObserverOfTime/tree-sitter-poe-filter)[^poe_filter] | unsupported | `HFIJ ` | | | @ObserverOfTime
|
||||||
[pony](https://github.com/amaanq/tree-sitter-pony) | | `HFIJL` | | | @amaanq, @mfelsche
|
[pony](https://github.com/amaanq/tree-sitter-pony) | core | `HFIJL` | | | @amaanq, @mfelsche
|
||||||
[prisma](https://github.com/victorhqc/tree-sitter-prisma) | | `H ` | | | @elianiva
|
[prisma](https://github.com/victorhqc/tree-sitter-prisma) | community | `H ` | | | @elianiva
|
||||||
[promql](https://github.com/MichaHoffmann/tree-sitter-promql) | unstable | `H J ` | | | @MichaHoffmann
|
[promql](https://github.com/MichaHoffmann/tree-sitter-promql) | unsupported | `H J ` | | | @MichaHoffmann
|
||||||
[proto](https://github.com/treywood/tree-sitter-proto) | | `HF ` | | | @treywood
|
[proto](https://github.com/treywood/tree-sitter-proto) | community | `HF ` | | | @treywood
|
||||||
[prql](https://github.com/PRQL/tree-sitter-prql) | | `H J ` | | | @matthias-Q
|
[prql](https://github.com/PRQL/tree-sitter-prql) | core | `H J ` | | | @matthias-Q
|
||||||
[psv](https://github.com/amaanq/tree-sitter-csv) | stable | `H ` | | | @amaanq
|
[psv](https://github.com/amaanq/tree-sitter-csv) | core | `H ` | | | @amaanq
|
||||||
[pug](https://github.com/zealot128/tree-sitter-pug) | unstable | `H J ` | | | @zealot128
|
[pug](https://github.com/zealot128/tree-sitter-pug) | unsupported | `H J ` | | | @zealot128
|
||||||
[puppet](https://github.com/amaanq/tree-sitter-puppet) | | `HFIJL` | | | @amaanq
|
[puppet](https://github.com/amaanq/tree-sitter-puppet) | core | `HFIJL` | | | @amaanq
|
||||||
[pymanifest](https://github.com/ObserverOfTime/tree-sitter-pymanifest) | stable | `H J ` | | | @ObserverOfTime
|
[pymanifest](https://github.com/ObserverOfTime/tree-sitter-pymanifest) | core | `H J ` | | | @ObserverOfTime
|
||||||
[python](https://github.com/tree-sitter/tree-sitter-python) | | `HFIJL` | | | @stsewd, @theHamsta
|
[python](https://github.com/tree-sitter/tree-sitter-python) | stable | `HFIJL` | | | @stsewd, @theHamsta
|
||||||
[ql](https://github.com/tree-sitter/tree-sitter-ql) | | `HFIJL` | | | @pwntester
|
[ql](https://github.com/tree-sitter/tree-sitter-ql) | community | `HFIJL` | | | @pwntester
|
||||||
[qmldir](https://github.com/Decodetalkers/tree-sitter-qmldir) | | `H J ` | | | @amaanq
|
[qmldir](https://github.com/Decodetalkers/tree-sitter-qmldir) | core | `H J ` | | | @amaanq
|
||||||
[qmljs](https://github.com/yuja/tree-sitter-qmljs) | | `HF ` | | | @Decodetalkers
|
[qmljs](https://github.com/yuja/tree-sitter-qmljs) | community | `HF ` | | | @Decodetalkers
|
||||||
[query](https://github.com/nvim-treesitter/tree-sitter-query)[^query] | core | `HFIJL` | | | @steelsojka
|
[query](https://github.com/nvim-treesitter/tree-sitter-query)[^query] | stable | `HFIJL` | | | @steelsojka
|
||||||
[r](https://github.com/r-lib/tree-sitter-r) | | `H IJL` | | | @echasnovski
|
[r](https://github.com/r-lib/tree-sitter-r) | community | `H IJL` | | | @echasnovski
|
||||||
[racket](https://github.com/6cdh/tree-sitter-racket) | unstable | `HF J ` | | |
|
[racket](https://github.com/6cdh/tree-sitter-racket) | unsupported | `HF J ` | | |
|
||||||
[rasi](https://github.com/Fymyte/tree-sitter-rasi) | | `HFI L` | | | @Fymyte
|
[rasi](https://github.com/Fymyte/tree-sitter-rasi) | community | `HFI L` | | | @Fymyte
|
||||||
[re2c](https://github.com/amaanq/tree-sitter-re2c) | stable | `HFIJL` | | | @amaanq
|
[re2c](https://github.com/amaanq/tree-sitter-re2c) | core | `HFIJL` | | | @amaanq
|
||||||
[regex](https://github.com/tree-sitter/tree-sitter-regex) | | `H ` | | | @theHamsta
|
[regex](https://github.com/tree-sitter/tree-sitter-regex) | stable | `H ` | | | @theHamsta
|
||||||
[rego](https://github.com/FallenAngel97/tree-sitter-rego) | | `H J ` | | | @FallenAngel97
|
[rego](https://github.com/FallenAngel97/tree-sitter-rego) | community | `H J ` | | | @FallenAngel97
|
||||||
[requirements](https://github.com/ObserverOfTime/tree-sitter-requirements) | stable | `H J ` | | | @ObserverOfTime
|
[requirements](https://github.com/ObserverOfTime/tree-sitter-requirements) | core | `H J ` | | | @ObserverOfTime
|
||||||
[rnoweb](https://github.com/bamonroe/tree-sitter-rnoweb) | | `HF J ` | | | @bamonroe
|
[rnoweb](https://github.com/bamonroe/tree-sitter-rnoweb) | community | `HF J ` | | | @bamonroe
|
||||||
[robot](https://github.com/Hubro/tree-sitter-robot) | community | `HFI ` | | | @Hubro
|
[robot](https://github.com/Hubro/tree-sitter-robot) | community | `HFI ` | | | @Hubro
|
||||||
[ron](https://github.com/amaanq/tree-sitter-ron) | | `HFIJL` | | | @amaanq
|
[ron](https://github.com/amaanq/tree-sitter-ron) | core | `HFIJL` | | | @amaanq
|
||||||
[rst](https://github.com/stsewd/tree-sitter-rst) | | `H JL` | | | @stsewd
|
[rst](https://github.com/stsewd/tree-sitter-rst) | core | `H JL` | | | @stsewd
|
||||||
[ruby](https://github.com/tree-sitter/tree-sitter-ruby) | | `HFIJL` | | | @TravonteD
|
[ruby](https://github.com/tree-sitter/tree-sitter-ruby) | community | `HFIJL` | | | @TravonteD
|
||||||
[rust](https://github.com/tree-sitter/tree-sitter-rust) | | `HFIJL` | | | @amaanq
|
[rust](https://github.com/tree-sitter/tree-sitter-rust) | core | `HFIJL` | | | @amaanq
|
||||||
[scala](https://github.com/tree-sitter/tree-sitter-scala) | | `HF JL` | | | @stevanmilic
|
[scala](https://github.com/tree-sitter/tree-sitter-scala) | community | `HF JL` | | | @stevanmilic
|
||||||
[scfg](https://git.sr.ht/~rockorager/tree-sitter-scfg) | community | `H J ` | ✓ | | @WhyNotHugo
|
[scfg](https://git.sr.ht/~rockorager/tree-sitter-scfg) | community | `H J ` | ✓ | | @WhyNotHugo
|
||||||
[scheme](https://github.com/6cdh/tree-sitter-scheme) | unstable | `HF J ` | | |
|
[scheme](https://github.com/6cdh/tree-sitter-scheme) | unsupported | `HF J ` | | |
|
||||||
[scss](https://github.com/serenadeai/tree-sitter-scss) | community | `HFI ` | | | @elianiva
|
[scss](https://github.com/serenadeai/tree-sitter-scss) | community | `HFI ` | | | @elianiva
|
||||||
[slint](https://github.com/jrmoulton/tree-sitter-slint) | unstable | `H I ` | | | @jrmoulton
|
[slint](https://github.com/jrmoulton/tree-sitter-slint) | unsupported | `H I ` | | | @jrmoulton
|
||||||
[smali](https://git.sr.ht/~yotam/tree-sitter-smali) | | `HFIJL` | | | @amaanq
|
[smali](https://git.sr.ht/~yotam/tree-sitter-smali) | core | `HFIJL` | | | @amaanq
|
||||||
[smithy](https://github.com/indoorvivants/tree-sitter-smithy) | | `H ` | | | @amaanq, @keynmol
|
[smithy](https://github.com/indoorvivants/tree-sitter-smithy) | core | `H ` | | | @amaanq, @keynmol
|
||||||
[solidity](https://github.com/JoranHonig/tree-sitter-solidity) | | `H ` | | | @amaanq
|
[solidity](https://github.com/JoranHonig/tree-sitter-solidity) | core | `H ` | | | @amaanq
|
||||||
[sparql](https://github.com/BonaBeavis/tree-sitter-sparql) | | `HFIJL` | | | @BonaBeavis
|
[sparql](https://github.com/BonaBeavis/tree-sitter-sparql) | community | `HFIJL` | | | @BonaBeavis
|
||||||
[sql](https://github.com/derekstride/tree-sitter-sql) | | `H IJ ` | | | @derekstride
|
[sql](https://github.com/derekstride/tree-sitter-sql) | community | `H IJ ` | | | @derekstride
|
||||||
[squirrel](https://github.com/amaanq/tree-sitter-squirrel) | | `HFIJL` | | | @amaanq
|
[squirrel](https://github.com/amaanq/tree-sitter-squirrel) | core | `HFIJL` | | | @amaanq
|
||||||
[starlark](https://github.com/amaanq/tree-sitter-starlark) | | `HFIJL` | | | @amaanq
|
[starlark](https://github.com/amaanq/tree-sitter-starlark) | core | `HFIJL` | | | @amaanq
|
||||||
[strace](https://github.com/sigmaSd/tree-sitter-strace) | stable | `H J ` | | | @amaanq
|
[strace](https://github.com/sigmaSd/tree-sitter-strace) | core | `H J ` | | | @amaanq
|
||||||
[supercollider](https://github.com/madskjeldgaard/tree-sitter-supercollider) | | `HFIJL` | | | @madskjeldgaard
|
[supercollider](https://github.com/madskjeldgaard/tree-sitter-supercollider) | community | `HFIJL` | | | @madskjeldgaard
|
||||||
[surface](https://github.com/connorlay/tree-sitter-surface) | | `HFIJ ` | | | @connorlay
|
[surface](https://github.com/connorlay/tree-sitter-surface) | community | `HFIJ ` | | | @connorlay
|
||||||
[svelte](https://github.com/Himujjal/tree-sitter-svelte) | | `HFIJ ` | | | @elianiva
|
[svelte](https://github.com/Himujjal/tree-sitter-svelte) | community | `HFIJ ` | | | @elianiva
|
||||||
[swift](https://github.com/alex-pinkus/tree-sitter-swift) | | `H I L` | ✓ | | @alex-pinkus
|
[swift](https://github.com/alex-pinkus/tree-sitter-swift) | community | `H I L` | ✓ | | @alex-pinkus
|
||||||
[sxhkdrc](https://github.com/RaafatTurki/tree-sitter-sxhkdrc) | | `HF J ` | | | @RaafatTurki
|
[sxhkdrc](https://github.com/RaafatTurki/tree-sitter-sxhkdrc) | community | `HF J ` | | | @RaafatTurki
|
||||||
[systemtap](https://github.com/ok-ryoko/tree-sitter-systemtap) | community | `HF JL` | | | @ok-ryoko
|
[systemtap](https://github.com/ok-ryoko/tree-sitter-systemtap) | community | `HF JL` | | | @ok-ryoko
|
||||||
[t32](https://gitlab.com/xasc/tree-sitter-t32.git) | community | `HFIJL` | | | @xasc
|
[t32](https://gitlab.com/xasc/tree-sitter-t32.git) | community | `HFIJL` | | | @xasc
|
||||||
[tablegen](https://github.com/amaanq/tree-sitter-tablegen) | | `HFIJL` | | | @amaanq
|
[tablegen](https://github.com/amaanq/tree-sitter-tablegen) | core | `HFIJL` | | | @amaanq
|
||||||
[teal](https://github.com/euclidianAce/tree-sitter-teal) | | `HFIJL` | ✓ | | @euclidianAce
|
[teal](https://github.com/euclidianAce/tree-sitter-teal) | community | `HFIJL` | ✓ | | @euclidianAce
|
||||||
[terraform](https://github.com/MichaHoffmann/tree-sitter-hcl) | community | `HFIJ ` | | | @MichaHoffmann
|
[terraform](https://github.com/MichaHoffmann/tree-sitter-hcl) | community | `HFIJ ` | | | @MichaHoffmann
|
||||||
[thrift](https://github.com/duskmoon314/tree-sitter-thrift) | | `HFIJL` | | | @amaanq, @duskmoon314
|
[thrift](https://github.com/duskmoon314/tree-sitter-thrift) | core | `HFIJL` | | | @amaanq, @duskmoon314
|
||||||
[tiger](https://github.com/ambroisie/tree-sitter-tiger) | | `HFIJL` | | | @ambroisie
|
[tiger](https://github.com/ambroisie/tree-sitter-tiger) | community | `HFIJL` | | | @ambroisie
|
||||||
[tlaplus](https://github.com/tlaplus-community/tree-sitter-tlaplus) | | `HF JL` | | | @ahelwer, @susliko
|
[tlaplus](https://github.com/tlaplus-community/tree-sitter-tlaplus) | community | `HF JL` | | | @ahelwer, @susliko
|
||||||
[todotxt](https://github.com/arnarg/tree-sitter-todotxt.git) | unstable | `H ` | | | @arnarg
|
[todotxt](https://github.com/arnarg/tree-sitter-todotxt.git) | unsupported | `H ` | | | @arnarg
|
||||||
[toml](https://github.com/ikatyang/tree-sitter-toml) | | `HFIJL` | | ✓ | @tk-shirasaka
|
[toml](https://github.com/ikatyang/tree-sitter-toml) | community | `HFIJL` | | ✓ | @tk-shirasaka
|
||||||
[tsv](https://github.com/amaanq/tree-sitter-csv) | stable | `H ` | | | @amaanq
|
[tsv](https://github.com/amaanq/tree-sitter-csv) | core | `H ` | | | @amaanq
|
||||||
[tsx](https://github.com/tree-sitter/tree-sitter-typescript) | | `HFIJL` | | ✓ | @steelsojka
|
[tsx](https://github.com/tree-sitter/tree-sitter-typescript) | core | `HFIJL` | | ✓ | @steelsojka
|
||||||
[turtle](https://github.com/BonaBeavis/tree-sitter-turtle) | | `HFIJL` | | | @BonaBeavis
|
[turtle](https://github.com/BonaBeavis/tree-sitter-turtle) | community | `HFIJL` | | | @BonaBeavis
|
||||||
[twig](https://github.com/gbprod/tree-sitter-twig) | | `H J ` | | | @gbprod
|
[twig](https://github.com/gbprod/tree-sitter-twig) | community | `H J ` | | | @gbprod
|
||||||
[typescript](https://github.com/tree-sitter/tree-sitter-typescript) | | `HFIJL` | | ✓ | @steelsojka
|
[typescript](https://github.com/tree-sitter/tree-sitter-typescript) | core | `HFIJL` | | ✓ | @steelsojka
|
||||||
[ungrammar](https://github.com/Philipp-M/tree-sitter-ungrammar) | | `HFIJL` | | | @Philipp-M, @amaanq
|
[ungrammar](https://github.com/Philipp-M/tree-sitter-ungrammar) | community | `HFIJL` | | | @Philipp-M, @amaanq
|
||||||
[unison](https://github.com/kylegoetz/tree-sitter-unison) | unstable | `H J ` | ✓ | | @tapegram
|
[unison](https://github.com/kylegoetz/tree-sitter-unison) | unsupported | `H J ` | ✓ | | @tapegram
|
||||||
[usd](https://github.com/ColinKennedy/tree-sitter-usd) | | `HFI L` | | | @ColinKennedy
|
[usd](https://github.com/ColinKennedy/tree-sitter-usd) | community | `HFI L` | | | @ColinKennedy
|
||||||
[uxntal](https://github.com/amaanq/tree-sitter-uxntal)[^uxntal] | | `HFIJL` | | | @amaanq
|
[uxntal](https://github.com/amaanq/tree-sitter-uxntal)[^uxntal] | core | `HFIJL` | | | @amaanq
|
||||||
[v](https://github.com/v-analyzer/v-analyzer) | | `HFIJL` | | | @kkharji, @amaanq
|
[v](https://github.com/v-analyzer/v-analyzer) | community | `HFIJL` | | | @kkharji, @amaanq
|
||||||
[vala](https://github.com/vala-lang/tree-sitter-vala) | | `HF ` | | | @Prince781
|
[vala](https://github.com/vala-lang/tree-sitter-vala) | community | `HF ` | | | @Prince781
|
||||||
[verilog](https://github.com/tree-sitter/tree-sitter-verilog) | | `HF JL` | | | @zegervdv
|
[verilog](https://github.com/tree-sitter/tree-sitter-verilog) | community | `HF JL` | | | @zegervdv
|
||||||
[vhs](https://github.com/charmbracelet/tree-sitter-vhs) | | `H ` | | | @caarlos0
|
[vhs](https://github.com/charmbracelet/tree-sitter-vhs) | community | `H ` | | | @caarlos0
|
||||||
[vim](https://github.com/neovim/tree-sitter-vim) | core | `HF JL` | | | @clason
|
[vim](https://github.com/neovim/tree-sitter-vim) | stable | `HF JL` | | | @clason
|
||||||
[vimdoc](https://github.com/neovim/tree-sitter-vimdoc) | core | `H J ` | | | @clason
|
[vimdoc](https://github.com/neovim/tree-sitter-vimdoc) | stable | `H J ` | | | @clason
|
||||||
[vue](https://github.com/ikatyang/tree-sitter-vue) | | `HFIJ ` | | | @WhyNotHugo
|
[vue](https://github.com/ikatyang/tree-sitter-vue) | community | `HFIJ ` | | | @WhyNotHugo
|
||||||
[wgsl](https://github.com/szebniok/tree-sitter-wgsl) | | `HFI ` | | | @szebniok
|
[wgsl](https://github.com/szebniok/tree-sitter-wgsl) | community | `HFI ` | | | @szebniok
|
||||||
[wgsl_bevy](https://github.com/theHamsta/tree-sitter-wgsl-bevy) | | `HFI ` | | ✓ | @theHamsta
|
[wgsl_bevy](https://github.com/theHamsta/tree-sitter-wgsl-bevy) | core | `HFI ` | | ✓ | @theHamsta
|
||||||
[wing](https://github.com/winglang/wing) | unstable | `HF L` | ✓ | | @gshpychka
|
[wing](https://github.com/winglang/wing) | unsupported | `HF L` | ✓ | | @gshpychka
|
||||||
[xml](https://github.com/ObserverOfTime/tree-sitter-xml) | stable | `HFIJ ` | | | @ObserverOfTime
|
[xml](https://github.com/ObserverOfTime/tree-sitter-xml) | core | `HFIJ ` | | | @ObserverOfTime
|
||||||
[yaml](https://github.com/ikatyang/tree-sitter-yaml) | | `HFIJL` | | | @stsewd
|
[yaml](https://github.com/ikatyang/tree-sitter-yaml) | core | `HFIJL` | | | @stsewd
|
||||||
[yang](https://github.com/Hubro/tree-sitter-yang) | | `HFIJ ` | | | @Hubro
|
[yang](https://github.com/Hubro/tree-sitter-yang) | community | `HFIJ ` | | | @Hubro
|
||||||
[yuck](https://github.com/Philipp-M/tree-sitter-yuck) | | `HFIJL` | | | @Philipp-M, @amaanq
|
[yuck](https://github.com/Philipp-M/tree-sitter-yuck) | community | `HFIJL` | | | @Philipp-M, @amaanq
|
||||||
[zig](https://github.com/maxxnino/tree-sitter-zig) | | `HFIJL` | | | @maxxnino
|
[zig](https://github.com/maxxnino/tree-sitter-zig) | community | `HFIJL` | | | @maxxnino
|
||||||
[^ecma]: queries required by javascript, typescript, tsx, qmljs
|
[^ecma]: queries required by javascript, typescript, tsx, qmljs
|
||||||
[^gdscript]: Godot
|
[^gdscript]: Godot
|
||||||
[^git_config]: git_config
|
|
||||||
[^glimmer]: Glimmer and Ember
|
[^glimmer]: Glimmer and Ember
|
||||||
[^godot_resource]: Godot Resources
|
[^godot_resource]: Godot Resources
|
||||||
[^html_tags]: queries required by html, astro, vue, svelte
|
[^html_tags]: queries required by html, astro, vue, svelte
|
||||||
|
|
|
||||||
4
TODO.md
4
TODO.md
|
|
@ -4,12 +4,10 @@ This document lists the planned and finished changes in this rewrite towards [Nv
|
||||||
|
|
||||||
## TODO
|
## TODO
|
||||||
|
|
||||||
- [ ] **`query_predicates.lua`:** upstream/remove
|
|
||||||
- [ ] **`parsers.lua`:** assign tiers
|
|
||||||
- [ ] **`parsers.lua`:** modularize?
|
|
||||||
- [ ] **`locals.lua`:** move to `nvim-treesitter-refactor`?
|
- [ ] **`locals.lua`:** move to `nvim-treesitter-refactor`?
|
||||||
- [ ] **update-lockfile:** allow specifying version in addition to commit hash (for Tier 1)
|
- [ ] **update-lockfile:** allow specifying version in addition to commit hash (for Tier 1)
|
||||||
- [ ] **update-lockfile:** one commit per parser/tier?
|
- [ ] **update-lockfile:** one commit per parser/tier?
|
||||||
|
- [ ] **tests:** fix, update, extend (cover all Tier 1 languages)
|
||||||
- [ ] **documentation:** consolidate, autogenerate?
|
- [ ] **documentation:** consolidate, autogenerate?
|
||||||
- [ ] **documentation:** migration guide
|
- [ ] **documentation:** migration guide
|
||||||
- [ ] **textobjects:** include simple(!) function, queries? (check Helix)
|
- [ ] **textobjects:** include simple(!) function, queries? (check Helix)
|
||||||
|
|
|
||||||
|
|
@ -10,7 +10,7 @@ local M = {}
|
||||||
local config = {
|
local config = {
|
||||||
auto_install = false,
|
auto_install = false,
|
||||||
ensure_install = {},
|
ensure_install = {},
|
||||||
ignore_install = {},
|
ignore_install = { 'unsupported' },
|
||||||
install_dir = vim.fs.joinpath(vim.fn.stdpath('data'), 'site'),
|
install_dir = vim.fs.joinpath(vim.fn.stdpath('data'), 'site'),
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -95,11 +95,6 @@ local function get_target_revision(lang)
|
||||||
lockfile = vim.json.decode(util.read_file(filename)) --[[@as table<string, LockfileInfo>]]
|
lockfile = vim.json.decode(util.read_file(filename)) --[[@as table<string, LockfileInfo>]]
|
||||||
end
|
end
|
||||||
|
|
||||||
local install_info = get_parser_install_info(lang)
|
|
||||||
if install_info.revision then
|
|
||||||
return install_info.revision
|
|
||||||
end
|
|
||||||
|
|
||||||
if lockfile[lang] then
|
if lockfile[lang] then
|
||||||
return lockfile[lang].revision
|
return lockfile[lang].revision
|
||||||
end
|
end
|
||||||
|
|
@ -434,7 +429,7 @@ local function install_lang(lang, cache_dir, install_dir, force, generate_from_g
|
||||||
logger:error('Node JS not found: `node` is not executable')
|
logger:error('Node JS not found: `node` is not executable')
|
||||||
end
|
end
|
||||||
|
|
||||||
local revision = repo.revision or get_target_revision(lang)
|
local revision = get_target_revision(lang)
|
||||||
|
|
||||||
local maybe_local_path = fs.normalize(repo.url)
|
local maybe_local_path = fs.normalize(repo.url)
|
||||||
local from_local_path = vim.fn.isdirectory(maybe_local_path) == 1
|
local from_local_path = vim.fn.isdirectory(maybe_local_path) == 1
|
||||||
|
|
|
||||||
File diff suppressed because it is too large
Load diff
|
|
@ -11,6 +11,7 @@ local filetypes = {
|
||||||
git_rebase = { 'gitrebase' },
|
git_rebase = { 'gitrebase' },
|
||||||
glimmer = { 'handlebars', 'html.handlebars' },
|
glimmer = { 'handlebars', 'html.handlebars' },
|
||||||
godot_resource = { 'gdresource' },
|
godot_resource = { 'gdresource' },
|
||||||
|
haskell_persistent = { 'haskellpersistent' },
|
||||||
html = { 'html_tags' },
|
html = { 'html_tags' },
|
||||||
janet_simple = { 'janet' },
|
janet_simple = { 'janet' },
|
||||||
javascript = { 'javascript', 'javascriptreact', 'ecma', 'jsx' },
|
javascript = { 'javascript', 'javascriptreact', 'ecma', 'jsx' },
|
||||||
|
|
|
||||||
|
|
@ -4,7 +4,7 @@ local util = require('nvim-treesitter.util')
|
||||||
|
|
||||||
-- Load previous lockfile
|
-- Load previous lockfile
|
||||||
local filename = require('nvim-treesitter.install').get_package_path('lockfile.json')
|
local filename = require('nvim-treesitter.install').get_package_path('lockfile.json')
|
||||||
-- local old_lockfile = vim.json.decode(util.read_file(filename)) --[[@as table<string,{revision:string}>]]
|
local old_lockfile = vim.json.decode(util.read_file(filename)) --[[@as table<string,{revision:string}>]]
|
||||||
|
|
||||||
---@type table<string,{revision:string}>
|
---@type table<string,{revision:string}>
|
||||||
local new_lockfile = {}
|
local new_lockfile = {}
|
||||||
|
|
@ -15,9 +15,10 @@ local jobs = {} --- @type table<string,SystemObj>
|
||||||
|
|
||||||
-- check for new revisions
|
-- check for new revisions
|
||||||
for k, p in pairs(parsers) do
|
for k, p in pairs(parsers) do
|
||||||
if not p.install_info then
|
if p.tier == 4 then
|
||||||
|
new_lockfile[k] = old_lockfile[k]
|
||||||
print('Skipping ' .. k)
|
print('Skipping ' .. k)
|
||||||
else
|
elseif p.install_info then
|
||||||
jobs[k] = vim.system({ 'git', 'ls-remote', p.install_info.url })
|
jobs[k] = vim.system({ 'git', 'ls-remote', p.install_info.url })
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue