╚e╣tina / cestina

Diakritika na HTML strßnkßch.

O problΘmech s Φesk²mi fonty pφ╣u na strßnce o formßtovacφch chybßch. KonkrΘtnφ znaky r∙zn²ch k≤dovßnφ lze najφt v k≤dov²ch tabulkßch. Rozpoznat problΘm m∙╛ete na diagnostickΘ strßnce. V tomto textu vyjad°uji pouze vlastnφ nßzory a poznatky.

Co je k≤dovßnφ - NejΦast∞j╣φ k≤dovßnφ - Argumenty pro Windows-1250 - Argumenty pro ISO 8859-2 - R∙znß °e╣enφ - Nastavenφ v prohlφ╛eΦi - AutomatickΘ meta nastavenφ - P°ek≤dovßnφ na serveru - Altavista a spol. - Unicode - Specißlnφ znaky - Opera - Mozilla, doctype a windows-1250 - P°ek≤dovßnφ

Co je k≤dovßnφ

PoΦφtaΦ chßpe ka╛dΘ pφsmenko jako Φφslo od 0 do 255 (jeden bajt).

AmeriΦanΘ a AngliΦanΘ (a programßto°i) si vystaΦφ se 128 znaky, proto╛e se John Wicliff (britskß obdoba Mistra Jana Husa) nepletl do v∞cφ, kter²m nerozum∞l, Φili nemajφ nabodenφΦka. T∞mto zßkladnφm 128 znak∙m se °φkß ASCII.

Dal╣φmi Φφsly od 128 do 255 se oznaΦily diakritizovanΘ znaky jazyk∙ zßpadnφ Evropy, a tak vznikl k≤d Latin-1. V n∞m ΦeskΘ znaky nejsou (s v²jimkou ß a φ).

Pro neazbukovΘ jazyky st°ednφ a v²chodnφ Evropy vznikly r∙znΘ k≤dy, kterΘ zachovßvajφ v²znam prvnφch 128 znak∙ ASCII (normalni pismena), ale dal╣φch 128 znak∙ si definujφ po svΘm. A prßv∞ r∙znß p°i°azenφ diakritizovan²ch znak∙ Φφsl∙m od 128 do 255 se oznaΦujφ jako k≤dovßnφ.

ProblΘm:

Hodn∞ r∙zn²ch lidφ si usmyslelo, ╛e ud∞lajφ k≤dovßnφ Φe╣tiny, jenom╛e to ka╛d² ud∞lal jinak.

NejΦast∞j╣φ k≤dovßnφ

V poslednφ dob∞ p°evlßdajφ dv∞ k≤dovßnφ Φe╣tiny:

  1. ISO 8859-2
  2. Windows-1250

ISO 8859-2 je, jak u╛ nßzev napovφdß, k≤dovßnφ standardn∞j╣φ, pou╛φvanΘ na Unixu a na Linuxu, ale i v mnoha windowsßck²ch programech. N∞kdy se oznaΦuje jako Latin 2, Microsoft jej naz²vß "St°edoevropskΘ jazyky (ISO)".

Windows-1250 je preferovßno na Windowsech a jeho obliba roste zejmΘna kv∙li tomu, ╛e jej pou╛φvß FrontPage jako zßkladnφ k≤dovßnφ (t°eba╛e se dß p°epnout).

Dal╣φ k≤dovßnφ jako k≤d brat°φ Kamenick²ch, Mac nebo Φe╣tina pro Dos se dnes ji╛ na webu u╛φvajφ tak z°φdka, ╛e jim nynφ nebudu v∞novat pozornost. K≤d Unicode je zase hudbou vzdßlenΘ budoucnosti.

Rozdφly

M∙╛ete si prostudovat kompletnφ grafickΘ znßzorn∞nφ znak∙ jednotliv²ch k≤dovßnφ v tabulkßch.

Nejpou╛φvan∞j╣φ k≤dovßnφ ISO 8859-2 a Windows 1250 se v oblasti Φesk²ch znak∙ od sebe odli╣ujφ pouze v ╣esti znacφch -- ╣, ╛, ╗, ⌐, «, ½. Pro zßjemce jsem napsal rozdφly k≤dovßnφ mezi ISO a WIN pro nahrazovßnφ altem.

Argumenty pro windows-1250

Notepad (nejjednodu╣╣φ tex╗ßk, ve kterΘm se to p°epnout nedß) pou╛φvß pouze k≤dovßnφ windows-1250. Kdo chce tedy pou╛φvat pro ·pravy strßnek Notepad (a t°eba jß chci), ten bu∩ musφ pou╛φvat windows-1250, nebo se nauΦit t∞ch psßt v ISO pßr znak∙ pomocφ altu s Φφsly.

