fix(query.lua): check empty table for lines

The range of node may make `nvim_buf_get_lines` return an empty table.
This commit is contained in:
kevinhwang91 2022-02-11 14:42:23 +08:00
parent 851252f79d
commit afcf64479c

View File

@ -199,11 +199,13 @@ function M.get_node_text(node, source)
lines = a.nvim_buf_get_lines(source, start_row, end_row + 1, true)
end
if #lines == 1 then
lines[1] = string.sub(lines[1], start_col+1, end_col)
else
lines[1] = string.sub(lines[1], start_col+1)
lines[#lines] = string.sub(lines[#lines], 1, end_col)
if #lines > 0 then
if #lines == 1 then
lines[1] = string.sub(lines[1], start_col+1, end_col)
else
lines[1] = string.sub(lines[1], start_col+1)
lines[#lines] = string.sub(lines[#lines], 1, end_col)
end
end
return table.concat(lines, "\n")