Ocenite etot tekst:


---------------------------------------------------------------


 From: Evgenij Baldin (baldin@sky.inp.nsk.su))

Kak-to pol goda nazad perevel dlya sebya Cyrillic HOWTO Belikova - koe-chto
ustarelo, koe-chto luchshe sdelat' po drugomu - no vobshchem,- polezno. Esli vy
hotite russificirovat' UNIX - to nachinat' luchshe posle togo, kak prochitali
etot teht (veroyatno est' eshche perevody, no pol goda nazad ya ih ne nashel)
-----------------------------------------------------------------------


  Aleksandr  L.  Belikov,  (abel@bfr.co.il),  Berger    Financial
  Research Ltd. V3.15, 14 noyabrya 1997

  V  etom  dokumente  opisyvaetsya,  kak  nastroit'   Linux    dlya
redaktirovaniya, prosmotra i pechatati dokumentov na Russkom yazyke.





  V  etom  dokumente  opisyvayutsya  priemy  kotorye   nuzhny    dlya
redaktirovaniya, prosmotra, i pechatati  dokumentov  po-russki  pod
Linux.  I hotya zdes' predpolagaetsya, chto vy ispol'zuete Linux kak
operacionnuyu  sistemu,   bol'shinstvo    opisyvaemoj    informacii
odinakovo primenimo k drugim  raznovidnostyam  Unix.  YA  popytayus'
ukazyvat' na razlichiya.

  Imeetsya ryad populyarnyh distributivov Linux.  V kachestve primera
ya  vybral  RedHat  3.0.3  Linux  (Picasso)  i  RedHat  4.1  Linux
(Vanderbildt) - eto tot, kotoryj ya  lichno  ispol'zuyu.  Odnako,  ya
budu podcherkivat' razlichiya, esli oni  sushchestvuyut,  pri  nastrojke
Slackware Linux.

  Tak kak takaya ustanovka neposredstvenno  izmenyaet  i  rasshiryaet
operacionnuyu  sistemu,  to vy  dolzhny  ponimat',  chto  delaete.
Nesmotrya na to, chto  ya  proboval  uprostit'  izlozhenie  nastol'ko,
naskol'ko  eto  vozmozhno,  nalichie  nekotorogo  opyta  raboty   s
nastraevyemym programmnym obespecheniem yavlyaetsya preimushchestvom.  YA
ne sobirayus' opisyvat' chto takoe X Windows ili  kak  k  sozdayutsya
dokumenty v sistemah TeX i LaTeX, ili kak  ustanovit'  printer  v
Linux. |to opisano drugih dokumentah.

  V bol'shinstve sluchaev ya opisyvayu polnuyu russifikaciyu sitemy, po
umolchaniyu  trebuyushchej  privilegii  root.  Hotya,    esli    imeetsya
vozmozhnost' dlya nastrojki na urovne pol'zovatelya, to  ya  budu  ob
etom upominat'.

  OBRATITE VNIMANIE: X WIndows, TeX i  drugie  komponenty  Linux-
slozhnye sistemy s navorochennym setupom. Esli Vy sdelaete chto-libo
nepravil'no, to  ne  tol'ko  poterpite  neudachu  s  russifikaciej
sistemy,  no  i  mozhite  chastichno  esli  ne  polnost'yu  isportit'
sistemu.  |to ne dolzhno vas  pugat',  eto  prosto  preduprezhdenie,
kotroe  daet  vam  ponyat'  vsyu  ser'eznost'  processa   nastrojki
takogo  tipa.  Ochen'  rekomenduetsya    sdelat'    kopii    fajlov
konfiguracii.  Takzhe neploho by  imet'  vozmozhnost'  svyazat'sya  s
guru.



  |tot dokument lezhit na  sunsite.unc.edu  ili  tsx-11.mit.edu  i
yavlyaetsya chast'yu Linux Document Project. Takzhe, ego mozhno najti na
razlichnyh  FTP,  imeyushchih  otnoshenie  k  Linux.  Krome  togo,  eto
dokument mozhet byt' vklyuchen v distributiv Linux.

  Esli  u  vas  imeyutsya  lyubye  predlozheniya  ili  ispravleniya  po
kontekstu  etogo  dokumenta,  to,   pozhalujsta    nezamedlitel'no
prokontaktirujte so  mnoj  abel@bfr.co.il.  Predostavlenie  lyuboj
novoj i poleznoj informacii otnositel'no  podderzhki  Kirillicy  v
razlichnyh Unixah krajne pooshchryaetsya. Ne zabud'te, ved' eto pomozhet
drugim.



  Mnogo lyudej pomogli mne (i ne tol'ko mne) cennoj informaciej  i
predlozheniyami.  I  dazhe  bol'shoe   kolichestvo    lyudej    sozdalo
programmnoe obespechenie dlya public comunity.  Mne ochen' zhal' esli ya
zabyl  kogo - to upominut'.

Itak vot oni nashy geroi:
  Bas V. Bakker
  David Daves
  Sergej Vakulenko
  Sergej O. Naumov
  Winfried Truemper
  Il'ya K. Orehov
  Michael Van Canneyt
  Aleksej Bogdanov


  relcom.fido.ru.unix i relcom.fido.ru.linux Usenet newsgroups.

  |tot dokument - Copyright (C) 1995,1997 Aleksandra L. Belikova.
On mozhet ispol'zovat'sya i rasprostronyat'sya  pod  obychnymi  Linux
HOWTO usloviyami, opisannymi nizhe.

 Dalee idet - primechanie k avtorskim pravam Linux HOWTO:

       Esli ne otmecheno inache, Linux  HOWTO  dokumenty  zashchishchenny
avtorskimi  pravami  ih  avtorov.  Linux  HOWTO  dokumenty  mogut
vosproizvodit'sya i rasprostranyat'sya  polnost'yu  ili  chastichno,  v
lyubym fizicheskim ili elektronnym sposobom, pokuda  eto  zayavlenie
avtorskogo  prava  sohranyaetsya  vo  vseh  kopiyah.    Kommercheskoe
raspredelenie pozvolyaetsya i pooshchryaetsya; odnako,  avtor  hotel  by
utochnit' pravila otnositel'no lyubyh takih rasprostranenij.

       Vse raboty, ispol'zuyushchie dannyj  dokument,  vklyuchaya  lyuboj
Linux  HOWTO,  dolzhny  byt'  rasprostranyat'sya   pod    etim    zhe
soglasheniem.  To  est'  vy  ne  mozhete  nalagat'   dopolnitel'nye
ogranicheniya na rasprostranenie  svoego  produkta  osnovannogo  na
dannom HOWTO.  Isklyucheniya k etim pravilam  mogut  predostavlyat'sya
tol'ko pri nekotoryh usloviyah; pozhalujsta  vojdite  v  kontakt  s
Linux HOWTO koordinatorom po adrese, dannom nizhe.

       Koroche govorya, my zhelaem podderzhat'  rasprostranenie  etoj
informacii  cherez  nastol'ko  mnogie    kanaly    rasprostraneniya
naskol'ko eto vozmozhno.  Odnako, my  zhelaem  sohranit'  avtorskie
prava na HOWTO dokumenty, i hotelos' by chto by nas  preduprezhdali
o lyubyh planah otnositel'no rasprostraniniya etogo HOWTO.

  Esli u vas imeyutsya voprosy, pozhalujsta vojdite v kontakt s Greg
Hankins, koordinatorom Linux HOWTO  ,  po  gregh@sunsite.unc.edu.
Dlya  togo  chtoby  poluchit'  nomer  telefona   i    dopolnitel'nuyu
informaciyu dlya kontakta vy mozhete napustit' na etot adres finger.

  Unix is a technology trademark  of  the  X/Open  Ltd.;  MS-DOS,
Windows, Windows  95,  and  Windows  NT  are  trademarks  of  the
Microsoft Corp.; The X Window System is  a  trademark  of  The  X
Consortium  Inc.  Other  trademarks  belong  to  the  appropriate
holders.



  CHtoby ponimat' i pechatat' simvoly razlichnyh yazykov,  sistema  i
programmnoe obespechenie  dolzhna  byt'  sposobna  otlichit'  ih  ot
drugih simvolov.  To est' kazhdyj unikal'nyj simvol  dolzhen  imet'
unikal'noe  predstavlenie  vnutri  operacionnoj   sistemy,    ili
specificheskogo  paketa  programm.   Takaya    sovokupnost'    vseh
unikal'nyh simvolov, kotorye sistema sposobna predstavit'  srazu,
nazyvaetsya codeset (kodirovka).

  Vo vremya sozdaniya bol'shenstva operacionnyh  sisteme,  nikto  ne
zabotilsya  otnositel'no  programmnogo  obespecheniya,   yavlyayushchegosya
mnogoyazychnym.  Sledovatel'no, naibolee populyarnyj codeset byl  (i
fakticheski ostaetsya im) ASCII (Amerikanskij Standartnyj  Kod  dlya
Informacionnogo Obmena).

  Standart ASCII (ili ASCII s 7 bitami) vklyuchaet  128  unikal'nyh
kodov.  Oni podrazdelyayutsya na simvoly, kotorye  ASCII  opredelyaet
kak  sobstvenno  pechataemye,  i  na  tak    nazyvaemye    simvoly
upravleniya,  kotorye  imeli  special'nye  znacheniya    v    staryh
protokolah  svyazi.  Kazhdyj   element    nabora    identificirovan
celochislennym simvol'nym kodom (0-127).  Podmnozhestvo  pechataemyh
simvolov predstavlyayut te, kotorye nahodyat na  klaviature  pishushchej
mashinki  s   nekotorymi    nekotorymi    dobavleniyami.    Starshij
razryad i 7mi bit ispol'zovalsya dlya celej upravleniya (to est', dlya
upravleniya peredachi v staryh paketah svyazi).

  Koncepciya ASCII s 7 bitami byla rasshirena do ASCII s  8  bitami
