Skip to content

Reset italic (SGR 23)

Category: sgr · Baseline: core · Tags: ECMA-48 Standard · Specification ↗

SGR 23 resets the italic (SGR 3) attribute, returning text to upright rendering. The sequence is ESC [ 23 m. This is a targeted reset that does not affect other active attributes like bold, underline, or colors. Italic reset became more visible once terminal fonts gained real italic variants. A targeted SGR 23 lets syntax highlighters and markdown renderers end emphasis without disturbing color, underline, or bold state. Older terminals that fake or ignore italic should still parse and clear the attribute cleanly.
How this is testedautomated
Send \x1b[3mX\x1b[23mY, verify the second cell has italic=false.

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-05-17

Supported by all 12 tested terminals — universal adoption. Part of the Core TUI baseline.

Supported by 14 of 14 backends (100%)

Terminal Applications

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

Headless Backends

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

BackendVersionSupportNotes
Alacritty0.26.0✓ yes
vt100.js0.2.1✓ yes
vterm.js0.2.0✓ yes
WezTerm0.1.0-fork.5✓ yes
xterm.js5.5.0✓ yes