MnohΘ vyhledßvaΦe publikujφ v²sledky primßrn∞ v k≤du Windows (konkrΘtn∞ zji╣t∞no u jinak perfektnφho Redboxu). Proto╛e si s k≤dovßnφm nelßmou hlavu, vypisujφ ·ryvky v tom k≤du, ve kterΘm ho na╣ly, tak╛e je to n∞kdy trochu neΦesky.

Jste-li tvorovΘ windowsßΦtφ (a budete nav╛dy), pou╛φvejte k≤dovßnφ Windows. Dostanete se do men╣φho poΦtu problΘm∙.

Argumenty pro Iso-8859-2

Pokud nebudete strßnky psßt v Notepadu nebo nejste zam∞stnanci firmy Mal²m∞kk², rozhodn∞ doporuΦuji k≤dovßnφ ISO 8859-2. Jß jsem d°φve pou╛φval Windows-1250, nynφ ISO 8859-2.

Zßsadnφ vtip je v tom, ╛e ISO je k≤dovßnφ v²hradn∞ pou╛φvanΘ v Unixu a Linuxu. Samoz°ejm∞ ╛e UnixovskΘ a LinuxovskΘ programy windowsßckΘ k≤dovßnφ n∞jak zvlßdnou (p°inejhor╣φm se ty programy trochu p°epφ╣ou), ale ned∞lß to dobrotu.

Dal╣φm sice pochybn²m (p°esto Φasto uvßd∞n²m) argumentem je fakt, ╛e je to k≤dovßnφ "standardnφ".

R∙znß °e╣enφ

Fajn, mßme tady n∞kolik r∙zn²ch k≤dovßnφ. Text se prost∞ napφ╣e v n∞kterΘm z nich. Te∩ jde o to JAK °φci prohlφ╛eΦi u Φtenß°e (obecn∞ klientovi), v jakΘm k≤dovßnφ text je, aby se to sprßvn∞ zobrazilo:

P°epφnßnφ v prohlφ╛eΦi

Modernφ prohlφ╛eΦe (od verze tu╣φm 3, krom∞ Opery) umo╛≥ujφ p°ek≤dovat text p°φmo na klientskΘm poΦφtaΦi. Prost∞ si Φtenß° vybere k≤dovßnφ (je to n∞kde v nabφdce, v∞t╣inou zobrazit / k≤dovßnφ) a zkou╣φ r∙znß k≤dovßnφ, dokud to nenφ Φesky. To je relativn∞ jednoduchΘ. ProblΘm je se star╣φmi prohlφ╛eΦi, jenom╛e ty dnes, doufßm, u╛ skoro nikdo nepou╛φvß.

V∞t╣φ problΘm je s u╛ivateli. Nemylme se -- jen mizivΘ procento u╛ivatel∙ umφ k≤dovßnφ p°epnout, t°ebas je to prostΘ. Tak╛e lep╣φ je to nastavovat automaticky.

AutomatickΘ meta nastavenφ

Aby nemusel Φtenß° m²ch strßnek n∞kolikrßt zkou╣et a p°epφnat, aby zjistil, v jakΘm k≤dovßnφ to mßm, umis╗uji do hlaviΦky strßnek jeden meta tag:
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-2">
nebo: <meta http-equiv="Content-Type" content="text/html; charset=windows-1250">

╪φkß to, ╛e strßnka je psßna v tom kterΘm k≤dovßnφ. Prohlφ╛eΦ to pochopφ jako ekvivalent http hlaviΦky a text nabφdne v onom k≤dovßnφ.

Zadßvßnφ tohoto tagu nabφzejφ n∞kterΘ editory automaticky (nap°φklad dob°e nastaven² FrontPage 2000: Tools / Web Settings / Language / Default HTML Encoding).

Pozor, fatßlnφ problΘmy nastupujφ, pokud do toho tagu napφ╣ete ╣patn² k≤d. Pak si Φesky nep°eΦte nikdo (n∞kde to pak nejde p°epnout) a je to mnohem hor╣φ, ne╛ tam nenapsat nic.

P°ek≤dovßnφ na serveru

Pokud server i klient pou╛φvajφ http protokol 1.1 a na serveru b∞╛φ program pro automatickou zm∞nu k≤du, nenφ t°eba se starat v∙bec o nic. Je-li tomu tak, vφ zpravidla sprßvce serveru.

