16

Используя tmux, я закрыл окно с индексом 3, так что теперь у меня есть 1,2,4, ...

Я предпочел бы иметь окна последовательно, поэтому есть ли способ заставить их переиндексировать?

2 ответа2

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 избегает выделения этого окна.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .