SaCzech-U: N‡vod k pouìit’

SaCzech-U se skl‡d‡ ze skupiny jednoœ‹elovùch konverzn’ch programó. Kaìdù z nich pÞekl‡d‡ dokument ze väech implementovanùch vùchoz’ch k—du do jednoho k—du c’lovŽho, jehoì jmŽno je sou‹‡st’ jmŽna programu. ‰leny rodiny SaCzech-U tedy jsou toASCII.cgi, toCP1250.cgi, toKEYBCS2.cgi, toMAC.cgi, atd. (tŽì zvanŽ ascii.cgi, 1250.cgi, kam.cgi, mac.cgi, atd.). Tyto programy pÞedpokl‡daj’, ìe budou spuätžny jako CGI skripty a vyuì’vaj’ pÞ’sluänŽ promžnnŽ prostÞed’. Nelze je spouätžt samostatnž (alespoË ne jednoduäe).

Obsah:

Z‡klady - URL str‡nky

Str‡nku napiäte v jednom z osmibitovùch k—du, kterŽ SaCzech-U zn‡, nejlŽpe samozÞejmž v k—du, kterù byl V‡mi (nebo spr‡vcem serveru) pÞi instalaci definov‡n pomoc’ promžnnŽ $source jako k—d implicitn’, protoìe se pÞedpokl‡d‡, ìe bude pouìit ve vžtäinž dokumentó. Vystavte ji, jak je obvyklŽ. JedinŽ, co se zmžn’, bude URL, kterùm je tÞeba se odk‡zat na str‡nku. Jestliìe URL str‡nky bez pÞek—dov‡n’ by bylo
http://www.kdesi.ca/user/cesta/stranka.html
bude URL tŽìe str‡nky pÞi poìadavku jej’ho pÞek—dov‡n’ do sedmibitovŽho ASCII napÞ.
http://www.kdesi.ca/user/cgi-bin/ascii.cgi/cesta/stranka.html
PÞedpokl‡d‡m, ìe URL cesta ke k—duj’c’m skriptóm je http://www.kdesi.ca/user/cgi-bin. Móìete pouì’t libovolnù ze skriptó toXXX[.cgi]. nebo yyy[.cgi] (kde XXX ‹i yyy jsou jmŽna k—dó popsan‡ v pÞedchoz’ch kapitol‡ch). Pokud cesta ke k—duj’c’m skriptóm je http://www.jinde.cz/cgi-bin (glob‡ln’ CGI adres‡Þ serveru), bude URL poìaduj’c’ pÞek—dovanou str‡nku m’t tvar:
http://www.jinde.cz/cgi-bin/ascii.cgi/user/cesta/stranka.html

Odkazy tohoto typu väak pÞedpokl‡d‡j’, ìe pÞedem v’te, jakù k—d bude uìivatel vyìadovat. To ‹asto nemus’ bùt pravda. V takovŽm pÞ’padž doporu‹uji pouì’t skript whichcode[.cgi] a URL

http://www.kdesi.ca/user/cgi-bin/whichcode.cgi/cesta/stranka.html
pÞ’padnž
http://www.jinde.cz/cgi-bin/whichcode.cgi/user/cesta/stranka.html
Skript whichcode uìivateli ozn‡m’, ìe c’lovù dokument obsahuje diakritick‡ znamŽnka a umoìn’ mu zvolit k—d, kterù povaìuje za optim‡ln’.

Zachov‡n’ k—du pÞi odkazech

