tmux 창을 주어진 크기로 강제하는 방법

tmux 창을 주어진 크기로 강제하는 방법

tmux내 터미널의 크기에 관계없이 세션의 창을 특정 크기로 강제하고 싶습니다 . 어떻게 해야 하나요?

문맥

여기에 설명된 대로 asciinema에 tmux를 로그인하려고 합니다.https://github.com/asciinema/asciinema/wiki/Recording-tmux-session(명령에서 asciinema를 실행합니다 tmux attach). 그런데 모니터가 너무 커서 강제로 크기를 조정하고 싶어요 tmux window.

내가 시도한 것들

tmux 세션의 두 번째 보기를 사용하여 창 크기를 강제하는 성공적인 솔루션이 있지만 mate-terminal -e 70x20... 이것은 해킹처럼 보입니다.

-x를 사용하여 세션 크기를 강제해 보세요.

tmux new-session -x $X -y $Y -d

이 옵션은 무시되는 것 같습니다(공격적인 크기 조정 설정을 사용해 보았습니다).

답변1

원하지 않는 영역을 차지하려면 창을 3개 이상 열어야 할 수도 있습니다. 다음과 같은 것을 시도해보세요

tmux new-session \; split-window -h \; split-window -v \; resize-pane -x 70 -y 20

답변2

이렇게 하면 원하는 작업이 수행됩니다.

tmux new-session \; setw force-width 80 \; setw force-height 24 \; attach

물론, 또는 $Xand와 함께.$Y

답변3

이는 tmux의 버그였으며 개발 빌드에서 수정되었습니다. 현재 출시된 최신 버전은 3.2a이며, 이 문제는 해결되지 않습니다.

새로 분리된 세션에 대해서는 -x 및 -y 옵션을 무시하는 것 같습니다. 문서에 따르면 이러한 값은 새 창의 기본 크기 설정을 재정의하며, 이는 새 세션 생성, 기본 크기 설정, 새 창 시작 및 초기 창 종료를 제안합니다. 이것은 작동합니다. 그러나 -x 및 -y 옵션을 사용하면 기본 크기 설정을 재정의하여 조정할 필요가 없지만 여전히 새 창을 만들어야 합니다. 문제는 -x 및 -y가 초기 창이 생성된 후 세션의 기본 크기를 수정한다는 것입니다.

tmux new-session -d -x $X -y $Y \; new-window ${MY_COMMAND} \; kill-window -t 0

따라서 원하는 기본 크기로 새 세션을 만든 다음 원하는 크기로 새 창을 만들고 ${MY_COMMAND}를 실행한 다음 마지막으로 다른 창을 종료합니다. 이는 필요한 모든 크기의 가상 터미널에서 명령을 실행하는 데 작동합니다.

관련 정보