たとえば、ウィンドウ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