// const commander = require('commander'); // (normal include) const commander = require('../'); // include commander in git clone of commander repo const program = new commander.Command(); function errorColor(str) { // Add ANSI escape codes to display text in red. return `\x1b[31m${str}\x1b[0m`; } program .configureOutput({ // Visibly override write routines as example! writeOut: (str) => process.stdout.write(`[OUT] ${str}`), writeErr: (str) => process.stdout.write(`[ERR] ${str}`), // Output errors in red. outputError: (str, write) => write(errorColor(str)) }); program .version('1.2.3') .option('-c, --compress') .command('sub-command'); program.parse(); // Try the following: // node configure-output.js --version // node configure-output.js --unknown // node configure-output.js --help // node configure-output.js