В OSX я можу просто утримувати optionклавішу і натискати ліву клавішу курсору, поки я не доберуся до слова, яке мені потрібно відредагувати (або у Vi я можу просто натиснути b, але я не зміг зрозуміти, як це зробити у Терміналі ще ...
В OSX я можу просто утримувати optionклавішу і натискати ліву клавішу курсору, поки я не доберуся до слова, яке мені потрібно відредагувати (або у Vi я можу просто натиснути b, але я не зміг зрозуміти, як це зробити у Терміналі ще ...
Відповіді:
Щоб встановити прив'язку клавіш: спочатку потрібно з’ясувати, який ключ створює послідовність клавіш Ctrl+ Left. Просто скористайтеся командою, cat
щоб вимкнути будь-які перешкоди для існуючих прив'язок клавіш, а потім введіть послідовність клавіш. У моїй системі (Linux) це виглядає приблизно так:
$ cat
^[[1;5D
Натисніть Ctrl+, dщоб вийти з кота. Тепер ви дізналися, що Ctrl-Left видає 6 ключових кодів:
Тепер ви можете задати команду bind:
bind '"\e[1;5D": backward-word'
Баш-функція, яку ви хочете, є backward-word
. Ви можете запустити, bind -q backward-word
щоб отримати список ключів, прив’язаних до цієї функції. Одне поширене зв’язування - Esc+b
Крім того, багато терміналів підтримують Ctrl+ Left(та сама гаряча клавіша, яку ви можете використовувати в X, щоб стрибати назад за словом)
backward-word can be invoked via "\eb".
але як я зв'язати контроль + ліворуч замість Esc + b? Крім того, один недолік Esc + b, який я вже бачу, - це те, що мені потрібно щоразу, коли я можу повертатися до слова, лягати на клавішу Esc, чи немає кращого способу?
set editing-mode vi
:)
Комбінація клавіш за замовчуванням у Bash for backword-word
- Alt+ b. Цей же результат можна досягти і з Esc+ b. Ви повинні спробувати цим, перш ніж редагувати свої клавіші.
Використовуйте bind
команду для редагування або bind -q [name]
отримання поточної зв'язки клавіш певної дії.
Alt + f