Mein Verständnis ist , dass ansi-termnur 8 Farben unterstützt (eine gute Diskussion dieses in reddit hier ).
Inzwischen unterstützen immer mehr Terminalemulatoren (z. B. tmuxoder iTerm2in OS X) True color(24 Bit, dh 16 Millionen Farben). Eine gute Liste finden Sie hier .
- Gibt
ansi-termes andere Pakete für die Terminalemulation, die versuchen, diese Einschränkung zu beheben, wenn die 8-Farben-Kappe spezifisch für ist? - Gibt es Pläne,
True coloreinen Terminalemulator in Emacs zu unterstützen?
Und vielleicht zur Bestätigung:
- Gibt es eine Möglichkeit, effektiv mehr als 8 Farben in
ansi-termPuffern zu haben? - Ist das Optimieren
ansi-color-names-vectorimmer noch die empfohlene Methode zum Festlegen vonansi-termFarben in Emacs25?
So testen Sie, ob ein Emulator " True Color " unterstützt:
Hier ist ein Ausschnitt aus dem obigen Link, der testen würde, ob der Emulator True Colors unterstützt:
awk 'BEGIN{
s="/\\/\\/\\/\\/\\"; s=s s s s s s s s;
for (colnum = 0; colnum<77; colnum++) {
r = 255-(colnum*255/76);
g = (colnum*510/76);
b = (colnum*255/76);
if (g>255) g = 510-g;
printf "\033[48;2;%d;%d;%dm", r,g,b;
printf "\033[38;2;%d;%d;%dm", 255-r,255-g,255-b;
printf "%s\033[0m", substr(s,colnum+1,1);
}
printf "\n";
}'
Wenn es unterstützt wird, würde die untere Zeile einen schönen Farbverlauf wie den folgenden anzeigen:
Von dem, was ich lese, NeoVim (a VIM Editor) Unterstützung für sie im Jahr 2015, und es gab eine Anfrage an Emacs Fehler gemacht , um es hinzuzufügen.

ansi-color-names-vectorVariable sehen, die ich anpassen kann. Ansonsten laufe ichmulti-termund mit zsh als Shell. Ihr Skript erzeugt keine positive Ausgabe :-(