From a6412e590cb74ab12ddb95491ed9ba377260aea6 Mon Sep 17 00:00:00 2001 From: hrsh7th Date: Fri, 29 Oct 2021 13:50:00 +0900 Subject: [PATCH] Fix #423 --- lua/cmp/core.lua | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/lua/cmp/core.lua b/lua/cmp/core.lua index 6a41fd1..f5db889 100644 --- a/lua/cmp/core.lua +++ b/lua/cmp/core.lua @@ -207,16 +207,16 @@ core.autoindent = function(self, trigger_event, callback) end local cursor_before_line = api.get_cursor_before_line() - local prefix = pattern.matchstr('[^[:blank:]]\\+$', cursor_before_line) - if prefix then + local prefix = pattern.matchstr('[^[:blank:]]\\+$', cursor_before_line) or '' + if #prefix > 0 then for _, key in ipairs(vim.split(vim.bo.indentkeys, ',')) do if vim.tbl_contains({ '=' .. prefix, '0=' .. prefix }, key) then local release = self:suspend() vim.schedule(function() if cursor_before_line == api.get_cursor_before_line() then - keymap.feedkeys(keymap.t('set indentkeys=%s'):format('!^F'), 'n') - keymap.feedkeys(keymap.t(''):format('!^F'), 'n') - keymap.feedkeys(keymap.t('set indentkeys=%s'):format(vim.bo.indentkeys or ''), 'n', function() + keymap.feedkeys(keymap.t('setlocal cindent'), 'n') + keymap.feedkeys(keymap.t(''), 'n') + keymap.feedkeys(keymap.t('setlocal %scindent'):format(vim.bo.cindent and '' or 'no'), 'n', function() release() callback() end)