Naprej Nazaj Vsebina

6. Poslovenjenje različnih programov

Na tem mestu bi se v idealnem svetu opis poslovenjenja Linuxa lahko končal. Povedali smo vse potrebno o vnosu in izpisu naših znakov, ter kako z definiranjem spremenljivk okolja programom dopovemo, da delamo s slovenskimi besedili. To poglavje je takorekoč v celoti posvečeno izjemam -- programom, ki iz takšnih ali drugačnih razlogov ne uporabljajo lokalizacijskih spremenljivk, alternativnim metodam za vnos ali izpis znakov, ki v izjemnih primerih (npr. če nimamo tipkovnice s slovenskimi znaki) lahko vseeno pridejo prav, in podobnemu.

6.1 Ukazne lupine

bash

Nastavitve ukazne lupine bash so v datoteki ~/.inputrc (ki jo po potrebi ustvarimo):

set meta-flag on
set convert-meta off
set output-meta on
Te tri vrstice je morda pametno dodati tudi v /etc/skel, tako da jih podedujejo tudi vsi na novo ustvarjeni uporabniki.

Tole se sicer ne navezuje na slovenščino, ko ste že pri poslu, si lahko življenje olajšate še s tem, da tipkam Home, Delete in End vrnete njihov običajni pomen: v isto datoteko (~/.inputrc) dodate še vrstice

"\e[1~": beginning-of-line
"\e[3~": delete-char
"\e[4~": end-of-line

tcsh

Vnos osembitnih znakov omogočimo, če v nastavitveno datoteko (/etc/csh.login za skupne nastavitve oz. ~/.tcshrc ali ~/.cshrc za osebne nastavitve) dopišemo vrstico:

setenv LC_CTYPE sl_SI.iso88592

Med nami: kaže, da je ukazni lupini tcsh povsem vseeno, na kaj nastavite spremenljivko LC_CTYPE, samo da ni nedefinirana.

Pazite: ukazna lupina mora biti prevedena z vklopljeno izbiro ``8-bit''! To lahko preverite z ukazom ``set'':

rufko:~% set
...
version tcsh 6.06.00 (Cornell) 1995-05-13 (i386-intel-linux) options 8b,dl,al
rufko:~%
Pomemben je tisti ``8b''. Če se pri vas ne izpiše, vam verjetno ne preostane drugega, kot da snamete izvorno kodo in jo prevedete.

6.2 Terminalski emulatorji

xterm

V datoteki ~/.Xresources (osebna nastavitev) ali pa v datoteki /usr/lib/X11/app-defaults/XTerm (skupna nastavitev) določimo pisave, ki jih uporablja XTerm. Izberemo pisavo, ki ima vse znake enako široke, npr. ,,fixed`` ali ,,Courier``, in je kodirana po razporedu ISO Latin 2. Zgled:

XTerm*font:     -*-fixed-medium-r-normal--16-*-iso8859-2
XTerm*boldFont: -*-fixed-bold-r-normal-sans-16-*-iso8859-2

Primerne pisave lahko izpišemo z ukazom xlsfonts (glej še razdelek X Window System poglavja ``Prikaz naših znakov na zaslonu''):

xlsfonts -fn '*-fixed-*-iso8859-2'

rxvt

Po podatkih v češkem HOWTO rxvt zaenkrat (razvojna izdaja 2.4.6) ne deluje z našimi znaki brez posegov v izvorno kodo. Potrebne posege najdete v ``Czech HOWTO'' (ki ni del arhiva LDP; glejte razdelek Zahvala, kje ga najdete).

6.3 Pisarniški paketi

WordPerfect

(Jaka Mele, Vse naredim pod Linuxom!, Win.Ini, l.6, št.9, str.60)

WordPerfect ima vse potrebne znake že v svoji tabeli. Vse, kar moramo napraviti, je da za naše črke definiramo makroukaze. Recimo, da bi radi definirali črko Š (velika črka S s strešico). Pričnemo s snemanjem makroukaza (recimo mu Scaron), skočimo v tabelo znakov, v njej izberemo črko Š, zaključimo makro in nazadnje pri nastavitvah povežemo makro z izbrano tipko.

