corrade-nucleus-nucleons – Blame information for rev 20

Subversion Repositories:
Rev:
Rev Author Line No. Line
20 office 1 #!/usr/bin/env node
2 var nopt = require("../lib/nopt")
3 , path = require("path")
4 , types = { num: Number
5 , bool: Boolean
6 , help: Boolean
7 , list: Array
8 , "num-list": [Number, Array]
9 , "str-list": [String, Array]
10 , "bool-list": [Boolean, Array]
11 , str: String
12 , clear: Boolean
13 , config: Boolean
14 , length: Number
15 , file: path
16 }
17 , shorthands = { s: [ "--str", "astring" ]
18 , b: [ "--bool" ]
19 , nb: [ "--no-bool" ]
20 , tft: [ "--bool-list", "--no-bool-list", "--bool-list", "true" ]
21 , "?": ["--help"]
22 , h: ["--help"]
23 , H: ["--help"]
24 , n: [ "--num", "125" ]
25 , c: ["--config"]
26 , l: ["--length"]
27 , f: ["--file"]
28 }
29 , parsed = nopt( types
30 , shorthands
31 , process.argv
32 , 2 )
33  
34 console.log("parsed", parsed)
35  
36 if (parsed.help) {
37 console.log("")
38 console.log("nopt cli tester")
39 console.log("")
40 console.log("types")
41 console.log(Object.keys(types).map(function M (t) {
42 var type = types[t]
43 if (Array.isArray(type)) {
44 return [t, type.map(function (type) { return type.name })]
45 }
46 return [t, type && type.name]
47 }).reduce(function (s, i) {
48 s[i[0]] = i[1]
49 return s
50 }, {}))
51 console.log("")
52 console.log("shorthands")
53 console.log(shorthands)
54 }