NejlΘpe to ╣lape na serverech Apache, pokud je tam doinstalovßn modul Φe╣tiny. Nejoblφben∞j╣φ alternativnφ program pro jinΘ servery je SaCzech [sßΦek] od Pavla Satrapy, kter² vyu╛φvß CGI.

Zjistil jsem, ╛e takov² program je mo╛nΘ vyu╛φvat, pokud publikujete strßnky nap°φklad na serveru www.volny.cz.

Jak to funguje

Klient za╣le serveru po╛adavek zßrove≥ se seznamem r∙zn²ch k≤dovßnφ, kterß akceptuje. Sever strßnku do n∞jakΘho takovΘho p°evede a po╣le je klientovi. P°ipojφ do hlaviΦky text
text/html; charset=windows-1250 , t°eba. Klient pak u╛ vφ.

DrobnΘ problΘmy nastßvajφ p°i uklßdßnφ v cache pam∞tech nebo na offline prohlφ╛enφ. Serverov∞ upravenΘ strßnky toti╛ podle mΘ zku╣enosti nejsou uklßdßny.

Fatßlnφ problΘm

Pokud server pou╛φvß automatickΘ p°ek≤dovßnφ a zßrove≥ uvßdφte do hlaviΦky meta tag content-type, m∙╛e nastat velk² problΘm, proto╛e meta deklarace bude vlastn∞ dvojφ, co╛ prohlφ╛eΦ zmate. V tom p°φpad∞ nastßvß rozsypan² Φaj. Tak╛e se bu∩to ujist∞te, ╛e na serveru nic takovΘho neb∞╛φ, nebo meta hlaviΦku rad∞ji nezadßvejte. Co mi o tom napsal Jirka Kosek:

"ProblΘm je v tom, ╛e ... SaCzech neumφ odstra≥ovat meta tag potΘ, co provede p°ek≤dovßnφ. Umφ to t°eba csacek."

Altavista a spol.

Nevφm p°esn∞, jak hledat ΦeskΘ texty v zahraniΦnφch prohledßvaΦφch. Vφm ale, ╛e jsou s tφm problΘmy, proto╛e ty stroje nezajφmß k≤dovßnφ. Jde pak o to, v jakΘm k≤dovßnφ bude u╛ivatel zadßvat dotaz. (Obecn∞ se dß °φci, ╛e zahraniΦnφ roboti zobrazujφ v ISO, Φe╣tφ roboti Φast∞ji ve windows-1250.) Proto doporuΦuji zadßvat meta tagy keywords a description alternativn∞ bez diakritiky. Vyskytne-li se v klφΦovΘm slov∞ ╣, ╛ nebo ╗, zadejte je t°ikrßt, jednou podle windows, jednou podle ISO a jednou bez hßΦk∙. A mo╛nß i nßzev strßnky (tag title) kv∙li vyhledßvaΦ∙m odΦe╣t∞te, ale to je spornΘ.

Unicode

Unicode k≤dovßnφ UTF-8 je dal╣φ pou╛itelnΘ k≤dovßnφ, zajφmavΘ zejmΘna tφm, ╛e obsahuje v╣echny znaky v╣ech abeced. Jeho Φas pravd∞podobn∞ teprve p°ijde, proto╛e zatφm nenφ v∞t╣inou softwaru podporovßn (prohlφ╛eΦe jej ale zvlßdajφ).

╚eskΘ znaky nahrazuje Unicode dvojicφ bajt∙ (namφsto jednoho jako jinß k≤dovßnφ), tak╛e kdy╛ se na text podφvßte na disk nahrubo, uvidφte mφsto jednoho znaku znaky dva (n∞jakΘ klikyhßky).

URL encoded

Kdy╛ se z formulß°e p°edßvajφ data a vyskytne se tam Φe╣tina, prohlφ╛eΦ to p°ek≤duje na "URL encoded" tvar. P°ed ka╛d² znak dß procento a pak hexadecimßln∞ zapφ╣e dv∞ma znaky index ΦeskΘho pφsmene.

%9A = ╣, %9E = ╛, %E1 = ß, %E8 = Φ, %E9 = Θ, %EC = ∞, %ED = φ, %F2 = ≥, %F3 = ≤, %F8 = °, %F9 = ∙, %FD = ²

Na tohle jsem p°i╣el. Nevφm, zda to odpovφdß win nebo iso, berte to s rezervou.

URL encoded Φe╣tinu zde zmi≥uji jenom proto, ╛e na nφ nßhodou n∞kdy m∙╛ete narazit, tak abyste byli alespo≥ trochu v obraze.

Specißlnφ znaky

