我想在minTTY/cygwin下将CTRL+TAB和CTRL+SHIFT+TAB(不带前缀)绑定到tmux函数。
我已经尝试了以下 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
如果我在启动 tmux 后按 CTRL+TAB,我会得到铃声。如果我在 tmux 前缀之后点击它,它会打印1;5I
.
我在cygwin/Babun下使用minTTY 2.2.3。我已经禁用了minTTY通过其选项(SwitchShortcuts=no
.minttyrc
)对此组合键的处理。
作为参考,CTRL+Tab 和 CTRL+SHIFT+TAB 用于循环screen
具有以下 .screenrc 的窗口:
bindkey "^[[1;5I" next
bindkey "^[[1;6I" prev
我来到这里是因为我遇到了同样的问题。
TMUX 现在通过 user-keys
支持自定义键绑定 - 自 2017 年 8 月起,因此,如果您可以自己构建 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 ,尽管它可能很快就会修复。