csiEraseInDisplayHandler function
DECSED - Selective Erase In Display
CSI ? P s J
Erase in Display (DECSED)
P s = 0 → Selective Erase Below (default)
P s = 1 → Selective Erase Above
P s = 2 → Selective Erase All
Implementation
void csiEraseInDisplayHandler(CSI csi, Terminal terminal) {
var ps = 0;
if (csi.params.isNotEmpty) {
ps = csi.params.first;
}
switch (ps) {
case 0:
terminal.buffer.eraseDisplayFromCursor();
break;
case 1:
terminal.buffer.eraseDisplayToCursor();
break;
case 2:
case 3:
terminal.buffer.eraseDisplay();
break;
default:
terminal.debug.onError("Unsupported ED: CSI $ps J");
}
}