"Fossies" - the Fresh Open Source Software Archive

Member "Atom/resources/app/apm/node_modules/nopt/bin/nopt.js" (7 Feb 2017, 1549 Bytes) of archive /windows/misc/atom-windows.zip:


As a special service "Fossies" has tried to format the requested source page into HTML format using (guessed) Javascript source code syntax highlighting (style: standard) with prefixed line numbers and code folding option. Alternatively you can here view or download the uninterpreted source code file.

    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 }