Ako na francúzsku diakritiku

V časoch, keď som ešte navštevoval gymnázium, som si v rámci povinnej výučby dvoch cudzích jazykov popri angličtine vybral i francúzštinu, ktorá sa mi veľmi zapáčila už na základnej škole. Výučba cudzích jazykov na školách ma však mierne sklamala, preto som na ne po maturite zanevrel (aj keď angličtiny sa to pochopiteľne až tak nedotklo). V poslednom ročníku na FIITke som sa však v rámci „učenia sa na skúšky“ doprokrastinoval až k online kurzu Esperanta a zistil som, že ak si viem určiť svoje vlastné tempo i formu výučby, tak mňa vlastne učenie jazykov celkom baví.

Po niekoľkých mesiacoch učenia sa Esperanta som si pomaly začal oprašovať i svoje takmer zabudnuté znalosti francúzštiny. Narazil som však na problém, ktorý ma počas školy veľmi netrápil: Ako písať francúzske diakritické znamienka na slovenskej klávesnici? Na riešenie tohto problému sa ponúka(lo) viacero možností, od prepínania medzi softvérovými klávesnicami priamo v systéme, cez premapovanie klávesov až po vyklikávanie konkrétnych písmenok v rámci rôznych aplikácií, či už webových, alebo desktopových. Ani jedno z týchto riešení sa mi však veľmi nepozdávalo. To sa mi, paradoxne, ukázalo práve v Esperante, cez ktoré som sa k francúzštine opäť vrátil.

Esperanto, rovnako ako francúzština či slovenčina, používa diakritické znamienka (lepšie povedané jedno) nad niektorými písmenami. Pre plynulé písanie v Esperante s diakritikou však existuje oveľa elegantnejšie riešenie ako tie vymenované vyššie, a to v podobe jednoduchého programu nazvaného Tajpi. Ten poskytuje viacero možností, z nich jednu, ktorá sa mi naozaj zapáčila. Abeceda Esperanta je o čosi chudobnejšia ako tá naša, o. i. neobsahuje písmeno x. Tento fakt využíva takzvaný x-system, čo je vlastne alternatívny spôsob zápisu Esperanta, pri ktorom sa písmeno x používa ako náhrada diakritického znamienka. Napríklad písmeno ĝ sa zapíše ako gx, ŭ ako ux a podobne. Tajpi poskytuje možnosť použiť x-system, pričom funguje v podstate presne naopak. Postupnosť znakov gx zmení automaticky na ĝ, ux na ŭ atď.

Veril som preto, že mi Google pomôže nájsť niečo podobné i pre francúzštinu, na moje prekvapenie som však nič podobné nenašiel. Rozhodol som sa preto, že si takéto „francúzske Tajpi“ naprogramujem sám. Zostávalo mi však vyriešiť jeden problém, a to fakt, že francúzština nič podobné ako x-system nepozná. Dôvod je zrejmý, francúzština používa všetky „štandardné“ znaky latinky, preto nie je možné žiaden z nich „zneužiť“ na takýto účel. Navyše, francúzština pozná podstatne viac diakritických znamienok ako Esperanto, pričom veľa písmen je možné modifikovať viacerými z nich.

Komplikáciu spojenú s tým druhým dôvodom som vyriešil pomerne jednoducho – namiesto pridávania a odoberania znamienka z písmena ich budem jednoducho rotovať. Napríklad rotácia pre písmeno a môže vyzerať takto: a -> à -> â -> æ -> a -> Ťažšie bolo nahradiť písmeno x z Esperanta niečím, čo by neprekážalo vo francúzštine. Tam som neprišiel až s takým pekným riešením, no s nejakým som napokon predsa len prišiel. Štatistika hovorí, že len zhruba každé dvetisíce písmeno vo francúzštine je písmeno k (jazykoveda zase hovorí, že toto písmeno pozná francúzština iba z cudzích slov, čo vysvetľuje tú frekvenciu), preto sa k javí ako ideálne riešenie náhrady x ako oného horúceho klávesu.

Klavier

A takto vznikol Klavier. Pri programovaní som si rovno oprášil i ďalšie zapadnuté znalosti C++ a Qt, čím som zabil hneď dve muchy jednou ranou. Klavier je veľmi jednoduchý program, ešte jednoduchší ako Tajpi, svoj účel však aspoň pre moje potreby spĺňa dokonale. K ako horúci kláves je možné nahradiť i klávesom Insert, rovnako je možné nastaviť klávesovú skratku pre aktivovanie/deaktivovanie programu. Nezaberá miesto na paneli úloh, nežerie takmer žiadnu pamäť, je možné ho spúšťať automaticky pri naštartovaní Windowsu a celkovo sa snaží byť taký neviditeľný, ako to len ide. 🙂

Program som pôvodne vytvoril iba pre seba, neskôr som si však uvedomil, že podobný problém mohlo riešiť už viacero ľudí, preto som sa rozhodol sa oň podeliť. Zdrojové kódy som zverejnil na svojom GitHub profile, je však možné si priamo stiahnuť inštalátor i prenosnú verziu. Dostupná je verzia iba pre MS Windows, pričom pre verzie staršie ako Windows 10 (obzvlášť s vypnutými automatickými aktualizáciami) je možné, že si bude vyžadovať doinštalovanie niektorých závislostí, predovšetkým Visual C++ Redistributable pre Visual Studio 2015 (je súčasťou spomínaného inštalátora). Samozrejme si rád vypočujem akúkoľvek spätnú väzbu, návrhy na zlepšenie či nájdené chyby a bugy. 🙂

Richard Filipčík

Absolvent informatiky na FIIT STU, (už len občasný) hráč počítačových hier, fanúšik histórie. Na tomto blogu je možné nájsť blbosti každého druhu, občas sa však možno zadarí aj niečo užitočné. Viac informácií možno nájsť na stránke O mne.