Ocenite etot tekst:


-------------------------------------------------------------------------
   (S) Sobchenko Evgenij (quaker@paco.net)
   Original stat'i raspolozhen po adresu
   http://zipper.paco.net/~quaker/rus.txt
-------------------------------------------------------------------------




Dannaya dokumentaciya soderzhit instrukciyu po rusifikacii
tekstovogo i graficheskogo rezhimov operacionnoj sistemy Linux.
Dokumentaciya garantiruet rusifikaciyu:
RedHat 5.0; RedHat 5.1; RedHat 5.2; RedHat 6.0;
Mandrake 5.1; Mandrake 5.2; Mandrake 5.3; SlackWare 3.6
distributivov Linux.





Itak, chto Vam potrebuetsya dlya rusifikacii tekstovogo rezhima Linux?

Estestveno, nabor konsol'nyh kirillicheskih shriftov. Obychno oni prisutstvuyut v
kazhdom distributive Linux i nahodyatsya v direktorii /usr/lib/kbd/consolefonts
vmeste so vsemi ostal'nymi shriftami. I, konechno zhe, russkaya konsol'naya
raskladka (console character map).
Pervoe, chto Vam sleduet sdelat' - vybrat', kakoj konsol'noj kodirovkoj Vy
budete pol'zovat'sya. A ih vsego dva tipa. Sejchas poprobuyu opisat' ih
ustanovku.

Esli Vy yavlyaetes' priverzhencem programm, ispol'zuemyh neposredstvenno v
tekstovom rezhime, to bish' v konsoli, Vy mozhete predpochest' shriftys Alt
kodirovkoj i konsol'noj raskladkoj. Ee osnovnoe dostoinstvo zaklyuchaetsya
v tom, chto ona pozvolyaet otobrazhat' simvoly psevdografiki.

Nizhe perechisleny komandy, posledovatel'noe vypolnenie kotoryh, pozvolit Vam
ispol'zovat' Alt kodirovku:

$ loadkeys /usr/lib/kbd/keymaps/i386/qwerty/ru1.map.gz

$ setfont /usr/lib/kbd/consolefonts/Cyr_a8x16

$ mapscrn /usr/lib/kbd/consoletrans/koi2alt

$ echo -ne "\033(K"

Pervaya komanda zagruzhaet kartu russkoyazychnoj raskladki klaviatury ru1.map,
nahodyashchuyusya v /usr/lib/kbd/keymaps/i386/qwerty/. V bolee rannih distributivah
Linux karty raskladki (keyboard maps) nahodyatsya v /usr/lib/keytables.
Vtoraya komanda zagruzhaet ekrannyj shrift Cyr_a8x16, neposredstvenno
neobhodimyj dlya Alt kodirovki i nahodyashchijsya v /usr/lib/kbd/consolefonts.
Tret'ya komanda zagruzhaet fajl-perekodirovshchik. I poslednyaya komanda yavlyaetsya
svoeobraznoj magicheskoj posledovatel'nost'yu, tol'ko posle vypolneniya kotoroj
Vy smozhete vvodit' simvoly russkogo alfavita.

Krome Alt kodirovki Vy mozhete ispol'zovat' goluyu koi kirillicheskuyu
kodirovku. Ona ne pozvolyaet otobrazhat' psevdografiku, no zato russkie
bukvy budut vvodit'sya bez lishnej perekodirovki.

Nizhe perechisleny komandy, posledovatel'noe vypolnenie kotoryh pozvolit Vam
ispol'zovat' koi kodirovku:

$ loadkeys /usr/lib/kbd/keymaps/i386/qwerty/ru1.map.gz

$ setfont /usr/lib/kbd/consolefonts/koi8-8x16

Pervaya kommanda zagruzhaet sootvetstvuyushchuyu raskladku klaviatury.
Vtoraya kommanda zagruzhaet ekrannyj shrift koi8-8x16, neposredstvenno
neobhodimyj dlya koi kodirovki.

Posle vypolneniya etih komand kak dlya Alt, tak i dlya koi kodirovki Vy
mozhete pereklyuchat' raskladku klaviatury dlya vvoda kirillicheskih
simvolov s pomoshch'yu klavishi pravyj Alt. V lyubom sluchae Vy mozhete izmenit'
klavishu-pereklyuchatel'. Dlya etogo zapustite programmu showkey.
Nahodyas' v angloyazychnom registre nazhmite klavishu-pereklyuchatel', kotoraya
pereklyuchaet raskladku klaviatury v dannyj moment. Programma vydast vam
kod etoj klavishi, zapishite ego. Zatem nazhmite tu klavishu, kotoruyu Vy
hotite sdelat' pereklyuchatelem i zapishite ee kod. Posle prodelannoj
procedury podozhdite 10 sekund, poka programma ne zavershit rabotu. (Drugim
sposobom prekratit' ee vypolnenie nel'zya!) Teper' otkrojte (predvaritel'no
raspakovav) ispol'zuemyj Vami fajl raskladki, nadjdite v nem kod ispol'zuemoj
vami v dannyj moment ulavishi-pereklyuchatelya raskladki i zapomnite ego znachenie.
Pomenyajte mestami znacheniya kodov etih klavish i schitajte, chto vse gotovo.


