| 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
 | | #!/usr/bin/env node |  | var nopt = require("../lib/nopt") |  |   , path = require("path") |  |   , types = { num: Number |  |             , bool: Boolean |  |             , help: Boolean |  |             , list: Array |  |             , "num-list": [Number, Array] |  |             , "str-list": [String, Array] |  |             , "bool-list": [Boolean, Array] |  |             , str: String |  |             , clear: Boolean |  |             , config: Boolean |  |             , length: Number |  |             , file: path |  |             } |  |   , shorthands = { s: [ "--str", "astring" ] |  |                  , b: [ "--bool" ] |  |                  , nb: [ "--no-bool" ] |  |                  , tft: [ "--bool-list", "--no-bool-list", "--bool-list", "true" ] |  |                  , "?": ["--help"] |  |                  , h: ["--help"] |  |                  , H: ["--help"] |  |                  , n: [ "--num", "125" ] |  |                  , c: ["--config"] |  |                  , l: ["--length"] |  |                  , f: ["--file"] |  |                  } |  |   , parsed = nopt( types |  |                  , shorthands |  |                  , process.argv |  |                  , 2 ) |  |   |  | console.log("parsed", parsed) |  |   |  | if (parsed.help) { |  |   console.log("") |  |   console.log("nopt cli tester") |  |   console.log("") |  |   console.log("types") |  |   console.log(Object.keys(types).map(function M (t) { |  |     var type = types[t] |  |     if (Array.isArray(type)) { |  |       return [t, type.map(function (type) { return type.name })] |  |     } |  |     return [t, type && type.name] |  |   }).reduce(function (s, i) { |  |     s[i[0]] = i[1] |  |     return s |  |   }, {})) |  |   console.log("") |  |   console.log("shorthands") |  |   console.log(shorthands) |  | } | 
 |