OSC 3 Set X Property
Set or delete a property on the terminal's top-level X window.
OSC 3 ; prop = value ST
OSC 3 ; prop=value ST sets the property prop of xterm’s top-level X window to value, and OSC 3 ; prop ST deletes it, so that a program can leave information on the window for the window manager or for scripts that look at X properties (ChangeXprop). The number came from dtterm, which used it to set the working directory for the next session; xterm does that with its spawn-new-terminal action instead.
A default xterm does not do it. Setting a property is one of the window operations off unless allowWindowOps is set: SetXprop is in the default disallowedWindowOps (main.h, do_osc). X properties do not exist outside X, and libghostty-vt has no OSC 3: it ignores it. Both leave the screen and the title as they were, and the cases pass.
Support
| Terminal | Version | Support | Notes |
|---|---|---|---|
| VT220 | manual, 2nd ed., 1984 | No | OSC is not among the controls it recognizes (§4.2) |
| VT510 | manual, 1st ed., 1993 | No | ignores an OSC string (chapter 4) |
| xterm | patch 412, xterm-411a | Partly | off unless allowWindowOps is set; SetXprop is disallowed by default |
| libghostty-vt | 0f171f6 | No | ignored |
| Konsole | 26.11.70, a24c3d71 | No | not in its source |
| ConEmu | build 230724, its documentation | No | not in its ANSI escape codes |
Validation
OSC3-1: Nothing changes
\e]2;Window\a
A
\e]3;WM_ROLE=terminal\a
\e]3;WM_ROLE\a # delete it
B
|AB____|
cursor 1,3
title "Window"
reply none