(ili rasshirennogo ASCII).  V etoj  koderovke,  diapazon  simvolov
sootvetstvuet kodam ot 0 do 255. Mladshie bity  (0-127)  -  chistyj
ASCII, v to vremya kak starshij razryad dobavlyaet eshche 127  simvolov.
Tak kak etot codeset obratno sovmestim s ASCII  (simvol  vse  eshche
zanimaet 8 bit, i kody polnost'yu  sootvetstvuyut  staromu  ASCII),
etot codeset stal shiroko ispol'zovat'sya.

  Standart ASCII s 8  bitami  ne  opredelyaet  soderzhanie  verhnej
poloviny  codeset.  Poetomu    MEZHDUNARODNAYA    ORGANIZACIYA    PO
STANDARTIZACII  (ISO)  vzyala  otvetstvennost'   po    opredeleniyu
semejstva standartov, izvestnyh kak ISO 8859-X semejstvo.  |to  -
sovokupnost' 8mi bitnyh kodirovok, gde mladshaya  polovina  kazhdogo
codeset (simvoly s kodami 0-127) sootvetstvuet ASCII,  i  starshaya
polovina  opredelyaet  simvoly  dlya  razlichnyh  yazykov.  Naprimer,
sleduyushchij codesets opredeleny dlya:

   8859-1 - Evropa, Latinskaya Amerika (takzhe izvestnyj kak Latin 1)

   8859-2 - Vostochnaya Evropa

   8859-5 - Kirillica

   8859-8 - Idish

  V  Latin  1,  starshaya  polovina  tablicy  opredelyaet  razlichnye
simvoly, kotorye - ne yavlyayutsya chast'yu  Anglijskogo  alfavita,  no
prisutstvovuet v razlichnyh evropejskih yazykah (nemeckie  umlauts,
francuzskie diakriticheskie znaki i t.d).

  Drugaya  populyarnaya  realizaciya  rasshirennogo  ASCII    -    tak
nazyvaemaya kodovaya stranica IBM (nazvannaya po imeni  komp'yuternoj
kompaniya, kotoraya sozdala, etot codeset  dlya  svoih  personal'nyh
komp'yuterov).  |ta koderovka v starshej polovine soderzhit psevdo -
graficheskie simvoly.

  Programmnoe  obespechenie,    kotoroe    ne    delaet    nikakih
predpolozhenij o simvolah  ispol'zuyushchih  8-oj  bit  ASCII  dannyh,
nazyvaetsya chisto 8mi bitnymi.  Neskol'ko bolee  staryh  programm,
razrabotannye dlya ASCII s 7 bitami v pamyati ne dlya chistyh  8  bit
mogut rabotat' nepravil'no s vashimi rasshirennymi  ASCII  dannymi.
Bol'shinstvo paketov,  odnako,  sposobny  rabotat'  s  rasshirennym
ASCII  po  umolchaniyu,  ili   dlya    etogo    trebuetsya    prostaya
perekonfiguraciya.

OBRATITE VNIMANIE: pered zadaniem voprosa tipa:  "  ya  delal  vse
ustanovki pravil'no, no ya ne  mogu  vvesti  ili  uvidet'  simvoly
Cyrillic!  ",  pozhalujsta  konsul'tirujtes'  s    sootvetstvuyushchim
razdelom v doumentacii k programme, kotoruyu Vy ispol'zuete.


  Tak kak v bol'shinstve sistem simvoly opisyvayutsya 8yu bitami,  to
net nikakogo sposoba rasshirit' ASCII eshche bol'she.  Sposob sozdaniya
novyh simvolov v ASCII - eto prosto sozdanie  drugih  rasshirennyh
ASCII realizacij.  S pomoshch'yu etogo sposoba byla vvedena Kirillica
v ASCII.

  My  uzhe  upomyanuli  ISO  859-5  standart  kak  tot,  v  kotorom
opredelyaetsya codeset dlya Kirillicy.  No poskol'ku (kak eto  chasto
sluchaetsya so standartami), on  byl  razrabotan  bez  prinyatiya  vo
vnimanie real'nyh processov prohodyashchih  v  SSSR  (kogda  eto  eshche
bylo), to etot standart tol'ko uvelichil besporyadok s  kodirovkami
Kirillicy.  YA ne  skazal  by,  chto  ISO  8859-5  gde-libo  shiroko
ispol'zuetsya.

  Drugie standarty dlya Kirillicy vklyuchayut,  tak  nazyvaemyj,  Alt
codeset i kodovaya stranica Microsoft CP1251.  Vysheupomyanutyj  Alt
standart byl razrabotan dlya  MS-DOS  dovol'no  davno.  Togda  eshche
slyhom ne slyhivali pro seti i poetomu osnovnoe usilie sostoyalo v
tom, chtoby sdelat' etot standart nastol'ko naskol'ko eto vozmozhno
sovmestimym  s  IBM  standartom.  Sledovatel'no  Alt  codeset   -
dejstvitel'no  ta  zhe  samaya  IBM  kodovaya  stranica,  gde    vse
specificheskie simvoly European v verhnej polovine  byli  zameneny
na Kirillicu,  ostavlyaya  psevdograficheskie  simvoly  netronutymi.
Sledovatel'no, eto  ne  portilo  vid  programm  ispol'zuyushchih  dlya
raboty tekstovye okna i takzhe obespechilo  simvoly  Cyrillic.  Alt
standart vse eshche zhiv i chrezvychajno populyaren v srede MS-DOS.

  Microsoft CP1251  kodovaya  stranica  -  eto  popytka  Microsoft
pridumat' novyj  standart  dlya  koderovki  Kirillicy  v  Windows.
Naskol'ko ya znayu,  eto  ne  sovmestimo  s  chem  libo  eshche  (i  ne
udivitel'noe, tri Ha-Ha)

  Nu i nakonec KOI-8. |tot standart tokzhe dovol'no star,  no  byl
razrabotan nastol'ko produmanno, chto i v nastoyashchee vremya osnovnye
otpravnye idei razrabotki vyglyadyat dejstvitel'no poleznymi.

  |to stanart sovmestim s ASCII, i simvoly Cyrillic  razmeshcheny  v
starshej polovine.  No osnovnaya  ideya  proekta  KOI-8  -  to,  chto
pozicii simvolov Cyrillic dolzhny sootvetstvovat' simvolam English
s toj zhe samoj fonetikoj. A imenno, esli my ustanavlivaem vos'moj
bit simvola English " ", my poluchim Kirillicu " ".  |to oznachaet,
chto, v esli v tekste Kirillicy, napisannom v  KOI-8,  my  ubiraem
vos'moj bit kazhdogo simvola, to my vse eshche imeem chitaemyj  tekst,
hotya on i napisan simvolami English! |to ochen' vazhno teper',  tak
kak imeetsya dovol'no mnogo sistem  E-maile  otkusyvayushchih  vos'moj
bit, tak kak oni prbyvayut v uverennosti, chto kazhdyj o chelovek  na
poverhnosti Zemli govorit na anglijskom yazyke.

  Ne udivitel'no, chto KOI-8 bystro  stal  fakticheskim  standartom
dlya Kirillicy v Internet.  Andrej  A.  CHernov  prodelal  ogromnoe
kolichestvo raboty, chtoby sozdat' standart.  On - avtor  RFC  1489
("Registration of a Cyrillic Character Set ").

  |ti  dva  standarta  otlichayutsya  tol'ko  v  poziciyah   simvolov
kirillicy  v  tablice  (kotoryj  opredelyaetsya  v  kodah   simvola
kirillicy).

  Principial'noe razlichie -  to,  chto  Alt  codeset  ispol'zuetsya
pol'zovatelyami MS-DOS i tol'ko, v to vremya kak KOI-8 ispol'zuetsya v
Unix, takzhe kak v MS-DOS (hotya v poslednem  KOI-8  namnogo  menee
populyaren). Tak kak my idem pravil'nym putem (a imenno rabotaem v
Unix-opodobnoj  operacionnoj  sisteme),  my  budem  v    osnovnom
ostanavlivat'sya na rassmotrenii KOI-8.

  CHto kasaetsya standarta ISO, to on bolee populyaren v Evrope i SSHA
kak standart dlya Kirillicy. Lider v Rossii eto opredelenno KOI-8.

  Imeyutsya takzhe drugie bolee gibkie standarty,  kotorye  yavlyayutsya
otlichnymi  ot  ASCI.  Bol'she  vsego  izvesten  standart  Unicode.
Odnako, oni ne vstroeny takzhe horosho  kak  prostoj  ASCII  v  Unix
voobshche  i  Linux  v  chastnosti.  Sledovatel'no,  zdes'  ya  ih  ne
opisyvayu.



  Voobshche, nastrojka tekstovyh  rezhimov  -  samyj  prostoj  sposob
pokazyvat' i  vvodit'  simvoly  Cyrillic.  Odnako,  imeetsya  odno
znachitel'noe oslozhnenie: tekstovye shrifty i raspolozhenie simvolov
na  klaviature  zavisyat  ot  realizacii    drajvera    terminala.
Sledovatel'no, ne imeetsya nikakogo obshchego sposoba  dlya  dostizheni
celi celi v razlichnyh sistem.

  Nizhe, ya opishu sposob kak spravit'sya s drajverom Linux  console.
Poetomu esli vy imeete druguyu sistemu, ne ozhidajte, chto eto budet
rabotat'.  Vzamen, prokonsul'tirujtes' s rukovodstvom po drajveru
terminala i poshlite mne lyubuyu informaciyu,kotoruyu  Vy  najdete,  v
etom sluchae ya  smogu  vklyuchit'  eto  v  dal'nejshie  versii  etogo
dokumenta.



  Konsol'nyj  drajver  Linux  -    dovol'no    gibkij    obrazchik
programmnogo obespecheniya.  On mozhet  menyat'  shrifty  i  raskladki
klaviatury.  CHtoby selat' eto, vam nuzhen paket kbd. I  RedHat,  i
Slackware ustanavlivayut kbd kak chast' sistemy.

  Paket kbd soderzhit utility upravleniya klaviatur, krome etogo  s
nim postavlyaetsya shirokij vybor shriftov i raskladok.

  Ustanovka Kirillicy s pomoshch'yu kbd obychno sostoit iz:

  1. |krannoj ustanovki shriftov, kotoraya  vypolnyaetsya  programmoj
setfont. Fajly shriftov razmeshcheny v /usr/lib/kbd/consolefonts.

     OBRATITE VNIMANIE: Nikogda ne  vypolnite  programmu  setfont
pod X, potomu chto eto privedet sistemu k krahu.  |to  proishodit,
potomu  chto  paket  rabotaet  s  obrashcheniyami  videoplaty  nizkogo
urovnya, kotorye X ne perevarivaet.

  2. Zagruzki  sootvetstvuyushchej  raskladki  klaviatury  programmoj
loadkeys.

 OBRATITE  VNIMANIE:  V  RedHat  3.0.3,  /usr/bin/loadkeys  imeet
slishkom ogranichennye prava dostupa, a imenno  700  (rwx  ------).
Nikakih prichin dlya etogo net, tak kak kazhdyj mozhet skompilirovat'
i  zapustit'  svoyu  sobstvennuyu  kopiyu  paketa   (sootvetstvuyushchie
sistemnye vyzovy ne trebuyut privelegij  root).  Vam  nado  tol'ko
poprosit', chtoby vash  sysadmin  ustanovil  bolee  adekvatnye  dlya
etogo prava dostupa (naprimer, 755).

  Sleduyushchee eto vyzhimka iz moego skripta, zagruzhayushchego  kirilicu,
kotoryj ustanavlivaet rezhim Cyrillic dlya konsoli Linux:

  if [ notset.$DISPLAY != notset. ]; then
      echo "`basename $0`:  cannot run under X"
      exit
  fi

  loadkeys /usr/lib/kbd/keytables/ru.map
  setfont /usr/lib/kbd/consolefonts/Cyr_a8x16
  mapscrn /usr/lib/kbd/consoletrans/koi2alt
  echo -ne "\033(K"              # the magic sequence - Mumba-YUmba
  echo "Use the right Ctrl key to switch the mode..."

  Pozvol'te  mne  eto  poyasnit'.  Vy  zagruzhaete  sootvetstvuyushchuyu
raskladku klaviatury. Zatem zagruzhaete shrift, sootvetstvuyushchij Alt
codeset.  Zatem, chtoby byt' otobrazhat' tekst v KOI8-R  pravil'no,
vy zagruzhaete  ekrannuyu  tablicu  perekodirovki.  CHto  eto  daet:
otobrazhaet nekotorye simvolov iz starshej poloviny codeset  v  Alt
kodirovku.  Slovo " nekotoryj " yavlyaetsya zdes' central'nym -  ne,
vse  simvoly  otobrazhayutsya,  to   est'    nekotorye    iz    nih,
sootvetstvuyushchie  IBM  psevdograficheskim  simvolam  dlya  ekrana  i
displeya ne izmenyayutsya, tak kak oni sovmestimy s  Alt  codeset,  v
protivopolozhnost'  KOI8-R.  CHtoby  uverit'sya,  zagruzite  mc,   i
voobrazite, chto Vy vernulis' v starye dobrye vremena k MS-DOS 3.3
...

  V zaklyuchenie, magic sequence (Mumba-YUmba) neobhodima, no  ya  ne
imeyu ponyatiya, na koj ona.  YA ukral/zanyal/nauchilsya etomu iz German
HOWTO v dalekom 1994, kogda eto byl edinstvennym  orientirovannym
na nacional'nyj yazyk HOWTO. Esli Vy imeete hot' kakuyu-nibud' ideyu
otnositel'no  etoj  volshebnoj   posledovatel'nosti,    pozhalujsta
soobshchite mne.

  V zaklyuchenie, dlya teh estetov, kto ne zhelaet  ispol'zovat'  Alt
