780 Commits

Author SHA1 Message Date
6b52c08453 fix: guard lang_tree:parse against upstream directive errors 2026-04-05 13:13:38 +03:00
Cameron
0fb1e6b7ce use pcall when calling get_node function, since it can raise an error in some cases. (#425) 2025-12-31 17:46:01 -05:00
Kevin Witlox
e9336fa1a9 fix(rust): correct type_parameters closing bracket capture (#427)
Fix typo in Rust tree-sitter query where `>` in type_parameters was captured as `@open.typeparams` instead of `@close.typeparams`
2025-12-31 17:42:00 -05:00
Luis Calle
2afb7fc911 perf: improve general treesitter performance and markdown particular performance (#423)
* perf(treesitter): query only the necessary trees instead of all of them

* perf(markdown): remove expensive latex query
2025-12-31 17:39:33 -05:00
Noah Bogart
1c276e12b4 Add ocaml treesitter queries (#421) 2025-11-06 07:40:10 -05:00
Luis Calle
828d1ad4ff feat: improve tsx support (#420)
jsx tags may not always have an `identifier` as their name (e.g. they
could have `foo.bar` as a name, which gets parsed as
a `member_expression`)
2025-11-06 07:39:42 -05:00
Luis Calle
1660d6ad10 feat: add powershell support (#419) 2025-11-06 07:39:16 -05:00
Chris Vincent
89604825d4 Match on Ruby case/in statements for pattern matching (#417) 2025-11-06 07:38:58 -05:00
XiaoTian
ca538c3bb0 add support markdown matchup (#415) 2025-10-03 09:45:17 -04:00
Mohammad Reza Karimi
9ae7f86c31 fix: pumvisible (#413)
* fix(popup): remove popup on nightly nvim >= 0.12

Fixes #391

* Update matchparen.vim

* fix: s:pumvisible fails when no cmp is installed

In the situation where `nvim-cmp` is not installed but `blink-compat`
is, the `pcall(require, "cmp")` goes through, but
`require("cmp").visible()` doesn't. Checking for `cmp.visible` type
fixes this issue.

* add extra width because of the line number

---------

Co-authored-by: Andy Massimino <andymass@users.noreply.github.com>
2025-10-03 09:44:29 -04:00
Andy Massimino
b23ba393ee Suppress E242 in neovim, fix #408 2025-09-06 13:01:06 +00:00
phanium
add1680d8b fix(go): update broken queries (#411) 2025-09-06 08:53:53 -04:00
Luis Calle
347c890d51 perf: use string.gmatch instead of vim.split (#410)
For trees with a big number of injections, `vim.split` can take 3 times
as long as `parser:parse` to execute
2025-08-25 21:20:26 -04:00
Martin Kunz
704c9d98e6 docs: Add missing comma to lazy.nvim instalation (#409) 2025-08-14 19:58:24 -04:00
Julio García
9cb4961161 feat: support htmlangular filetype (#407) 2025-08-14 19:57:52 -04:00
Zhongqiu Zhao
b4efd6a973 feat: add Erlang/Elixir queries (#405)
* feat: add Erlang/Elixir queries

* feat(erlang): update queries based on new parser AST

Erlang parser version:

    $ cat site/parser-info/erlang.revision
    07dad1469ecb7df80f2b6d5178f79564d19d67e0
2025-08-06 08:34:14 -04:00
Zhongqiu Zhao
a1f93006ba fix: disable the matchup if no matchup queries was found (#404) 2025-08-06 08:33:56 -04:00
Luis Calle
81313f1744 fix(haskell): use the correct captures for lambda case (#397) 2025-07-08 17:43:27 -04:00
Luis Calle
ea01ae7b54 fix: enable treesitter virtual text by default (#396)
* fix: enable treesitter virtual text by default

* fix: use an empty list instead of an empty object
2025-07-07 21:57:10 -04:00
Dmytro Soltys
6193440b8a feat: Invalidate matchup query cache on query save 2025-07-07 21:02:26 -04:00
Andy K. Massimino
0aa22bc724 Guard matchup_treesitter_ vars to nvim 2025-07-07 21:01:40 -04:00
Andy Massimino
4f03d43274 Merge pull request #390 from TheLeoP/update-treesitter
Remove nvim-treesitter dependency
2025-07-07 20:57:34 -04:00
TheLeoP
427e9eb27a ci: run tests on Neovim 0.11.2 2025-07-07 18:02:55 -05:00
TheLeoP
ef27fce14e ci: add TESTS_ENABLE_TREESITTER env var 2025-07-07 18:01:58 -05:00
TheLeoP
9e90cb42eb ci: install treesitter parsers without nvim-treesitter
Co-authored-by: Dmytro Soltys <soap@slotos.net>
2025-07-07 17:39:34 -05:00
TheLeoP
182fa8bc12 tests: remove references to nvim-treesitter 2025-07-07 17:36:03 -05:00
TheLeoP
3de6be029d fix: install treesitter parsers into docker image
Co-authored-by: Dmytro Soltys <soap@slotos.net>
2025-07-07 17:22:44 -05:00
TheLeoP
321045f727 docs: update matchup.txt with the content of README 2025-07-07 17:19:52 -05:00
TheLeoP
bf56cac29d chore: make luacheck happy 2025-07-07 14:57:38 -05:00
TheLeoP
ac432f1352 feat: add block and call queries for go, c and bash 2025-07-07 14:57:38 -05:00
TheLeoP
e4aae30b3f fix(haskell): properly escape backslash in lambda case query 2025-07-07 14:57:38 -05:00
TheLeoP
b92d25749b fix(typescript): correctly define captures with anonymous nodes 2025-07-07 14:57:38 -05:00
TheLeoP
490f64c951 feat(ecma): add block query 2025-07-07 14:57:38 -05:00
TheLeoP
1fd5e6db7a docs: update treesitter integration information on README 2025-07-07 14:57:38 -05:00
TheLeoP
5e292db288 docs: remove LunarVim specific instructions from README 2025-07-07 14:57:38 -05:00
TheLeoP
e832b01e94 docs: add lazy.nvim installation to README 2025-07-07 14:57:38 -05:00
TheLeoP
15135430df docs: add documentation for new g:matchup_treesiter config vars 2025-07-07 14:57:38 -05:00
TheLeoP
9e152f39d1 feat!(treesitter): parse range around cursor based on g:matchup_treesitter_stopline 2025-07-07 14:57:38 -05:00
TheLeoP
bb9ff61bf2 fix(treesitter): check if buffer is loaded before trying to get a parser for it 2025-07-07 14:57:38 -05:00
TheLeoP
b9366dfa53 fix: enable treesitter integration by default only on Neovim 2025-07-07 14:57:38 -05:00
TheLeoP
480af13179 fix: correctly process b:match_skip when treesitter is enabled 2025-07-07 14:57:38 -05:00
TheLeoP
da04528e45 feat!: enable treesitter integration by default 2025-07-07 14:57:38 -05:00
TheLeoP
cd1f1c7894 feat(lua): add treesitter capture for function calls 2025-07-07 14:57:38 -05:00
TheLeoP
b2d61bfcb7 fix: initialize g:matchup_treesitter_disable_virtual_text 2025-07-07 14:57:38 -05:00
TheLeoP
1b16bca34a feat: add lua table constructor capture 2025-07-07 14:57:38 -05:00
TheLeoP
831c161509 feat: fully functional treesitter engine without nvim-treesitter dependency 2025-07-07 14:57:38 -05:00
TheLeoP
bca8246d2a chore: format query files 2025-07-07 14:57:38 -05:00
TheLeoP
db9fe5d95d refactor: mostly remove nvim-treesitter dependency 2025-07-07 14:57:38 -05:00
TheLeoP
7f274a21b0 docs: boolean -> 0|1 on matchup.Config types 2025-07-07 14:57:38 -05:00
TheLeoP
490f6850a3 feat: add luaCATS typing for configuration and add treesitter config 2025-07-07 14:57:38 -05:00