Mac OS X: Home/End/etc in Terminal.app

Рубрика: Mac OS X | 7 May 2009, 22:59 | Vadim Voituk

Мне кажется, Mac OS X  – является популярной ОС среди разработчиков, в большинстве своем потому, что она внутри все-таки *nix.  Хоть и “облагороженный” до уровня домохозяйки, – но все-таки *nix.
А какой же *nix без терминала, aka-консоли?
Вот и у меня, знакомство с новым MacBook-ом началось именно с терминала. Но к сожалению очень быстро обнаружилось, что в bash, запущенном внутри Terminal.app  не работают клавиши Home / End (в случае MacBook – это Fn+LeftArrow / Fn+RightArrow),  а также Ctrl+LeftArrow / Ctrl+RightArrow для перемещения на слово вперед/назад.

Google выдает огромное количество советов, как это исправляется, но 99% тех, что я перепробовал решали проблему в локальном терминале, и не решали при удаленном подключении из него.

Единственное рабочее решение, которое заработало и локально и remote-но, выглядит так:

  1. Открываем Preferences приложения  Terminall.app
  2. Переходим на закладку Settings => Keyboard
  3. Для Home/End добавляем в список такие записи:
    picture-20 picture-27

    (для вставки \033 нужно в поле ввода нажать Esc)
  4. Аналогичным образом, для реализации переещения вправо-влево с шагом в одно слово используются комбинации \033b и \033f

Вуаля! – и жизнь вне Windows постепенно налаживается :)

На более новых версиях Mac OS X, согласно совету приведенному тут, можно попробовать  комбинации \033OH и \033OF.

Этой заметкой я постараюсь открыть в блоге серию небольших Tips&Tricks, основанных на собственном опыте и относящихся к использованию MacBook и Mac OS X.

Следующей заметкой хочу рассказать, как в Java Swing приложение добавить немного Mac OS X специфичного внешнего вида и поведения. Это кому-то вообще интересно? Или банальщина и не стоит даже напрягаться?