1 | #!/usr/bin/env node
|
2 | var Styledown = require('..'),
|
3 | read = require('read-input'),
|
4 | mdextract = require('mdextract');
|
5 |
|
6 | var args = require('minimist')(process.argv.slice(2), {
|
7 | boolean: ['inline', 'css'],
|
8 | alias: { h: 'help', v: 'version', i: 'inline' }
|
9 | });
|
10 |
|
11 | if (args.help) {
|
12 | console.log([
|
13 | 'Usage:',
|
14 | ' styledown [options] FILE',
|
15 | ' ... | styledown [options]',
|
16 | ' styledown --css > styledown.css',
|
17 | '',
|
18 | 'Options:',
|
19 | ' -h, --help print usage information',
|
20 | ' -v, --version show version info and exit',
|
21 | ' --css prints the default CSS',
|
22 | ' -i, --inline extracts from inline CSS comments (experimental)'
|
23 | ].join('\n'));
|
24 | process.exit();
|
25 | }
|
26 |
|
27 | if (args.version) {
|
28 | console.log(require('../package.json').version);
|
29 | process.exit();
|
30 | }
|
31 |
|
32 | if (args.css) {
|
33 | process.stdout.write(require('fs').readFileSync(__dirname + '/../data/styledown.css'));
|
34 | process.exit();
|
35 | }
|
36 |
|
37 | read(args._, function (err, res) {
|
38 | var data = res.data;
|
39 |
|
40 | if (args.inline)
|
41 | data = mdextract(data, { lang: 'css' }).toMarkdown();
|
42 |
|
43 | var html = Styledown.parse(data);
|
44 | process.stdout.write(html + "\n");
|
45 | });
|