Skip to content

Reset foreground color (OSC 110)

Category: extensions · Baseline: modern · Tags: Operating System Commands (OSC), Xterm Extensions · Specification ↗

ESC ] 110 BEL
OSC 110 resets the default foreground color to the terminal's configured default. The sequence is simply ESC ] 110 BEL. This is the companion to OSC 10 — after changing the foreground color with OSC 10 ; color BEL, send OSC 110 to restore it. Applications that modify the default foreground (e.g. for theme switching) should reset on exit to avoid leaving the terminal in a modified state.
How this is testedautomated
Send OSC 110 BEL and verify the terminal remains responsive (sequence consumed without error).

The same probe runs against headless backends (via Termless) and real terminal apps (via a daemon launched in each terminal). This lets us distinguish parser correctness from rendering correctness.

Analysis2026-04-06

Supported by 5 of 9 terminals (56%). Not supported by: vt100.js, Alacritty, WezTerm, xterm.js. Part of the Modern TUI baseline.

Supported by 9 of 14 backends (64%)

Terminal Applications

TerminalVersionSupportNotes
iTerm23.6.9✓ yes
Ghostty1.3.1✓ yes
VS Code✓ yes
Warp✓ yes
Cursor✓ yes
Terminal.app✓ yes

Headless Backends

Parser correctness only — a means the parser accepts the sequence.

BackendVersionSupportNotes
vterm0.2.0✓ yes
Alacritty0.26.0✗ noOSC 110 foreground reset requires a real display — headless backends have no color palette to reset
Kitty0.40.0✗ noOSC 110 foreground reset requires a real display — headless backends have no color palette to reset
vt100.js0.2.1✗ noNot implemented — pure TypeScript emulator
WezTerm0.1.0-fork.5✗ noOSC 110 foreground reset requires a real display — headless backends have no color palette to reset
xterm.js5.5.0✗ noOSC 110 foreground reset requires a real display — headless backends have no color palette to reset