Skip to content

Wide Char at Line Wrap

Category: unicode · Baseline: unicode · Tags: Unicode · Specification ↗

When a wide character (CJK or emoji) would begin in the last column of the line, it should wrap to the next line rather than being split across the boundary. The last column should be left blank.
How this is testedautomated
Fill line to last column, write a wide character, verify it appears on the next line.

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 10 of 12 terminals (83%). Not supported by: vt100.js, WezTerm. Part of the Unicode baseline. Notes: vt100.js: Not in VT100/VT220ASCII only, no Unicode width; WezTerm: Wide char at end of line not handled correctly in headless mode.

Supported by 11 of 14 backends (79%)

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
Alacritty0.26.0✓ yes
Kitty0.40.0✓ yes
vterm0.2.0✓ yes
xterm.js5.5.0✓ yes
vt100.js0.2.1✗ noNot in VT100/VT220 — ASCII only, no Unicode width
WezTerm0.1.0-fork.5✗ noWide char at end of line not handled correctly in headless mode