diff options
| author | Justin M. Keyes <justinkz@gmail.com> | 2026-05-20 17:33:01 -0400 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2026-05-20 17:33:01 -0400 |
| commit | 9aa4608401384a59ea54e0ba800ce063775e8ae9 (patch) | |
| tree | 6292c7eb1c09d2f0fbc055410bd8a38e58052982 /runtime/lua/vim/treesitter/query.lua | |
| parent | 799cbfff855c72282a54646f3e5e1b71b0da223c (diff) | |
| download | rneovim-9aa4608401384a59ea54e0ba800ce063775e8ae9.tar.gz rneovim-9aa4608401384a59ea54e0ba800ce063775e8ae9.tar.bz2 rneovim-9aa4608401384a59ea54e0ba800ce063775e8ae9.zip | |
refactor: introduce nvim_on internally #39883
Problem:
`nvim_create_autocmd` is too verbose and its `callback` requires extra
"nesting".
Solution:
Introduce `nvim_on`. Start using it internally. Then we can get a feel
for how it should look before making it public.
Diffstat (limited to 'runtime/lua/vim/treesitter/query.lua')
| -rw-r--r-- | runtime/lua/vim/treesitter/query.lua | 16 |
1 files changed, 10 insertions, 6 deletions
diff --git a/runtime/lua/vim/treesitter/query.lua b/runtime/lua/vim/treesitter/query.lua index 861cefd3aa..a615d93500 100644 --- a/runtime/lua/vim/treesitter/query.lua +++ b/runtime/lua/vim/treesitter/query.lua @@ -2,6 +2,7 @@ --- text. See |vim.treesitter.query.parse()| for a working example. local api = vim.api +local nvim_on = require('vim._core.util').nvim_on local language = require('vim.treesitter.language') local memoize = vim.func._memoize local cmp_ge = require('vim.treesitter._range').cmp_pos.ge @@ -333,14 +334,17 @@ M.get = memoize('concat-2', function(lang, query_name) return M.parse(lang, query_string) end, false) -api.nvim_create_autocmd('OptionSet', { - pattern = { 'runtimepath' }, - group = api.nvim_create_augroup('nvim.treesitter.query_cache_reset', { clear = true }), - callback = function() +nvim_on( + 'OptionSet', + api.nvim_create_augroup('nvim.treesitter.query_cache_reset', { clear = true }), + { + pattern = { 'runtimepath' }, + }, + function() --- @diagnostic disable-next-line: undefined-field LuaLS bad at generics M.get:clear() - end, -}) + end +) --- Parses a {query} string and returns a `Query` object (|lua-treesitter-query|), which can be used --- to search the tree for the query patterns (via |Query:iter_captures()|, |Query:iter_matches()|), |