HOME LINKS SAL PUBLIC SOFTWARE SEARCH MADE UP




Inštalácia slovenčiny v Linuxe

verzia 0.6
17.8.1998, Ján ONDREJ (SAL), ondrejj(at)salstar.sk

1. Úvod

Tento článok bude venovaný hlavne inštalácii fontov s diakritikou, inštalácii slovenskej klávesnice a poslovenčeniu niektorých aplikácií. Bude zameraný na systém RedHat 5.1, ale nemal by byť problém previesť úpravy v iných systémoch.
Úvodom by som sa zmienil, prečo je lokalizácia (t.j. podpora národných jazykov potrebná). Ak chete čítať slovenský text na počítači, potrebujete na to slovenské znaky. Ak chcete aj niečo napísať, musíte mať nainštalovanú aj slovenskú klávesnicu.

2. Inštalácia fontov s podporou slovenských znakov.

Najprv si musíte stiahnuť balíky s fontami ISO8859-2. Sú to súbory:
ISO-8859-2-X11-fonts-100dpi-970301biznet-5.i386.rpm
ISO-8859-2-X11-fonts-75dpi-970301biznet-5.i386.rpm
ISO-8859-2-X11-fonts-basic-970301biznet-5.i386.rpm
Nainštalujete ich príkazom:
  rpm -Uhv ISO-8859-2-X11-fonts-*.i386.rpm

Ak chcete nainštalovať aj fonty Type1, tak si môžete stiahnuť X11fonts-ulT1mo-beta-1.0-4.noarch.rpm. Obsahuje niekoľko fontov formátu Type1, vrátane troch základných fontov: Courier, Helvetica a Times. Fonty Type1 sú menej "kostrbaté" ako pcf fonty, sú určené pre ghostscript, ale nie je problém ich nainštalovať do XWindows. Príkaz na inštalovanie je
  rpm -Uhv X11fonts-ulT1mo-beta-1.0-4.noarch.rpm

3. Inštalácia slovenskej klávesnice a knižnice libX11-forcedIM.

Slovenskú klávesnicu a spomínanú knižnicu nainštalujete z balíka XKB-czsk-forcedIM-0.03-5.i386.rpm. Nainštalujete ho príkazom:
rpm -Uhv XKB-czsk-forcedIM-0.03-5.i386.rpm
Tento balíček upraví súbory XFree86 tak, aby bolo možné používať slovenskú klávesnicu. Pomocou programu XKB-configure si nastavíte klávesnicu. Tento program podľa vášho výberu modifikuje súbor /etc/X11/XF86Config. Ak zadáte klávesnicu us_sk_qwerty, tak po spustení X servra nabehne US klávesnica, ktorú je možné prepnúť na slovenskú stlačením klávesu "Scroll Lock", alebo stlačením oboch klávesov "Shift". A tým by bola slovenská klávesnica hotová, ale k jej funkčnosti je ešte potrebné nainštalovať slovenské locales (viď ďalší bod).
Súčasťou balíka je aj knižnica libX11-forcedIM. Táto knižnica je úpravou knižnice libX11, dodávanej s XFree86. Úprava sa týka spracovania compose, t.j. kombinácií klávesov s dĺžňom, mäkčeňom, dvojbodkou a vokáňom. Táto knižnica prinúti aplikácie, aby compose fungovalo správne. Jej inštalácia je potrebná hlavne pre aplikácie používajúce knižnicu libc5. RedHat 5.0 a vyššie obsahuje dve knižnice libX11.so. Jedna je pre aplikácie používajúce libc5 a druhá pre glibc (nazývanú aj libc6).
Pred spúštaním takýchto aplikácií ešte potrebujete nastaviť premennú shellu XLIB_FORCE_I18N na hodnotu 2, v shelli bash napr. príkazom:
export XLIB_FORCE_I18N=2
Opäť nezabudnite na nastavenie slovenských locales. Viac informácií o tejto knižnici nájdete v súbore README.force.i18n.

4. Inštalácia slovenských locales.

Locales nám určujú, aké máme zvyklosti v zobrazovaní znakov, čisel, dátumu, času, peňazí, ... Nainštalujete ich z balíka locale-sk-1.0-1.noarch.rpm príkazom:
  rpm -Uhv locale-sk-1.0-1.noarch.rpm
Po inštalácii je potrebné nastaviť premenné LC_CTYPE a LANG. V shelli bash sa to robí príkazmi
  export LC_CTYPE=sk
  export LANG=sk
Tieto dva riadky môžete pridať do súboru .bash_profile, aby sa premenné nastavili pri každom prihlásení.

5. Poslovenčenie niektorých aplikácií bežiacich na textovej konzole alebo v okne terminálu.

