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.
38 lines
978 B
38 lines
978 B
'use strict';
|
|
|
|
/*
|
|
* Info: http://www.termsys.demon.co.uk/vtansi.htm#colors
|
|
* Following caveats
|
|
* bright - brightens the color (bold-blue is same as brigthtBlue)
|
|
* dim - nothing on Mac or Linux
|
|
* italic - nothing on Mac or Linux
|
|
* underline - underlines string
|
|
* blink - nothing on Mac or linux
|
|
* inverse - background becomes foreground and vice versa
|
|
*
|
|
* In summary, the only styles that work are:
|
|
* - bright, underline and inverse
|
|
* - the others are only included for completeness
|
|
*/
|
|
|
|
var styleNums = {
|
|
reset : [0, 22]
|
|
, bright : [1, 22]
|
|
, dim : [2, 22]
|
|
, italic : [3, 23]
|
|
, underline : [4, 24]
|
|
, blink : [5, 25]
|
|
, inverse : [7, 27]
|
|
}
|
|
, styles = {}
|
|
;
|
|
|
|
Object.keys(styleNums).forEach(function (k) {
|
|
styles[k] = function (s) {
|
|
var open = styleNums[k][0]
|
|
, close = styleNums[k][1];
|
|
return '\u001b[' + open + 'm' + s + '\u001b[' + close + 'm';
|
|
};
|
|
});
|
|
|
|
module.exports = styles;
|
|
|