(Jaka Mele, Message-id: <Pine.LNX.4.05.9812241251460.15368-101000@ro.zrsss.si>

---------- Forwarded message ----------
Date: Thu, 24 Dec 1998 11:04:33 +0000
From: "[ALAMUN ALEN" <alen.salamun@uni-mb.si>
To: jaka.mele@lugos.si
Subject: WordPerfect SLO tipkovnica

Hi!

Daj prosim spravi to v mojem imenu na lugos listo, ker je verjetno 
trazena roba. Uspelo mi je definirati SLO tipkovnico brez makrojev. Sem na 
fax-u pa ne morem poslati jaz na Lugos listo.

LP, Alen

Datoteko SLO.WGK s prireditveno tabelo za slovensko tipkovnico najdete na

ftp://sizif.mf.uni-lj.si/pub/i18n/SLO.WGK

(Andrej Komelj, Message-id: <19981224182341.A3794@perun.mist.si>)

Odgovor na vprasanje: "Kako je s podporo sumnikom v WP-ju 8.0 pod
Linuxom?" se glasi: SLABO.

1. Resitev v obliki "insert symbol -> multinational" je v teoriji
uporabna, vendar... Hja, multinational znaki so v WP Multinational
fontu, le-ta pa je najbolj podoben Roman-WP fontu. Ima "serife", zato
Helvetica in Zurich odpadeta. Vendar se tudi pri Roman-WP pojavijo
tezave, ce se le-tega uporablja v bold, italic ali bold-italic obliki.

2. Resitev v obliki uporabe Type 1 fontov z definiranimi slovenskimi
znaki (kje se jih dobi? odg: poglejte si v Slovenian-HOWTO, ali jih
skopirajte iz OS/2-ja, ce ga imate) pa zal tudi odpade, ker "brezplacna"
verzija WP-ja nima vsebovanega font installerja (xwpfi) in zato kakrsno
koli dodajanje fontov v wp.drs odpade... Skratka, tako kot je nekdo ze
napisal; brezplacen-in-neoskubljen WP je ena velika potegavscina... Za
Americane je mogoce se nekako uporaben, za povprecnega Slovenca, ki pise
tudi slovenska besedila, pa je popolnoma brez vrednosti. :-(

Nazaja k LyX-u in ze sestavljenim vzorcem. :-)

Mimogrede, kaj se je zgodilo z WP-jem?!? Dokler se ni bil v lasti
Corel-a, je znal postavljati stresice na katere koli znake v katerem
koli fontu. Z WP-jem 6.0 za DOS sem tako pisal tekste v TrueType, Type 1
in CG fontih... POVSOD sem lahko uporabljal sumnike. Huh, "napredek" pa
tak.

-- 
Kome.

Star Office

(Jaka Mele, Vse naredim pod Linuxom!, Win.Ini, l.6, št.9, str.60)

StarOffice je malce težavnejši, zato, ker rabi dodatne Type1 fonte, pa vendarle povejmo recept še zanj. Kot prvo si torej moramo dobiti slovenske oziroma latin2 pisave (pfb, afm, fonts.dir in fonts.scale) iz recimo ftp strežnika društva uporabnikov linuxa slovenije ftp://ftp.lugos.si/pub/lugos/arhiv/Type1-Latin2-Fonts/, datoteki l2afm004.zip in l2pfb004.zip). Nato arhiva odpremo v /usr/lib/X11/fonts/Type1.Latin2/, ter ta imenik dodamo v spisek imenikov s pisavami, ki jih uporabi XWindow strežnik. To naredimo tako, da v datoteko /etc/X11/XF86Config dopišemo:

FontPath "/usr/X11R6/lib/X11/fonts/Type1.Latin2/"

Za tem poženemo

xset fp+ /usr/X11R6/lib/X11/fonts/Type1.Latin2/

ter še xset fp rehash. Nato je potrebno v direktoriju /usr/local/StarOffice3-1/x3p/fontmetrics/ za .afm datoteke narediti povezave iz /usr/lib/X11/fonts/Type1.Latin2/. Podobno naredimo še za direktorij /usr/local/StarOffice3-1/x3p/pssoftfonts/, le da sem povežemo .pfb datoteke. Skoraj smo že na koncu, v datoteko /usr/local/StarOffice-3.1/xp3/psstd.fonts dodamo po vzoru že dodanih pisav v datoteki fonts.dir iz Latin2 področja, vse nove pisave, tako, da namesto npr. arial.pfb pride arial, namesto -0-0-0-0 pa -%d-%d-%d-%d... Saj se takoj vidi. Na koncu si premapirajmo še tipkovnico in sicer s programom xmodmap, tako da izvršimo xmodmap xmodmap.si. Če imate starejši Xwindow sistem, si boste morda morali xmodmap.si še popraviti, da vam bosta tipki Backspace in Delete delali normalno, sicer pa samo poženete swriter3 in uživate v dodatnih slovenskih pisavah.

Applixware

(Boris Požar, Message-Id: <346044BF.FE97E3AF@guest.arnes.si>)

Z Lugosovega strežnika snamemo pisave TrueType v kodnem naboru ISO 8859-2. Potem jih kot root s FontManagerjem dodamo v katalog pisav in zadeva je rešena.

ftp://ftp.lugos.si/pub/lugos/arhiv/Type1-Latin2-Fonts/l2ttf004.zip

6.4 Urejevalniki

GNU emacs

Emacs je, tako kot njegov avtor, kontroverzni Richard M. Stallman, urejevalnik, glede katerega ljudje niso indiferentni: ali ga obožujejo, ali pa sovražijo. Emacs je več kot urejevalnik; je takorekoč način življenja. V njem lahko pišete programe, iz njega poganjate prevajalnik, pišete besedila, poganjate črkovalnik, poganjate TeX, berete pošto in novice... Ko enkrat v resnici dobro obvladate Emacs, imate realne možnosti, da se vam še dobršen del naslednjega stoletja ne bo treba naučiti nobenega novega urejevalnika. Dokazano pa ljudje shajajo tudi brez njega.

GNU emacs 20

Z zadnjo izdajo urejevalnika Emacs in standardno slovensko tipkovnico je prilagoditev posebno enostavna. Vse, kar potrebujemo, je


;;; Turn on Latin-2 both as input and output method (Emacs 20.*
;;; and onwards)
(set-language-environment "Latin-2")

Kasneje lahko način Latin-2 izberemo za vnos in izpis v menuju Mule / Set Language Environment / European / Latin-2.

Starejše izdaje programa GNU emacs

Privzeta nastavitev urejevalnika je omejitev na sedembitne znake (ASCII). Nastavitev spremenimo tako, da v datoteko z nastavitvami dodamo naslednjih nekaj vrstic:


;;  Omogočimo izpis znakov s kodo večjo od 127
(standard-display-european t)

;;  Omogočimo vnos znakov s kodo večjo od 127
(set-input-mode (car (current-input-mode))
        (nth 1 (current-input-mode))
        0)

Prilagoditev Emacsa je možno izvesti v eni od naslednjih datotek z nastavitvami:

Z vnosom in izpisom naših znakov seveda še ni konec zgodbe o prilagoditvi Emacsa za slovenščino. Želimo na primer tudi, da se ukaza forward-word in backward-word ne bosta zatikala na naših znakih, ter da tudi za naše znake pravilno teče pretvarjanje med velikimi in malimi črkami. S starejšimi izdajami Emacsa to ni vedno povsem trivialno. Bralcu bo v veliko pomoč zbirka nasvetov Slovenščina in računalniki avtorja Aleša Koširja, v kateri je programu GNU emacs so posvečeno obširno poglavje. Najdete jo na

http://nl.ijs.si/gnusl/tex/tslovene/slolang/slolang.html

crisp

Crisp je urejevalnik v duhu urejevalnika Brief z burno zgodovino. Napisal ga je Paul Fox iz Anglije in ga distribuiral kot ``program na pokušino'' (shareware). Zadnja takšna različica je 2.2e iz leta 1991 in je po nekaterih vesteh avtor ne podpira več. Novejše (trenutno 5.1) pa trži podjetje Vital, Inc. iz Teksasa, ZDA. Crisp je nekako bližje pecejevskemu duhu, kot pa sta Emacs in Vi; če se nobenega od teh dveh ne morete navaditi, je morda Crisp prava izbira.

Privzeta nastavitev urejevalnika Crisp 2.2e je, da znakov s kodami od 127 dalje ne prikaže, ampak izpiše njihovo šestnajstiško kodo, ki jo uvede z znakoma \x. Pomaga, če naložimo paket z izvorno kodo Crisp in v datoteki $(SRC)/crisp2.2e/src/crunch/tty/xterm.cr popravimo drugi argument funkcije set_term_features() iz NULL na "%c". Popravljeni makroukaz prevedemo:

crunch xterm.cr
Rezultat, popravljeni xterm.cm, postavimo med ostale, navadno v imenik /usr/local/lib/crisp/macros/tty.

Makro xterm velja, kot bi iz imena sami uganili, za Crisp, pognan v oknu XTerm znotraj X Window System. Enaka intervencija piscu teh vrstic ni uspela na linux.cr (konzola) in xcrisp.cr (različica Crisp za X11). Poleg tega se je na starejši verziji Linuxa (1.0.8) crunch pritoževal nad predprocesorjem za C, /lib/cpp. Pomagala je logična povezava:

ln -s  /usr/lib/gcc-lib/i486-linux/2.5.8/cpp /lib/cpp

Aleš Košir je napisal za Crisp makro slovene:

http://nl.ijs.si/gnusl/tex/tslovene/src/slovene.cr
Z njim lahko vnašamo naše znake tudi na tipkovnicah, ki nimajo primernih tipk na način: namesto č vtipkamo "c, makro pa pretvori zaporedje v ustrezen znak. Poleg ISO Latin 1 podpira še nekaj drugih kodiranj, ki so v uporabi v naših krajih. Navodila za uporabo so na voljo tudi prek WWW:
http://nl.ijs.si/gnusl/tex/tslovene/slolang/

Del distribucije Caldera OpenLinux je tudi ``lahka'' izvedba urejevalnika Crisp, CRiSP LiTE. Caldera ponuja tudi možnost kasnejše ugodnejše nadgraditve na polno izvedbo. CRiSP LiTE nima zgoraj opisanih težav z vnosom osembitnih znakov.

vi

Urejevalnik vi izvira iz sive davnine Unixa. Zaradi težav z licenčnino najdete na sistemih Linux namesto originalnega Vi navadno urejevalnik vim (Vi IMproved) avtorja Brama Moolenaarja, včasih pa tudi ``elvis'', delo Steva Kirkendalla, ali nvi iz distribucije BSD 4.4. Ideje, na katerih temelji ``vi'' so v temeljih ortogonalne na vse, kar ste se o urejevalnikih naučili pod MS-DOS. Kljub temu pa je glede na to, da je ``vi'' edini urejevalnik, ki zanesljivo obstaja na čisto vsakem Unixu, pametno poznati nekaj osnovnih ukazov za delo z njim.

Po izkušnjah pisca tako originalni vi kot tudi vim sama po sebi brez težav prepuščata osembitne znake. Težave lahko včasih povzročajo zunanji programi, ki jih kličemo iz urejevalnika (npr. fmt za poravnavanje besedila). Navadno pomaga, če v ~/.profile določimo spremenljivko LC_CTYPE (glej poglavje Slovenski locale).

6.5 Elektronska pošta

Pine

Pine najprej prebere skupne nastavitve iz /usr/local/lib/pine.conf (ali /etc/pine.conf, zatem pa še osebne nastavitve iz ~/.pinerc. V enem ali drugem poiščemo niz character-set in postavimo to spremenljivko na ISO-8859-2:


...
# character-set should reflect the capabilities of the display
# you have. Normal default is US-ASCII.  Typical alternatives
# include ISO-8859-x, where x is a number between 1 and 9.
character-set=ISO-8859-2
...

elm

Opozorilo: pisec že dolgo ne uporablja več tega programa in zapisanega ni preveril. Danski in nemški HOWTO trdita, da je bodisi dovolj v ukazni lupini postaviti spremenljivko LANG na vrednost iso_8859_1, bodisi v konfiguracijski datoteki ~/.elm/elmrc nastaviti vrednosti naslednjih spremenljivk:


...
charset=iso-8859-1
displaycharset=iso-8859-1
textencoding=8bit
...

Vse ISO 8859-1 bi bilo pri nas verjetno potrebno nadomestiti z ISO 8859-2.

Še enkrat prosim koga, ki ta program v resnici uporablja, da opiše svoje izkušnje.

Netscape Mail

V Netscape Mail 4.06 je možno pisati naše znake v telesu sporočila, ne pa tudi v glavi. Ko imamo enkrat nameščene naše pisave in urejeno preslikavo tipkovnice (razdelka Pisave pod X11 in Tipkovnica pod X11), le še v menuju View poštnega programa izberemo ``Encoding'', tam pa ``Central European (ISO-8859-2)''.

Vesel bom opisa izkušenj z drugimi izdajami programa Netscape Mail.

6.6 Svetovni splet

Lynx

Lynx pozna od izdaje 2.5 dalje tudi kodno stran ISO 8859-2. Nastavimo jo lahko na enega od treh načinov. Prvi je, da izberemo O)ptions, zatem pa C)harset, ter z pritiskanjem na kurzorske puščice izberemo željeni nabor znakov. Drugi je, da v datoteki ~/.lynxrc (osebna nastavitev) nastavimo

