Autor Zpráva
Batrachus
Profil *
http://www.jakpsatweb.cz/cestina.html#problem

Do UTF-8 se znaků vejde jenom 65536, ne?
Joker
Profil
Batrachus:
Do UTF-8 se znaků vejde jenom 65536, ne?
Ne, UTF-8 umožňuje uložit jakýkoliv znak Unicode.

Nicméně text v odkazu myslím není přesný ve zvýrazněném:
Unicode je narozdíl od výše zmíněných znakových sad určeno pro všechny světové jazyky najednou, protože znakům přiřazuje čísla až do 16 miliónů (zapisuje se většinou dvěma bajty). Jde o nejmodernější kódování. Všeobecná podpora Unicode je teprve hudbou budoucnosti, ale už lze bez problémů používat stránky kódované v UTF-8. UTF-8 je v prohlížečích podporované dobře.
- U UTF-8 není zrovna jasné, „kolik čísel“ znakům přiřazuje; Teoreticky může být až 4-bajtové, jenže ne všechny kombinace mohou být platné znaky (a některé bity spolyká „režie“).
- Že znaky se většinou zapisují dvěma bajty není pravda. Závisí to na jazyku, ale většinu českého textu budou podle mě tvořit jednobajtové znaky.
- Nejsem si jistý, co je myšleno sdělením, že všeobecná podpora Unicode je teprve hudbou budoucnosti. Myslím, že dnes už Unicode má v oblasti webu velmi dobrou podporu.

Krom toho myslím, že dnes už je situace s kódováním daleko jednoznačnější, takže by ta stránka měla jasně doporučit UTF-8 jako nejvhodnější kódování.
DoubleThink
Profil *
Joker:
Nejsem si jistý, co je myšleno sdělením, že všeobecná podpora Unicode je teprve hudbou budoucnosti.
Je tím myšlena všeobecná podpora. Někdy v době, kdy nebude moje mikrovlnka ukazovat na display "as do konce".
_es
Profil
Joker:
U UTF-8 není zrovna jasné, ‚kolik čísel‘ znakům přiřazuje; Teoreticky může být až 4-bajtové
Teoreticky môže byť až 6-bajtový zápis UTF-8: http://sk.wikipedia.org/wiki/UTF-8

Batrachus:
„Do UTF-8 se znaků vejde jenom 65536, ne?“
Ne, UTF-8 umožňuje uložit jakýkoliv znak Unicode.
No ale napríklad JS umožňuje pracovať len so znakmi do poradového čísla 65 535, takže je otázne, ako by si poradili rôzne časti prehliadača so znakmi mimo BMP.
Chamurappi
Profil
Reaguji na Jokera:
U UTF-8 není zrovna jasné, ‚kolik čísel‘ znakům přiřazuje; Teoreticky může být až 4-bajtové
Celkový rozsah standardu Unicodu je od U+0000 do U+10FFFF, takže místo těch uváděných 16 milionů znaků by jich mělo být maximálně 1114112.

Že znaky se většinou zapisují dvěma bajty není pravda.
Nejspíš tam mělo být, že non-ASCII znaky se zapisují většinou dvěma bajty.

dnes už Unicode má v oblasti webu velmi dobrou podporu
PHP má pořád problémy s BOMem při includování. Což by mimochodem mohla tahle stránka o kódováních (nebo nějaká jiná na JPW) zmínit. Momentálně nemáme žádné standardní doskočiště, kam bychom mohli zmatené oběti PHP a BOMu posílat, většinou končí na české Wikipedii a někdo jim v rychlosti zopakuje návod, jak se BOMu zbavit v PSPadu.
_es
Profil
Chamurappi:
Celkový rozsah standardu Unicodu je od U+0000 do U+10FFFF, takže místo těch uváděných 16 milionů znaků by jich mělo být maximálně 1114112.
Ten štandard sa dá ľahko zmeniť, maximum pre 4-bajtový UTF-8 zápis je 2 097 151, maximum pre 6-bajtový UTF-8 zápis je 2 147 483 647.

Zaujímalo by ma, ako sa JS správa, ak pristupuje k textu so znakmi mimo BMP.
Je nejaký štandard na takúto situáciu?

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0