Skip to main content
ansicode

SGR 53 — Overlined

Render text with a line drawn ABOVE the glyphs — mirror of underline. Disable with SGR 55.

Byte forms

Every common string-literal form so you can paste-and-search either direction.

\\x1b[\x1b[53m
\\033[\033[53m
\\e[\e[53m
ESC [ESC [ 53 m
hex1b 5b 35 33 6d

Description

Overline. ECMA-48 §8.3.117 defines SGR 53 as `OVERLINED` — a horizontal line drawn along the top of the glyph row, the mirror of underline. Disable with `\x1b[55m`. Adoption is uneven: kitty, wezterm, contour, ghostty, foot all implement it; xterm and most legacy terminals do not. Useful for marking text as struck-through-but-different (e.g., NATO message overlining, log severity markers, accentuated keys). If you need wide portability, pair the SGR 53 emission with a fallback (e.g., a Unicode combining overline `U+0305` on the previous char) so unsupported terminals still convey emphasis.

Spec citation: ECMA-48 §8.3.117 (SGR parameter 53)

Examples

bash
printf '\033[53moverlined\033[55m back\033[0m\n'
python
print('\x1b[53moverlined\x1b[0m')
go
fmt.Print("\x1b[53moverlined\x1b[0m")
javascript
console.log('\x1b[53moverlined\x1b[0m')
c
printf("\x1b[53moverlined\x1b[0m\n");

Terminal support

xterm
no
Linux console (fbcon)
no
macOS Terminal.app
no
iTerm2
partial
Windows Terminal
no
cmd.exe / ConPTY
no
kitty
yes
alacritty
no
WezTerm
yes
Ghostty
yes
GNOME Terminal
no
Konsole
partial
tmux
no
GNU screen
no

Related sequences