Je pÞirozenùm poìadavkem, aby uìivatel vyb’ral k—d jen jednou a pÞi odkazech na dalä’ dokumenty z tŽhoì zdroje se uchov‡vala informace o zvolenŽm k—dov‡n’. Nejjednoduää’ cestou je relativn’ odkaz. Kdyì do dokumentu vloì’te odkaz pomoc’ zna‹ky
<A HREF="kapitola1.html">Prvn’ kapitola</A>
klient pÞepracuje relativn’ URL kapitola1.html na absolutn’. Vyjde pÞitom z URL dokumentu, obsahuj’c’ho zna‹ku. Pokud bylo póvodn’ URL dokumentu napÞ’klad http://www.kdesi.ca/user/cgi-bin/toCP1250/cesta/obsah.html, povede zm’nžnù odkaz k dokumentu http://www.kdesi.ca/user/cgi-bin/toCP1250/cesta/kapitola1.html. Informace o k—du byla zachov‡na.

Pozor! Chcete-li vyuì’vat pro uchov‡n’ k—du relativn’ odkazy, nesm’te v dokumentu pouì’t zna‹ku <BASE>, kter‡ ur‹uje z‡kladn’ URL dokumentu. Kdybyste ji pouìili, budou väechna relativn’ URL vztaìena k lok‡toru, definovanŽmu touto zna‹kou, nikoli k URL, pod kterùm klient z’skal str‡nku.

Absolutn’ odkazy je tÞeba Þeäit jinak. Tady pouì’v‡ SaCzech(-U) metodu podobnou programu WWWdia. Do textu móìete na kterŽkoli m’sto (v‹etnž cest) vloìit Þetžzec

__CHARSET__
K—duj’c’ skript nahrad’ kaìdù vùskyt tohoto Þetžzce identifikac’ k—du, do kterŽho pr‡vž pÞev‡d’ str‡nku. Pokud se tento Þetžzec vyskytuje ve spojen’ to__CHARSET__ nebo charset=__CHARSET__, je vìdy nahraìen jmŽnem k—du uì’vanùm v programu WWWdia (a póvodn’m SaCzechu), ve väech ostatn’ch pÞ’padech bude nahraìen jmŽnem EUnet modulu pro stejnù k—d. Proto móìete v textu pouì’t zna‹ku
<A HREF="http://www.jinde.cz/cgi-bin/to__CHARSET__/jinacesta/str.html">odkaz</A>
Pokud str‡nka projde skriptem toKEYBCS2, kterù ji pÞevede do k—du KEYBCS2, bude v odeslanŽm dokumentu v tŽto zna‹ce uvedeno URL
<A HREF="http://www.saczechserver.cz/cgi-bin/toKEYBCS2/jinacesta/str.html">odkaz</A>
PÞedpokl‡d‡m, ìe server, ur‹enù t’mto absolutn’m URL, m‡ instalov‡n SaCzech-U. Móìe, ale nemus’ se jednat o tentùì server, kterù poskytl póvodn’ dokument. Stejnž je zvl‡dnut i odkaz na str‡nku v pravomoci WWWdia, pouìijete-li pro tento odkaz URL
<A HREF="http://www.diaserver.cz/cgi-bin/charset/jestecesta/str.html?charset=__CHARSET__">odkaz</A>
Stejnù skript toKEYBCS2 z rodiny SaCzech-U nav’c zvl‡dne na tŽìe str‡nce i pouìit’ zna‹ky
<a href="http://pes.eunet.cz/__CHARSET__">odkaz</A>
V odeslanŽm dokumentu se v tom pÞ’padž objev’
<a href="http://pes.eunet.cz/kam">odkaz</A>
Schopnost automaticky zachov‡vat k—d pÞi kontaktu s co nejvžtä’m po‹tem serveró st‡la za n‡padem zavŽst podporu alternativn’ch jmen k—du v programu SaCzech-U. ProblŽmem ale je, ìe server vžtäinou nev’ co m‡ džlat s ì‡dost’ typu <a href="http://pes.eunet.cz/__CHARSET__">, kdyì vùäe uveden‡ str‡nka n‡hodou neprojde ì‡dnùm konverzn’m skriptem. Nev’ to dokonce i nžkterŽ servery, kterŽ pouì’vaj’ SaCzech a na nichì bylo zÞejmž opomenuto zavŽst synonyma doporu‹en‡ pro to__CHARSET__.cgi. K tomu nav’c existuj’ i moduly se jmŽny k—dó, kterŽ se liä’ od jmen EUnetu, takìe dvž sady jmen k—dó na väechno stejnž nesta‹’.

