Bash vi mode-привязка "C-c" для выхода из режима вставки

Я просто открываю для себя магию использования стиля vi в bash. Сразу же я пытаюсь использовать C-c для выхода из режима вставки (в так называемый режим движения), поскольку я привык к C-c, чтобы перейти в командный режим в vim.

Я искал вокруг и нашел команду для перезагрузки ключа в bash:

"bind -m vi-insert C-c:vi-movement-mode"

затем я использовал "bind-P" для проверки состояния привязки, и он показал:

"..."
"vi-movement-mode can be found on "C-c", "e"."

однако, когда я попытался выйти из режима вставки, он очистил всю строку вместо этого (поведение по умолчанию), вместо перехода в режим движения... Любая мысль, как я могу использовать C-C для выхода из режима вставки?

спасибо заранее.

2 ответов


вы можете восстановить клавишу прерывания:

stty intr ^X

теперь, чтобы прервать что-то, что выполняется, вам нужно нажать Ctrl-x. Я не знаю, Может ли изменение этого иметь другие побочные эффекты.

причина, по которой vim может это сделать, заключается в том, что он ловит прерывание Ctrl-C.


вы также можете использовать старый трюк для отображения Caps Lock В ESC:

xmodmap -e 'clear Lock'
xmodmap -e 'keycode 0x42 = Escape'

который в основном напоминает, как раньше работали клавиатуры.