VIM переназначить с новой строки в конце - PullRequest
0 голосов
/ 06 января 2019

Я пытаюсь получить переназначение в моем vimrc, которое добавляет фрагмент, а затем переходит к следующей строке в режиме вставки:

:nnoremap <leader>b oimport pdb;pdb.set_trace()<esc> o

Фрагмент import pdb;pdb.set_trace() вставляется в мой текущий буфер, но курсор в vim остается на той же строке. Можно ли как-нибудь переместить курсор на следующую строку после вставки фрагмента?

Ответы [ 2 ]

0 голосов
/ 09 января 2019

Для меня ваше отображение работает, кроме как в конце буфера (где он подает звуковой сигнал и держит курсор в конце вставленной строки, как вы сообщаете).

Причина - пробел между <esc> и o. :help <Space> - это движение (вправо, точно так же, как l), и если курсор не может перемещаться туда (в конце буфера, возможно, также в другом месте в зависимости от параметра 'whichwrap') Вим издает звуковой сигнал и прерывает отображение; все ключи, которые идут после этого, игнорируются.

Исправить несложно: отбросьте лишние пробелы, и отображение будет работать везде!

nnoremap <leader>b oimport pdb;pdb.set_trace()<esc>o
0 голосов
/ 06 января 2019

Как насчет этого:

nnoremap <leader>b oimport pdb;<CR>pdb.set_trace()<CR>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...