#!/usr/bin/env node // This is used as an example in the README for: // Other option types, negatable boolean // You can specify a boolean option long name with a leading `no-` to make it true by default and able to be negated. // const commander = require('commander'); // (normal include) const commander = require('../'); // include commander in git clone of commander repo const program = new commander.Command(); program .option('--no-sauce', 'Remove sauce') .option('--cheese ', 'cheese flavour', 'mozzarella') .option('--no-cheese', 'plain with no cheese'); program.parse(); const options = program.opts(); const sauceStr = options.sauce ? 'sauce' : 'no sauce'; const cheeseStr = (options.cheese === false) ? 'no cheese' : `${options.cheese} cheese`; console.log(`You ordered a pizza with ${sauceStr} and ${cheeseStr}`); // Try the following: // node options-negatable.js // node options-negatable.js --sauce // node options-negatable.js --cheese=blue // node options-negatable.js --no-sauce --no-cheese