If what you're asking is ANSI escape sequences, here are a few tips:
0 Black 1 Red 2 Green 3 Yellow/Brown 4 Blue 5 Pink 6 Cyan 7 White/Gray
Each of them is applied to foreground, or background color.
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.
For example, by doing printf "\033[1;44;97m"
you make your background 44
(grim blue) foreground 97
(intense white).
There are other useful color codes you should also use:
0 reset all colors 1 bold 3 italics 4 underline 5 blink 7 inverse
To make it more comfortable to work with that, you can make a set of aliases like fiblue
fred
bblack
etc. You may also add the following function to your bashrc
:
ansi() { printf "\033[$1" }
So that instead of writing \033[1;35m
you do ansi '1;35m'
, and writing color aliases with that function is more comfortable.
You should also take a note that setting a background color resets already set foreground color, so you should use \033[
misc;background;foreground
m
.
This way, you can paint any PS1
you like. Here's an example:
PS1="\033[0;1;36m\u\033[0;1m:\033[1;103;30m\t\033[0m \033[1;92m\$\033[0m \r"
Also have a look at bash_it.
Hope I answered what you asked.