Почему nnoremap не работает с CtrlP, а nmap работает? - VIM
У меня есть это в моем .vimrc
nnoremap <leader>p :CtrlP<CR><C-\>w
Я изменяю все nmap на nnoremap в моем .vimrc, и все отлично работает, кроме этого:
nnoremap <leader>p :CtrlP<CR><C-\>w
С nmap <leader>p :CtrlP<CR><C-\>w
он автоматически вставляет слово в CtrlP, а с помощью nnoremap я не получаю пустое поле, как будто я только что нажал Ctrl-P.
Почему это не работает с nnoremap?
1 ответ
Когда вы создаете отображение с nnoremap
, он не учитывает ваши предыдущие сопоставления при решении, что делать. Другими словами, если вы ранее нанесли на карту любой из них:
<CR>
<C-\>
w
Тогда эти карты будут игнорироваться в вашем <leader>p
сопоставление, и вместо этого будет использоваться действие по умолчанию этих нажатий клавиш.
Насколько я знаю, <C-\>
не имеет действия по умолчанию, поэтому я подозреваю, что вы отобразили его (или вы полагаетесь на отображение, добавленное другим плагином), но это отображение здесь не учитывается.