Так что в моих терминах bash/zsh у меня есть set -o vi
. Но тогда мне нужно нажать ESC, чтобы перейти в командный режим. Я не могу понять, как я могу сделать этот режим команд по умолчанию?Как установить режим bash/zsh по умолчанию в режим командной строки vi вместо режима вставки vi?
7
A
ответ
3
Вы можете достичь этого поведения с помощью «xdotool». Установите его и добавьте в ваш файл ~/.bashrc затем
set -o vi
xdotool key Escape
+0
Это работает только в X Window, не так ли? –
+0
Да, это должно быть выполнено только при установке переменной $ DISPLAY. возможно, существует более универсальный способ эмуляции ввода. – ineb
Командный режим кажется более полезным на непустой командной строки; почему вы хотите сделать это по умолчанию? – chepner
нажатие «i» проще, чем наведение на «ESC» (особенно на клавиатуре Kinessis) ... – revit09
Вы можете изменить ключ, используемый для входа в командный режим, в нечто иное, чем Escape. Я упоминаю об этом, потому что в документации для 'bind-key' в' man zshzle' упоминается, что нельзя связать 'vicmd' с' main', так как вы не сможете переключиться с 'viins' на' vicmd' (предположительно после переключение на «viins» в первый раз). – chepner