在不使用前缀键的情况下在 tmux 中绑定命令

在不使用前缀键的情况下在 tmux 中绑定命令

是否可以将 tmux 命令绑定到组合键并直接使用它而无需先按下前缀?

我发现C-b + n切换窗格太麻烦了,所以我想知道我是否可以绑定,C-1例如,切换到窗格#1。

或者也许有一种方法可以让终端仿真器中的快捷方式C-b + 1在我按下时发送C-1

谢谢!

答案1

对于您的示例,请使用:

bind-key -n C-1 select-pane -t 1

-n参数用于bind-key,即无前缀。

答案2

我对这里接受的答案有异议。

根据tmux(1)-n is an alias for -T root。因此,包含-n实际上并不意味着“没有前缀”,而是意味着命令将绑定到根表,这是“不推荐的”。

tmux(1)

根表用于不带前缀键的按键:将“c”绑定到根表中的 new-window(不推荐)意味着普通的“c”将创建一个新窗口

这似乎是在说:

bind -n c new-window

按下时将创建一个新窗口c,事实上也是如此。

作者说“不推荐”的幽默之处在于,在一般的 tmux 会话中,“c”当然会被按很多次,因为“c” 是英语中第三常见的字母

再举一个例子,这是快速 tmux 窗口切换(使用 PageUp/PageDown 键):

unbind NPage
unbind PPage
bind -n PPage previous-window
bind -n NPage next-window

答案3

我喜欢用Alt+,向左移动窗口,Alt+.用 向右移动窗口。乍一看,你可能觉得这个选择没什么意义,但这些键也用于 <>,我只是懒得再加个 shift 键。

# switch windows without prefix
bind -n M-, select-window -t -1
bind -n M-. select-window -t +1

窗格也一样。我喜欢使用Alt+[Alt+]

bind -n M-[ select-pane -t -1
bind -n M-] select-pane -t +1

答案4

我在 .tmux.conf 中使用 vim 样式窗格选择

bind h select-pane -L
bind j select-pane -D
bind k select-pane -U
bind l select-pane -R

也可以看看

我从这里复制了 tmux 端的配置:

相关内容