Colors, formatting and other goodies for the console. This package won't mess with built-ins and provides neat way to predefine formatting patterns, see below.
$ npm install cli-color
Usage:
var clc = require('cli-color');Output colored text:
console.log(clc.red('Text in red'));Styles can be mixed:
console.log(clc.red.bgWhite.underline('Underlined red text on white background.'));Styled text can be mixed with unstyled:
console.log(clc.red('red') + ' plain ' + clc.blue('blue'));Best way is to predefine needed stylings and then use it:
var error = clc.red.bold;
var warn = clc.yellow;
var notice = clc.blue;
console.log(error('Error!'));
console.log(warn('Warning'));
console.log(notice('Notice'));Supported are all ANSI colors and styles:
Styles will display correctly if font used in your console supports them.
- bold
- italic
- underline
- blink
- inverse
- strike
| Foreground | Background | |
|---|---|---|
| black | bgBlack | |
| red | bgRed | |
| green | bgGreen | |
| yellow | bgYellow | |
| blue | bgBlue | |
| magenta | bgMagenta | |
| cyan | bgCyan | |
| white | bgWhite |
Not supported on Windows and some terminals. However if used in not supported environment, the closest color from basic (16 colors) palette is chosen.
Usage:
var msg = clc.xterm(202).bgXterm(236);
console.log(msg('Orange text on dark gray background'));Color table:
Terminal can be cleared with clc.reset
console.log(clc.reset);Move cursor x columns and y rows away. Values can be positive or negative, e.g.:
process.stdout.write(clc.move(-2, -2)); // Move cursors two columns and two rows backAbsolute move. Sets cursor position at x column and y row
process.stdout.write(clc.moveTo(0, 0)); // Move cursor to first row and first column in terminal windowMove cursor to the begining of the line, with n we may specify how many lines away we want to move, value can be positive or negative. Additionally we may decide to clear lines content with erase
process.stdout.write(clc.bol(-2)); // Move cursor two lines back and place it at begin of the lineMove cursor up n rows
Move cursor down n rows
Move cursor right n columns
Move cursor left n columns
Returns terminal width
Returns terminal height
Trims ANSI formatted string to plain text
var ansiTrim = require('cli-color/trim');
var plain = ansiTrim(formatted);Writes throbber string to write function at given interval. Optionally throbber output can be formatted with given format function
var setupThrobber = require('cli-color/throbber');
var throbber = setupThrobber(function (str) {
process.stdout.write(str);
}, 200);
throbber.start();
// at any time you can stop/start throbber
throbber.stop();$ npm test
