UNPKG

1.57 kBJavaScriptView Raw
1// ColorCodes explained: http://www.termsys.demon.co.uk/vtansi.htm
2'use strict';
3
4var colorNums = {
5 white : 37
6 , black : 30
7 , blue : 34
8 , cyan : 36
9 , green : 32
10 , magenta : 35
11 , red : 31
12 , yellow : 33
13 , brightBlack : 90
14 , brightRed : 91
15 , brightGreen : 92
16 , brightYellow : 93
17 , brightBlue : 94
18 , brightMagenta : 95
19 , brightCyan : 96
20 , brightWhite : 97
21 }
22 , backgroundColorNums = {
23 bgBlack : 40
24 , bgRed : 41
25 , bgGreen : 42
26 , bgYellow : 43
27 , bgBlue : 44
28 , bgMagenta : 45
29 , bgCyan : 46
30 , bgWhite : 47
31 , bgBrightBlack : 100
32 , bgBrightRed : 101
33 , bgBrightGreen : 102
34 , bgBrightYellow : 103
35 , bgBrightBlue : 104
36 , bgBrightMagenta : 105
37 , bgBrightCyan : 106
38 , bgBrightWhite : 107
39 }
40 , open = {}
41 , close = {}
42 , colors = {}
43 ;
44
45Object.keys(colorNums).forEach(function (k) {
46 var o = open[k] = '\u001b[' + colorNums[k] + 'm';
47 var c = close[k] = '\u001b[39m';
48
49 colors[k] = function (s) {
50 return o + s + c;
51 };
52});
53
54Object.keys(backgroundColorNums).forEach(function (k) {
55 var o = open[k] = '\u001b[' + backgroundColorNums[k] + 'm';
56 var c = close[k] = '\u001b[49m';
57
58 colors[k] = function (s) {
59 return o + s + c;
60 };
61});
62
63module.exports = colors;
64colors.open = open;
65colors.close = close;