Obr‡zky se nek—duj’!

SaCzech(-U) je selektivn’. K—duje jen soubory s ur‹itùmi pÞ’ponami (implicitnž .html, .htm a .txt; jak je zmžnit se do‹tete v kapitole Pod kapotou v dokumentaci póvodn’ho programu SaCzech). Dostane-li k pÞek—dov‡n’ soubor s jinou pÞ’ponou, odm’tne se akce œ‹astnit a pÞesmžruje klienta pÞ’mo na doty‹nù soubor. Dósledkem je, ìe klient z’sk‡ soubor v póvodn’m tvaru beze zmžny k—dov‡n’.

D’ky tomuto mechanismu móìete na svŽ str‡nky vkl‡dat relativn’ odkazy na obr‡zky, zvuky a dalä’ druhy dat, kterùm by pÞek—dov‡n’ rozhodnž neprospžlo.

Jestliìe se na str‡nce vyskytne zna‹ka

<IMG SRC="obraz.gif">
a URL str‡nky je http://www.kdesi.cz/cgi-bin/toASCII/cesta/stranka.html, bude klient po serveru poìadovat http://www.kdesi.cz/cgi-bin/toASCII/cesta/obraz.gif. Server spust’ skript toASCII. Ten väak zjist’, ìe je po nžm poìadov‡no k—dov‡n’ souboru s pÞ’ponou .gif. M’sto aby se pustil do d’la, odpov’ klientovi "hele s t’mhle j‡ nechci nic m’t, vezmi si rovnou ten soubor". Klient si ho vezme a väe funguje k plnŽ spokojenosti väech zœ‹astnžnùch.

Zmžna vùchoz’ho k—du

Implicitn’ vùchoz’ k—d, ve kterŽm budou ps‡ny dokumenty si ur‹’te pÞi instalaci programó SaCzech-U. Mžlo by se jednat o k—d, ve kterŽm bude vytv‡Þena vžtäina str‡nek (nejlŽpe väechny). Pokud autor pouì’v‡ i k—d jinù, m‡ dvž moìnosti:
PÞevŽst str‡nku do implicitn’ho k—du.
To je mŽnž pohodlnŽ a nav’c to komplikuje pozdžjä’ œpravy na str‡nce (kaìd‡ œprava bude vyìadovat novŽ pÞek—dov‡n’ - SaCzech-U to ale usnadËuje, je moìno ho pouì’vat k rychlŽ a snadnŽ konverzi dokumentó mezi dvžma k—dy obžma smžry mezi jednotlivùmi œpravami - viz dalä’ odstavec).
Ponechat str‡nku v k—du póvodn’m a vyzna‹it jej.
K vyzna‹en’ póvodn’ho k—du dokumentu se pouì’v‡ HTML koment‡Þ v pÞesnž definovanŽm tvaru
<!--MYCHARSET=k—d-->
NapÞ’klad <!--MYCHARSET=CP1250-->. Po‹’naje Þ‡dkem, obsahuj’c’m tento koment‡Þ (doporu‹uji jej uvŽst na samostatnŽm Þ‡dku na za‹‡tku dokumentu), bude za vùchoz’ k—d dokumentu povaìov‡n k—d CP1250. SaCzech-U bžhem konverze nevkl‡d‡ do vùslednŽho dokumentu póvodn’ koment‡Þe typu <!--MYCHARSET=k—d-->, protoìe jiì neplat’, a m’sto nich vloì’ na jeho œplnù po‹‡tek koment‡Þ s vyzna‹en’m k—du do nžhoì je dokument pÞekl‡d‡n. Po uloìen’ pak nen’ pochyby v jakŽm k—du je dan‡ kopie dokumentu zaps‡na. Je moìno pak pokra‹ovat v upravov‡n’ dokumentu v novŽm k—du.
Dokonce móìete pouì’vat nžkolik róznùch k—dó v jednom dokumentu. Jestliìe je prvn’ polovina textu ps‡na v k—du Kamenickùch a druh‡ v MS-Windows, sta‹’ pÞed kaìdou ‹‡st vloìit pÞ’sluänù koment‡Þ a vùsledek bude uìivateli odesl‡n ve spr‡vnŽ podobž - obž poloviny se korektnž pÞek—duj’ napÞ’klad do ISO Latin 2. TakovŽ dokumenty je sice moìno povaìovat za zvžrstvo, ale ta moìnost tu je. SaCzech-U ji oväem ‹in’ naprosto zbyte‹nou jak vysvžtleno vùäe.

