tmux更改为下一个会话conf文件

tmux更改为下一个会话conf文件

我想更改我的 tmux.conf 文件,以分别使用 cntrl+shift+0 和 cntrl+shift+9 更改到下一个和上一个会话。但我不知道如何获得下一个和上一个会话目标。

这是我到目前为止所拥有的:

bind -n C-S-0 attach-session -t ganache

但当然不起作用,并且目标会话不是动态的

答案1

有内置的键绑定可以执行此操作(请参阅 参考资料tmux list-keys):

Ctrl )
Ctrl (

但是您可以重新绑定现有会话之间的开关,只需执行以下操作:

bind 'C-S-0' switch-client -n
bind 'C-S-9' switch-client -p

那么你可以用Ctrl+b+Ctrl+Shift+0切换到下一个,用Ctrl+b+ Ctrl+Shift+9切换到上一个。

显然,您可以添加一个-r标志,以便在命令之前不需要前缀...但由于某种原因,我无法让它为我工作...但也许我有一些干扰。这是应该起作用的(如果我理解的话):

bind -r 'C-S-0' switch-client -n
bind -r 'C-S-9' switch-client -p

但是,请注意 tmux 手册页中不建议这样做:

bind-key [-nr] [-T key-table] key command [arguments]
(别名:bind)
将 key key 绑定到命令。密钥绑定在密钥表中。默认情况下(不带-T),密钥绑定在前缀密钥表中。该表用于在前缀键之后按下的键(例如,默认情况下'c'绑定到前缀表中的new-window,因此'Cb c'创建一个新窗口)。根表用于在没有前缀键的情况下按下的键:将“c”绑定到根表中的 new-window(不推荐)意味着普通的“c”将创建一个新窗口。 -n 是 -T root 的别名。键也可以绑定在自定义键表中,并使用 switch-client -T 命令从键绑定切换到它们。 -r 标志表示该键可以重复,请参阅重复时间选项。

要查看默认绑定和可能的命令,请参阅 list-keys 命令。

相关内容