Заставить iTerm переводить мета-ключ так же, как в других операционных системах

В оболочке bash с ключом-ключом emacs вы можете использовать комбинацию клавиш, например M-f, M-b, для перемещения одного слова вперед или назад в командной строке соответственно. Обычно мета-ключ сопоставляется с клавишей Alt в Windows и Linux. Однако в iTerm я не смог найти способ сопоставить этот мета-ключ с опцией или клавишей Command на моем MacBook Pro.

Кажется, что в OS X мета-ключ по умолчанию отображается на клавишу ESC. Таким образом, вы можете использовать ESC-f, ESC-b на iTerm. Однако клавиша ESC, по-видимому, нецелесообразно использовать. Кроме того, у iTerm есть опция, которая позволяет вам сопоставлять модификаторы для мета-ключа (Закладки > Профили > Профили клавиатуры > Глобальный > Клавиша Option как...), этот параметр не работает вообще.

Поэтому, если кто-нибудь знает, что является решением этой проблемы, пожалуйста, дайте мне знать.

Я обновил до последней версии 0.9.6.1012, и это поведение по-прежнему сохраняется.

Изменить: Некоторые разъяснения по моему вопросу. Ключевое обязательство, о котором я говорю, относится к оболочке bash, а не к emacs. Просто случается, что по умолчанию оболочка bash также использует ту же привязку ключей, что и emacs.

Ответ 1

Cmd+., Profiles, Keys и выберите Left option Key acts as: +Esc.

Работает для меня в emacs, хотя я не уверен, что у него будут другие нежелательные эффекты.

Ответ 2

Перейдите в Закладки > Управление профилями. Затем выберите "Профили клавиатуры" > "Глобальный" и выберите "Option Key" как "Meta". Это работает для меня в версии 0.9.6.1201.

Ответ 3

Я не мог заставить Alt работать, но есть обходной путь, который делает его, по крайней мере, функцией для навигации по словам с помощью клавиш управления курсором:

Перейти к следующему или предыдущему слову в iTerm Использование клавиш Alt/Option + влево или вправо со стрелками

Ответ 4

В строке меню Iterm2 = > Предпочтения = > Профили выбирают вкладку клавиш и выбирают

левая клавиша Option действует как + Esc

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

работал и для меня, и для irssi.

Ответ 5

Идет все воскрешение зомби здесь, но ради потомства -

Этот пост заработал так, как вам хочется, для Mb и Mf, сохраняя "Option Key as Meta", чтобы вы не 't жертвовать модификатором (у меня есть сопоставления vim, используя мета, лично).

Итак, в своем глобальном профиле клавиатуры добавьте два новых сопоставления с настройками:

  • Ключ как шестнадцатеричный код, значение 62 для b, 66 для f (man ascii)
  • Модификатор как опция
  • Действие как последовательность эвакуации отправки, значение b или f

Единственное, что я еще пропущу из Terminal.app, - это Opt-Backspace для удаления по слову. Для этого есть другие способы обхода, но я просто пытаюсь научиться использовать Ctrl-w.

Ответ 6

Это проще в iTerm2. Перейдите в настройки → bookmark- > keyboard и выберите Option send + ESC. В iTerm2 вы можете настроить левую и правую ключи опций отдельно, поэтому не забудьте изменить оба, если вы этого хотите. Ссылка для iTerm2: http://sites.google.com/site/iterm2home/

Ответ 7

Перейдите в Закладки > Управление профилями. Затем выберите "Профили клавиатуры" > "Глобальный" и выберите "Option Key" в качестве "ESC".

Работает в iTerm Build 0.9.5.0611 и Build 0.9.6.20090415

Ответ 8

Я нашел некоторое решение для stackoverflow, просто перейдите в профиль клавиатуры и в "Global" change "Option key" как "+ ESC

который отлично работает для меня =) Кстати, некоторые iterm-патча существуют и здесь: http://www.emacswiki.org/emacs/EmacsForMacOS

Ответ 9

Попробуйте "экспортировать LANG = C". Я не эксперт emacs, но я нашел, что это позволяет emacs в OS X распознавать ключ Option в качестве мета-ключа в iTerm,

Ответ 11

Вот что сработало для меня: Закладки > Управление профилями > Профили клавиатуры > Глобальный /xterm > Клавиша Option как + Esc. При этом я могу использовать Option + Enter в Midnight Commander, и текущее выбранное имя файла/каталога отображается в командной строке, как и должно быть. Ключ опции, как Meta, не работал у меня. Моя сборка iTerm равна 0,10.