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