Как связать Ctrl-Tab и Ctrl-Shift-Tab в tmux для mintty

Я хотел бы связать CTRL+TAB и CTRL+SHIFT+TAB (без префикса) с функциями tmux, под minTTY/cygwin.

Я пробовал следующую конфигурацию tmux:

set-option -gw xterm-keys on
bind-key -n C-Tab next-window
bind-key -n "^[[1;5I" next-window # tmux doesn't recognize
bind-key -n "\e[1;5I" next-window # tmux doesn't recognize

Если я нажимаю CTRL+TAB после запуска tmux, я получаю звук звонка. Если я нажму после префикса tmux, он напечатает 1;5I,

Я использую minTTY 2.2.3 под Cygwin/Babun. Я отключил обработку этой ключевой комбинации в MinTTY через ее параметры (SwitchShortcuts=no в .minttyrc).

Для справки, CTRL+TAB и CTRL+SHIFT+TAB работают для езды на велосипеде screen окна со следующим.screenrc:

bindkey "^[[1;5I" next
bindkey "^[[1;6I" prev

1 ответ

Я попал сюда, потому что столкнулся с той же проблемой.

tmux теперь поддерживает пользовательские привязки клавиш через user-keys - с августа 2017 года, так что если вы можете собрать tmux самостоятельно или после выпуска новой версии tmux, это возможно так:

set -s user-keys[0] "\e[1;5I"
set -s user-keys[1] "\e[1;6I"
bind-key -n User0 select-pane -t+
bind-key -n User1 select-pane -t-

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

На момент написания примера в руководстве использовались одинарные кавычки - https://github.com/tmux/tmux/issues/1043, хотя, скорее всего, это будет исправлено в ближайшее время.

Другие вопросы по тегам