Конфігурація режиму Bіs за замовчуванням для командного режиму


14

Чи можна налаштувати режим bash vi таким чином, щоб він був спочатку в командному режимі, а не в режимі вставки ? Я вважаю, що мені треба Escзанадто сильно тиснути . Здається, є можливість вказати це в zsh, але я не знайшов способу це зробити в bash / readline.

Відповіді:


2

Я не думаю, що це можливо, використовуючи стандартну бібліотеку Readline GNU .

Однак, можливо, ви зможете використовувати xdotool для простого злому, щоб досягти такого ж ефекту. Додавання до вашого команди, .bashrcщо імітує Escapeнатискання клавіші, забезпечить відкриття вашого терміна в командному режимі:

xdotool key Escape

Ви можете скористатись невеликою затримкою за допомогою --delayперемикача, щоб запобігти відключенню запиту ...

Зверніть увагу, що це, швидше за все, спричинить більше розладів, ніж ви очікували: термінали призначені для прийому вводу; порушення цього (хоч і небагато) може не виявити настільки гарну ідею ...


1

Я повертаю його назад, це не працює з рухом курсору. Це працює, але зі смішною поведінкою, якщо ви вийдете з них:PS1="$PS1 ^[


Змініть своє PS1запит:

PS1="test $ \[^[[s^[^[[u\]"

Де ^[буквальна втеча ( Ctrl+ V Esc).

Самостійний втеча змінюється в командному режимі, ^[[sа ^[[uзберігається та зберігається та відновлюється положення курсору; без цього я виявив, що є якась смішна поведінка.



-1

спробуйте set +o vi

set -o vi знову перейде в режим редагування.

http://tldp.org/LDP/abs/html/options.html


Це не працює: він вимикає режим vi ...
jasonwryan

так, я спробував. Правильно. Я можу подумати про це - використовуючи vim, змінити cmap (довідка: довідковий режим перемикання на vim) для Escключа. За замовчуванням еквівалента відображення для EscцеCtrl + ]
Ніхілу Mulley

Не працює і на моєму ksh88.
rahmu
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.