Как узнать коды клавиш для клавиш Ctrl + вверх и вниз для экрана TERM =?

Я много использую tmux, и мне уже удалось настроить терминал OS X, чтобы отправить правильные коды клавиш для Ctrl + стрелки влево и вправо ( \033b и \033f ). Я нашел эту информацию в Интернете. Однако мне также нужно, чтобы Ctrl + вверх и вниз работали правильно. Как узнать, какие ключевые коды tmux ожидает? Переменная TERM устанавливается на screen во время tmux. Можно ли запросить базу данных терминала на моей машине Linux для кодов?

На данный момент мой терминал OS X просто отправляет стрелку влево и вправо без модификатора Ctrl.

One Solution collect form web for “Как узнать коды клавиш для клавиш Ctrl + вверх и вниз для экрана TERM =?”

Я только что обнаружил, что tmux, похоже, ожидает xterm keycodes, не обращая внимания на тип терминала screen . Поэтому я просто нажал клавиши в xterm, используя Ctrl-V в качестве префикса и получил следующие коды:

  • левая клавиша: ^[[D
  • правый ключ: ^[[C
  • вверх: ^[[A
  • вниз: ^[[B
  • C-left: ^[[1;5D
  • C-right: ^[[1;5C
  • C-up: ^[[1;5A
  • C-down: ^[[1;5B

Теперь я могу настроить терминал OS X для отправки этих кодов клавиш, а tmux работает нормально. Однако другие приложения, запущенные в tmux, будут разбиты, потому что они не ожидают получить коды ключей xterm. Я нашел обходное решение в ArchWiki , которое предлагает создать вашу собственную запись terminfo. Я попробую это.

Изменить: FAQ по tmux заставил меня идти, и я добавил следующие две строки в свой ~/.tmux.conf :

 set -g default-terminal "xterm-256color" setw -g xterm-keys on 

Теперь я могу использовать C-стрелки в tmux, bash, emacs и других программах.

Еще одно редактирование: поскольку tmux не поддерживает bce (удаление фона), мне нужно было создать собственный terminfo, называемый xterm-256color-nobce:

 infocmp xterm-256color | sed 's/bce, //' > xterm-256color-nobce sudo tic ./xterm-256color-nobce 

И не забудьте использовать это как значение TERM по умолчанию.

  • Ошибка при запуске TMUX под CYGWIN
  • Различные конфигурации tmux для разных сеансов?
  • Создайте киоск с tmux
  • Могу ли я применить `tmux` к сценарию bash?
  • Выход Tmux медленнее, когда существуют вертикальные расщепления: почему?
  • tmux: объединить все окна как панели
  • Выполнение команд оболочки изнутри tmux приводит к тому, что терминал Gnome прерывает клавишу <prefix>
  • Избегайте отдельного добавления ключей ssh ​​(с паролем) в сеансы оболочки
  • В tmux.conf задайте опцию по-другому, если window_index равно 0?
  • Tmux - Получить панель # каждой панели в окне из сценария?
  • Как я могу создать файл на основе команды оболочки в .tmux.conf?
  • как конвертировать с startupScript из tmux в gnu-screen?
  • Linux и Unix - лучшая ОС в мире.