Ucs-Detect

Ucs-Detect: Does your terminal break emojis? Devs want 'caniconsole' as plain-text purists rage

TLDR: Ucs‑Detect checks which terminals correctly display emojis, East Asian wide characters, and invisible joiners, with public results for 20+ apps. Comments split: some demand a CanIUse‑style scoreboard, while purists call Unicode risky—highlighting why your terminal might silently break languages and emoji in everyday work.

Meet Ucs‑Detect, the snitch that tells you if your computer’s text window (a terminal) can actually show emojis, wide East Asian characters, and tricky “zero‑width” marks that glue letters together. It runs tests and publishes receipts for 20+ terminals in a juicy results page. One eyebrow‑raiser: Microsoft’s Terminal nails some emoji rules but flubs others, especially those invisible “joiners.” Cue the comment section meltdown. The crowd’s hottest request? A CanIUse‑style scoreboard. As joshka puts it, “caniconsole?” Say less—people want one link to laugh at their terminal’s Unicode shame.

Then the fight breaks out. The emoji enjoyers cheer the project, while the plain‑text purists clutch pearls: “Unicode in the terminal is a hazard,” warns userbinator, linking receipts to past drama. Meanwhile, rurban thanks folks for recommending the lesser‑known terminal called foot, because of course the terminal wars needed a new contender. Between jokes about “my terminal can’t even handle my feelings” and “foot soldier wins the emoji battle,” it’s peak nerd soap opera. Under the hood, Ucs‑Detect uses a clever trick—asking the terminal “where’s the cursor?”—to see what characters really fit. For anyone who types in multiple languages (or loves emojis), this test is pure gossip gold, now backed by data and more testing.

Key Points

  • Ucs-detect tests terminal emulator Unicode support for wide characters, emoji ZWJ, VS-16, and zero-width/combining characters by language.
  • It can be installed via pip and outputs brief reports by default or detailed YAML reports with configurable limits.
  • Results for 20+ modern terminals across Windows, Linux, and macOS are published, with summaries and per-terminal YAML files available online.
  • An example finding notes Microsoft’s Terminal.exe supports Unicode 15.0 widths, lacks 27 Unicode 13.0 characters, has no emoji ZWJ support, fully supports VS-16, and misclassifies many zero-width characters.
  • The tool uses the Query Cursor Position sequence, validating against the python wcwidth specification; results were summarized for releases 1.0.4 (Nov 2023) and 1.0.8 (Nov 2025, including DEC Private Modes).

Hottest takes

"I really want a caniuse.com … caniconsole?" — joshka
"When you want plain text… Unicode in the terminal is a hazard" — userbinator
"Thanks for recommending foot" — rurban
Made with <3 by @siedrix and @shesho from CDMX. Powered by Forge&Hive.