From 5c3e8dee6498f91387bb825b9728f0cfceb3be7e Mon Sep 17 00:00:00 2001 From: Tom van Dijk <18gatenmaker6@gmail.com> Date: Fri, 24 Mar 2023 22:44:28 +0100 Subject: fix: `get_range` shim for playground --- lua/nvim-treesitter/compat.lua | 7 ++++++- lua/nvim-treesitter/locals.lua | 14 +++++--------- 2 files changed, 11 insertions(+), 10 deletions(-) (limited to 'lua') diff --git a/lua/nvim-treesitter/compat.lua b/lua/nvim-treesitter/compat.lua index 072b4dc58..accf2e6ac 100644 --- a/lua/nvim-treesitter/compat.lua +++ b/lua/nvim-treesitter/compat.lua @@ -1,5 +1,6 @@ -- Shim module to address deprecations across nvim versions -local tsq = vim.treesitter.query +local ts = vim.treesitter +local tsq = ts.query local M = {} @@ -15,4 +16,8 @@ function M.parse_query(lang, query) return (tsq.parse or tsq.parse_query)(lang, query) end +function M.get_range(node, source, metadata) + return (ts.get_range or tsq.get_range)(node, source, metadata) +end + return M diff --git a/lua/nvim-treesitter/locals.lua b/lua/nvim-treesitter/locals.lua index 75ae07237..cc69d5621 100644 --- a/lua/nvim-treesitter/locals.lua +++ b/lua/nvim-treesitter/locals.lua @@ -4,7 +4,7 @@ local queries = require "nvim-treesitter.query" local ts_utils = require "nvim-treesitter.ts_utils" -local ts_query = vim.treesitter.query +local ts = vim.treesitter local api = vim.api local M = {} @@ -170,7 +170,7 @@ M.get_definitions_lookup_table = ts_utils.memoize_by_buf_tick(function(bufnr) local scopes = M.get_definition_scopes(node_entry.node, bufnr, node_entry.scope) -- Always use the highest valid scope local scope = scopes[#scopes] - local node_text = ts_query.get_node_text(node_entry.node, bufnr) + local node_text = ts.get_node_text(node_entry.node, bufnr) local id = M.get_definition_id(scope, node_text) result[id] = node_entry @@ -223,7 +223,7 @@ end ---@return string|nil kind function M.find_definition(node, bufnr) local def_lookup = M.get_definitions_lookup_table(bufnr) - local node_text = ts_query.get_node_text(node, bufnr) + local node_text = ts.get_node_text(node, bufnr) for scope in M.iter_scope_tree(node, bufnr) do local id = M.get_definition_id(scope, node_text) @@ -244,7 +244,7 @@ end ---@return TSNode[]: a list of nodes function M.find_usages(node, scope_node, bufnr) bufnr = bufnr or api.nvim_get_current_buf() - local node_text = ts_query.get_node_text(node, bufnr) + local node_text = ts.get_node_text(node, bufnr) if not node_text or #node_text < 1 then return {} @@ -254,11 +254,7 @@ function M.find_usages(node, scope_node, bufnr) local usages = {} for match in M.iter_locals(bufnr, scope_node) do - if - match.reference - and match.reference.node - and ts_query.get_node_text(match.reference.node, bufnr) == node_text - then + if match.reference and match.reference.node and ts.get_node_text(match.reference.node, bufnr) == node_text then local def_node, _, kind = M.find_definition(match.reference.node, bufnr) if kind == nil or def_node == node then -- cgit v1.2.3-70-g09d2