Slovenian HOWTO

Slovenian-HOWTO je zbirka receptov za poslovenjenje sistema Linux. Opisan je vnos slovenskih znakov s tipkovnice, prikaz teh znakov na zaslonu in odtis na tiskalniku. Ogledamo si splošno zasnovo krajevne prilagoditve (pogosto se zanjo uporablja tudi tujka lokalizacija) programov, kot jo podpirajo sistemi GNU. Opisana je tudi prilagoditev nekaterih priljubljenih programov za delo s slovenščino; med njimi so urejevalniki in pisarniški paketi, programi za elektronsko pošto in spletni brskalniki, ukazne lupine, terminalski posnemovalniki in različni drugi programi. Na koncu podajamo kratek pregled virov za Linux pri nas.

Uvod

Kaj je Linux?

Linux je izvedba večopravilnega, večuporabniškega operacijskega sistema Unix za računalnike s procesorji Intel (80386, 80486, izvirni Pentium in vse njegove novejše izvedbe), Digital AXP 21×64 (Alpha), Sun SPARC in Motorola 680×0, Power PC, MIPS, ARM in druge, nekako v razredu od ročnih računalnikov Palm do velikih računalnikov IBM S/390, vštevši oboje. Jedro operacijskega sistema je ob pomoči in sodelovanju številnih zanesenjakov iz interneta napisal Linus Torvalds z univerze v Helsinkih na Finskem. Skupaj s programi iz projektov GNU, X Window System in BSD sestavlja sodobno programsko okolje, enakovredno komercialnim različicam sistema Unix.

Linux je prosti program, dostopen skupaj z izvirno kodo. Najnovejše različice programja za Linux je moč najti na:

Obe mesti sta navadno težko dostopni in zelo zasedeni, zato uporabimo eno od številnih mest, na katerih se zrcali vsebina zgornjih dveh; pametno je, da začnemo na katerem od domačih zrcal; našteta so v poglavju Linux v Sloveniji.

Večina pa verjetno tudi teh naslovov ne bo potrebovala, saj smo zadovoljni že z Linuxom, s kakršnim postreže ta ali ona distribucija. Med tistimi, ki bolj ali manj dobro pokrivajo prilagoditve Linuxa slovenskemu jezikovnemu okolju, omenimo Red Hat, Mandriva, openSUSE in Pingo (slednja je pravzaprav dopolnjena in prilagojena distribucija Red Hat).

Dogovor o zapisu

V tem spisu so zgledi izpisani v pisavi nespremenljive širine, npr.

echo „Pozdravljeni“

Psevdoimena v zgledih so izpisana z ležečo različico iste pisave, npr.

ls datoteka

Tu se od bralca ali bralke pričakuje, da bo psevdonime datoteka nadomestil(-a) z dejanskim imenom datoteke.

Z znakom ~ se po ustaljenem običaju v sistemih Unix označuje osnovno področje uporabnika (za uporabnika z imenom uporabnik je to navadno /home/uporabnik). Nanj kaže tudi sistemska spremenljivka $HOME.

Nadalje je za nastavitve spremenljivk okolja v tem spisu vseskozi rabljen zapis, ki se uporablja v Bournovi ukazni lupini in njenih izpeljankah (Kornova lupina, lupina bash). Bralec ali bralka, ki uporablja ukazno lupino C (csh ali tcsh), bo znal(a) sam(a) prevesti zglede

SPREMENLJIVKA =vrednost; export SPREMENLJIVKA

ali celo obliko, ki jo dopušča bash:

export SPREMENLJIVKA =vrednost

v analogne

setenv SPREMENLJIVKA vrednost

Za nestrpne

