太字で文書化された文字エスケープシーケンス「\033[\061m」はどこにありますか?

太字で文書化された文字エスケープシーケンス「\033[\061m」はどこにありますか?

私はgccのようなコンソールプログラムを実行し、その出力を色で表示するプログラムを書こうとしています。使ったopenptypipeキャラクターデバイスであるふりをする代わりに、ANSIエスケープコード色情報を渡します。私はいくつかのプログラムを試してみましたが、時にはコードを提供しましたCSI [ 49 m。両方ウィキペディアそしてxtermエスケープコードドキュメント(検索)デフォルトの背景色を使用する必要があることを意味するPs = 4 9コードに同意します。CSI [ 49 m

しかし、DebianのxtermとzshとUbuntuのLinuxコンソールは同意しません。
printf '\033[\061mTest\n\033[\060m'xtermなどのコンソールで実行すると、デフォルトの背景色として「Test」を印刷する必要があります(\033エスケープされ、escape + [CSI(Control Sequence Introducer)を作成して\0618進数)10 進数 49)、しかし実際には」テスト「を太字で表示します(\061最後のものは「太字で表示されなくなりました」という意味ですが、Wikipediaやxtermカラーコード文書には文書化されていません)。上記のコンソールはすべて同意します。

持つさまざまなコンソールと標準のカラーコードのリストしかし、それらのどれもCSI 49 m「太字」が何を意味するかをリストしません。

この不一致はどこから来るか。 xterm、zsh、またはLinuxコンソールで使用されるカラーコードに対応するカラーコードのリストはどこにありますか?

ベストアンサー1

\611はASCII文字の8進コードなので、\e[\61mまたはまたは\33[\61mまたはです。\33\133\61\155\33[1m<ESC>[1m

それはCSI 1 m。バラよりウィキペディアまたはxterm出荷書類ビーチ

$ printf '\e[\61m' | od -An -vto1 -tc
 033 133 061 155
 033   [   1   m
$ tput bold | od -An -vto1 -tc
 033 133 061 155
 033   [   1   m

~のためデフォルトの背景色、必要です\e[49m、必要ありません\e[\61m。これら149数字は、バイト値ではなく10進文字列表現で表されます。

おすすめ記事