1 module sily.bashfmt;
2 
3 alias FG = Foreground;
4 alias BG = Background;
5 alias FM = Formatting;
6 alias RS = FormattingReset;
7 
8 enum Foreground : string {
9     reset = "\033[39m",
10     black = "\033[30m",
11     red = "\033[31m",
12     green = "\033[32m",
13     yellow = "\033[33m",
14     blue = "\033[34m",
15     magenta = "\033[35m",
16     cyan = "\033[36m",
17     ltgray = "\033[37m",
18     dkgray = "\033[90m",
19     ltred = "\033[91m",
20     ltgreen = "\033[92m",
21     ltyellow = "\033[93m",
22     ltblue = "\033[94m",
23     ltmagenta = "\033[95m",
24     ltcyan = "\033[96m",
25     white = "\033[97m"
26 }
27 
28 enum Background : string {
29     reset = "\033[49m",
30     black = "\033[40m",
31     red = "\033[41m",
32     green = "\033[42m",
33     yellow = "\033[43m",
34     blue = "\033[44m",
35     magenta = "\033[45m",
36     cyan = "\033[46m",
37     ltgray = "\033[47m",
38     dkgray = "\033[100m",
39     ltred = "\033[101m",
40     ltgreen = "\033[102m",
41     ltyellow = "\033[103m",
42     ltblue = "\033[104m",
43     ltmagenta = "\033[105m",
44     ltcyan = "\033[106m",
45     white = "\033[107m"
46 }
47 
48 enum Formatting : string {
49     bold = "\033[1m",
50     dim = "\033[2m",
51     italics = "\033[3m",
52     uline = "\033[4m",
53     blink = "\033[5m",
54     inverse = "\033[7m",
55     hidden = "\033[8m",
56     striked = "\033[9m",
57     dline = "\033[21m",
58     cline = "\033[4:3m",
59     oline = "\033[53"
60 }
61 
62 enum FormattingReset : string {
63     reset = "\033[0m",
64 
65     bold = "\033[21m",
66     dim = "\033[22m",
67     italics = "\033[22m",
68     uline = "\033[24m",
69     blink = "\033[25m",
70     inverse = "\033[27m",
71     hidden = "\033[28m",
72     striked = "\033[29m",
73     dline = "\033[24m",
74     cline = "\033[4:0m",
75     oline = "\033[55m"
76 }