Antworten:
Soweit ich weiß, gibt es keine Möglichkeit, die Farben des Terminalemulators abzufragen. Sie können sie mit \e]4;NUMBER;#RRGGBB\a(wobei NUMBERdie Terminalfarbnummer (0–7 für helle Farben, 8–15 für helle Farben) und #RRGGBBein hexadezimaler RGB-Farbwert ist) ändern, wenn Ihr Terminal diese Sequenz unterstützt (Referenz: ctlseqs ).
Leistungsstarke Farbschema-Mechanismen weisen häufig eine dunkle oder helle Hintergrundeinstellung auf, die Sie angeben müssen, um anzugeben, ob Sie einen schwarzen oder dunkelgrauen Hintergrund oder einen weißen oder hellgrauen Hintergrund haben.
Wenn Sie für sich selbst konfigurieren, ist es normalerweise genug, um zu entscheiden, dass Sie immer die gleiche Hintergrundfarbe verwenden.
TERMund können es nicht sein aus der Umwelt gewonnen.
Wenn Sie gnome-terminal verwenden, können Sie die Hintergrundfarbe für jedes Profil erhalten, in diesem Fall für das Standardprofil als
$ gconftool-2 --get /apps/gnome-terminal/profiles/Default/background_color
#E12FE12FC74D
dann können Sie entscheiden, wie Sie Ihre Eingabeaufforderung entsprechend einstellen möchten.
Mit xterm können Sie die Hintergrundfarbe mit der \e]11;?\aEscape-Sequenz abfragen . Sie müssen die Antwort vom Terminal lesen. Es gibt einen xtermcontrolBefehl, der das für Sie erledigt:
~$ xtermcontrol --get-bg
rgb:b0b0/b0b0/b0b0