wopt
v0.2.0
Published
Enhances nopt with ability to interpret words as options
Downloads
2
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 ?