character_set=ISO Latin 2
In zadnji je, da v datoteki /usr/lib/lynx.cfg (skupna nastavitev)
CHARACTER_SET:ISO Latin 2

Netscape Navigator

(Metod Koželj, Message-id: <Pine.HPP.3.96.981216083349.17728E-100000@hmljhp.rzs-hm.si>)

Netscape Navigator, pa tudi brkljalnik iz Netscape Communicator, uporabljata nabor znakov, ki ga nudi X Windows System. Za prikaz naših znakov je torej najprej namestiti pisave za X11 (poglavje Pisave pod X11). Ko Navigator zaženemo, sam ugotovi, da so na voljo tudi pisave za 'Central European (ISO-8859-2)'. Če pregledujemo stran, ki brkljalniku pravilno sporoči uporabljeni nabor znakov, potem Navigator avtomatično uporabi pisavo s pravim kodnim naborom. Seveda lahko spremenimo osnovno velikost črk ali pa obliko za proporcionalno pisavo.

To storimo tako, da v 'Edit / Preferences / Appearance / Fonts' določimo, da spreminjamo nastavitve za srednjeevropske pisave ('For the Encoding / Central European (iso-8859-2)'), potem pa izberemo, s katero pisavo naj Navigator prikazuje tekste. Navigator nam sam ponudi le pisave s pravim naborom znakov.

Če pregledujemo strani, ki imajo sicer pravilen razpored črk (razpored ISO 8859-2 in ne Windows-1250), pa Navigator ne uporabi pisave s pravim razporedom črk, lahko razpored preklopimo ročno z izbiro ,,View / Encoding / Central European (ISO-8859-2)``.

Ob izbiri pisave s pravilnim razporedom črk in ob pravilnem razporedu tipk na tipkovnici lahko uporabljamo naše črke tudi pri pisanju v modulu 'Page Composer'.

Netscape Communicator 4.06 in novejši znajo na Unixih, ki imajo nameščene pisave ISO 8859-2, prikazati tudi strani, napisane v kodni strani Microsoft CP1250, označene kot windows-1250 v glavi.

Amaya

(Andraž Hvalica, Message-id: <374E958D.ADD55B49@amis.net>)

