私は接続しますZシェルRed Hat Enterprise Linux 6.2マシン上でパテUnix シェルで Vim や less などのフルスクリーン プロセスを終了すると、シェル プロンプトは画面の最後の行から始まります。上の画面にはまだそのプロセスのコンテキストが表示されているため、そのプロセスを開く前にシェルが表示していたものはすべて失われました。
これは私の Ubuntu ボックスでは発生しません。プロセスを終了した後、最後に入力したコマンドの下の行に戻ります。
zshrc
Ubuntu ボックスのように動作させるには、どのオプションを変更すればよいでしょうか (おそらく で)?
答え1
私もこの問題に遭遇しました。ターミナル > 機能の下にある PuTTY 設定を確認してください。「代替ターミナル画面への切り替えを無効にする」がチェックされている場合は、チェックを外してください。(そのページの私の設定はすべてチェックを外しています。) このオプションのヘルプは有望そうです。
それができない場合は、このページグーグルで検索すると、いくつかのアイデアが得られるかもしれません。terminfo の設定をいくつか行えば、正しく動作する可能性があります。
答え2
かなり前にこの問題を修正した後、同様の問題に遭遇しました。Vim ではこの問題は発生しませんでしたが、発生しました。これは、 など、less
を使用するすべてのプログラムに影響しました。原因は、呼び出されるたびに に自動的に渡される引数をリストする環境変数であることがわかりました。この問題の原因となった内のオプションは次の通りです。less
man
LESS
less
LESS
-X
-X
または--no-init
端末への termcap 初期化および非初期化文字列の送信を無効にします。非初期化文字列が画面をクリアするなど、不要な処理を実行する場合、これが望ましいことがあります。
私も学びましたUnix と Linux – 「less --quit-if-one-screen
なし--no-init
」-X
/ を無効にする場合は--no-init
、-F
/--quit-if-one-screen
も無効にする必要があります (設定されている場合)。
終了時に常に画面が復元されるように修正するには、適切なシェル初期化ファイルのless
の値を変更します。これは、 Bash の場合は 、Zsh の場合は 、Fish の場合は になります。このファイルに、コマンド、またはfish の場合は を追加します。事前に を実行して、 /ステートメントにコピーする既存のフラグを確認できます。LESS
.bashrc
.zshenv
.config/fish/config.fish
export LESS='<all the flags you want, without -X or -F>'
set -gx LESS <flags>
echo $LESS
export
set
答え3
分かりました!$TERM
に設定するだけxterm
です。以前はlinux
export TERM=xterm
リンクとヒントをありがとう、デビッド!