즉시 사용 가능한 방식(Tmux 3.0+)

즉시 사용 가능한 방식(Tmux 3.0+)

tmux에서 창을 효율적으로 재정렬하는 방법은 무엇입니까? 예를 들어 다음과 같은 창 세트가 있습니다.

0:zsh  1:elinks  2:mutt  3:irssi  4:emacs  5:rss  6:htop

rss다음 사이를 이동 elinks하고 mutt종료하려면 어떻게 해야 합니까 ?

0:zsh  1:elinks  2:rss  3:mutt  4:irssi  5:emacs  6:htop

나는 아직 사용되지 않은 인덱스로 이동 창을 사용하는 방법을 알고 move-window있으며 이를 달성하기 위해 일련의 이동 창을 사용할 수 있지만 분명히 이것은 매우 지루합니다.

답변1

swap-window당신을 도울 수 있습니다:

swap-window -t -1

현재 창을 왼쪽으로 한 위치 이동합니다.

~에서인간 멀티플렉서:

swap-window [-d] [-s src-window] [-t dst-window]
             (alias: swapw)
This is similar to link-window, except the source and destination windows are swapped. 
It is an error if no window exists at src-window.

키에 바인딩할 수 있습니다.

bind-key -n S-Left swap-window -t -1
bind-key -n S-Right swap-window -t +1

Shift+Left그런 다음 및 를 사용하여 Shift+Right현재 창 위치를 변경할 수 있습니다.

답변2

최근 tmux 버전의 동작을 보면 swap-window 명령이 동일한 창을 유지하지 않는다는 것을 알 수 있지만 허용되고 높은 지지를 받은 답변은 정확합니다. 따라서 작동 방식은 다소 직관적이지 않습니다. 활성 창은 해당 방향으로 바뀌지만 동일한 슬롯에 유지됩니다!

이 문제를 해결하려면 이를 따르도록 바인딩을 늘리면 됩니다. 예를 들어, 내 tmux 구성은 다음과 같습니다.

bind -n C-S-Left { swap-window -t -1; previous-window }
bind -n C-S-Right { swap-window -t +1; next-window }

답변3

즉시 사용 가능한 방식(Tmux 3.0+)

이것이 있다메뉴 표시기능은 다음과 같습니다.v2.9에서 v3.0으로.

(Prefix) <이제 Tmux에서는 아래와 같이 현재 창과 다른 창의 교환을 제어할 수 있는 부동 상자를 트리거 할 수 있습니다 .

메뉴 데모 표시


논평:

  • 기본 접두사는 다음과 같습니다.Ctrl-b
  • (Prefix) >떠있는 상자를 트리거합니다다른 기능들또한 세분화 및 스케일링과 같은 것입니다.

(Prefix) <현재 창을 다른 창으로 바꾸는 것을 제어할 수 있는 트리거 플로트를 사용하는 바로가기를 우연히 발견했습니다 .

모든 플러그인이 비활성화된 문서에서는 이 기능을 찾을 수 없기 때문에 이것이 새로운 기능인지 확실하지 않습니다. 하지만 그것은 창문을 재배치하는 데 도움이 되었습니다.

@KamilMaciorowski의 문서를 인용해 주셔서 감사합니다.

답변4

tmux버전 1.7 이상인 경우

move-window -r

또는

set-option -g renumber-windows on

앞으로는 자동으로 실행될 예정입니다 .tmux.conf.

관련 정보