Ještě jednou čeština
1.12.1999 Technická poradna Témata: Počítače 661 slov
Proč i po instalaci češtiny občas na obrazovce vidím místo interpunkce jen nesmysly nebo obdélníčky?
To se opravdu stává dost často a je to velmi nepříjemné zvlášt u e-mailu. Dostali jste od někoho e-mail a místo háčků a čárek vidíte jen podivné symboly nebo rovnou obdélníčky.
Technické vysvětlení (pokud vás technika nezjímá, klidně tento a další odstavce přeskočte a pokračujte až odstavcem Co se s tím dá dělat.). Znaky se ukládají v bajtech (s výjimkou nové sady UNICODE, kde se znak ukládá ve dvou bajtech), pričemž každý znak má svou přesně definovanou hodnotu. Původně existovala (a ješte existuje) základní množina znaků tzv. ASCII. Tato množina obsahuje všechna písmena anglické abecedy, číselnou řadu a několik základních symbolů. Dohromady těchto původních znaků nebylo více než 127, tzn.,že se všechny vešly do sedmi bitů jednoho bajtu (27 - 1). Poslední, osmý bit zůstával nevyužitý.
S rozšírením osobních počítačů na všechny kontinenty se objevila nutnost, aby počítace zobrazovaly i jiné znaky než ty, definované v ASCII. Začalo se využívat všech osm bitů jednoho bajtu, přičemž původní ASCII tabulka zůstávala nedotčena a pro nové znaky se hledaly hodnoty nad 127.
Problém byl v tom, že vše vznikalo příliš spontánně a bez koordinace. Každý, kdo se cítil povolán, definoval svou vlastní sadu českých znaků, přičemž samozřejmě vůbec nebral v úvahu sady existující, o nějaké spolupráci ani nemluvě. Oficiálně to byla firma IBM, která snad jediná měla mandát a také definovala sadu českých znaků zvanou CP-852. Téměř současně byla v Čechách vytvořena sada Kamenický pro práci s textovým editorem T602, pak přišla sada ISO 8859-2 (pro Unix). Veliký Bill Gate samozřejmě nemohl pracovat s tím, co už existovalo a tak jeho WINDOWS představily novou vlastní sadu WIN-1250. Všechny tyto sady naprosto ignorovaly jedna druhou, tzn., že hodnoty stejných interpunkčních znaků byly v každé sadě různé.
Výsledkem je, že text vytvořený jednou sadou češtiny a zobrazeny jinou sadou je stoprocentní garbage.
Co se s tím dá dělat? Pokud jste dostali text v e-mailu, pokuste se nejprve provést konverzi přímo tady. Přesný postup se bude lišit podle typu software používaného pro příjem a odesílání pošty. Používáte-li OUTLOOK nebo OUTLOOK Express, klikněte na View, pak Encoding, otevře se nové okno. Zkusmo zvolte Central European ISO nebo Central European WIN. V Netscape Messenger existuje totéž pod View a Character Set. Používáte-li Eudoru, ani se o konverzi nepokoušejte. Eudora má problém v interpretaci českých znaků.
Můžete se také podívat na to, jak došlý e-mail informuje sám o sobě. Klikněte na property pro daný e-mail (pravý knoflíček myši) a zobrazte Full Header. Hledejte popis charset na lince Content-Type: text/plain; charset=iso-8859-2 nebo podobně. Tato rada vám asi v praxi příliš nepomůže; jde o to, že tutéž informaci dostal už váš e-mailový software a měl dost času nastavit příslušné kódování správně. Pokud tak neučinil, znamená to buď, že váš software tuto informaci nepoužívá, anebo že tato informace je mylná. Už se nám stalo, že jsme dostali e-mail, kde charset byl definován jinak, než bylo skutečné kódování textu.
Jestliže konverze přímo v e-mailu nebyla úspěšná, pokuste se text přečíst některým word procesorem, nejlépe WORDem nebo WORD PERFECTem. Proveďte cut and paste celého textu na stránku word procesoru (CTRL-A, pak CTRL-C, jděte do svého word procesoru a tady na nové stránce CTRL-V). Na této stránce nyní znovu zvýrazněte (highlightujte - krásné české slovo) celý text (CTRL-A) a zvolte v Tools, Language jazyk Czech. Tato operace bývá úspěšná v 95 procentech případů, tedy alespoň používáte-li MS WORD verze 7 a výše. Pokud ani to nepomohlo, nezbývá než se s textem poprat tak, jak je.