codeset, ya prilagayu druguyu versiyu zagruzochnogo shrifta,  ispol'zuya
rodnye KOI8-R shrifty.

  if [ notset.$DISPLAY != notset. ]; then
      echo "`basename $0`:  cannot run under X"
      exit
  fi

  loadkeys /usr/lib/kbd/keytables/ru.map
  setfont /usr/lib/kbd/consolefonts/koi-8x16
  echo "Use the right Ctrl key to switch the mode..."

  Odnako,  ne  ozhidajte  krasivyh  ramok  v  vashih    programmah,
ispol'zuyushchih dlya raboty menyushki v tekstovom rezhime.

  Teper' Vy veroyatno hotite proverit' eto.  Skonfigurirujte takim
obrazom bash ili tcsh,  peregruzite  ego,  zatem  nazhmite  pravuyu
Klavishu  CTRL,  i  udostoverites',  chto  Vy  mozhite  pechatat'  na
russkom.  Klavisha  "q"   dolzhna    sootvetstvovat'    "j",    "w"
sootvetstvuet "c", i t.d.

  Esli u vas voznikli nepredvidennye  problemy,  to  luchshe  vsego
vernut'sya k rodnoj (to est' US)  raskladke.  Dlya  etogo  sdelajte
sleduyushchie telodvizheniya:

  loadkeys /usr/lib/kbd/keytables/defkeymap.map
  setfont /usr/lib/kbd/consolefonts/default8x16

  OBRATITE VNIMANIE: k sozhaleniyu, konsol' ne  sposobna  sohranit'
eto sostoyanie (po krajnej mere  bez  izlishnih  uhishchrenij),  kogda
peredaetsya pravlenie X Windows. Sledovatel'no, posle togo, kak vy
vyshli  iz  X  (ili  pereklyuchaetes'  na  konsol'),  to  vy  dolzhny
perezagruzit' russkij shrift.



  YA ne ispol'zuyu FreeBSD, tak chto ya ne mogu  proverit'  sleduyushchuyu
informaciyu.  Vse dannye  v  etom  razdele  dolzhny  vosprinimat'sya
tol'ko kak priblizitel'nye  ukazateli  napravleniya  dejstvij.  Na
stranichke  FreeBSD,  veroyatno,  chto-to  est'  po  etomu  voprosu.
Drugoj horoshij istochnik informacii- relcom.fido.ru.unix newsgroup.
Krome togo, prover'te istochniki, perechislennye v razdele """.

  Vo vsyakom sluchae, eto -  to,  chto  Il'ya  K.  Orehov  predlagaet
sdelat', chtoby zastavit' konsol' FreeBSD govorit' po russki:

  1. In /etc/sysconfig add:

     keymap=ru.koi8-r
     keyrate=fast
     # NOTE: '^[' below is a single control character
     keychange="61 ^[[K"
     cursor=destructive
     scrnmap=koi8-r2cp866
     font8x16=cp866b-8x16
     font8x14=cp866-8x14
     font8x8=cp866-8x8

  2. V /etc/csh.login:

     setenv ENABLE_STARTUP_LOCALE
     setenv LANG ru_SU.KOI8-R
     setenv LESSCHARSET latin1

  3. Sdelat' analogichnye izmeneniya v /etc/profile

  4. X Windows

  Podobno konsol'nomu rezhimu, X windows takzhe  trebuet  nekotoroj
nastrojki.  Nastrojka vklyuchaet v sebya nastrojku vvoda i ustanovku
X shriftov. Dannye dejstviya obsuzhdayutsya nizhe.



  Prezhde vsego Vy dolzhny poluchit' shrifty,  imeyushchie  Kirillicheskie
glyphs (izobrazheniya) v sootvetstvuyushchih mestah.

  Esli  Vy  ispol'zuete  dostatochno  novyj  distributiv  X   (ili
XFree86), to vozmozhno, chto u vas uzhe est' takie shrifty. V 1995, v
distributiv  X  Windows  byl  vklyuchen  nabor  shriftov  Kirillicy,
sozdannyh Cronyx.  Sprosite administratora  vashej  sistemy,  ili,
esli vy- eto on i est', prover'te  vashu  sistemu  na  predmet,  a
imenno::

  1.  Vypolnit'  "  xlsfonts  |  grep -i koi  ".   Esli    imeyutsya
perechislennye  shrifty,  to  vash  X  server  uzhe  znaet   ob    ih
sushchestvovanii.

  2. Ili, naberite

     find -name crox\*.pcf\*

  Vy najdete  mestopolozhenie  shriftov  Kirillicy  v  sisteme.  Vy
dolzhny budete skormit' eti shrifty X servery, kak - ya ob®yasnyu nizhe.

  Esli Vy ne nashli takie shrifty v vashej  sisteme,  to  vy  dolzhny
ustanovit' ih sami.

  Imeetsya nekotoraya neodnoznachnost' so shriftami.  V  dokumentacii
na  XFree86  utverzhdaetsya,  chto  rossijskaya  kollekciya   shriftov,
vklyuchennaya v nabor razrabotanna Cronyx.  Odnako, vy mozhete  najti
drugoj distributiv Cronyx shriftov Kirillicy v seti (a  imenno  na
ftp.kiae.su),  izvestnyj,  kak  paket  xrus  (ne  putat'  eto   s
programmoj xrus, kotoraya ispol'zuetsya  dlya  ustanovki  rasskladok
Kirillicy.  K schast'yu, poslednyaya  byla  nedavno  pereimenovana  v
xruskb). Xrus imeet men'shij nabor shriftov chem v kollekcii Xfree86
(38 protiv 68), no poslednyaya ne podoshla dlya raboty s " Netscape "
- ona podstavila prosto ogromnyh shrifty v menubar Netscape. Paket
xrus ne imeet etoj problemy.

  YA predlozhil by, chtoby Vy zagruzili  i  oprobovali  oba  paketa.
Podberite tot, kotoryj vy najdete naibolee  priyatnym  v  obshchenii.
Krome, ya skoro sozdam RPMki dlya oboih paketov,  i  polozhu,  ih  v
ftp.redhat.com i v moj FTP arhiv.

  Imeetsya takzhe bolee staroe reshenie, naprimer  paket  vakufonts,
sozdannyj Sergeem Vakulenko,  kotoryj  stal  osnovoj  dlya  paketa
vklyuchennogo v distributiv X  Windows  Imeetsya  takzhe  ryad  drugih
paketov.  Ochen' vazhno, chto imena shriftov  v  staroj  kollekii  ne
sovpadayut so standartom polnost'yu.  Vakufonts v  obshchem  niche,  no
inogda iz-za mogut voznikat' razlichnye sverh®estestvennye oshibki.
Naprimer, u menya byli problemy s Maple V dlya Linux, kotoryj padal
po  neponyatnym  prichinam  s  paketom  vakufonts,  no    prekrasno
rabotal so "standartnymi" naborami.

  Itak, davajte nachnem so shriftov:

  1. Vytashchite po ftp sootvetstvuyushchij  nabor  shriftov.  Paket  dlya
XFree86 mozhno najti na lyubom FTP arhive, gde lezhit distributiv  X
Windows, naprimer, neposredstvenno  na  oficial'nom  XFree86  FTP
arhive. Paket Xrus mozhno najti na ftp.kiae.su

  2. Teper', kogda u vas est'  shrifty,  sozdajte  direktoriyu  dlya
nih. Pomestit' novye shrifty v uzhe sushchestvuyushchij katalog shriftov ne
ochen'    horoshaya    ideya.    Pomestite    ih,    naprimer,      v
/usr/lib/X11/fonts/cyrillic dlya nastrojki vsej sitemy, ili prosto
sozdajte katalog u sebya tol'ko dlya personal'nogo pol'zovaniya.

  3. Esli novye shrifty postavlyayutsya v formate BDF (* .bdf fajly),
to Vy dolzhny skompilirovat' ih. Dlya kazhdogo shrifta vypolnite:

     bdftopcf -o <font>.pcf <font>.bdf

  Esli vash server podderzhivaet szhatye shrifty,  to  sozhmite  ih  s
pomoshch'yu compress:

  compress *.pcf

  Esli zhe  vy  vse-taki  hotite  pomestit'  novye  shrifty  v  uzhe
sushchestvuyushchij katalog shriftov, to  Vy  dolzhny  srostit'  staryj  i
novye fajly, s imenem fonts.alias v tom sluchae, estestvenno, esli
oba sushchestvuyut.

  4. V kazhdyj katalog shriftov dlya X dolzhen byt'  spisok  shriftov.
|tot spisok nahoditsya v fajle fonts.dir.  Vy ne dolzhny  sozdavat'
etot spisok vruchnuyu. Vmesto etogo, sdelajte:

     cd <new font directory>
     mkfontdir .

  5. Teper' Vy dolzhny sdelat' etot katalog shriftov izvestnym  dlya
X servera. Zdes' u vas est' ryad vozmozhnostej:

  Obshchesistemnaya nastrojka dlya XFree86. Esli  vy  ispol'zuete  etu
versiyu X Windows, to dobav'te novyj katalog k spisku katalogov  v
fajle XF86Config.  CHtoby najti ego raspolozhenie, sm. chto  govorit
startx pri zapuske. Bolee podrobno smotrite man XF86Config (4/5).

  Obshchesistemnaya nastrojka cherez xinit.  Dobav'te novyj katalog  k
fajlu zapuska xinit. Bolee podrobno smotrite man xinit (1x).

  Personal'naya nastrojka. U vas est' special'nyj fajl dlya zapuska
