4

cygwin 環境で GNU 画面を構成しています。実際に再構成します-以前は常に機能していましたが、cygwin-64にアップグレードすると、同じ構成ファイルが予期しない動作をします。

何が起こるかというと、端末で画面いっぱいにオーバーフローする何かをするたびに、端末がスクロールしません。代わりに、新しい行ごとに、ウィンドウの一番下の行の最後の行が「上書き」されます。プロセスが完了しても、CTRL+l を押すと、端末の最後の 3 行に大量のゴミが残ります。また、vim や irssi など、画面全体を占めるプログラムを使用すると、「キャプション」行が表示されなくなります。

私の xterm の設定と画面の「term」の設定との間に多少の不一致があると思われますが、ここでは少し混乱しており、前述のように、すべての同じ構成ファイルが正常に機能しました (そして、他のマシンでも正常に機能します--両方とも)。 cygwin およびネイティブ Linux)。私の最愛の画面を再び動作させる方法を誰かが推奨できますか?

これが私の.screenrcです:

shell /bin/bash

screen -t bash 0

select 0

escape ^Zz # Instead of Control-a, make the escape/command character be Control-z

autodetach on # Autodetach session on hangup instead of terminating screen completely

startup_message off # Turn off the splash screen

defscrollback 30000 # Use a 30000-line scrollback buffer

nethack on

# Misc h4x to make scrollback work
terminfo * te@:ti@
termcapinfo xterm|xterms|xs|rxvt ti=\E7\E[?47l

# Bells are annoying
bell_msg ''
vbell off

caption always '%{= kG}[ %{G}%H %{g}][%= %{= kw}%?%-Lw%?%{r}(%{W}%n*%f%t%?(%u)%?%{r})%{w}%?%+Lw%?%?%= %{g}][%{B} %d/%m %{W}%c %{g}]'
4

4 に答える 4

3

あなたはscreen下を走っていますxterm(私はいつも自分でやっています)。プロセスは端末のscreen大きさを「認識」していますが、その情報は現実と同期していない可能性があります。screen -dr別のウィンドウから実行すると、これが頻繁に発生することがわかりました。

xtermウィンドウのサイズSIGWINCHを変更すると、その下で実行されているプロセスにシグナルが送信され、通常、そのプロセスは tty 設定を再照会します。

最大化ボタンを 2 回クリックします。すでに最大化されている場合は、通常のウィンドウに復元してから再度最大化します。まだ最大化されていない場合は、逆になります。どちらの場合もscreen、ウィンドウ サイズを再計算する必要があります。

于 2013-09-18T20:35:55.927 に答える
0

@Keith Thompsonの回答は問題の症状を解決しますが、症状の発生を防げなかったので、ここで自分の質問に答えています。彼は、xterm パッケージを cygwin-64 にインストールするという正しい道を私に教えてくれました。これで問題は解決したようです。

于 2013-09-19T14:07:03.107 に答える