aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMDeiml <matthias@deiml.net>2022-01-08 01:37:18 +0100
committerStephan Seitz <stephan.seitz@fau.de>2022-01-08 13:27:25 +0100
commit46b9916492910b3c008c815bb5884d3f8bdd469a (patch)
tree9961220225077b7fddbd8163a7da51efe31e4d01
parentBetter ftdetect for OpenFOAM (diff)
downloadnvim-treesitter-46b9916492910b3c008c815bb5884d3f8bdd469a.tar
nvim-treesitter-46b9916492910b3c008c815bb5884d3f8bdd469a.tar.gz
nvim-treesitter-46b9916492910b3c008c815bb5884d3f8bdd469a.tar.bz2
nvim-treesitter-46b9916492910b3c008c815bb5884d3f8bdd469a.tar.lz
nvim-treesitter-46b9916492910b3c008c815bb5884d3f8bdd469a.tar.xz
nvim-treesitter-46b9916492910b3c008c815bb5884d3f8bdd469a.tar.zst
nvim-treesitter-46b9916492910b3c008c815bb5884d3f8bdd469a.zip
Fix get_node_text
-rw-r--r--lua/nvim-treesitter/ts_utils.lua5
1 files changed, 4 insertions, 1 deletions
diff --git a/lua/nvim-treesitter/ts_utils.lua b/lua/nvim-treesitter/ts_utils.lua
index 5733ce2b5..b3261fd42 100644
--- a/lua/nvim-treesitter/ts_utils.lua
+++ b/lua/nvim-treesitter/ts_utils.lua
@@ -21,7 +21,10 @@ function M.get_node_text(node, bufnr)
if start_row ~= end_row then
local lines = api.nvim_buf_get_lines(bufnr, start_row, end_row + 1, false)
lines[1] = string.sub(lines[1], start_col + 1)
- lines[#lines] = string.sub(lines[#lines], 1, end_col)
+ -- end_row might be just after the last line. In this case the last line is not truncated.
+ if #lines == end_row - start_row then
+ lines[#lines] = string.sub(lines[#lines], 1, end_col)
+ end
return lines
else
local line = api.nvim_buf_get_lines(bufnr, start_row, start_row + 1, false)[1]