Pro milovn’ky patologickùch pÞ’padó:

Nab’dka k—dó

‰asto je vhodnŽ nab’dnout uìivateli pÞ’mo na str‡nce moìnost zmžny k—du tŽto str‡nky. Nechce-li autor tuto nab’dku konstruovat ru‹nž, móìe SaCzech-U instruovat, aby ji vytvoÞil automaticky. Na pÞ’sluänŽ m’sto str‡nky vloìte HTML koment‡Þ
<!--BAR-->
SaCzech-U jej bžhem zpracov‡n’ textu nahrad’ nab’dkou moìnùch k—dó, do kterùch lze str‡nku pÞevŽst. Ûi“te se podobnùmi pravidly, jako v pÞ’padž MYCHARSET - v koment‡Þi neuv‡džjte nic jinŽho.

Chcete-li, aby nab’dka k—dó byla nadeps‡na anglicky (napÞ. na anglickŽ str‡nce, kter‡ obsahuje ‹esk‡ jmŽna), pouìijte koment‡Þ

<!--BAR E-->

Pokud uvedete na jednom Þ‡dku v’ce neì jeden koment‡Þ <!--BAR --> nebo <!--BAR E-->, SaCzech-U vygeneruje jen jednu nab’dku podle prvn’ho koment‡Þe a väechny ostatn’ ignoruje. Aby se zamezilo opakovanŽmu generov‡n’ nab’dek pÞi opžtovnŽm pouìit’ konvertovanŽho dokumentu, SaCzech-U nepÞekop’ruje ani koment‡Þe typu BAR do odes’lanŽho dokumentu, pÞed kaìdou nab’dkou ale vyp’äe pozmžnžnù koment‡Þ upozorËuj’c’ na to, ìe byla vygenerovan‡ automaticky.

SaCzech-U a CGI

Aby mohl spolupracovat s CGI skripty a mžnit k—d jejich vùsledkó je tÞeba SaCzech-U instalovat tak, aby k—dovanŽ dokumenty z’sk‡val metodou http (kaìdù dokument z’sk‡v‡ od serveru protokolem HTTP) nebo guess (snaì’ se uh‡dnout, co je oby‹ejnù soubor a co vol‡n’ CGI skriptu, ve druhŽm pÞ’padž opžt s‡hne k protokolu HTTP). Podrobnosti se do‹tete v kapitole o instalaci.

Provedl jsem i väechny zmžny v souboru enchttp.tpl, kterŽ byly potÞebnŽ pro podporu metody http pÞi instalaci SaCzech-U v soukromŽm adres‡Þi uìivatele. Zd‡ se, ìe vùslednù k—d funguje spr‡vnž, nemžl jsem ale zat’m moìnost ho dosta‹nž otestovat.

Zachov‡n’ k—du v obr‡zc’ch s klikou. Tipy, triky, rizika

Pros’m, obraéte se pÞ’mo na dokumentaci póvodn’ho programu SaCzech.