^[control-codes
live in libghostty-vt

Operating system commands

OSC 16 Tektronix Background Color

View as Markdown

Set and query the color of the background of xterm's Tektronix 4014 window.

OSC 16 ; Pt ST
ECMA-48
§8.3.89 OSC – Operating System Command, p. 51
xterm
Operating System Commands

OSC 16 ; Pt ST sets the color of the background of xterm’s Tektronix 4014 window, and OSC 16 ; ? ST asks what it is. OSC 116 puts it back as it started. It is one of xterm’s dynamic colors, and works as OSC 10 explains: Pt is any color X11 can parse, and a further ; in the same sequence moves on to color 17.

The Tektronix colors belong to xterm’s second window, which emulates a Tektronix 4014 graphics terminal and is opened from a menu or with CSI ? 38 h. They can be set and asked for whether or not that window is showing.

A default xterm starts it as the text background (charproc.c), so in the terminal the cases run in, set up as a default xterm, it is reported as rgb:ffff/ffff/ffff.

libghostty-vt has no such color, and ignores OSC 16 and OSC 116, so the cases that ask are known differences.

Support

TerminalVersionSupportNotes
VT220manual, 2nd ed., 1984NoOSC is not among the controls it recognizes (§4.2)
VT510manual, 1st ed., 1993Noignores an OSC string (chapter 4)
xtermpatch 412, xterm-411aYes
libghostty-vt0f171f6Noignored
Konsole26.11.70, a24c3d71Nonot in its source
kitty0.49.1, run in a VMNofails the case that shows it working
foot1.28.0, run in a VMNofails the case that shows it working
pyte0.8.2, run as a libraryNofails the case that shows it working
xterm.js headless6.0.0, run as a libraryNofails the case that shows it working
alacritty_terminal0.26.0, run as a libraryNofails the case that shows it working
ConEmubuild 230724, its documentationNonot in its ANSI escape codes
rxvt-unicode9.31, run in a VMNofails the case that shows it working
VTE0.84.1, run as a libraryNofails the case that shows it working

Validation

OSC16-1: Ask for it

\e]16;?\a
|____|
reply \e]16;rgb:ffff/ffff/ffff\a

OSC16-2: Change it

\e]16;#0080ff\a
\e]16;?\a
|____|
reply \e]16;rgb:0000/8080/ffff\a
Every example on these pages runs in your browser, in libghostty-vt compiled to WebAssembly.