Browse Source

tty: emit 'unknown' key event if key sequence not found

Add key.code and key.sequence -mad props go out to @TooTallNate
v0.7.4-release
Dan VerWeire 13 years ago
committed by Ben Noordhuis
parent
commit
e4afb2f724
  1. 4
      lib/tty.js

4
lib/tty.js

@ -154,6 +154,8 @@ ReadStream.prototype._emitKey = function(s) {
} }
} }
key.sequence = s;
if (s === '\r' || s === '\n') { if (s === '\r' || s === '\n') {
// enter // enter
key.name = 'enter'; key.name = 'enter';
@ -210,6 +212,7 @@ ReadStream.prototype._emitKey = function(s) {
key.ctrl = !!(modifier & 4); key.ctrl = !!(modifier & 4);
key.meta = !!(modifier & 10); key.meta = !!(modifier & 10);
key.shift = !!(modifier & 1); key.shift = !!(modifier & 1);
key.code = code;
// Parse the key itself // Parse the key itself
switch (code) { switch (code) {
@ -305,6 +308,7 @@ ReadStream.prototype._emitKey = function(s) {
/* misc. */ /* misc. */
case '[Z': key.name = 'tab'; key.shift = true; break; case '[Z': key.name = 'tab'; key.shift = true; break;
default: key.name = 'undefined'; break;
} }
} else if (s.length > 1 && s[0] !== '\x1b') { } else if (s.length > 1 && s[0] !== '\x1b') {

Loading…
Cancel
Save