Как перейти к следующему или предыдущему слову в Терминале в Mac OS?

Как перейти к следующему или предыдущему слову в Терминале в Mac OS?

Я обычно использую Linux, совсем не эксперт (даже очень далекий от этого), но использую его ежедневно.

Иногда я ловлю себя на том, что использую (чужой) Mac и ввожу команды в Терминал.

В Linux я могу использовать Ctrl+Left и Ctrl+Right для перемещения назад или вперед в текущей строке по одному слову за раз (как и в большинстве текстовых редакторов, кстати). Если я попытаюсь сделать это в Mac OS, он переключит рабочие пространства или выведет на передний план другое окно, или что-то раздражающее в этом роде. Кажется, я пробовал и Command, и Ctrl (правильную) клавишу.

Есть ли другая комбинация клавиш для этого в Mac OS? В конце концов я обнаруживаю, что удерживаю стрелку kay, чтобы перемещаться по одному символу за раз, что в Mac OS по какой-то причине происходит примерно в 10 раз медленнее, чем в Linux и Windows.

решение1

Opt-Bперемещает на одно слово назад, Opt-Fна одно слово вперед. Это emacsсочетания клавиш, которые ваша оболочка ( bash) поддерживает и включила по умолчанию. Вам нужно проверитьИспользовать опцию как мета-ключпредпочтения (на фото ниже).


Кроме того, в настройках профиля вашего Терминала вы можете назначить специальные escape-последовательности, например, Opt-Leftи , Opt-Rightчтобы привычные сочетания клавиш работали в Терминале, например:

введите описание изображения здесь

введите описание изображения здесь

Используйте \033[5Dдля перемещения влево и \033[5Cдля перемещения вправо.

решение2

Если вы используете iTerm и хотите использовать сочетание клавиш Crtl + L / R, как в Linux, slhck'sпредложение работает хорошо.

Просто добавь:

"\e[1;5D": backward-word
"\e[1;5C": forward-word

( создать ~/.inputrcфайл, если его нет), для Ctrl - влево, а Ctrl - вправо соответственно.

Связанный контент