ZShellの16色

ZShellの16色

zshellプロンプトでは、8つの色しか呼び出せないようです。

例:

PROMPT="[%n@%{$fg[magenta]%}%m%{$reset_color%} %.]
%# "

うまくいきます。しかし、

PROMPT="[%n@%{$fg[brmagenta]%}%m%{$reset_color%} %.]
%# "

動作しません。デフォルトでは、「明るい」色の変更はありません。

いくつかの研究の終わりに、zshの色が "color" setoptによって呼び出されることがわかりました。

行為

echo ${(o)color}

次の出力を生成します。

00 01 02 03 04 05 07 08 22 23 24 25 27 28 30 30 30 30 31 31 32 32 33 33 34 34 35 35 36 36
37 37 39 39 40 40 41 42 43 44 45 46 47 49 bg-black bg-blue bg-cyan bg-default bg-green
bg-magenta bg-red bg-white bg-yellow black blink blue bold conceal cyan default faint green
magenta no-blink no-conceal no-reverse no-standout no-underline none normal red reverse
standout underline white yellow

ご覧のとおり、標準の8色のみが利用可能です。私は出力をデフォルトのテキストカラーとして残す「bg-」バリアントを試しました。

あなたが提供できるどんな助けにも感謝します。もちろん普通の色だけを使ってもいいけれど、何も学べません!

ベストアンサー1

どの端末エミュレータを使用していますか?を実行して、サポートされている色の数を確認できますechotc Co。たとえば、私の製品はurxvt88色をサポートしていますが、xterm8色のみをサポートしており、明るい色は含まれていません。

これを実行すると、次のようなurxvt結果が得られます。

# Dark magenta/violet:
PS1="[%F{34}%n%F{reset}@%F{magenta}%m%F{reset} %.] " 
# Bright Thistle purple:
PS1="[%F{54}%n%F{reset}@%F{magenta}%m%F{reset} %.] "

源泉:man zshall

おすすめ記事