Dlya uproshcheniya raboty mozhno napisat' shell-skript, zagruzhayushchij nuzhnuyu dlya Vas
kodirovku avtomaticheski. Dlya avtomatizacii zagruzki koi kodirovki sozdajte
fajl s lyubym nazvaniem, naprimer rc.kbdkoi sleduyushchego soderzhaniya:

-------------------------------------------------------------
#!/bin/sh
if [ notset.$DISPLAY != notset. ]; then
    echo "^Basename $0:  cannot run under X"
    exit
fi

loadkeys /usr/lib/kbd/keymaps/i386/qwerty/ru1.map.gz
setfont /usr/lib/kbd/consolefonts/koi8-8x16
--------------------------------------------------------------

Posle chego razreshite prava na zapusk etogo fajla, kommandoj chmod +x <imya
fajla>.

Dlya avtomatizacii zagruzki Alt kodirovki, sozdajte drugoj fajl, naprimer
rc.kbdalt :

--------------------------------------------------------------
#!/bin/sh
if [ notset.$DISPLAY != notset. ]; then
    echo "^Basename $0:  cannot run under X"
    exit
fi

loadkeys /usr/lib/kbd/keymaps/i386/qwerty/ru1.map.gz
setfont /usr/lib/kbd/consolefonts/Cyr_a8x16
mapscrn /usr/lib/kbd/consoletrans/koi2alt
echo -ne "\033(K"
--------------------------------------------------------------

Razumeetsya, mozhno zapuskat' eti shell-skripty pri zagruzke...
Dlya etogo skopirujte odin iz etih fajlov v direktoriyu /etc/rc.d.
Zatem otkrojte fajl rc.local, kotoryj nahoditsya v toj zhe direktorii
i v konce etogo fajla ukazhite polnyj put' k nuzhnomu vam skriptu,
a imenno /etc/rc.d/rc.kbdkoi ili /etc/rc.d/rc.kbdalt.

VNIMANIE!
Esli vy ispol'zuete RedHat Linux 6.0 ili vyshe, to vmesto kommandy "loadkeys"
rekomenduetsya ispol'zovat' consolechars!






Podobno konsol'nomu rezhimu, Xwindows takzhe trebuet nekotoroj
nastrojki. Nastrojka vklyuchaet v sebya reshenie problemy vvoda simvolov
russkogo yazyka i ustanovku shriftov dlya Xwindows. |ti dejstviya obsuzhdayutsya
nizhe.

Pervoe chto Vy dolzhny sdelat' dlya rusifikacii Xwindows, eto dostat'
kirillicheskie shrifty KOI8-R. Kirrilicheskie shrifty dlya Xwindows vhodyat vo vse
(pochti vo vse ;) distrib'yutivy Linux, vyshedshie posle 1996 goda i yavlyayutsya
sostavnoj chast'yu XFree86. Vam krupno ne povezlo, esli Vy ispol'zuete
distributiv RedHat Linux versii 5.0, tak kak eta versiya Linux ne soderzhit
nabora kirillicheskih shriftov KOI8-R. Poetomu Vam sleduet proverit'
ustanovleny li eti shrifty v Vashej sisteme, a imenno:

1. Zajdite v direktoriyu /usr/X11R6/lib/X11/fonts/ i posmotrite,
est' li tam direktoriya cyrillic. Esli da, to zajdite v nee i ubedites',
chto vse 68 shriftov na meste ;)
2. Libo naberite: find / -name crox\*.pcf\*
|ta kommanda proizvedet poisk shriftov po vsem dostupnym particiyam
na vashem zhestkom diske i vydast rezul'ty.

