anchor.diff:      }
   
       stdin.add([key]);
  +  }
  +
  +  void _handleDeleteKey() {
  +    stdin.add([27, 91, 67, 8]);
  +  }
  +
  +  Future _handleHomeKey() async {
  +    stdin.add([27, 91, 68]);
  +    while (! await _listenForBell()) {
  +      stdin.add([27, 91, 68]);
  +    }
  +  }
  +
  +  Future _handleEndKey() async {
  +    stdin.add([27, 91, 67]);
  +    while (! await _listenForBell()) {
  +      stdin.add([27, 91, 67]);
  +    }
     }
   
     /// Processes [output] by coordinating handling of strings
  
positive.code:         stdin.add([i]);
        }
      });
    }
  
    /// Handles a given [KeyboardEvent].
  
negative.code:     _terminal = _createTerminalOutputDiv();
      _cursor = _createTerminalCursorDiv();
  
      stdout = new StreamController<List<int>>.broadcast();
      stdin = new StreamController<List<int>>();
  
      _currAttributes = new DisplayAttributes();
  