私はこの製品の熱心なユーザーです魚の皮私はそれがとても好きです。
しかし、問題があります。
ページからhttps://fishshell.com/docs/2.1/index.htmlというタイトルのセクションがあります。「コマンドラインエディタ」。便利なショートカットがたくさんリストされています。
私が最も興味を持っているのはCtrl-L。説明によると、「Ctrl-Lは画面を消去して再描画します」私はそれを試してみましたが、期待どおりに動作しました。しかし、前のヒントに追加されるいくつかの兆候が生成されます。これは、後ろにスクロールすると表示されます。
例:
rosika@... ~/Schreibtisch> [3;J
rosika@... ~/Schreibtisch>
それが[3;J
私が尋ねるものです。それは[
実際には4桁の数字を含む一種の長方形です。
なぜこれが起こるのか教えてくれる人がいますか?どうなりますか?これを行うべきですか?
よろしくお願いします。
挨拶
ロシカ
私のシステム:
Linux/Lubuntu 16.04.4 LTS、64ビット
魚v.2.2.0-3
答え1
Unix端末は、単一のストリームに混在する制御シーケンスとテキストを解釈してコンテンツを埋めます。多くの文字は、意味の文脈に応じてテキストまたは制御コードにすることができます。
<esc>[3;J
はそのようなシーケンスの1つです。無効なコンテキストでは印刷され、正しいコンテキストではリセット表示の一部です。
詳細については、およびマニュアルページを参照termcap
してくださいconsole_codes
。tput
答え2
TERM
端末エミュレータが環境変数の値と一致しません。最も一般的な間違いは、XTermではないこと、またはというxterm
名前のxterm-new
termcap / terminfoレコードと一致すると仮定することですxterm-256color
。
terminfoレコードには、クリアするスクロールバックバッファがあり、それをクリアする方法をプログラムに知らせる比較的新しい機能(現在、、、、、、、、および他の端末タイプE3
に指定されている)を指定します。しかし、端末エミュレータは実際には対応する制御シーケンスをサポートせず、代わりに表示される応答コンテンツを印刷する。 Fishシェルは、terminfo拡張機能を利用するコマンドを実行しています。linux
putty
putty-256color
xterm-basic
xterm-new
xterm
xterm-256color
clear
環境変数の値に指定された名前は、ターミナルエミュレータのTERM
動作を正しく説明するtermcap / terminfoレコードの名前と一致する必要があります。