-
Notifications
You must be signed in to change notification settings - Fork 0
/
cli.js
executable file
·58 lines (53 loc) · 1.02 KB
/
cli.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
#!/usr/bin/env node
'use strict';
/*
* Dependencies.
*/
var basicTtsPlayer = require('./');
var pack = require('./package.json');
/*
* Arguments.
*/
var argv = process.argv.slice(2);
/*
* Command.
*/
var command = Object.keys(pack.bin)[0];
/**
* Help.
*
* @return {string}
*/
function help() {
return [
'',
'Usage: ' + command + ' [string]',
'',
pack.description,
'',
'Options:',
'',
' -h, --help output usage information',
' -v, --version output version number',
'',
'Usage Example',
'$ ' + command + ' "Hello, this is a simple string"',
].join('\n ') + '\n';
}
/*
* Program.
*/
if (
argv.indexOf('--help') !== -1 || argv.indexOf('-h') !== -1
) {
console.log(help());
} else if (
argv.indexOf('--version') !== -1 || argv.indexOf('-v') !== -1
) {
console.log(pack.version);
} else if (argv.length) {
var string = argv[0];
basicTtsPlayer(string);
} else {
console.log(help());
}