假设我有三个垂直堆叠的水平窗格,我想将其中一个推到最左边,这样其他两个窗格仍然堆叠但在右边。
当前设置:
Pane 1
----------
Pane 2
----------
Pane 2
Run Code Online (Sandbox Code Playgroud)
所需的设置
Pane 1 | Pane 2
| Pane 3
Run Code Online (Sandbox Code Playgroud)
执行此操作的正确命令是什么?我已经检查了手册页,但找不到这个特定的功能。
我已经遇到这个问题好几次了,谷歌完全没用。幸运的是,手册页并不难读。记录下来可以在我下次忘记时快速提醒。
\n\n您正在寻找的命令是move-pane.
您必须运行它几次。我已经重新索引了窗格编号以匹配 tmux 的约定。由于窗格 0 最终与其他两个窗格接壤,因此您应该想象您正在移动窗格 1(0 的右侧),然后移动窗格 2(窗格 1 下方)。
\n\n\xe2\x94\x8c\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x90 \xe2\x94\x8c\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\xac\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x90\n\xe2\x94\x82Pane 0\xe2\x94\x82 PREFIX + : \xe2\x94\x82Pane 0\xe2\x94\x82Pane 1\xe2\x94\x82\n\xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\xa4 move-pane -h -s 1 -t 0 \xe2\x94\x82 \xe2\x94\x82 \xe2\x94\x82\n\xe2\x94\x82Pane 1\xe2\x94\x82 \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\xb4\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\xa4\n\xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\xa4 \xe2\x94\x82Pane 2 \xe2\x94\x82\n\xe2\x94\x82Pane 2\xe2\x94\x82 \xe2\x94\x82 \xe2\x94\x82\n\xe2\x94\x94\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x98 \xe2\x94\x94\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x98\n \xe2\x94\x8c\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\xac\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x90\n PREFIX + : \xe2\x94\x82Pane 0\xe2\x94\x82Pane 1\xe2\x94\x82\n move-pane -v -s 2 -t 1 \xe2\x94\x82 \xe2\x94\x82 \xe2\x94\x82\n \xe2\x94\x82 \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\xa4\n \xe2\x94\x82 \xe2\x94\x82Pane 2\xe2\x94\x82\n \xe2\x94\x82 \xe2\x94\x82 \xe2\x94\x82\n \xe2\x94\x94\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\xb4\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x98\nRun Code Online (Sandbox Code Playgroud)\n\n以下是实现相同目的的粗略键绑定。只需确保聚焦于首先移动的窗格即可。
\n\nbind-key g command-prompt -p "place below. select target window" "move-pane -h -t %%"\nbind-key G command-prompt -p "place right of. select target window" "move-pane -h -t %%"\nRun Code Online (Sandbox Code Playgroud)\n\n如果您无法确定窗格编号,请记住该编号是按顺序分配的,该编号不会与任何特定窗格相关。使用键绑定在每次移动之前显示窗格编号。默认为PREFIX + q. 如果您的不同,您可以使用PREFIX + ?它来查找它。
如果我明白你的意思尝试:
PREFIX + % # Create a vertical split
PREFIX + " # In right pane create a horizontal split
Run Code Online (Sandbox Code Playgroud)
从只有一个窗格开始。默认情况下 PREFIX = Ctrl + b,在窗格之间移动,PREFIX + q然后键入窗格编号。
编辑:等等(我没有考虑到窗格已经存在),尝试这样做:
PREFIX + SPACE
Run Code Online (Sandbox Code Playgroud)
尝试多次,直到达到所需的安排。