Existuje zp∙sob, jak n∞kterΘ ΦeskΘ diakritizovanΘ znaky zobrazit v prohlφ╛eΦi bez ohledu na k≤dovßnφ. Vklßdajφ se pomocφ &; entit; nap°φklad "a s Φßrkou" se pφ╣e "&aacute;". Pokud jsem napsal, ╛e to jde jenom pro n∞kterΘ znaky, pak jsem tφm myslel znaky s Φßrkou. HßΦek se mi tφmto zp∙sobem nikdy vykouzlit nepovedlo. Tak╛e je to prakticky nepou╛itelnΘ.

Sybolick² zßpis Co je nad pφsmenem ? P°φklad Zobrazenφ p°φkladu
&?tilde; vlnovka  &ntilde; ñ
&?circ; st°φ╣ka &ecirc;  ê
&?uml; dv∞ teΦky  &auml; Σ
&?acute; Φßrka  &iacute; φ
&?grave; opaΦnß Φßrka &agrave; à
&?ring; koleΦko, krou╛ek &aring; å
&?slash p°e╣krtnutΘ pφsmeno &oslash; ø

Home Site 4 & Sun Office

Vcelku vynikajφcφ HTML editory jsou nepou╛itelnΘ pro ΦeskΘ texty, proto╛e v╣echny ΦeskΘ diakritikovanΘ znaky (ve wysiwyg m≤du) se pokou╣ejφ p°ek≤dovat na tyto symboly. Neumφm to nikde vypnout ani nastavit (aΦkoli na to dostßvßm nefunkΦnφ nßvody). To je v ΦeskΘm textu pon∞kud ne╣ikovnΘ. (Budu p°esn∞j╣φ -- je to na p∞st!) Navφc u hßΦkovan²ch znak∙ d∞lajφ editory chyby, proto╛e se v╣echny sna╛φ nahradit entitami. Tak╛e nap°φklad namφsto znaku ° se zadßvß znak ø (&oslash;). Pavel Satrapa k tomu dodßvß zajφmav² poznatek :

>... Dlu╛no podotknout, ╛e mnozφ WWW klienti ve stejnΘm prost°edφ d∞lajφ tutΘ╛ chybu, ov╣em zrcadlov∞ obrßcenou (tedy &oslash; nezobrazujφ jako ø, ale jako °). Negativnφ d∙sledky se navzßjem vyru╣φ, a u╛ivatel uvidφ strßnku v p∙vodnφ podob∞. To se v╣ak t²kß jen u╛ivatel∙ se "sprßvn∞ ╣patn²mi" klienty, co╛ je hodn∞ slabß nßplast.(P. Satrapa: Web design. Neokortex 1997, str 37.)

T∞mi klienty, kte°φ d∞lajφ zrcadlovou chybu, myslφ Satrapa asi Netscape Navigator 3.

Netscape Composer

