forked from coolaj86/telebit.js
		
	use /dev/tty for stdin when specified
This commit is contained in:
		
							parent
							
								
									7d8916f645
								
							
						
					
					
						commit
						e57485f794
					
				| @ -16,15 +16,18 @@ var common = require('../lib/cli-common.js'); | |||||||
| 
 | 
 | ||||||
| var argv = process.argv.slice(2); | var argv = process.argv.slice(2); | ||||||
| 
 | 
 | ||||||
| var confIndex = argv.indexOf('--config'); | var argIndex = argv.indexOf('--config'); | ||||||
| var confpath; | var confpath; | ||||||
| var confargs; | var useTty; | ||||||
| if (-1 === confIndex) { | if (-1 === argIndex) { | ||||||
|   confIndex = argv.indexOf('-c'); |   argIndex = argv.indexOf('-c'); | ||||||
| } | } | ||||||
| if (-1 !== confIndex) { | if (-1 !== argIndex) { | ||||||
|   confargs = argv.splice(confIndex, 2); |   confpath = argv.splice(argIndex, 2)[1]; | ||||||
|   confpath = confargs[1]; | } | ||||||
|  | argIndex = argv.indexOf('--tty'); | ||||||
|  | if (-1 !== argIndex) { | ||||||
|  |   useTty = argv.splice(argIndex, 1); | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| function help() { | function help() { | ||||||
| @ -69,7 +72,7 @@ function help() { | |||||||
| } | } | ||||||
| 
 | 
 | ||||||
| var verstr = '' + pkg.name + ' v' + pkg.version; | var verstr = '' + pkg.name + ' v' + pkg.version; | ||||||
| if (-1 === confIndex) { | if (!confpath) { | ||||||
|   confpath = path.join(require('os').homedir(), '.config/telebit/telebit.yml'); |   confpath = path.join(require('os').homedir(), '.config/telebit/telebit.yml'); | ||||||
|   verstr += ' (--config "' + confpath + '")'; |   verstr += ' (--config "' + confpath + '")'; | ||||||
| } | } | ||||||
| @ -87,10 +90,12 @@ if (!confpath || /^--/.test(confpath)) { | |||||||
| function askForConfig(answers, mainCb) { | function askForConfig(answers, mainCb) { | ||||||
|   answers = answers || {}; |   answers = answers || {}; | ||||||
|   //console.log("Please create a config file at '" + confpath + "' or specify --config /path/to/config");
 |   //console.log("Please create a config file at '" + confpath + "' or specify --config /path/to/config");
 | ||||||
|  |   var fs = require('fs'); | ||||||
|  |   var stdin = useTty ? process.stdin : fs.createReadStream('/dev/tty'); | ||||||
|   var readline = require('readline'); |   var readline = require('readline'); | ||||||
|   var rl = readline.createInterface({ |   var rl = readline.createInterface({ | ||||||
|     input: process.stdin, |     input: stdin | ||||||
|     output: process.stdout |   , output: process.stdout | ||||||
|   }); |   }); | ||||||
| 
 | 
 | ||||||
|   // NOTE: Use of setTimeout
 |   // NOTE: Use of setTimeout
 | ||||||
| @ -275,7 +280,7 @@ function askForConfig(answers, mainCb) { | |||||||
| 
 | 
 | ||||||
|   function next() { |   function next() { | ||||||
|     var q = nextSet.shift(); |     var q = nextSet.shift(); | ||||||
|     if (!q) { rl.close(); mainCb(null, answers); return; } |     if (!q) { if (useTty) { stdin.close(); } rl.close(); mainCb(null, answers); return; } | ||||||
|     q(next); |     q(next); | ||||||
|   } |   } | ||||||
| 
 | 
 | ||||||
|  | |||||||
| @ -319,7 +319,7 @@ if [ "systemd" == "$my_system_launcher" ]; then | |||||||
|   $sudo_cmd systemctl restart $my_app |   $sudo_cmd systemctl restart $my_app | ||||||
| fi | fi | ||||||
| 
 | 
 | ||||||
| echo "telebit init" | echo "telebit init --tty" | ||||||
| sleep 2 | sleep 2 | ||||||
| 
 | 
 | ||||||
| $TELEBIT_PATH/bin/node $TELEBIT_PATH/bin/telebit.js init | $TELEBIT_PATH/bin/node $TELEBIT_PATH/bin/telebit.js init | ||||||
|  | |||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user