mirror of
https://github.com/neovim/neovim.git
synced 2025-10-26 12:27:24 +00:00
fix(lsp): fix omnicomplete in middle of the line (#25787)
Fixes a regression from 5e5f5174e3
Until that commit we had a logic like this:
`local prefix = startbyte and line:sub(startbyte + 1) or line_to_cursor:sub(word_boundary)`
The commit changed the logic and no longer cut off the line at the cursor, resulting in a prefix that included trailing characters
This commit is contained in:
@@ -137,6 +137,7 @@ end
|
||||
function M._convert_results(
|
||||
line,
|
||||
lnum,
|
||||
cursor_col,
|
||||
client_start_boundary,
|
||||
server_start_boundary,
|
||||
result,
|
||||
@@ -164,7 +165,7 @@ function M._convert_results(
|
||||
elseif curstartbyte ~= nil and curstartbyte ~= server_start_boundary then
|
||||
server_start_boundary = client_start_boundary
|
||||
end
|
||||
local prefix = line:sub((server_start_boundary or client_start_boundary) + 1)
|
||||
local prefix = line:sub((server_start_boundary or client_start_boundary) + 1, cursor_col)
|
||||
local matches = M._lsp_to_complete_items(result, prefix)
|
||||
return matches, server_start_boundary
|
||||
end
|
||||
@@ -212,6 +213,7 @@ function M.omnifunc(findstart, base)
|
||||
matches, server_start_boundary = M._convert_results(
|
||||
line,
|
||||
lnum,
|
||||
cursor_col,
|
||||
client_start_boundary,
|
||||
server_start_boundary,
|
||||
result,
|
||||
|
||||
Reference in New Issue
Block a user