Rovina (Unicode)
Rovina (anglicky plane) ve standardu Unicode je spojitá skupina 65536 (= 216) kódových bodů, které se liší pouze v nejnižších 16 bitech. Unicode předpokládá použití nejvýše 17 rovin identifikovaných čísly 0 až 16desítkově, které odpovídají hodnotám 00–10šestnáctkově prvních dvou číslic v šesticiferném zápisu hodnoty kódového bodu (U+hhhhhh). První rovina (s číslem 0) se nazývá základní vícejazyčná rovina, BMP (anglicky Basic Multilingual Plane), další roviny (1–16) se nazývají „doplňkové“ (anglicky supplementary planes),[1] nebo žertovně „astrální roviny“. Unicode verze 8.0 definuje přiřazení kódových bodů patřících do pěti polorovin.
17 rovin může pojmout 1114112 kódových bodů. Toto podivně vypadající číslo (které není mocninou 2) je maximální hodnotou, kterou lze zobrazit pomocí kódování UTF-16.[2] Předpokládá se, že 1114112 kódových bodů bude stačit, i kdyby se objevila dosud neznámá písma s desítkami tisíc znaků; Unicode Consortium vydalo prohlášení, že uvedený limit nebude nikdy změněn.[3] Kódování UTF-8 bylo navrženo pro kódovaní až 231 kódových bodů (32768 rovin) původního ISO/IEC 10646 kódy délky 1 až 6 bytů; pro 17 rovin stačí posloupnosti maximální délky 4 byty.[4]
Roviny jsou dále rozděleny na Unicode bloky, které na rozdíl od rovin nemají pevnou velikost. Unicode 5.0 definuje 262 bloků s velikostí od 16 kódových bodů (tuto velikost má jedenáct bloků) po 65536 kódových bodů (tuto velikost má Doplňková oblast pro soukromé použití A a Doplňková oblast pro soukromé použití B, které zabírají celou rovinu 15 a 16). Jednotlivé bloky byly předběžně vyhrazeny pro všechna známá současná i historická písma[5] a pokrývají 24 procent možného prostoru kódových bodů.
Počty přiřazených znaků
Rovina | Přidělené kódové body[Pozn 1] | Přiřazené znaky[Pozn 2] |
---|---|---|
0 BMP | 65392 | 55181 |
1 SMP | 14000 | 11833 |
2 SIP | 53424 | 53386 |
3 TIP | 16672 | 799 |
14 SSP | 368 | 337 |
15 PUA-A | 65536 | |
16 PUA-B | 65536 | |
Celkem | 264256 | 120737 |
- ↑ Počet všech kódových bodů v přidělených Unicode blocích.
- ↑ Počet skutečně přiřazených grafických, formátovacích a řídicích znaků (tj. kromě znaků pro soukromé použití, ne-znaků a náhradních kódových bodů).
Základní multilinguální rovina
Základní vícejazyčná rovina, BMP (anglicky Basic Multilingual Plane) je první rovina Unicode (rovina číslo 0); obsahuje znaky pro téměř všechny moderní jazyky a velký počet symbolů. Primárním cílem BMP je unifikace dřívějších znakových sad a znaků pro psaní.
První bloky jsou určeny pro písma používající latinku, další pro ostatní evropská a asijská písma. Většina přiřazených kódových bodů v BMP slouží pro kódování čínštiny, japonštiny a korejštiny (CJK).
Oblasti vyšších (U+D800–U+DBFF) a nižších (U+DC00–U+DFFF) náhradních hodnot (anglicky High and Low Surrogate) jsou rezervovány pro kódování znaků mimo BMP pomocí tzv. náhradních dvojic 16bitových kódů tvořených jednou vyšší a jednou nižší náhradní hodnotou. Samostatným kódovým bodům z tohoto rozsahu nebyly a nikdy nebudou přiřazeny Unicode znaky.
V BMP bylo již 65392 z 65536 kódových bodů přiděleno blokům Unicode, v nepřidělených rozsazích zbývá pouze 144 kódových bodů (64 kódových bodů v rozsahu 0860 až 089F, 64 kódových bodů v rozsahu 1C80 až 1CBF a 16 kódových bodů v rozsahu 2FE0 až 2FEF).
V Unicode 8.0 BMP obsahuje celkem 160 bloků.
Doplňková multilinguální rovina
Doplňková vícejazyčná rovina, SMP (anglicky Supplementary Multilingual Plane) má číslo 1; obsahuje historická písma jako například Lineární písmo B, Egyptské hieroglyfy a klínové písmo, dále historické a moderní hudební notace, matematické alfanumerické symboly, Emoji a jiné sady piktografů, reformované pravopisy jako Shavian a Deseret a herní symboly pro hrací karty, Mahjong a domino.
V Unicode 8.0 je v SMP definováno 93 bloků.
Doplňková ideografická rovina
Doplňková ideografická rovina, SIP (anglicky Supplementary Ideographic Plane) je rovina číslo 2; je určena pro CJK Ideografy, většinou CJK sjednocené ideografy, které nebyly obsaženy ve starších standardech znakových kódů.
V Unicode 8.0 SIP obsahuje následujících 5 bloků:
- CJK sjednocené ideografy - rozšíření B (20000–2A6DF)
- CJK sjednocené ideografy - rozšíření C (2A700–2B73F)
- CJK sjednocené ideografy - rozšíření D (2B740–2B81F)
- CJK sjednocené ideografy - rozšíření E (2B820-2CEAF)
- CJK kompatibilní ideografy - doplněk (2F800–2FA1F); nesjednocené
Nepřiřazené roviny
Roviny 3 až 13: těmto rovinám dosud nebyly přiřazeny žádné znaky. Rovina 3 je předběžně pojmenovaná Terciární ideografická rovina, TIP (anglicky Tertiary Ideographic Plane), ale v Unicode verze 8.0 v ní nejsou žádné přiřazené znaky.[6] Je rezervována pro symboly z písem používaných v nápisech na věštebných kostech, nápisech na broznu, v malém pečetním písmu, přídavné jednotné ideografy CJK a další historická ideografická písma.[7]
Vzhledem k nevelkému počtu dosud nepřiřazených písem se neočekává, že by v dohledné době byly všechny tyto roviny použity, i když počet možných symbolů, které by se mohly objevit mimo kontext písem, může být obrovský. V současnosti je 11 ze 17 rovin nepoužito.
Doplňková rovina pro speciální účely
Doplňková rovina pro speciální účely, SSP (anglicky Supplementary Special-purpose Plane) je rovina číslo 14 (E šestnáctkově); aktuálně obsahuje negrafické znaky. První blok obsahuje znaky pro jazykové jmenovky určené pro identifikaci jazyka, pokud jazyk nemůže být indikován pomocí jiných protokolů (například atribut xml:lang v XML); tyto kódy jsou nedoporučované. Další blok obsahuje selektory pro výběr variant glyfů pro určitý znak, pokud variantu nelze určit z kontextu.
V Unicode 8.0 SSP obsahuje následující 2 bloky:
- Tags (E0000–E007F)
- Selektory variant - doplněk (E0100–E01EF)
Oblasti pro soukromé použití
Doplňková oblast pro soukromé použití-A a Doplňková oblast pro soukromé použití-B (anglicky Supplementary Private Use Area-A and B) jsou roviny 15 a 16; tyto roviny jsou volné pro přiřazení znaků jinými institucemi než je Mezinárodní organizace pro normalizaci a Unicode Consortium. Ve fontech mohou být použity pro glyfy neobsažené v Unicode, například pro slitky (ligatury), stavební bloky jiných glyfů nebo pro glyfy, které zatím součástí Unicode nejsou. Tyto znaky budou mít omezenou interoperabilitu; software a fonty podporující Unicode pravděpodobně nebude podporovat přiřazení znaků jiných výrobců.
Reference
V tomto článku byl použit překlad textu z článku Plane (Unicode) na anglické Wikipedii.
- ↑ Unicode Consortium Glossary—Supplementary Planes
- ↑ Hodnota nejvyšších čtyř bitů (wwww) v náhradním páru je o jedničku menší než číslo Unicode roviny, tj. Unicode rovina = wwww + 1. Nejvyšší hodnota, kterou wwww může reprezentovat je 1111binárně = Fšestnáctkově = 15desítkově. Rovina (15 + 1)=16 je proto nejvyšší rovina, kterou lze reprezentovat pomocí náhradních párů. Díky tomu lze náhradním párem reprezentovat kódový bod nejvýše 10 FFFFhex. Viz Tabulka 3.5 „UTF-16 Bit Distribution“ ve standardu Unicode http://www.unicode.org/versions/Unicode6.0.0/UnicodeStandard-6.0.pdf
- ↑ [cit. 2014-09-27]. Dostupné online.
- ↑ Viz Tabulka 3.6 „UTF-8 Bit Distribution“ ve standardu Unicode http://www.unicode.org/versions/Unicode6.0.0/UnicodeStandard-6.0.pdf
- ↑ Unicode roadmaps
- ↑ Unicode Data [online]. Dostupné online.
- ↑ TIP Roadmap
Média použitá na této stránce
A graphical representation of Unicode's Supplementary Ideographic Plane (SIP). Each numbered box represents 256 code points.
A graphical representation of Unicode's Basic Multilingual Plane (BMP). Each numbered box represents 256 code points.
A graphical representation of Unicode's Supplementary Multilingual Plane (SMP). Each numbered box represents 256 code points.