기존 창을 다른 창으로 이동하는 방법멀티플렉서여러 개의 창이 있고 그 반대의 경우도 있나요?
나는 어디에서 왔는지화면, 원하는 창에 도달할 때까지 창으로 전환한 다음 창으로 전환할 수 있습니다.멀티플렉서이는 허용되지 않는 것 같습니다.
답변1
이를 수행하는 명령은 다음과 같습니다.join-pane
tmux 1.4에서.
join-pane [-dhv] [-l size | -p percentage] [-s src-pane] [-t dst-pane] (alias: joinp) Like split-window, but instead of splitting dst-pane and creating a new pane, split it and move src-pane into the space. This can be used to reverse break-pane.
이를 단순화하기 위해 다음과 같은 바인딩이 있습니다 .tmux.conf
.
# pane movement
bind-key j command-prompt -p "join pane from:" "join-pane -s '%%'"
bind-key s command-prompt -p "send pane to:" "join-pane -t '%%'"
첫 번째는 대상 창에서 창을 가져와 현재 창에 연결하고, 두 번째는 그 반대를 수행합니다.
그런 다음 세션에서 다음 명령을 실행하여 tmux 세션을 다시 로드할 수 있습니다.
$ tmux source-file ~/.tmux.conf
답변2
연결창이 답입니다. 또한 tmux 문서에 따라 사용하는 데 문제가 있었습니다. 찾아보니 -t
스위치 -s
가 수락 [session]:window
하고 수락하지 않는 것 같습니다 [session:]window
. 즉, 세션을 지정하는 것은 선택 사항이지만 세션을 포함하는 것은 :
필수입니다. (저는 tmux 1.5를 사용하고 있습니다)
따라서 현재 창에 창을 추가하고 창 1을 해당 창에 넣으려면 명령은 ( Ctrl+ B또는 키 바인딩이 무엇이든 뒤에)...
:join-pane -s :1
그런 다음 Break-pane을 사용하여 분리할 수 있습니다. 기본적으로는 다음과 같습니다. Ctrl+ B !바로가기에 바인딩하려면 s와 같은 기본 바인딩을 재정의하지 않는 것이 좋습니다. 다음에는 인터넷에서 검색하게 되기 때문입니다. 대답은 선택과 관련됩니다. 시스템에서 작동하지 않는 세션. Break-Pane은 바로 옆에 바인딩되어 !있으며 기본적으로 어떤 것에도 바인딩되지 않습니다. @이런 이유로 저는 이 바인딩을 추천합니다...
bind-key @ command-prompt -p "create pane from:" "join-pane -s ':%%'"
또는 대화형 선택기가 있습니다...
bind-key @ choose-window 'join-pane -h -s "%%"'
bind-key C-@ choose-window 'join-pane -s "%%"'
또는 최근 방문한 창을 항상 포함합니다...
bind-key @ join-pane -h -s !
참고: 이렇게 -h
하면 창이 수평으로 쌓이게 됩니다(수직으로 분할). 이는 기본 동작과 반대입니다.
결론은 어떤 지름길을 선택하든 배울 수 있다는 것입니다. 왜냐하면 그냥 설정하고 잊어버리면 해외 서버에 있을 때 문제가 생기기 때문이죠. 솔직히 말해, 터미널 멀티플렉서가 제공하는 가장 중요한 기능은 원격 서버에서의 안정적인 세션입니다.
이런 식으로 GNU Screen에서 Tmux로의 변환을 완료했습니다. 나는 결코 뒤돌아보지 않을 것이다.
즐기다!
답변3
나는 창을 자체 창으로 이동하는 데 사용했던 방법을 선호한다고 생각합니다. 나는 사용한다
break-pane -t :
나는 이것을 실험적으로 발견했지만 꽤 잘 작동하는 것 같습니다. 스크립팅이 필요 없이 쉽게 키 바인딩이나 별칭을 지정할 수 있습니다.
답변4
다른 답변을 보고 tmux 매뉴얼 페이지를 숙독한 후 이제 다음 바인딩을 결정했습니다.
bind-key S choose-window 'join-pane -v -s "%%"'
bind-key V choose-window 'join-pane -h -s "%%"'
이렇게 하면 결합할 창을 대화형으로 선택하고 소문자 s
/ v
바인딩을 미러링하여 새로운 수직/수평 분할을 만들 수 있습니다. 창 대신 단일 창을 선택하는 방법을 아는 사람이 있으면 알려주십시오.