tmux 세션이 포함된 터미널 창의 크기를 조정하면 tmux가 변경 사항을 감지하지 못하지만 이전 창 경계 내에서 계속해서 정상적으로 작동합니다. tmux ls
연결하기 전에는 연결된 다른 클라이언트가 표시되지 않았습니다.
$ tmux ls
admin: 1 windows (created Mon Apr 27 15:12:58 2015) [272x75]
apt-runs: 3 windows (created Mon Apr 27 15:17:50 2015) [272x75]
lal-dev: 4 windows (created Tue Jun 9 12:24:25 2015) [238x73]
이는 특정 호스트(tmux 1.9a 실행)에서만 발생하며, 분리/재연결하면 문제가 해결됩니다(창 크기가 다시 조정될 때까지). 원인은 무엇일까요?
크기를 조정하기 전:
크기를 조정한 후:
답변1
가장 간단한 방법은 연결할 때 세션에서 다른 클라이언트를 분리하는 것입니다.
tmux attach -d
또는 짧다
tmux a -d
또는 세션에 연결하기 전에 추가 클라이언트를 다른 세션으로 이동할 수 있습니다.https://stackoverflow.com/a/7819465/1069083
답변2
window-size
이는 tmux 옵션이 로 설정된 경우 발생할 수 있습니다 manual
. 이 옵션을 설정 해제하려면 Ctrl+B를 누르고 다음을 입력하세요.
:set-option -u window-size
window-size
창별 옵션이므로 세션에서 크기가 잘못된 모든 창에 대해 실행해야 합니다.
tmux 매뉴얼 페이지에서:
창 크기
largest
| : tmuxsmallest
가 창 크기를 결정하는 방법을 구성합니다. 로 설정하면 연결된 가장 큰 세션의 크기가 사용되며, 이면 가장 작은 크기가 사용됩니다. 이면 새 창의 크기가 다음으로 설정됩니다.manual
latest
largest
smallest
manual
기본 크기옵션과 창의 크기가 자동으로 조정됩니다. 의 경우latest
가장 최근 활동이 있는 클라이언트의 크기를 사용합니다. 또한보십시오창 크기 조정명령과적극적으로 크기 조정옵션.
기본값은 latest
tmux 3.2(2020년 2월 3일 출시) 기준이거나 smallest
이전 버전에는 latest
존재하지 않습니다 . 그러나 주목할 가치가 있습니다.tmux와 함께 iTerm2 사용제어 방법manual
으로 설정됩니다, 이 설정은 iTerm2를 분리하고 비제어 모드에서 다른 클라이언트에 연결한 후에도 유지됩니다. 제어 모드를 지원하는 다른 터미널 에뮬레이터도 동일한 방식으로 작동할 수 있지만 iTerm2만 테스트했습니다.
답변3
저는 터미널 용어에 익숙하지 않지만 다음 단계에 따라 이 오류를 제거할 수 있었습니다.
Ctrl세션을 종료하려면 +를 누르세요. b d(걱정하지 마세요. 그대로 세션으로 돌아갈 수 있습니다.)
콘솔 응용 프로그램이 실행 중인지 확인하세요
xterm
.echo $TERM
을(를) 반환 하는 경우xterm
이 절차가 귀하에게 적합할 수 있습니다.resize
터미널을 입력하세요 .다시 전화하여 세션으로 돌아갑니다
tmux
. 보시다시피 모든 세션은 마치 tmux를 떠나지 않은 것처럼 실행됩니다.
Tmux는 터미널 크기를 xterm
"크기" 변수와 연결합니다. $TERM
로 설정 한 경우 screen
해당 학기 세션에 대한 명령이 무엇인지 모르기 때문에 도움을 드릴 수 없습니다.