Keyboard Layout Comparison
Measures finger travel, same-finger pairs and hand alternation for QWERTY, Dvorak, Colemak and…
Shows how right-to-left text renders against how it is stored, and finds unmatched embeddings, isolates and the trojan-source pattern.
The RTL and Bidi Text Checker shows how right-to-left text renders against how it is stored, and finds unmatched embeddings, isolates and the trojan-source pattern. It runs as plain JavaScript inside the page, which means there is no upload step, no queue and no size limit imposed by a server — the only limit is your own device.
| Base direction | Set by the first strong character |
|---|---|
| Neutrals | Take direction from their neighbours |
| Isolates U+2066-2069 | Preferred over embeddings |
| Trojan source | CVE-2021-42574 |
| Two panels | Rendered order and stored order |
This tool uses embeddings and isolates are matched as a stack: every LRE, RLE, LRO and RLO needs a PDF, and every LRI, RLI and FSI needs a PDI. An unbalanced stack leaks direction into the text that follows. Every intermediate value is shown on screen, so the result can be checked by hand.
The preview uses your browser's own bidi implementation, which follows the Unicode algorithm — so it is accurate for the web and for anything else that implements the standard. Terminals, PDF renderers and older editors vary, and a string that renders correctly here can still surprise you elsewhere.
Measures finger travel, same-finger pairs and hand alternation for QWERTY, Dvorak, Colemak and…
Finds zero-width spaces, byte order marks, non-breaking spaces and direction overrides hiding…
Repairs text mangled by the wrong character encoding — the "’" and "é" problem — by…
Detects Cyrillic, Greek and fullwidth characters disguised as Latin letters — the basis of…
Reports CRLF versus LF, trailing whitespace, mixed tab and space indentation, and normalises…
Shows which fingers and rows do the work when you type your own text, and which one is…
Measures the variation in your sentence lengths — the thing that makes prose readable, which…
Rescales every quantity in a recipe for a different number of servings, keeping fractions…
Profiles every column of a CSV — type, blanks, distinct values, ranges — and flags the ragged…
Finds lines that are nearly the same, not just identical — catching "Acme Ltd." against "Acme…