Fix for meta keys in a weird iTerm state.
This commit is contained in:
parent
d40af91b30
commit
49275524a5
@ -93,7 +93,7 @@ ReadStream.prototype.isTTY = true;
|
||||
// Regexes used for ansi escape code splitting
|
||||
var metaKeyCodeRe = /^(?:\x1b)([a-zA-Z0-9])$/,
|
||||
functionKeyCodeRe =
|
||||
/^(?:\x1b+)(O|N|\[|\[\[)(?:(\d+)(?:;(\d+))?([~^$])|(?:1;(\d+))?([a-zA-Z]))/;
|
||||
/^(?:\x1b+)(O|N|\[|\[\[)(?:(\d+)(?:;(\d+))?([~^$])|(?:1;)?(\d+)?([a-zA-Z]))/;
|
||||
|
||||
ReadStream.prototype._emitKey = function(s) {
|
||||
var char,
|
||||
@ -106,7 +106,12 @@ ReadStream.prototype._emitKey = function(s) {
|
||||
parts;
|
||||
|
||||
if (Buffer.isBuffer(s)) {
|
||||
s = s.toString(this.encoding || 'utf-8');
|
||||
if (s[0] > 127 && s[1] === undefined) {
|
||||
s[0] -= 128;
|
||||
s = '\x1b'+s.toString(this.encoding || 'utf-8');
|
||||
} else {
|
||||
s = s.toString(this.encoding || 'utf-8');
|
||||
}
|
||||
}
|
||||
|
||||
if (s === '\r') {
|
||||
|
Loading…
x
Reference in New Issue
Block a user