Metaproblem ke konferenci samotne

Ing. Pavel PaJaSoft Janoušek janousek na fonet.cz
Úterý Srpen 31 10:36:35 CEST 2004


> -----Original Message-----
> From: Michal Kubecek [mailto:mike na mk-sys.cz] 
> To byste s UTF-16 nebyl schopen pokrýt celý rozsah Unicode, jehož
> prostor je definován jako 32-bitový. Prakticky sice jsou sice všechny

	Já o UNICODE nevím zdaleka tolik co jiní, na druhou stranu však
vím, ze UNICODE norma není jedna, je jich několik v různých verzích.
Dokonce existuje v písemné podobě v podobě knih, které čítají tisíce
stran. Unicode není JEDEN standard, ale celá množina standardů (takže
tak přimočaré a jednoduché, jak tady někteří malují to rozhodně není).
UNICODE je jak 16-ti bit, tak 32-bitové s tím, že se samozřejmě v "int"
hodnotě ty znaky shodují.

	Domnívám se (ale mohu se mýlit), že UNICODE v žádné podobě nezná
nic jako šířku znaku proměnlivé délky (obdoba standardu, který byl i v
MS Windows PŘED nástupem UNICODE)... ono je to docela opačně než si
mnozí myslí, ono to není tak, ze Bill zaregistroval, naopak byl to Bill,
který tento problém, byť po svém, musel řešit dávno dříve než jsme
pomalu vyrostli z plínek (ano vím, že MS Windows 1.0 byly na světě v
roce 1985 a nebyly prakticky použitelné), protože třeba arabskou či
"asijskou" podporu ve Windows má dost dlouho a tyto jazykové mutace
musel taktéž nějak zakódovat.

	Takže to nebylo tak, že osvícený svět se usnesl na UNICODE,
který MS převzal, když už nemohl jinak, on to daleko dříve udělal po
svém, protože v podstatě jako jedinný na světě dodával krabicový
software, který se byl schopen s těmito zvláštnostmi nějak poprat... -
nejsem přímo zastáncem MS, ale z technického hlediska mu v tomto případě
rozumím.

	První zmíňky o standardu UNICODE a jeho praktickém dopadu se v
mém "okolí" datují okolo roku 1991 či 2 a to zejména s nástupem (spíše
přípravou na) Win32, které je nativně 16-bit UNICODE (od toho W(ide) a
A(scii) verze veškerého API)...

	Takže pánové, než začnete zase akademicky debatovat na vysoké
úrovni, prosím srovnejte si fakta, normy apod. a pokračujte, takto jeden
mluví o voze a druhý o koze...

> Analogicky to funguje i pro delší, např. 32-bitová čísla. Dokud
> pracujete na jedné platformě, je to jedno, ale jakmile data vyměňujete
> mezi platformami, musíte se na jedné variantě dohodnout. Protože UTF-8

	Měl jsem za to, že jedna z podnorem UNICODE řeší i toto a tedy
přenos mezi MAC a Intel je bez problémů (přestože Motorola vs Intel)

> se u UTF-16 ujal: na začátek souboru přidat značku, podle níž se to
> pozná. Pro tyto účely se používá znak "zero width 
> non-breakable space",

	Nedonalá, alespoň v MS Windows dříve než nastoupil
sofistikovanější alg. (Win2k?) když ta značka (2 bytes) nebyla, tak se
vše považovalo za ASCII, něco jako UNICODE 32-bit se naprosto nebralo v
potaz...

> Na druhou stranu nevím o žádném důvodu, proč by UTF-16 bylo v principu
> lepší než UTF-8. Praktickým důvodem může být samozřejmě to, že ve
> Windows se dává přednost UTF-16 - nejsem si ale jistý, jestli to
> fakticky není spíš UCS-2, tj. kódování, které používá vždy právě dva
> byty na znak, ale obsáhne pouze rozsah od U+0000 do U+FFFF.

	No já bych řekl hlavně to, že MS Windows něco jako UTF8 vůbec
neznají...

PS: Mojě povědomí o UNICODE je vesměs obecné, je možné že některé závěry
zde prezentované jsou chybné, ale právě proto, že (ač se to na první
pohled nezdá) je v tom tak velký chaos, tak nemám čas ani náladu se tím
do hloubky zaobírat, protože každý si UNICODE představuje po svém a
implementaci CELÉHO UNICODE do dnes nemá ŽÁDNÁ SW firma na světě (pokud
ano, chci vědět kdo a jaká je cena její implementace, je-li prodejná),
ona to fakt není sranda...

-------------------------------------------------------------------
Ing. Pavel Janousek (PaJaSoft)             FoNet, spol. s r. o.
Technicka podpora, Intranet/Internet     Sokolova 67, 619 00 Brno
E-mail: mailto:Janousek na FoNet.Cz         Tel.: +420  5  4324 4749
WWW:    http://WWW.FoNet.Cz/           E-mail: mailto:Info na FoNet.Cz
-------------------------------------------------------------------



Další informace o konferenci Linux