tmux 창을 숨기는 방법은 무엇입니까?

tmux 창을 숨기는 방법은 무엇입니까?

내 tmux 창에는 3개의 창이 있습니다.

--------------------------
|             |      2   |
|             |          |
|        1    |----------|
|             |      3   |
|             |          |
--------------------------

창 1과 2가 있습니다 vim. 창 3은 제가 개발 중인 CLI를 실행합니다. 때로는 창 1과 2를 비교하고 싶기 때문에 창 3을 숨기고 싶습니다.

--------------------------
|             |          |
|             |          |
|        1    |       2  |
|             |          |
|             |          |
--------------------------

그런 다음 다시 창 3으로 돌아갑니다. 창 3에는 이미 몇 가지 항목이 설정되어 있고 다시 설정하고 싶지 않기 때문에 삭제하고 싶지 않습니다.

  • PREFIX + z창 2의 크기를 조정하지만 창 1을 건드리지 않는 비슷한 것이 있습니까 ? 또는
  • 창 3을 빠르게 숨기고 필요할 때 복원할 수 있는 방법이 있습니까?

답변1

사용 break-pane하고 join-pane명령하십시오. man tmux자세한 내용, 옵션 및 사용법은 을 참조 하세요.


창 3 숨기기:

창을 선택 3하고 Prefix- 를 입력합니다 :break-pane -dP.

tmux3창을 배경 창(플래그)으로 보내고 -d창 2(플래그)에 이에 대한 일부 정보를 인쇄합니다. -P기본적으로 다음과 같은 내용이 표시됩니다 1:2.0(의미: session:window.pane). 작업을 계속 하려면 클릭하세요 q. 1

1 몇 가지 연습을 통해 트리플을 -P예측할 수 있기 때문에 해당 플래그를 제거할 수 있습니다 . 현재 세션의 기본값, while 의 기본값 은 다음 여유 창 식별자가 됩니다.session:window.panesessionpane0window

검색 창 3:

창과 레이아웃을 복원하려면 3창을 선택 2하고 문제 Prefix알림을 발행하여 :join-pane -vs 1:2.0창을 세로로 분할하고 tmux( ) 식별자를 사용하여 (소스) 창을 연결합니다( ). 삭제 또는 식별을 선택할 수도 있습니다. 또한 tmux는 --또는 ---를 통해 쉽게 액세스할 수 있는 명령줄 기록을 저장합니다.2-v-s1:2.0sessionpanePrefix:UpPrefix:ctrlp

익숙해지는 데는 다소 시간이 걸릴 수 있지만, 일단 익숙해지고 나면 자신에게 편리한 사용자 정의 키 바인딩을 확실히 생각해 낼 수 있을 것입니다.


이 문제작업 흐름을 개선하는 데 유용한 정보와 팁이 포함되어 있습니다.

답변2

나는 이 질문을 거의 5년 전에 받았지만, 비슷한 일을 하고 싶었기 때문에 이 질문을 발견했고, 다음과 같은 키 바인딩을 생각해 냈습니다.user78291의 답변:

bind-key ! break-pane -d -n _hidden_pane
bind-key @ join-pane -s $.0

Prefix!이렇게 하면 현재 창을 숨기고 Prefix@복원하는 데 사용할 수 있습니다 . 좋은 점은 이런 식으로 여러 창을 숨길 수 있다는 것입니다.

완벽과는 거리가 멀지만 창을 숨겼다가 다시 가져오는 데는 효과적입니다.


업데이트: 창 색인 수정

답변3

아이디어: tmux 내에서 tmux를 실행하세요.

원래 설정:

창 1과 창 2가 나란히 있습니다. 창 1에서 vim을 정상적으로 실행합니다.

창 2에서 tmux를 다시 실행하고 두 개의 창을 만듭니다(이번에는 다른 창 위에 하나씩). 그런 다음 창 2.1에서 vim을 실행하고 창 2.2에서 CLI를 실행합니다. 이렇게 하면 두 번째 Vim 인스턴스를 사용하여 Pane 2.1을 전체 화면으로 만들고 원하는 동작을 생성할 수 있습니다.

답변4

이것이 실제로 작업 중인 창을 숨기지 않는다는 것을 알고 있지만 tmux가 선택한 창에 일반적인 명령을 보내는 것을 중지하고 더 간단한 솔루션을 얻기 위해 이렇게 하려고 했습니다.

창을 시각적으로 숨기고 싶지 않지만 창에 입력되는 것을 중지하려는 경우. 한 가지 상황은 5개의 열려 있는 창에 명령을 보내고 싶지만 그 중 2개에는 보내지 않으려는 경우입니다.

이 사용 사례에서는 ctrl + s명령을 실행하지 않으려는 창에서 작업을 수행할 수 있습니다( ctrl + s창에 대한 모든 입력 잠그기).

완료되면 ctrl + cReturn 키를 누릅니다.

노트ctrl + q: 해당 화면의 모든 명령이 실행되므로 명령 다음에 누르지 마십시오 . ctrl + c이 작업을 수행하지 않습니다(Ubuntu에서 시도했습니다).

관련 정보