Unicode: Porovnání verzí
Smazaný obsah Přidaný obsah
→Externí odkazy: úklid externích odkazů |
Zrušen anglický překlad, v tomto případě je úplně zbytečný. značky: editace z Vizuálního editoru editace z mobilu editace z mobilního webu |
||
(Není zobrazeno 19 mezilehlých verzí od 8 dalších uživatelů.) | |||
Řádek 1:
[[Soubor:New Unicode logo.svg|náhled|180px|Logo Unicode konsorcia]]
'''Unicode'''
| titul = The Unicode Standard: A Technical Introduction
| url = http://www.unicode.org/standard/principles.html
| datum přístupu = 2010-03-16
}}</ref> Poslední verze je ''Unicode
Úspěch Unicode v unifikaci znakových sad vedl k jeho rozšíření a převládajícímu používání pro [[Internacionalizace a lokalizace|internacionalizaci a lokalizaci]] [[Software|počítačového softwaru]]. Unicode je implementován mnoha technologiemi, včetně moderních [[operační systém|operačních systémů]], [[Extensible Markup Language|XML]], [[Java (programovací jazyk)|programovacím jazykem Java]] a [[.NET]] Frameworkem firmy [[Microsoft]].
Řádek 13:
== Historie ==
Ke konci osmdesátých let 20. století vznikla naléhavá potřeba sjednotit různé kódové tabulky znaků pro národní abecedy. Pro [[čeština|český jazyk]] se používalo nejméně 5 různých [[Kódování češtiny|kódování]] ([[Kód Kamenických|kódování bratří Kamenických]], [[CP852|PC Latin 2]], [[Windows-1250]], [[ISO 8859-2|ISO Latin 2]], [[KOI#KOI8-CS|KOI8-CS]]<ref>[http://www.cestina.cz/kodovani/ Přehled kódování češtiny]</ref>) a podobná situace byla ve všech jazycích, které nevystačily se základní 7bitovou tabulkou [[ASCII]] znaků, což přinášelo problémy
V té době vznikly současně dva projekty pro vytvoření jednotné univerzální kódovací tabulky znaků. Byl to projekt [[ISO 10646]] organizace [[Mezinárodní organizace pro normalizaci|ISO]] a projekt ''Unicode''. Norma ISO definuje tzv. [[UCS]] – ''Universal Character Set''. Kolem roku [[1991]] došlo k dohodě a projekty spojily své úsilí na vytvoření jednotné tabulky. Oba projekty stále existují a publikují své [[standard]]y samostatně, ale tabulky znaků jsou kompatibilní a jejich rozšiřování je koordinováno.
Řádek 28:
* [http://www.unicode.org/versions/Unicode3.0.0/ Unicode '''3.0'''] ([[1999]], [[2000]], odpovídá normě ISO 10646-1:2000), [http://www.unicode.org/versions/Unicode3.1.0/ Unicode '''3.1'''] ([[2001]]), [http://www.unicode.org/versions/Unicode3.2.0/ Unicode '''3.2'''] ([[2002]])
* [http://www.unicode.org/versions/Unicode4.0.0/ Unicode '''4.0'''] ([[2003]], odpovídá třetí verzi ISO 10646:2003), [http://www.unicode.org/versions/Unicode4.1.0/ Unicode '''4.1'''] ([[2005]])
* [http://www.unicode.org/versions/Unicode5.0.0/ Unicode '''5.0'''] ([[2006]]), [http://www.unicode.org/versions/Unicode5.1.0/ Unicode '''5.1'''] ([[2008]]), [http://www.unicode.org/versions/Unicode5.2.0/ Unicode '''5.2'''] ([[2009]]) – celkem obsahuje
| titul = Unicode Statistics
| periodikum = www.unicode.org
| url = https://www.unicode.org/versions/stats/
| datum přístupu = 2024-04-03
}}</ref>
* [https://web.archive.org/web/20130208174646/http://www.unicode.org/versions/Unicode6.0.0/ Unicode '''6.0'''] ([[2010]]), [http://www.unicode.org/versions/Unicode6.1.0/ Unicode '''6.1'''] ([[2012]]), [http://www.unicode.org/versions/Unicode6.2.0/ Unicode '''6.2'''] ([[2012]]), [http://www.unicode.org/versions/Unicode6.3.0/ Unicode '''6.3'''] ([[2013]])
* [http://www.unicode.org/versions/Unicode7.0.0/ Unicode '''7.0'''] ([[2014]]) – rozšiřuje množinu znaků o asi 250 znaků [[emodži]].<ref>{{Citace elektronického periodika
Řádek 59 ⟶ 64:
* [http://www.unicode.org/versions/Unicode12.0.0/ Unicode '''12.0'''] ([[2019]])
* [http://www.unicode.org/versions/Unicode13.0.0/ Unicode '''13.0'''] ([[2020]]) – definuje 143859 znaků ve 154 písmech
* Unicode '''14.0''' ([[2021]]) – definuje 144697 znaků ve 159 písmech<ref>[https://www.unicode.org/versions/Unicode14.0.0/ Unicode 14.0.0]</ref>
== Principy standardu Unicode ==
* '''Jednotnost''' – konstantní šířka znaků (UTF-32) dovoluje efektivní hledání,
* '''Univerzálnost''' – zahrnutí všech znaků, které by mohly být využity při výměně textů – především ty, které už byly definovány v hlavních mezinárodních, národních a průmyslových znakových sadách.
* '''Jednoznačnost''' – jakákoli 16bitová (dnes 32bitová) hodnota zastupuje v jakémkoliv kontextu stejný znak.
Řádek 68 ⟶ 74:
Standard Unicode se oproti ISO 10646 navíc zabývá implementací algoritmů pro písma psaná zprava doleva (např. [[arabština]]), podporou oboustranných textů (jako např. směs hebrejštiny a latinky), algoritmy pro [[abecední řazení|řazení]] a porovnávání textů.
Unicode
V souvislosti s jazyky jako je [[wachánština]], jejichž ortografie založené na [[latinka|latince]] používají několik znaků [[cyrilice]] či [[řecké písmo|řeckého písma]], byla řešena otázka, zda kvůli nim do Unicode přidat znaky jako ''latinská [[delta (písmeno)|delta]]'', ''latinská [[théta]]'' či ''latinské [[Ы|jery]]'' jako latinské protějšky těchto řeckých a cyrilských písmen.<ref name="Jim Allan, Unicode">Jim Allan, [https://www.mail-archive.com/unicode@unicode.org/msg14260.html mixed-script writing systems], 2002-11-15, cit. 2014-08-27</ref> Jeden z názorů na tuto problematiku je, že požadavek, aby jazyk byl zapisován pouze znaky jednoho písma, je umělý, a že v minulosti si různé jazyky půjčovaly písmena i z jiných písem, takže na soubor písmen latinky, cyrilice a řeckého písma může být nahlíženo jako na latinsko-cyrilsko-řecké metapísmo, a tedy pro zápis těchto jazyků používat písmena v Unicode již obsažená místo vytváření nových.<ref>Kenneth Whistler, [https://www.mail-archive.com/unicode@unicode.org/msg14261.html mixed-script writing systems], 2002-11-15, cit. 2014-08-27</ref> I v případě, kdy by tato písmena byla zavedena, lze očekávat, že by i nadále pro zápis byly používány řecké a cyrilské verze těchto písmen, protože latinské verze by byly obsaženy pouze v malém počtu fontů.<ref name="Jim Allan, Unicode" />
Řádek 97 ⟶ 103:
* '''[[CJK]]'''
* '''Symboly''': alfanumerické, kombinující diakritika, technické symboly, matematické symboly, ostatní symboly
* '''Speciální''': kontrolní znaky, osobní použití (v tabulce v PUA – „Private Use Area“), náhradní symboly, „ne-znaky“, rezervované znaky
=== Mapa Unicode ===
Řádek 107 ⟶ 113:
Prvních 128 znaků (tj. sedmibitové kódy) obsahuje znakovou sadu [[ASCII]]. Osmibitové kódy (tj. prvních 256 znaků) obsahují znakovou sadu [[ISO 8859-1]] (ISO 8859-1 obsahuje ASCII).
V Unicode jsou také rezervovány místa pro '''vlastní znaky'''. Pro tento účel byla v Unicode tabulce rezervována tzv. ''PUA sekce'' (Private Use Area), ve které je možné využít volné kódy pro osobní potřebu. Takto je možné, aby tvůrci fontů vkládali k písmu vlastní grafiky jako jsou loga apod.
Je nutné si uvědomit, že v Unicode jsou to trvale volná místa a přináší jen '''jediný benefit''' – že nebudou zaměněny za jiný znak. V případě změny za cizí font je obvykle znak zvýrazněný jako chybějící.
Použití vlastních znaků v textu lze doporučit, jen pokud mají '''dekorativní funkci'''. Důvodem je jejich omezení v reprodukování. '''Vlastní znaky''' nelze volně přes internetovou síť dále reprodukovat (zobrazit, tisknout, číst hlasem), ale ani vyhledat. Existence těchto znaků může být spojená pouze s konkrétním fontem. Pokud se dokument bude pohybovat ve známém prostředí, např. intranet, tak s vlastním, resp. firemním fontem lze zajistit alespoň vizuální reprodukovatelnost (zobrazení, tisk) těchto znaků.
Zajistit správné zobrazení na internetové síti lze pomocí ''uzavřeného formátu'', například v '''PDF souboru'''. Tento elektronický dokument by však měl splňovat kritéria nejen pro správné zobrazení, ale také například čitelnost pro vyhledávače, reprodukovatelnost přes screen-readery pro zrakově postižené apod. Zajistěte při použití vlastních znaků, aby nenesly „čtenou“ informaci a měly jen dekorativní funkci.
{{Bloky Unicode}}
=== Kódování ===
{{Kódování Unicode}}
Existuje několik různých způsobů, jak [[kód]]ovat řetězce složené ze znaků (kódových bodů) Unicode. Unicode řetězec je sekvencí kódových bodů Unicode. Způsob jak tuto sekvenci uložit do paměti počítače nebo serializovat na disk se označuje jako kódovací znakové schéma (Character Encoding Scheme), které
* UTF-8
* UTF-16 (UTF-16BE, UTF-16LE)
Řádek 156 ⟶ 169:
=== Čeština ===
Na rozdíl od dřívějších osmibitových tabulek znaků jako je [[Kód Kamenických|bratří Kamenických]], [[Latin 2]], [[Windows-1250]] či [[ISO-8859-2]] lze všechny znaky zobrazit zároveň; v jednom textu lze tedy kombinovat např. [[Čeština|češtinu]] ([[latinka]]), [[Ruština|ruštinu]] ([[cyrilice]]) a [[Řečtina|řečtinu]] ([[alfabeta]]). Pro reprezentaci českých znaků existují dva způsoby. Buď lze použít "předkomponovaný" (precomposed) znak, tedy např. pro dlouhé A kód U+00C1, nebo je možné tento znak složit jako sekvneci <U+0041, U+0301>. Tedy ze znaku A (kód U+0041) a znaku COMBINING ACUTE ACCENT (kombinační dlouhý přízvuk, kód U+0301). Kombinační diakritický znak se vkládá za znak, který modifikuje. Z toho vyplývají možné problémy při porovnávání řetězců, tzn. řetězce je třeba před porovnáváním normalizovat.
Základní formy normalizace jsou: NFD (kanonická dekompozice), NFC (kanonická kompozice), NFKD (kompatibilní dekompozice), NFKC (kompatibilní kompozice). Více viz přílohu [http://unicode.org/reports/tr15/ Unicode Normalization Forms] standardu Unicode.
Řádek 219 ⟶ 232:
|-
|}
'''Tabulka českých diakritických znamének'''{{Poznámka|Diakritická znaménka uvedená v tabulce, vystupující samostatně, mají kódy jiné.}}
{| class="wikitable"
!Znak
Řádek 227 ⟶ 240:
|-
|´
|
|čárka nad písmenem
|U+0301
Řádek 236 ⟶ 249:
|U+030C
|-
|
|COMBINING RING ABOVE
|kroužek
Řádek 243 ⟶ 256:
== Odkazy ==
=== Poznámky ===
{{Poznámky}}
=== Reference ===
{{Překlad|en|Unicode|678771760}}<references />
Řádek 254 ⟶ 270:
* [https://home.unicode.org/ unicode.org] – oficiální stránky (anglicky)
* [https://decodeunicode.org/ DecodeUnicode] – Unicode wiki (anglicky, německy)
* [https://
{{Seznam písemných systémů}}
|