То же самое касается: q и: Q. Я почти всегда не слишком быстро упускаюсь на смену и вижу, что: Q и: W не используются, я думал, что было бы неплохо просто заставить их делать то же самое, что и их младшие коллеги.
Есть ли способ в vim сделать: W делать то же самое, что: w?
Ответ 1
Взлом осуществляется через :cmap
или :cabb
, но у них есть побочные эффекты (т.е. другие экземпляры также будут непреднамеренно преобразованы).
плагин cmdalias делает это лучше.
Но я думаю, что для вашего случая использования лучше всего определить свои собственные командные варианты в верхнем регистре. Основная задача состоит в том, чтобы поддерживать все варианты, которые есть у первоначального:
command! -bang -range=% -complete=file -nargs=* W <line1>,<line2>write<bang> <args>
command! -bang Q quit<bang>
Ответ 2
Да, вы можете перенаправить их в свой .vimrc, например:
cabb W w
cabb Q q
или
cmap W w
cmap Q q
Недостатком является то, что он "W" будет расширяться до "w" в обоих случаях (cmap
отображает изменение, cabb
нет).
Как правило, довольно легко переназначить ключи в соответствии с вашими потребностями в Vim. Попробуйте изучить следующий учебник: Сопоставление ключей в Vim
изменить Как отмечает @IngoKarkat, это хакерское решение. Я оставляю это здесь, потому что это быстро и просто. Однако недостаток ясен; он мешает другим применениям.
Ответ 3
noremap работает для меня без каких-либо побочных эффектов
noremap :W :w
Ответ 4
Это не ответ на ваш вопрос, а решение вашей проблемы - "Я почти всегда не спускаюсь на смену достаточно быстро". Поменяйте значение двоеточия и точки с запятой. Тогда сдвиг не требуется, так как вы будете использовать ;w
и ;q
.
nnoremap ; :
nnoremap : ;
vnoremap ; :
vnoremap : ;
Ответ 5
Предполагая, что вы ищете более быстрый способ сделать :wq
Действительно, это комбо ESC, затем : (что само является Shift + ;), затем w, затем q, затем Enter. Пять нажатий клавиш, шесть, если вы считаете : как два.
Вместо этого попробуйте ESC затем (удерживая) Shift снова нажать Z, затем Z (нет :). Он автоматически сохранит и выйдет из файла. Еще одно нажатие клавиши (или два, в зависимости от того, как вы считаете это), и намного сложнее испортить.