Чи можна було б налаштувати iTerm 2 так, щоб воно переходило вперед і вперед одним словом через текст тексту в командному рядку за допомогою комбінації клавіш?
Чи можна було б налаштувати iTerm 2 так, щоб воно переходило вперед і вперед одним словом через текст тексту в командному рядку за допомогою комбінації клавіш?
Відповіді:
Ctrl-[ b
відскакує слово назад. Ви також можете використовувати Esc
натомість або Ctrl-[
, і f
рухатися вперед.
Тобто Ctrl
+ [
випуск, а потім b
або f
. Або Esc
і b
або f
.
Більше інформації можна знайти на цій іншій дискусії на AskDifferent.
Вбивство мухи з гармати:
Потім ви можете перемістити слово назад за допомогою Option ⌥+, ←а слово вперед за допомогою Option ⌥+ →, перейти до початку рядка за допомогою fn+ ←та до кінця рядка за допомогою fn+ →. Також ви можете видалити слово назад за допомогою Option ⌥+ ⌫, видалити весь рядок за допомогою Command ⌘+ ⌫.
Якщо попередньо встановлена настройка не відображається, встановіть iTerm2. Якщо ви встановили його за допомогою Homebrew + Cask:
brew cask reinstall iterm2
Мені подобається наступна установка.
рухатися вперед одним словом
option+right
send escape sequence
f
повернути одне слово назад
option+left
send escape sequence
b
видалити до початку слова ( кредит )
option+delete
send hex code
0x1B 0x08
видалити до кінця слова
fn+option+delete
send escape sequence
d
(Я точно не пам'ятаю, але думаю, що я скопіював цю відповідь з відповіді jherran нижче і додав до неї більше. Я повинен був додати додаткову інформацію в коментарях чи запропонованих редакціях щодо цієї відповіді. Я не знаю, як покращити ситуація, але тепер це відомо.)
Це працює принаймні для баш. Для zsh є інші способи навігації.
Подібно до інших відповідей, але для Zsh знадобилося певний час, щоб знайти це:
Якщо ви використовуєте Zsh, наприклад, Oh My Zsh, в iTerm, тоді перейдіть до: Налаштування> Профілі > Підменю Ключів
Клацніть + знак
Додайте комбінацію клавіш швидкого доступу, виберіть "Надіслати послідовність втечі"
вводи ліворуч і праворуч внизу.
зліва:
[1;5D
правильно:
[1;5C
Ви можете встановити свій термінал в режимі vi, set -o vi
щоб мати можливість використовувати звичайні команди руху (додайте рядок, .bash_profile
щоб зберігати налаштування постійно.)
Отже, як якщо в vi, ви можете натиснути Esc
, b
щоб перенести одне слово назад ( w
вперед), перейти до початку рядка з 0
або шукати символ назад з F
+ знаком .
Натисніть, i
щоб повернутися до звичайного режиму та вставити.
Ті, хто знайомий з vi, можуть зробити набагато більше. Чит-лист можна знайти тут .
Esc
потім I
просто йти один раз на початку рядка трохи менш зручно , ніж Ctrl-a
- це випадок використання часто трапляється , коли ви просто хочете змінити назву команди. Тож я використовую режим vi з деякими змінами клавішних змін у iTerm2 для картографування Ctrl-A
і подібних до послідовності виходу Esc+0
. Таким чином ці випадки ще швидші, оскільки вони закінчуються в режимі редагування.
Відкрити налаштування
Налаштування лівої (та / або) правої клавіші Опція для надсилання Esc +
Якщо ви заблукали зі своїми попередніми налаштуваннями, можливо, вам доведеться завантажити попередньо встановлену програму за замовчуванням (будьте обережні, це може стерти ваші користувацькі вкладки!)
Якщо після цього ви побачите дивні символи, можливо, вам знадобиться налаштувати ваш ~ / .inputrc або / etc / inputrc
Додайте це до свого ~ / .inputrc:
"\e[1;5C": forward-word
"\e[1;5D": backward-word
"\e[5C": forward-word
"\e[5D": backward-word
"\e\e[C": forward-word
"\e\e[D": backward-word
повний приклад inputrc:
# /etc/inputrc - global inputrc for libreadline
# See readline(3readline) and `info rluserman' for more information.
# Be 8 bit clean.
set input-meta on
set output-meta on
# To allow the use of 8bit-characters like the german umlauts, uncomment
# the line below. However this makes the meta key not work as a meta key,
# which is annoying to those which don't need to type in 8-bit characters.
# set convert-meta off
# try to enable the application keypad when it is called. Some systems
# need this to enable the arrow keys.
# set enable-keypad on
# see /usr/share/doc/bash/inputrc.arrows for other codes of arrow keys
# do not bell on tab-completion
# set bell-style none
# set bell-style visible
# some defaults / modifications for the emacs mode
$if mode=emacs
# allow the use of the Home/End keys
"\e[1~": beginning-of-line
"\e[4~": end-of-line
# allow the use of the Delete/Insert keys
"\e[3~": delete-char
"\e[2~": quoted-insert
# mappings for "page up" and "page down" to step to the beginning/end
# of the history
# "\e[5~": beginning-of-history
# "\e[6~": end-of-history
# alternate mappings for "page up" and "page down" to search the history
# "\e[5~": history-search-backward
# "\e[6~": history-search-forward
# mappings for Ctrl-left-arrow and Ctrl-right-arrow for word moving
"\e[1;5C": forward-word
"\e[1;5D": backward-word
"\e[5C": forward-word
"\e[5D": backward-word
"\e\e[C": forward-word
"\e\e[D": backward-word
$if term=rxvt
"\e[7~": beginning-of-line
"\e[8~": end-of-line
"\eOc": forward-word
"\eOd": backward-word
$endif
# for non RH/Debian xterm, can't hurt for RH/Debian xterm
# "\eOH": beginning-of-line
# "\eOF": end-of-line
# for freebsd console
# "\e[H": beginning-of-line
# "\e[F": end-of-line
$endif
За допомогою iTerm2 3.1.4 я зміг налаштувати наступне, не додаючи окремі відображення ключів.
З новим сеансом терміналу тепер ви можете використовувати:
Option ⌥+ fЩоб рухатися вперед
Option ⌥+ bЩоб рухатися вперед
Option ⌥+ Delete ⌫Видалити слово