-
Notifications
You must be signed in to change notification settings - Fork 3
Description
from http://vaxhaven.com/images/5/55/EK-VT420-RM-002.pdf p164 (original) p186 (pdf)
Erase Rectangular Area (DECERA)
This control function erases characters from the specified rectangular area in page memory. When an area is erased, DECERA replaces all character positions with the space character (2/0). DECERA erases character values and visual attributes from the specified area. DECERA does not erase line attributes.
Available in: VT400 mode only
Format
| CSI | Pt | ; | Pl; Pb; Pr | $ | z |
|---|---|---|---|---|---|
| 9/11 | 3/n | 3/11 | ******** | 2/4 | 7/10 |
Parameters
Pt, Pl, Pb, and Pr define the rectangular area to be erased:
Pt is the top-line border. Pt must be less than or equal to Pb.
Default: Pt = 1.
Pl is the left-column border. Pl must be less than or equal to Pr.
Default: Pl = 1.
Pb is the bottom-line border.
Default: Pb = the last line of the active page.
Pr is the right-column border.
Default: Pr = the last column of the active page.
Notes on DECERA
• The coordinates of the rectangular area are affected by the setting of
origin mode (DECOM).
• DECERA is not affected by the page margins.
• If the value of Pt, Pl, Pb, or Pr exceeds the width or height of the
active page, the value is treated as the width or height of that page.
• DECERA does not change the active cursor position.
your mission, if you choose to accept it, is to determine whether or not DECERA applies to Sixel. i've got the following patch outstanding for XTerm:
diff -ur xterm-368/screen.c xterm-368-decera/screen.c
--- xterm-368/screen.c 2021-03-01 03:54:26.000000000 -0500
+++ xterm-368-decera/screen.c 2021-06-26 02:43:34.180469144 -0400
@@ -2550,6 +2550,16 @@
}
})
}
+ TRACE(("text erasing cur_col=%d cur_row=%d cols=%d rows=%d\n",
+ left,
+ top,
+ numcols,
+ numrows));
+ chararea_clear_displayed_graphics(screen,
+ left,
+ top,
+ numcols, numrows);
+
ScrnUpdate(xw,
top,
left - b_left,but @ThomasDickey is hesitant to apply it without experimental confirmation