2011-12-17 2 views
8

В целом, как отлаживать и разрешать привязки клавиш, перекрывающиеся? У меня была эта проблема. Недавно я добавляю плагин vim-latex в мой каталог vim. После этого я заметил, что моя привязка ctrl-j перекрывается vim-latex/plugin/imaps.vim и потеряла много времени, пока не решила это.Как отлаживать сопоставления отображения VIM?

Кстати: есть ошибка в imaps.vim, я думаю, потому что там написано «карта только в том случае, если уже нет сопоставления», и мой пример показывает противоположное.

ответ

19

Вы можете получить мелкозернистую информацию от :map команды:

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

:map <c-j> 

или, лучше, показать отображения для конкретного ключа, а также сценарий, где было установлено отображение:

:verbose map <c-j> 
+0

Особенно полезно использовать «verbose». Благодарю. – xliiv

1
:map 

Показывает список ваших текущих карт.

9

это дополнение к ответам других людей, а не сам ответа.

Кстати: есть ошибка в imaps.vim, я думаю, потому что там написано «карта, только если нет отображения», и мой пример показывает противоположное.

Вы ошибаетесь, что означает «картирование». Если вы посмотрите на код imaps.vim, вы увидите, что он не будет создавать сопоставление, если есть сопоставление с <Plug>IMAP_JumpForward ({rhs}), а не с отображением <C-j> ({lhs}). Таким образом, вы должны использовать

nnoremap <SID>I_won’t_ever_type_this <Plug>IMAP_JumpForward 

для того, чтобы отключить <C-j> переназначение, если она не нужна (конечно, вы могли бы заменить <SID>... часть с чем-то более значимым, если вы хотите использовать эту функцию).

+0

Вы правы, это также объясняет мне многое, спасибо. – xliiv

Смежные вопросы