ではscreen
、 と入力するだけで、C-a :number 0
ウィンドウをウィンドウ リストの先頭に移動し、他のすべてのウィンドウを 1 つ下に移動できます。 の同等のコマンド シーケンスは何ですかtmux
? マニュアル ページを確認しましたが、この点については混乱しています。
答え1
このswap-window
コマンドはあなたが望むものに最も近いものです。
「プレフィックス:」(デフォルトではCtrl+ B):を使用すると、tmux コマンド プロンプトが表示されます。そこで次のように入力します。
swap-window -s 3 -t 1
ウィンドウ番号 3 とウィンドウ番号 1 の位置を入れ替えます。
現在のウィンドウを一番上のウィンドウと入れ替えるには、次のようにします。
swap-window -t 0
インデックス 0 にウィンドウがない場合には、次のようにします。
move-window -t 0
(base-index が 0 の場合、これはデフォルトです)。コマンドは、move-window -t <NUMBER>
デフォルトではCtrl+ B、にバインドされています.。
~/.tmux.conf
次のコマンドを追加することで、そのコマンドをキーにバインドできます (たとえば、「トップ」の場合は T)。
bind-key T swap-window -t 0
答え2
ガレスの回答に加えて、次のキーバインディングを使用できます
bind-key -n C-S-Left swap-window -t -1
bind-key -n C-S-Right swap-window -t +1
Ctrl + Shift + 左 ( を押すと、現在のウィンドウが左に移動します。同様に右に移動します。修飾子 (Cb) を使用する必要はありません。
tmux 3.0バージョンでは、次のキーバインディングを使用する必要があります。
bind-key -n C-S-Left swap-window -t -1\; select-window -t -1
bind-key -n C-S-Right swap-window -t +1\; select-window -t +1
答え3
tmux で に相当するの:number 42
は です:move-window -t 42
。
答え4
とのどちらかを選択する外部シェル スクリプトを使用して、screen
のコマンドと同等の機能を実装できます。次のようにしてキーにバインドできます。number
swap-window
move-window
bind < command-prompt -p index "run-shell '~/.tmux.number.sh %%'"
~/.tmux.number.sh
:
#!/bin/bash
if [ $# -ne 1 -o -z "$1" ]; then
exit 1
fi
if tmux list-windows | grep -q "^$1:"; then
tmux swap-window -t $1
else
tmux move-window -t $1
fi