X  -  ~/.xinitrc  (ili  ~/.Xclients,    ili    ~/.xsession    dlya
pol'zovatelej RedHat). Dobav'te sleduyushchie komandy v etot fajl:

     xset +fp <new font directory>
     xset fp rehash

  Obratit' vnimanie, na opciyu " + fp "- eto oznachaet,  chto  novye
shrifty budut dobavleny v nachale spiska direktorij so shriftami. To
est' esli prikladnaya programma zaprashivaet, skazhem, fix font,  to
budet podstavlen fixed font s simvolami Cyrillic, chego imenno  my
i dobivalis'.

  Hotya  imeyutsya  nekotorye  problemy.  V  distributive    shriftov
kirillicy net poluzhirnogo i kursivnogo fixed  font.  Moj  lyubimyj
shrift - 6x13, a tak, kak  poluzhirnye  i  kursivnye  shrefty  etogo
razmera takzhe otsutstvuyut, to ya ne mogu ispol'zovat' Emacs/XEmacs
v polnoj mere. Nadeyus', chto kto - to v konechnom schete sozdast eti
shrifty, i situaciya izmenitsya.

  6. A teper' perezapustite vash X Windows., esli vy  vse  sdelali
pravil'no, to testy v  nachale  razdela  budut  projdeny  uspeshno.
Krome togo, poigrajtes' s xfontsel (1x), chtoby udostoverit'sya chto
Vy sposobny vybrat' shrifty kirillicy.

  CHtoby zastavit' X klienta  ispol'zovat'  shrifty  Kirillicy,  Vy
dolzhny ustanovit' sootvetstvuyushchie X resources.  Naprimer, ya delayu
russkij shrift zadannym po umolchaniyu v moem ~/.Xdefaults:

  *font:         6x13

  Tak kak moi shrifty kirillicy pervye v spiske pojska shriftov  to
oni i podstavlyayutsya esli  programa  trebuet  kakoj-libo  shrift  s
imenem, sovpadayushchem s kakim-libo iz russkih shriftov (sm. vyvod)

  |to prostoj primer.  Esli Vy hotite nauchit'  sootvetstvuyushchij  X
client pol'zovat'sya kirillicheskim shriftom , to Vy  dolzhny  uznat'
tip  resursa,  kotoryj  vam  nado  izmenit'  (mozhno  eto  sdelat'
ispol'zuya editres (1x))  i  opredelit'  ego  ili  v  baze  dannyh
resursov, ili v komandnoj stroke. Naprimer mozhno sdelat' tak:

  $ xterm -font '-cronyx-*-bold-*-*-*-19-*-*-*-*-*-*-*'

  $ xfontsel -xrm '*quitButton.font: -*-times-*-*-*-*-13-*-*-*-*-*-koi8-*'

  xfontsel.



  V  poslednih  vypuskah  X  (X11R61  i   vyshe)    imeyutsya    dva
"standartnyh"  sposoba  vvoda  s  klaviatury:   rodnoj    sposob,
rabotayushchij cherez utilitu xmodmap,  i  novyj,  nazyvaemyj  Xkb  (X
KeyBoard). Pervoe chto vy dolzhny sdelat' eto otklyuchit' Xkb sposob!
Ne davajte sebya zagipnotezirovat' ego sposobnost'yu  ustanavlivat'
"russian keyboard".  |tot sposob, vrode by,  ispol'zuet  opisanie
simvolov  Kirillicy  opredelennyh  v  keysymdef.h.   |tot    fajl
opredelyaet  simvoly  dlya  mnogih  yazykov.  Edinstvenaya   problema
sostoit v tom, chto dannoe opredeleniya ne  pozvolyayut,  rabotat'  s
rasshirennym ASCII codeset - ochen' mnogo programm  mogut  rabotat'
tol'ko s etoj rasskladkoj! YA  pochti  ne  znayu  programm,  kotorye
razbirayutsya  s  opisaniem  simvolov  v  keysymdef.h  otlichnym  ot
standartnogo 8mi bitnogo ASCII. Odnako, nasha glavnaya cel' sostoit
v tom, chtoby zastavit' rabotat' podderzhku KOI8-R.

  CHtoby otklyuchit'  podderzhku  Xkb,  v  fajle  XF86Config  izuchite
razdel Keyboard i zakommentirujte,  vse  stroki,  nachinayushchiesya  s
Xkb. Vzamen, dobav'te sleduyushchuyu stroku:

  XkbDisable

  Programma  xmodmap  pozvolyaet  nastroit'  kody  sootvetstvuyushchie
razlichnymi simvolam i ih kombinaciyam.  |ta nastrojka osnovanna na
fajle, soderzhashchem tablicu perekodirovki.

  V predydushchih versiyah etogo dokumenta ya ochen' podrobno  opisyval
nastrojku  kirillicy  osnovannuyu  na  xmodmap.   |to    okazalos'
prakticheski bespoleznym.  Obshcheizvestno, chto sposob  perekodirovka
vvoda, osnovannyj na Xmodmap,  yavlyaetsya,  ne-portabel'nym,  ploho
nastraevaemym, i ne okonchatel'nym.  Vashi nastrojki mogut rabotat'
s odnoj versiej XFree i sboit' pri rabote s drugoj.  Bolee  togo,
inogda rezul'tat raboty odnoj i toj zhe nastrojki sil'no  raznitsya
dlya razlichnyh serverov iz odnogo distributiva.

  YA nastoyatel'no sovetuyu vam ne igrat' s xmodmap, po krajnej mere
dlya  nachala.  Vy  ne  poluchite  nichego  krome  golovnoj  boli   i
razocharovaniya.  Vmesto etogo, ya rekomenduyu vam  ustanovit'  paket
xruskb,  kotoryj  pozvolyaet  vam  skonfigurirovat'    bol'shinstvo
vhodnyh parametrov perekodirovki bez neobhodimosti stalkivat'sya s
xmodmap.



  V etom  razdele  ya  opishu  neskol'ko  sposobov  nabora  russkih
tekstov v TeX i LaTeX.  Est' neskol'ko napravleniya dlya dostizheniya
celi,  kotorye  otlichayutsya  v  slozhnosti  ustanovki  i   udobstve
ispol'zovaniya. Naprimer, odna iz vozmozhnostej eto nachat' rabotu s
ispol'zovaniem  shrifty  Kirillicy  iz  Washington  AMSTeX    (eto
delaetsya bez kakoj  libo  predvaritel'noj  nastrojki).  S  drugoj
storony, Vy  mozhete  ustanavlivit'  paket  LaTeX,  obespechivayushchim
ochen' vysokuyu stepen' nastrojki na Kirillicu.  U  menya  byl  opyt
raboty s dvumya podobnymi paketami.  Odin iz nih - cmcyralt  paket
Vadima V.  ZHitnikova (vvzhy@phy.ncu.edu.tw) i  Aleksandra  Harina
(harin@lourie.und.ac.za), a drugoj - paket programm LH napisannyh
gruppoj CyrTUG so stilyami  i  rasstanovkoj  defisov  dlya  LaTeX2e
sozdannyh Sergeem O. Naumovym (serge@astro.unc.edu). YA opishu oba.

  Obratite vnimanie, chto dostupny dve versii LaTeX, odna iz nih -
2.09 - staraya, v to vremya kak 2e - novaya (vypusk  pre-3.0).  Esli
Vy ispol'zuete LaTeX 2.09, to kak mozhno bystree perehodite na 2e.
Poslednij sohranyaet sovmestimost' so  staroj  versiej,  no  imeet
namnogo bol'she vozmozhnostej.  Krome togo, versiya  3  budet  skoro
vypushchena. YA opisyvayu ustanovku LaTeX 2e.

  Da, kstati, oba etih paketa trebuyut dlya redaktirovaniya  russkih
tekstov  ustanovku  Alt  kodirovki,  a  ne  KOI-8!  |to   vyzvano
istoricheskimi prichinami, sozdateli etih paketov, ispol'zovali, ih
dlya raboty s EmTeX- MS-DOS versii TeX (oni eshche znali o Linux :-).
Perehod k KOI-8 trebuet nekotoryh usilij,  ozhidaetsya,  chto  budet
skoro sdelan.  A  poka,  ispol'zujte  kakie-nibud'  utilitu,  dlya
perekodirovki russkogo teksta iz KOI-8 v Alt. Sm. razdel """.



  |tot  paket  byl  sozdan  dlya  Amerikanskogo    Matematicheskogo
Obshchestva, chtoby dat' vozmozhnost' sozdavat' dokumenty  s  ssylkami
na pervoistochniki na  russkom.  Sledovatel'no,  avtory  ne  ochen'
napryagalis' pri sozdanii etogo paketa i shrifty v rezul'tate etogo
vyglyadyat dovol'no neuklyuzhe.  Obychno etot paket upominaetsya kak  "
dovol'no plohoj paket kirillicy dlya TeX ".

  Odnako, my obsudim ego, tak kak on ochen' prost v  ispol'zovanii
i ne trebuet ustanovki - etot nabor soderzhivaetsya  v  bol'shinstve
distributivov TeX.

  Konechno, u vas  ne  budete  takoj  roskoshi  kak  avtomaticheskaya
rasstanovka defisov, no vse ravno ...

  1. Snabdite vash dokument so sleduyushchimi direktivami:

  \input cyracc.def
  \font\tencyr=wncyr10
  \def\cyr{\tencyr\cyracc}

  2. Teper', chtoby napechatat' simvol kirillicy,  vstav'te

  \cyr

  dlya pechti  ispol'zujte  sootvetstvuyushchij  latinskij  simvol  ili
  komandu  TeX.  To  est',  strochnye  bukvy  russkogo    alfavita
  sootvetstvuyut sleduyushchim sochitaniyam: a b v g d e \"e zh z i  {\u
  i} k l m n o p r s t u f kh c ch sh shch {\cprime} y {\cdprime}
  \`e yu ya

  CHrezvychajno slozhno preobrazovyvat' vashi russkie teksty v  takuyu
kodirovku, no vy mozhete avtomatizirovat' etot process.  Programma
translit (razdel """) podderzhivaet opciyu vyvoda TeX.



Est' takzhe dovol'no novyj paket teTeX-rus.  On podderzhivaet nabor
simvolov KOI-8 i otvechaet vsem osnovnym trebovaniyam TeX i  LaTeX.
YA lichno ego ne proboval, chto do, to da, no ya slyshal o  nem  mnogo
polozhitel'nogo.

  OBRATITE  VNIMANIE:    |tot    paket    trebuet,    chtoby    Vy
perekonfigurirovali i peresobrat' nekotorye chasti  vashego  paketa
teTeX (naprimer  precompiled  LaTeX  makrokomandy).  Esli  vy  ne
znaete tochno, chto delaete, to vy  ne  dolzhny  probovat'  eto  bez
razumnoj ostorozhnosti.  Veroyatno luchshe  pozaimstvovat'  pravil'no
peresobrannye chasti u kogo - libo iz seti



  Cmcyralt paket mozhet byt' najden na  lyubom  CTAN  (Comprehansive
TeX  Archive Network)-  mesto  podobno  ftp.dante.de.  Vy  dolzhny
poluchit' dve chasti:  sovokupnost'  shriftov  iz  fonts/cmcyralt  i
sovokupnost'  stilej  s  rasstanovkoj  defisov-    nahoditsya    v
macros/latex/contrib/others/cmcyralt.

  |to Vazhno: Udostoverites', chto u vas ustanovlen paket Sauter  ,
tak kak cmcyralt  trebuet  nalichiya  nekotoryh  shriftov  iz  etogo
paketa, kotoryj vy tozhe mozhete dostat' iz lyubogo arhiva CTAN.

  Teper' Vy dolzhny sdelat' sleduyushchee:

  1. Pomestite novye shrifty  v  katalogi  shriftov  TeX.  Na  moej
sisteme  (Slackware  2.2)  ya   sozdal    katalog    cmcyralt    v
/usr/lib/texmf/fonts/cm/.  Sozdajte podkatalogi src, tfm, i vf  v
nem. Pomestite tam .mf, .tfm, i vf fajly sootvetstvenno.

  2. Pomestite fajly drajvera shriftov (* .fd) iz nabora stilej  v
sootvetstvuyushchee  mesto   (v    moem    sluchae    eto    bylo    v
/usr/lib/texmf/tex/latex/fd).

  3. Pomestite fajly stilya (*  .sty)  v  sootvetstvuyushchij  katalog
stilej    LaTeX    (v    moem    sluchae    eto      bylo        v
/usr/lib/texmf/tex/latex/sty).

  Teper'  nastrojka  rasstanovok  perenosov.    Ona    potrebuet,
peresobrat' osnovnye fajly LaTeX.

  1. Fajl  hyphen.cfg  soderzhit  direktivy  dlya  i  anglijskoj  i
russkoj rasstanovki perenosov.  Izvlekite direktivy  dlya  russkih
perenosov,  i  pomestite  ih  v  fajl  konfiguracii   rasstanovki
perenosov LaTeX - lthyphen.ltx.  V moem sluchae, etot fajl  byl  v
direktorii /usr/lib/texmf/tex/latex/latex-base.

  2. Pomestit' rhyphen.tex v tot zhe samyj katalog. |to neobhodimo
dlya sozdaniya osnovnogo fajla. Pozzhe, Vy mozhete udalyat' ego.

  3. Sdelajte "make" v tom kataloge. Ne zabud'te sdelat' dlya link
Makefile k Makefile.unx.  Vo vremya kompelyacii sledite za vyvodom.
Dolzhno byt' soobshchenie:

     Loading hyphenation patterns for Russian.

  Esli vse O'K, to vy poluchite v tom  kataloge  novyj  latex.fmt.
Pomestite  ego  v  to  mesto,  gde  byl   predydushchij    (veroyatno
/usr/lib/texmf/ini/).  Ne zabud'te  sohranit'  predydushchuyu  versiya
fajla (tak, na vsyakij pozharnyj)!.

  |to vse.  Ustanovka zakonchena. Probujte projtis'  po  primeram,
