4

我想在minTTY /cygwin 下将CTRL+TABCTRL++ (不带前缀)绑定到 tmux 函数。SHIFTTAB

我尝试了以下 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。SwitchShortcuts=no我已经通过它的选项( in .minttyrc) 禁用了 minTTY 对这个组合键的处理。

作为参考,CTRL+TABCTRL++适用于具有以下 .screenrc 的循环窗口 SHIFTTABscreen

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

1 回答 1

3

我来到这里是因为我遇到了同样的问题。

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,尽管它可能很快就会修复。

于 2017-08-19T20:08:28.860 回答