UnWIACZ: program na nahradu nekorektnich HTML entit v CZ Windows
Jiri Kvarda
kvarda at vc.cvut.cz
Wed Aug 14 17:18:50 CEST 1996
Vytvoril jsem program pro nahradu nespravne vytvorenych znakovych
entit HTML v ceskych textech na Windows CZ/EE zpetne puvodnimi znaky.
Tento program se Vam bude hodit obzvlaste pokud k editaci stran
s ceskymi znaky pouzivate
- Microsoft FrontPage,
- Microsoft Internet Asistenty (bez makra HTMLSelOutput),
- mnohe HTML editory (napr. HoTMetaL, NaviPress apod.).
Program je freeware a je dostupny pod
http://web.cvut.cz/ascii/cc/icsc/software ,
resp.
http://web.cvut.cz/cp1250/cc/icsc/software
(pro browsing z Windows CZ/EE).
V cem je problem ?
1. Ne vsechny ceske znaky maji ekvivalent jako HTML znakova entita.
Tak jsou nadefinovany pouze znaky z ISO Latin-1.
2. Ciselne entity (napr. è) maji odpovidat pozici znaku v
ISO-8859-1 (Latin-1), resp. ISO-10646 (~ UNICODE). Tedy napr.
è by se melo zobrazit jako znak egrave, tj. 'e se zpetnou
carkou'. Mnohe browsery ale na Windows CZ/EE zobrazi 'c s hackem'.
3. Microsoft FrontPage, Microsoft Interent Asistenty a mnoho dalsich
HTML editoru zapisuje entity jako kdyby bezely na Windows Latin-1
(CP1252), resp. ISO Latin-1 (ISO-8859-1) a aktualni kodovou stranu
(v pripade Windows EE/CZ Windows Latin-2, tj. CP1250) neberou
v uvahu. Pritom se pokousi vetsinu znaku s kodem nad 127 ulozit
jako znakovou entitu HTML. Z toho pak vyjde, ze napr. 'c s hackem'
se zapise jako è , tj. 'e se zpetnou carkou' .
4. Specialitou Microsoft Internet Asistentu je, ze znaky s kodem nad
127, ktere nemaji ani jako Latin-1 znaky ekvivalent v podobe HTML
znakove entity uklada jako ciselnou entitu s cislem prevzatym z
umisteni kodu. Pritom uklada i entity s cisly z rozmezi 128 az
159, i kdyz takova ciselna entita by spravne nemela existovat,
protoze tyto znaky jsou v ISO Latin-1 vyhrazeny pro ridici kody.
Takze napr. na miste 'z s hackem' ulozi ž .
5. Protoze vetsina browseru na MS Windows funguje presne opacne
spatnym zpusobem nez tyto HTML editory, muze se autorum HTML
textu zdat, ze vytvarene texty jsou v poradku. Problem ovsem
nastane, pokud se na takovy text podivaji browserem z operacniho
systemu s jinou znakovou sadou (napr. UNIX s ISO Latin-2) nebo
pokud prijdou spravne vicejazycne fungujici browsery, jako napr.
final release Microsoft Internet Exploreru 3.0.
Za obzvlaste pikantni je mozne povazovat, ze Microsoft pomoci sveho
Exploreru 3.0 v masovem meritku odhali nedostatky jeho produktu
FrontPage.
Program UnWIACZ
Nazev tohoto programu vychazi z toho, ze po pouziti Word Interent
Assistantu (jeste bez makra HTMLSelOutput) jsem narazil na takovou
spoust v HTML entitach, kterou neslo beze zbytku napravit programem
ze sady NTCPCONV.
Jmeno tedy vyjadruje od-Word-Internet-Asistentovat cesky dokument.
Program je napsano v C jako konzolova aplikace pro Win32 API:
funguje na Windows NT a Windows95.
Program nahrazuje znakove entity v HTML souborem opacnym zpusobem,
nez je vyse uvedene HTML editory na MS Windows se znakovou sadou
Latin-2 vytvareji. Program by se nemel pouzivat na soubory s HTML
entitami vytvorenymi korektnim zpusobem.
S pozdravem,
Jiri Kvarda Czech Technical University
e-mail: kvarda at vc.cvut.cz Computing Center, ICSC
tel.: +42 2 2435 3306 Prague, Czech Republic
More information about the net
mailing list