Wieża Babel, czyli Unicode
Wstęp
Unicode Worldwide Character Standard to uniwersalny standard kodowania znaków w komputerach. Podczas gdy 7-bitowe ASCII (American Standard Code for Information Interchange - zabytek archeologiczny który wciąż ciąży informatyce jak kula u nogi) oferuje 128 znaków, a w pełni jednobajtowe (czyli 8-bitowe) tablice kodowania Windows-1250 czy ISO-8859-2 (standard Latin-2 w Internecie i Linux) dają do dyspozycji 256 podstawowych symboli, dwubajtowy Unicode to ponad 65 tysięcy znaków (pełne 16-bitowe kodowanie to 65 536 możliwych do wykorzystania pozycji !). Daje to możliwość zapisywania dokumentów w niemal wszystkich żywych językach świata.
Twórcy Unicode
Unikod został wprowadzony przez Unicode Consortium - grupę najbardziej liczących się korporacji i instytucji związanych ze światem informatyki, takich przemysłowych liderów, jak Adobe, Apple, Basis Technology, Compaq, Hewlett Packard, IBM, JustSystem, Microsoft, NCR, Oracle, Reuters, Sap, Sun Microsystems, Sybase, Unisys i wielu innych.
Unikod jest wymogiem nowoczesnych standardów takich jak XML, Java, ECMAScript (JavaScript), LDAP, CORBA 3.0, WML, najnowszej wersji języka HTML 4.0. itp., i oficjalnym sposobem implementacji ISO/IEC 10646. Jest wspierany przez wiele systemów operacyjnych, wszystkie nowoczesne przeglądarki internetowe, i wiele innych produktów. Wyjątkowość Unikodu i dostępność narzędzi wspierających go, są wymieniane wśród ważnych ostatnio trendów w technologiach tworzenia oprogramowania.
Obecnie można stosować Unikod w Windows NT/2000/XP, zarówno w MISE jak i Netscape, Linuxie i innych systemach Unix. A ponieważ autor Silva Rerum całkowicie popiera Unicode i odnosi się do niego entuzjastycznie - tak właśnie będą kodowane strony tego sieciowego zakamarka. Co prawda wiąże się to ze wszystkimi wadami, jakie niesie ze sobą pionierstwo - ale nie można stać w miejscu (Czyli się cofać). Jeśli statystyki są prawdziwe, zdecydowana większość osób będzie mogła bez problemów kożystać z WWW Silva Rerum.
Kodowanie znaków
Unicode po części oparty został na istniejących już wcześniej jednobajtowych standardach kodowania (stąd pierwsze 256 pozycji (o wartościach liczbowych rozszerzonych do 16 bitów) jest identyczne z opisanymi przez normę ISO 8859-1 [Latin-1] znakom alfabetu łacińskiego). W dalszej kolejności następują tzw. skrypty (grupy znaków) pozostałych języków: greckiego, cyrylicy, hebrajskiego, arabskiego, itd. oraz symbole specjalne.
Unicode przypisuje unikalny numer z zakresu od 0x0000 do 0xFFFF każdemu znakowi, niezależny od używanej platformy, programu czy języka. W chwili obecnej istnieją trzy podstawowe sposobóy zapisywania znaków. Są to: UTF-16, UTF-8 i UTF-7. Wszystkie używają tej samej tablicy i mają te same możliwości - różnica polega na innym sposobie zapisu. Najbardziej popularny jest UTF-8 i to on jest domyślnym standardem HTML 4.0. XHTML i XML. Wartości Unicode przedstawia się w postaci czterech cyfr szesnastkowych poprzedzonych znakami "U+". Tak na przykład U+0104 oznacza polską literę "Ą". Poniższa tabela prezentuje znaki Unicode kodujące polskie litery z "ogonkami":
|
Ą U+0104 ą U+0105 Ć U+0106 ć U+0107 |
Ę U+0118 ę U+0119 Ł U+0141 ł U+0142 |
Ó U+00D3 ó U+00F3 Ś U+015A ś U+015B |
Ź U+0179 ź U+017A Ż U+017B ż U+017C |
Unicode w praktyce
Unicode ma ogromne znacznie praktyczne, co ilustrują poniższe przykłady: pozwala na wygodne posługiwanie się alfabetami narodowymi bez potrzeby tworzenia oddzielnych stron kodowych dla każdego z nich. Możliwe jest zapisanie wszystkich liter, skomplikowanych znaków diakrytycznych, fonetycznych, ideogramów, itp. wszystkich najważniejszych języków, w tym również języków historycznych (np. sanskrytu). Obecnie opisanych jest w nim już ponad 39 tys. znaków i symboli. Dzięki Unicoe można więc w jednym dokumencie składać teksty między innymi w takich językach:
- Angielski: When the world wants to talk, it speaks Unicode
- Arabski: عندما يريد العالم أن يتكلّم, فهو يتحدّث بلغة يونيكود.
- Chiński uproszczony: 当世界需要沟通时,请用Unicode!
- Chiński tradycyjny: 當世界需要溝通時,請用統一碼(Unicode)
- Duński: Når verden vil tale, taler den Unicode
- Esperanto: Kiam la mondo volas paroli, ĝi parolas Unicode
- Fiński: Kun maailma haluaa puhua, se puhuu Unicodea
- Francuski: Quand le monde veut communiquer, il parle en Unicode
- Grecki: Εαν γαρ και πορευθω εν μέσω σκιας θανάτου
- Hebrajski: כאשר העולם רוצה לדבר, הוא מדבר ב־Unicode
- Hiszpański: Cuando el mundo quiere conversar, habla Unicode
- Japoński: 世界的に話すなら、Unicode です。
- Kataloński: Quan el món vol conversar, parla Unicode
- Koreański: 세계를 향한 대화, 유니코드로 하십시오
- Niemiecki: Wenn die Welt miteinander spricht, spricht sie Unicode
- Norweski: Når verden vil snakke, snakker den Unicode
- Polski: Kiedy świat chce mówić, mówi w Unikodzie!
- Portugalski: Quando o mundo quer falar, fala Unicode
- Rumuński: Când lumea vrea să comunice, vorbeşte Unicode
- Rosyjski: Если мир хочет общаться, он общается на Unicode
- Słowacki: Ko se želi svet pogovarjati, govori Unicode
- Szwedzki: När världen vill tala, så talar den Unicode
- Węgierski: Ha a világ beszélni akar, azt Unicode-ul mondja
- Włoski: Quando il mondo vuole comunicare, parla Unicode
Dodatkowe informacje
- Strona główna Consortium Unicode
- Informacje o najnowszej wersji Unicode
- Tabele z zestawieniem wszystkich znaków Unicode
- Podstawowa informacja techniczna i dane o ISO/IEC 10646