在 Vim 中,按下Ctrl-w
、H
、J
或K
,L
可将当前窗口移动到最左/下/上/右,而不会打乱任何其他窗口的顺序。我想用 Tmux Panes 实现同样的功能,并将它们绑定到Ctrl-b
+ H
、J
、K
和L
。
答案1
尝试这个:
# move pane to the far right/left/bottom/top
bind H splitw -fhb \; swapp -t ! \; killp -t !
bind L splitw -fh \; swapp -t ! \; killp -t !
bind J splitw -fv \; swapp -t ! \; killp -t !
bind K splitw -fvb \; swapp -t ! \; killp -t !
细分如下:
bind H splitw -fhb \; swapp -t ! \; killp -t!
│││ ├────────┘ ├───────┘
│││ │ └ kill the previous pane
│││ └ exchange the previous original pane with the current one
││└ the new pane should be created to the left of or above target-pane
│└ full window height
└ creates a new pane spanning the full window height (with -h)
or full window width (with -v), instead of splitting the active pane
欲了解更多信息,请参阅man tmux(1)
: