Patch ogonkify pre spracovanie xkbprint výstupu

Preferovaným spôsobom výroby rozložení národných klávesníc v X Window System je rozšírenie XKB. Pokiaľ potrebujete výsledné rozloženie zdokumentovať, existuje program xkbprint, ktorý vygeneruje pekný PostScriptový obrázok rozloženia.

Program bohužiaľ podporuje iba symboly z iso-8859-1. Napriek tomu, že manuál tvrdí

-lc <locale>
Specifies a locale in which KeySyms should be resolved.

v skutočnosti sú správne zobrazené iba symboly patriace do latin-1. Symboly z iso-8859-2 sú zobrazené s použitím ich názvu, napr. scaron.

Modifikoval som preto program Juliusza Chroboczka ogonkify, ktorý je široko používaný pre umožnenie výstupu znakov s diakritikou, ktoré nie sú v latin1, na PostScriptové zariadenia, aby tieto názvy poznal a správne spracoval. Balík ogonkify je tiež súčasťou balíka a2ps pre formátovanie rôznych textov.

Juliusz Chroboczek má zásadu neintegrovať ďalšie rozšírenia do hlavnej distribúcie, ale nechať distribúciu na jednotlivých autoroch. Preto patch publikujem namiesto toho, aby som sa snažil zaradiť ho do distribúcie ogonkify. Je to tiež dôvod, prečo nie je inštalácia celkom jednoduchá.

V súčasnosti sú podporované iba symboly z iso-8859-2 - nemám žiadnu možnosť testovať iné znakové sady. Pokiaľ niekto vytvorí príslušné patche, rád ich akceptujem.

Inštalácia

V podstate máte nasledovné možnosti:

Chcete patchovať distribúciu a2ps

Distribúciu môžete získať tu, je ale celkom pravdepodobné, že ju nájdete na distribučnom médiu vašej preferovanej distribúcie (napr. SRPMS adresár na CD RedHat-u). Patch pre a2ps verzie 4.12 potom stiahnete tu.

Patch je treba dekomprimovať a aplikovať v adresári, kam ste rozbalili distribúciu použitím

  patch -p1 < a2ps-xkbprint.patch

Pokiaľ používate nejaký balíčkovací systém (napr. RPM) a viete čo s ním, možno budete chcieť patch integrovať priamo do balíka. Potom skompilujte a nainštalujte a2ps podľa jeho inštrukcií.

Chcete patchovať distribúciu ogonkify

Distribúciu môžete získať tu a patch verzie Thu Sep 3 18:07:37 BST 1998 tu.

Rozbalíte distribúciu, dekomprimujete patch, prejdete do vrchného adresára ogonkify a patch aplikujete

  patch -p1 < ogonkify-xkbprint.patch

Potom nainštalujte ogonkify podľa jeho inštalačných inštrukcií.

Ogonkify už máte nainštalovaný a s distribúciou sa vám babrať nechce

Stiahnete tento patch, dekomprimujete ho, prejdete do adresára, kde je váš ogonkify nainštalovaný (e.g. /usr/bin), urobíte si jeho zálohu a aplikujete patch

  patch < ogonkify.prog-xkbprint.patch

Použitie

Patch pridáva novú voľbu -XP, ktorá zaistí všetko potrebné pre výpis xkbprint iso-8859-2 rozložení. Použitie je potom napr.:

Výpis aktuálneho rozloženia pre prvé dve skupiny slovenského národného prostredia

  xkbprint -lc sk_SK -nkg 2 -color :0 -o - | ogonkify -XP > layout.ps

Výpis konkrétneho rozloženia (us_sk_qwerty) pre prvé dve skupiny slovenského národného prostredia

  xkbcomp -R/usr/X11R6/lib/X11/xkb keymap/xfree86 -xkm -m us_sk_qwerty -o - | \
  xkbprint -lc sk_SK -nkg 2 -color :0 -o - | ogonkify -XP > layout.ps

Výsledok (orezaný na zaujímavú časť klávesnice, aby boli znaky lepšie viditeľné) je potom podobný napr.

sk_us_qwerty

Záverečné poznámky

Tento patch je (C) Stanislav Meduna 1999. Použitie je úplne voľné a neexistuje ABSOLÚTNE ŽIADNA ZÁRUKA. Nemám čas patch aktívne podporovať alebo vysvetľovať použitie tohoto patchu a/alebo XKB. V podstate ste ponechaní sami na seba - pokiaľ neviete, čo je patch, čo robí xkbprint alebo ako kompilovať programy zo zdrojového kódu, pravdepodobne si budete musieť tieto informácie zohnať predtým, ako sa pokúsite patch použiť.

Konštruktívne komentáre, hlásenia o chybách a patche sú vítané - použite nižšie uvedenú adresu.

Bratislava, 13. 3. 1999

Stanislav Meduna
stano (AT) meduna.org