Пользовательские ключи с плагином NERDComment и переназначенным лидером? - PullRequest
3 голосов
/ 13 апреля 2010

Я пытаюсь настроить плагин NERDComment в vim, но у меня проблемы с ключами. Я хотел бы установить основные функции переключения (закомментировать строку, если она не закомментирована, раскомментировать, если она закомментирована), чтобы быть c. Проблема в том, что я переназначил Leader на ,, то есть тот же ключ, который NERD хочет для всех своих горячих клавиш. У кого-нибудь есть идеи, как это настроить?

Ответы [ 2 ]

9 голосов
/ 13 апреля 2010

Просто вызовите функцию NERDComment в вашем отображении. Например, мое сопоставление для комментирования текущей строки:

inoremap ,c <C-o>:call NERDComment(0,"toggle")<C-m>

Вот описание того, как работает этот vim remap.

i в inoremap означает, что переназначение применяется только в режиме вставки.

noremap означает, что переопределение не может быть переопределено позже в вашем файле .vimrc случайно или с помощью плагина.

,c - это комбинация клавиш, которая запускает карту клавиш.

<C-o> временно выводит вас из режима вставки для одной команды, поэтому следующий раздел переназначения может вызвать функцию NERDComment.

:call NERDComment(0,"toggle") - это вызываемая функция NERDComment.

Тогда <C-m> - это еще один способ сказать возврат каретки, который выполняет команду.

6 голосов
/ 14 июня 2015

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

nnoremap ,c :call NERDComment(0,"toggle")<CR>
vnoremap ,c :call NERDComment(0,"toggle")<CR>
...