| # text-table | |
| generate borderless text table strings suitable for printing to stdout | |
| [](http://travis-ci.org/substack/text-table) | |
| [](http://ci.testling.com/substack/text-table) | |
| # example | |
| ## default align | |
| ``` js | |
| var table = require('text-table'); | |
| var t = table([ | |
| [ 'master', '0123456789abcdef' ], | |
| [ 'staging', 'fedcba9876543210' ] | |
| ]); | |
| console.log(t); | |
| ``` | |
| ``` | |
| master 0123456789abcdef | |
| staging fedcba9876543210 | |
| ``` | |
| ## left-right align | |
| ``` js | |
| var table = require('text-table'); | |
| var t = table([ | |
| [ 'beep', '1024' ], | |
| [ 'boop', '33450' ], | |
| [ 'foo', '1006' ], | |
| [ 'bar', '45' ] | |
| ], { align: [ 'l', 'r' ] }); | |
| console.log(t); | |
| ``` | |
| ``` | |
| beep 1024 | |
| boop 33450 | |
| foo 1006 | |
| bar 45 | |
| ``` | |
| ## dotted align | |
| ``` js | |
| var table = require('text-table'); | |
| var t = table([ | |
| [ 'beep', '1024' ], | |
| [ 'boop', '334.212' ], | |
| [ 'foo', '1006' ], | |
| [ 'bar', '45.6' ], | |
| [ 'baz', '123.' ] | |
| ], { align: [ 'l', '.' ] }); | |
| console.log(t); | |
| ``` | |
| ``` | |
| beep 1024 | |
| boop 334.212 | |
| foo 1006 | |
| bar 45.6 | |
| baz 123. | |
| ``` | |
| ## centered | |
| ``` js | |
| var table = require('text-table'); | |
| var t = table([ | |
| [ 'beep', '1024', 'xyz' ], | |
| [ 'boop', '3388450', 'tuv' ], | |
| [ 'foo', '10106', 'qrstuv' ], | |
| [ 'bar', '45', 'lmno' ] | |
| ], { align: [ 'l', 'c', 'l' ] }); | |
| console.log(t); | |
| ``` | |
| ``` | |
| beep 1024 xyz | |
| boop 3388450 tuv | |
| foo 10106 qrstuv | |
| bar 45 lmno | |
| ``` | |
| # methods | |
| ``` js | |
| var table = require('text-table') | |
| ``` | |
| ## var s = table(rows, opts={}) | |
| Return a formatted table string `s` from an array of `rows` and some options | |
| `opts`. | |
| `rows` should be an array of arrays containing strings, numbers, or other | |
| printable values. | |
| options can be: | |
| * `opts.hsep` - separator to use between columns, default `' '` | |
| * `opts.align` - array of alignment types for each column, default `['l','l',...]` | |
| * `opts.stringLength` - callback function to use when calculating the string length | |
| alignment types are: | |
| * `'l'` - left | |
| * `'r'` - right | |
| * `'c'` - center | |
| * `'.'` - decimal | |
| # install | |
| With [npm](https://npmjs.org) do: | |
| ``` | |
| npm install text-table | |
| ``` | |
| # Use with ANSI-colors | |
| Since the string length of ANSI color schemes does not equal the length | |
| JavaScript sees internally it is necessary to pass the a custom string length | |
| calculator during the main function call. | |
| See the `test/ansi-colors.js` file for an example. | |
| # license | |
| MIT |