Torej takole je s to Amayo: šumniki (in ostale reči - preizkusil sem tudi nemške preglase) čisto lepo delujejo. V čem je štos? Verjetno gre za hrošča, morda ga tudi ni več, imam Amayo 1.4a, čisto možno je, da je zunaj že kaj novejšega... Vse, kar je treba narediti je, da pri datoteki, ki jo začneš pisati, nastaviš ,,Attributes / lang / ISO_Latin_2``, vendar mora biti v datoteki že en znak, ki ga je treba še prej označiti. Potem so šumniki vidni v Amayi.

Vendar je tukaj še nekaj takega kot kavelj 22 - v Navigatorju je treba imeti nastavljeno ,,View / Character Set / Central European (ISO 8852-2)``. To imamo Slovenci itak vsi, ampak to vseeno ni čisto v redu. Amaya bi morala v html datoteko zapisati character=iso-8859-2, vendar tega ne naredi. Pač pa napiše <body lang="x-Latin-2">, kar, vsaj jaz, prvič vidim.

(Andraž Hvalica, Message-id: <3788BBF0.1041C481@amis.net>)

Z interneta sem potegnil novo Amayo 2.1 in si ogledal, kako je s podporo za Latin-2. Približno tako trapasto je, kot pri eni od starejših različic, ki sem jo že imel.

Še zmerom velja, da je treba napisati katerikoli znak, preden program sploh reagira na naše nastavitve za jezik. Ko vpišemo ta famozni znak, izberemo ,,Attributes / lang...``, izberemo Czech.

S tem dosežemo, da program vtipkane znake upošteva kot iso-8852-2, vendar v glavo HTML dokumenta tega ne zapiše. Pač pa napiše:


<body lang="cs">

Kar je brez veze. Vsaj z Navigatorjem kakega efekta nima. Če nimamo sami nastavljenega kodnega zapisa iso 8859-2, šumnikov ne bomo videli. Zato moramo sami v glavo HTML dopisati charset=iso-8859-2; tako so šumniki vidni zmeraj.

Spletni strežniki

Opomba: spodnje besedilo je prevod navodil ,,Configuring WWW Server for ISO 8859-2`` http://sizif.mf.uni-lj.si/linux/cee/app/httpd.html, ta pa se v veliki meri naslanjajo na besedilo Marka Martinca ,,Rešitev problema slovenskih šumnikov v HTML dokumentih`` http://www.ijs.si/doc/www-csz.html.

