Websocket
[VSoRC/.git] / node_modules / node-static / node_modules / colors / README.md
1 # colors.js
2 [![Build Status](https://travis-ci.org/Marak/colors.js.svg?branch=master)](https://travis-ci.org/Marak/colors.js)
3 [![version](https://img.shields.io/npm/v/colors.svg)](https://www.npmjs.org/package/colors)
4 [![dependencies](https://david-dm.org/Marak/colors.js.svg)](https://david-dm.org/Marak/colors.js)
5 [![devDependencies](https://david-dm.org/Marak/colors.js/dev-status.svg)](https://david-dm.org/Marak/colors.js#info=devDependencies)
6
7 Please check out the [roadmap](ROADMAP.md) for upcoming features and releases.  Please open Issues to provide feedback, and check the `develop` branch for the latest bleeding-edge updates.
8
9 ## get color and style in your node.js console
10
11 ![Demo](https://raw.githubusercontent.com/Marak/colors.js/master/screenshots/colors.png)
12
13 ## Installation
14
15     npm install colors
16
17 ## colors and styles!
18
19 ### text colors
20
21   - black
22   - red
23   - green
24   - yellow
25   - blue
26   - magenta
27   - cyan
28   - white
29   - gray
30   - grey
31
32 ### bright text colors
33
34   - brightRed
35   - brightGreen
36   - brightYellow
37   - brightBlue
38   - brightMagenta
39   - brightCyan
40   - brightWhite
41
42 ### background colors
43
44   - bgBlack
45   - bgRed
46   - bgGreen
47   - bgYellow
48   - bgBlue
49   - bgMagenta
50   - bgCyan
51   - bgWhite
52   - bgGray
53   - bgGrey
54
55 ### bright background colors
56
57   - bgBrightRed
58   - bgBrightGreen
59   - bgBrightYellow
60   - bgBrightBlue
61   - bgBrightMagenta
62   - bgBrightCyan
63   - bgBrightWhite
64
65 ### styles
66
67   - reset
68   - bold
69   - dim
70   - italic
71   - underline
72   - inverse
73   - hidden
74   - strikethrough
75
76 ### extras
77
78   - rainbow
79   - zebra
80   - america
81   - trap
82   - random
83
84
85 ## Usage
86
87 By popular demand, `colors` now ships with two types of usages!
88
89 The super nifty way
90
91 ```js
92 var colors = require('colors');
93
94 console.log('hello'.green); // outputs green text
95 console.log('i like cake and pies'.underline.red) // outputs red underlined text
96 console.log('inverse the color'.inverse); // inverses the color
97 console.log('OMG Rainbows!'.rainbow); // rainbow
98 console.log('Run the trap'.trap); // Drops the bass
99
100 ```
101
102 or a slightly less nifty way which doesn't extend `String.prototype`
103
104 ```js
105 var colors = require('colors/safe');
106
107 console.log(colors.green('hello')); // outputs green text
108 console.log(colors.red.underline('i like cake and pies')) // outputs red underlined text
109 console.log(colors.inverse('inverse the color')); // inverses the color
110 console.log(colors.rainbow('OMG Rainbows!')); // rainbow
111 console.log(colors.trap('Run the trap')); // Drops the bass
112
113 ```
114
115 I prefer the first way. Some people seem to be afraid of extending `String.prototype` and prefer the second way. 
116
117 If you are writing good code you will never have an issue with the first approach. If you really don't want to touch `String.prototype`, the second usage will not touch `String` native object.
118
119 ## Enabling/Disabling Colors
120
121 The package will auto-detect whether your terminal can use colors and enable/disable accordingly. When colors are disabled, the color functions do nothing. You can override this with a command-line flag:
122
123 ```bash
124 node myapp.js --no-color
125 node myapp.js --color=false
126
127 node myapp.js --color
128 node myapp.js --color=true
129 node myapp.js --color=always
130
131 FORCE_COLOR=1 node myapp.js
132 ```
133
134 Or in code:
135
136 ```javascript
137 var colors = require('colors');
138 colors.enable();
139 colors.disable();
140 ```
141
142 ## Console.log [string substitution](http://nodejs.org/docs/latest/api/console.html#console_console_log_data)
143
144 ```js
145 var name = 'Marak';
146 console.log(colors.green('Hello %s'), name);
147 // outputs -> 'Hello Marak'
148 ```
149
150 ## Custom themes
151
152 ### Using standard API
153
154 ```js
155
156 var colors = require('colors');
157
158 colors.setTheme({
159   silly: 'rainbow',
160   input: 'grey',
161   verbose: 'cyan',
162   prompt: 'grey',
163   info: 'green',
164   data: 'grey',
165   help: 'cyan',
166   warn: 'yellow',
167   debug: 'blue',
168   error: 'red'
169 });
170
171 // outputs red text
172 console.log("this is an error".error);
173
174 // outputs yellow text
175 console.log("this is a warning".warn);
176 ```
177
178 ### Using string safe API
179
180 ```js
181 var colors = require('colors/safe');
182
183 // set single property
184 var error = colors.red;
185 error('this is red');
186
187 // set theme
188 colors.setTheme({
189   silly: 'rainbow',
190   input: 'grey',
191   verbose: 'cyan',
192   prompt: 'grey',
193   info: 'green',
194   data: 'grey',
195   help: 'cyan',
196   warn: 'yellow',
197   debug: 'blue',
198   error: 'red'
199 });
200
201 // outputs red text
202 console.log(colors.error("this is an error"));
203
204 // outputs yellow text
205 console.log(colors.warn("this is a warning"));
206
207 ```
208
209 ### Combining Colors
210
211 ```javascript
212 var colors = require('colors');
213
214 colors.setTheme({
215   custom: ['red', 'underline']
216 });
217
218 console.log('test'.custom);
219 ```
220
221 *Protip: There is a secret undocumented style in `colors`. If you find the style you can summon him.*