Esli shrifty najdeny, schitajte, chto u Vas net nikakih problem s
rusifikaciej , a ezheli Vy nichego ne nashli, to ne ogorchajtes',
tak kak nabor shriftov KOI8-R lezhit v kazhdom ftp arhive lyubogo iz
distributivov Linux libo na oficial'nom sajte XFree86
(http://www.xfree86.org/).

Nu a teper', kogda u Vas est' shrifty, sozdajte direktoriyu dlya nih.
Pomestite ih, v /usr/lib/X11/fonts/cyrillic dlya nastrojki vsej sistemy,
ili prosto sozdajte katalog v domashnej direktorii dlya personal'nogo pol'zovaniya.
Esli novye shrifty postavlyayutsya v formate BDF (*.bdf fajly), Vy
dolzhny skompilirovat' ih. Dlya kazhdogo shrifta vypolnite:
bdftopcf -o <imya_shrifta>.pcf <imya_shrifta>.bdf .
Posle etogo Vam neobhodimo vypolnit' kommandu mkfontdir, nahodyas'
v  direktorii so shriftami. |ta komanda sozdast dva dopolnitel'nyh fajla,
v kotoryh nahoditsya spisok shriftov v dannoj direktorii s polnymi imenami.
K etomu spisku budet obrashchat'sya X-server dlya identefikacii shriftov. Obychno
eto fajly "fonts.dir" i "fonts.alias".
Esli, ko vsemu prochemu, Vash X-server podderzhivaet szhatye shrifty,
sozhmite ih s pomoshch'yu programmy compress
(dlya poslednih versij XFree86 mozhno szhat' shrifty s pomoshch'yu programmy gzip).
Posle pomeshcheniya shriftov v kakuyu-libo direktoriyu, Vam neobhodimo sdelat' etot
katalog izvestnym dlya X-servera. Dlya etogo otkrojte fajl
konfiguracii XFree, obychno on nahoditsya v direktorii /etc/X11 i nazyvaetsya
XF86Config. (Ezheli Vy ne smogli najti etot fajl, chitajte man po XFree86.)
Itak, fajl konfiguracii X-servera pered Vami. Najdite kommentarij
"# Multiple FontPath entries are allowed (they are concatenated together)".
V sleduyushchej stroke nahodyatsya puti k shriftam. Dobav'te tuda put' k
vashim kirillicheskim shriftam:

FontPath   "/usr/X11R6/lib/X11/fonts/cyrillic"

Estestvenno, esli shrifty ustanovleny v drugom meste, put' dolzhen byt'
otkorrektirovan.
VNIMANIE! PUTX K KIRILLICHESKIM SHRIFTAM DLYA X-SERVERA DOLZHEN NAHODITXSYA
PERVYM V SPISKE PUTEJ! V protivnom sluchae u Vas mogut vozniknut' problemy.
Esli vy vse prodelali korrektno, ya mogu Vas pozdravit'! Russkoyazychnye
simvoly uzhe mogut otobrazhat'sya na vashem ekrane! ;)
Sleduyushchim etapom yavlyaetsya reshenie problemy vvoda kirillicheskih simvolov.
Problemu mozhno reshit', ispol'zuya programmu Xkb, no ona ochen' slozhna v
nastrojke, poetomu novichkam budet slozhno v nej razobrat'sya.
Posemu najdite ili skachajte iz Internet programmu xruskb. YA ne budu
izlagat' algoritm ustanovki xruskb, tak kak on vnyatno izlozhen v REEDME
fajle arhiva programmy. Itak, vy ustanovili xruskb. Ne nado rugat'sya
i bit' kulakami o klaviaturu, esli v nuzhnyh Vam prilozheniyah ne vvodyatsya
simvoly russkogo yazyka. Osnovnym prilozheniem, ispol'zuemym v Xwindows
yavlyaetsya terminal. Razberem rusifikaciyu xterm. Dlya normal'nogo
vvoda kirillicheskih simvolov xterm dolzhen ispol'zovat' shrift
KOI8-R. Razumeetsya, po-umolchaniyu on ego ne ispol'zuet. Zagruzite uzhe
znakomuyu Vam ranee programmu xfontsel i skonfigurirujte sami dlya sebya
shrift s nuzhnymi parametrami. Predpolozhim, chto Vy eto sdelali.
Zapustite xterm s opciej -font <polnoe_nazvanie_shrifta).
Naprimer:
$ xterm -font *-fixed-*-*-medium-*-15-*-*-*-koi8-r
(eto lish' primer, ya pridumal ego s naletu ;)
Posle korrektno prodelannoj operacii, vash terminal zapishet po-russki.
Ochen' chasto s programmoj xterm voznikayut neob'yasnimye problemy, poetomu
ochen' sovetuyu ispol'zovat' takie analogi kak rxvt ili aterm.
Teper' u Vas est' obshchee predstavlenie o tom, kak rusificirovat' parogrammy
dlya Xwindows, i, esli u Vas taki voznikli problemy s vvodom russkih bukv,
ne ogorchajtes', ubedites', chto nuzhnyj vam terminal ili kakoj-libo inoj produkt
ispol'zuet pravil'nyj shrift. I voobshche, chitajte man'y, tam vse napisano ;)

Udachi!

Last-modified: Tue, 10 Aug 1999 04:48:25 GMT
Ocenite etot tekst: