-
Notifications
You must be signed in to change notification settings - Fork 4
/
termcolors.js
61 lines (55 loc) · 1.11 KB
/
termcolors.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
var i, colors = exports.colors = {},
format = function(color) {
return "\033[" + colors.fg[color] + "m";
},
formatbg = function(color) {
return "\033[" + colors.bg[color] + "m";
};
colors.fg = {
black: '30',
dgray: '1;30',
red: '31',
lred: '1;31',
green: '32',
lgreen: '1;32',
brown: '33',
yellow: '1;33',
blue: '34',
lblue: '1;34',
purple: '35',
lpurple: '1;35',
cyan: '36',
lcyan: '1;36',
lgray: '37',
white: '1;37',
none: ''
};
colors.bg = {
darkgray: 40,
red: 41,
green: 42,
yellow: 43,
lblue: 44,
purple: 45,
lcyan: 46,
lgray: 47
};
for (i in colors.fg) {
colors[i] = (function(color) {
return function(str, n) {
str = str || '';
n = (n) ? format('none') : '';
return format(color) + str + n;
}
})(i);
}
for (i in colors.bg) {
colors['bg_' + i] = (function(color) {
return function(str) {
return formatbg(color) + str + format('none');
}
})(i);
}
colors.bold = function(str) {
return "\033[1m" + str + "\033[0m"
};