diff --git a/lua/cmp/utils/feedkeys.lua b/lua/cmp/utils/feedkeys.lua index a8abbc0..e7810a7 100644 --- a/lua/cmp/utils/feedkeys.lua +++ b/lua/cmp/utils/feedkeys.lua @@ -17,11 +17,11 @@ feedkeys.call = setmetatable({ local queue = {} if #keys > 0 then table.insert(queue, { keymap.t('set lazyredraw'), 'n' }) - table.insert(queue, { keymap.t('set paste'), 'n' }) + table.insert(queue, { keymap.t('set textwidth=0'), 'n' }) table.insert(queue, { keymap.t('set eventignore=all'), 'n' }) table.insert(queue, { keys, string.gsub(mode, '[itx]', ''), true }) table.insert(queue, { keymap.t('set %slazyredraw'):format(vim.o.lazyredraw and '' or 'no'), 'n' }) - table.insert(queue, { keymap.t('set %spaste'):format(vim.o.paste and '' or 'no'), 'n' }) + table.insert(queue, { keymap.t('set textwidth=%s'):format(vim.bo.textwidth or 0), 'n' }) table.insert(queue, { keymap.t('set eventignore=%s'):format(vim.o.eventignore or ''), 'n' }) end diff --git a/lua/cmp/utils/feedkeys_spec.lua b/lua/cmp/utils/feedkeys_spec.lua index 45b539f..1c427f8 100644 --- a/lua/cmp/utils/feedkeys_spec.lua +++ b/lua/cmp/utils/feedkeys_spec.lua @@ -13,4 +13,13 @@ describe('feedkeys', function() end) assert.are.equal(reg, keymap.t('aiueo')) end) + + it('autoindent', function() + vim.cmd([[set indentkeys+==end]]) + feedkeys.call(keymap.t('iifend') .. keymap.autoindent(), 'nx') + assert.are.same(vim.api.nvim_buf_get_lines(0, 0, -1, false), { + 'if', + 'end' + }) + end) end)