it-swarm-ko.tech

TMUX에서 창 번호 다시 매기기

나는 종종 tmux에서 10 개 이상의 창으로 끝납니다. 나중에, 나는 나의 오래된 것들을 닫습니다. 더 이상 존재하지 않는 창 15와 같이 창 3으로 번호를 다시 매기는 방법이 있습니까? 아니면 빈 슬롯이 없도록 pack에 다시 올릴까요? 더 높은 번호의 창으로 건너 뛰기가 어렵 기 때문에이 작업을 수행하고 싶습니다. Ctrl+B, 15. Ctrl+B, w 창을 나열한 다음 열려는 창에 해당하는 문자를 입력하십시오.

창문을 바꿀 수 있다는 것을 알고 있습니다. 예를 들어 새 창 (Ctrl+B, c) 빈 슬롯 3에서 열립니다. 그런 다음 swapw window 15와 window 3을 닫은 다음 window 15를 닫을 수 있습니다. 분명히 이것은 지루한 접근법입니다.

Tmux에서 많은 창을 어떻게 관리합니까?

138
dogbane

이것이 필요한 것 같습니다.

move-window [-rdk] [-s src-window] [-t dst-window]
              (alias: movew)
        This is similar to link-window, except the window at src-window
        is moved to dst-window.  With -r, all windows in the session are
        renumbered in sequential order, respecting the base-index option.

매개 변수없이 movew를 호출하면 현재 창을 첫 번째 자유 위치로 이동합니다. movew -r는 모든 창의 번호를 한 번에 다시 매 깁니다.

136
gelraen

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 session 옵션이 활성화되면 tmux는 자동으로 세션 창 번호를 다시 매 깁니다 (move-window -r) 창을 닫은 후.

    이 동작이 마음에 들면 전역 값으로 설정하여이를 재정의하지 않는 모든 세션이 자동으로 활성화되도록 할 수 있습니다.

    set-option -g renumber-windows on
    
101
Chris Johnsen

나는 종종 창과의 세션과 같이 창 번호 사이에 간격이있는 상황에서 나를 발견합니다.

1 3 4 8 9 13

각각의 순서를 변경하거나 'renumbering-windows'옵션을 활성화하지 않고 순서를 바꾸는 tmux 스크립트를 작성했습니다. 결과:

1 2 3 4 5 6

.tmux.conf에 다음을 입력하십시오.

bind R                                      \
    set -g renumber-windows on\;            \
    new-window\; kill-window\;              \
    set -g renumber-windows off\;           \
    display-message "Windows reordered..."

[PREFIX] -R을 눌러 창을 재정렬하거나 바인딩을 변경하십시오.

현재 tmux 1.9a를 실행하고 있습니다.

위의 내용을 훨씬 간단한 것으로 바꿀 수 있습니다 :

bind R                                      \
    move-window -r\;                        \
    display-message "Windows reordered..."
16
gospes

이전 답변은 모두 훌륭하지만 여기에 몇 번이고 몇 개의 창을 섞는 것이 간결한 해결책이 있습니다.

move-window -t <number>

현재 창을 새 창 번호 (이미 점유되어 있지 않아야 함)로 이동합니다. 두 개의 창을 바꾸려면 먼저 한 창을 새 창으로 임시로 이동합니다. 예 : 창 3과 5를 바꾸려면 :

move-window -s 3 -t 99
move-window -s 5 -t 3
move-window -s 99 -t 5
6
Pistos

창이 죽었을 때 항상 창 번호를 다시 매길 필요가 있다면 .tmux.conf :

set-option -g renumber-windows on
4
jojman