默认情况下,tmux 会越过窗格的边缘。例如,假设有两个窗格,pane 1
并且pane 2
. 假设你在pane 1
并且你做到Ctrl+b →了,你在pane 2
。如果你再次这样做Ctrl+b →,你会再次在pane 1
。如何禁用该功能,所以当我从最后一个窗格导航时,我哪儿也不去?
默认情况下,tmux 会越过窗格的边缘。例如,假设有两个窗格,pane 1
并且pane 2
. 假设你在pane 1
并且你做到Ctrl+b →了,你在pane 2
。如果你再次这样做Ctrl+b →,你会再次在pane 1
。如何禁用该功能,所以当我从最后一个窗格导航时,我哪儿也不去?
这有点小技巧,但对您来说可能已经足够了。从 2.3 版开始,您可以找到每个窗格边框的 x 和 y 坐标。例如,
display -p #{pane_right}
对于 80 列终端右侧边缘的窗格将是 79。如果您发出向右移动到下一个窗格的命令,并且新窗格的pane_right
例如是 39,那么您已经向左移动,因此您需要使用 移回上一个窗格select-pane -l
。您可以从 shell 脚本运行大多数 tmux 命令,因此在您的 PATH 中创建以下文件
mytmux
并使其可执行 (chmod +x mytmux
):然后在您的设置以下绑定
~/.tmux.conf
:例如,如果您想处理多个会话,则需要扩展它。
默认情况下,PrefixArrow键是绑定的
该
select-pane
功能没有一个选项告诉它“当您到达该方向的最后一个窗格时不要循环”。查看为 执行的源代码,
select-pane
看起来左/右和上/下循环是硬编码的,这意味着很难阻止它以这种方式运行。