Fix #120
This commit is contained in:
@@ -206,10 +206,10 @@ core.confirm = vim.schedule_wrap(function(e, option, callback)
|
||||
debug.log('entry.confirm', e:get_completion_item())
|
||||
|
||||
local ctx = context.new()
|
||||
local keys = {}
|
||||
table.insert(keys, keymap.t(string.rep('<BS>', ctx.cursor.character - e:get_insert_range().start.character)))
|
||||
table.insert(keys, string.sub(e.context.cursor_before_line, e:get_offset()))
|
||||
keymap.feedkeys(table.concat(keys, ''), 'n', function()
|
||||
local restore = {}
|
||||
table.insert(restore, keymap.t(string.rep('<C-g>U<Left><Del>', ctx.cursor.character - misc.to_utfindex(e.context.cursor_before_line, e:get_offset()))))
|
||||
table.insert(restore, string.sub(e.context.cursor_before_line, e:get_offset()))
|
||||
keymap.feedkeys(table.concat(restore, ''), 'n', function()
|
||||
--@see https://github.com/microsoft/vscode/blob/main/src/vs/editor/contrib/suggest/suggestController.ts#L334
|
||||
if #(misc.safe(e:get_completion_item().additionalTextEdits) or {}) == 0 then
|
||||
local pre = context.new()
|
||||
@@ -258,10 +258,10 @@ core.confirm = vim.schedule_wrap(function(e, option, callback)
|
||||
|
||||
local keys = {}
|
||||
if e.context.cursor.character < completion_item.textEdit.range['end'].character then
|
||||
table.insert(keys, keymap.t(string.rep('<C-g>U<Right><BS>', completion_item.textEdit.range['end'].character - e.context.cursor.character)))
|
||||
table.insert(keys, keymap.t(string.rep('<Del>', completion_item.textEdit.range['end'].character - e.context.cursor.character)))
|
||||
end
|
||||
if completion_item.textEdit.range.start.character < e.context.cursor.character then
|
||||
table.insert(keys, keymap.t(string.rep('<BS>', e.context.cursor.character - completion_item.textEdit.range.start.character)))
|
||||
table.insert(keys, keymap.t(string.rep('<C-g>U<Left><Del>', e.context.cursor.character - completion_item.textEdit.range.start.character)))
|
||||
end
|
||||
|
||||
if is_snippet then
|
||||
|
||||
Reference in New Issue
Block a user