Nauczyłem się, że mogę zmienić format PS1, szczególnie kolor sznurka. Czy można zatem zmienić kolor w zależności od koloru tła skorupy? Lub jak mogę wykryć kolor tła skorupy?
12
O ile mi wiadomo, nie ma możliwości zapytania o kolory emulatora terminala. Możesz je zmienić za pomocą \e]4;NUMBER;#RRGGBB\a
(gdzie NUMBER
jest końcowym numerem koloru (0–7 dla jasnych kolorów, 8–15 dla jasnych kolorów) i #RRGGBB
jest szesnastkową wartością koloru RGB), jeśli twój terminal obsługuje tę sekwencję (odniesienie: ctlseqs ).
Potężne mechanizmy schematu kolorów często mają ustawienie ciemnego lub jasnego tła, które musisz podać, aby wskazać, czy masz czarne czy ciemnoszare tło, czy też białe lub jasnoszare tło.
Podczas konfigurowania dla siebie zwykle wystarczy zdecydować, że zawsze będziesz używać tego samego koloru tła.
TERM
i dlatego nie mogą być uzyskane ze środowiska.Jeśli używasz gnome-terminal, możesz uzyskać kolor tła dla dowolnego profilu, w tym przypadku dla profilu domyślnego jako
następnie możesz zdecydować, jak odpowiednio ustawić monit.
źródło
Za pomocą xterm można zapytać o kolor tła za pomocą
\e]11;?\a
sekwencji zmiany znaczenia. Musisz przeczytać odpowiedź z terminala. Jest toxtermcontrol
polecenie, które robi to za Ciebie:źródło