web-dev-qa-db-ja.com

tmuxがターミナルウィンドウでサイズ変更されない

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を実行)でのみ発生し、デタッチ/再接続により問題が修正されます(ウィンドウのサイズが再度変更されるまで)。何が原因でしょうか?

サイズ変更前: Before

サイズ変更後: enter image description here

9
Will Vousden

接続するときに、セッションから他のクライアントを切り離すのが最も簡単です。

tmux attach -d

または短い

tmux a -d

または、セッションに接続する前に、他のクライアントを別のセッションに移動できます。 https://stackoverflow.com/a/7819465/106908

7
rubo77

私はターミナル用語に精通していませんが、次の手順を実行してこのバグをなんとか取り除くことができました。

  1. を押してセッションを終了します Ctrl+bd (心配する必要はありません。セッションに完全に無傷で戻ることができます)

  2. コンソールアプリケーションがxtermを実行しているかどうかを確認します。 echo $TERMxtermを返します。この手順が役立つ場合があります。

  3. ターミナルにresizeと入力します。

  4. tmuxを再度呼び出して、セッションに戻ります。ご覧のように、すべてのセッションは、tmuxをまったく終了したことがないように実行されています。

Tmuxは、ターミナルサイズをxterm 'size'変数にリンクします。たまたまあなたの$TERMscreenに設定すると、そのTERMセッションのコマンドがわからないので、私はあなたを助けることができません。

5
saterHater