Отправить “C- (” Emacs в терминале VT100 / xterm (терминал Mac OS X)?

Возможно ли каким-либо образом отправить ключ «C- (» на Emacs через терминал VT100 / xterm (терминал Mac OS X)? Существует ли escape-последовательность, которую можно отправить для достижения эквивалента?

Я подозреваю, что основная проблема заключается в том, что концепция объединения управления с характером “(” (и других таких символов, которые производятся с использованием сдвига) не существует.

Примечание. Использование Cocoa Emacs не является вариантом. И причина необходимости «C- (» заключается в том, что paredit.el использует его среди других комбинаций клавиш, и было бы предпочтительнее не переназначать его (потому что имеет смысл иметь его на «C- (»).

Терминал VT100 не мог этого сделать, потому что нет ^( управляющий символ, соответствующий ( . Однако xterm имеет так называемый режим «modifyOtherKeys», что позволяет отправлять уникальные коды ключей для таких комбинаций.

Чтобы включить его, установите ресурс modifyOtherKeys , например, в ~/.Xdefaults :

 XTerm*vt100.modifyOtherKeys: 1 

При этом Ctrl + (отправит следующий код клавиатуры:

 ^[[27;6;40~ 

Это довольно долго, поэтому был введен другой формат для таких кодов клавиш, который можно включить, установив ресурс formatOtherKeys :

 XTerm*vt100.formatOtherKeys: 1 

При этом Ctrl + (посылает:

 ^[[40;6u 

В обоих этих ключевых кодах 40 является десятичным ASCII-кодом для ( , а 6 представляет собой Ctrl.

Подробнее см. man xterm и http://invisible-island.net/xterm/ctlseqs/ctlseqs.html . Не знаю, поддерживает ли Terminal.app любой из них.

  • Как ускорить работу Terminal.app или iTerm на Mac OSX?
  • Невозможно ввести какой-либо специальный символ или umlaut в терминале
  • Сплит-терминальные окна на Snow Leopard
  • curl json post request через терминал для приложения rails
  • Имя компьютера Mac (acer-xxxxxxxxxx)?
  • Откройте новую вкладку в том же каталоге
  • Выход терминала поиска
  • Создание символов 256-цветного и линейного рисования работает в PuTTY
  • Как копировать файлы с помощью SSH?
  • Возвышенный текст из командной строки (Win7)
  • Копирование папки нескольким адресатам параллельно
  • Давайте будем гением компьютера.