Supported languages
The following is a list of languages for which a parser can be installed through :TSInstall.
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 Highlights, Indents, Folds, InJections, Locals
- Node: Parser requires node for installation
- Maintainer of queries in nvim-treesitter (may be different from parser maintainer!)
| Language | Tier | Queries | Maintainer |
|---|---|---|---|
| ada | unstable | HF JL |
@briot |
| agda | unstable | HF J |
@Decodetalkers |
| angular | unstable | HFIJL |
@dlvandenberg |
| apex | unstable | HF JL |
@aheber, @xixiafinland |
| arduino | unstable | HFIJL |
@ObserverOfTime |
| asm | unstable | H J |
@RubixDev |
| astro | unstable | HFIJL |
@virchau13 |
| authzed | unstable | H J |
@mattpolzin |
| awk | unstable | H J |
|
| bash | unstable | HF JL |
@TravonteD |
| bass | unstable | HFIJL |
@amaanq |
| beancount | unstable | HF J |
@polarmutex |
| bibtex | unstable | HFIJ |
@theHamsta, @clason |
| bicep | unstable | HFIJL |
@amaanq |
| bitbake | unstable | HFIJL |
@amaanq |
| blade | unstable | HFIJ |
@calebdw |
| bp[^bp] | unstable | HFIJL |
@ambroisie |
| brightscript | unstable | HFIJ |
@ajdelcimmuto |
| c | unstable | HFIJL |
@amaanq |
| c3 | unstable | HFIJ |
@cbuttner |
| c_sharp | unstable | HF JL |
@amaanq |
| caddy | unmaintained | HFIJ |
@opa-oz |
| cairo | unstable | HFIJL |
@amaanq |
| capnp | unstable | HFIJL |
@amaanq |
| chatito | unstable | HFIJL |
@ObserverOfTime |
| circom | unstable | HF JL |
@alexandr-martirosyan |
| clojure | unstable | HF JL |
@NoahTheDuke |
| cmake | unstable | HFIJ |
@uyha |
| comment | unstable | H |
@stsewd |
| commonlisp | unstable | HF JL |
@theHamsta |
| cooklang | unstable | H J |
@addcninblue |
| corn | unstable | HFIJL |
@jakestanger |
| cpon | unstable | HFIJL |
@amaanq |
| cpp | unstable | HFIJL |
@theHamsta |
| css | unstable | HFIJ |
@TravonteD |
| csv | unstable | H |
@amaanq |
| cuda | unstable | HFIJL |
@theHamsta |
| cue | unstable | HFIJL |
@amaanq |
| cylc | unstable | HFIJ |
@elliotfontaine |
| d | unstable | HFIJL |
@amaanq |
| dart | unstable | HFIJL |
@akinsho |
| desktop | unstable | HF J |
@ValdezFOmar |
| devicetree | unstable | HFIJL |
@jedrzejboczar |
| dhall | unstable | HF J |
@amaanq |
| diff | unstable | HF J |
@gbprod |
| disassembly | unstable | H J |
@ColinKennedy |
| djot | unstable | HFIJL |
@NoahTheDuke |
| dockerfile | unstable | H J |
@camdencheek |
| dot | unstable | HFIJ |
@rydesun |
| doxygen | unstable | H IJ |
@amaanq |
| dtd | unstable | HF JL |
@ObserverOfTime |
| earthfile | unstable | H J |
@glehmann |
| ebnf | unstable | H J |
@RubixDev |
| ecma (queries only)[^ecma] | unstable | HFIJL |
@steelsojka |
| editorconfig | unstable | HF J |
@ValdezFOmar |
| eds | unstable | HF |
@uyha |
| eex | unstable | H J |
@connorlay |
| elixir | unstable | HFIJL |
@connorlay |
| elm | unstable | HF J |
@zweimach |
| elsa | unstable | HFIJL |
@glapa-grossklag, @amaanq |
| elvish | unstable | H J |
@elves |
| embedded_template | unstable | H J |
|
| enforce | unstable | HFIJL |
@simonvic |
| erlang | unstable | HF J |
@filmor |
| facility | unstable | HFIJ |
@bryankenote |
| faust | unstable | H J |
@khiner |
| fennel | unstable | HF JL |
@alexmozaidze |
| fidl | unstable | HF J |
@chaopeng |
| firrtl | unstable | HFIJL |
@amaanq |
| fish | unstable | HFIJL |
@ram02z |
| foam | unstable | HFIJL |
@FoamScience |
| forth | unstable | HFIJL |
@amaanq |
| fortran | unstable | HFIJ |
@amaanq |
| fsh | unstable | H J |
@mgramigna |
| fsharp | unstable | H J |
@nsidorenco |
| func | unstable | H J |
@amaanq |
| gap[^gap] | unstable | HF JL |
@reiniscirpons |
| gaptst[^gaptst] | unstable | HF J |
@reiniscirpons |
| gdscript[^gdscript] | unmaintained | HFIJL |
|
| gdshader | unstable | H J |
@airblast-dev |
| git_config | unstable | HF J |
@amaanq |
| git_rebase | unstable | H J |
@gbprod |
| gitattributes | unstable | H JL |
@ObserverOfTime |
| gitcommit | unstable | H J |
@gbprod |
| gitignore | unstable | H J |
@theHamsta |
| gleam | unstable | HFIJL |
@amaanq |
| glimmer[^glimmer] | unstable | HFIJL |
@NullVoxPopuli |
| glimmer_javascript | unstable | HFIJL |
@NullVoxPopuli |
| glimmer_typescript | unstable | HFIJ |
@NullVoxPopuli |
| glsl | unstable | HFIJL |
@theHamsta |
| gn | unstable | HFIJL |
@amaanq |
| gnuplot | unstable | H J |
@dpezto |
| go | unstable | HFIJL |
@theHamsta, @WinWisely268 |
| goctl | unstable | HFIJ |
@chaozwn |
| godot_resource[^godot_resource] | unstable | HF JL |
@pierpo |
| gomod | unstable | H J |
@camdencheek |
| gosum | unstable | H |
@amaanq |
| gotmpl | unstable | HF JL |
@qvalentin |
| gowork | unstable | H J |
@omertuc |
| gpg | unstable | H J |
@ObserverOfTime |
| graphql | unstable | H IJ |
@bkegley |
| gren | unstable | H J |
@MaeBrooks |
| groovy | unstable | HFIJL |
@murtaza64 |
| groq | unstable | HFIJ |
@ajrussellaudio |
| gstlaunch | unstable | H |
@theHamsta |
| hack | unstable | H J |
|
| hare | unstable | HFIJL |
@amaanq |
| haskell | unstable | HF JL |
@mrcjkb |
| haskell_persistent | unstable | HF |
@lykahb |
| hcl | unstable | HFIJ |
@MichaHoffmann |
| heex | unstable | HFIJL |
@connorlay |
| helm | unstable | HF JL |
@qvalentin |
| hjson | unstable | HFIJL |
@winston0410 |
| hlsl | unstable | HFIJL |
@theHamsta |
| hlsplaylist | unstable | H J |
@Freed-Wu |
| hocon | unstable | HF J |
@antosha417 |
| hoon | unstable | HF JL |
@urbit-pilled |
| html | unstable | HFIJL |
@TravonteD |
| html_tags (queries only)[^html_tags] | unstable | H IJ |
@TravonteD |
| htmldjango | unstable | HFIJ |
@ObserverOfTime |
| http | unstable | HF J |
@amaanq, @NTBBloodbath |
| hurl | unstable | HFIJ |
@pfeiferj |
| hyprlang | unstable | HFIJ |
@luckasRanarison |
| idl | unstable | H IJ |
@cathaysia |
| idris | unstable | HF JL |
|
| ini | unstable | HF J |
@theHamsta |
| inko | stable | HFIJL |
@yorickpeterse |
| ispc | unstable | HFIJL |
@fab4100 |
| janet_simple | unstable | HF JL |
@sogaiu |
| java | unstable | HFIJL |
@p00f |
| javadoc | unstable | H IJ |
@rmuir |
| javascript | unstable | HFIJL |
@steelsojka |
| jinja[^jinja] | unstable | H J |
@cathaysia |
| jinja_inline[^jinja_inline] | unstable | H J |
@cathaysia |
| jq | unstable | H JL |
@ObserverOfTime |
| jsdoc | unstable | H |
@steelsojka |
| json | unstable | HFIJL |
@steelsojka |
| json5 | unstable | H J |
@Joakker |
| jsonnet | unstable | HF JL |
@nawordar |
| jsx (queries only)[^jsx] | unstable | HFIJ |
@steelsojka |
| julia | unstable | HFIJL |
@clason |
| just | unstable | HFIJL |
@Hubro |
| kcl | unstable | HF J |
@bertbaron |
| kconfig | unstable | HFIJL |
@amaanq |
| kdl | unstable | HFIJL |
@amaanq |
| kitty | unstable | H J |
@OXY2DEV |
| kotlin | unstable | HF JL |
@SalBakraa |
| koto | unstable | HF JL |
@irh |
| kusto | unstable | H J |
@Willem-J-an |
| lalrpop | unstable | HF JL |
@traxys |
| latex | unstable | HF J |
@theHamsta, @clason |
| ledger | unstable | HFIJ |
@cbarrete |
| leo | unstable | H IJ |
@r001 |
| linkerscript | unstable | HFIJL |
@amaanq |
| liquid | unstable | H J |
@hankthetank27 |
| liquidsoap | unstable | HFIJL |
@toots |
| llvm | unstable | H J |
@benwilliamgraham |
| lua | unstable | HFIJL |
@muniftanjim |
| luadoc | unstable | H |
@amaanq |
| luap[^luap] | unstable | H |
@amaanq |
| luau | unstable | HFIJL |
@amaanq |
| m68k | unstable | HF JL |
@grahambates |
| make | unstable | HF J |
@lewis6991 |
| markdown[^markdown] | unstable | HFIJ |
@MDeiml |
| markdown_inline[^markdown_inline] | unstable | H J |
@MDeiml |
| matlab | unstable | HFIJL |
@acristoffers |
| menhir | unstable | H J |
@Kerl13 |
| mermaid | unstable | HFIJ |
|
| meson | unstable | HFIJ |
@Decodetalkers |
| mlir | unstable | H JL |
@artagnon |
| muttrc | unstable | H J |
@Freed-Wu |
| nasm | unstable | H J |
@ObserverOfTime |
| nginx | unstable | HF J |
@opa-oz |
| nickel | unstable | H IJ |
|
| nim | unstable | HF JL |
@aMOPel |
| nim_format_string | unstable | H J |
@aMOPel |
| ninja | unstable | HFIJ |
@alemuller |
| nix | unstable | HFIJL |
@leo60228, @mrcjkb, @zimbatm |
| nqc | unstable | HFIJL |
@amaanq |
| nu | unstable | HFIJ |
@abhisheksingh0x558 |
| objc | unstable | HFIJL |
@amaanq |
| objdump | unstable | H J |
@ColinKennedy |
| ocaml | unstable | HFIJL |
@undu |
| ocaml_interface | unstable | HFIJL |
@undu |
| ocamllex | unstable | H J |
@undu |
| odin | unstable | HFIJL |
@amaanq |
| pascal | unstable | HFIJL |
@Isopod |
| passwd | unstable | H |
@amaanq |
| pem | unstable | HF J |
@ObserverOfTime |
| perl | unstable | HF J |
@RabbiVeesh, @LeoNerd |
| php[^php] | unstable | HFIJL |
@tk-shirasaka, @calebdw |
| php_only[^php_only] | unstable | HFIJL |
@tk-shirasaka, @calebdw |
| phpdoc | unstable | H |
@mikehaertl |
| pioasm | unstable | H J |
@leo60228 |
| pkl | unstable | HF J |
@ribru17 |
| po | unstable | HF J |
@amaanq |
| pod | unstable | H |
@RabbiVeesh, @LeoNerd |
| poe_filter[^poe_filter] | unstable | HFIJ |
@ObserverOfTime |
| pony | unstable | HFIJL |
@amaanq, @mfelsche |
| powershell | unstable | HFIJL |
@L2jLiga |
| printf | unstable | H |
@ObserverOfTime |
| prisma | unstable | HF J |
@elianiva |
| problog | unstable | HFIJ |
@foxyseta |
| prolog | unstable | HFIJ |
@foxyseta |
| promql | unstable | H J |
@MichaHoffmann |
| properties[^properties] | unstable | H JL |
@ObserverOfTime |
| proto | unstable | HFIJ |
@treywood |
| prql | unstable | H J |
@matthias-Q |
| psv | unstable | H |
@amaanq |
| pug | unstable | H J |
@zealot128 |
| puppet | unstable | HFIJL |
@amaanq |
| purescript | unstable | H JL |
@postsolar |
| pymanifest | unstable | H J |
@ObserverOfTime |
| python | stable | HFIJL |
@stsewd, @theHamsta |
| ql | unstable | HFIJL |
@pwntester |
| qmldir | unstable | H J |
@amaanq |
| qmljs | unstable | HF J |
@Decodetalkers |
| query[^query] | unstable | HFIJL |
@steelsojka |
| r | unstable | H IJL |
@ribru17 |
| racket | unstable | HF J |
|
| ralph | unstable | H J |
@tdroxler |
| rasi | unstable | HFIJL |
@Fymyte |
| razor | unstable | HF J |
@tris203 |
| rbs | unstable | HFIJ |
@joker1007 |
| re2c | unstable | HFIJL |
@amaanq |
| readline | unstable | HFIJ |
@ribru17 |
| regex | unstable | H |
@theHamsta |
| rego | unstable | H J |
@FallenAngel97 |
| requirements | unstable | H J |
@ObserverOfTime |
| rescript | unstable | HFIJL |
@ribru17 |
| rifleconf | unstable | H J |
@purarue |
| rnoweb | unstable | HF J |
@bamonroe |
| robot | unstable | HFIJ |
@Hubro |
| robots | unstable | H J |
@opa-oz |
| roc | unstable | H IJL |
@nat-418 |
| ron | unstable | HFIJL |
@amaanq |
| rst | unstable | H JL |
@stsewd |
| ruby | unstable | HFIJL |
@TravonteD |
| runescript | unstable | H J |
@2004Scape |
| rust | unstable | HFIJL |
@amaanq |
| scala | unstable | HF JL |
@stevanmilic |
| scfg | unstable | H J |
@WhyNotHugo |
| scheme | unstable | HF J |
|
| scss | unstable | HFIJ |
@elianiva |
| sflog[^sflog] | unstable | H |
@aheber, @xixiaofinland |
| slang[^slang] | unstable | HFIJL |
@theHamsta |
| slim | unstable | HFIJL |
@theoo |
| slint | unstable | HFIJL |
@hunger |
| smali | unstable | HFIJL |
@amaanq |
| smithy | unstable | H J |
@amaanq, @keynmol |
| snakemake | unstable | HFIJL |
@osthomas |
| snl[^snl] | unstable | HFIJL |
@minijackson |
| solidity | unstable | HF J |
@amaanq |
| soql | unstable | H |
@aheber, @xixiafinland |
| sosl | unstable | H |
@aheber, @xixiafinland |
| sourcepawn | unstable | H JL |
@Sarrus1 |
| sparql | unstable | HFIJL |
@GordianDziwis |
| sproto | unstable | HFIJ |
@hanxi |
| sql | unstable | HFIJ |
@derekstride |
| squirrel | unstable | HFIJL |
@amaanq |
| ssh_config | unstable | HFIJL |
@ObserverOfTime |
| starlark | unstable | HFIJL |
@amaanq |
| strace | unstable | H J |
@amaanq |
| styled | unstable | HFIJ |
@mskelton |
| supercollider | unstable | HFIJL |
@madskjeldgaard |
| superhtml | unstable | H J |
@rockorager |
| surface | unstable | HFIJ |
@connorlay |
| svelte | unstable | HFIJL |
@amaanq |
| sway | unstable | HFIJL |
@ribru17 |
| swift | unstable | HFIJL |
@alex-pinkus |
| sxhkdrc | unstable | HF J |
@RaafatTurki |
| systemtap | unstable | HF JL |
@ok-ryoko |
| systemverilog | unstable | HF J |
@zhangwwpeng |
| t32 | unstable | HFIJL |
@xasc |
| tablegen | unstable | HFIJL |
@amaanq |
| tact | unstable | HFIJL |
@novusnota |
| tcl | unstable | HFIJ |
@lewis6991 |
| teal | unstable | HFIJL |
@euclidianAce |
| templ | unstable | HF J |
@vrischmann |
| tera | unstable | H J |
@uncenter |
| terraform | unstable | HFIJ |
@MichaHoffmann |
| textproto | unstable | HFIJ |
@Porter |
| thrift | unstable | HFIJL |
@amaanq, @duskmoon314 |
| tiger | unstable | HFIJL |
@ambroisie |
| tlaplus | unstable | HF JL |
@ahelwer, @susliko |
| tmux | unstable | H J |
@Freed-Wu, @stevenxxiu |
| todotxt | unstable | H |
@arnarg |
| toml | unstable | HFIJL |
@tk-shirasaka |
| tsv | unstable | H |
@amaanq |
| tsx | unstable | HFIJL |
@steelsojka |
| turtle | unstable | HFIJL |
@GordianDziwis |
| twig | unstable | H J |
@gbprod |
| typescript | unstable | HFIJL |
@steelsojka |
| typespec | unstable | H IJ |
@happenslol |
| typoscript | unstable | HFIJ |
@Teddytrombone |
| typst | unstable | HFIJ |
@uben0, @RaafatTurki |
| udev | unstable | H JL |
@ObserverOfTime |
| ungrammar | unstable | HFIJL |
@Philipp-M, @amaanq |
| unison | unstable | HF J |
@tapegram |
| usd | unstable | HFIJL |
@ColinKennedy |
| uxntal | unstable | HFIJL |
@amaanq |
| v | unstable | HFIJL |
@kkharji, @amaanq |
| vala | unstable | HF J |
@Prince781 |
| vento | unstable | H J |
@wrapperup, @oscarotero |
| vhdl | unstable | HF J |
@jpt13653903 |
| vhs | unstable | H J |
@caarlos0 |
| vim | unstable | HF JL |
@clason |
| vimdoc | unstable | H J |
@clason |
| vrl | unstable | HFIJL |
@belltoy |
| vue | unstable | HFIJ |
@WhyNotHugo, @lucario387 |
| wgsl | unstable | HFIJ |
@szebniok |
| wgsl_bevy | unstable | HFI |
@theHamsta |
| wing | unstable | HF JL |
@gshpychka, @MarkMcCulloh |
| wit | stable | HF J |
@mkatychev |
| wxml | unstable | HFIJ |
@BlockLune |
| xcompose | unstable | H JL |
@ObserverOfTime |
| xml | unstable | HFIJL |
@ObserverOfTime |
| xresources | unstable | HF JL |
@ValdezFOmar |
| yaml | unstable | HFIJL |
@amaanq |
| yang | unstable | HFIJ |
@Hubro |
| yuck | unstable | HFIJL |
@Philipp-M, @amaanq |
| zathurarc | unstable | H J |
@Freed-Wu |
| zig | unstable | HFIJL |
@amaanq |
| ziggy | unmaintained | H I |
|
| ziggy_schema | unmaintained | H I |
|
| zsh | stable | HF JL |
@georgeharker |
| [^bp]: Android Blueprint | |||
| [^ecma]: queries required by javascript, typescript, tsx, qmljs | |||
| [^gap]: GAP system | |||
| [^gaptst]: GAP system test files | |||
| [^gdscript]: Godot | |||
| [^glimmer]: Glimmer and Ember | |||
| [^godot_resource]: Godot Resources | |||
| [^html_tags]: queries required by html, astro, vue, svelte | |||
| [^jinja]: basic highlighting | |||
| [^jinja_inline]: needed for full highlighting | |||
| [^jsx]: queries required by javascript, tsx | |||
| [^luap]: Lua patterns | |||
| [^markdown]: basic highlighting | |||
| [^markdown_inline]: needed for full highlighting | |||
| [^php]: PHP with embedded HTML | |||
| [^php_only]: PHP without embedded HTML | |||
| [^poe_filter]: Path of Exile item filter | |||
| [^properties]: Java properties files | |||
| [^query]: Tree-sitter query language | |||
| [^sflog]: Salesforce debug log | |||
| [^slang]: Shader Slang | |||
| [^snl]: EPICS Sequencer's SNL files |
