LDP/LDP/howto/docbook/Slovak-HOWTO/apps.sgml

308 lines
13 KiB
Plaintext

<!--DOCTYPE section PUBLIC "-//OASIS//DTD DocBook V4.1//EN"-->
<!-- $Id$ -->
<section id="apps">
<title id="apps.title">Poslovenčovanie konkrétnych aplikácií</title>
<para>Čím ďalej, tým viac programov obsahuje bezproblémovú podporu jazykov iných ako angličtina.
Napriek tomu je ešte pár balíkov, ktoré buď používajú vlastné rozloženia kláves, alebo je treba
nastaviť nejaké tie fonty či premenné. V tejto kapitole si popíšeme tie aplikácie, v ktorých je
pre rozbehanie slovenčiny po naištalovaní nutné urobiť viac ako
<computeroutput>export LANG=sk</computeroutput>.</para>
<para>Ak chcete naozaj plnohodnotne využívať podporu národných nastavení, vždy sa uistite, že
program, ktorý používate (alebo celá distribúcia), nie je starší ako 6 - 12 mesiacov. Je totiž
možné, že autori pridali túto podporu len v novších verziách.</para>
<para>Niektoré z nasledovných popisov nie sú pôvodné a niektoré nemusia byť ani odskúšané. Preto
je pri každom uvedený autor a jeho adresa a prípadný zdroj, z ktorého sa návod dostal do
<citetitle>Slovak-HOWTO</citetitle>.</para>
<section id="apps-bash">
<title>Bash</title>
<para>Viď <xref linkend="apps-readline" endterm="apps-readline.title">.</para>
<para>Ján 'judas' Tomka, <email>judas@linux.sk</email></para>
<para>Bash máva nepravidelne problém pri zmene premennej <envar>LC_CTYPE</envar> a zvykne sa
stať, že znaky s diakritikou sa nevypisujú napriek správnemu nastaveniu tejto premennej.
Zatiaľ sa mi nepodarilo zistiť, kde je chyba, lebo napríklad <application>Vim</application>
spustený z takéhoto <application>Bashu</application> funguje správne... Zatiaľ to riešim
príkazom
<screen>
bash$ exec bash
</screen></para>
<para>Aktuálny shell sa nahradí novým, ktorý už premennú <envar>LC_CTYPE</envar> pochopí správne
a je už možné zadávať aj znaky s diakritikou.</para>
</section> <!-- apps-bash -->
<section id="apps-joe">
<title>Joe</title>
<para>Ján Ondrej (SAL), <email>ondrejj@salstar.shadow.sk</email></para>
<para>Ak chcete používať národné prostredie, potrebujete mať nainštalovanú slovenskú klávesnicu,
slovenský font a navyše musíte povoliť zobrazovanie znakov s <acronym>ASCII</acronym> kódom
128-255 tak, ako sú (as is). To môžete spraviť zmazaním medzery pred voľbou
<computeroutput>-asis</computeroutput> v konfiguračnom súbore <filename>joerc</filename>.
Najčastejšie ho nájdete v adresári <filename class="directory">/usr/lib/joe/</filename>,
v <systemitem class="osname">Debiane</systemitem> je v adresári
<filename class="directory">/etc/</filename>. Ďalšou možnosťou je pridanie parametra
<computeroutput>-asis</computeroutput> pri spúšťaní programu.</para>
</section> <!-- apps-joe -->
<section id="apps-lynx">
<title>Lynx</title>
<para>Ján 'judas' Tomka, <email>judas@linux.sk</email></para>
<para>V konfigurácii <application>Lynxu</application> sa lokalizácie týkajú hlavne tieto
nastavenia:
<itemizedlist>
<listitem>
<para><firstterm>Display character set</firstterm> (<varname>CHARACTER_SET</varname>) ---
kódovanie znakov na výstupe. Toto hovorí o tom, do akej znakovej sady sa budú prevádzať
znaky pred zobrazením na vašej obrazovke. Ak máte štandardne nastavený slovenský font,
môžete mať toto vždy nastavené na <literal>ISO-8859-2</literal>.</para>
</listitem>
<listitem>
<para><firstterm>Assumed document character set</firstterm>
(<varname>ASSUME_CHARSET</varname>) --- aká znaková sada sa má použiť, ak html dokument
neobsahuje informáciu o svojom kódovaní a nastavenie <computeroutput>Raw
8-bit</computeroutput> je vypnuté. <acronym>HTTP</acronym> štandardom je
<acronym>ISO-8859-1</acronym> takže tak. Väčšinou majú dokumenty s iným kódovaním ako
<acronym>ISO-8859-1</acronym> informáciu o svojej znakovej sade, vtedy sa toto
nastavenie neberie do úvahy. Ak chcete, aby sa dokumenty, ktoré nemajú explicitne danú
sadu znakov, považovali za súbory s kódovaním Latin 2, nastavte si túto premennú. Možno
ju nastaviť len v súbore <filename>/etc/lynx.cfg</filename> (teda nie pre každého
užívateľa zvlášť).</para>
</listitem>
<listitem>
<para><firstterm>Raw 8-bit</firstterm> --- s týmto sa veľmi trápiť nemusíte, len v
prípade, že sa slovenské znaky nezobrazujú správne, sa vždy uistite, že to máte zapnuté
(klávesovou skratkou <keycap>@</keycap>).</para>
</listitem>
</itemizedlist></para>
<para>Konfiguračný súbor <filename>/etc/lynx.cfg</filename> upravte, aby obsahoval minimálne
prvý riadok z
<programlisting>
CHARACTER_SET:iso-8859-2
ASSUME_CHARSET:iso-8859-2
</programlisting></para>
<para>...alebo, pre užívateľský konfiguračný súbor <filename>~/.lynxrc</filename>:
<programlisting>
character_set=Eastern European (ISO-8859-2)
</programlisting></para>
</section> <!-- apps-lynx -->
<section id="apps-mdk8">
<title>Mandrake 8</title>
<para>Viď <xref linkend="apps-rpm4" endterm="apps-rpm4.title">.</para>
<para>Ján 'judas' Tomka, <email>judas@linux.sk</email></para>
<section id="apps-mdk8-nlspath">
<title>NLSPATH</title>
<para>Ak inštalujete aplikácie, ktorých súbory s preloženými hláseniami (*.mo) sa po
inštalácii nenachádzajú v adresárovej štruktúre pod
<filename class="directory">/usr/share/locale/</filename>, odstráňte zo súboru
<filename>/etc/profile</filename> riadok
<programlisting>
export NLSPATH=/usr/share/locale/%l/%N
</programlisting></para>
<para>Vraj je ten riadok nutný pre <foreignphrase>level1 compliance for
LI18NUX2000</foreignphrase>, <application>man</application> a staršie programy, ale kašľať
na štandardy a starý šrot, keď to funguje len bez tej premennej. Samozrejme, ak vám to
funguje aj s ňou, zabudnite na mňa.</para>
<para>V prípade, že nemôžete meniť <filename>/etc/profile</filename>, vložte si do svojho
<filename>~/.profile</filename> riadok
<programlisting>
unset NLSPATH
</programlisting></para>
</section> <!-- apps-mdk8-nlspath -->
<section id="apps-mdk8-sysfontacm">
<title>SYSFONTACM</title>
<para>Pre správnu funkciu fontov je nutné okrem <envar>LC_CTYPE</envar> a
<envar>SYSFONT</envar> nastaviť aj premennú <envar>SYSFONTACM</envar> v súbore
<filename>/etc/sysconfig/i18n</filename>. No ak máte vlastný úžívateľský súbor
<filename>~/.i18n</filename>, globálny sa nenačíta a premenná <envar>SYSFONTACM</envar> sa
nenastaví. Preto vždy vložte do svojho užívateľského súboru riadok:
<programlisting>
SYSFONTACM=iso02
</programlisting></para>
<para>Na vine je skript <filename>/etc/profile.d/lang.sh</filename>, pretože ten pošle na
terminál Escape sekvenciu zavedenia užívateľského fontu len v prípade, že je nastavená
premenná <envar>SYSFONTACM</envar>. Tak si ju nastavte, alebo si to nejako opravte!</para>
</section> <!-- apps-mdk8-sysfontacm -->
</section> <!-- apps-mdk8 -->
<section id="apps-mc">
<title>Midnight Commander</title>
<para>Ján Ondrej (SAL), <email>ondrejj@salstar.shadow.sk</email></para>
<para>Jeho lokalizácia je jednoduchá, pretože ju priamo podporuje. Klávesou <keycap>F9</keycap>
vyvoláte menu <menuchoice><guimenu>Options</guimenu>
<guimenuitem>Display bits...</guimenuitem></menuchoice> a zapnite voľby:
<programlisting>
(*) Full 8 bits output
[x] Full 8 bits input
</programlisting></para>
<para>Po tomto kroku bude MC vypisovať diakritické znaky správne a bude ich možné aj zadávať z
klávesnice. Ak sa pri vstupe do niektorých adresárov bude zobrazovať hláška
<quote><computeroutput>Warning: Couldn't change to ...</computeroutput></quote>, tak
potrebujete lokalizovať knižnicu <application>readline</application> (iba pre staršie
<systemitem class="osname">RedHat</systemitem> systémy).</para>
<formalpara><title>Rámčeky v MC (judas)</title>
<para>Ak používate console-tools, pre správnu funkciu rámčekov v <application>Midnight
Commander</application> a podobných textových aplikáciách nastavte font s
<foreignphrase>application charset map</foreignphrase>. U mňa funguje jedine táto
kombinácia:
<screen>
sh$ consolechars --font lat2u-16 --acm iso02
</screen></para>
</formalpara>
</section> <!-- apps-mc -->
<section id="apps-mutt">
<title>Mutt</title>
<para>Ján 'judas' Tomka, <email>judas@linux.sk</email></para>
<para>Miestnych nastavení sa týkajú v konfiguračnom súbore <filename>~/.muttrc</filename>
nasledovné premenné:
<itemizedlist>
<listitem>
<para><varname>ascii_chars</varname> -- Ak je nastavená, <application>Mutt</application>
použije znaky ASCII pri zobrazovaní vláken stromov pripojených súborov, namiesto znakov
ASC. To odporúčam, ak máte nastavený starší font bez podpory app-charset-map a namiesto
čiar a šípiek sa vám zobrazujú znaky s diakritikou, alebo tieto znaky blikajú ap.</para>
</listitem>
<listitem>
<para><varname>charset</varname> -- Znaková sada, ktorú používa váš terminál na
zobrazovanie a vkladanie textových dát. Nastaviť na kód znakovej sady fontu, ktorý máte
nastavený na konzole alebo v XTerme, atď.</para>
</listitem>
<listitem>
<para><varname>send_charset</varname> -- Nastavenie hlavičky mailu
<varname>Content-Type</varname>, konkrétne <varname>charset</varname>. Určuje aké
kódovanie používa odoslaný mail. Príjemca na základe neho môže spraviť prekódovanie do
pre neho zobraziteľnej podoby.</para>
</listitem>
</itemizedlist></para>
</section> <!-- apps-mutt -->
<section id="apps-readline">
<title id="apps-readline.title">Readline</title>
<para>Ján 'judas' Tomka, <email>judas@linux.sk</email></para>
<para>V súbore s globálnymi nastaveniami <filename>/etc/inputrc</filename> alebo vo svojom
užívateľskom súbore <filename>~/.inputrc</filename> je pre správnu interpretáciu osembitových
znakov nastaviť tieto premenné:
<itemizedlist>
<listitem>
<para><varname>convert-meta</varname> --- Ak je nastavená na `on', Readline konvertuje
znaky s nastaveným ôsmym bitom na sekvenciu znakov ASCII odstránením ôsmeho bitu a
pridaním znaku Esc na začiatok.</para>
</listitem>
<listitem>
<para><varname>input-meta</varname> --- Ak je nastavená na `on', Readline umožní
osembitový vstup (neodstráni ôsmy bit z prečítaných znakov) bez ohľadu na to, či to
terminál podporuje. Meno <varname>meta-flag</varname> je synonymom pre túto
premennú.</para>
</listitem>
<listitem>
<para><varname>output-meta</varname> --- Ak je nastavená na `on', Readline bude zobrazovať
znaky s nastaveným ôsmym bitom priamo a nie ako escape sekvencie.</para>
</listitem>
</itemizedlist></para>
<para>Takže, do jedného zo spomínaných súborov vložte takéto nastavenia:
<programlisting>
set convert-meta off
set input-meta on
set output-meta on
</programlisting></para>
</section> <!-- apps-readline -->
<section id="apps-rpm4">
<title id="apps-rpm4.title">RPM4</title>
<para>Ján 'judas' Tomka, <email>judas@linux.sk</email></para>
<para>Tento malý skriptík <quote>doinštaluje</quote> slovenské preklady všetkých aplikácií,
ktoré máte nainštalované. Môžu vám chýbať, ak ste pri inštalácii operačného systému nezvolili
slovenský jazyk.</para>
<para>
<programlisting>
export RPM_INSTALL_LANG=sk
cd /mnt/cdrom/Mandrake/RPMS/
for i in *.rpm; do
j=$(rpm -q --queryformat "%{NAME}" -p $i)
if rpm -q $j; then
rpm -Uvh --replacepkgs $i
fi
done
</programlisting></para>
<para>Už nikdy nezabudnite nastaviť premennú <varname>RPM_INSTALL_LANG</varname>!</para>
</section> <!-- apps-rpm4 -->
<section id="apps-rxvt">
<title>Rxvt</title>
<para>Ján 'judas' Tomka, <email>judas@linux.sk</email></para>
<para>Náprava toho, že <application>Rxvt</application> vypisuje mŕtvy kláves priamo a nečaká na
ďalší znak, s ktorým by ho skombinoval, je otázka jedného argumentu pri konfigurovaní:
<screen>
sh$ ./configure --enable-xim
sh$ make
sh$ su -c'make install'
</screen></para>
<para>Týmto sa <application>Rxvt</application> skompiluje s podporou pre <acronym>XIM</acronym>
(<foreignphrase>X Input Method</foreignphrase>) protokol. Ten umožňuje alternatívne metódy
vstupu (napr. kinput2) a tiež správne nastavenia pre ľudí, čo používajú mŕtve klávesy.</para>
</section> <!-- apps-rxvt -->
<section id="apps-samba">
<title>Samba</title>
<para>Ján Ondrej (SAL), <email>ondrejj@salstar.shadow.sk</email></para>
<para>Po nastavení lokalizácie dokáže automaticky prekódovať znaky s diakritikou z kódovania 852
na <acronym>ISO-8859-2</acronym>. Nastavuje sa to v konfiguračnom súbore
<filename>/etc/smb.conf</filename> pridaním nasledujúcich riadkov do sekcie
<computeroutput>[global]</computeroutput>:
<programlisting>
character set = iso8859-2
client code page = 852
</programlisting></para>
</section> <!-- apps-samba -->
</section> <!-- apps -->