ansiHandler function

bool ansiHandler(
  1. Queue<int> queue,
  2. Terminal terminal
)

Implementation

bool ansiHandler(Queue<int> queue, Terminal terminal) {
  // The sequence isn't completed, just ignore it.
  if (queue.isEmpty) {
    return false;
  }

  final charAfterEsc = queue.removeFirst();

  final handler = _ansiHandlers[charAfterEsc];
  if (handler != null) {
    // if (handler != csiHandler && handler != oscHandler) {
    //   terminal.debug.onEsc(charAfterEsc);
    // }

    final finished = handler(queue, terminal);
    if (!finished) {
      queue.addFirst(charAfterEsc);
    }
    return finished;
  }

  terminal.debug.onError('unsupported ansi sequence: $charAfterEsc');
  return true;
}