
Estou tentando fazer minhas bash
PS1
cores de prompt de acordo com oTema solarizado. Eu tenhosolarizadoinstalado e funcionando iTerm2
, mas até agora não obtive sucesso na criação de um prompt PS1 personalizado que corresponda ao tema.
Tentei usar valores como os seguintes para ciano, mas acabo ficando sem cor ou com a cor errada.
\033[0;37m
Obtive os valores acima no link a seguir. https://github.com/altercation/solarized/tree/master/iterm2-colors-solarized
Responder1
Se o que você está perguntando éSequências de escape ANSI, aqui vão algumas dicas:
0 Black
1 Red
2 Green
3 Yellow/Brown
4 Blue
5 Pink
6 Cyan
7 White/Gray
Cada um deles é aplicado à cor de primeiro plano ou de fundo.
3_ sets grim foreground color
9_ sets intense foreground color
4_ sets grim background color
10_ sets intense background color
# 3-4, 9-10 and a code for a color.
Por exemplo, ao fazer isso, printf "\033[1;44;97m"
você coloca seu plano de fundo 44
(azul sombrio) em primeiro plano 97
(branco intenso).
Existem outros códigos de cores úteis que você também deve usar:
0 reset all colors
1 bold
3 italics
4 underline
5 blink
7 inverse
Para tornar mais confortável trabalhar com isso, você pode criar um conjunto de aliases como fiblue
fred
bblack
etc. Você também pode adicionar a seguinte função ao seu bashrc
:
ansi() {
printf "\033[$1"
}
Para que, em vez de escrever , \033[1;35m
você faça ansi '1;35m'
e escrever aliases de cores com essa função seja mais confortável.
Você também deve observar que definir uma cor de fundo redefine a cor de primeiro plano já definida, então você deve usar\033[
misc;background;foreground
m
.
Dessa forma, você pode pintar o que PS1
quiser. Aqui está um exemplo:
PS1="\033[0;1;36m\u\033[0;1m:\033[1;103;30m\t\033[0m \033[1;92m\$\033[0m \r"
Dê uma olhada tambémbash_it.
Espero ter respondido o que você perguntou.