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

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

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

  • Каковы достоинства многозадачности с традиционным управлением заданиями и Tmux / Screen?
  • Копирование между окнами tmux на сервере из emacs
  • В tmux, как я могу заменить текущий сеанс, выбрав другой и убив текущий?
  • Формат запроса zsh в соответствии со значением переменной среды
  • Как успешно скопировать и вставить с помощью мыши из tmux
  • tmux не корректно отображает границы
  • Пароль SSH запрашивается, когда в Tmux
  • Команда tmux для перемещения панели к краю окна?
  • 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 по умолчанию.

    Linux и Unix - лучшая ОС в мире.