Unicode

A Wikipédiából, a szabad enciklopédiából
Ugrás a navigációhoz Ugrás a kereséshez
A Unicode Consortium logója

A Unicode (ejtsd: junikód) a különböző írásrendszerek egységes kódolását és használatát leíró nemzetközi számítástechnikai iparági szabvány. A Unicode nemcsak a karakterkódolással, hanem a karakterek osztályozásával, megjelenítésével és használatával is részletesen foglalkozik. Az Unicode 10.0-s kiadása 136 690 karakter helyét és szerepét rögzíti, amellyel 139 különböző eredetű modern és történelmi ábécét, valamint számos szimbólumkészletet fed le.[1]

A Unicode szabványt a Unicode Consortium gondozza. Legutolsó kiadása a 2017 júniusában megjelent Unicode 10.0. A Unicode-ot az ISO/IEC 10646 szabvánnyal együtt fejlesztik, és mindkettő azonos kódkiosztású karakterkészlettel rendelkezik.

A Unicode meghatározó szerepet játszik a szoftverek nemzetközivé tételében és honosításában. A szabványt az új technológiák, köztük a modern operációs rendszerek, az XML és a legtöbb modern programozási nyelv támogatja.

Történet[szerkesztés]

A régi, legfeljebb csak néhány tucat előre rögzített betűt tartalmazó karakterkódolásokat a hardverfeltételek és az igények változásával fokozatosan felváltotta a Unicode, ami már nem szab korlátot a különböző jelek együttes használatának.

Kódtábla[szerkesztés]

A Unicode szabvány 16 biten tárolt (legfeljebb 65 536 karaktert tartalmazó) síkokra osztja az Unicode kódpontokat. A 17 síkon összesen 1 114 112 kódpont található, amelyből a szabvány legutóbbi változata mintegy 137 ezer kódpontot foglalt le a karakterek számára. Az első, ún. „alapszintű többnyelvű sík” (BMP – Basic Multilingual Plane) mintegy 64 ezer karakterhelyén a legtöbb ma használatos jelet meg lehet találni.

Kódolás[szerkesztés]

A Unicode szövegeket különböző karakterkódolással tárolhatjuk. A Unicode szabvány meghatározza az UTF-8, UTF-16 és az UTF-32 karakterkódolást, és számos más kódolás is használatban van. A leggyakrabban használt kódolások az UTF-8, UTF-16 és UCS-2, utóbbi az UTF-16 elődje.

A weboldalak és dokumentumok legelterjedtebb Unicode karakterkódolása az UTF-8. Az UTF-8 változó hosszúságú kódolással (1–4[2] byte) képezi le a Unicode karaktertáblát. 1 byte-on tárolt kódjai az ASCII-nak felelnek meg, így a latin betűs UTF-8 kódolású szövegek a régi ASCII környezetben is olvashatóak maradnak. Az UTF-8-ban kódolt latin betűs szövegek ugyanakkora, vagy ékezetes betűk használata esetén csak kicsivel nagyobb helyet foglalnak el, mint a korábban elterjedt 8 bites karakterkészletek használatakor.

Az UCS-2 két byte-ot használ minden egyes karakterhez, de így csak az első 65 536 kódpont, az alapszintű többnyelvű sík érhető el vele, azaz az eddig definiált Unicode karakterek kevesebb, mint fele. Ezért az UCS-2 elavult, bár még mindig széles körben használják.

Az UTF-16 az UCS-2 kiterjesztése. Ugyanazt a 16 bites kódolást használja az alapszintű többnyelvű sík elérésére, és egy 4 byte-os kódolást a többi síkhoz. Ezért egy UCS-2 kódolású szöveg egyben UTF-16 kódolású Unicode szöveg is.

Az UTF-32 (más néven UCS-4) 4 byte-ot használ minden karakterhez. Az UCS-2-hez hasonlóan minden karakter ugyanakkora helyet foglal el, megkönnyítve ezzel a karakterek indexelését, de ellentétben az UCS-2-vel, az UTF-32 képes minden Unicode kódpontot kódolni. Mivel azonban az egyes karakterek négy byte-ot használnak, az UTF-32 jóval több helyet foglal el, mint a többi kódolás, és ezért csak ritkábban, meghatározott célra használják.

A Unicode használata[szerkesztés]

Operációs rendszerek[szerkesztés]

A mai Linux, Mac OS X és Windows operációs rendszerek alapértelmezett Unicode támogatással rendelkeznek. A belső feldolgozás Unicode-alapú, a tárolás is legtöbbször, a megjelenítés pedig az operációs rendszer és alkalmazásainak képességétől, például a betűkészlet lefedettségétől függ.

Beviteli módszerek[szerkesztés]

Mivel a billentyűkiosztásoknak nem lehet minden karakterhez egyszerű kombinációjuk, több operációs rendszer kínál alternatív beviteli lehetőségeket tetszőleges karakter elérésére.

Az ISO 14755 szabvány szabályozza a Unicode karakterek bevitelének módszereit. Az alap metódus szerint egy kezdőszekvencia után közvetlenül a hexadecimális kód megadása szükséges, majd ezt egy zárószekvencia követi. Ezenkívül specifikálták a képernyőről történő kiválasztást is, ahol a karakterek táblázatos formában szerepelnek a képernyőn, például egy karaktertábla programban.

Web[szerkesztés]

A Unicode támogatása már a HTML 4-ben megjelent az UTF-8 karakterkódolással. A ma használatos böngészőknek a magyar írásjelek (kezdő-záró „idézőjel”, gondolatjel) helyes megjelenítése sem okoz már gondot.

Jegyzetek[szerkesztés]

  1. http://blog.unicode.org/2017/06/announcing-unicode-standard-version-100.html
  2. Az eredeti tervek szerint a maximális byte-szám 6, amelyet a végleges szabványban végül 4-re csökkentettek.

Források[szerkesztés]

További információk[szerkesztés]

  • Unicode.ORG – A Unicode szabványosító testület és a különböző Unicode szabványok honlapja (angolul)
  • DecodeUnicode – Unicode wiki, mintegy 100 ezer betűképpel (németül) (angolul)

Kapcsolódó szócikkek[szerkesztés]