mirror of
https://github.com/neovim/neovim.git
synced 2025-10-26 12:27:24 +00:00
fix(treesitter): support multiple @injection.content captures
Before, only the last capture's range would be counted for injection. Now all captured ranges will be counted in the ranges array. This is more intuitive, and also provides a nice solution/alternative to the "scoped injections" issue.
This commit is contained in:
committed by
Christian Clason
parent
775e845d59
commit
8b41df185c
@@ -1013,7 +1013,9 @@ function LanguageTree:_get_injection(match, metadata)
|
||||
local ft = vim.filetype.match({ filename = text })
|
||||
lang = ft and resolve_lang(ft)
|
||||
elseif name == 'injection.content' then
|
||||
ranges = get_node_ranges(node, self._source, metadata[id], include_children)
|
||||
for _, range in ipairs(get_node_ranges(node, self._source, metadata[id], include_children)) do
|
||||
ranges[#ranges + 1] = range
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
Reference in New Issue
Block a user