Functions that surround a string with ansicolor codes so it prints in color.
In case you need styles, like bold
, have a look at ansistyles.
npm install ansicolors
var colors = require('ansicolors'); // foreground colors var redHerring = colors.red('herring'); var blueMoon = colors.blue('moon'); var brighBlueMoon = colors.brightBlue('moon'); console.log(redHerring); // this will print 'herring' in red console.log(blueMoon); // this 'moon' in blue console.log(brightBlueMoon); // I think you got the idea // background colors console.log(colors.bgYellow('printed on yellow background')); console.log(colors.bgBrightBlue('printed on bright blue background')); // mixing background and foreground colors // below two lines have same result (order in which bg and fg are combined doesn't matter) console.log(colors.bgYellow(colors.blue('printed on yellow background in blue'))); console.log(colors.blue(colors.bgYellow('printed on yellow background in blue')));
ansicolors allows you to access opening and closing escape sequences separately.
var colors = require('ansicolors'); function inspect(obj, depth) { return require('util').inspect(obj, false, depth || 5, true); } console.log('open blue', inspect(colors.open.blue)); console.log('close bgBlack', inspect(colors.close.bgBlack)); // => open blue '\u001b[34m' // close bgBlack '\u001b[49m'
Look at the tests to see more examples and/or run them via:
npm explore ansicolors && npm test
ansicolors tries to meet simple use cases with a very simple API. However, if you need a more powerful ansi formatting tool, I'd suggest to look at the features of the ansi module.