najdennym  v  arhive  stilej.  Esli  vy  v  sostoyanii   sozdavat'
PostScript fajly bez kakih-libo problem, to  vse  -  OK.  Teper',
chtoby ispol'zovat'  Kirillicu  v  LaTeX,  snabdite  vash  dokument
sleduyushchej direktivoj:

  \usepackage{cmcyralt}

  Podrobnee, smotrite README fajl v arhive stilej cmcyralt.

  Obratite vnimanie: esli u vas est' problemy s primerami, i esli
vy vse sdelali pravil'no,  to  veroyatno  vash  paket  TeX  ne  byl
pravil'no ustanovlen.  Naprimer, vo vremya  moej  pervoj  popytki,
kazhdaya popytka sozdat' .pk fajly dlya rossijskih  shriftov  terpela
neudachu (stadiya Make TeXPK).  Prestrasnoe  rassledovanie  vyyavilo
nekij  neyavnyj  konflikt  mezhdu  localfont  i  ljfour    METAFONT
nastrojkami. Prezhde eto rabotalo, no terpelo krah posle ustanovki
cmcyralt.  Vojdite v kontakt vashim mestnym TeX  guru.  TeX  ochen'
(inogda  slishkom)  slozhen,  chtoby  perekonfigurirovat'  ego   bez
otsutstviya navykov.



  Vy mozhete najti paket CyrTUG na arhive SunSite.  Voz'mite fajly
CyrTUGfonts.tar.gz, CyrTUGmacro.tar.gz, i hyphen.tar.Z.

  Process ustanovki ne slishkom otlichaetsya ot predydushchigo.



  |ksperty govoryat, PostScript eto prosto.  YA ne mogu sudit' -  u
menya bylo  slishkom  mnogo  veshchej,  kotorye  nado  izuchit',  chtoby
vykroit' vremya dlya izucheniya PostScript.  No ya vse ravno  poprobuyu
ispol'zovat' moi nebol'shie znaniya ob etom voprse.  YA  budu  ochen'
blagodaren za lyubuyu informaciyu ob  etom  voprose  ot  Vas  parni,
kotorye znayut bol'she menya (vas  priblizitel'no  99  %  ot  Zemnoj
populyacii).

  CHtoby pechatat' russkij tekst s  ispol'zovaniem  PostScript,  Vy
dolzhny udostoverit'sya otnositel'no sleduyushchih veshchej:

  shrift Kirillicy zagruzhen ili vklyuchen v dokument.

  tekst Kirillicy vklyuchen v dokument.

  tekst Kirillicy  ispol'zuet  sootvetstvuyushchie  simvol'nye  kody,
kotorye sootvetstvuyut trebovaniyam shrifta.

  chtoby pechatat' tekst Kirillicy vybran sootvetstvuyushchij shrift.

  Ne  imeetsya  nikakogo  dostatochno   obshchego    resheniya,    chtoby
rekomendovat'sya  ego  kak  okonchatel'noe.  YA  poprobuyu   osvetit'
razlichnye sposoby dlya resheniya razlichnyh problemami,  svyazannyh  s
etim voprosom.

  Odin sposob eto poborot' problemy  ustanovki  Kirillicy  voobshche
sostoit v tom, chtoby ispol'zovat' Ghostscript.  Ghostscript  (ili
prosto  gs  ot  newspeak)  absolyutno  free   (nu,    ne    sovsem)
interpretator PostScript.  U nego est' mnogo  preimushchestv;  sredi
nih:

  Sposobnost' rabotat' na  mnogih  platformah  (razlichnye  Unixy,
Okoshki i t.d)

  Podderzhka dlya ogromnogo kolichestva ne-PostScript printerov

  Vysokaya  stepen' konfigurabel'nosti

  V nashem specificheskom sluchae yavlyaetsya vazhnym to, - chto  odnazhdy
ustanoviv i nastroiv Ghostscript , my mozhem  vse  pechatat'  cherez
nego,  takim  obrazom  nam  ne  nado  nastraivat'   dopolnitel'no
nastraivat' drugie PostScript ustrojstva  (naprimer  HP  LaserJet
IV)



  |to  vazhno,  tak  kak  vy  veroyatno  ne    hotite    vzvalivat'
otvetstvennost' za vklyuchenie shriftov Kirillicy  v  PostScript  na
drugie  programmy.  Vzamen,  vy  dobavlyaete  ih  tol'ko  k  gs  i
zastavlyaete programmy vyvodit' russkij tekst sovmestimyj s  etimi
shriftami.

  CHtoby dobavlyat' novyj shrift (v formate pfa ili pfb)  v  gs,  Vy
dolzhny:

  1. Pomestit' etot shrift  v  katalog  shriftov  gs  (to  est'.  v
/usr/lib/ghostscript/fonts).

  2. Dobavit' sootvetstvuyushchie imena i aliases dlya shrifta v  fajle
Fontmap v kataloge gs.

  Nedavno  poyavilsya  prilichnyj  nabor  shriftov   Kirillicy    dlya
GhostScript.  Ego mozhno najti na ftp.kapella.gpi.ru.  |tot  nabor
dazhe imeet neobhodimuyu chast' dlya dobavleniya k fajlu  Fontmap.  Vy
dolzhny utyanut' soderzhanie kataloga /pub/cyrillic/psfonts. V fajle
README opisyvayutsya vse neobhodimye podrobnosti.



  Napechatat'  chto-libo  -  eto  vsegda  problema.  Imeetsya  nabor
