追加読書

追加読書

私はこの製品の熱心なユーザーです魚の皮私はそれがとても好きです。

しかし、問題があります。

ページから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_codestput

答え2

TERM端末エミュレータが環境変数の値と一致しません。最も一般的な間違いは、XTermではないこと、またはというxterm名前のxterm-newtermcap / terminfoレコードと一致すると仮定することですxterm-256color

terminfoレコードには、クリアするスクロールバックバッファがあり、それをクリアする方法をプログラムに知らせる比較的新しい機能(現在、、、、、、、、および他の端末タイプE3に指定されている)を指定します。しかし、端末エミュレータは実際には対応する制御シーケンスをサポートせず、代わりに表示される応答コンテンツを印刷する。 Fishシェルは、terminfo拡張機能を利用するコマンドを実行しています。linuxputtyputty-256colorxterm-basicxterm-newxtermxterm-256colorclear

環境変数の値に指定された名前は、ターミナルエミュレータのTERM動作を正しく説明するtermcap / terminfoレコードの名前と一致する必要があります。

追加読書

関連情報