使用tmux更新窗口索引?


16

使用tmux,我关闭了一个索引3的窗口,所以现在我有1,2,4,...

我宁愿有Windows顺序,所以有没有办法强迫他们重新索引?

Answers:


25

TMUX 1.7包括 renumber-windows 会话选项,为会话的窗口编号维护“无间隙”序列。您可以设置“全局”选项,使其适用于未覆盖全局值的所有会话。例如。在你的 ~/.tmux.conf

set-option -g renumber-windows on

如果您并不总是希望所有会话都具有“无间隙”窗口编号,那么您可以使用 move-window -r (该选项也是* tmux 1.7的新选项)在当前会话中重新编号窗口(或者如果您使用 -t 选项)。


3

没有内置的方法可以做到这一点,但这个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 避免给那个窗口集中注意力。


这很有效,谢谢。实际上我有一个零窗口,所以我需要从i = 0开始。
mahemoff

2
啊,我忘记了 set-option -g base-index 1.tmux.conf
Thor

即使使用tmux 1.7新功能,我发现这个实现对于避免移动某些窗口很有用。
dequis
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.