使用 tmux 更新視窗索引?

使用 tmux 更新視窗索引?

使用 tmux,我關閉了一個索引為 3 的窗口,所以現在我有 1,2,4,...

我寧願讓視窗按順序排列,那麼有什麼方法可以強制它們重新索引嗎?

答案1

多路復用器1.7 包含renumber-windows維護會話視窗編號「無間隙」序列的會話選項。您可以將選項設為“全域”,以將其套用至尚未覆寫全域值的所有會話。例如在你的~/.tmux.conf

set-option -g renumber-windows on

如果您不總是希望所有會話都具有「無縫」視窗編號,那麼您可以使用move-window -r(該選項也是 *tmux 1.7 中的新選項)僅在當前會話(或其他會話,如果您使用-t選項)。

答案2

沒有內建的方法可以做到這一點,但這個 bash 腳本應該可以工作。從會話中運行它:

i=0
tmux list-windows | cut -d: -f1 | while read winindex; do 
  if (( winindex != i )); then
    tmux move-window -d -s $winindex -t $i
  fi
  (( i++ ))
done

-d避免move-window給予該視窗焦點的標誌。

相關內容