5.1. Readline (bash, tcsh, ftp a iné)

Readline je knižnica používaná pre vstup znakov v niektorých programoch, ako sú napr. bash, tcsh, ftp a iných. Do súboru ~/.inputrc zapíšte tieto riadky:
set input-meta on
set convert-meta off
set output-meta on

5.2. Midnight commander

Mingnight commander je súborový manažér podobný známemu Norton commander-u. Jeho lokalizácia je jednoduchá, pretože ju priamo podporuje. Klávesou F9 vyvoláte menu, zvolíte "Options", "Display bits..." a zapnete voľby: "(*) Full 8 bits output" a "[x] Full 8 bits input". Po tomto kroku bude MC vypisovať diakritické znaky správne a bude ich možné aj zadávať z klávesnice. Ak sa pri vstúpení do niektorých adresárov bude zobrazovať hláška "Warning: Couldn't change to ...", tak potrebujete lokalizovať knižnicu readline (viď predchádzajúci krok).

5.3. Joe

Joe je priateľský a jednoducho používateľný textový editor. Ak v ňom chcete používať národné prostredie, potrebujete mať nainštalovanú slovenskú klávesnicu, slovenský font a navyše musíte povoliť zobrazovanie znakov s ASCII kódom 128-255 tak, ako sú (as is). To môžete spraviť zmazaním medzery v pred voľbou "-asis" v konfiguračnom súbore "joerc" (najčastejšie ho nájdete v adresári /usr/lib/joe/. Ďalšou možnosťou je pridanie parametra "-asis" pri spúšťaní programu.

5.4. Less

Less je prehliadač textových súborov, ako je napr. aj 'more'. Pomocou premennej LESSCHARSET môžete nastaviť, ktoré znaky sa majú zobrazovať ako normálne znaky. Nepozná kódovanie latin2, ale bude nám stačiť aj kódovanie latin1. Nastavíte to nasledovným riadkom v selli bash:
  export LESSCHARSET=latin1

5.5. Lynx

Lynx je textovo orientovaný WWW prehliadač. Znova je potrebné zadať kódovanie znakov. Robí sa to v jeho konfiguračnom súbore /etc/lynx.cfg. Pridáte alebo upravíte riadok:
CHARACTER_SET:ISO Latin 2

5.6. Pripojené disky

Tento odstavec je venovaný pripájaniu partícií s Windows95. Tento nám na disk zapisuje názvy súborov so znakmi v kódovaní kódovej stránky 852. Ak chcete, aby sa názvy súborov zobrazovali správne, budete na to potrebovať stabilný kernel 2.0.34 (alebo vyšší), prekompilované moduly NLS (hlavne 852 a ISO8859-2) a podporu vfat v jadre. Ďalej potrebujete v súbore /etc/fstab (alebo inde, podľa toho, kde pripájate partície) nastaviť, akú kódovú stránku táto partícia používa (codepage=852) a v akom kódovaní budú prebiehať vstupno-výstupne operácie (iocharset=iso8859-2). Tieto dva parametre môžete pridať k už existujúcim parametrom. Ak napríklad existuje v súbore fstab riadok:
  /dev/hda1 /mnt/c vfat nouser 0 0
tak ho zmeníte na:
  /dev/hda1 /mnt/c vfat nouser,codepage=852,iocharset=iso8859-2 0 0

5.7. Samba

Samba je program, ktorý umožňuje Windows klientom zdieľať disky, tlačiarne a podobne. Po nastavení lokalizácie dokáže automaticky prekódovať znaky s diakritikou z kódovania 852 na ISO8859-2. Nastavuje sa to v sekcii global v konfiguračnom súbore /etc/smb.conf pridaním nasledujúcich riadkov:
   character set = iso8859-2
   client code page = 852

6. Ako si zjednodušiť úpravu bashrc, ...

Ak sa Vám na počítač prihlasuje viacero ľudí, alebo ak používate viac kônt, nemusíte zmeny v bashrc a inputrc robiť pre každého zvlášť. Stačí, ak si stiahnete súbor lang.sk.sh (prípadne lang.sk.csh pre tcsh) a nakopírujete ho do adresára /etc/profile.d/. Miesto úpravy ~/.inputrc vytvorte súbor /etc/inputrc s rovnakým obsahom.

7. Poslovenčenie niektorých aplikácií bežiacich v XWindows.

V tejto kapitole sa budem venovať problémom s niektorými aplikáciami. Niektoré programy nepoužívajú znakové sady z prostredia XWindows, ale vlastné. Tieto aplikácie treba prinútiť, aby používali sady znakov v kódovaní ISO Latin2. Robí sa to zväčša prikopírovaním daných znakových sád a úpravou niektorých súborov.

7.1. StarOffice 4.0

StarOffice je produktom Nemeckej firmy Star Division. Môžete si ho zadarmo stiahnuť z ich WWW stránky. Je to balík, ktorý obsahuje textový editor, tabuľkový editor, grafický editor a mnoho ďalších aplikácií. Tento popis bude venonavý verzii StarOffice 4.0 sp3, ale môžete to podobne skúsiť nainštalovať aj na iných verziách.
Ako som už spomínal, StarOffice potrebuje priinštalovať fonty ISO Latin2. Vhodné sú najmä Type1 fonty z balíka X11fonts-ulT1mo-beta-1.0-4.noarch.rpm. Tieto fonty sú aj pri veľkom zvačšení hladké a aj malé sú čitateľné. Pri niektorých iných fontoch robí StarOffice chyby pri zobrazovaní na obrazovke (na tlačiarni ich už tlačí vporiadku).
Spomínaný balík nainštalujte a súbory s koncoukou "afm" prelinkujte do adresára xp3/fontmetrics/afm, ktorý nájdete v koreňovom adresári StarOffice-u. Súbory "pfb" nalinkujte do adresára xp3/pssoftfonts. Na koniec súboru xp3/psstd.fonts ešte pripíšte upravené riadky súboru fonts.dir, napr príkazom:
  grep "\.pf" fonts.dir \
    | sed -e 's/\.pfb /, /g' -e 's/-0-0-0-0-/-%d-%d-%d-%d-/g' \
    >> psstd.fonts
Názvy súborov fonts.dir a psstd.fonts pravda nahraďte celými cestami k súborom.
Komu by tento postup bol príliž zložitý, nech si stiahne skript z ftp://ftp.award.sk/pub/linux/localization/so40addfonts. Robí presne to, čo bolo popísané v predchádzajúcich krokoch.
Keďže adresáre pclsoftfonts a pssoftfonts majú rovnaký obsah, tak nemusíte "poslovenčovať" oba, stačí, ak adresár pclsoftfonts zmažete aj s obsahom a urobíte symbolickú linku z pssoftfonts na pclsoftfonts napr. príkazom:
rm -rf pclsoftfonts
cd xp3; ln -s pssoftfonts pclsoftfonts

Po spustení programu budete mať na výber niekoľko fontov s diakritikou. Ak ste nezabudli v predchádzajúcich krokoch nainštalovať slovenskú klávesnicu a libX11-force, tak by ste nemali mať väčšie problémy. Jediným problémom, ktorý som si všimol, bolo to, že v niektorých dialógoch zadávate texty so znakovou sadou Latin1, a preto sa nesprávne zobrazia. V dokumente sú ale vporiadku.

7.2. Netscape Navigator & Netscape Communicator

Netscape je svetoznámy prehliadač WWW stránok (hmm, kto by ho nepoznal). Ak sa pokúsime nejakú stránku vytlačiť, zistíme, že niektoé znaky nevytlačí správne. Potrebujeme na to skript, ktorý pred tlačou výstup Netscape-u trocha upraví. Na internete ho nájdete ako súbor s názvom "filtr". Netreba ho inštalovať, používa sa až priamo pri tlačení. Z menu "File" vyberiete "Print" a v kolónke "Print Command" prepíšete "lpr" na "filtr|lpr".
Ak je stránka kódovaná v kódovaní Windows-1250, tak ho netscape nezobrazí a ani nevytlačí správne. Túto chybu zatiaľ neviem odstrániť a dúfam, že vo verziách Netscape 5.0 už bude odstránená.

8. Záver

Ak si nainštalujete KDE (K desktop environment), môžete si zapnúť aj komunikáciu v slovenskom jazyku. Skoro všetky aplikácie potom budú vypisovať hlášky v slovenčine.
V takto nainštalovanom Linuxe môžete používať aj rôzne iné aplikácie, ktoré majú priamo podporu slovenčiny a slovenskej klávesnice (napr. LyX, alebo jeho KDE verziu klyx).
V tomto texte som sa snažil zhrnúť všetky moje skúsenosti so spojazdňovaním slovenčiny v Linuxe. Niektoré veci som z toho skúšal iba pri písaní tohto textu, takže prepáčte prípadné chyby. Ak nájdete nejakú chybu, alebo Vám niečo nepôjde, tak ma kontaktujte na e-mail adrese ondrejj@salstar.award.sk.

PRÍLOHA

Ukážky niektorých programov.

StarOffice 4.0

Ukážka tlače z programu StarOffice v programe gv

KLyX

Ukážka tlače programu KLyX v programe gv