mirror of https://github.com/lukechilds/node.git
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
65 lines
1.5 KiB
65 lines
1.5 KiB
// ColorCodes explained: http://www.termsys.demon.co.uk/vtansi.htm
|
|
'use strict';
|
|
|
|
var colorNums = {
|
|
white : 37
|
|
, black : 30
|
|
, blue : 34
|
|
, cyan : 36
|
|
, green : 32
|
|
, magenta : 35
|
|
, red : 31
|
|
, yellow : 33
|
|
, brightBlack : 90
|
|
, brightRed : 91
|
|
, brightGreen : 92
|
|
, brightYellow : 93
|
|
, brightBlue : 94
|
|
, brightMagenta : 95
|
|
, brightCyan : 96
|
|
, brightWhite : 97
|
|
}
|
|
, backgroundColorNums = {
|
|
bgBlack : 40
|
|
, bgRed : 41
|
|
, bgGreen : 42
|
|
, bgYellow : 43
|
|
, bgBlue : 44
|
|
, bgMagenta : 45
|
|
, bgCyan : 46
|
|
, bgWhite : 47
|
|
, bgBrightBlack : 100
|
|
, bgBrightRed : 101
|
|
, bgBrightGreen : 102
|
|
, bgBrightYellow : 103
|
|
, bgBrightBlue : 104
|
|
, bgBrightMagenta : 105
|
|
, bgBrightCyan : 106
|
|
, bgBrightWhite : 107
|
|
}
|
|
, open = {}
|
|
, close = {}
|
|
, colors = {}
|
|
;
|
|
|
|
Object.keys(colorNums).forEach(function (k) {
|
|
var o = open[k] = '\u001b[' + colorNums[k] + 'm';
|
|
var c = close[k] = '\u001b[39m';
|
|
|
|
colors[k] = function (s) {
|
|
return o + s + c;
|
|
};
|
|
});
|
|
|
|
Object.keys(backgroundColorNums).forEach(function (k) {
|
|
var o = open[k] = '\u001b[' + backgroundColorNums[k] + 'm';
|
|
var c = close[k] = '\u001b[49m';
|
|
|
|
colors[k] = function (s) {
|
|
return o + s + c;
|
|
};
|
|
});
|
|
|
|
module.exports = colors;
|
|
colors.open = open;
|
|
colors.close = close;
|
|
|