razlichnyh printerov  ot  razlichnyh  proizvoditelej  s  razlichnymi
osobennostyami.  Dazhe dlya vyvoda pechati na rodnom  yazyke  printera
net nikakih obshchih reshenij (eto primenmo  ne  tol'ko  k  UNIX,  no
takzhe i k drugim operacionnym sistemam.

  Printery imeyut razlichnye upravlyayushchie yazyki, i ochen'  chasto  oni
imeyut sil'no razlichnye realizacii podderzhki  inostrannogo  yazyka.
Horoshie novosti - eto to,  chto  v  kachestve  upravlyayushchego  yazyka,
kazhetsya, de facto kak standart dlya  opisaniya  raboty  pechati  (ne
vezde  no...)  ispol'zuetsya   yazyk    PosScript,    razrabotannyj
Korporaciej Adobe.

  Drugaya problema - eto shirokij spektr trebovanij pred®yavlyaemyj k
pechati.  Naprimer, inogda vy hotite prosto napechatat' chast' vashej
C programmy, soderzhashchej v kachestve kommentariya tekst na  russkom,
tak chto Vy ne nuzhdaetes' v  navorochennoj  procedure  pechati-  vam
nuzhen prostoj ASCII vyvod s odnim shriftom.  Sovsem  drugoj  delo,
kogda Vy sozdaete otkrytku  dlya  vashej  podrugi.  V  etom  sluchae
vy, veroyatno, budete nuzhdat'sya v pechate  dokumenta  s  razlichnymi
shriftami i t.d.  I eto uzhe opredelenno trebuet bol'shih usilij  po
ustanovke podderzhki Kirillicy.

  CHtoby vypolnit' vysheupomyanutuyu zadachu po vyvodu S programmy, Vy
dolzhny zastavit' vash printer ponyat' tol'ko odin shrift Kirillicy i
(vozmozhno)  ustanavlivit'  nekotoruyu  programmu-  fil'tr,   chtoby
vyvodit' dannye v sootvetstvuyushchem  formate.  CHtoby  sovladat'  so
vtoroj zadachej, Vy dolzhny obuchit' vash printer razlichnym shriftam i
imet' special'noe programmnoe obespechenie.

  Byvayut zadachi, trebuyushchie dlya vypolneniya  nechto  srednee,  togda
vam nuzhna programmy, kotoraya znaet, kak organizovat' i  shrifty  i
sootvetstvuyushchij vyvod v  printer,  tak  chto  vy  mozhete,  skazhem,
poluchit' na vyhode kachestvenno otpechatannyj  tekst,  bez  slozhnyh
sistem podgotovki tekstov.

  Vse eti voprosy budut  osveshcheny  nizhe  v  bol'shej  ili  men'shej
stepeni.



  Esli  u  vas  est'  staryj  dobryj  matrichnyj  printer,  i   Vy
nuzhdaetes'  v  prostom  vyvode  teksta  na  KOI-8,  to   probujte
sleduyushchee:

1.  Najti  sootvetstvuyushchij  KOI-8  shrift  dlya  vashego   printera.
Prover'te ftp arhivy MS DOS - v Internete (naprimer arhiv  SimTel
<ftp://ftp.simtel.net>).

2. Prochitajte rukovodstvo i najdite v  nem  kak  zagruzit'  takoj
shrift v vash printer, i, veroyatno, napishite prosten'kuyu programmu,
delayushchuyu eto.

3. Zapuskajte etu programmku iz  sootvetstvuyushchego  rc  fajla  pri
zagruzke.

  Takim obrazom, nalichie simvolov Cyrillic v verhnej chasti nabora
simvolov printera pozvolit  Vam  pechatat'  teksty  po-russki  bez
dopolnitel'nyh uhishchrenij.

  Al'ternativno  k  KOI-8  shriftam    Vy    mozhete    poprobovat'
ispol'zovat' Alt shrifty. Dlya etogo imeyutsya dve prichiny:

  1. Veroyatno najti Alt shrifty namnogo proshche, tak kak te byli  ochen'
shiroko rasprostraneny vo vremena MS-DOS.

  2. Nalichie sootvetstvuyushchego Alt shrifta  pozvolit  Vam  pechatat'
takzhe psevdo - graficheskie simvoly.

  Odnako v etom  sluchae,  vy  dolzhny  budete  preobrazovat'  vashi
teksty iz KOI-8 v Alt  pered  posylkoj  ih  na  printer.  |to  ne
problema, ta kak imeetsya mnozhestvo programm, delayushchih eto (smotri
naprimer " " translit " " ), tak chto  vam  nuzhno  tol'ko  vyzvat'
takuyu programmku iz fajla /etc/printcap v "if pole".  Naprimer, s
programmoj translit mozhno sdelat' sleduyushchee:

  if=/usr/bin/translit -t koi8-alt.rus

  Podrobno smotrite printcap (5).



  Prekrasnyj  sposob  dlya  razborki  s  razlichnymi  printerami  i
shriftami sostoit v tom, chtoby pol'zovat'sya dlya pechati paketom TeX
(sm. razdel """). TeX procesor spravitsya so vsemi problemamy, tak
chto kak tol'ko vy  zastavite  TeX  ponyat'  shrifty  Kirillicy,  to
vypobeditel'.

  Drugoj sposob - vy dolzhny ispol'zovat'  PostScript  v  kachestve
vyvoda.  YA reshil posvyatit' etomu voprosu vsyu glavu " " "  ",  tak
chto eto ne prosto.

  I v zaklyuchenie, imeyutsya i drugie tekstovye processory,  kotorye
imeyut drajvery printerov.  YA nikogda ne  proboval  chto  -  nibud'
krome TeX, tak chto ya ne mogu predlazhit' chto - libo.



  Esli vse, v chem vy nuzhdaetes'- eto pechatat'  ASCII  teksta  bez
dopolnitel'noj  dopolnitel'noj   obrabotki,    to    vy    mozhete
ispol'zovat' nekotorye programmki,  kotorye  mogut  preobrazovat'
vash tekst Kirillicy v gotovyj TeX  fajl.  Odna  iz  samyh  luchshih
programm dlya takih celej - eto " "translit".  V etom  sluchae,  Vy
dazhe  ne  dolzhny  bespokoit'sya  otnositel'no  ustanovki   shriftov
Kirillicy dlya TeX, tak kak translit  ispol'zuet  paket  Kirillicy
Washington AmsTex, kotoryj vklyuchen  v  bol'shinstvo  distributivov
TeX (ili - ya ne prav?)



  Inogda u vas est' prostoj ASCII KOI-8 tekst, i  Vy  hotite  ego
tol'ko napechatat'. Odin iz samyh prostyh sposobov eto sdelat' eto
vospol'zovat'sya  uslugami  programm   preobrazuyushchih    tekst    v
PostScript.

  Est' ryad  programm,  delayushchih  takoe  preobrazovanie.  YA  lichno
predpochitayu  a2ps.  Pervonachal'no  razrabotannaya   kak    prostoj
text-to-PostScript   preobrazovatel'    eta    programma    stala
chrezvychajno  konfigurabel'noj  s  bol'shim  kolichestvom  opcij,  i
sejchas pozvolyaet  upravlyat'  formatami  i  razmeshcheniyami  stranic,
vydeleniem i t.d.  Drugaya utilita  (teper'  dostupnaya  kak  chast'
proekta GNU) - enscript.

  Osnovnaya problema pri rabote s takimi programmami eto  to,  chto
oni nichego ne znayut  pro  shrifty  Kirillicy.  Sejchas  ya  issleduyu
vozmozhnost', podklyucheniya k nim shriftov Kirillicy.  Ostavajtes'  s
nami.

  Odnako vse eti razgovory vokrug da okolo  byl  by  bessmyslenny
bez kakogo-libo real'nogo soveta. Itak, vot ono.



  Preobrazovatel' teksta v PostScript byl  i  ostaetsya  odnim  iz
naibolee universal'nyh  sredstv  pechati.  Avtor,  kak  okazalos',
ochen' otkryt dlya predlozhenij, i kak sledstvie, a2ps versiya  4.9.8
podderzhivaet kirillicu pryamo v programme.  Vse, v chem  vy  teper'
nuzhdaetes' eto PostScript printer.

  Komanda, kotoruyu ya ispol'zuyu dlya etogo:

  a2ps -X koi8r --print-anyway  <file>



  Programma  GNU  enscript    byla    takzhe    razrabotana    dlya
preobrazovaniya teksta v PostScript i ona  takzhe  ne  podderzhivaet
ascii codeset.  Programma tak  zhe  ne  imeet  russkih  PostScript
shrifov v svoem sostave, no ih ochen' prosto doustanovit'.  Kak eto
sdelat' opisano nizhe (spasibo Michael Van Canneyt):

  1.  Ustanovite  poslednij  enscript.  Teper',  samaya  poslednyaya
versiya eto 1.5. Vy mozhete najti ee na GNU FTP arhive,  ili  vzyat'
paket RPM s Redhat.

  2. Esli Vy - schastlivyj pol'zovatel' RedHat Linux, zagruzite  i
ustanavlivite shrift Cyrillic Textbook
<ftp://ftp.redhat.com/pub/contrib/i386/enscript-fonts-koi8-1.0-1.i386.rpm>.

  3. Esli Vy ne ispol'zuete RPMki, vytyanite fajl  textbook.tar.gz
iz arhiva na sunsite.unc.edu
<ftp://sunsite.unc.edu/pub/academic/russian-studies/Software/>
(sdes'  lezhit  programnoe    obespechenie    dlya    russifikacii).
Razarhivirujte etot fajl v katalog, gde razmeshcheny enscript shrifty
(obychno /usr/share/enscript).  Teper' perejdite tuda, i vypolnite
sleduyushchuyu komandu:

         mkafmmap *.afm

  4. Ustanovka zavershena.  Probujte  napechatat'  tekst  v  KOI8-R
sleduyushchej komandoj:

         enscript --font=Textbook8 --encoding=koi8 some.file

  Esli vam trebuetsya dejstvitel'no bystryj i  prostoj  sposob,  i
kachestva vyvoda dlya vas ne kritichno, i vse chto vam  nuzhno  -  eto
tol'ko russkij tekst na bumage, probujte paket rtxt2ps. |to ochen'
prostoj bez ukrashatel'stv konverter teksta v PostScript. Kachestvo
vyvoda ne ochen' horoshee (ili, chestno govorya plohoe) no eto eto  -
rabotaet.



  Obychno,  chtoby  zastavit'  kakuyu-libo  utilitu  ili   programmy
ponimatt' kirillicu trebuet tol'ko  razreshit'  8mi  bitnyj  vvod.
Inogda  trebuetsya  skazat'  programme,  chto  by  ona   pokazyvala
rasshirennye ASCII simvoly v ih "rodnoj" forme.



  Dolzhny  byt'  ustanovleny  tri  peremennye,  dlya  togo    chtoby
  zastavit' bash ponyat'  8mi  bitnye  simvoly.  Luchshe  vsego  eto
  sdelat' iz  fajl  ~/.inputrc.  Dolzheny  byt'  ustanovleny:  set
  meta-flag on set convert-meta off set output-meta on



  V .cshrc pomestite:

  setenv LC_CTYPE iso_8859_5
  stty pass8

  Esli u vas net  POSIX  sovmestimogo  stty  (tol'ko  ne  Linux),
zamenite poslednyuyu strochku sleduyushchej:

  stty -istrip cs8



  |to, kazhetsya, edinstvenaya programma, kotoraya mozhet  potrebovat'
nabora simvolov v Alt kodirovke.  Prichinoj etogo yavlyaetsya to, chto
Alt kodirovka yavlyaetsya rodnoj dlya  DOS,  i  bol'shinstvo  programm
DOS, imeyushchih delo kirillicej alt-orientirovanny.

  Dlya  konsol'noj  versii  (DOS)  Vy  dolzhny  zagruzit'    tol'ko
klaviaturu i ekrannyj drajver.  Bol'shinstvo drajverov  DOS  budet
prekrasno rabotat'.  YA lichno ispol'zuyu rk  drajver  A.  Strahova,
kotoryj rabotaet,  i  dlya  konsoli  i  X  versii  dosemu.  Drugaya
al'ternativa  -  r  drajver  Vadima  Kurlyanda.    On    prekrasno
nastraivaetsya i podderzhivaet mnogo kodirovok v tom chisle,  Alt  i
KOI8. Odnako on ne budet rabotat' dlya X Windows (po krajnej  mere
versiya 1.14, kotoruyu ya ispol'zuyu, a sejchas est' versiya 2.0).

  Oba  russifikatora  mozhno  najti  na  bol'shinstve    Rossijskih
Internet arhivah, naprimer v ftp  arhiv  Kurchatovskogo  Instituta
<ftp://ftp.kiae.su/pub/cyrillic/msdos>.

  Dlya  Xovyh  versii  dosemu  vy    dolzhny    takzhe    ustanovit'
sootvetstvuyushchij X shrift.  Aleksej Bogdanov poslal mne takoj shrift
po elektronnoj pochte.  |to - rodnoj  shrift  VGA  iz  distributiva
dosemu, izmenennyj dlya Alt kodirovki.  K sozhaleniyu ya ne znayu, kto
- avtor etogo shrifta i gde oficial'noe mesto. YA pomeshchu etot shrift
v moj katalog na FTP
<ftp://ftp.netvision.net.il/home/b/belikoff/cyrillic>.

  Dlya ustanovki shriftov dlya dosemu Vy dolzhny

  Podstavit' etot shrift X. serveru, kak eto sdelat' opisano v " "
punkte 4.1 X shrifty ''.

  Prikrutit'  etot  shrift  dosemu.  Esli  shrift  tol'ko  zamenyaet
pervonachal'nyj shrift VGA,  to  on  budet  opoznan  po  umolchaniyu.
Inache, Vy dolzhny opisat' ego v /etc/dosemu.conf:

     # Font to use (without filename extensions). For example:
     X { updatefreq 8 title "MS DOS" icon_name "xdos" font "vga-alt"}

  I  v  zaklyuchenie,  vy  dolzhny  zagruzit'  drajver   klaviatury.
Obratite vnimanie, vam ne nuzhnu v ekrannye  drajvery  v  X  okne.
Bolee togo, ne vse drajvery budut rabotat'.  No po  krajnej  mere
dva budut: rk A. Starhova, i cyrkeyb Pete Kvitek.



  Minimal'naya podderzhka  kirillicy  v  emacs  obespechivaetsya  pri
vypolnenii  sleduyushchih  obrashchenij  k  .emacs  (pri  uslovii,   chto
podderzhka  simvolov  Cyrillic  ustanovlena  dlya  konsoli  ili   X
sootvetstvenno):

  (standard-display-european t)

  (set-input-mode (car (current-input-mode))
     (nth 1 (current-input-mode))
     0)

  |to  pozvolit  pol'zovatelyu  prosmatrivat'   i    redaktirovat'
dokumenty po-russki.

  Odnako, takoj rezhim ne ochen' udoben, potomu chto v rezhime  vvoda
Kirillicy emacs ne raspoznaet obychnye komandy klaviatury. Imeetsya
celyj ryad paketov, kotorye ispol'zuyut drugoj podhod  dlya  resheniya
etoj problemy.  Oni ne  ispol'zuyut  sredstva  vvoda  obespechennye
sredoj (ili X ili konsol'yu).  Vzamen, oni pozvolyayut  pol'zovatelyu
vklyuchat' rezhim vvoda special'noj komandoj emacs, i emacs beret na
sebya  otvetstvenen  za  otobrazhenie  russkih   simvolov.    Avtor
rassmatrivaet  tri    iz    nih.    Paket    Valeriya    Alekseeva
(valery@math.uga.edu) russian.el
<http://www.math.uga.edu/~valery/russian.el>
pozvolyaet  pol'zovatelyu  pereklyuchat'sya   mezhdu    kirillicej    i
standartnym rezhimom vvoda i perekodirovat' soderzhanie  bufera  iz
odnoj  standarta  kirillicy  v  drugoj  (chto  yavlyaetsya   osobenno
poleznym dlya chtenii tekstov importiruemyh iz MS-DOS).

  Edinstvenoe  neudobstvo  -  eto  to,  chto  emacs   obrabatyvaet
rossijskie simvoly kak special'nye, i kak sledstvie ne raspoznaet
granicy russkih slov i  ne  delaet  razlichiya  mezhdu  strochnymi  i
zaglavnymi bukvami. CHtoby obojti eto, vy dolzhny izmenit' Syntax i
Case tablicy emacs:

  ;; there is a garbage in the variables below, since SGML doesn't like
  ;; cyrillic characters. You have to put the uppercase and lowercase
  ;; parts of the Russian alphabet respectively (see the actual files)

  (setq *russian-abc-ucase* "*** SGML SUCKS ***")
  (setq *russian-abc-lcase* "*** SGML SUCKS ***")

  (let ((i 0)
        (len (length *russian-abc-ucase*)))

       (while (< i len)
         (modify-syntax-entry (elt *russian-abc-ucase* i) "w  ")
         (modify-syntax-entry (elt *russian-abc-lcase* i) "w  ")
         (set-case-syntax-pair (elt *russian-abc-ucase* i)
                               (elt *russian-abc-lcase* i)
                               (standard-case-table))
         (setq i (+ i 1))))

  Dlya etogo ya sozdal rusup.el fajl, kotoryj soderzhit eti komandy,
takzhe kak i paru drugih udobnye funkcii.  Vy dolzhny vyzvat' ego v
vashem ~/.emacs.

  Drugoj vozmozhnyj sposob  -  paket,  kotoraya  pytaetsya  szdelat'
podderzhku kirilicy bolee obshchej. |tot paket napisan Per Abrahamsen
(abraham@iesd.auc.dk) i lezhit na ftp.iesd.auc.dk.

  Po  mneniyu  avtora  dlya  nachala  sleduet    ustanovit'    paket
russian.el,  potomu  chto  on  ochen'  prost  v  ustanovke   i    v
ispol'zovanii.



  V  prirode  sushchestvuet   rspell    sozdannomu    Neal    Dalton
(nrd@cray.com) - plug-in k paketu GNU ispell  ,  no  u  menya  pri
ispol'zovanii voznikli problemy.  Prover'te  ego  -  veroyatno  vy
budete bolee udachlivymi.



  Probujte opciyu -asis.



  CHto kasaetsya public domain realizacii ksh - pdksh 5.1.3, to  vy
mozhete  razreshit'  8mi  razryadnyj  vvod  v  rezhime   vvoda    vi.
Ispol'zujte:

  set -o vi



  Poka,  less  ne  podderzhivaet  simvoly  KOI-8,  no    ustanovka
sleduyushchej sistemnoj peremennoj pozvolyaet obojti eto:

  LESSCHARSET=latin1

     ili

  LESS="-e -r"



  Nachinaya  s  versii  2.6,  vy  mozhete  vybirat'  sootvetstvuyushchee
znachenie dlya displeya - Character set option.



  CHtoby razobrat' tekst Kirillicy , vyberite opciyu full 8  bit  v
Optiond/Display menyu.

  Esli  u  vas  problemy  v  vide  urodlivyh    okonnyh    ramok,
prokonsul'tirujtes' " " " " razdele.

  off-topic, esli vy zahotite chtoby mc v okne Xterm byl v  cvete:
ustanavite peremennuyu COLORTERM:

  COLORTERM= ; export COLORTERM



  Udostoverites', chto Vy ispol'zuete versiyu Netscape vyshe 3. Esli
vash Netscape bolee staryj, voz'mite  novyj  iz  www.netscape.com.
(tem bolee skoro budet vypushchen 5 yj Netscape i veroyatno pod GNU)



  CHtoby uvidet' tekst Kirillicy v HTML  dokumente  v  bol'shinstve
sluchaev, sdelajte sleduyushchee:

  V menyu Options/Document Encoding vyberete Cyrillic(KOI-8).

  V  menyu  Options/General  Preferences/Fonts  vyberete  Cyrillic
(KOI-8) encoding,  Times(Cronyx)  kak  proporcional'nyj  shrift  i
Courier(Cronyx) kak fiksirovannyj.

  Sohranite opcii.

  OBRATITE VNIMANIE: |ta ustanovka budet rabotat' s  bol'shinstvom
chastej  dokumenta.  Odnako,  Vy  ne  smozhite  otobrazit'    tekst
Kirillicy v zagolovke okna, menyu i nekotoryh drugih mestah. CHtoby
ustranit' eti problemy, sdelajte



  CHtoby ustranit' eto, dlya etogo obychno dostatochno:

  1.  Skopirovat'  bazu  dannyh  ustanovok    Netscape    (obychno
Netscape.ad) v ~/Netscape.

  2. V fajle, ustanovite sleduyushchuyu opciyu:

     *documentFonts.charset*iso8859-1:           koi8-r

  |to vynudit vse frejmy i elementy vvoda ispol'zovat'  shrifty  s
kodirovkoj koi8-r vmesto zadannyh po umolchaniyu,  a  sledovatel'no
vy dolzhny udostoverit'sya v  tom,  chto  vy  uzhe  ustanovili  takie
shrifty (sm. razdel """).



  Andrej A. CHernov - eto chelovek kotoryj znaet bol'she o KOI-8 chem
drugie  v  obshchem  i  v  netscape  v  chastnosti.   Posetite    ego
prevoshodnuyu KOI-8 stranicu, i skachajte zaplatu dlya fajla resursa
Netscape, kotoryj zastavlyaet Netscape  govorit'  po  Russki,  tak
horosho kak eto tol'ko vozmozhno.



  Vstav'te  sleduyushchuyu  strochku  v  ~/.pinerc  dlya    personal'noj
nastrojki, ili v /usr/lib/pine.conf dlya obshchej:

  character-set=ISO-8859-5



  Udostoverites',  chto  shell  na  meste    adresata    pravil'no
ustanovlena.  Esli  vash  rlogin  ne  rabotaet    po    umolchaniyu,
ispol'zujte " rlogin -8 ".



  Nachinaya s versii 8, sendmail obrabatyvaet 8  bitnye  dannye  po
umolchaniyu pravil'no.  Esli etogo ne proishodit-  prover'te  opciyu
EightBitMode i opciyu 7 v razdele mailers v fajl /etc/sendmail.cf.
Podrobnee smotrite "Sendmail. Operation and Installation Guide" .



  YA napominayu, chto StarOffice, ne zarabotal s moej versiej  libc.
Poetomu, ya ne smog proverit' ego vozmozhnosti po russifikacii.

  YUrij Kovalenko () sostavil kratkoe rezyume na temu  russifikacii
StarOffice.  |to  nahoditsya  poadressu  ""  "".  Eshche  raz,  ya  ne
oproboval etot sposob i nichego ne mogu skazat' po etomu povodu,



  V osnovnom, xemacs  po  umolchaniyu  nastroen  vpolne  priemlemo.
Odnako Vy vse eshche budete nuzhdat'sya v pakete russifikacii.

  Esli chto-to rabotaet ne  tak,  sm.  razdel  """.  |to  vozmozhno
pomozhet.

  Hotya, ya eshche ne portiroval moj  paket  "  "  rusup.el  "  "  dlya
xemacs, tak chto  Vy  vozmozhno  budete  ispytaete  nedostatok  ego
funkcional'nyh vozmozhnostej. YA portiruyu ego v blizhajshem budushchem.



  Sdelajte to zhe samoe,  chto  delaetsya  dlya  csh  (sm.  razdel  "
"csh"). Fajl inicializacii v etom sluchae - .zshrc ili /etc/zshrc.



  Poka, ya opisyval,  kak  zastavit'  razlichnye  programmy  ponyat'
Kirillicu.  Obychno, kazhdaya programma trebovala, chtoby eto bylo ee
sobstvennyj metod, chrezvychajno otlichnyj ot drugih.  Krome togo, u
nekotoryh  programm  byla  nezavershennaya  podderzhka  otlichnyh  ot
anglijskogo  yazykov.  Ne  govorya  uzhe   ob    ih    nesposobnost'
vzaimodejstvovat',  ispol'zuya  rodnoj  yazyk  pol'zovatelya  vmesto
anglijskogo.

  Problemy,  perechislennye  vyshe  sil'no  podavlyayut,   tak    kak
programmnoe  obespechenie  redko  sozdaetsya  tol'ko  dlya  mestnogo
rynka.  Pererabotka sushchestvennyh chastej programmnogo  obespecheniya
kazhdyj  raz  pri  vhode  na  novyj  mezhdunarodnomu  rynok,  ochen'
neeffektivena;  i  internacional'naya  podderzhka,   osushchestvlyaemaya
sobstvennymi sredstvami programmy unikal'nym i prisushchim tol'ko ej
sposobom  v  terminah  dolgosrochnogo  planirovaniya  tak  zhe    ne
blestyashchaya ideya.

  Sledovatel'no,  voznikaet  potrebnost'  v  standartizacii.    I
standart est'.

  Vse  svyazannoe  s  vysheperechislennymi  problemami  razdeleno  v
sootvetstvii  c  dvumya  bazisnymi  koncepciyami:  lokalizaciya    i
internacionalizaciya.  Pod lokalizaciej my imeem v  vidu  sozdanie
programm, sposobnyh obrabatyvat'  razlichnye  yazykovye  soglasheniya
dlya razlichnyh  stran.  Pozvol'te  privesti  primer.  Format  daty
vydannyj v Soedinennyh SHtatah -  imeet  vid  MM/DD/GG.  Odnako  v
Rossii, naibolee populyarnyj format -  DD.MM.GG.  Drugie  problemy
vklyuchayut  v  sebya  predstavlenie  vremeni,  formaty    chisla    i
predstavleniya valyuty. Krome etogo, odin iz naibolee vazhnyh aspekt
lokalizacii opredelyaet sootvetstvuyushchie klassy simvolov,  to  est'
opredelyaet,  kakie  simvoly   v    nabore    simvolov    yavlyayutsya
"kirpichikami" yazyka (bukvami) i kak oni uporyadochivayutsya. S drugoj
storony, lokalizaciya ne rabotaet so shriftami.

  Internacionalizaciya    (ili    i18n    dlya    kratkosti)    kak
predpolagaetsya,  reshaet  problemy,  svyazannye  so    sposobnost'yu
programmy, vzaimodejstvuyut s pol'zovatelem na ego rodnom yazyke.

  Obe  eti  koncepcii  dolzhny   byt'    standartizovany,    davaya
programmistam neprotivorechivyj put' sozdaniya programm, rabotayushchih
v nacional'noj srede.

  Hotya standartizaciya eshche v processe,  no  mnogo  ee  chastej  uzhe
fakticheski yavlyayutsya standartom; tak chto oni mogut  ispol'zovat'sya
bez osobyh problemy.

  YA opishu obshchuyu shema sozdaniya  programm  ispol'zuyushchih  opisannye
vyshe vozmozhnosti standartnym sposobom.  Tak kak  eto  zasluzhivaet
otdel'nogo dokumenta, ya budu davat' tol'ko ochen' obshchee opisanie i
ukazateli na bolee polnye istochniki.



  Odno iz osnovnyh  ponyatij  lokalizacii  -  locale.  Pod  locale
podrazumevaetsya  nabor  soglashenij,  specificheskih  dlya  otdel'no
vzyatogo yazyka v otdel'no vzyatoj strane.  V obshchem sluchae govorit',
chto locale opredelyaetsya tol'ko stranoj nepravil'no.  Naprimer,  v
Kanade mogut byt' opredeleny dva locale- yazyk Kanada / Anglijskij
i yazyk Kanada / Francuzskij. Bolee togo, yazyk Kanada / Anglijskij
- ne yavlyaetsya ekvivalentom yazyku Velikobritaniya / Anglijskij  ili
Amerikanskij / Anglijskij, tochno tak zhe Kanada / Francuzskij yazyk
- ne ekvivalent yazyku Franciya / Francuzskij ili yazyku SHvejcariya /
Francuzskij.



  Kazhdaya  locale  -  special'naya  baza  dannyh,  opredelyayushchaya  po
krajnej mere sleduyushchie pravila i soglasheniya:

  1. Klassifikaciya simvolov i preobrazovaniya

  2. Predstavlenie valyuty

  3. Predstavlenie chisel (to est'. Desyatichnye simvoly)

  4. Format daty / vremeni

  V RedHat 4.1, kotoryj ya ispol'zuyu, imeyutsya fakticheski dve  bazy
dannyh locale: odna dlya  biblioteki  C  (libc)  i  drugaya  dlya  X
bibliotek.  V ideal'nom sluchae dolzhna imet'sya  tol'ko  odna  baza
dannyh locale dlya vsego.

  CHtoby izmenit'  znachenie  locale  po  umolchaniyu  mesto,  obychno
dostatochno ustanovit' sistemnuyu peremennuyu  LANG.  Naprimer,  kak
eto delaetsya v sh:

  LANG=ru_RU
  export LANG

  Inogda, vy mozhete zahotet' izmenit' tol'ko odin  aspekt  locale
bez izmeneniya drugih.  Naprimer,  Vy  mozhete  reshit'  (Bog  znaet
pochemu) chtoby pol'zovat'sya s ru_RU locale, no chisla pechati dolzhny
budut sootvetstvovat' standartu POSIX odin.  V podobnyh  sluchayah,
imeetsya nabor sistemnyh  peremennyh,  kotorye  Vy  mozhete  zadat'
chtoby skonfigurirovat' sootvetstvuyushchie chasti locale.  Naprimer  v
nashem sluchae eto by vyglyadelo tak:

  LANG=ru_RU
  LC_NUMERIC=POSIX
  export LANG LC_NUMERIC

  Podrobnee , sm. man locale (7).

  Teper'  davajte  derzhat'sya  poblizhe  k  specifike   Linux.    K
sozhaleniyu, v Linux libc versiya  5.3.12,  vhodyashchaya  v  distributiv
RedHat 4.1 otsutstvuet russkaya locale.  V dannom sluchae  ee  nado
skachat' iz Interneta (ya, odnako, ne znayu tochnogo adresa).

  CHtoby proverit', dlya kakih yazykov u vas est' locale  vypolnyaete
" locale -a ".  |to vyvedet  pisok  vseh  locale  iz  baz  dannyh
dostupnyh libc.

  K schast'yu, simejstvo Linux bystro megriruet v  novuyu  GNU  libc
(glibc versiyu 2, kotoraya yavlyaetsya bolee posix-sovmestimoj i imeet
sootvetstvuyushchee rossijskoe locale).  Distributiv RedHat  5.0  uzhe
ispol'zuet glibc.

  CHto kasaetsya bibliotek X, to oni imeyut  svoyu  sobstvennuyu  bazu
dannyh locale.  V versii kotoruyu ya ispol'zuyu (XFree86  3.3),  uzhe
imeetsya rossijskaya baza dannyh locale.  YA ne uveren est' li ona v
predidushchej versii.  V lyubom  sluchae,  Vy  mozhete  proverit'  eto,
izuchiv direktoriyu usr/lib/X11/locale/ (v bol'shinstve  sistem).  V
moem sluchae, uzhe est'  podkatalogi,  imenovannye  koi8-r  i  dazhe
iso8859-5.



  S locale, programma ne  dolzhna  znat'  o  razlichnyh  simvol'nyh
preobrazovaniyah i  pravilah  sravneniya,  opisannyh  vyshe.  Vmesto
etogo, oni  ispol'zuyut  special'nyj  API,  kotoryj  dejstvuet  po
pravila, opredelennym locale.  Krome togo, net neobhodimosti  dlya
programmy, pol'zovat'sya tol'ko odnoj locale dlya  soblyudeniya  vseh
pravil- vozmozhno  pol'zovat'sya  drugimi  pravilami,  opisannyh  v
drugih locale (hotya takoj metod ne ochen' horosh).

  Iz man setlocale (3):

  Programma mozhet  byt'  sdelana  perenosimoj  dlya  vseh  locale,
vyzyvaya setlocale (LC_ALL,  "")  posle  inicializacii  programmy,
ispol'zuya znacheniya, vozvrashchennye  iz  localeconv  ()  zapros  dlya
locale - zavisimoj informacii i ispol'zuya strcoll () ili  strxfrm
() dlya sravneniya strok.

  SunSoft, naprimer, opredelyaet 5 urovnej lokalizacii programmy:

  1. CHistoe 8mi bitnoe programmnoe obespechenie. To est' programma
vyzyvaet setlocale (), ona  ne  delaet  kakih-libo  predpolozhenij
otnositel'no  8-ogo   bita    kazhdogo    simvola.    Ispol'zuyutsya
pol'zovatel'skie funkcii iz ctype.h i ogranicheniya iz limits.h,  i
gde i reshayutsya problemy otnositel'no signed/unsigned rezul'tata.

   Ne dolzhno (ochen' vazhno  ne  delat')  kakih-libo  predpolozhenij
otnositel'no haraktera nabora simvolov i ih uporyadocheniya. To est'
sleduet  vozderzhat'sya  ot  sleduyushchih  uslovij   (dejstvij)    pri
programmirovanii:

         if (c >= 'A' && c <= 'Z') {
             ...

  Vzamen  vo  vseh  takih    sluchayah    dolzhny    ispol'zovat'sya,
makrokomandy iz locale zavisimogo fajla zagolovka ctype.h.

  2. Formaty, metody sortirovki, razmery lista bumagi.  Programma
ispol'zuet strcoll () i strxfrm () vmesto strcmp  ()  dlya  strok,
ispol'zuet time (), localtime (), i strftime () / dlya  raboty  so
vremenem,  i  v  zaklyuchenie,  ispol'zuet  localeconv    ()    dlya
pravil'nogo predstavleniya chisel i valyuty.

  3. Vidimyj tekst skladyvaetsya v "katalogi soobshchenij". Programma
dolzhna lokalizovat' ves' vidimyj tekst v  special'nyh  "katalogah
soobshchenij".  Oni soderzhat sootvetstviya strok na anglijskom  k  ih
perevody na drugie yazyki.  Vybor soobshchenij sootvetstvuyushchih  yazyku
okruzheniya vypolnen tak, chto polnost'yu prozrachen i dlya programmy i
dlya pol'zovatelya.  CHtoby  ispol'zovat'  eti  sredstva,  programma
dolzhna vyzvat' gettext () (Sun/POSIX standart),  ili  catgets  ()
(X/Open standart). Podrobnee sm. razdel """.

  4.  EUC/Unicode  podderzhka.  Na  etom  urovne,  programma    ne
ispol'zuet tip char.  Vzamen eto ona ispol'zuet wchar_t,  kotoryj
opredelyaet ob®ekty, dostatochno bol'shie, chtoby  soderzhat'  simvoly
Unicode. ANSI C opredelyaet etot tip dannyh i sootvetstvuyushchij API.

  Podrobnee, sm., naprimer (""") ili (""").



  V  to  vremya  kak  lokalizaciya  opisyvaet,  kak    adaptirovat'
programmu k inostrannomu okruzheniyu, internacionalizaciya (ili i18n
dlya  kratkosti)  detaliziruet  sposoby  obshcheniya    programmy    s
ne-anglogovoryashchim pol'zovatelem.

  Prezhde, eto delalos' s pomoshch'yu sozdaniya  abstrakcij  soobshchenij,
dlya vyvoda ih iz koda programmy.  Teper', takoj  mehanizm  (bolee
ili menee)  standartizirovan.  I,  konechno,  est'  ego  svobodnye
realizacii!

  Proekt    GNU    nakonec    stal    na     put'        sozdaniya
