tmux:常にすべてのウィンドウのサイズを利用可能な最大サイズに調整するには?

tmux:常にすべてのウィンドウのサイズを利用可能な最大サイズに調整するには?

tmux 3.0aを実行していて、より小さな解像度の端末を接続すると、より大きな端末も小さい端末にサイズ変更されます。

これはよく知られており(なぜデフォルトの動作に設定したのかわかりませんが)、解決策は次のとおりですc-b c-: :resize-window -Atmux強制ウィンドウのサイズ変更https://stackoverflow.com/questions/7814612/is-there-any-way-to-redraw-tmux-window-when-switching-smaller-monitor-to-bigger/61764869#61764869)。残念ながら、これは各ウィンドウ/ウィンドウで実行する必要があります。

このオプションを使用できますが、set-window-option -g aggressive-resize on私には違いはありません。

だから:常にすべてのウィンドウのサイズを利用可能な最大サイズに調整するには?

答え1

明らかに:resize-window -A、これは各ウィンドウで実行する必要がありますが、一度完了すると持続します(小さな端末との接続を切断して再接続するときに積極的にサイズを変更することを忘れないでください)。

したがって、コマンドに.bashrc次のものを含めます。

tmux resize-window -A

新しいウィンドウを開くたびに、その特定のウィンドウに対して積極的なサイズ変更が設定されます。

なぜ動作するのか明確ではありません。コメントの議論をご覧ください。問題は、tmuxのドキュメントが不明であり、サイズ変更に影響を与える3つのオプションがあることです。

適切なサイズ変更を達成する別の方法は次のとおりです(tmux> = 3.1の場合)。

set -g window-size latest
setw -g aggressive-resize on

答え2

まだこれを自動化する方法が見つかりませんでした。ただし、以下を使用してxterm手動で実行できます。

  1. セッションを終了しますtmux
  2. resizeターミナルに入り、実行してください。
  3. セッションに戻ると、ウィンドウのサイズが変更されます。

関連情報