mirror of
https://github.com/neovim/neovim.git
synced 2025-02-25 18:55:25 -06:00
Merge pull request #14232 from mjlbach/fix_utf16_ranges_again
lsp: fix utf-16 ranges to use second return value for incremental sync
This commit is contained in:
commit
2ed5a77602
@ -373,13 +373,13 @@ function M.compute_diff(old_lines, new_lines, start_line_idx, end_line_idx)
|
|||||||
adj_end_char = #old_lines[#old_lines + end_line + 1] + end_char + 1
|
adj_end_char = #old_lines[#old_lines + end_line + 1] + end_char + 1
|
||||||
end
|
end
|
||||||
|
|
||||||
start_char = vim.str_utfindex(old_lines[start_line], start_char - 1)
|
local _, utf16_start_char = vim.str_utfindex(old_lines[start_line], start_char - 1)
|
||||||
adj_end_char = vim.str_utfindex(old_lines[#old_lines + end_line + 1], adj_end_char)
|
local _, utf16_end_char = vim.str_utfindex(old_lines[#old_lines + end_line + 1], adj_end_char)
|
||||||
|
|
||||||
local result = {
|
local result = {
|
||||||
range = {
|
range = {
|
||||||
start = { line = start_line - 1, character = start_char},
|
start = { line = start_line - 1, character = utf16_start_char},
|
||||||
["end"] = { line = adj_end_line, character = adj_end_char}
|
["end"] = { line = adj_end_line, character = utf16_end_char}
|
||||||
},
|
},
|
||||||
text = text,
|
text = text,
|
||||||
rangeLength = length + 1,
|
rangeLength = length + 1,
|
||||||
|
Loading…
Reference in New Issue
Block a user