Automatické doplňování háčků a čárek

Možná máte zkušenosti se stávajícími počítačovými systémy, servery a internetovými stránkami. Ačkoliv pokrok jde nezadržitelně kupředu, ne vždy berou vývojáři ohled na lokalizaci produktů. Někteří se psaním diakritických znamének nezabývají vůbec, jiní zase spoléhají na to, že si systém vyřeší lokalizaci po svém. A tak se často setkáváme s tím, že něco napíšeme správně česky, ale když si ten stejný text chce přečíst někdo jiný na jiném počítači, zobrazí se mu změť nesrozumitelných symbolů, které pak pracně louská, písmeno po písmenu.

Na vině jsou způsoby kódování používané různými systémy – Windows preferuje kódovou stránku 1250, Linux ISO-LATIN-2, Macintosh Mac Central Europe, a to mluvíme stále o češtině. Často se nám totiž do cesty připletou také stránky 1252 nebo ISO-LATIN-1, které jsou určeny sice západoevropským jazykům, nicméně se hojně vyskytují na zahraničních serverech. K tomu přišla snaha o unifikaci kódování pro všechny světové jazyky, která vyústila v tzv. Unicode či jeho úspornější variantu UTF-8. Ta je ovšem pro nešťastníky, jejichž systém ji neumí zobrazit, už naprosto nečitelná.

A když k tomu připočteme i fakt, že uživatel jednoduše není schopen speciální znak napsat, protože na počítači je nainstalovaná jiná klávesnice, než na jakou je zvyklý, není divu, že se uchýlí k psaní bez háčků a čárek, což pro něj představuje patrně nejmenší zlo. I tak ovšem může dojít k řadě nedorozumění. Uvažte třeba, jak byste byli moudří z výroku Neustale mi tu radi a ja uz jsem z toho cela zoufala. Zde skutečně nevíte, zda dotyčná mluví o zlobivém dítěti, o osobním poradci či o přemotivovaném žákovi autoškoly, nehledě na to, že přemýšlíte, jestli vůbec může být cela zoufalá.

Jazyková část

Vinou zmíněných faktorů se tak stále více textů začíná psát pouze za pomoci znaků a-z, což je sice na jednu stranu pohodlné, na druhou však existují stále způsoby psané komunikace, kde je psaní bez háčků a čárek nepřípustné. Težko byste třeba čekali, že vám přijde do schránky podobným způsobem napsaná reklama, soudní rozhodnutí o vystěhování z bytu, nebo i jen soukromý dopis, že by si přednášející na konferenci připravil v tomto duchu svou prezentaci nebo že by vás internetové deníky častovaly takto psanými články. I když poslední není až tak nepředstavitelné třeba v Rumunsku, kde některé významné novinové servery diakritiku jednoduše neuznávají.

I tak je ovšem jisté, že háčkům a čárkám vyhubení nehrozí, a pokud jste se také už dostali do situace, kdy jste je z nějakého důvodu museli doplňovat, víte, kolik dá práce převést třeba jen jeden odstavec, a jak často vám některé písmeno vypadne. Přitom je ve většině případů přepis tak jednoznačný. Z toho důvodu jsme vám připravili komponentu, která umí text oháčkovat a očárkovat automaticky. Jak už jste však poznali, nemusí být tento převod ve všech případech jednoznačný, např. takové slovo vesel může znamenat vešel, věšel nebo klidně i původní variantu. I v těchto případech vám však program usnadní práci, protože ze tří možných nabídek si může uživatel zvolit vyhovující např. prostým kliknutím myší. To však už záleží na způsobu integrace komponenty do vašeho produktu.

Programové řešení

Když se nad problematikou přidávání háčků a čárek zamyslíte hlouběji, zjistíte, že složitost otestování všech možných kombinací není zrovna triviální. Máte-li třeba pouze čtyřpísmenné české slovo cise psané bez diakritiky, napadne vás jistě, že se jedná o číši. Současné počítače však ještě bohužel sami od sebe česky neumějí, a proč to neříct, neumějí ani anglicky. Proto musejí mechanicky zkoušet všechny možné kombinace. V tomto případě lze z c udělat č, z i í, ze s š a z e é nebo dokonce ě, tj. 2 x 2 x 2 x 3 = 24 kombinací. Nicméně důslednost se vyplatí, protože kromě očekávané číše získáte další správné výsledky, které by vás možná ani ve snu nenapadly. Prvním je tvar cíše, tedy tvar od slova cícha. Správně je však také čiše. Že nevíte, co to je? To je přece mužský přechodník od krásného českého slovesa čišet. Celkově tedy získáte tři nabídky z 24 možných. Jak to tedy vypadá, počítače sice ještě nemají znalosti lidí, ale o to důsledněji dovedou pracovat.

Pro spoustu slov existuje pouze jedna možnost přepisu (např. priznat může být pouze přiznat.) Tyto jednoznačné případy pak může program řešit automaticky bez nutnosti zásahu ze strany uživatele.

Co se týče kódování znaků, umí naše komponenta pracovat s 25 různými kódovými stránkami, a to včetně Unicodu, UTF-8, azbuky či hebrejštiny.

Dostupné funkce

  • Návrat seznamu možností, jak slovo vybavit pomocí háčků a čárek tak, že z něj vznikne správně utvořené slovo daného jazyka.
  • Návrat varianty slova bez háčků a čárek.

V současnosti nabízíme modul pro doplnění háčků a čárek pro širokou škálu jazyků (viz tabulka). Implementován je rovněž na většině platforem (viz přehled).