opted

Stringify an object to command line options

  • opted

Downloads in past

Stats

StarsIssuesVersionUpdatedCreatedSize
opted
201.0.26 years ago8 years agoMinified + gzip package size for opted in KB

Readme

Build Status downloads npm Code Climate Test Coverage dependencies
opted
Stringify an object to command line options

Installation

npm install --save opted

Usage

Opted is not a command line option parser. Rather, it is a library for stringifying an object into a list of command line arguments. E.g.
var opted = require('opted');
var args = opted({ foo: 'bar' });
console.log(args); // ['--foo', 'bar']

Types of flags

Long

Options are kebab-cased and prefixed with '--'.
console.log( opted({ foo: 'bar' }) ); // ['--foo', 'bar']
console.log( opted({ fooBar: 'baz' }) ); // ['--foo-bar', 'baz']

Short

Options that have single letter abbreviations can also be used.
console.log( opted({ f: 'bar' }) ); // ['-f', 'bar']

Boolean

Options that are simple "on", but have no value, can be set to true. Setting a flag to false, will add 'no' to the beginning.
console.log( opted({ bananas: true }) ); // ['--bananas']
console.log( opted({ bananas: false }) ); // ['--no-bananas']

Equal style

Options that include an equal sign will keep the equal sign.
console.log( opted({ 'name=', 'Andrew' }) ); // ['--name=Andrew']

List

Multiple options for a single flag can be passed in an array.
console.log( opted({ member: ['Bob', 'Larry'] }) ); // ['--member', 'Bob', '--member', 'Larry']

But wait, the tool I need to pass args to is some bizarre abomination like "find" that uses single dashes...

No problem. Just enable crazy-arg mode by passing true as the second parameter.
console.log( opted({ hello: 'world' }, true) ); // ['-hello', 'world']

Contributing

Please see the contribution guidelines.