Ответ 1
Это из-за mswin.vim, который получен по умолчанию _vimrc, сгенерированный при установке vim. Просто переопределите свой _vimrc с помощью .vimrc, который вы используете в * nix или удалите mswin.vim.
Я пытаюсь использовать < C-a > (CTRL + A) shorcut под vim для увеличения переменной под курсором. Это отлично работает под управлением vim на Linux. Однако, когда я пытаюсь сделать это в gvim под окнами, он "выбирает все" (т.е. Выделяет или визуально выбирает весь текст в текущем окне). Как я могу изменить это поведение или, альтернативно, как я могу восстановить функциональность переменной приращения (например, возможно, с другим отображением ключей)?
Это из-за mswin.vim, который получен по умолчанию _vimrc, сгенерированный при установке vim. Просто переопределите свой _vimrc с помощью .vimrc, который вы используете в * nix или удалите mswin.vim.
Я знаю, что опаздываю на вечеринку, но я подумал, что поделюсь следующим:
nnoremap <kPlus> <C-a>
nnoremap <kMinus> <C-x>
Это переназначает приращение клавишей + на цифровой клавиатуре и уменьшается до клавиши -. Это решение, которое я использовал в своем собственном файле _vimrc
в Windows. Он поддерживает совместимость с Windows и легче запоминается, чем оригинальный Ctrl + A/Ctrl + X.
Vim в Windows имеет специализированные сопоставления клавиш по умолчанию, чтобы сделать ярлыки более "windows-y". Они указаны в файле $VIMRUNTIME\mswin.vim, который загружается через ваш vimrc, если вы не отключили его. Вы можете отредактировать файл mswin.vim(вместо этого вы можете отредактировать копию, заменив vimrc на использование отредактированной копии).
Я не совсем уверен, что это сопоставление Vim по умолчанию, так как единственная ссылка, которую я могу найти в Ctrl + A в файле справки, - это то, что не похоже на то, что вы имеете в виду:
*c_CTRL-A*
CTRL-A All names that match the pattern in front of the cursor are
inserted.
чтобы вы могли проверить свой Linux-бокс, чтобы увидеть, не изменились ли какие-либо плагины или что-то по-другому. (Конечно, может быть, я просто не могу найти соответствующую часть помощи Vim.)
Если вам просто не нравится поведение Ctrl A, но отлично подходит для других действий Windows в VIM (например, Ctrl Z для отмены), просто отключите эту конкретную строку:
c:\Program Files\Vim\vim73\mswin.vim
для меня)CTRL-A is Select all
"
)Вы все еще можете "выбрать все", набрав ggVG
(курсор позиции в первой строке, выберите всю строку, выберите до последней строки документа).
Счастливое приращение!
в текущей версии mswin.vim с gvim, файл проверяет значение глобального с именем skip_loading_mswin
; Если установлено, остальная часть файла пропускается; поэтому достаточно добавить
let skip_loading_mswin=1
до $HOME/_vimrc
, и нормальные привязки vim будут восстановлены при следующем запуске vim.