diff --git a/lua/cmp/entry.lua b/lua/cmp/entry.lua index c38513bbd..284fc7afa 100644 --- a/lua/cmp/entry.lua +++ b/lua/cmp/entry.lua @@ -333,8 +333,11 @@ end entry.get_replace_range = function(self) return self.cache:ensure({ 'get_replace_range', self.resolved_completion_item and 1 or 0 }, function() local replace_range - if misc.safe(self:get_completion_item().textEdit) and misc.safe(self:get_completion_item().textEdit.replace) then + local has_textEdit = misc.safe(self:get_completion_item().textEdit) + if has_textEdit and misc.safe(self:get_completion_item().textEdit.replace) then replace_range = self:get_completion_item().textEdit.replace + elseif has_textEdit and misc.safe(self:get_completion_item().textEdit.range) then + replace_range = self:get_completion_item().textEdit.range else replace_range = { start = {