^[control-codes live in libghostty-vt

ANSI modes

SATM Selected Area Transfer Mode

Whether only selected areas are transmitted.

CSI 17 h
ECMA-48
§7.2.14 SATM – Selected Area Transfer Mode, p. 24
DEC STD 070
§5.10.1.3 Modes That Cannot Be Changed, p. 5-134

Mode 17 decides whether a transmission of the screen sends only the selected areas, or every character position regardless of them.

StateECMA-48 calls itMeaning
Reset, CSI 17 lSELECTonly the selected areas
Set, CSI 17 hALLevery character position

DEC STD 070 §5.10.1.3, p. 5-134 lists it among the X3.64 modes a DEC terminal may treat as fixed, as not applicable. The VT510 manual’s table of modes for DECRPM marks it as always reset.

xterm ignores CSI 17 h and CSI 17 l (ansi_modes handles only modes 2, 4, 12 and 20), and DECRQM reports the mode as permanently reset, 4 (do_ansi_rqm). libghostty-vt ignores it too, but does not recognize the number, so it answers DECRQM with 0. Both DECRQM cases are known differences.

Validation

SATM-1: Reported as permanently reset

\e[17$p
|_____|
reply \e[17;4$y

SATM-2: Even after it is set

\e[17h
\e[17$p
|_____|
reply \e[17;4$y
Every example on these pages runs in your browser, in libghostty-vt compiled to WebAssembly.