ZSHプロンプトをカスタマイズする途中ですが、Konsoleにボールドテキストや特定のRGBカラーを使用するようにエスケープシーケンスを使用できないようです。トゥルーカラーまたは太字のZSHプロンプトでエスケープシーケンスを使用するにはどうすればよいですか?
%F{000} %f
のようにZSHの組み込みオプションについて知っていますが、私が知る限り、これらのオプションはデフォルト(赤、青など)と256色のパレットにのみアクセスできます。 %B %b
、boldの組み込みオプションは機能しますが、1色に限られているようです。
私ができることをしたいのは、プロンプトの特定のセクションに、すべてのRGBカラーを使用して色付けしたり、太字にしたりすることです。私が見つけることができるものから、このような何かが動作するはずです:
PS1="%{\e[38;0;255;0;255m%}%M >:%{\e[0m%}"
私にこのようなピンク色のプロンプト与える必要があること:
HOSTNAME >:
をしかし、私が得ることはこれです:
\e[38;0;255;0;255mHOSTNAME >:\e[0m
私は\033
\x1b
のような異なるエスケープシーケンスを試しましたが、何も動作していないようです。
ZSHプロンプトでエスケープシーケンスを正しく使用するにはどうすればよいですか?
細目:
openSUSEのタンブルウィードKDE
konsoleの--version 16.12.0(キーボード:はXFree 4)
ZSH --version 5.3
FWIWでは、「すべてのRGBカラー」は問題ではありません。 paleteはまだ変更可能かもしれませんが、それはまだ固定されています:http://www.xfree86.org/current/ctlseqs.html – user2864740
これは、8800万または256色のパレットです。標準[True Color](https://en.wikipedia.org/wiki/Color_depth#True_color_.2824-bit.29)は、わずか24ビットまたは1600万色であり、値の構成として表現されています。端末(VTファミリのいずれか)は、固定カラーパレットテーブルへのインデックス付けを必要とします。 – user2864740
私はまだそれは公正な問題だと思う - 念頭に置いて、RGBによる色へのアクセス(パレット自体を更新せずに)はおそらく不可能であることに留意してください。 – user2864740