Как правильно, iTerm или Terminal? (Вариант как Meta или Esc+)

Каждый из них предоставляет возможность изменить поведение Option: как Normal , Meta или только в iTerm, Esc+ . Однако интересное явление заключается в том, что для того, чтобы в командной строке были ярлыки в стиле Emacs, им требуются противоречивые настройки :

  • iTerm: Esc+
  • Терминал: Мета

Примером включенных горячих клавиш являются Option-bрезервное копирование слова и Option-fперемещение вперед на слово.

iTerm не работает, если также установлено значение Meta . Таким образом, кажется, что они понимают под «мета» разные вещи.

Мой вопрос: Кто прав ? Это Meta или Esc+, которые обеспечивают такое Emacs-подобное поведение? Или, может быть, они оба правы, но раскладывают ключи по-разному?

Мета-ключ Emacs — это атрибут ключа. Emacs также принимает префикс ESC для того же самого, но тогда это два ключа

Ответы (1)

Ни правильно, ни неправильно.

Управляющий код ESC является частью escape-последовательности ANSI, которая использовалась для отправки управляющих кодов на ранние терминалы, такие как VT-100. Emacs использовал многие из этих последовательностей Esc, чтобы управлять тем, как пользователь взаимодействует с программой.

Клавиша Meta впервые появилась в 1970 году на клавиатурах SAIL (Стэнфордская лаборатория искусственного интеллекта), компьютерах Lisp Массачусетского технологического института и, в конечном итоге, Sun Microsystems (моя альма-матер в качестве технологических компаний). Он появился как алмазный ключ.

Мета — это клавиша-модификатор, аналогичная (по функциям) клавише Apple Command. На современных клавиатурах он соответствует клавише ALT (опция) или клавише Windows на клавиатуре ПК. Если на компьютере отсутствует мета-ключ, вы можете отправить последовательность ESC.

Любой из них в порядке, iTerm (IMO), похоже, использует более глобальный подход к подключению к различным машинам * nix, где Terminal — это Apple / OpenStep (поскольку Apple их приобрела) и использует мета-ключ.

В конце концов, это то, что вам удобнее - Esc или Meta/Option.

Спасибо - как конечный пользователь, я настроил их, как указано выше, что приводит к такому же поведению для меня. То есть iTerm ведет себя по-другому (по крайней мере, не учитывает эти ярлыки), когда для него также установлено значение Meta .