master
Raw Download raw file
 1#!/usr/bin/env node
 2
 3//process.env.DEBUG_NOPT = 1
 4
 5// my-program.js
 6var nopt = require("../lib/nopt")
 7  , Stream = require("stream").Stream
 8  , path = require("path")
 9  , knownOpts = { "foo" : [String, null]
10                , "bar" : [Stream, Number]
11                , "baz" : path
12                , "bloo" : [ "big", "medium", "small" ]
13                , "flag" : Boolean
14                , "pick" : Boolean
15                }
16  , shortHands = { "foofoo" : ["--foo", "Mr. Foo"]
17                 , "b7" : ["--bar", "7"]
18                 , "m" : ["--bloo", "medium"]
19                 , "p" : ["--pick"]
20                 , "f" : ["--flag", "true"]
21                 , "g" : ["--flag"]
22                 , "s" : "--flag"
23                 }
24             // everything is optional.
25             // knownOpts and shorthands default to {}
26             // arg list defaults to process.argv
27             // slice defaults to 2
28  , parsed = nopt(knownOpts, shortHands, process.argv, 2)
29
30console.log("parsed =\n"+ require("util").inspect(parsed))