Skip to content

MorganConrad/gnucl

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Build Status License NPM Downloads Known Vulnerabilities Coverage Status

gnucl

Brain-dead simple GNU style command line argument parser

Installation

$ npm install MorganConrad/gnucl

Option parsing

const gnucl = require('gnucl');
let parsed = gnucl(process.argv, numberToIgnoreDefaultsTo2);
// or
let {args, opts} = gnucl(process.argv);
...
parsed.opts = a map of the GNU-like options
parsed.args = an array of remaining arguments

Example

$node myProgram filename.txt --foo=bar --special anotherFilename.pdf

let parsed = gnucl(process.argv);
parsed.args = ['filename.txt', 'anotherFilename.pdf']
parsed.opts = { foo:"bar", special:true }

By default, gnucl ignores the first two arguments. Pass a second argument to change.

Changelog

Changes / Improvements in v0.2.0

  1. If an option is repeated, it will be added to an array.
  2. an option may contain an = on the right side, e.g. --test=a=b
node myProgram filename.txt --header=X-foo:foo --header=X-bar:bar --test=a=b anotherFilename.pdf'
let parsed = gnucl(process.argv);
parsed.args = ['filename.txt', 'anotherFilename.pdf']
parsed.opts = { test: "a=b", header: ["X-foo:foo", "X-bar:bar"] }

About

Brain-dead simple GNU style command line argument parser

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors