| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101 | #!/usr/bin/env node/*! * Module dependencies. */var qrcode = require('../lib/main'),    path = require('path'),    fs = require('fs');/*! * Parse the process name */var name = process.argv[1].replace(/^.*[\\\/]/, '').replace('.js', '');/*! * Parse the input */if (process.stdin.isTTY) {    // called with input as argument, e.g.:    // ./qrcode-terminal.js "INPUT"    var input = process.argv[2];    handleInput(input);} else {    // called with piped input, e.g.:    // echo "INPUT" | ./qrcode-terminal.js    var readline = require('readline');    var interface = readline.createInterface({        input: process.stdin,        output: process.stdout,        terminal: false    });    interface.on('line', function(line) {        handleInput(line);    });}/*! * Process the input */function handleInput(input) {    /*!     * Display help     */    if (!input || input === '-h' || input === '--help') {        help();        process.exit();    }    /*!     * Display version     */    if (input === '-v' || input === '--version') {        version();        process.exit();    }    /*!     * Render the QR Code     */    qrcode.generate(input);}/*! * Helper functions */function help() {    console.log([        '',        'Usage: ' + name + ' <message>',        '',        'Options:',        '  -h, --help           output usage information',        '  -v, --version        output version number',        '',        'Examples:',        '',        '  $ ' + name + ' hello',        '  $ ' + name + ' "hello world"',        ''    ].join('\n'));}function version() {    var packagePath = path.join(__dirname, '..', 'package.json'),        packageJSON = JSON.parse(fs.readFileSync(packagePath), 'utf8');    console.log(packageJSON.version);}
 |