Не работает Enter в макросе Vim

Записал макрос для редактирования текста в latex: переход в начало строки, на 82 символа вправо, на СЛОВО влево, режим вставки, enter на новую строку, esc выход в нормальный режим.

Вот, что записалось в регистр:

:reg k
Type Name Content
  c  "k   082lBi^M^M^[

Применяя макрос, вместо желаемого получается такая же команда, но без Enter.

Я так понимаю, что ^M это Enter, но почему их тогда 2.

Также я попытался записать макрос через init.vim:

let @k='082lBi^M^['

Но тогда при выполнении макроса, где должен был быть переход на новую строку, печатается ^M^[, оставаясь в режиме вставки.


Ответы (1 шт):

Автор решения: Илья Ярусов

@Roman, попробовал, заработало) Стал искать в init.vim, что может мешать и в итоге нашел. Это настройка клавиш сопоставления для luasnip. В частности появляется окно автокомплита для выбора нужного варианта, затем нужно нажать Enter для подтверждения. Закомментировал следующий код, макрос заработал.

    ['<CR>'] = cmp.mapping.confirm {
        behavior = cmp.ConfirmBehavior.Replace,
        select = true,
    },

В остальных сценариях Enter ведет себя нормально. Спасибо за помощь!

→ Ссылка