|
@ -715,6 +715,14 @@ Interface.prototype.print = function(text) { |
|
|
process.stdout.write(text + '\n'); |
|
|
process.stdout.write(text + '\n'); |
|
|
}; |
|
|
}; |
|
|
|
|
|
|
|
|
|
|
|
Interface.prototype.foreignPrint = function(text) { |
|
|
|
|
|
this.print(text.toString().split(/\r\n|\r|\n/g).filter(function(chunk) { |
|
|
|
|
|
return chunk; |
|
|
|
|
|
}).map(function(chunk) { |
|
|
|
|
|
return '< ' + chunk; |
|
|
|
|
|
}).join('\n')); |
|
|
|
|
|
}; |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Interface.prototype.handleBreak = function(r) { |
|
|
Interface.prototype.handleBreak = function(r) { |
|
|
this.pause(); |
|
|
this.pause(); |
|
@ -1095,6 +1103,8 @@ Interface.prototype.trySpawn = function(cb) { |
|
|
|
|
|
|
|
|
this.child = spawn(process.execPath, args, { customFds: [0, 1, 2] }); |
|
|
this.child = spawn(process.execPath, args, { customFds: [0, 1, 2] }); |
|
|
|
|
|
|
|
|
|
|
|
this.child.stdout.on('data', this.foreignPrint.bind(this)); |
|
|
|
|
|
this.child.stderr.on('data', this.foreignPrint.bind(this)); |
|
|
|
|
|
|
|
|
this.pause(); |
|
|
this.pause(); |
|
|
|
|
|
|
|
|