パッケージの詳細

opted

tandrewnichols46.6kMIT1.0.2

Stringify an object to command line options

options, params, flags, arguments

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.