wopt
v0.2.0
Published
Enhances nopt with ability to interpret words as options
Downloads
17
Maintainers
Readme
wopt
Enhances nopt with ability to interpret words as options.
Word options are added by this package so I named it wopt.
Install
npm install wopt --save
Usage
This library wraps nopt so look at the nopt README to understand how to use it.
Then, look here to see the extra functionality added by wopt.
// we'll use this to specify the type of an option
var path = require('path')
, wopt = require('wopt')
, optionSpec = {
// the usual spot for options
version: Boolean,
help : Boolean,
from : [path, Array],
to : [path],
}
, aliases = {
// the usual spot for aliases
v: ['--version'],
h: ['--help'],
f: ['--from'],
t: ['--to'],
// and now the aliases allowed by wopt.
// put them into their own object so they can be easily separated.
$words: {
version: '--version',
help : '--help',
'?' : '--help'
from : '--from',
to : '--to',
}
}
, parsed = wopt(optionSpec, aliases, process.argv, 2)
// these commands would all produce the same result, shown below:
// node myindex.js --from some/file --from another/file --to output/file
// node myindex.js -f some/file -f another/file -t output/file
//* node myindex.js from some/file from another/file to output/file
// resulting `parsed` object of the last one:
{
from: [ 'some/file', 'another/file' ] // paths
to : 'output/file' // path
argv: {
original: [ // the original before this library changed the words
'from', 'some/file', 'from', 'another/file', 'to', 'output/file'
],
cooked: [
'--from', 'some/file', '--from', 'another/file', '--to', 'output/file'
],
remain: []
}
}
// with the above options these alternatives are also available:
// node myindex.js version
// node myindex.js help
// node myindex.js ?