Skip to content

Variation selector 16 (emoji presentation)

Category: text · Tags: Unicode

Variation Selector 16 (VS-16, U+FE0F) forces emoji presentation for characters that have both text and emoji forms. For example, ☺ (U+263A) is 1 column in text presentation, but ☺️ (U+263A + VS-16) should be 2 columns in emoji presentation.
How this is tested: Write a character with Variation Selector 16 (e.g., U+263A + U+FE0F), verify it occupies 2 columns in emoji presentation.

Supported by 6 of 13 backends (46%)

Terminal Applications

TerminalVersionSupportNotes
iTerm23.6.9✓ yes
Ghostty1.3.1✓ yes
cmux0.62.2✓ yes
Kitty0.46.2✓ yes
VS Code1.112.0✗ nowidth=1, expected 2
Warp0.2026.03.18.08.24.03✗ nowidth=1, expected 2
Cursor2.6.21✗ nowidth=1, expected 2
Terminal.app2.15✗ nowidth=1, expected 2

Headless Backends

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

BackendVersionSupportNotes
vterm0.2.0✓ yes
vterm0.1.2✓ yes
Alacritty0.26.0? unknown
vt1000.1.0? unknown
WezTerm0.1.0-fork.5? unknown

Powered by Termless
Playwright for Terminals