unix使いには、便利なscreenですが、トラブルもあります。 トラブル毎に原因と解決方法を整理してみました。
以下、screen の コマンドキーは、 デフォルトの "C-a" であるとします。設定で別のキーにしている場合は適宜読み替えてください。
時々フリーズする
症状: screen 経由で emacs を使っていると端末がかたまる場合がある。C-x C-s や C-s を押すと固まる。
症状: 時々フリーズする。キーを受け付けなくなる。C-q や C-a C-q を押すと復帰する。
原因: "C-a f"を押すなどして、フロー制御が有効なモードに切り替わったため。
解決方法: "C-a f"を押し、フロー制御をOffにすれば良い
参考URL:
表示が時々崩れる
症状: emacs などを使っている場合に、表示が崩れる場合がある。C-l で再描画すると一時的になおる。
症状: 画面にごみが残る場合がある
症状: 一行を越える出力を行うと、表示が乱れる
症状: 画面右端まで文字が出力されると、表示が崩れる
原因1: "C-a f"を押すなどして、フロー制御が有効なモードに切り替わったため。
原因2: 端末のサイズが変わったため。
解決方法1: "C-a f"を押し、フロー制御をOffにすれば良い (-flow と表示されればOffになっている)
解決方法2: resize コマンドを実行し、termcap を更新する
表示が毎回崩れる
症状: 毎回表示が崩れる。
原因: termcap 回りの設定ミス
解決方法1: termcapを正しく設定する。
解決方法2: workaround として、環境変数 TERM を xterm などに変更すると、症状が改善する場合がある
行が折り返されない
症状: 行が折り返されない
原因: wrap が off になっている。
解決方法1: C-a C-r で wrap モードを on にする。wrapモードはウインドウ毎に設定できる点に注意。
解決方法2: 設定ファイル .screenrc で wrapモードの初期値が設定できる。デフォルトで折り返したい場合、つまり wrap モードを on にしたい場合は
defwrap on
と書く。