ANSI/カラーシーケンスを白黒端末に送信するLinux 9コマンド

ANSI/カラーシーケンスを白黒端末に送信するLinux 9コマンド

Rocky Linux 9でWyse50端末エミュレーションを使用しています。マニュアルページ、ヘルプ画面などは、システムが端末エミュレータが理解できない属性やカラーコードを出力するため使用できません。たとえば、次のようにman cpなります。

1mSYNOPSIS0mm
       1mcp 22m[4mOPTION24m]... [4m-T24m] 4mSOURCE24m 4mDEST0mm
       1mcp 22m[4mOPTION24m]... 4mSOURCE24m... 4mDIRECTORY0mm
       1mcp 22m[4mOPTION24m]... 4m-t24m 4mDIRECTORY24m 4mSOURCE24m...m  m

1mDESCRIPTION0mm

最新のterminfoパッケージを更新し、Linux 4で最新のwy50とwy50の間でinfocmpを実行しましたが、すべてがうまくいきます。

profile、bash_profile、bashrc、または.bashrcにカラーパラメータを設定するエントリは表示されません。

私は何を見逃していますか? (過去世紀に属するレガシーアプリケーションを除く)

答え1

私は、これらの行動を偽と規定したトーマス・ディッキーの見解に反対します。

私は他の場所で私の理由を詳しく説明しました。

https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=312935

つまり、Wyse 50、最新のターミナルエミュレータ、および* ixカーネルコンソールデバイスは、Teletypeシステム用のエミュレータではありません。

groff 1.24では、grottyをterminfoアプリケーションにして、ターミナル機能によりインテリジェントに適応できるようにしたいと思います。

ただし、これを行っても、今日使用されているほとんどの端末エミュレータはこれを実行できないため、Teletype Corporation Model 37を確実にエミュレートすることはできません。

GROFF_NO_SGR 環境変数を設定することもできます。

答え2

これはグローブのものです。ハードコーディングデフォルトの動作(ncursesとterminfoは関係ありません)これは導入されたバグ機能です。2002年2月(Debian リファレンス#257413)。回避策として、環境変数をGROFF_NO_SGRnull以外の値に設定できます。

(おそらく触れない)ほとんどすべてのビデオ端末は、一連の文字、バックスペース、強制入力(アンダースコアまたは同じ文字以上)などの操作を実行します。ビデオ端末ではなくプリンタであるにもかかわらず、ASR 33と誤って説明されることがあります。両方、間違いなく)。

追加資料:

答え3

通常、Linuxディストリビューションや他のUnixシステムでシリアルポートまたはそれに対応する擬似端末(またはsshセッションなどtelnet)を使用すると、そのプログラムの出力は何も使用していないまま端末に直接送信されます。 Linuxカーネルや他の場所でターミナル形式のエスケープシーケンスのための変換層。

TERM多くのプログラムはしばしば、同じライブラリの助けを借りて、環境変数の設定によって決定された使用中の端末の適切な出力を生成しようとしますterminfoが、termcapそうでないプログラムはそうではありません。実行すると、端末から不適切なエスケープを受信します。プログラムがそうでなくユーザーが持っていない端末タイプを要求し、不適切なエスケープシーケンスを出力する場合は、シーケンスを実行します。

関連情報