Вы используете noremap
, что означает, что оно вызывает:
- в обычном режиме
- в визуальном режиме
- в режиме ожидания оператора.
Вместо этого следует использовать nnoremap
или xnoremap
.Также обратите внимание, что !
является ярлыком для :.!
в обычном режиме (действует на текущей строке) и для :'<,'>!
в визуальном режиме (действует для текущих визуально выбранных линий).Если вы не хотите этого:
nnoremap <c-p> :!firefox ...
xnoremap <c-p> :<c-u>!firefox ...