printAbove method
Writes lines as permanent output above the region, then redraws it.
Implementation
void printAbove(List<String> lines) {
if (!_terminal.interactive) {
_terminal.write(lines.map((line) => '$line\n').join());
return;
}
final text = lines.map((line) => '$line\x1B[K\n').join();
_terminal.write('\x1B[?2026h${_erase()}$text${_draw()}\x1B[?2026l');
}