1.0.0 • Published 10 days ago

@osjwnpm/repellat-distinctio-nam v1.0.0

Weekly downloads
-
License
MIT
Repository
github
Last release
10 days ago

@osjwnpm/repellat-distinctio-nam Version Badge

github actions coverage License Downloads

npm badge

parse argument options

This module is the guts of optimist's argument parser without all the fanciful decoration.

example

Example files: example/parse.js (CJS) / example/parse.mjs (ESM)

// for CJS
const argv = require('@osjwnpm/repellat-distinctio-nam')(process.argv.slice(2));

// for ESM
// import @osjwnpm/repellat-distinctio-nam from '@osjwnpm/repellat-distinctio-nam';
// const argv = @osjwnpm/repellat-distinctio-nam(process.argv.slice(2));
console.log(argv);
$ node example/parse.js -a beep -b boop
{ _: [], a: 'beep', b: 'boop' }
$ node example/parse.js -x 3 -y 4 -n5 -abc --beep=boop --no-ding foo bar baz
{
	_: ['foo', 'bar', 'baz'],
	x: 3,
	y: 4,
	n: 5,
	a: true,
	b: true,
	c: true,
	beep: 'boop',
	ding: false
}

methods

const parseArgs = require('@osjwnpm/repellat-distinctio-nam');

const argv = parseArgs(args, opts={})

Return an argument object argv populated with the array arguments from args.

argv._ contains all the arguments that didn't have an option associated with them.

Numeric-looking arguments will be returned as numbers unless opts.string or opts.boolean contains that argument name. To disable numeric conversion for non-option arguments, add '_' to opts.string.

A negated argument of the form --no-foo returns false for option foo.

Any arguments after '--' will not be parsed and will end up in argv._.

options can be:

  • opts.string - a string or array of strings argument names to always treat as strings
  • opts.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 - an object mapping string names to strings or arrays of string argument names to use as aliases
  • opts.default - an object mapping string argument names to default values
  • opts.stopEarly - when true, populate argv._ with everything after the first non-option
  • opts['--'] - when true, populate argv._ with everything before the -- and argv['--'] with everything after the --. Here's an example:

    > require('./')('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 --.

  • opts.unknown - 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.

install

With npm do:

npm install @osjwnpm/repellat-distinctio-nam

license

MIT

HyBirequestsharedarraybufferYAMLtestershimmatchAllbrowserslisttranspilelaunchasyncpositiveclienthandlerstoolkitdatacodesdescriptionmodulecomputed-typescallbackgetoptforEachconcatuuidecmascriptcryptappprunefindmove_.extendnativejestconsoleurlparentskeyschineseArray.prototype.filterimportgradients css3less.jsset$.extendtakexssimmutablewatchingexitES2016tacitprivateclonebufferses6lintcachedescriptorsrm -rfpatchES2015starterdefineopenerthroatenvironmentresolveviewindicatorflatunicodeloggerfolderclassnamebatchargsECMAScript 2018byteLengthfilewhichansiconfigurableweakmapcompile lessdompropertiesES2020accessortskarmaopenisConcatSpreadableargumentSymbolfastify6to5point-freeloadingnopecomparecallassertiondataviewStreamreadablestreamuser-streamsobjqscolorsfull-widthttytoStringTagES2021createcurlfastES5flagsratepnpm9installarrayscensorhasOwnchromiumprotowatchFileAsyncIteratorvalidatecmdajvharmonywordbreakpackage.jsonperformantpostcss-pluginstatuswritepolyfillidlearraydeterministicsearchhttpsidparentcoercibleReactiveXvariablesconcatMapreact-hooksWebSocketsspecclitelephonetouchvalidatorlibphonenumbercss-in-jsserializelesscsslrustylepyyamlprocesseslintpluginpushauthinstallerES7watchsigintrgbtc39assertfindupfastcopyutilitylistenerses-shimsratelimitreal-timechildWebSocketjsonschemacjkvariables in cssjavascriptlengthjasmineless cssmkdirptranspilerreact animationfindLastIndexstyled-componentsequalitytddes5propertyprettyyamltypesESschemeworkspace:*stringdefaultwhatwgtapawaitincludesoptimistcallboundio-tsconcurrencyreducereact
@osjwnpm/saepe-illo-ex@osjwnpm/hic-accusantium-dolores@osjwnpm/iste-nam-omnis@osjwnpm/itaque-eligendi-omnis@osjwnpm/iure-qui-fugit@osjwnpm/magnam-at-iusto@osjwnpm/mollitia-quae-magni@osjwnpm/nam-laboriosam-quibusdam@osjwnpm/nesciunt-voluptatem-quo@osjwnpm/nesciunt-voluptatum-libero@osjwnpm/nihil-recusandae-error@osjwnpm/aut-delectus-exercitationem@osjwnpm/autem-eum-corporis@osjwnpm/culpa-vitae-totam@osjwnpm/delectus-sequi-eveniet@osjwnpm/ducimus-culpa-tempora@osjwnpm/error-fugiat-nobis@osjwnpm/esse-culpa-dolorum@osjwnpm/et-debitis-officia@osjwnpm/exercitationem-maxime-impedit@osjwnpm/explicabo-consequatur-dolore@osjwnpm/harum-occaecati-quae@osjwnpm/non-possimus-numquam@osjwnpm/nostrum-repudiandae-dolorum@osjwnpm/occaecati-debitis-illo@osjwnpm/occaecati-reprehenderit-dolor@osjwnpm/odit-tempore-eveniet@osjwnpm/officia-vitae-ratione@osjwnpm/omnis-reprehenderit-provident@osjwnpm/placeat-dolores-nihil@osjwnpm/placeat-nulla-deserunt@osjwnpm/praesentium-voluptate-qui@osjwnpm/quas-debitis-praesentium@osjwnpm/amet-quasi-culpa@osjwnpm/atque-quod-voluptas@osjwnpm/quibusdam-ab-consequatur@osjwnpm/quibusdam-dolorem-aperiam@osjwnpm/quidem-recusandae-doloremque@osjwnpm/quod-quasi-cum@osjwnpm/repellat-saepe-perspiciatis@osjwnpm/repellendus-voluptatibus-nulla@osjwnpm/vel-expedita-quasi@osjwnpm/veniam-esse-impedit@osjwnpm/voluptatem-omnis-aut@osjwnpm/voluptatum-illum-alias@osjwnpm/voluptatum-ipsam-eveniet@lambrioanpm/consectetur-aspernatur-omnis@lambrioanpm/debitis-minima-magnam@lambrioanpm/ipsa-quos-ab@lambrioanpm/mollitia-doloremque-laborum@lambrioanpm/natus-adipisci-eius@lambrioanpm/esse-dolorum-placeat@lambrioanpm/exercitationem-magnam-sit@lambrioanpm/fugit-eos-quos@lambrioanpm/quibusdam-officiis-occaecati@lambrioanpm/repudiandae-similique-architecto@lambrioanpm/unde-debitis-perferendis@lambrioanpm/nemo-dolorum-sit@lambrioanpm/officiis-velit-voluptatum@lambrioanpm/omnis-debitis-iste@lambrioanpm/omnis-qui-voluptatibus@lambrioanpm/ab-qui-doloremque@lambrioanpm/architecto-rem-necessitatibus
1.0.0

10 days ago