internacionalizirovannyh  prikladnyh  programm.  Ulrich   Drepper
(drepper@ipd.info.uni-karlsruhe.de)  razrabotal  paket   gettext.
|tot paket lezhit vo vseh GNU arhivah, naprimer v prep.ai.mit.edu.
On pozvolyaet Vam razrabatyvat' programmy v napravlenii,  dvigayas'
v kotorom vy  mozhete  legko  zastavit'  ih  podderzhivat'  bol'shee
kolichestvo  yazykov.  YA  i  ne  predpolagayu    opisyvat'    metody
programmirovaniya, eshche i potomu chto gettext paket  postavlyaetsya  s
prevoshodnym rukovodstvom.

  Pros'ba o sotrudnichestve: Esli Vy hotite izuchit' gettext  paket
i sdelat' svoj vklad v proektu GNU ili prosto sdelat'  vklad  bez
vsyakogo  izucheniya,  to  vy  mozhete  delat'  eto!  GNU  stanovitsya
mezhdunarodnym, tak chto vse utility  delayutsya  locale  zavisimymi.
Problema sostoit v tom, chtoby perevodit' soobshcheniya ot Anglijskogo
yazyka na Russkogo (i drugie  yazyki,  konechno  esli  zahotite).  V
obshchem, chto sleduet sdelat': vy dolzhny  poluchit'  special'nyj  .po
fajl, sostoyashchij iz  Anglijskih  soobshchenij  dlya  nekih  utilit,  i
svyazat'kazhdoe soobshchenie s ego ekvivalentom na russkom. V konechnom
schete, eto zastavit govorit' sistemu Russkij,  esli  pol'zovatel'
zahochet etogo! Dlya dlya podrobnostej vojdite v  kontakt  s  Ulrich
Drepper (drepper@ipd.info.uni-karlsruhe.de).





  Imeetsya ryad programm, sposobnyh preobrazovyat' iz KOI-8 v Alt i
