diff options
Diffstat (limited to 'lua')
| -rw-r--r-- | lua/nvim-treesitter/indent.lua | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/lua/nvim-treesitter/indent.lua b/lua/nvim-treesitter/indent.lua index eca649b23..d63f43207 100644 --- a/lua/nvim-treesitter/indent.lua +++ b/lua/nvim-treesitter/indent.lua @@ -1,6 +1,7 @@ local parsers = require "nvim-treesitter.parsers" local queries = require "nvim-treesitter.query" local tsutils = require "nvim-treesitter.ts_utils" +local highlighter = require "vim.treesitter.highlighter" local function get_first_node_at_line(root, lnum) local col = vim.fn.indent(lnum) @@ -38,9 +39,11 @@ local get_indents = tsutils.memoize_by_buf_tick(function(bufnr, root, lang) aligned_indent = {}, } - for name, node, metadata in queries.iter_captures(bufnr, "indents", root, lang) do - map[name][node:id()] = metadata or {} - end + highlighter.active[bufnr].tree:for_each_tree(function(tstree, tree) + for name, node, metadata in queries.iter_captures(bufnr, "indents", tstree:root(), tree:lang()) do + map[name][node:id()] = metadata or {} + end + end) return map end, { |