Netscapovsk² Composer d∞lß tu samou chybu, ale dß se vypnout v nabφdce Options - Document Encoding a zde si u╛ vyberete windows-1250 (ISO 8859-2 to neumφ :-(
DoporuΦuji potΘ dßt Set default, a╗ to nemusφte nastavovat v╛dycky znova. Pak je dobrΘ dßt si do ╣ablony onen "Φesk²" meta tag. ,

Opera

Vcelku p∞kn² a funkΦnφ prohlφ╛eΦ Opera 5.0 mß zßsadnφ vadu. Jde o to, ╛e nedokß╛e p°epφnat k≤dovßnφ. Ve windows v╣e zobrazuje pouze ve windows-1250 (to je tφm, ╛e pro tento charset jsou ud∞lßny windowsßckΘ fonty - nevφm, jak je tomu na jin²ch OS). Navφc i text ve windows-1250 zobrazuje n∞kdy ╣patn∞ - to kdy╛ nenφ deklarovßn font * CE.

Jak nastavit v Ope°e k≤dovßnφ, aby to alespo≥ windows-1250 zobrazovalo Φesky: file - preferences - dokument - user font and colors. Pro "normal" vybrat (t∞mi t°emi teΦkami) font t°eba Times, d∙le╛itß je spodnφ nabφdka, kde se vybere "st°edoevropsk²". Vlastnosti "normalu" se pravd∞podobn∞ d∞dφ na ve╣ker² text.

Mozilla 5, doctype a windows-1250

Pokud pφ╣ete ve windows 1250 a mßte ve zvyku zaΦφnat soubor deklaracφ <!doctype html ...> (to se mß), tak se to v Mozille zobrazφ neΦesky. Je pak pot°eba p°ipsat pon∞kud nestandardnφ °ßdek:

<?xml version="1.0" encoding="windows-1250" ?>

Vyu╛φvßm toho, ╛e Mozilla podporuje XML. Dlu╛no p°ipomenout, ╛e s takto oznaΦen²mi html soubory mohou mφt problΘmy XML parsery. ╚ili je dobrΘ upravit html dokument do XHTML, aby odpovφdal standardu XML.

P°ek≤dovßnφ

Pokud pot°ebujete p°ek≤dovat soubory z jednoho k≤dovßnφ do jinΘho, v²born∞ vßm poslou╛φ program Konvertor, kter² je voln∞ ke sta╛enφ na http://www.walkman.cz/konvertor.html. Dφky pat°φ Pavlu Strnadovi.

FrontPage

Funguje to jak v FP Expressu, tak ve FP 2000.

P°evedenφ strßnky z windows-1250 do ISO 8859-2: V nabφdce Soubor zvolte Vlastnosti strßnky (File - Properties). Zvolte v polo╛ce Ulo╛enφ tΘto strßnky mφsto volby st°edoevropsk² volbu st°edoevropsk² (ISO 8859-2). V polo╛ce Zobrazenφ tΘto strßnky ponechte p∙vodnφ volbu.

Shßnφm nßzory

Proto╛e jsem tvor windowsßck² (nem∙╛u za to), nemßm zku╣enosti s jin²mi platformami. Pi╣te mi, prosφm, poznatky o tom, jak se zobrazuje Φe╣tina na Unixu, Linuxu a Macφch.

Dal╣φ: P°ehled chybn²ch zobrazenφ Φe╣tiny
Vizte tΘ╛: K≤dovacφ tabulky, Formßtovacφ chyby, Meta tagy, Editory, Rozdφly k≤dovßnφ
Odkaz jinam: P°ehled k≤dovßnφ na ╚e╣tin∞.cz, pon∞kud precizn∞j╣φ, mφsty tomu nerozumφm

Pφ╣e Yuh∙
dusan@pc-slany.cz
mail formulß°em
Jak psßt web O tvorb∞, ·dr╛b∞ a zlep╣ovßnφ internetov²ch strßnek.

Zßklady HTML CSS FrontPage Hledßnφ

Obsah

Hlavnφ strßnka

Novinky

FAQ

Download

Zdroje

Hledßnφ


Roz╣φ°enΘ

Zßkladnφ kurs

Jak ud∞lat strßnku

Zßklady HTML

Publikovßnφ

Zßsady psanφ

Editory

R∙znΘ prohlφ╛eΦe

Editory

FrontPage 2000

FP Editor 98

Word 97

FrontPage Express

HTML tipy

P°φprava obrßzk∙

Obrßzky

Pozadφ

Odkazy

Vychytßvky odkaz∙

Zßlo╛ky

Aktivnφ mail

Tabulky

┌prava tabulek

Novinky tabulek

Design tabulkami

Rßmy

Formßtovßnφ rßm∙

Rßmy nepou╛φvat

Iframe

Formulß°e

Formulß°e v HTML

DokonalΘ formulß°e

Zßpis barev

Definice

Formßtovacφ chyby

Jak ud∞lat levΘ menu

Vyt∞╛ovßnφ strßnek

Provoz webu

Rychlost strßnek

VzdßlenΘ slu╛by

VyhledßvaΦe

Katalogy

Sprßva soubor∙

Ikona strßnky

Obsah / forma

╚e╣tina

Chyby Φe╣tiny

Tabulky k≤dovßnφ

Meta tagy

Nastavenφ serveru

Programovßnφ strßnek

ZaΦßtky PHP

Mo╛nosti PHP

Pou╛φvßnφ prohlφ╛eΦe

CSS styly

CSS styly

┌vod do CSS

Struktura textu

CSS prakticky

P╪EHLED VLASTNOST═ CSS

Slo╛it∞j╣φ deklarace

DΘlkovΘ jednotky

Pozicovßnφ

Sloupce pozicovßnφm

Okraje objekt∙

Odli╣enφ prohlφ╛eΦ∙

Omezenφ CSS

Odli╣n² tisk

DynamickΘ HTML

Filtry

P°φklady filtr∙

R∙znΘ barvy odkaz∙

Barva rolovacφ li╣ty

 


Jak psßt web: http://dusan.pc-slany.cz/internet/

Pφ╣e Yuh∙: autorova strßnka, mail: dusan@pc-slany.cz

Poslednφ aktualizace 01.02.2002