3. Prikaz nasih znakov na zaslonu
3.1 Nabor znakov ``ISO Latin 2''
ISO 8859-2 oz. ISO Latin 2 je clan druzine osembitnih naborov znakov ISO 8859, ki pokriva potrebe alfabetskih pisav (latinica in cirilica ter arabska, hebrejska in grska pisava; v pripravi sta tudi armenska in gruzinska). Druzino je zasnovalo evropsko zdruzenje proizvajalcev racunalnikov (European Computer Manufacturer's Association, ECMA), kot mednarodni standard pa potrdila organizacija za standardizacijo ISO s sedezem v Zenevi.
Nabor ISO Latin 2 vsebuje vse potrebne znake za pisanje v albanscini, anglescini, bosnjascini, cescini, finscini, hrvascini, irscini, luziski srbscini, madzarscini, nemscini, poljscini, romunscini, slovascini, slovenscini, ter srbscini v latinicnem precrkovanju.
Nekaj proizvajalcev 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 nezdruzljive tako med seboj, kot tudi s standardom ISO.
3.2 Konzola
Nabor znakov za sistemsko konzolo najdemo v
paketu kbd Andriesa Brouwerja z univerze v Eindhovnu,
Nizozemska. Paket je del vseh distribucij Linuxa in se avtomaticno
nalozi ob namestitvi sistema. Pisave in pretvorne tabele so zlozene
v imeniku /usr/lib/kbd. (Avanturisti se lahko namesto
s paketom kbd
igrajo s prototipnimi
Linux Console Tools avtorja Yanna Dirsona.)
V starejsih distribucijah Slackware se je prevedeni paket imenoval
keytbls. Namestimo ga enako kot druge pakete, z ukazom
pkgtool
ali installpkg
.
Ko imamo paket enkrat namescen, izberemo drugo pisavo
na zaslonu z ukazom setfont
. Spodnji zgled izbere
pisavo z naborom znakov po standardu ISO Latin 2 v velikosti
sestnajst pik:
setfont lat2-16
Za nas zanimive pisave so 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
izpuscamo).
Izbrana pisava velja v vseh virtualnih terminalih (glej
console(4)
) na konzoli. Ce nam to ni vsec, ampak bi radi imeli v
vsakem virtualnem terminalu svojo pisavo, si lahko pomagamo s programom
vtfontd
Iana Zimmermana. Ta vsakic, ko zapustimo virtualni
terminal, shrani izbrano konzolno pisavo, in jo ponovno restavrira, ko
se vrnemo vanj.
ftp://sizif.mf.uni-lj.si/pub/linux/vtfontd-1.0.1.tar.gz
Z izbiro pisave smo opravili sele nekako tretjino vsega dela, potrebnega, da bi lahko v tekstovnem okolju pisali po slovensko. Izvesti moramo vsaj se preslikavo tipkovnice ter omogociti 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.
3.3 X Window System
Kratka navodila za namestitev pisav z nasimi znaki za uporabo z X Window System in streznikom XFree86.
- Pisave snamemo z najblizjega streznika FTP:
Datoteka ISO8859-2-bdf.tar.gz vsebuje najpopolnejsi nabor pisav, kodiranih po ISO 8859-2, vecino uporabnih pisav pa vsebuje tudi xfonts-iso2-0.84.tar.gz. Po obicajnem postopku (ftp://ftp.arnes.si/software/unix/Latin-2-fonts/
tar -xzf ...
) jih dekomprimiramo in razpakiramo. - Pisavam z nasimi znaki dolocimo mesto v drevesni strukturi
imenikov. Obicajno je to podimenik v imeniku
/usr/X11R6/lib/X11/fonts/ (vcasih tudi
/usr/lib/X11/fonts/,
/usr/lib/X11R6/lib/X11/fonts ali celo
/usr/X386/lib/X11/fonts/ kar pa naj nas ne moti). Mozen
primer:
Ce imenikov s tem imenom se ni, jih ustvarimo./usr/X11R6/lib/X11/fonts/iso_8859.2/75dpi/ /usr/X11R6/lib/X11/fonts/iso_8859.2/100dpi/ /usr/X11R6/lib/X11/fonts/iso_8859.2/misc/
- Streznik X ne zna uporabiti pisav v enakem formatu, kot se
distribuirajo, zato jih moramo s programom
bdftopcf
prevesti iz formata BDF (Binary Distribution Format) v format PCF (Portable Compiled Format). Starejse izdaje X Window System so namesto slednjega uporabljale format SNF (Server Native Format), ki pa se danes ne uporablja vec.
for FILE in *.bdf do bdftopcf $FILE -o `basename $FILE .bdf`.pcf done
(da, ukazi vbash
lahko segajo tudi prek vecih vrstic). Pisav v obliki BDF zdaj ne potrebujemo vec in jih lahko pobrisemo. - Streznik X zna uporabiti stisnjene datoteke s pisavami,
kar lahko izkoristimo in prihranimo se nekaj prostora na disku.
Starejse izdaje streznika X podpirajo le stiskanje sgzip *.pcf
compress
. - V vsakem imeniku s pisavami pricakuje streznik datoteko
fonts.dir, ki podaja preslikavo med opisi pisav (X
Logical Font Description, XLFD) in imeni datotek. Ustvarimo jo z
ukazom
Ukaz moramo pognati v vsakem podimeniku s pisavami.mkfontdir
- Koncno lahko streznik obvestimo o tem, da smo namestili
nove pisave, kar storimo z ukazom
xset
:
Ce je slo vse gladko, mora ukazxset +fp /usr/X11R6/lib/X11/fonts/iso_8859.2/75dpi/ xset +fp /usr/X11R6/lib/X11/fonts/iso_8859.2/100dpi/ xset +fp /usr/X11R6/lib/X11/fonts/iso_8859.2/misc/ xset fp rehash
xlsfonts -fn "*-iso8859-2"
pokazati seznam vseh novo namescenih pisav. - Ukaz
xset
velja samo, dokler ne zapustimo X Window System. Trajno spremembo dosezemo s popravkom konfiguracijske datoteke. Streznik XFree86 hrani svoje nastavitve v datoteki /etc/XF86Config (pisec teh vrstic je v nekaj letih ukvarjanja z XFree86 na razlicnih distribucijah nastavitve videl tudi ze v datotekah /etc/X11/XF86Config, /usr/X11R6/lib/X11/XF86config in /usr/X11/lib/X11/Xconfig). Poiscemo nizFontPath
in dodamo vrstice:FontPath "/usr/X11R6/lib/X11/fonts/iso_8859.2/75dpi" FontPath "/usr/X11R6/lib/X11/fonts/iso_8859.2/100dpi" FontPath "/usr/X11R6/lib/X11/fonts/iso_8859.2/misc"
To je vse. Od zdaj naprej zna X Window System na zahtevo programa
prikazati tudi nase znake. Vec o tem, kako program,
npr. xterm
, pripravimo do tega, da zahteva nase znake, si
preberemo v razdelku
xterm poglavja o
terminalskih emulatorjih.
3.4 PostScript pod X11
Streznik X zna uporabljati rastrske pisave v oblikah PCF, SNF in BDF ter vektorske pisave v obliki Speedo in Type 1. Pri majhnih velikostih (do 10 tipografskih pik) so rastrske pisave na zaslonu navadno lepse, pri vecjih velikostih, npr. v graficnih programih, pa so vektorske pisave znatno lepse.
Nekaj vektorskih pisav Type 1 v kodnem razporedu ISO Latin 2 je
pripravil Peter Soos. Pri namescanju v celoti sledimo postopku,
opisanem v razdelku
X Window System
poglavja
Prikaz nasih znakov na zaslonu. S
streznika snamemo datoteko v obliki zip
:
ftp://ftp.arnes.si/software/unix/Latin-2-fonts/l2pfb005.zip
Se vec pisav je zbrala ceska skupina, paket RPM (vsebino namestimo z
ukazom rpm -Uvh ...
) najdemo na
ftp://crash.fce.vutbr.cz/pub/linux_fonts/X11fonts-ulT1mo-beta-1.0-4.noarch.rpm
Ustvarimo nov imenik,
npr. /usr/X11R6/lib/X11/fonts/iso_8859.2/Type1, in vanj
stresemo vsebino arhiva l2pfb004.zip. Avtor je ze
pripravil datoteki fonts.scale in fonts.dir.
Ponovimo vajo z xset
in v nastavitveno datoteko dodamo
vrstico:
FontPath "/usr/X11R6/lib/X11/fonts/iso_8859.2/Type1"
Namesto xlsfonts
tokrat iz okenskega okolja X Window System
pozenimo xfontsel
. Novo namescene pisave najdemo najhitreje,
ce jih iscemo po ``crkolivnici'' (angl. type foundry) sp
(po
avtorjevih zacetnicah) v prvem stolpcu (fndry
). Izberite
kaksno veliko povecavo (pxlsz
) in primerjajte z rastrskimi
pisavami!
3.5 TrueType pod X11
Rasterizator za pisave TrueType se ni standardni del paketa X Window System. Fantje iz The XFree86 Project, Inc. nacrtujejo vkljucitev podpore zanje v izdaji XFree86 4.0.
Freetype in xfsft
Mark Leisher in Juliusz Chroboczek sta standardni streznik pisav iz okolja X Window System dopolnila s FreeType, prostim rasterizatorjem za pisave TrueType, ki so ga napisali David Turner, Robert Wilhelm, Werner Lemberg in sodelavci. Streznik je na voljo kot izvorna koda, s katero lahko pokrpate izvorno kodo streznika X, ali pa kot ze preveden program za Linux.
http://www.freetype.org/
http://www.dcs.ed.ac.uk/home/jec/programs/xfsft/
Predpostavili bomo, da ste na kakrsenkoli nacin ze uspeli priti do izvedljive datoteke xfsft.
- Ustvarimo imenik za pisave TrueType, npr. /usr/X11R6/lib/X11/fonts/TrueType/ in vanj prepisemo datoteke s pisavami TrueType.
- V omenjenem imeniku ustvarimo datoteko
fonts.scale. Preprost primer taksne datoteke je
naslednji:
5 times.ttf -monotype-times-medium-r-normal--0-0-0-0-p-0-iso8859-1 times.ttf -monotype-times-medium-r-normal--0-0-0-0-p-0-iso8859-2 times.ttf -monotype-times-medium-r-normal--0-0-0-0-p-0-iso8859-5 times.ttf -monotype-times-medium-r-normal--0-0-0-0-p-0-koi8-r times.ttf -monotype-times-medium-r-normal--0-0-0-0-p-0-iso10646-1
Opazimo lahko, da se vseh pet vrstic nanasa na eno in isto datoteko. Razlikujejo se le po kodnem naboru. Ker datoteka vsebuje vse potrebne znake, jo streznik pisav aplikacijam lahko predstavi kot katerokoli od nastetih petih kodnih naborov. Joerg Pomnitz je napisal programcek ttmkfdir, ki avtomaticno pregleda vse datoteke TrueType in ustvari datoteko fonts.scale.http://www.darmstadt.gmd.de/~pommnitz/xfsft.html
- V istem imeniku zatem pozenemo se mkfontdir. Ta ne bo napravil nic drugega, kot obstojeco datoteko fonts.scale nespremenjeno prepisal v datoteko z imenom fonts.dir.
- S streznikom pisav xfsft bodisi prepisemo obstojeci streznik (navadno /usr/X11R6/bin/xfs, ali pa ga premaknemo na kaksno drugo primerno mesto.
- Streznik pisav potrebuje konfiguracijsko datoteko. Spodnja naj
sluzi za zgled, ce nimate boljse:
clone-self = off use-syslog = off client-limit = 20 catalogue = /usr/X11R6/lib/X11/fonts/TrueType,/usr/X11R6/lib/X11/fonts/Type1 error-file = /usr/X11R6/lib/X11/fs/fs-errors # in decipoints default-point-size = 120 # x,y default-resolutions = 100,100,75,75
Zdaj lahko pozenemo streznik pisav X. Pri zgledu smo uporabili vrata 7100. Ce so na vasem sistemu ze zasedena, izberite druga. Za podrobnosti si oglejte prirocnikxfs(1)
.xfsft -port 7100 -config /usr/X11R6/lib/X11/fs/config &
- Ne da bi spreminjali pot, v kateri iscemo pisave, lahko
preverimo, ce streznik deluje:
fslsfonts -server localhost:7100
- Ce smo zadovoljni, dodamo streznik pisav med vire, kjer iscemo
pisave, npr.
Streznik pisav lahko seveda tece tudi na drugem racunalniku, tako da ni potrebe, da imamo na vseh racunalnikih v lokalni mrezi namescene vse pisave. Dokoncno dodamo streznik pisav v konfiguracijsko datoteko /etc/XF86Config:xset fp+ tcp/localhost:7100
FontPath "tcp/localhost:7100"
Xfstt
Drugi streznik pisav za X11, ki podpira pisave TrueType, je Xfstt. Pisec teh vrstic z njim nima izkusenj, je pa z veseljem pripravljen na to mesto vkljuciti izkusnje drugih. Xfstt najdete na navedenem mestu in vseh zrcalih le-tega.
ftp://metalab.unc.edu/pub/Linux/X11/fonts/Xfstt-0.9.10.tgz
Next Previous Contents