例如,如果我从窗口 0 运行:
sleep 2;tmux split-window -h
并prefix-n
在睡眠结束之前切换到另一个窗口 1,窗口分割发生在新窗口 1 上。
当从窗口 0 运行命令时,无论当前窗口如何,如何使分割始终发生在窗口 0 上?
我发现了这种可能性:
win="$(tmux display-message -p '#I')";sleep 2;tmux split-window -h -t "$win"
基于:https://superuser.com/questions/385472/get-current-window-number-for-bash-prompt但我不喜欢它强迫我之前运行一个额外的命令sleep 2
(这是一个真正有用的命令,在我的用例中需要很长时间才能完成),这很麻烦。
在 tmux 2.5 上测试。
https://groups.google.com/forum/#!topic/tmux-users/ZtEuCZQS_lI
答案1
$TMUX_PANE
tmux 自动为我们定义这个变量,它就可以工作:
sleep 2;tmux split-window -h -t $TMUX_PANE
这会在创建分割时将焦点集中在分割上,可以通过以下方法来防止这种情况-d
:
sleep 2;tmux split-window -dh -t $TMUX_PANE