call method

  1. @override
String? call(
  1. TerminalKeyboardEvent event
)
override

Translates a TerminalKeyboardEvent into an escape sequence. If the event cannot be translated, null is returned.

Implementation

@override
String? call(TerminalKeyboardEvent event) {
  if (!event.ctrl || event.shift || event.alt) {
    return null;
  }

  final key = event.key;

  if (key.index >= TerminalKey.keyA.index &&
      key.index <= TerminalKey.keyZ.index) {
    final input = key.index - TerminalKey.keyA.index + 1;
    return String.fromCharCode(input);
  }

  return null;
}