#define CSI "\x1B\x5B"
main(){
printf("%s1;31m This is color text %s0m\n",CSI,CSI);
}
shell:
red text:
printf "\x1b\x5b1;31m Ignoring callcatcher \x1b\x5b0m\n";
green text:
printf "\x1b\x5b2;31m Ignoring callcatcher \x1b\x5b0m\n";
Details:
\x1B is Escape Char, \x5B is '['. They form the control string indicator.
1;31 are two commands
1 means bold color
31-37 are the colors
m: set display attributes command
0m: reset to normal display
color code list:
Black 0;30 Dark Gray 1;30 Red 0;31 Bold Red 1;31 Green 0;32 Bold Green 1;32 Yellow 0;33 Bold Yellow 1;33 Blue 0;34 Bold Blue 1;34 Purple 0;35 Bold Purple 1;35 Cyan 0;36 Bold Cyan 1;36 Light Gray 0;37 White 1;37 Other commands (from Wikipedia)
Code | Effect | Note |
---|---|---|
0 | Reset / Normal | all attributes off |
1 | Bright (increased intensity) or Bold | |
2 | Faint (decreased intensity) | not widely supported |
3 | Italic: on | not widely supported. Sometimes treated as inverse. |
4 | Underline: Single | |
5 | Blink: Slow | less than 150 per minute |
6 | Blink: Rapid | MS-DOS ANSI.SYS; 150 per minute or more |
7 | Image: Negative | inverse or reverse; swap foreground and background |
8 | Conceal | not widely supported |
9 | Crossed-out | Characters legible, but marked for deletion. |
10 | Primary(default) font | |
11-19 | n-th alternate font | Select the n-th alternate font. 14 being the fourth alternate font, up to 19 being the 9th alternate font. |
20 | Fraktur | |
21 | Underline: Double | not widely supported |
22 | Normal color or intensity | neither bright, bold nor faint |
23 | Not italic, not Fraktur | |
24 | Underline: None | not singly or doubly underlined |
25 | Blink: off | |
26 | Reserved | |
27 | Image: Positive | |
28 | Reveal | conceal off |
29 | Not crossed out | |
30–37 | Set text color | 3x, where x is from the color table below |
38 | Reserved | |
39 | Default text color | implementation defined (according to standard) |
40–47 | Set background color | 4x, where x is from the color table below |
48 | Reserved | |
49 | Default background color | implementation defined (according to standard) |
50 | Reserved | |
51 | Framed | |
52 | Encircled | |
53 | Overlined | |
54 | Not framed or encircled | |
55 | Not overlined | |
56-59 | Reserved | |
60 | ideogram underline or right side line | |
61 | ideogram double underline or double line on the right side | |
62 | ideogram overline or left side line | |
63 | ideogram double overline or double line on the left side | |
64 | ideogram stress marking | |
90–99 | Set foreground color, high intensity | aixterm (not in standard) |
100–109 | Set background color, high intensity | aixterm (not in standard) |
No comments:
Post a Comment