Commit graph

6363 commits

Author SHA1 Message Date
Valentin Krasontovitsch
b760eef0ba
fix(dockerfile): correct bash syntax highlighting
when a dockerfile contains several RUN statements, the syntax
highlighting would sometimes run over and encompass dockerfile
statements after the RUN command (typically everything between the first
and last RUN statement, though the bash syntax bleed can be broken by
terminating a RUN statement with a semicolon, or a space 🙄)

we fix this by using a slightly different approach to recognizing /
grouping (the content of) RUN commands:

- instead of having shell_command at the top level of the block we
  changed, we're using run_instruction - so parsing happens per `RUN`
  statement, which is really what we want
- inseade of `injection.combined`, we use `injection.include-children`,
  which combines all the shell fragments (the text parts of a shell
  command, including after newline continuations), which is really what
  we want, as that's all the text of a RUN statement

that fixes the highlight bleed, and preserves correct highlighting for
each RUN statement.

we also add a regression test for highlighting.

Closes #6530, #6975
2026-03-12 23:30:55 +01:00
Riley Bruins
493890b87a feat(textproto): punctuation and string escape highlights 2026-03-12 09:28:44 +01:00
Christian Clason
5cb05e1b0f fix(filetype): don't register c-sharp
Language names can only contain hyphens, and dashes are normalized by
Nvim itself now.
2026-03-07 11:15:38 +01:00
nvim-treesitter-bot[bot]
4110daee15 bot(parsers): update blade, elixir, gitcommit, groovy, idl, javadoc, kotlin, liquidsoap, matlab, nu, pkl, proto, t32, vhdl 2026-03-07 09:33:18 +00:00
nvim-treesitter-bot[bot]
9fd4d998c3 bot(parsers): update wit, zsh 2026-03-07 10:32:48 +01:00
Stefan VanBuren
ebe76eb800
feat(proto): sync queries with upstream (#8554)
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/
2026-03-06 16:12:43 +00:00
Christian Clason
1970f0d3bb feat(robot)!: update parser and queries
Breaking change: replaced `(variable_definition)` by
`(scalar_variable)`, `(list_variable)` and `(dictionary_variable)`.

Also mark queries as unmaintained.
2026-03-06 11:04:36 +01:00
elgiano
544320a9cf feat(supercollider)!: update parser and queries
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)
2026-03-04 12:35:03 +01:00
Christian Clason
972f378653 fix(config): normalize default install_dir
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`.
2026-03-03 19:25:06 +01:00
Riley Bruins
cb2cb74f3c feat(nickel): many more highlights 2026-03-01 22:56:47 +01:00
Ethan Rutt
995b75fd51
feat: add gql function highlighting for ecmascript injection (#8541) 2026-03-01 13:29:06 -08:00
nvim-treesitter-bot[bot]
6bc51d020a bot(parsers): update blade, kotlin, liquidsoap, lua, markdown, markdown_inline, mlir, proto, unison, vim 2026-02-28 07:10:54 +00:00
Igor
ae2081cfcd feat(ecma): variable definition from object destructure with alias 2026-02-27 09:00:07 +01:00
Tomas Sandven
b9171ede5d
feat(robot): update parser, mark as stable 2026-02-26 20:17:27 +01:00
nvim-treesitter-bot[bot]
957f86ae3f bot(parsers): update zsh 2026-02-26 11:17:02 +01:00
nvim-treesitter-bot[bot]
8ada222612 bot(parsers): update cpp, cue, fish, groovy, julia, liquid, lua, markdown, markdown_inline, mlir, pkl, powershell, query, slint, sql, swift, systemverilog, vhdl, vim 2026-02-26 10:06:44 +00:00
Christian Clason
eaa5caed2a feat(make): update parser and queries 2026-02-26 10:45:02 +01:00
Ilya Ilyinykh
0f5b204603
fix(typst): indentation for block and branch 2026-02-25 18:35:46 +01:00
Omar Valdez
67d0fd3e0a feat(xresources,desktop): mark as tier 1 2026-02-25 15:40:58 +01:00
Salomon Popp
c6d295e966
feat(nickel): update highlight queries to grammar changes 2026-02-25 10:06:48 +01:00
Ark1409
a8845121f0
fix(c_sharp): missing highlight for lambda modifier (#8526) 2026-02-24 18:25:39 -08:00
Omar Valdez
d660b7c002 feat(editorconfig)!: update parser and queries
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 -> property
negation -> "!"
path_separator -> "/"
escaped_character -> character_escape
2026-02-23 17:49:34 +01:00
nvim-treesitter-bot[bot]
dc42c209f3 bot(parsers): update c_sharp, desktop, editorconfig, fish, kitty, kotlin, mlir, proto, rescript, sql, swift, xresources 2026-02-21 07:10:10 +00:00
Christian Clason
fcd51bbe92 fix(supercollider): mark as tier 3 2026-02-20 11:08:31 +01:00
Robert Muir
3edb01f912
fix(install): unlink files before copy on unix to prevent crashes (#8517)
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.
2026-02-19 15:39:22 +01:00
Christian Clason
ecdae44bae feat(kotlin)!: update parser and queries
Breaking change: removed nodes `"!in"` and `"!is"`.
2026-02-18 19:53:54 +01:00
NullVoxPopuli
23502d650a
fix(glimmer_typescript): inherit typescript indents 2026-02-18 17:32:57 +01:00
Stefan VanBuren
0211563445
feat(protobuf)!: switch parser repo (#8514)
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.
2026-02-18 16:26:40 +00:00
nvim-treesitter-bot[bot]
2bd9b9b4f1 bot(parsers): update angular, bpftrace, c_sharp, fortran, markdown, markdown_inline, mlir, nickel, tlaplus 2026-02-17 17:02:40 +00:00
Dennis van den Berg
ca35dc5184 feat(angular): adds support for css class bindings 2026-02-17 14:56:12 +01:00
Christian Clason
4d9466677a fix(install): raise number of retries
Seven retries ought to be enough for anybody.
2026-02-14 13:18:48 +01:00
fin-w
b032f66f0b
fix(health): consistent abbreviations in legend 2026-02-14 12:33:04 +01:00
nvim-treesitter-bot[bot]
88a8487378 bot(parsers): update dart, fortran, gleam, janet_simple, just, mlir, rescript, slint, solidity, sql, t32, unison 2026-02-14 11:19:53 +00:00
Christian Clason
9f2dad22ef feat(vento)!: update parser and queries
Breaking change: `(keyword)` node removed.

Also mark as unmaintained (Copilot-maintained)
2026-02-11 12:14:00 +01:00
nvim-treesitter-bot[bot]
45a07f869b bot(parsers): update javadoc, just, kotlin, markdown, markdown_inline, matlab, mlir, php, php_only, pkl, slint, unison 2026-02-07 07:11:42 +00:00
Christian Clason
92c9b016d1 fix(install): retry on server error 2026-02-06 12:16:51 +01:00
phanium
70a9fecaf5 fix(lua): injections in vim.{rpcrequest,rpcnotify} 2026-02-05 09:15:56 +01:00
nvim-treesitter-bot[bot]
4967fa48b0 bot(parsers): update beancount, c3, dart, desktop, editorconfig, gap, jinja, jinja_inline, matlab, mlir, nu, pkl, swift, unison, xresources, yaml 2026-01-31 10:18:44 +00:00
Christian Clason
ac1d0ff910 fix(scripts): guard against empty reply when checking new revisions 2026-01-31 11:07:03 +01:00
Christian Clason
19c729dae6 fix(install)!: remove gitlab codepath
Gitlab tarballs have started including the commit hash, so downstream
processing fails anyway.
2026-01-29 16:22:32 +01:00
Christian Buttner
04ab807f8e
feat(c3)!: update parser and highlights (#8477)
Breaking: `(import_declaration (path_ident))` changed to `(import_path (path_ident))`
2026-01-29 10:02:30 +00:00
stefan
cc12e37e5b fix(nix): make all bash injections combined 2026-01-29 10:41:43 +01:00
Christian Clason
5465196ba8 fix(health): update required tree-sitter version 2026-01-29 10:29:15 +01:00
Christian Clason
f8bbc3177d feat(roc): mark as unmaintained 2026-01-27 12:02:53 +01:00
Christian Clason
0ac55b85c6 refactor(lua): replace vim.opt with vim.o 2026-01-27 11:57:04 +01:00
nvim-treesitter-bot[bot]
568ede7e79 bot(parsers): update ruby, vue 2026-01-25 11:08:41 +00:00
Bartłomiej Maryńczak
81aca2f981
feat(rust): add !xml injection 2026-01-24 22:21:27 +01:00
NullVoxPopuli
67b3ce0529
fix(glimmer) update injections 2026-01-24 22:21:10 +01:00
nvim-treesitter-bot[bot]
275b9fe801 bot(parsers): update zsh 2026-01-24 10:58:14 +01:00
nvim-treesitter-bot[bot]
b67d29ce74 bot(parsers): update c_sharp, desktop, dtd, editorconfig, fennel, fortran, hcl, javadoc, just, lalrpop, lua, markdown, markdown_inline, meson, mlir, rescript, rifleconf, sql, swift, terraform, tlaplus, vim, xml, xresources 2026-01-24 07:03:36 +00:00