<feed xmlns='http://www.w3.org/2005/Atom'>
<title>nvim-treesitter, branch main</title>
<subtitle>[no description]</subtitle>
<id>http://git.sudomsg.com/mirror/nvim-treesitter/atom/?h=main</id>
<link rel='self' href='http://git.sudomsg.com/mirror/nvim-treesitter/atom/?h=main'/>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/nvim-treesitter/'/>
<updated>2026-09-01T07:08:10Z</updated>
<entry>
<title>feat(proto)!: update parser and queries</title>
<updated>2026-09-01T07:08:10Z</updated>
<author>
<name>Christian Clason</name>
<email>c.clason@uni-graz.at</email>
</author>
<published>2026-09-01T06:52:15Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/nvim-treesitter/commit/?id=427e9222363d07c32d6db6169e4049c28d58d141'/>
<id>urn:sha1:427e9222363d07c32d6db6169e4049c28d58d141</id>
<content type='text'>
Breaking change: anonymous nodes ""proto3"" and ""proto2"" removed
</content>
</entry>
<entry>
<title>ci(generate): increase max_jobs to 10</title>
<updated>2026-08-31T09:13:15Z</updated>
<author>
<name>Christian Clason</name>
<email>c.clason@uni-graz.at</email>
</author>
<published>2026-08-31T09:02:51Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/nvim-treesitter/commit/?id=19071296d3d643b48615ee574a20e8a03ac40872'/>
<id>urn:sha1:19071296d3d643b48615ee574a20e8a03ac40872</id>
<content type='text'>
In tree-sitter 0.27.0, the `tree-sitter generate` was reworked to
significantly reduce memory consumption, making higher parallelism
possible. The bottleneck is now network I/O in GHA, same as for the
basic build check.
</content>
</entry>
<entry>
<title>bot(parsers): update fish, gitcommit, matlab, mlir, scala, sourcepawn, swift, twig, vhdl</title>
<updated>2026-08-29T12:52:07Z</updated>
<author>
<name>nvim-treesitter-bot[bot]</name>
<email>157957100+nvim-treesitter-bot[bot]@users.noreply.github.com</email>
</author>
<published>2026-08-29T12:46:38Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/nvim-treesitter/commit/?id=857651fce37eba032ebe28f3a206283cdc65c45a'/>
<id>urn:sha1:857651fce37eba032ebe28f3a206283cdc65c45a</id>
<content type='text'>
</content>
</entry>
<entry>
<title>docs(djot): mark as unmaintained</title>
<updated>2026-08-23T11:08:21Z</updated>
<author>
<name>Christian Clason</name>
<email>c.clason@uni-graz.at</email>
</author>
<published>2026-08-23T11:02:06Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/nvim-treesitter/commit/?id=8b98b4470eb326f1c7b50dae79f8c963568e5720'/>
<id>urn:sha1:8b98b4470eb326f1c7b50dae79f8c963568e5720</id>
<content type='text'>
Project moved to codeberg with no Github mirror (repo was archived
instead), so document reality.

(The language may be dropped in the future.)
</content>
</entry>
<entry>
<title>bot(parsers): update apex, json, liquidsoap, mlir, pkl, racket, rego, scala, sflog, soql, sosl, sourcepawn, swift, vhdl, wxml</title>
<updated>2026-08-22T07:14:15Z</updated>
<author>
<name>nvim-treesitter-bot[bot]</name>
<email>157957100+nvim-treesitter-bot[bot]@users.noreply.github.com</email>
</author>
<published>2026-08-22T07:09:37Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/nvim-treesitter/commit/?id=e82ef6ae2c3eeb96c6916b29917f96bf630b2cdb'/>
<id>urn:sha1:e82ef6ae2c3eeb96c6916b29917f96bf630b2cdb</id>
<content type='text'>
</content>
</entry>
<entry>
<title>bot(parsers): update bpftrace, brightscript, diff, doxygen, julia, mlir, nu, proto, scala, sourcepawn, superhtml, swift, vhdl</title>
<updated>2026-08-15T07:11:23Z</updated>
<author>
<name>nvim-treesitter-bot[bot]</name>
<email>157957100+nvim-treesitter-bot[bot]@users.noreply.github.com</email>
</author>
<published>2026-08-15T07:06:32Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/nvim-treesitter/commit/?id=074aa4422bf029908338e855d0c0f71470a971bb'/>
<id>urn:sha1:074aa4422bf029908338e855d0c0f71470a971bb</id>
<content type='text'>
</content>
</entry>
<entry>
<title>feat(diff): update parser and queries</title>
<updated>2026-08-13T08:22:42Z</updated>
<author>
<name>Christian Clason</name>
<email>c.clason@uni-graz.at</email>
</author>
<published>2026-08-13T08:12:12Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/nvim-treesitter/commit/?id=a1bcffc8095c142ad1f7a9671a4ae180333f9209'/>
<id>urn:sha1:a1bcffc8095c142ad1f7a9671a4ae180333f9209</id>
<content type='text'>
</content>
</entry>
<entry>
<title>feat(teal)!: update parser and queries</title>
<updated>2026-08-13T08:17:22Z</updated>
<author>
<name>Christian Clason</name>
<email>c.clason@uni-graz.at</email>
</author>
<published>2026-08-13T08:02:34Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/nvim-treesitter/commit/?id=3d71e1b3995c9680d3d301bc796f14d6900795d4'/>
<id>urn:sha1:3d71e1b3995c9680d3d301bc796f14d6900795d4</id>
<content type='text'>
Breaking change: `(function_name)` node replaced by
`(table_function_name)`.
</content>
</entry>
<entry>
<title>bot(parsers): update fsharp, javadoc, kotlin, latex, luadoc, mlir, nginx, ocaml, ocaml_interface, proto, scala, swift, tcl, templ, twig, usd</title>
<updated>2026-08-08T07:55:51Z</updated>
<author>
<name>nvim-treesitter-bot[bot]</name>
<email>157957100+nvim-treesitter-bot[bot]@users.noreply.github.com</email>
</author>
<published>2026-08-08T07:28:08Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/nvim-treesitter/commit/?id=c9f9ed6c1892f629ea399f4ee7905f2686fa13f2'/>
<id>urn:sha1:c9f9ed6c1892f629ea399f4ee7905f2686fa13f2</id>
<content type='text'>
</content>
</entry>
<entry>
<title>test(usd): fix failing highlight test</title>
<updated>2026-08-08T07:55:51Z</updated>
<author>
<name>Christian Clason</name>
<email>c.clason@uni-graz.at</email>
</author>
<published>2026-08-08T07:51:00Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/nvim-treesitter/commit/?id=5339b01359ffd727ff30ea8310bf805d72fee2b7'/>
<id>urn:sha1:5339b01359ffd727ff30ea8310bf805d72fee2b7</id>
<content type='text'>
</content>
</entry>
<entry>
<title>feat(scala)!: update parser and queries</title>
<updated>2026-08-05T17:21:39Z</updated>
<author>
<name>Christian Clason</name>
<email>c.clason@uni-graz.at</email>
</author>
<published>2026-08-05T15:09:43Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/nvim-treesitter/commit/?id=3d3321b560a63ff92a8692401f303a5123336b86'/>
<id>urn:sha1:3d3321b560a63ff92a8692401f303a5123336b86</id>
<content type='text'>
Also add indents queries from upstream.

Breaking change: `(end)` node replaced by scanner-lexed `(end_marker)`
</content>
</entry>
<entry>
<title>bot(parsers): update gnuplot</title>
<updated>2026-08-01T08:55:43Z</updated>
<author>
<name>nvim-treesitter-bot[bot]</name>
<email>157957100+nvim-treesitter-bot[bot]@users.noreply.github.com</email>
</author>
<published>2026-08-01T08:38:47Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/nvim-treesitter/commit/?id=7b6cc8949f9999c5ed91436cbe24aa5f99c42025'/>
<id>urn:sha1:7b6cc8949f9999c5ed91436cbe24aa5f99c42025</id>
<content type='text'>
</content>
</entry>
<entry>
<title>bot(parsers): update ada, diff, erlang, fsharp, javadoc, mlir, nickel, nu, proto, razor, scala, templ, vhdl</title>
<updated>2026-08-01T08:43:57Z</updated>
<author>
<name>nvim-treesitter-bot[bot]</name>
<email>157957100+nvim-treesitter-bot[bot]@users.noreply.github.com</email>
</author>
<published>2026-08-01T08:39:11Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/nvim-treesitter/commit/?id=5397d99bec395940dec608b2b3689ab79951b79b'/>
<id>urn:sha1:5397d99bec395940dec608b2b3689ab79951b79b</id>
<content type='text'>
</content>
</entry>
<entry>
<title>feat(gnuplot)!: update parser and queries to v4.0.1</title>
<updated>2026-07-30T10:24:43Z</updated>
<author>
<name>Christian Clason</name>
<email>c.clason@uni-graz.at</email>
</author>
<published>2026-07-27T12:32:25Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/nvim-treesitter/commit/?id=0f32dff7f19476629c77467f887b95e5e2d33509'/>
<id>urn:sha1:0f32dff7f19476629c77467f887b95e5e2d33509</id>
<content type='text'>
Breaking changes: https://github.com/dpezto/tree-sitter-gnuplot/releases/tag/v4.0.0
</content>
</entry>
<entry>
<title>feat(gnuplot): mark as tier 1</title>
<updated>2026-07-26T08:24:12Z</updated>
<author>
<name>Christian Clason</name>
<email>c.clason@uni-graz.at</email>
</author>
<published>2026-07-26T08:15:46Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/nvim-treesitter/commit/?id=61df84986b4b4ec469ee745a182e433d49f8c27e'/>
<id>urn:sha1:61df84986b4b4ec469ee745a182e433d49f8c27e</id>
<content type='text'>
Problem: Too many breaking changes during development.

Solution: Pin to revisions to reduce breaking churn. Note: Queries are
synced with upstream (with corrected formatting and docs adjustments).
</content>
</entry>
<entry>
<title>bot(parsers): update diff, elixir, elm, erlang, fsharp, git_config, gnuplot, idl, javadoc, kitty, markdown, markdown_inline, mlir, nickel, php, php_only, scala, ssh_config, superhtml, systemverilog</title>
<updated>2026-07-25T08:33:27Z</updated>
<author>
<name>nvim-treesitter-bot[bot]</name>
<email>157957100+nvim-treesitter-bot[bot]@users.noreply.github.com</email>
</author>
<published>2026-07-25T08:28:24Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/nvim-treesitter/commit/?id=8b3a191c015dd66a92d51a112ed96af0aac13b63'/>
<id>urn:sha1:8b3a191c015dd66a92d51a112ed96af0aac13b63</id>
<content type='text'>
</content>
</entry>
<entry>
<title>feat(bpftrace)!: update parser and queries</title>
<updated>2026-07-25T08:25:53Z</updated>
<author>
<name>Christian Clason</name>
<email>c.clason@uni-graz.at</email>
</author>
<published>2026-07-25T08:18:57Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/nvim-treesitter/commit/?id=e2ad060286ed8a759f8f35f5def22be93737d801'/>
<id>urn:sha1:e2ad060286ed8a759f8f35f5def22be93737d801</id>
<content type='text'>
Breaking change: replace `(identifier)` by `(wildcard_identifier)` in
some patterns.
</content>
</entry>
<entry>
<title>feat(gnuplot)!: update parser and queries</title>
<updated>2026-07-24T20:40:03Z</updated>
<author>
<name>Christian Clason</name>
<email>c.clason@uni-graz.at</email>
</author>
<published>2026-07-24T20:33:48Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/nvim-treesitter/commit/?id=0153df68b44fa97a3e11696ca55cbdd7a6d42398'/>
<id>urn:sha1:0153df68b44fa97a3e11696ca55cbdd7a6d42398</id>
<content type='text'>
</content>
</entry>
<entry>
<title>ci: bump actions/checkout from 6 to 7 in the actions group</title>
<updated>2026-07-24T16:38:49Z</updated>
<author>
<name>dependabot[bot]</name>
<email>49699333+dependabot[bot]@users.noreply.github.com</email>
</author>
<published>2026-07-24T16:33:37Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/nvim-treesitter/commit/?id=a03c6283b079df3ec55705d4702d515ab2072267'/>
<id>urn:sha1:a03c6283b079df3ec55705d4702d515ab2072267</id>
<content type='text'>
Bumps the actions group with 1 update: [actions/checkout](https://github.com/actions/checkout).


Updates `actions/checkout` from 6 to 7
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](https://github.com/actions/checkout/compare/v6...v7)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-version: '7'
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: actions
...

Signed-off-by: dependabot[bot] &lt;support@github.com&gt;</content>
</entry>
<entry>
<title>feat(gnuplot)!: update parser and queries</title>
<updated>2026-07-23T20:05:57Z</updated>
<author>
<name>Christian Clason</name>
<email>c.clason@uni-graz.at</email>
</author>
<published>2026-07-23T20:01:16Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/nvim-treesitter/commit/?id=bd41519ff7901da11ba6e1c8f419f17f2d94305a'/>
<id>urn:sha1:bd41519ff7901da11ba6e1c8f419f17f2d94305a</id>
<content type='text'>
</content>
</entry>
<entry>
<title>feat(diff): update parser and queries</title>
<updated>2026-07-23T07:41:14Z</updated>
<author>
<name>Christian Clason</name>
<email>c.clason@uni-graz.at</email>
</author>
<published>2026-07-23T07:35:13Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/nvim-treesitter/commit/?id=a45a920ec04cda5624f6dea0ff6454c81c3ad2d5'/>
<id>urn:sha1:a45a920ec04cda5624f6dea0ff6454c81c3ad2d5</id>
<content type='text'>
</content>
</entry>
<entry>
<title>fix(python): improve f-string injections (#8644)</title>
<updated>2026-07-19T22:29:57Z</updated>
<author>
<name>Christian Clason</name>
<email>c.clason@uni-graz.at</email>
</author>
<published>2026-07-19T22:29:57Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/nvim-treesitter/commit/?id=7248feaca45e4d944591497964bc19afa89ad1c6'/>
<id>urn:sha1:7248feaca45e4d944591497964bc19afa89ad1c6</id>
<content type='text'>
Problem: Neovim removed match limits, which can lead to catastrophic performance with injection queries.

Solution: Tighten up f-string injections.</content>
</entry>
<entry>
<title>bot(parsers): update inko</title>
<updated>2026-07-18T20:36:59Z</updated>
<author>
<name>nvim-treesitter-bot[bot]</name>
<email>157957100+nvim-treesitter-bot[bot]@users.noreply.github.com</email>
</author>
<published>2026-07-18T20:26:55Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/nvim-treesitter/commit/?id=24977147550d53589e53b874ec75e14e4fbc304e'/>
<id>urn:sha1:24977147550d53589e53b874ec75e14e4fbc304e</id>
<content type='text'>
</content>
</entry>
<entry>
<title>bot(parsers): update angular, apex, beancount, blade, bpftrace, c, cmake, cue, d, dart, devicetree, diff, djot, elixir, elm, enforce, erlang, faust, fish, forth, fortran, fsharp, gap, git_rebase, gitcommit, gleam, glimmer, glimmer_javascript, gren, groovy, haskell, htmldjango, idl, ispc, janet_simple, javadoc, json5, julia, kcl, kitty, kos, kotlin, koto, liquid, m68k, markdown, markdown_inline, matlab, meson, mlir, nickel, nim, nix, nu, ocaml, ocaml_interface, perl, php, php_only, pkl, pod, powershell, proto, ql, qmldir, qmljs, query, r, racket, razor, rego, requirements, rescript, rst, scala, sflog, slim, soql, sosl, ssh_config, superhtml, swift, systemverilog, t32, tact, templ, twig, v, vhdl, vim, vimdoc, yaml, zsh</title>
<updated>2026-07-18T20:31:45Z</updated>
<author>
<name>nvim-treesitter-bot[bot]</name>
<email>157957100+nvim-treesitter-bot[bot]@users.noreply.github.com</email>
</author>
<published>2026-07-18T20:27:19Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/nvim-treesitter/commit/?id=d397655e1368bb377ada1a1d5499ef0aedc31fd1'/>
<id>urn:sha1:d397655e1368bb377ada1a1d5499ef0aedc31fd1</id>
<content type='text'>
</content>
</entry>
<entry>
<title>feat(prolog,problog)!: drop support</title>
<updated>2026-07-18T20:23:55Z</updated>
<author>
<name>Christian Clason</name>
<email>c.clason@uni-graz.at</email>
</author>
<published>2026-07-18T20:17:39Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/nvim-treesitter/commit/?id=ddc93c679358c3a530e1f1e6089660887071fbc1'/>
<id>urn:sha1:ddc93c679358c3a530e1f1e6089660887071fbc1</id>
<content type='text'>
user removed from github
</content>
</entry>
<entry>
<title>feat(diff): update parser and queries</title>
<updated>2026-07-18T20:23:55Z</updated>
<author>
<name>Christian Clason</name>
<email>c.clason@uni-graz.at</email>
</author>
<published>2026-07-16T17:22:18Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/nvim-treesitter/commit/?id=1971f839b2c27c09a59da5f794e96159e5862a0b'/>
<id>urn:sha1:1971f839b2c27c09a59da5f794e96159e5862a0b</id>
<content type='text'>
</content>
</entry>
<entry>
<title>feat(wit)!: update parser and queries</title>
<updated>2026-07-18T20:23:55Z</updated>
<author>
<name>Christian Clason</name>
<email>c.clason@uni-graz.at</email>
</author>
<published>2026-07-15T21:24:36Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/nvim-treesitter/commit/?id=17f039f472de1b86ec5d179d1d5a5156ed7c6e26'/>
<id>urn:sha1:17f039f472de1b86ec5d179d1d5a5156ed7c6e26</id>
<content type='text'>
Breaking change: `(package_decl)` renamed to `(decl_head)`
</content>
</entry>
<entry>
<title>fix(hlsplaylist,muttrc,tmux,zathurarc)!: drop support</title>
<updated>2026-07-18T20:23:55Z</updated>
<author>
<name>Christian Clason</name>
<email>c.clason@uni-graz.at</email>
</author>
<published>2026-07-15T10:08:54Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/nvim-treesitter/commit/?id=78bebef150057eff7f26044bb177fbbf82ff047d'/>
<id>urn:sha1:78bebef150057eff7f26044bb177fbbf82ff047d</id>
<content type='text'>
Upstream removed all generated files from the main branch, so these
parsers are no longer installable.
</content>
</entry>
<entry>
<title>feat(tmux)!: update parser and queries</title>
<updated>2026-07-18T20:23:55Z</updated>
<author>
<name>Christian Clason</name>
<email>c.clason@uni-graz.at</email>
</author>
<published>2026-07-12T15:06:13Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/nvim-treesitter/commit/?id=07204cd6ae8abdb801a4707e71a15c03e436737a'/>
<id>urn:sha1:07204cd6ae8abdb801a4707e71a15c03e436737a</id>
<content type='text'>
Breaking change: removed nodes
</content>
</entry>
<entry>
<title>tests(indent): adapt scandir to nightly changes</title>
<updated>2026-07-18T20:23:55Z</updated>
<author>
<name>Christian Clason</name>
<email>c.clason@uni-graz.at</email>
</author>
<published>2026-07-12T11:20:12Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/nvim-treesitter/commit/?id=8dfe21ae8290475ced929e22a564ad3f6f27d57a'/>
<id>urn:sha1:8dfe21ae8290475ced929e22a564ad3f6f27d57a</id>
<content type='text'>
Problem: `vim.fs.find` on Nvim 0.13 changed its return value to also
return errors (if any), which broke its use for building a list of files
in directories (since the empty error list got included).

Solution: Only capture first return value.
</content>
</entry>
<entry>
<title>feat(jinja,jinja_inline)!: update parser and queries</title>
<updated>2026-07-18T20:23:55Z</updated>
<author>
<name>Christian Clason</name>
<email>c.clason@uni-graz.at</email>
</author>
<published>2026-07-02T10:26:27Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/nvim-treesitter/commit/?id=e778b6097dc8ed79cf288ac31d92869dd2880f95'/>
<id>urn:sha1:e778b6097dc8ed79cf288ac31d92869dd2880f95</id>
<content type='text'>
Breaking change: replace anonymous control flow nodes with named nodes.
</content>
</entry>
<entry>
<title>feat(gnuplot!): update parser and queries</title>
<updated>2026-07-18T20:23:55Z</updated>
<author>
<name>Christian Clason</name>
<email>c.clason@uni-graz.at</email>
</author>
<published>2026-07-02T08:12:39Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/nvim-treesitter/commit/?id=fc6ad62eabcbd37c0e11a3dc558844a132067ea0'/>
<id>urn:sha1:fc6ad62eabcbd37c0e11a3dc558844a132067ea0</id>
<content type='text'>
Breaking change: full grammar rewrite for 2.0
</content>
</entry>
<entry>
<title>fix(ruby): add anchors to doc comment headers</title>
<updated>2026-07-18T20:23:55Z</updated>
<author>
<name>Christian Clason</name>
<email>c.clason@uni-graz.at</email>
</author>
<published>2026-07-01T16:40:36Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/nvim-treesitter/commit/?id=536de0c8aec0a54c0cab2974b0b0708b24a46b2b'/>
<id>urn:sha1:536de0c8aec0a54c0cab2974b0b0708b24a46b2b</id>
<content type='text'>
Prevents catastrophic slowdown in the tree-sitter query engine after
0.26.10.
</content>
</entry>
<entry>
<title>ci(emmylua): pin emmyluals at v0.22.0</title>
<updated>2026-07-18T20:23:55Z</updated>
<author>
<name>Christian Clason</name>
<email>c.clason@uni-graz.at</email>
</author>
<published>2026-07-01T09:23:05Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/nvim-treesitter/commit/?id=515b2f6e2f4f9eafee8bb50310a156ec65f1b543'/>
<id>urn:sha1:515b2f6e2f4f9eafee8bb50310a156ec65f1b543</id>
<content type='text'>
Later versions trigger spurious warnings in the async wrappers.
</content>
</entry>
<entry>
<title>feat(markdown): conceal backslash in escapes</title>
<updated>2026-07-18T20:23:55Z</updated>
<author>
<name>Christian Clason</name>
<email>c.clason@uni-graz.at</email>
</author>
<published>2026-07-01T08:07:31Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/nvim-treesitter/commit/?id=35aa36a65b20bd023a65918cd8b961dd52f0be95'/>
<id>urn:sha1:35aa36a65b20bd023a65918cd8b961dd52f0be95</id>
<content type='text'>
</content>
</entry>
<entry>
<title>docs(slint): mark as unmaintained</title>
<updated>2026-07-18T20:23:55Z</updated>
<author>
<name>Christian Clason</name>
<email>c.clason@uni-graz.at</email>
</author>
<published>2026-06-25T08:08:28Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/nvim-treesitter/commit/?id=61efd016eb02fb593d660bfa16cd83274e3dca77'/>
<id>urn:sha1:61efd016eb02fb593d660bfa16cd83274e3dca77</id>
<content type='text'>
Breaking grammar updates without reference queries
</content>
</entry>
<entry>
<title>chore(csharp): move to tier 1</title>
<updated>2026-07-18T20:23:55Z</updated>
<author>
<name>Christian Clason</name>
<email>c.clason@uni-graz.at</email>
</author>
<published>2026-06-12T08:17:17Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/nvim-treesitter/commit/?id=5507d1e1170919dca3af314d2ab658067fcbc9e0'/>
<id>urn:sha1:5507d1e1170919dca3af314d2ab658067fcbc9e0</id>
<content type='text'>
Breaking changes to HEAD affect downstream grammars (e.g., razor),
so we need to pin to releases and update only when all dependents
bump the tracked version.
</content>
</entry>
<entry>
<title>feat(swift)!: update parser and queries</title>
<updated>2026-07-18T20:23:55Z</updated>
<author>
<name>Christian Clason</name>
<email>c.clason@uni-graz.at</email>
</author>
<published>2026-06-01T07:39:02Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/nvim-treesitter/commit/?id=b00c4ca723084e6f4eaac0cb10d55306cd8c979a'/>
<id>urn:sha1:b00c4ca723084e6f4eaac0cb10d55306cd8c979a</id>
<content type='text'>
Breaking change: replace anonymous node `"nil"` with named node
`(nil_literal)`.
</content>
</entry>
<entry>
<title>feat(c3)!: update parser and queries</title>
<updated>2026-07-18T20:23:55Z</updated>
<author>
<name>Christian Clason</name>
<email>c.clason@uni-graz.at</email>
</author>
<published>2026-05-27T16:33:52Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/nvim-treesitter/commit/?id=afa0cb8669d8c1b1873bda2915bbe5c104a0fde4'/>
<id>urn:sha1:afa0cb8669d8c1b1873bda2915bbe5c104a0fde4</id>
<content type='text'>
Breaking change: add `expression` supertype
</content>
</entry>
<entry>
<title>feat(gnuplot)!: update parser and queries</title>
<updated>2026-07-18T20:23:55Z</updated>
<author>
<name>Christian Clason</name>
<email>c.clason@uni-graz.at</email>
</author>
<published>2026-05-26T14:16:55Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/nvim-treesitter/commit/?id=0011ad541b95702f737479cd038117dd625489ce'/>
<id>urn:sha1:0011ad541b95702f737479cd038117dd625489ce</id>
<content type='text'>
Breaking change: full rewrite for Gnuplot 6.x

Also add folds query
</content>
</entry>
<entry>
<title>feat(r)!: update parser and queries</title>
<updated>2026-07-18T20:23:55Z</updated>
<author>
<name>Christian Clason</name>
<email>c.clason@uni-graz.at</email>
</author>
<published>2026-05-21T22:07:29Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/nvim-treesitter/commit/?id=2ec268b5d05e571237ae017519601e7b7529b8d5'/>
<id>urn:sha1:2ec268b5d05e571237ae017519601e7b7529b8d5</id>
<content type='text'>
Breaking change: remove node `(return)` in favor of `(identifier)`
</content>
</entry>
<entry>
<title>feat(c3)!: update parser and queries</title>
<updated>2026-07-18T20:23:55Z</updated>
<author>
<name>Christian Clason</name>
<email>c.clason@uni-graz.at</email>
</author>
<published>2026-05-16T21:37:04Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/nvim-treesitter/commit/?id=0c3a9cdfa225733a3daa9fdf519be72f1e145e03'/>
<id>urn:sha1:0c3a9cdfa225733a3daa9fdf519be72f1e145e03</id>
<content type='text'>
Update for C3 v0.8
</content>
</entry>
<entry>
<title>feat(rescript)!: update parser and queries</title>
<updated>2026-07-18T20:23:55Z</updated>
<author>
<name>Christian Clason</name>
<email>c.clason@uni-graz.at</email>
</author>
<published>2026-04-24T15:01:28Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/nvim-treesitter/commit/?id=7a7a1591e09c36001af5c80394b5ba8746dcc6d8'/>
<id>urn:sha1:7a7a1591e09c36001af5c80394b5ba8746dcc6d8</id>
<content type='text'>
Breaking change: `(comment)` node is split into `(line_comment)` and
`(block_comment)`
</content>
</entry>
<entry>
<title>feat(razor)!: update parser and queries</title>
<updated>2026-07-18T20:23:55Z</updated>
<author>
<name>Christian Clason</name>
<email>c.clason@uni-graz.at</email>
</author>
<published>2026-04-15T17:03:17Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/nvim-treesitter/commit/?id=0f2324ac88f4b97c32a7c0fa84fd06a2ff33680c'/>
<id>urn:sha1:0f2324ac88f4b97c32a7c0fa84fd06a2ff33680c</id>
<content type='text'>
Breaking change: `(at_await)` node removed
</content>
</entry>
<entry>
<title>feat(enforce)!: update parser and queries</title>
<updated>2026-07-18T20:23:55Z</updated>
<author>
<name>Christian Clason</name>
<email>c.clason@uni-graz.at</email>
</author>
<published>2026-04-14T16:57:47Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/nvim-treesitter/commit/?id=ef7a00503b7ae49257dc9a1a7bccb3b66db121bb'/>
<id>urn:sha1:ef7a00503b7ae49257dc9a1a7bccb3b66db121bb</id>
<content type='text'>
Breaking change: rename directive nodes `(foo)` to `(preproc_foo)`.
</content>
</entry>
<entry>
<title>feat(kotlin)!: update parser and queries</title>
<updated>2026-07-18T20:23:55Z</updated>
<author>
<name>Christian Clason</name>
<email>c.clason@uni-graz.at</email>
</author>
<published>2026-04-14T16:56:49Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/nvim-treesitter/commit/?id=3e1f54c1ce0a86959313f1cb7f60262ea57aaa23'/>
<id>urn:sha1:3e1f54c1ce0a86959313f1cb7f60262ea57aaa23</id>
<content type='text'>
Breaking change: replace`${` and `}` nodes in interpolated expressions,
by `(interpolation_expression_start)` and `(interpolation_expression_end)`
</content>
</entry>
<entry>
<title>feat(fortran)!: update parser and queries</title>
<updated>2026-07-18T20:23:55Z</updated>
<author>
<name>Christian Clason</name>
<email>c.clason@uni-graz.at</email>
</author>
<published>2026-04-14T16:54:14Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/nvim-treesitter/commit/?id=13b9486db3d01db63315661d1963c3135c4c6538'/>
<id>urn:sha1:13b9486db3d01db63315661d1963c3135c4c6538</id>
<content type='text'>
Breaking change: drop escape for operator nodes
</content>
</entry>
<entry>
<title>fix(health): normalize rtp when checking install_dir</title>
<updated>2026-04-03T13:11:40Z</updated>
<author>
<name>Christian Clason</name>
<email>c.clason@uni-graz.at</email>
</author>
<published>2026-04-03T13:05:06Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/nvim-treesitter/commit/?id=4916d6592ede8c07973490d9322f187e07dfefac'/>
<id>urn:sha1:4916d6592ede8c07973490d9322f187e07dfefac</id>
<content type='text'>
Problem: Windows.

Solution: vim.fs.normalize.
</content>
</entry>
<entry>
<title>ci(tests): remove ilammy/msvc-dev-cmd</title>
<updated>2026-04-03T12:38:57Z</updated>
<author>
<name>Christian Clason</name>
<email>c.clason@uni-graz.at</email>
</author>
<published>2026-04-03T12:26:51Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/nvim-treesitter/commit/?id=234d76709e8de5efe0357458e097b633a1886890'/>
<id>urn:sha1:234d76709e8de5efe0357458e097b633a1886890</id>
<content type='text'>
Problem: Action uses deprecated Node 20, and Windows runners have a
current msvc build tools by default.

Solution: Remove action.
</content>
</entry>
<entry>
<title>fix(yuck): improper use of supertypes in queries</title>
<updated>2026-04-03T12:23:36Z</updated>
<author>
<name>Christian Clason</name>
<email>c.clason@uni-graz.at</email>
</author>
<published>2026-04-03T12:05:55Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/nvim-treesitter/commit/?id=2098db61dcca4857465c340ee29c81f12c7355e8'/>
<id>urn:sha1:2098db61dcca4857465c340ee29c81f12c7355e8</id>
<content type='text'>
Problem: `(ast_block)` is a supertype, of which `(symbol)` (among
others) is a subtype, which makes the final local pattern invalid.
(This was not noticed before because the parser is stuck at ABI 14
due to a missing `tree-sitter.json`.)

Solution: Fix the pattern and use supertype where appropriate.
</content>
</entry>
<entry>
<title>feat(parsers): add jjdescription (#8625)</title>
<updated>2026-04-03T08:43:28Z</updated>
<author>
<name>Riley Bruins</name>
<email>ribru17@hotmail.com</email>
</author>
<published>2026-04-03T08:43:28Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/nvim-treesitter/commit/?id=81295eb0c5fc05ab3796a28c9f160c3ac4098106'/>
<id>urn:sha1:81295eb0c5fc05ab3796a28c9f160c3ac4098106</id>
<content type='text'>
</content>
</entry>
<entry>
<title>chore: remove redundant emmyluarc entry</title>
<updated>2026-04-02T17:03:52Z</updated>
<author>
<name>Christian Clason</name>
<email>c.clason@uni-graz.at</email>
</author>
<published>2026-04-02T16:54:02Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/nvim-treesitter/commit/?id=539abf6da5ee8702e37b82cc953131dadd570da2'/>
<id>urn:sha1:539abf6da5ee8702e37b82cc953131dadd570da2</id>
<content type='text'>
</content>
</entry>
<entry>
<title>ci: migrate to emmyluals</title>
<updated>2026-04-02T13:00:21Z</updated>
<author>
<name>Christian Clason</name>
<email>c.clason@uni-graz.at</email>
</author>
<published>2025-12-08T11:49:05Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/nvim-treesitter/commit/?id=6878ae017d691a0df1c49d8a091c88a33e4c2d50'/>
<id>urn:sha1:6878ae017d691a0df1c49d8a091c88a33e4c2d50</id>
<content type='text'>
</content>
</entry>
<entry>
<title>feat!: drop support for Nvim 0.11</title>
<updated>2026-04-01T12:59:03Z</updated>
<author>
<name>Christian Clason</name>
<email>c.clason@uni-graz.at</email>
</author>
<published>2026-04-01T08:42:59Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/nvim-treesitter/commit/?id=c82bf96f0a773d85304feeb695e1e23b2207ac35'/>
<id>urn:sha1:c82bf96f0a773d85304feeb695e1e23b2207ac35</id>
<content type='text'>
</content>
</entry>
<entry>
<title>tests: add stable Nvim</title>
<updated>2026-04-01T12:59:03Z</updated>
<author>
<name>Christian Clason</name>
<email>c.clason@uni-graz.at</email>
</author>
<published>2026-03-31T09:14:37Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/nvim-treesitter/commit/?id=90cd6580e720caedacb91fdd587b747a6e77d61f'/>
<id>urn:sha1:90cd6580e720caedacb91fdd587b747a6e77d61f</id>
<content type='text'>
</content>
</entry>
<entry>
<title>bot(parsers): update beancount, gotmpl, heex, helm, idl, javadoc, jinja, jinja_inline, just, kotlin, liquid, mlir, ocaml, ocaml_interface, pkl, pod, rust, supercollider, typoscript</title>
<updated>2026-03-28T07:33:46Z</updated>
<author>
<name>nvim-treesitter-bot[bot]</name>
<email>157957100+nvim-treesitter-bot[bot]@users.noreply.github.com</email>
</author>
<published>2026-03-28T07:28:16Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/nvim-treesitter/commit/?id=7caec274fd19c12b55902a5b795100d21531391f'/>
<id>urn:sha1:7caec274fd19c12b55902a5b795100d21531391f</id>
<content type='text'>
</content>
</entry>
<entry>
<title>fix(kotlin): regex and printf injections not applying (#8613)</title>
<updated>2026-03-27T22:22:25Z</updated>
<author>
<name>Riley Bruins</name>
<email>ribru17@hotmail.com</email>
</author>
<published>2026-03-27T22:22:25Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/nvim-treesitter/commit/?id=da8bf82a534506989c7bc9189552b5fba958f0c6'/>
<id>urn:sha1:da8bf82a534506989c7bc9189552b5fba958f0c6</id>
<content type='text'>
</content>
</entry>
<entry>
<title>fix(go): highlight rune as `@character` (#8612)</title>
<updated>2026-03-27T18:37:59Z</updated>
<author>
<name>Riley Bruins</name>
<email>ribru17@hotmail.com</email>
</author>
<published>2026-03-27T18:37:59Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/nvim-treesitter/commit/?id=f059649bc39ab39d55f2a165db752c956897d4fd'/>
<id>urn:sha1:f059649bc39ab39d55f2a165db752c956897d4fd</id>
<content type='text'>
</content>
</entry>
<entry>
<title>fix(install): use rename-before-unlink on all platforms</title>
<updated>2026-03-23T09:32:51Z</updated>
<author>
<name>Adrian Wang</name>
<email>86359799+0xDamn@users.noreply.github.com</email>
</author>
<published>2026-03-23T09:32:51Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/nvim-treesitter/commit/?id=6620ae1c44dfa8623b22d0cbf873a9e8d073b849'/>
<id>urn:sha1:6620ae1c44dfa8623b22d0cbf873a9e8d073b849</id>
<content type='text'>
Problem: On macOS Apple Silicon, a plain unlink can leave stale code
signature metadata in the kernel cache, causing SIGKILL on next page
fault after `TSUpdate`.

Solution: Apply the rename-then-unlink strategy unconditionally instead
of only on Windows.</content>
</entry>
<entry>
<title>fix(parsers): track default branch for perl, pod (#8605)</title>
<updated>2026-03-22T16:49:17Z</updated>
<author>
<name>Christian Clason</name>
<email>ch.clason+github@icloud.com</email>
</author>
<published>2026-03-22T16:49:17Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/nvim-treesitter/commit/?id=875515255192864c33981c3ed66ad94e561b904a'/>
<id>urn:sha1:875515255192864c33981c3ed66ad94e561b904a</id>
<content type='text'>
Problem: non-default "release" branch tracking is broken, but the
default branch contains grammar.json.

Solution: track default `main` branch and generate parser from JSON.</content>
</entry>
<entry>
<title>fix(parsers): don't specify default branch</title>
<updated>2026-03-22T11:20:33Z</updated>
<author>
<name>Christian Clason</name>
<email>c.clason@uni-graz.at</email>
</author>
<published>2026-03-22T11:15:39Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/nvim-treesitter/commit/?id=0e0db770f2a3691fae478798342f4ac431accefd'/>
<id>urn:sha1:0e0db770f2a3691fae478798342f4ac431accefd</id>
<content type='text'>
</content>
</entry>
<entry>
<title>bot(parsers): update arduino, c3, cue, dart, fortran, fsharp, git_rebase, gleam, heex, idl, just, kotlin, ledger, mlir, nim, nu, php, php_only, powershell, proto, racket, rust, scheme, swift, vhdl</title>
<updated>2026-03-21T07:17:33Z</updated>
<author>
<name>nvim-treesitter-bot[bot]</name>
<email>157957100+nvim-treesitter-bot[bot]@users.noreply.github.com</email>
</author>
<published>2026-03-21T07:07:27Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/nvim-treesitter/commit/?id=e5f65e31a5ec0e8526b2311ff8c7aaea4a581c82'/>
<id>urn:sha1:e5f65e31a5ec0e8526b2311ff8c7aaea4a581c82</id>
<content type='text'>
</content>
</entry>
<entry>
<title>ci: bump actions/create-github-app-token in the actions group</title>
<updated>2026-03-20T16:42:48Z</updated>
<author>
<name>dependabot[bot]</name>
<email>49699333+dependabot[bot]@users.noreply.github.com</email>
</author>
<published>2026-03-20T16:37:59Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/nvim-treesitter/commit/?id=877f724846f2202a16e311bd19efb954bd1c430e'/>
<id>urn:sha1:877f724846f2202a16e311bd19efb954bd1c430e</id>
<content type='text'>
Bumps the actions group with 1 update: [actions/create-github-app-token](https://github.com/actions/create-github-app-token).


Updates `actions/create-github-app-token` from 2 to 3
- [Release notes](https://github.com/actions/create-github-app-token/releases)
- [Commits](https://github.com/actions/create-github-app-token/compare/v2...v3)

---
updated-dependencies:
- dependency-name: actions/create-github-app-token
  dependency-version: '3'
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: actions
...

Signed-off-by: dependabot[bot] &lt;support@github.com&gt;</content>
</entry>
<entry>
<title>feat(zsh)!: update parser and queries</title>
<updated>2026-03-20T09:43:21Z</updated>
<author>
<name>Christian Clason</name>
<email>c.clason@uni-graz.at</email>
</author>
<published>2026-03-20T09:38:35Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/nvim-treesitter/commit/?id=53f6ce29df5841ce26e5a9f06fb371088b8d8031'/>
<id>urn:sha1:53f6ce29df5841ce26e5a9f06fb371088b8d8031</id>
<content type='text'>
</content>
</entry>
<entry>
<title>test: replace plenary with plentest.nvim</title>
<updated>2026-03-17T17:20:03Z</updated>
<author>
<name>Christian Clason</name>
<email>c.clason@uni-graz.at</email>
</author>
<published>2026-03-17T09:12:15Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/nvim-treesitter/commit/?id=2b50ab5ccbcd9e5708deb351308edd738adbf84c'/>
<id>urn:sha1:2b50ab5ccbcd9e5708deb351308edd738adbf84c</id>
<content type='text'>
Problem: plenary.nvim as test runner is overkill and no longer
maintained.

Solution: Replace with a minimal fork based on Neovim API and vendored
luassert.
</content>
</entry>
<entry>
<title>test(indent): we have scan_dir at home</title>
<updated>2026-03-17T08:47:15Z</updated>
<author>
<name>Christian Clason</name>
<email>c.clason@uni-graz.at</email>
</author>
<published>2026-03-17T08:27:15Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/nvim-treesitter/commit/?id=2cc172c28e5550e00e6beead4599b1469469c1c7'/>
<id>urn:sha1:2cc172c28e5550e00e6beead4599b1469469c1c7</id>
<content type='text'>
</content>
</entry>
<entry>
<title>test(indent): drop plenary.path</title>
<updated>2026-03-16T21:51:41Z</updated>
<author>
<name>Christian Clason</name>
<email>c.clason@uni-graz.at</email>
</author>
<published>2026-03-16T19:50:10Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/nvim-treesitter/commit/?id=c9fea86a5a3c2d7f52e5cd53448edfaf7953bc75'/>
<id>urn:sha1:c9fea86a5a3c2d7f52e5cd53448edfaf7953bc75</id>
<content type='text'>
</content>
</entry>
<entry>
<title>feat(zsh): update parser and queries</title>
<updated>2026-03-16T19:08:58Z</updated>
<author>
<name>George Harker</name>
<email>george@george-graphics.co.uk</email>
</author>
<published>2026-03-16T19:08:58Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/nvim-treesitter/commit/?id=b9f9d692f1c7f0427502a3b84fa25d4bedb29ec1'/>
<id>urn:sha1:b9f9d692f1c7f0427502a3b84fa25d4bedb29ec1</id>
<content type='text'>
add `;|` highlighting</content>
</entry>
<entry>
<title>fix(zsh): mark as tier 2</title>
<updated>2026-03-16T09:03:08Z</updated>
<author>
<name>Christian Clason</name>
<email>c.clason@uni-graz.at</email>
</author>
<published>2026-03-16T08:58:10Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/nvim-treesitter/commit/?id=ebc3201290b8372df2b3a1c23b71b9f007d972ff'/>
<id>urn:sha1:ebc3201290b8372df2b3a1c23b71b9f007d972ff</id>
<content type='text'>
</content>
</entry>
<entry>
<title>docs(readme): clarify pre-release support policy</title>
<updated>2026-03-14T18:46:07Z</updated>
<author>
<name>Christian Clason</name>
<email>c.clason@uni-graz.at</email>
</author>
<published>2026-03-14T18:39:31Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/nvim-treesitter/commit/?id=2f5d4c3f3c675962242096bcc8e586d76dd72eb2'/>
<id>urn:sha1:2f5d4c3f3c675962242096bcc8e586d76dd72eb2</id>
<content type='text'>
</content>
</entry>
<entry>
<title>refactor(config): no trailing slash in installdir</title>
<updated>2026-03-14T18:19:10Z</updated>
<author>
<name>Christian Clason</name>
<email>c.clason@uni-graz.at</email>
</author>
<published>2026-03-12T09:06:58Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/nvim-treesitter/commit/?id=f873ec2955098fc4b7c3abfe891bdd49fa7947e2'/>
<id>urn:sha1:f873ec2955098fc4b7c3abfe891bdd49fa7947e2</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Show errors on `vim.system` failure (#8552)</title>
<updated>2026-03-14T18:06:38Z</updated>
<author>
<name>Luca Papagni</name>
<email>89859659+lu-papagni@users.noreply.github.com</email>
</author>
<published>2026-03-14T18:06:38Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/nvim-treesitter/commit/?id=88a217f57061e5c98c9278bf93b0282e33b3d3bf'/>
<id>urn:sha1:88a217f57061e5c98c9278bf93b0282e33b3d3bf</id>
<content type='text'>
Problem: `vim.system` throws an error when `uv.spawn` fails, in
particular when `cmd` or `cwd` does not exist. This kills the coroutine,
which makes the corresponding async call hang.

Solution: Wrap `vim.system` in a function that catches any error and
returns it as `stderr` in a `SystemObj`.

Co-authored-by: Christian Clason &lt;c.clason@uni-graz.at&gt;</content>
</entry>
<entry>
<title>bot(parsers): update c3, elixir, erlang, fsharp, gitcommit, hyprlang, kotlin, ledger, pkl, powershell, proto, ruby, scala, scheme, t32, v</title>
<updated>2026-03-14T07:15:51Z</updated>
<author>
<name>nvim-treesitter-bot[bot]</name>
<email>157957100+nvim-treesitter-bot[bot]@users.noreply.github.com</email>
</author>
<published>2026-03-14T07:10:11Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/nvim-treesitter/commit/?id=eb1f8e80cb28eb7892f347609e0bdc5eb574b945'/>
<id>urn:sha1:eb1f8e80cb28eb7892f347609e0bdc5eb574b945</id>
<content type='text'>
</content>
</entry>
<entry>
<title>feat(textproto): punctuation and string escape highlights</title>
<updated>2026-03-12T08:28:44Z</updated>
<author>
<name>Riley Bruins</name>
<email>ribru17@hotmail.com</email>
</author>
<published>2026-03-12T00:24:03Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/nvim-treesitter/commit/?id=493890b87a81dfe6a7e577dbc364ae33fa482da9'/>
<id>urn:sha1:493890b87a81dfe6a7e577dbc364ae33fa482da9</id>
<content type='text'>
</content>
</entry>
<entry>
<title>fix(filetype): don't register `c-sharp`</title>
<updated>2026-03-07T10:15:38Z</updated>
<author>
<name>Christian Clason</name>
<email>c.clason@uni-graz.at</email>
</author>
<published>2026-03-07T10:09:03Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/nvim-treesitter/commit/?id=5cb05e1b0fa3c469958a2b26f36b3fe930af221c'/>
<id>urn:sha1:5cb05e1b0fa3c469958a2b26f36b3fe930af221c</id>
<content type='text'>
Language names can only contain hyphens, and dashes are normalized by
Nvim itself now.
</content>
</entry>
<entry>
<title>bot(parsers): update blade, elixir, gitcommit, groovy, idl, javadoc, kotlin, liquidsoap, matlab, nu, pkl, proto, t32, vhdl</title>
<updated>2026-03-07T09:33:18Z</updated>
<author>
<name>nvim-treesitter-bot[bot]</name>
<email>157957100+nvim-treesitter-bot[bot]@users.noreply.github.com</email>
</author>
<published>2026-03-07T07:03:26Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/nvim-treesitter/commit/?id=4110daee15fdf1a2030a2c989e6f240b31d6f5e6'/>
<id>urn:sha1:4110daee15fdf1a2030a2c989e6f240b31d6f5e6</id>
<content type='text'>
</content>
</entry>
<entry>
<title>bot(parsers): update wit, zsh</title>
<updated>2026-03-07T09:32:48Z</updated>
<author>
<name>nvim-treesitter-bot[bot]</name>
<email>157957100+nvim-treesitter-bot[bot]@users.noreply.github.com</email>
</author>
<published>2026-03-07T07:03:10Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/nvim-treesitter/commit/?id=9fd4d998c3d7e695c393e66346fb468d032ad3f0'/>
<id>urn:sha1:9fd4d998c3d7e695c393e66346fb468d032ad3f0</id>
<content type='text'>
</content>
</entry>
<entry>
<title>feat(proto): sync queries with upstream (#8554)</title>
<updated>2026-03-06T16:12:43Z</updated>
<author>
<name>Stefan VanBuren</name>
<email>svanburen@buf.build</email>
</author>
<published>2026-03-06T16:12:43Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/nvim-treesitter/commit/?id=ebe76eb800d4e8df754fc96f8a7b84f578224a97'/>
<id>urn:sha1:ebe76eb800d4e8df754fc96f8a7b84f578224a97</id>
<content type='text'>
This adds support for [Protobuf Editions][1], and a couple other minor
fixes.

Ref: https://github.com/coder3101/tree-sitter-proto/tree/main/queries

[1]: https://protobuf.dev/editions/overview/</content>
</entry>
<entry>
<title>feat(robot)!: update parser and queries</title>
<updated>2026-03-06T10:04:36Z</updated>
<author>
<name>Christian Clason</name>
<email>c.clason@uni-graz.at</email>
</author>
<published>2026-03-06T09:58:02Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/nvim-treesitter/commit/?id=1970f0d3bbb99c7659e58914948749437c7b7398'/>
<id>urn:sha1:1970f0d3bbb99c7659e58914948749437c7b7398</id>
<content type='text'>
Breaking change: replaced `(variable_definition)` by
`(scalar_variable)`, `(list_variable)` and `(dictionary_variable)`.

Also mark queries as unmaintained.
</content>
</entry>
<entry>
<title>feat(supercollider)!: update parser and queries</title>
<updated>2026-03-04T11:35:03Z</updated>
<author>
<name>elgiano</name>
<email>elgiano@gmail.com</email>
</author>
<published>2026-02-20T14:38:13Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/nvim-treesitter/commit/?id=544320a9cf5d6bf539ec1cc54d393064015670c4'/>
<id>urn:sha1:544320a9cf5d6bf539ec1cc54d393064015670c4</id>
<content type='text'>
parser PR: https://github.com/madskjeldgaard/tree-sitter-supercollider/pull/67

removed nodes:
control_structure, if, while, for, forby, method_call,
method_name, instance_variable_setter_call, argument_calls

added nodes:
class_def_body, !==, ===

modified nodes:
function_call now has fields receiver, name and arguments
chained method calls now appear as nested function_calls (where receiver
is another function_call)
</content>
</entry>
<entry>
<title>fix(config): normalize default `install_dir`</title>
<updated>2026-03-03T18:25:06Z</updated>
<author>
<name>Christian Clason</name>
<email>c.clason@uni-graz.at</email>
</author>
<published>2026-03-03T18:18:04Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/nvim-treesitter/commit/?id=972f378653c794b0ff82282a844732695064b70f'/>
<id>urn:sha1:972f378653c794b0ff82282a844732695064b70f</id>
<content type='text'>
Problem: The default `install_dir` is not normalized, leading to a
false positive checkhealth failure when comparing against the normalized
`runtimepath` directories.

Solution: Use trailing slash in default `install_dir`.
</content>
</entry>
<entry>
<title>feat(nickel): many more highlights</title>
<updated>2026-03-01T21:56:47Z</updated>
<author>
<name>Riley Bruins</name>
<email>ribru17@hotmail.com</email>
</author>
<published>2026-03-01T20:57:34Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/nvim-treesitter/commit/?id=cb2cb74f3c3cbbcc17e79cada2060165d616d849'/>
<id>urn:sha1:cb2cb74f3c3cbbcc17e79cada2060165d616d849</id>
<content type='text'>
</content>
</entry>
<entry>
<title>feat: add gql function highlighting for ecmascript injection (#8541)</title>
<updated>2026-03-01T21:29:06Z</updated>
<author>
<name>Ethan Rutt</name>
<email>122636652+ethanrutt@users.noreply.github.com</email>
</author>
<published>2026-03-01T21:29:06Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/nvim-treesitter/commit/?id=995b75fd5129726c2ac922227944ab51871b05a5'/>
<id>urn:sha1:995b75fd5129726c2ac922227944ab51871b05a5</id>
<content type='text'>
</content>
</entry>
<entry>
<title>bot(parsers): update blade, kotlin, liquidsoap, lua, markdown, markdown_inline, mlir, proto, unison, vim</title>
<updated>2026-02-28T07:10:54Z</updated>
<author>
<name>nvim-treesitter-bot[bot]</name>
<email>157957100+nvim-treesitter-bot[bot]@users.noreply.github.com</email>
</author>
<published>2026-02-28T07:01:10Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/nvim-treesitter/commit/?id=6bc51d020a5e06b7e20ea82dbc47196d3d3027c7'/>
<id>urn:sha1:6bc51d020a5e06b7e20ea82dbc47196d3d3027c7</id>
<content type='text'>
</content>
</entry>
<entry>
<title>feat(ecma): variable definition from object destructure with alias</title>
<updated>2026-02-27T08:00:07Z</updated>
<author>
<name>Igor</name>
<email>igorlfs@ufmg.br</email>
</author>
<published>2026-02-27T03:24:52Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/nvim-treesitter/commit/?id=ae2081cfcd3719d74b600f8377e4a99d1ec19c4a'/>
<id>urn:sha1:ae2081cfcd3719d74b600f8377e4a99d1ec19c4a</id>
<content type='text'>
</content>
</entry>
<entry>
<title>feat(robot): update parser, mark as stable</title>
<updated>2026-02-26T19:17:27Z</updated>
<author>
<name>Tomas Sandven</name>
<email>597206+Hubro@users.noreply.github.com</email>
</author>
<published>2026-02-26T19:17:27Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/nvim-treesitter/commit/?id=b9171ede5de41b3f2dfa33fe33ebd585d795f928'/>
<id>urn:sha1:b9171ede5de41b3f2dfa33fe33ebd585d795f928</id>
<content type='text'>
</content>
</entry>
<entry>
<title>bot(parsers): update zsh</title>
<updated>2026-02-26T10:17:02Z</updated>
<author>
<name>nvim-treesitter-bot[bot]</name>
<email>157957100+nvim-treesitter-bot[bot]@users.noreply.github.com</email>
</author>
<published>2026-02-26T10:01:28Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/nvim-treesitter/commit/?id=957f86ae3f049ab6681ed64c05b05768fcaed0d2'/>
<id>urn:sha1:957f86ae3f049ab6681ed64c05b05768fcaed0d2</id>
<content type='text'>
</content>
</entry>
<entry>
<title>bot(parsers): update cpp, cue, fish, groovy, julia, liquid, lua, markdown, markdown_inline, mlir, pkl, powershell, query, slint, sql, swift, systemverilog, vhdl, vim</title>
<updated>2026-02-26T10:06:44Z</updated>
<author>
<name>nvim-treesitter-bot[bot]</name>
<email>157957100+nvim-treesitter-bot[bot]@users.noreply.github.com</email>
</author>
<published>2026-02-26T10:01:56Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/nvim-treesitter/commit/?id=8ada222612ae8410eb1a8b51cc18d1b19ae72a16'/>
<id>urn:sha1:8ada222612ae8410eb1a8b51cc18d1b19ae72a16</id>
<content type='text'>
</content>
</entry>
<entry>
<title>feat(make): update parser and queries</title>
<updated>2026-02-26T09:45:02Z</updated>
<author>
<name>Christian Clason</name>
<email>c.clason@uni-graz.at</email>
</author>
<published>2026-02-26T09:34:01Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/nvim-treesitter/commit/?id=eaa5caed2a7b9c805ef221d2afcb3bf2a7b8d714'/>
<id>urn:sha1:eaa5caed2a7b9c805ef221d2afcb3bf2a7b8d714</id>
<content type='text'>
</content>
</entry>
<entry>
<title>fix(typst): indentation for block and branch</title>
<updated>2026-02-25T17:35:46Z</updated>
<author>
<name>Ilya Ilyinykh</name>
<email>18665585+IlyasYOY@users.noreply.github.com</email>
</author>
<published>2026-02-25T17:35:46Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/nvim-treesitter/commit/?id=0f5b204603234a523fafa8f6b860fd36f80a23f6'/>
<id>urn:sha1:0f5b204603234a523fafa8f6b860fd36f80a23f6</id>
<content type='text'>
</content>
</entry>
<entry>
<title>feat(xresources,desktop): mark as tier 1</title>
<updated>2026-02-25T14:40:58Z</updated>
<author>
<name>Omar Valdez</name>
<email>omarantoniovaldezf2@gmail.com</email>
</author>
<published>2026-02-24T04:40:21Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/nvim-treesitter/commit/?id=67d0fd3e0a2a985a4c66461dfd7ab94e499dee38'/>
<id>urn:sha1:67d0fd3e0a2a985a4c66461dfd7ab94e499dee38</id>
<content type='text'>
</content>
</entry>
<entry>
<title>feat(nickel): update highlight queries to grammar changes</title>
<updated>2026-02-25T09:06:48Z</updated>
<author>
<name>Salomon Popp</name>
<email>hi@salomonpopp.me</email>
</author>
<published>2026-02-25T09:06:48Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/nvim-treesitter/commit/?id=c6d295e96698b14c344a62a3abcf64139268c56b'/>
<id>urn:sha1:c6d295e96698b14c344a62a3abcf64139268c56b</id>
<content type='text'>
</content>
</entry>
<entry>
<title>fix(c_sharp): missing highlight for lambda modifier (#8526)</title>
<updated>2026-02-25T02:25:39Z</updated>
<author>
<name>Ark1409</name>
<email>121744254+Ark1409@users.noreply.github.com</email>
</author>
<published>2026-02-25T02:25:39Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/nvim-treesitter/commit/?id=a8845121f063458ef23df86e73f16bbee71ec67b'/>
<id>urn:sha1:a8845121f063458ef23df86e73f16bbee71ec67b</id>
<content type='text'>
</content>
</entry>
<entry>
<title>feat(editorconfig)!: update parser and queries</title>
<updated>2026-02-23T16:49:34Z</updated>
<author>
<name>Omar Valdez</name>
<email>omarantoniovaldezf2@gmail.com</email>
</author>
<published>2026-02-22T12:36:59Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/nvim-treesitter/commit/?id=d660b7c002f3922b6bb3da47206645488a698426'/>
<id>urn:sha1:d660b7c002f3922b6bb3da47206645488a698426</id>
<content type='text'>
Removed nodes:
section_name, expansion_string, wildcard_characters,
wildcard_any_characters, wildcard_single_character, unset, boolean,
spelling_language, indent_style, end_of_line, charset, unknown

Renamed nodes:
identifier -&gt; property
negation -&gt; "!"
path_separator -&gt; "/"
escaped_character -&gt; character_escape
</content>
</entry>
<entry>
<title>bot(parsers): update c_sharp, desktop, editorconfig, fish, kitty, kotlin, mlir, proto, rescript, sql, swift, xresources</title>
<updated>2026-02-21T07:10:10Z</updated>
<author>
<name>nvim-treesitter-bot[bot]</name>
<email>157957100+nvim-treesitter-bot[bot]@users.noreply.github.com</email>
</author>
<published>2026-02-21T07:05:40Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/nvim-treesitter/commit/?id=dc42c209f3820bdfaae0956f15de29689aa6b451'/>
<id>urn:sha1:dc42c209f3820bdfaae0956f15de29689aa6b451</id>
<content type='text'>
</content>
</entry>
<entry>
<title>fix(supercollider): mark as tier 3</title>
<updated>2026-02-20T10:08:31Z</updated>
<author>
<name>Christian Clason</name>
<email>c.clason@uni-graz.at</email>
</author>
<published>2026-02-20T09:55:46Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/nvim-treesitter/commit/?id=fcd51bbe9245aa9b79a3930ed9ac42e16e1cf33f'/>
<id>urn:sha1:fcd51bbe9245aa9b79a3930ed9ac42e16e1cf33f</id>
<content type='text'>
</content>
</entry>
<entry>
<title>fix(install): unlink files before copy on unix to prevent crashes (#8517)</title>
<updated>2026-02-19T14:39:22Z</updated>
<author>
<name>Robert Muir</name>
<email>rmuir@apache.org</email>
</author>
<published>2026-02-19T14:39:22Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/nvim-treesitter/commit/?id=3edb01f912867603c2aef9079f208f0244c0885b'/>
<id>urn:sha1:3edb01f912867603c2aef9079f208f0244c0885b</id>
<content type='text'>
uv_fs_copyfile will truncate the target first, which can result in
hard-to-debug crashes if the shared object is currently in use.

instead, unlink the target first, so that the operation doesn't modify
any in-use files. the disk space from the old parsers won't be reclaimed
until any processes using them relinquish their open file handles.</content>
</entry>
<entry>
<title>feat(kotlin)!: update parser and queries</title>
<updated>2026-02-18T18:53:54Z</updated>
<author>
<name>Christian Clason</name>
<email>c.clason@uni-graz.at</email>
</author>
<published>2026-02-18T18:47:57Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/nvim-treesitter/commit/?id=ecdae44baefeffceade8b0c752d80ececad28e76'/>
<id>urn:sha1:ecdae44baefeffceade8b0c752d80ececad28e76</id>
<content type='text'>
Breaking change: removed nodes `"!in"` and `"!is"`.
</content>
</entry>
<entry>
<title>fix(glimmer_typescript): inherit typescript indents</title>
<updated>2026-02-18T16:32:57Z</updated>
<author>
<name>NullVoxPopuli</name>
<email>199018+NullVoxPopuli@users.noreply.github.com</email>
</author>
<published>2026-02-18T16:32:57Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/nvim-treesitter/commit/?id=23502d650a851599428ca51f418e96960ea68f52'/>
<id>urn:sha1:23502d650a851599428ca51f418e96960ea68f52</id>
<content type='text'>
</content>
</entry>
<entry>
<title>feat(protobuf)!: switch parser repo (#8514)</title>
<updated>2026-02-18T16:26:40Z</updated>
<author>
<name>Stefan VanBuren</name>
<email>stefan@vanburen.xyz</email>
</author>
<published>2026-02-18T16:26:40Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/nvim-treesitter/commit/?id=02115634451887fe53ca7e2203b22767de746bd4'/>
<id>urn:sha1:02115634451887fe53ca7e2203b22767de746bd4</id>
<content type='text'>
This switches the protobuf parser to https://github.com/coder3101/tree-sitter-proto,
which is a maintained parser and used in Zed.

The old https://github.com/treywood/tree-sitter-proto is effectively
unmaintained AFAICT, so it would be nice to have a maintained repo here.</content>
</entry>
</feed>
