<!--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 -->