obratno.  Zajdite v SovInformBureau ili ftp.funet.fi  dlya  poiska
udobnyh nebol'shih utilit. Vy mozhete dazhe ispol'zovat' special'nyj
rezhim dlya emacs (sm. razdel " "Emacs").

  Odnako,  ya  osobenno  rekomendoval  by  paket   translit.    On
podderzhivaet mnogo populyarnyh codesets i  dazhe  sposoben  sozdat'
TeX fajly (sm. razdel """) iz russkogo teksta.  Krome  togo,  dlya
transli sushchestvuet paket RPMt.


ftp:ftp:
  1. Andrej CHernov. KOI-8 <http://www.nagual.ru/~ache/koi8.html>.
Informaciya i nastrojka KOI-8.

  2. Ulrich Drepper. Internacionalizaciya proekta GNU
<http://i44www.info.uni-karlsruhe.de/~drepper/conf96/paper.html>.
Ochen' polnoe opisanie migracii GNU  k i18n.

  3. Michael Karl Gschwind. Internacionalizaciya
     <http://www.vlsivie.tuwien.ac.at/mike/i18n.html>.    Various
resources on i18n.

  4.  Sergej  Naumov.  Informaciya    otnositel'no    programmnogo
obespecheniya Kirillicy
<http://sunsite.oit.unc.edu/sergei/Software/Software.html>.
     Informaciya ob ustanovki Kirillicy.

  5.    The    Open    Group    Single    UNIX      specification
<http://www.UNIX-systems.org/online.html>.

  6. Alec Voropay. Localization as it is
<http://www.sensi.org/~alec/locale>. Obshchee opisanie raboty locale
s russkim yazykom i t.d..



  a2ps homepage <http://www-inf.enst.fr/~demaille/a2ps.html>

  Obshchaya informaciya o Linux <http://sunsite.unc.edu/mdw/linux.html>

  Nabor  vsyakoj  vsyacheny  dlya   kirillizacii    na    ftp.kiae.su
<ftp://ftp.kiae.su/cyrillic/>

  Nabor  vsyakoj  vsyacheny  dlya  kirillizacii   na    ftp.relcom.ru
<ftp://ftp.relcom.ru/cyrillic/>

  Nabor  programmnogo  obespecheniya  svyazannogo  s    kirilizaciej
<ftp://ftp.funet.fi/pub/culture/russian/comp/>

  Cronyx <http://www.cronyx.ru> - sozdateli shriftov Kirillicy dlya
X Windows.

  SHrifty Kirillicy dlya Ghostscript
<ftp://ftp.kapella.gpi.ru/pub/cyrillic/psfonts>

  SHrifty Kirillicy dlya X
<ftp://ftp.kiae.su/cyrillic/x11/fonts/xrus-2.1.1-src.tgz>

  Ghostscript <http://www.cs.wisc.edu/~ghost/index.html>

  GNU enscript <ftp://prep.ai.mit.edu/pub/gnu>

  Novosti Relcom.fido.ru.unix.

  RFC 1489 <file://ds.internic.net/rfc/rfc1489.txt>

  Rspell dlya GNU ispell
<ftp://sunsite.unc.edu/pub/academic/russian-studies/Software/rspell.tar.gz>

  SovInformBureau <http://www.siber.com/sib/russify/>

  TeTeX paket russifikacii
<ftp://xray.sai.msu.su/pub/outgoing/teTeX-rus/>

  Kbd paket dlya Linux
<ftp://sunsite.unc.edu/pub/Linux/system/Keyboards/>

  Paket perekodirovki dlya Emacs <ftp://ftp.iesd.auc.dk/>

  Paket rtxt2ps  <http://www.siber.com/sib/russify/converters/>

  Paket russian.el dlya emacs
<http://www.math.uga.edu/~valery/russian.el>

   Paket translit
<ftp://ftp.osc.edu/pub/russian/translit/translit.tar.Z>

   Paket xruskb <ftp://ftp.relcom.ru/pub/x11/cyrillic/>

  Poleznye pakety dlya raboty s Kirillicy
<ftp://sunsite.unc.edu/pub/academic/russian-studies/Software>

  Nabory X shriftov <ftp://ftp.switch.ch/mirror/linux/X11/fonts/>

  XFree86 FTP arhiv <http://www.xfree86.org>

Last-modified: Tue, 29 Sep 1998 04:41:46 GMT
Ocenite etot tekst: