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.
72 lines
2.1 KiB
72 lines
2.1 KiB
11 years ago
|
# ansistyles [![build status](https://secure.travis-ci.org/thlorenz/ansistyles.png)](http://next.travis-ci.org/thlorenz/ansistyles)
|
||
|
|
||
|
Functions that surround a string with ansistyle codes so it prints in style.
|
||
|
|
||
|
In case you need colors, like `red`, have a look at [ansicolors](https://github.com/thlorenz/ansicolors).
|
||
|
|
||
|
## Installation
|
||
|
|
||
|
npm install ansistyles
|
||
|
|
||
|
## Usage
|
||
|
|
||
|
```js
|
||
|
var styles = require('ansistyles');
|
||
|
|
||
|
console.log(styles.bright('hello world')); // prints hello world in 'bright' white
|
||
|
console.log(styles.underline('hello world')); // prints hello world underlined
|
||
|
console.log(styles.inverse('hello world')); // prints hello world black on white
|
||
|
```
|
||
|
|
||
|
## Combining with ansicolors
|
||
|
|
||
|
Get the ansicolors module:
|
||
|
|
||
|
npm install ansicolors
|
||
|
|
||
|
```js
|
||
|
var styles = require('ansistyles')
|
||
|
, colors = require('ansicolors');
|
||
|
|
||
|
console.log(
|
||
|
// prints hello world underlined in blue on a green background
|
||
|
colors.bgGreen(colors.blue(styles.underline('hello world')))
|
||
|
);
|
||
|
```
|
||
|
|
||
|
## Tests
|
||
|
|
||
|
Look at the [tests](https://github.com/thlorenz/ansistyles/blob/master/test/ansistyles.js) to see more examples and/or run them via:
|
||
|
|
||
|
npm explore ansistyles && npm test
|
||
|
|
||
|
## More Styles
|
||
|
|
||
|
As you can see from [here](https://github.com/thlorenz/ansistyles/blob/master/ansistyles.js#L4-L15), more styles are available,
|
||
|
but didn't have any effect on the terminals that I tested on Mac Lion and Ubuntu Linux.
|
||
|
|
||
|
I included them for completeness, but didn't show them in the examples because they seem to have no effect.
|
||
|
|
||
|
### reset
|
||
|
|
||
|
A style reset function is also included, please note however that this is not nestable.
|
||
|
|
||
|
Therefore the below only underlines `hell` only, but not `world`.
|
||
|
|
||
|
```js
|
||
|
console.log(styles.underline('hell' + styles.reset('o') + ' world'));
|
||
|
```
|
||
|
|
||
|
It is essentially the same as:
|
||
|
|
||
|
```js
|
||
|
console.log(styles.underline('hell') + styles.reset('') + 'o world');
|
||
|
```
|
||
|
|
||
|
|
||
|
|
||
|
## Alternatives
|
||
|
|
||
|
**ansistyles** 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](https://github.com/TooTallNate/ansi.js#features) of the [ansi module](https://github.com/TooTallNate/ansi.js).
|