diff --git a/lua/cmp/core.lua b/lua/cmp/core.lua index e1cea21..14c8db5 100644 --- a/lua/cmp/core.lua +++ b/lua/cmp/core.lua @@ -244,13 +244,12 @@ core.confirm = vim.schedule_wrap(function(e, option, callback) local is_snippet = completion_item.insertTextFormat == types.lsp.InsertTextFormat.Snippet - local range = types.lsp.Range.to_vim(ctx.bufnr, completion_item.textEdit.range) local keys = {} - if e.context.cursor.col < range['end'].col then - table.insert(keys, keymap.t(string.rep('U', str.chars(ctx.cursor_line, e.context.cursor.col, range['end'].col - 1)))) + if e.context.cursor.character < completion_item.textEdit.range['end'].character then + table.insert(keys, keymap.t(string.rep('U', completion_item.textEdit.range['end'].character - e.context.cursor.character))) end - if range.start.col < e.context.cursor.col then - table.insert(keys, keymap.t(string.rep('', str.chars(ctx.cursor_line, range.start.col, e.context.cursor.col - 1)))) + if completion_item.textEdit.range.start.character < e.context.cursor.character then + table.insert(keys, keymap.t(string.rep('', e.context.cursor.character - completion_item.textEdit.range.start.character))) end if is_snippet then