2.1.2 • Published 3 years ago
@jwerre/minimist v2.1.2
Minimist
Parse argument options.
This is a direct copy of Substack's minimist v1.2.6 who's github account was deleted for some reason.
Example
parse.js
import parseArgs from '@jwerre/minimist';
const argv = parseArgs(process.argv.slice(2));
console.log(argv);$ node ./parse.js -a beep -b boop
{ _: [], a: 'beep', b: 'boop' }$ node ./parse.js -x 3 -y 4 -n5 -abc --beep=boop foo bar baz
{
_: [ 'foo', 'bar', 'baz' ],
x: 3,
y: 4,
n: 5,
a: true,
b: true,
c: true,
beep: 'boop'
}Options
Return an argument object argv populated with the array arguments from args.
argv._ contains all the arguments that didn't have any options associated with
them. Numeric-looking arguments will be returned as numbers unless opts.string
or opts.boolean is set for that argument name. Any arguments after -- will
not be parsed and will end up in argv._.
| Param | Type | Description |
|---|---|---|
| args | Array | Command line argument to parse. Typeicaly in the form of process.argv.slice(2) |
| opts | Object | Parsing options. |
| opts.string | String | A string or array of strings argument names to always treat as strings |
| opts.boolean | Boolean | A boolean, string or array of strings to always treat as booleans. if true will treat all double hyphenated arguments without equal signs as boolean (e.g. affects --foo, not -f or --foo=bar) |
| opts.alias | Object | An object mapping string names to strings or arrays of string argument names to use as aliases |
| opts.default | Object | An object mapping string argument names to default values |
| opts.stopEarly | Boolean | When true, populate argv._ with everything before the -- and argv['--'] with everything after the --. See example below. |
| opts.unknown | function | a function which is invoked with a command line parameter not defined in the opts configuration object. If the function returns false, the unknown option is not added to argv. |
stopEarly example
parseArgs('one two three -- four five --six'.split(' '), { '--': true });
// { _: [ 'one', 'two', 'three' ], '--': [ 'four', 'five', '--six' ] }Note that with opts['--'] set, parsing for arguments still stops after the --.
Install
npm install @jwerre/minimistDifference between V1 and V2
The only different between the version 1 and 2 is that version 2 uses the ES6 Module definition.
Version 1
npm install @jwerre/minimist@1.2.6const parseArgs = require('@jwerre/minimist');
const argv = parseArgs(process.argv.slice(2));
console.log(argv);Version 2
npm install @jwerre/minimist@2import parseArgs from '@jwerre/minimist';
const argv = parseArgs(process.argv.slice(2));
console.log(argv);