Почему так сложно переделать Esc в CAP LOCK в Vim?
Я видел подсказки wiki wiki, и он говорит, что для переназначения Esc в CAP LOCK вам необходимо отредактировать следующий код окна:
REGEDIT4
[HKEY_CURRENT_USER\Keyboard Layout]
"Scancode Map"=hex:00,00,00,00,00,00,00,00,02,00,00,00,01,00,3a,00,00,00,00,00
Можно ли переназначить Esc в CAP LOCK, только добавив или изменив строки в _vimrc?
Ответы
Ответ 1
Я рекомендую вам использовать AutoHotkey для этого.
Вы можете выполнить изменение горячей клавиши для каждого приложения:
SetTitleMatchMode,2
#IfWinActive,VIM
CAPSLOCK::ESC
return
#IfWinActive
CAPSLOCK::CTRL
return
Этот script, например, устанавливает шапки для выхода в vim и управляет везде.
Ответ 2
Там нет идентификатора ключа vim для ключа capslock, поэтому вам нужно сделать это с помощью кода сканирования.
Это было бы похоже на попытку сопоставить ключ ctrl или клавишу shift для чего-то - эти клавиши ничего не делают сами по себе, они являются ключевыми модификаторами, поэтому они не могут быть пойманы в ловушку одинаково.
Ответ 3
Отображение должно выполняться на уровне ОС вместо vim, поэтому усложнение происходит из ОС. Например, на моей машине Ubuntu у меня есть следующее в ~/.Xmodmap
:
! Esc on caps lock
remove Lock = Caps_Lock
keysym Caps_Lock = Escape
Однако, я не думаю, что REGEDIT script настолько плох. Это вроде уродливо, но это всего две строки!
Ответ 4
Вы также можете использовать Ctrl-C для выхода (доступно по крайней мере в vim). Это то, что я обычно использую. Тем не менее, я обычно меняю контроль и caplock, и сделал это через настройки реестра в Windows и клавиатуре conf в ubuntu.
Изменить: как @mMontu любезно отмечает, Ctrl-C более жестокий, чем Esc: Как указано в этом подходящем вопросе,
vim не собирается проверять, если вы просто написали часть аббревиатура, и он не будет запускать причудливые автокоманды плагины настроены для каждого раза, когда вы покидаете режим вставки
Я не заметил, потому что мой показ еще не развит.
Ответ 5
Также вы можете попробовать следующее: SharpKeys.
Я сменил CapLock и Esc вместе с ним.
Ответ 6
Другая альтернатива, которая хорошо работала для меня, заключалась в использовании инструкций,
этот веб-сайт
По существу: установите Microsoft Layout Creator, затем отредактируйте исходный код, чтобы можно было переназначить CAPS LOCK и создать свой собственный макет.