Unicode-konverter

Escape tekst som JavaScript-sekvenserne \uXXXX / \u{HEX}, dekod blandede escapes tilbage til tekst, og undersøg hvert tegn som et kodepunkt: U+hex, decimal, UTF-8-bytes, UTF-16-enheder og JS-escapes. Astrale kodepunkter (emojis) bliver aldrig delt i surrogathalvdele.
Al behandling sker lokalt i browseren — data uploades aldrig til nogen server.
Escape-stil:
Kod: Teksten opdeles i Unicode-kodepunkter (så emojis forbliver intakte), og hvert af dem skrives som en JavaScript-escapesekvens.
Dekod: Hver \uXXXX-, \u{hex}- eller U+hex-sekvens (store eller små bogstaver) omdannes til sit tegn. Escapes af tilstødende surrogatpar slås sammen til ét kodepunkt. Tekst uden escapes passerer uændret.
Inspektør: Hvert kodepunkt bliver til én tabulatorsepareret række: tegn, U+HEX, decimal, UTF-8-bytes, UTF-16-enheder og JS-escape. Hele tabellen kan kopieres fra outputtet eller downloades.
Ctrl+Enter i input kører den aktive tilstand.
Vælg Kod, Dekod eller Inspektør, og kør den. Al behandling bliver i browseren.
Sådan læses inspektørkolonnerne:
U+HEX er kodepunktet i hexadecimal; decimal er det samme tal i titalssystemet. UTF-8-bytes viser de en til fire bytes, tegnet optager, når det skrives som UTF-8 (fx 中 = E4 B8 AD). UTF-16 viser de en eller to 16-bit-enheder, tegnet bruger inde i en JavaScript-streng (emojis ud over U+FFFF kræver to enheder, et “surrogatpar”: fx U+1F600 = D83D DE00). JS-escape er den anbefalede kildekodeform for tegnet.
Hvad knappen Eksempel indlæser:
Eksemplet hører til den aktive tilstand og er aldrig én fast tekst, fordi én tekst ikke kan dække alle tre. Kod og Inspektør tager begge almindelige tegn, så de får Hello 中文! 🎉 — ASCII, CJK, et fuldbreddetegn og én emoji. Dekod tager escape-sekvenser, og en almindelig sætning indeholder ingen; den ville blive gengivet ord for ord, og tilstanden ville have intet at vise, så Dekod får Say \u4e2d\u6587 \u{1F600} U+0041 \uD83C\uDF89 OK, som indeholder én af hver form, dekoderen accepterer (et \uXXXX-par med små bogstaver, en \u{HEX}-klamme, en U+hex-form, et tilstødende surrogatpar og ord, der ikke er escapes). Linjen under boksene angiver det resultat, der skal ses efter; i Kod følger den også escape-stilen og afkrydsningsfeltet for ASCII, så de tre andre former kan ses ved at trykke Eksempel igen.
Hvad er Unicode?

Unicode er ét samlet katalog, der tildeler hvert tegn i alle skriftsystemer et tal, sit kodepunkt, fra U+0000 til U+10FFFF — 1.114.112 mulige pladser fordelt på 17 planer à 65.536. Det første plan, Basic Multilingual Plane (BMP), rummer tegnene i de fleste levende sprog; de fleste emojis og mange historiske skrifter findes på de højere (“astrale”) planer.

UTF-8, UTF-16 og UTF-32 er ikke konkurrerende tegnsæt, men tre måder at serialisere disse tal til bytes på — inspektørtilstanden viser alle tre for samme tegn, ved siden af JavaScript-escapeformerne.

Unicode navngiver og nummererer tegnene; UTF-8/UTF-16/UTF-32 og \uXXXX-escapes er blot forskellige måder at skrive de samme tal ned på.