저는을 처음 사용하고 tmux
실제 터미널 크기를 조정하는 솔루션을 찾는 데 어려움을 겪고 있습니다 (아직 창과 창에 대해 충분히 배웠습니다).
나는 ubuntu12.04에서 tmux1.6을 셸로 실행하고 bash
있습니다. tmux 외부에서 잘 작동하는 것처럼 보이는 bash
내장 기능 resize
이 있습니다.
% resize -s 50 80
터미널 크기를 80 자 너비와 50 줄 높이로 조정합니다. 그러나 tmux 창에서이 정확한 명령을 실행하려고하면 Enter 키를 누른 후 아무 키나 누른 다음 응답 할 때까지 중단됩니다.
"resize: unknown character, exiting"
저에게는 약간 불투명합니다. 이제 resize
기능 자체 를 사용할 필요는 없지만 명령 (내장 또는 스크립트)을 통해 tmux 창을 표시하는 터미널의 크기를 물리적으로 조정하려면 어떻게해야합니까? 이에 대한 사용 사례는 코드가 포함 된 새 세로 창을 열기로 결정할 때 터미널이 정확한 문자 수 (창 2 개 = 161 자, 각 창에 80 자, 분할 창에 1 개)가되기를 원한다는 것입니다. 예를 들어 라인). 마우스로 크기를 조정하는 것은 지루할뿐만 아니라; 크기를 조정하는 동안 내 우분투에 너비가 표시되지 않습니다.
어떤 도움을 주시면 감사하겠습니다!
tmux가 이스케이프 문자를 통과시키지 않는 것 같습니다.
tmux 버그 추적기에 버그 보고서를 제출했습니다. 수정이 가능하기를 바랍니다. http://sourceforge.net/p/tmux/tickets/88/
-편집 : 해결 방법 추가-
tmux가 특정 이스케이프 명령을 통과하도록 강제 할 수있는 것 같습니다. 사용할 수 printf '\033Ptmux;whatever\033'
있지만 두 배로 늘려야 합니다 \033
.
그래서 tmux 내부에 있는지 테스트하고 이스케이프 코드 (xterm, Apple 터미널 및 iTerm에서 테스트 됨)를 출력하는 작은 bash 함수 (.bashrc 또는 .bash_profile에 넣음)를 작성했습니다.
function resimux {
if [ ! -z "$TMUX" ]; then
printf '\ePtmux;\e\e[8;%i;%it\e\' $1 $2
else
printf '\e[8;%i;%it' $1 $2
fi
}
그런 다음 다음과 같이 부를 수 있습니다.
resimux 50 80
크기 조정 이스케이프 시퀀스는 연결된 모든 터미널로 전송됩니다.
짜잔.
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다