To poglavje ponuja nekakšna ,Izbrana poglavja iz slovenskega HOWTO` za tiste, ki se jim mudi, da bi bodisi v znakovnem bodisi v grafičnem načinu takoj začeli tipkati z našimi znaki, k branju celotnega spisa pa bi se radi vrnili kdaj pozneje v miru. Samo še to naj omenim, da sta prilagoditev konzole in prilagoditev okolja X Window System povsem neodvisni.

Naši znaki na konzoli

Trije koraki so potrebni, da znakovni terminal (ki se mu iz razlogov, ki po starosti daleč prekašajo povprečnega uporabnika Linuxa, včasih pravi tudi konzola) prilagodimo delu z našimi znaki:

  1. Omogočiti moramo prikaz naših znakov v znakovnem načinu. Opisano v razdelku Konzola poglavja Prikaz naših znakov na zaslonu.
  2. Nastaviti moramo ustrezno preslikavo tipkovnice. Opisano v razdelku Konzola poglavja Tipkovnica.
  3. Ukazno lupino moramo nastaviti tako, da bo dovoljevala vnos osembitnih znakov. Opisano v razdelku Bash, v podpoglavju o ukaznih lupinah (ali v razdelku Tcsh, če uporabljate to ukazno lupino).

Naši znaki v okolju X Window System

Z okoljem X Window System je podobno kakor s konzolo, le pot je malce daljša.

  1. Namestiti moramo naše znake in pripraviti grafično okolje X Window System do tega, da jih bo uporabljalo. Opisano v razdelku X Window System poglavja Prikaz naših znakov na zaslonu.
  2. Nastaviti moramo preslikavo tipkovnice. Opisano v razdelku X Window System poglavja Tipkovnica.
  3. Nastaviti moramo terminalski posnemovalnik, da bo prikazoval naše znake. Opisano v razdelku Xterm poglavja o terminalskih posnemovalnikih.
  4. Ukazno lupino moramo nastaviti tako, da bo dovoljevala vnos osembitnih znakov. Opisano v razdelku Bash, v podpoglavju o ukaznih lupinah (ali v razdelku Tcsh, če uporabljate to ukazno lupino).

Prikaz naših znakov na zaslonu

Nabor znakov ISO Latin 2

ISO 8859-2 ali ISO Latin 2 je član družine osembitnih naborov znakov ISO 8859, ki pokriva potrebe alfabetskih pisav (latinica in cirilica ter arabska, hebrejska in grška pisava; v pripravi sta tudi armenska in gruzinska). Družino je zasnovalo evropsko združenje izdelovalcev računalnikov (European Computer Manufacturer's Association, ECMA), kot mednarodni standard pa jo je potrdila organizacija za standardizacijo ISO s sedežem v Ženevi.

Nabor ISO Latin 2 obsega vse potrebne znake za pisanje v albanščini, angleščini, bošnjaščini, češčini, finščini, hrvaščini, irščini, lužiški srbščini, madžarščini, nemščini, poljščini, romunščini, slovaščini, slovenščini ter srbščini v latiničnem prečrkovanju.

Nekaj izdelovalcev strojne in programske opreme, med njimi IBM, Apple in Microsoft, uporablja svoje kodne strani za kodiranje znakov srednje- in vzhodnoevropskih narodov. Te kodne strani so praviloma nezdružljive tako med seboj kakor tudi s standardom ISO.

ISO 10646/Unicode

Osembitni nabori znakov imajo tudi pomanjkljivosti. Če smo računalnik nastavili tako, da pravilno prikazuje slovenske znake, s tem samodejno rešimo tudi prikaz besedil v prej naštetih jezikih, kot so poljščina ali madžarščina, ne pa tudi besedil v francoščini, ruščini ali grščini. V mednarodnem okolju so lahko s tem težave. Ponujenih rešitev je bilo več, največ pozornosti pa je bil deležen razširjeni standard Unicode.

ISO 10646 UCS (Universal Character Set) je 31-bitni nabor znakov, razdeljen na 128 ,skupin` (angl. group), vsaka od njih pa na 256 ,ravnin` (angl. plane); 65536 znakov prve ravnine je definiranih kot osnovna večjezična ravnina (Base Multilangual Plane, BMP). V tretji izdaji standarda Unicode (enakovredni standardu ISO/IEC 10646-1:2000) je definiranih 49.194 znakov, 7827 16-bitnih kod je še nedodeljenih, če štejemo še 1.048.544 za zdaj nedodeljenih mest, ki jih lahko naslavljamo s pari surogatov (torej s parom 16-bitnih kod), pa bi moral standard za nekaj časa zadostovati.

Za kodiranje besedil se ob kodiranju UCS-2, v katerem je vsak od 65.536 znakov predstavljen z dvema bajtoma, ter UCS-4, v katerem je vsak znak predstavljen s štirimi bajti, uporablja tudi pretvorna shema UTF-8 (UCS Transformation Scheme), v kateri se prvih 128 znakov iz nabora Unicode (kar ustreza naboru ASCII) kodira z enim bajtom, naslednjih 1920 (med njimi je večina drugih latiničnih znakov, cirilica, osnovna grščina, hebrejščina in osnovna arabščina) kot dva bajta, nadaljnjih 63.488 znakov (med njimi kitajski, japonski, korejski) s tremi, preostali znaki iz nabora ISO 10646 pa s štirimi do šestimi bajti. Prednost kodiranja UTF-8 je za evropske latinično pišoče narode v tem, da so besedila komaj kaj daljša od besedil, kodiranih v katerem od osembitnih standardov ISO 8859, kodiranje v UCS-2 pa pomeni dvakrat daljše besedilo (UCS-4 pa celo štirikrat daljše). Slabost je seveda v tem, da v takih besedilih ni več enostavne zveze med številom znakov v besedilu in dolžino besedila v bajtih.

Izčrpnejše informacije o uporabi kodnega nabora Unicode v Linuxu prinaša spis Unicode HOWTO, na voljo tudi v slovenskem prevodu.

Konzola

Nabor znakov za sistemsko konzolo najdemo v paketu kbd Andriesa Brouwerja z univerze v Eindhovnu na Nizozemskem. Paket je del vseh distribucij Linuxa in se samodejno naloži ob namestitvi sistema. Pisave in pretvorne tabele so zložene v imeniku /usr/lib/kbd. (Avanturisti se lahko namesto s paketom kbd igrajo s prototipnimi Linux Console Tools avtorja Yanna Dirsona. Izdaji LCT 0.2.0 ter kbd 0.99 naj bi bili usklajeni.)

Ko je paket naposled nameščen, izberemo na zaslonu drugo pisavo z ukazom consolechars. Spodnji zgled izbere pisavo z naborom znakov po standardu ISO Latin 2, veliko šestnajst pik:

consolechars –font=lat2u-16 –sfm=lat2u.sfm –acm=iso02.acm

Zaradi združljivosti s prejšnjimi izdajami paketa kbd še vedno deluje tudi ukaz setfont, ki pa bo morda v kateri od naslednjih izdaj opuščen:

setfont lat2u-16

Sistemske nastavitve zaslonske pisave so shranjene v datoteki /usr/sysconfig/i18n:

SYSFONT=„lat2-sun16“
SYSFONTACM=„iso02“
LANG=„sl_SI“

V isti nastavitveni datoteki je shranjen tudi podatek o tem, za katere jezike smo izbrali podporo ob namestitvi, na primer:

SUPPORTED=„en_US:en:sl_SI:sl“

Rok Papež predlaga naslednjo izboljšavo nastavitve spremenljivk SYSFONT in SYSFONTACM:

SYSFONT=„lat2u-16“
UNIMAP=„lat2u“
SYSFONTACM=„iso02+euro“

Pisave z našimi znaki podpirajo le ločljivost 80 x 25 znakov. Če izberemo kakšno drugo ločljivost, denimo z izbiro vga=ext v LILO, se ločljivost avtomatično vrne na 80 x 25.

Izbrana pisava velja v vseh navideznih terminalih (glej console(4)) na konzoli. Če nam to ni všeč in bi radi imeli v vsakem navideznem terminalu svojo pisavo, si lahko pomagamo s programom vtfontd Iana Zimmermana. Ta vsakič, ko zapustimo navidezni terminal, shrani izbrano konzolno pisavo in jo znova restavrira, ko se vrnemo vanj.

ftp://sizif.mf.uni-lj.si/pub/linux/vtfontd-1.0.1.tar.gz

Z izbiro pisave smo opravili šele nekako tretjino vsega dela, potrebnega, da bi lahko v tekstovnem okolju pisali po slovensko. Izvesti moramo vsaj še preslikavo tipkovnice ter omogočiti vnos osembitnih znakov v ukazni lupini. Nestrpna bralka ali bralec si lahko potrebno prebere v razdelku Konzola poglavja ,Tipkovnica` ter v o razdelku ukazni lupini Bash v poglavju o ukaznih lupinah.

Starejše izdaje

Pri starejših izdajah jedra (2.0 in starejše) je bila podpora za Unicode izvedena drugače in v njih bomo tako ukaz consolechars(8) kot tudi pisavo lat2u-16 zaman iskali. Namesto nje uporabimo ukaz setfont in pisavo lat2-16:

setfont lat2-16

Za nas zanimive pisave so še iso02.f08, iso02.f14 in iso02.f16, ter lat2-08.psf, lat2-10.psf, lat2-12.psf, lat2-14.psf in lat2-16.psf (pripono .psf lahko pri ukazu setfont izpuščamo).

X Window System

Kratka navodila za namestitev pisav z našimi znaki za uporabo z X Window System in strežnikom XFree86.

Postscript v X11

TrueType v X11

Freetype in xfsft
Xfstt
 
slovenjenje/slovenian_howto.txt · Zadnjič spremenil/a: 2007/05/16 21:16 jlp