Načela

  1. Določilo HTTP zahteva, da prenosni protokol HTTP prenaša tok podatkov brez omejitve na nabor ASCII ali izpisljive znake. To vključuje osembitne znake, šestnajstbitne znake kot npr. ISO10646 ali daljnovzhodne jezike, slike, animacije, zvok ipd.
  2. Vsebino spisa določa glava MIME (vrstica Content-Type. To je edina informacija o zvrsti informacije, ki jo ima na voljo brskalnik, zato mora odražati pravo vsebino spisa.
  3. Privzeto kodni razpored (terminologija MIME/HTTP uporablja izraz ,,nabor znakov``) za spise HTML je ISO 10646 oz. njegova osembitna podmnožica ISO 8859-1. Vsak spletni brskalnik mora biti zmožen prikazati spis HTML, ki uporablja kodni razpored ISO 8859-1. Glava MIME za spise HTML, kodirane po ISO 8859-1, je:
    Content-Type: text/html
    
  4. Določilo HTTP dovoljuje, da z dodatnim določilom charset v vrstici Content-Type glave MIME izberemo drug kodni razpored. Načeloma je dovoljen katerikoli kodni razpored, registriran pri IANA Character Set Registry. Iz praktičnih razlogov pa je priporočljivo, da se omejimo na naslednje entitete HTTP:
    charset = "US-ASCII"
                 | "ISO-8859-1" | "ISO-8859-2" | "ISO-8859-3"
                 | "ISO-8859-4" | "ISO-8859-5" | "ISO-8859-6"
                 | "ISO-8859-7" | "ISO-8859-8" | "ISO-8859-9"
                 | "ISO-2022-JP" | "ISO-2022-JP-2" | "ISO-2022-KR"
                 | "UNICODE-1-1" | "UNICODE-1-1-UTF-7" | "UNICODE-1-1-UTF-8"
                 | token
    
    Entiteta, ki je definirana pri IANA Character Set Registry, mora predstavljati nabor znakov, kot je bil prijavljen pri IANA. Prazna entiteta implicira nabor ISO 8859-1 (kar vključuje US-ASCII, ki je njegova podmnožica). Spise HTML, kodirane v skladu s kodnim razporedom ISO 8859-2, morajo potemtakem vsebovati v glavi MIME vrstico
    Content-Type: text/html; charset=ISO-8859-2
    
    Pri tem presledek med podpičjem in charset=ISO-8859-2 ni obvezen.
  5. Numerične entitete oblike &#nnn; določajo pismenko s kodo nnn v referenčnem razporedu znakov (ISO 8859-1 oz. ISO 10646), ne pa v trenutno izbranem. Na ta način torej sploh ne moremo uporabljati naših znakov, kodiranih skladno s kodnim razporedom ISO 8859-2, lahko pa uporabimo 16-bitne kode ISO 10646. Črko č (mali C s kljukico) lahko torej zapišemo kot &#269;. In samo tako.

Praktični oziri

Kdaj je uporaba kodnega razporeda ISO 8859-2 priporočljiva, kdaj pa ne? Znotraj intraneta (notranjega informacijskega sistema) v okolju, kjer se uporablja ISO 8859-2, je morda smiselno ta razpored uporabiti za vse spise. Če pa je informacija namenjena širšemu občinstvu, pa je potrebno vedeti, da je uporabniki zunaj srednje ali vzhodne Evrope, kjer se ta kodni razpored uporablja, informacije morda ne bodo mogli prikazati. Veljavno določilo prenosnega protokola HTTP namreč od spletnih brskalnikov ne zahteva, da prikažejo spise HTML, ki uporabljajo kodni razpored ISO 8859-2. V primeru, da brskalnik ne zmore prikazati strani v zahtevanem kodnem razporedu, lahko ta problem ignorira in stran (nepravilno) prikaže v nekem drugem kodnem razporedu (navadno ISO 8859-1), ali pa ponudi, da spis shranimo na disk. Zato je priporočljivo, da vstopne točke v vaš informacijski sistem ne uporabljajo kodnih razporedov, različnih od ISO 8859-1.

Podrobnosti izvedbe

Obdelali bomo tri metode, s katerimi lahko spletni strežnik prilagodimo, da pravilno postreže uporabniku s spisom, kodiranim po ISO 8859-2:

Določitev nove pripone za statične spise

Ob zahtevku za spis večina spletnih strežnikov izve zvrst statičnih spisov iz pripone datoteke ter na osnovi tega izdela glavo MIME, s katero opremi spis, preden ga izroči prejemniku. Več različnih pripon lahko ustreza isti zvrsti spisa (priponi .jpeg in .jpg na primer obe določata zvrst image/jpeg), obratno pa ne - ena pripona lahko določa kvečjemu eno zvrst spisa.

Nobene splošne metode ni, ki bi dovoljevala uporabo pripone .html za spletne spise, kodirane bodisi v skladu s kodnim razporedom ISO 8859-1, bodisi ISO 8859-2, in pričakovala od spletnega strežnika, da se bo nekako odločil, s kakšno glavi MIME bo opremil ene in druge. Ena možnost je vsekakor, da pripono .html trajno vežemo na zvrst spisov HTML, kodirani skladno s kodnim razporedom ISO 8859-2. Ta rešitev ima seveda očitno pomanjkljivost za občinstvo, ki ne more prikazati tega nabora znakov.

Tukaj predlagana rešitev izkorišča zmožnost spletnih strežnikov, da določijo novo pripono datoteke in jo vežejo na zvrst spisa text/html; charset=ISO-8859-2 v glavi MIME. To možnost podpira večina spletnih strežnikov. Strežnika W3C ter NCSA httpd (ter vse njune izpeljanke, npr. Apache) uporabljata ukaz AddType v nastavitveni datoteki za vezavo dodatnih zvrsti spisov na nove pripone datotek. Z enostavno in domisleno shemo (glej Rešitev problema slovenskih šumnikov v HTML dokumentih lahko zagotovimo pravilne glave MIME za zvrsti spisov, ki uporabljajo kodne razporede, različne od ISO 8859-1. Če na primer določimo pripono .html-l2 za spise, kodirane skladno s kodnim razporedom ISO 8859-2, moramo v nastavitveni datoteki dodati vrstico:

Dinamično prekodiranje

Na vsakem spletnem strežniku, ki podpira vmesnik Common Gateway Interface (CGI) lahko izvedemo dinamično prekodiranje spletnih spisov. Poleg dobrih strani (iz enega samega izvora lahko ponudimo spletni spis v mnogo različnih kodnih razporedih) ima ta metoda tudi slabe: pretvarjanje spisa po eni strani porablja procesorski čas strežnika, po drugi pa dinamičnih spisov posredniki (angl. proxy) navadno ne shranjujejo v medpomnilniku, zato z njimi dodatno obremenjujemo komunikacijske vode.

Primera skriptov, ki izvajata dinamično prekodiranje:

Sledijo tri rešitve, ki uporabljajo posebnosti in nestandardne razširitve programske opreme. Prvi dve se nanašata na spletni strežnik, zadnja na priljubljeni spletni brskalnik Netscape Navigator. Istega problema se je lotil G. Nicol s predlogom ``MIME Header Supplemented File Type''.

Metainformacija za spletni strežnik W3C

Spletni strežnik W3C (nekoč poznan kot CERN WWW) omogoča dodajanje metainformacije v glave MIME odhodnih spisov.

Po privzeti nastavitvi išče strežnik metainformacije v datotekah s pripono .meta podimenik .web imenika s spisi. Če na primer spletne spise hranimo v imeniku /WWW/Hypertext in želimo opremiti spis isolatin2.html v njem s pravilno glavo MIME, napravimo to takole:

Datoteke ASIS za strežnik Apache

Strežnik Apache določa poseben tip datoteke, imenovan ASIS. Strežnik pošlje datoteko ASIS odjemniku natančno takšno, kot je (angl. ``as is''), ne da bi jo opremil z glavo, ki jo sicer zahteva protokol HTTP. Datoteka sama mora zato vsebovati vsa potrebna polja, ki jih zahteva protokol HTTP, tem sledi prazna vrstica in vsebina spisa HTML.

V nastavitveni datoteki za strežnik določimo, da pripona .asis pripada zvrsti spisa httpd/send-as-is:

AddType httpd/send-as-is asis

Primer datoteke ASIS:

Status: 200 OK
Content-Type: text/html; charset=ISO-8859-2

<HTML>
<HEAD>
<TITLE>Hello world</TITLE>
</HEAD>
<BODY>
<H1>Živjo svet!</H1>
</BODY>
</HTML>

Kot vidite, morate v datoteko vključiti tudi tromestno odzivno kodo strežnika. Strežnik vedno doda polji Date: in Server:, zato teh ne smemo vključiti v datoteko.

Značka <META> z označbo HTTP-EQUIV

V določilu HTTP 2.0 predlagana značka <META> z označbo HTTP-EQUIV je bila predlagana kot neobvezna metoda, s katero lahko strežnik potegne dodatno metainformacijo iz zaglavja (<HEAD>) spletnega spisa in jo uporabi pri tvorjenju glave MIME. Piscu teh vrstic ni znano, da bi kateri strežnik to v resnici tudi počel. Tovrstno razčlenjevanje spletnih spisov verjetno predstavlja preveliko obremenitev za procesor in bi se močno poznalo pri odzivnosti spletnega strežnika. Pač pa so namesto tega začeli to informacijo uporabljati spletni brskalniki (Netscape Navigator, na primer, to počenja od izdaje 2.0 dalje).

Primer spisa z metainformacijo o uporabljenem kodnem razporedu v zaglavju spisa:

<HTML>
<HEAD>
  <TITLE>Naslov<TITLE>
  <META HTTP-EQUIV="Content-Type"
      CONTENT="text/html; charset=ISO-8859-2">
</HEAD>

<BODY>
Besedilo...
</BODY>
</HTML>

6.7 Delo na oddaljenem računalniku

Z ukazoma telnet ali rlogin lahko prek omrežja TCP/IP delamo na drugem računalniku.

Težave z osembitnimi znaki pri tem so redko posledica napačne nastavitve v maloprej omenjenih programov, saj privzeti nastavitvi pri obeh podpirata osembitne znake. V primeru težav se poleg teh programov splača pogledati še

Telnet

Telnet eksplicitno pripravimo do vzpostavitve osembitne zveze z ukazom toggle binary:

~> telnet
telnet> toggle binary
Negotiating binary mode with remote host.
telnet> open računalnik

Telnet omogoča tudi, da si nastavitve za izbrane računalnike vnesemo v nastavitveno datoteko, ~/.telnetrc. Vnosi imajo obliko:

...
biofiz.mf.uni-lj.si
        set binary true
...

rlogin

Privzet način zveze pri programu ``rlogin'' je osembiten, eksplicitno pa lahko to določimo z določilom ``-8'':

rlogin računalnik -8

6.8 TeX in LaTeX

Poslovenjenje paketa LaTeX obsega

Urejanje stvarnega kazala po slovenski abecedi zaenkrat še ne gre avtomatično. Pokažemo, kako lahko težavo z nekaj truda obvozimo.

Podporo za neangleške jezike v LaTeXu je poenotil paket babel Johannesa Braamsa z Nizozemske, ki je standardni del vseh sodobnih distribucij paketa TeX na Linuxu, kot sta teTeX in NTeX:

ftp://sunsite.informatik.rwth-aachen.de/pub/comp/tex/teTeX/
http://web.mathematik.uni-stuttgart.de/ntex/WWW/

Z uporabo izbire ``slovene'' v paketu babel se avtomatično izberejo slovenska imena pod- in nadnapisov, naslovov ipd., slovenska pravila za zlogovanje besed (če imamo nameščene slovenske zlogovalne vzorce; poglavje Slovenska pravila za deljenje besed), in 7-bitni način vnosa znakov "c"s"z:

\usepackage[slovene]{babel}

V novi različici LaTeXa (LaTeX2e) lahko s paketoma fontenc in inputenc izberemo tudi 8-bitno kodno tabelo T1 (znano tudi kot DC ali Cork) in 8-bitni vnos znakov. Primer celotnega spisa v LaTeXu:


\documentclass[a4paper]{article}
\usepackage[slovene]{babel}
\usepackage[T1]{fontenc}
\usepackage[latin2]{inputenc}
\begin{document}
Čeprav se pouk na železničarski šoli v Šentvidu običajno konča 
šele ob štirih, odpešačijo učenci iz občin Želimlje in Žetale domov 
že četrt čez tri.
\end{document}

LaTeX 2.09

V starejši različici paketa LaTeX, LaTeX 2.09, ne moremo uporabiti mehanizma inputenc. Pomagamo si s stilom latin2.sty Andreja Brodnika. Primer uporabe:


\documentstyle[latin2]{article}
\begin{document}
...
\end{document}

Stil latin2 je na voljo na vseh strežnikih CTAN, npr.
ftp://ftp.dante.de/tex-archive/macros/latex209/contrib/latin2/

Slovenska pravila za deljenje besed

Datoteko s slovenskimi pravili za zlogovanje besed je v okviru svoje diplomske naloge leta 1990 izdelal Matjaž Vrečko, in jo predal v last slovenskemu društvu uporabnikov sistema TeX (TeXCeH). Na voljo je za individualno uporabo brez namena pridobivanja premoženjske koristi. Od leta 1995 dalje zanjo skrbi dr. Leon Žlajpah z IJS, ki jo je posredoval tudi skrbniku sistema sistema babel za tujejezično podporo v sistemu TeX, Johannesu Braamsu. Sistem babel praviloma dobimo skupaj z distribucijo sistema TeX. Trenutno zadnja izdaja je 2.3, datirana 1997-04-15.

V distribuciji teTeX, ki je najbolj priljubljena distribucija na Unixu, vklopimo podporo za slovenske delilne vzorce tako, da kot administrator poženete program texconfig. V menuju izberemo možnost HYPHEN - hyphenation table (tex/latex). Program texconfig pri tej izbiri požene urejevalnik vi in vanj naloži datoteko language.dat. Za tiste, ki ga ne poznate, najnujnejše o uporabi le-tega: levo, desno, gor in dol po besedilu se premikate s tipkami h, l (mali L), j in k. Znak pobrišete tako, da kurzor pripeljete nanj in pritisnete tipko x. Datoteko shranite in zaključite z delom s pritiskom na tipko Esc in vpisom :wq (dvopičje, mali W, mali Q), ki mu sledi Enter. Oboroženi s tem znanjem v datoteki language.dat pobrišemo komentar (znak za procent) pred zapisom slovene sihyph22.tex, shranimo in zapustimo urejevalnik. Program texconfig bo avtomatično ustvaril nove formatne datoteke z vgrajenimi delilnimi vzorci.

Pisec teh vrstic je imel nepojasnjene težave z datoteko sihyph22.tex, ki so enako čudežno izginile, ko mu je dr. Žlajpah poslal novo izdajo slovenskih delilnih vzorcev. Dobimo jo lahko na ftp://sizif.mf.uni-lj.si/pub/i18n/tex/sihyph23.tex in jo postavimo ob bok stari datoteki, navadno v imenik /usr/TeX/texmf/tex/generic/hyphen/. Poženemo texconfig, tam najprej osvežimo seznam datotek (izbira REHASH - rebuild ls-R database), zatem pa ponovimo postopek iz prejšnjega odstavka, s tem, da ime sihyph22.tex popravimo v sihyph23.tex.

Dodatne informacije o slovenski skupini uporabnikov TeX najdete na

http://vlado.fmf.uni-lj.si/texceh/texceh.htm

LyX

(Roman Maurer, <roman.maurer@fmf.uni-lj.si>)

Če uporabljamo LyX s standardno slovensko tipkovnico (102/105 tipk), ga lahko enostavno prilagodimo za delo s slovenščino:

  1. Tipkovnica v strežniku Xwindow mora biti nastavljena tako, da z njo v splošnem lahko vnašamo naše znake (to je opisano v razdelku X Window System poglavja ``Tipkovnica'').
  2. Poženemo LyX in nastavimo:
    Options / Screen Fonts / Font Norm = iso8859-2
    
    Žal izgleda, da LyX tega podatka nikamor ne shrani. Zato moramo ročno dodati v datoteko lyxrc (sistemska je navadno v imeniku /usr/share/lyx/, uporabniška pa v ~/.lyx/) naslednjo vrstico:
    \font_norm iso8859-2
    
  3. Odpremo (nek) dokument in izberemo:
    Layout / Document / Language = slovene
    Layout / Document / Encoding = latin2
    Layout / Paper / Papersize = A4
    Layout / Quotes = ,,text`` & Double
    
  4. Če želimo te nastavitve uporabljati v vseh naših dokumentih (in to seveda želimo), uporabimo še izbiro
    Layout / Save layout as default
    
  5. Kadar uporabimo razred "letter" namesto "article", odgovorimo pritrdilno na vprašanje:
    "Should I set some parameters to letter the defaults
    of this document class?"
    

Zaradi napake v LyXu do vključno 1.0.0pre2 ni mogoč vnos 8-bitnih znakov v matematičnem tekstovnem načinu (math text mode). Pomagamo si tako, da postavimo kar celo formulo kot TeXovo kodo ("tex-mode" - s tem sicer izgubimo WYSIWYG). Razvijalci LyX-a so o napaki obveščeni in jo bodo verjetno popravili v naslednjih izdajah.

7-bitni vnos šumnikov kot "c"s"z je otežen, ker LyX avtomatično pretvori dvojni narekovaj v dva enojna. Prva misel je, da si lahko spet pomagamo z izbiro "tex-mode", udobnejša možnost pa je, da predefiniramo dvojni narekovaj. V datoteko emacs.bind (ali pa cua.bind, kar že uporabljamo) dodamo vrstico:

\bind "S-quotedbl" "accent-caron"

Naše znake bomo zdaj dobili s pritiskom na "c"s"z. S tem žal izgubimo avtomatično pretvarjanje dvojnega narekovaja v dva enojna, a vsega pač ne moremo imeti...

Datoteka emacs.bind je v imeniku ~/.lyx/bind/. Če je še ni, lahko napravimo kopijo sistemske z imenika /usr/share/lyx/bind/ in jo popravimo.

Če imamo staro slovensko tipkovnico (ameriška s čšž namesto ~{`), lahko uporabimo premapiranje tipkovnice v Latin 2 Alena Šalamuna <alen.salamun@medinet.si>:

Options / Keyboard / Primary = slovene

Ustrezna datoteka slovene.kmap je tipično v imeniku /usr/share/lyx/kbd/.

Takole pa lahko uporabimo črkovalnik ispell za črkovanje slovenskih spisov:

Edit / Spellchecker / Spellchecker Options
  * Use alternate language: slovensko
  * Extra special chars allowed in words: 蚞ȊŽ

V slovenski izdaji urejevalnika LyX pa:

Uredi / Črkovalnik / Izbire črkovalnika
  * Uporabi drug jezik: slovensko
  * Dodatni posebni znaki, dovoljeni v besedah: 蚞ȊŽ

Pregled besedila na zaslonu

V Evropi je standardni format papirja A4, kar moramo dopovedati tudi programom za pregled besedila na zaslonu:

XDvi

V datoteko ~/.Xresources (osebna nastavitev) dodamo vrstico


XDvi.paper:     a4

Ghostview

V datoteko ~/.Xresources (osebna nastavitev) ali pa v datoteko /usr/lib/X11/app-defaults/Ghostview (skupna nastavitev) dodamo vrstice:


!  Ghostview naj uporablja format A4
*pageMedia:             A4
!  Tudi Ghostscript naj uporablja format A4
*Ghostview.interpreter: gs
*Ghostview.arguments:   -sPAPERSIZE=a4

Ker tiskamo prek Ghostscripta tudi iz drugih programov, ne le iz Ghostview, je pametno, če mu v nastavitveni datoteki (navadno /usr/share/ghostscript/izdaja/gs_init.ps ali /usr/local/share/ghostscript/izdaja/gs_init.ps) globalno izberemo velikost strani A4. Poiščemo spodnjo vrstico in jo odkomentiramo (pobrišemo začetni znak za procent):
% (a4) /PAPERSIZE where { pop pop } { /PAPERSIZE exch def } ifelse

Stvarna kazala

Najpogostejše orodje za izdelavo stvarnih kazal v sistemu TeX je Makeindex. Ta je le omejeno lokaliziran (poleg angleških pozna še nemška pravila za razvrščanje) in naše abecede ne pozna.

Stvarno kazalo v LaTeX izdelamo z ukazom \makeindex v preambuli; vsako besedo, ki jo želimo vnesti v kazalo, pa moramo posebej označiti z ukazom \index{vnos}. Ker navadno želimo stvarno kazalo tudi izpisati, dodamo še ukaz \printindex, ta pa je definiran v makropaketu makeidx. Zgled, datoteki recimo zelez-sola.tex, naj ilustrira povedano:


\documentclass[a4paper]{article}
\usepackage[slovene]{babel}
\usepackage[T1]{fontenc}
\usepackage[latin2]{inputenc}
\usepackage{makeidx}
\makeindex
\begin{document}
Čeprav se pouk na železničarski
šoli\index{s~ola@šola!z~eleznic~arska@železničarska} v
Šentvidu\index{S~entvid@Šentvid} običajno konča šele ob štirih,
odpešačijo učenci iz občin Želimlje\index{Z~elimlje@Želimlje} in
Žetale\index{Z~etale@Žetale} domov že četrt čez tri.
\printindex
\end{document}

Trik je v tem, da makeindex dopušča skladnjo \index{vnos1@vnos2}, kjer je vnos1 tisti, po katerem se kazalo ureja, vnos2 pa besedilo, ki se v resnici izpiše. Našo črko Č zato pišemo kot C~ (znak ~ je v kodnem razporedu ASCII za vsemi črkami), in tako bo zanesljivo uvrščena za vsemi C. Besedilo prevajamo v treh korakih:

latex zelez-sola
makeindex zelez-sola
latex zelez-sola

Prvi latex iz datoteke zelez-sola.tex izdela datoteko zelez-sola.idx, ukaz makeindex to uredi in iz nje izdela datoteko zelez-sola.ind, to pa vsrka drugi ukaz latex.

6.9 groff

Groff nudi precej omejeno podporo za naše znake. Pri izpisu na zaslon (način nroff) lahko goljufamo tako, da zapišemo datoteko z osembitnimi znaki ISO Latin 2, programu pa lažemo (izbira -Tlatin1), da so kodirani po razporedu ISO Latin 1.

Henryk Paluch je napisal paket groff-latin2, s katerim lahko naše znake vnašamo kot makroukaze, na primer:

\('a    a z ostrivcem
\(vc    c s strešico
\vou    u s krožcem
Izpis v obliki PostScript v času pisanja tega spisa še vedno ne deluje, čeprav bi se mehanizme iz paketa ``ogonkify'' Juliusza Chroboczka podobno kot v programu ``a2ps'' verjetno dalo uporabiti tudi tu. Še največji problem je verjetno ta, da je paket ``groff'' osirotel, saj ga prvotni avtor, James Clark, ne vzdržuje več. Za paket groff-latin2 zdaj skrbi Jan Kasprzak <kas@fi.muni.cz>, najdete ga na
ftp://ftp.fi.muni.cz/pub/localization/groff/

6.10 Perl

Od izdaje 5.004 dalje tudi Perl podpira lokalizacijo. Nastaviti moramo primerne spremenljivke okolja in bodisi v programu uporabiti klic


use locale;

bodisi poklicati Perl z izbiro -Mlocale. Nekaj primerov; preizkus smo si sposodili pri Janu Pazdziori:
~> LC_CTYPE=sl_SI.iso88592 perl -Mlocale -e '$_="težišče\n"; s/\w/$&:/g; print;'
t:e:ž:i:š:č:e:
~> LC_CTYPE=C perl -Mlocale -e '$_="težišče\n"; s/\w/$&:/g; print;'
t:e:ži:šče:
~> LC_CTYPE=sl_SI.iso88592 perl -e '$_="težišče\n"; s/\w/$&:/g; print;'
t:e:ži:šče:

Kot vidimo, je samo v prvem primeru, ko smo izvedli oboje: nastavili spremenljivko LC_CTYPE in Perl poklicali z izbiro -Mlocale, naše znake res upošteval kot črke (\).

6.11 Črkovanje: ispell

Večina sodobnih distribucij Linuxa že pride s črkovalnikom Ispell; manjka pa mu slovenski besedni zaklad. Tega najdete katerikoli od navedenih datotek:

ftp://sizif.mf.uni-lj.si/pub/i18n/ispell/ispell-sl-0.1-1.src.rpm
ftp://sizif.mf.uni-lj.si/pub/i18n/ispell/ispell-sl-0.1-1.i386.rpm
Če je v istem imeniku na voljo kakšna kasnejša izdaja, seveda vzamemo to.

Prva arhivska datoteka je prevedena na sistemu Caldera OpenLinux 1.3 in jo lahko na enakih sistemih namestimo enostavno z ukazom

rpm -i ispell-sl-0.1-1.i386.rpm

Kopije datoteke, izvorne in prevedene za različne sisteme, najdemo tudi na ustreznih mestih za anonimni FTP:

ftp://contrib.redhat.com/libc5/i386/ispell-sl-0.1-1.i386.rpm
ftp://contrib.redhat.com/libc5/SRPMS/ispell-sl-0.1-1.i386.rpm
ftp://ftp.calderasystems.com/pub/OpenLinux/contrib/RPMS/libc6/ispell-sl-0.1-1.i386.rpm
ftp://ftp.calderasystems.com/pub/OpenLinux/contrib/SRPMS/libc6/ispell-sl-0.1-1.src.rpm

Na vseh ostalih sistemih moramo prevedeno datoteko zgraditi sami. Kot sistemski oskrbnik poženemo

rpm --rebuild ispell-sl-0.1-1.src.rpm
Redhat Package Manager bo v nekaj minutah bo pripravil datoteko ispell-sl-0.1-1.i386.rpm in jo pustil v imeniku /usr/src/OpenLinux/RPMS/i386/, /usr/src/redhat/RPMS/i386/ ali distribuciji, ki jo uporabljate, ustreznem. To datoteko lahko zatem namestimo z ukazom
rpm -i /usr/src/redhat/RPMS/i386/ispell-sl-0.1-1.i386.rpm

Ispell uporabljamo tako, da mu v ukazni vrstici podamo jezik, v katerem je napisano besedilo, na primer english, deutsch, francais ali slovensko:

ispell -d slovensko besedilo.txt

Natančnejša navodila za ravnanje s programom Ispell boste našli v priročniku, več o prilagoditvi paketa ispell za slovenščino si lahko preberete na strani Slovenščina in računalniki Aleša Koširja. Ispell s slovenskim besednim zakladom poganja tudi spletni črkovalnik Trubar istega avtorja:

http://nl.ijs.si/cgi-bin/truform.pl

Osnovni slovenski leksikon izvira iz baze, ki jo je podjetje Amebis d.o.o. prispevalo za mednarodni projekt MULTEXT-East; s posredovanjem dr. Tomaža Erjavca z odseka za inteligentne sisteme na Institutu Jožef Stefan pa je na voljo za nepridobitno uporabo.

6.12 Pretvarjanje med različnimi kodiranji

Razen ISO Latin 2 vsebuje vse naše znake še nekaj drugih naborov: Microsoft Codepage 1250, IBM Codepage 852, JUS I.B1.002, Apple MacOS-CE, Apple MacOS-Croatian, Kamenicky, ISO Latin 4, ISO Latin 6, ISO Latin 7 itd.

Čeprav ni težko napisati programčka za pretvorbo iz enega kodnega nabora v drugega, je pripravno uporabiti že izdelan program. Eden takih je GNU recode, dostopen npr. na strežniku ARNES:

ftp://ftp.arnes.si/software/gnu/recode/recode-3.4.tar.gz
Starejše izdaje GNU recode (pred 3.5) ne poznajo Microsoftovih kodnih strani 1250-1259.

Uporaba je enostavna:

recode yu:latin2 datoteka
pretvori datoteko iz kodnega nabora JUS I.B1.002 v kodni nabor ISO Latin 2. Kot običajno izda tudi tu izbira --help še dodatne možnosti.

Novejše izdaje programa Recode (ki poznajo tudi nekaj več kodnih naborov), uporabljajo malo drugačno skladnjo:

recode yu..latin2 datoteka
Po izkušnjah pisca pa je prečrkovanje (npr. ,,nabori`` latex ali flat) še vedno omejeno na pretvorbo iz in v nabor ISO 8859-1. Novejše izdaje programa Recode najdete na:
ftp://ftp.iro.umontreal.ca/pub/recode/

6.13 Drugi programi

Pregledovalnik less

Less (avtor Mark Nudelman) je program za pregledovanje besedil na zaslonu, in je priljubljena zamenjava standardnega more.

Less prilagodimo za izpis osembitnih znakov z nastavitvijo v ~/.profile:

LESSCHARSET=latin1; export LESSCHARSET
latin1 namesto latin2 ni pomota. Less zaenkrat slednjega še ne pozna, ker pa ga pravzaprav zanima samo, kateri znaki so običajni, kateri pa kontrolni (ki zahtevajo posebno obravnavo), ker pa je razpored znakov enak v celotni družini ISO 8859, lahko izberemo kar latin1. Namesto tega lahko tudi eksplicitno navedemo zaporedje tipa znakov v naboru:
LESSCHARDEF="8bcccbcc18b95.33b."; export LESSCHARDEF
Vsi nabori iz družine ISO 8859 imajo osem binarnih znakov (posebnih znakov, ki jih praviloma ni v besedilih), tri kontrolne znake, binarni znak, dva kontrolna znaka, osemnajst binarnih znakov, 95 navadnih znakov, 33 binarnih znakov, in normalne znake do konca tabele.

Koledar gcal

Vsi sistemi Unix imajo vgrajen koledarček cal, ki pa je precej anglocentričen. Thomas Esken iz Nemčije je napisal alternativni koledarček gcal. Od izdaje 2.40 dalje pozna tudi slovenske praznike. Najdemo ga na običajnih mestih distribucije GNU. Najbližje je verjetno:

ftp://ftp.arnes.si/software/gnu/

Spodnja vrednost spremenljivke GCAL ustreza našim razmeram:

GCAL="--cc-holidays=SI --gregorian-reform=1582"; export GCAL


Naprej Nazaj Vsebina