Я часто получаю более десяти окон в tmux. Позже я закрываю некоторые из моих старых. Есть ли способ перенумеровать, скажем, окно 15, в окно 3 (которого больше нет)? Или к pack
ним все снова, чтобы не было пустых слотов? Я хотел бы сделать это, потому что трудно перейти к окнам с более высокими номерами, потому что вы не можете сделать это Ctrl+B, 15
. Я должен использовать Ctrl+B, w
для отображения списка окон, а затем введите букву, соответствующую окну, которое я хочу открыть.
Я знаю, что могу поменять окна. Например, я мог бы создать новое окно ( Ctrl+B, c
), которое открывалось бы в пустом слоте 3. Затем я могу открыть swapw
окно 15 и окно 3, а затем закрыть окно 15. Очевидно, это утомительный подход.
Как вы управляете многими окнами в tmux?
ctrl b
:
введитеmove-window -r
(гдеctrl b
находится ключ префикс по умолчанию)В tmux 1.7 есть несколько функций, которые могут помочь установить и поддерживать номера окон без пробелов / упаковок:
Команда
move-window
узнала новую-r
опцию, которая перенумерует все окна в сеансе (либо текущий сеанс, либо сеанс, указанный в-t
опции).Если у вас есть набор окон, например {1: A, 4: B, 15: C}, вы можете
move-window -r
изменить их на {1: A, 2: B, 3: C} (они начнутся с вашегоbase-index
; 1 в этом примере).Когда
renumber-windows
опция сессии включена, tmux автоматически перенумерует окна сессии (как в случае сmove-window -r
) после закрытия любого окна.Если вам нравится это поведение, вы можете включить его в глобальном значении, чтобы все сеансы, которые не переопределяли его, автоматически включали его:
источник
renumber-windows
вариант целую вечность! Меня всегда беспокоило, что новые окна открываются «слева», потому что я закрываю некоторые раньше.Я часто нахожусь в ситуации, когда у меня есть промежутки между номерами окон, например, сессия с окнами:
Я написал скрипт tmux, чтобы переупорядочить их, не меняя их соответствующий порядок и не активируя опцию «перенумерация окон». Результат:
Поместите следующее в ваш .tmux.conf:
Нажмите [PREFIX] -R, чтобы изменить порядок окон (или изменить привязку).
В настоящее время я использую tmux 1.9a.
Вышесказанное можно заменить гораздо более простым:
источник
Предыдущие ответы все в порядке, но вот краткое решение, если все, что вам нужно, это перетасовывать небольшое количество окон время от времени.
переместит текущее окно к новому номеру окна (который не должен быть уже занят). Чтобы поменять местами два окна, сначала вы временно перемещаете одно окно на новый номер. например, чтобы поменять местами окна 3 и 5:
источник
Если вам просто нужны окна, чтобы всегда перенумеровать, когда один из них убит, вы можете использовать это в
.tmux.conf
:источник