Výber a indikácia XKB klávesníc
Vo výbere klávesníc je pekný zmätok. Väčšina používateľov používa v súčasnosti nastavenie XKB klávesníc prostredníctvom XF86Config. To má viacero nevýhod:
- Je potrebné ručne meniť XF86Config - neviem o žiadnej rozšírenej distribúcii, ktorá by tento výber mala integrovaný vo svojom setupe. Pokiaľ začiatočník niečo pokazí, je zle.
- Tvorcovia XFree86 vytrvalo odmietajú zaraďovať nové klávesnice a české a slovenské je potom treba pretláčať do jednotlivých distribúcií.
- Používatelia KDE majú k dispozícii kikbd, ten však žiaľ nepodporuje XKB. Používatelia gnome síce podporu XKB majú, ale klávesnica už musí v systéme existovať.
- Ani jeden systém (pokiaľ viem) neumožňuje jednoduché a konfigurovateľné prepínanie medzi viacerými XKB klávesnicami - napríklad medzi americkou, slovenskou a slovenskou programátorskou.
- Ani jeden zo systémov nepodporuje definíciu klávesníc používateľom bez akéhokoľvek zásahu do konfigurácie X11.
Toto sú dôvody, pre ktoré som sa rozhodol vytvoriť balík pre podporu výberu a indikácie klávesníc, ktorý je schopný samostatne fungovať bez zásahu do aktuálnej konfigurácie X11 a ktorý aspoň čiastočne podporuje najpoužívanejšie grafické prostredia.
Cieľmi návrhu bolo:
- odstrániť nutnosť zmien súborov patriacich do X distribúcie v prípade definície nových klávesníc
- poskytnúť rovnaké rozhranie pre výber klávesnice bez ohľadu na to, či sa nachádza v X distribúcii, alebo bola doplnená inak
- definovať metódu pre priradenie doplňujúcich informácií k XKB klávesniciam, ako je komentár, pixmapa a.p.
- umožniť ovládanie prostredníctvom
- príkazu spusteného z window-manažéra (prostredníctvom menu, klávesovej skratky a.p.)
- jednoduchého grafického rozhrania
- a zároveň aj z príkazového riadku
- umožniť automatický výber podľa aktuálneho locale
- podporovať systémové a používateľské nastavenia
- súkromným cieľom bolo trochu sa zoznámiť s Xaw, KDE, Gtk, automake, autoconf a robiť niečo užitočné, pokiaľ zrovna na dovolenke niet čo robiť :-)
Výsledný produkt obsahuje implementáciu frameworku pre definíciu a obsluhu XKB klávesníc, definuje spôsob pridávania informácií ku XKB súborom a poskytuje piatich jednoduchých klientov - príkazový riadok, Athena Widgets, Window Maker a dokovateľné applety pre panely KDE a Gnome.
Neočakávajte priveľa - táto verzia má beta kvalitu, bola dôslednejšie testovaná v podstate iba mnou a jedine na RH 6.0/6.2 s glibc 2.1. Na systéme s glibc 2.0 by chodiť mohla, na libc5 o tom dosť pochybujem. Budem ale rád, keď mi výsledky pokusov dáte vedieť.
Je tiež možné, že sa budú meniť formáty konfiguračných súborov, názvy dodávaných máp, pribudnú, ubudnú alebo sa premenujú RPM balíky a.p. Pokiaľ hľadáte balík, ktorý zostane mesiace stabilný, aktuálna verzia pre vás ešte nie je.
Binárne balíky boli vytvorené na systéme Red Hat 6.2. Je preto možné, že s nimi budú na starších systémoch problémy. V takom prípade buď prekompilujte zdrojový balík, alebo použite staršiu verziu.
Dostupné súbory:
- xkbsel-0.13.tar.gz klasická distribúcia. Obsahuje .spec súbor, takže pokiaľ vaše rpm podporuje okrem -b aj -t, dá sa rebuildovať aj z tohoto súboru. Prečítajte si INSTALL a README - po inštalácii ešte treba pár vecí spraviť.
- xkbsel-0.13-1.src.rpm - zdrojové rpm
- xkbsel-common-0.13-1.i386.rpm - binárne rpm z RH 6.0, obsahujúce základné nástroje
- xkbsel-kde-0.13-1.i386.rpm - KDE klient
- xkbsel-gnome-0.13-1.i386.rpm - Gnome klient
- xkbsel-wmaker-0.13-1.i386.rpm - Window Maker klient
- xkbsel-devel-0.13-1.i386.rpm - pokiaľ by sa našiel taký blázon, ktorý by chcel vyvinúť ďalšieho klienta, tu nájde potrebné súbory a knižnice :-)
Ako obvykle, za nič neručím, podporu neposkytujem a ďalšie tempo vývoja bude pravdepodobne slimačie. Pokiaľ ale máte nápady, komentáre, bugfixy a.p., budem rád, keď mi ich pošlete. Zvlášť by som ocenil patche, ktoré umožnia kompilovateľnosť na čo najväčšom počte platforiem (ja mám prístup iba k RH 6.2 a čiastočne k SuSE 6.3).
Bratislava, 9. 4. 2000
Stanislav Medunastano (AT) meduna.org