Skip to content

Kitty graphics: Unicode placeholders

Category: extensions · Baseline: rich · Tags: Kitty Extensions · Specification ↗

Unicode placeholders (U=1) allow images to be placed using special Unicode characters in the text grid rather than absolute positioning. The terminal replaces placeholder characters with image content. This enables images to participate in text reflow, scrolling, and selection — unlike absolutely-positioned images which are fixed to screen coordinates.
How this is testedautomated
Transmit a test image with U=1 (Unicode placeholder mode). Check response for success.

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 3 of 12 terminals (25%). Part of the Rich TUI baseline.

Supported by 3 of 14 backends (21%)

Terminal Applications

TerminalVersionSupportNotes
Terminal.app✓ yes
iTerm23.6.9✗ noU=1 didn't render
Ghostty1.3.1✗ noU=1 didn't render
VS Code✗ no
Warp✗ no
Cursor✗ no

Headless Backends

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

BackendVersionSupportNotes
Kitty0.40.0✓ yes
vterm0.2.0✓ yes
Alacritty0.26.0✗ noKitty graphics not implemented in alacritty
vt100.js0.2.1✗ noNot implemented — pure TypeScript emulator
WezTerm0.1.0-fork.5✗ noKitty graphics not implemented in wezterm-term crate
xterm.js5.5.0✗ noKitty graphics protocol not implemented in xterm.js