ZSH in iTerm2: Warum kann mein Prompt nur 8 Farben verwenden?

972
retrography

Ich versuche in ZSH eine Farbaufforderung zu setzen ($ TERM = xterm-256color), aber es können nur 8 Farben ausgegeben werden: Nur die helle Version der Farben. Dies ist nur für die Eingabeaufforderung der Fall, während die anderen Anwendungen alle Farben anzeigen können.

Also bekomme ich für die gleichen Farben die folgenden Farben:

PROMPT=' %B%F❯%F❯%F❯%f%b ' 

und

PROMPT=' %B%F❯%F❯%F❯%f%b ' 

Was auf dem Bildschirm angezeigt wird, enthält die richtigen Farben für die erste Anweisung, die falschen jedoch für die zweite.

Was läuft falsch zwischen meinem ZSH und iTerm (5.1.1 bzw. 2.1.4)?

PS: Ich habe dieses Skript gefunden und es ausgeführt. Alle 256 Farben werden korrekt gedruckt, wenn ich die beiden Druckfunktionen (Vordergrund und Hintergrund) versuche. Die Eingabeaufforderung bleibt jedoch erhalten, was PROMPT=' %B%F❯%F❯%F❯%f%b 'zu der gleichen Ausgabe wie PROMPT=' %B%F❯%F❯%F❯%f%b '(beide Ausgabe 009, 011 und 010) führt, während das Drucken von Farben über die ersten 16 hinaus die gewünschte Ausgabe ergibt. (zB: PROMPT=' %B%F❯%F❯%F❯%f%b '.

ZSH in iTerm2: Warum kann mein Prompt nur 8 Farben verwenden?

0

1 Antwort auf die Frage

1
retrography

Wenn Sie die Fettschrift entfernen, werden Sie feststellen, dass die Farben wieder normal werden:

Das liegt daran, dass iTerm2 standardmäßig fettere Zeichen heller darstellt. Wenn Sie diese Option jetzt deaktivieren, werden die fett gedruckten Zeichen ebenfalls in der richtigen Farbe dargestellt.