Sophie

Sophie

distrib > Mandriva > 8.1 > i586 > by-pkgid > 1d876fa8c1caf5809b8232d098efff65 > files > 11

howto-text-pl-8.1-1mdk.noarch.rpm

  The Cyrillic HOWTO
  Autor: Aleksander L. Belikoff, v3.0, 13 sierpieñ 1995
  WWeerrssjjaa ppoollsskkaa:: GGwwiiddoonn SS.. NNaasskkrreenntt nnaasskkrreenntt@@hhootthh..aammuu..eedduu..ppll
  v2.0, luty 1998

  Dokument ten opisuje jak skonfigurowaæ swój system linuxowy aby móc
  pisaæ, ogl±daæ i drukowaæ dokumenty w jêzyku rosyjskim.  Dokument ten
  zosta³ napisany w standardzie ISO-8859-2.  Orygina³ tego dokumentu
  znajduje siê pod adresem
  ______________________________________________________________________

  Table of Contents:

  1.      1. Uwagi ogólne

  1.1.    1.1 Wstêp

  1.2.    1.2 Dostêpno¶æ i uwagi

  2.      2. Znaki i zestawy znaków

  3.      3. Ustawianie trybu tekstowego

  3.1.    4.1. Konsola

  3.2.    Konsola FreeBSD

  3.3.    System X Window

  3.3.1.  Xowe czcionki

  3.3.2.  T³umaczenie danych wprowadzanych

  3.3.2.1.        Tablica znaków

  3.3.2.2.        Zasady prze³±czania trybów

  4.      Obs³uga cyrylicy w LaTeXie

  4.1.    U¿ywanie Washington Cyryliic

  4.2.    Pakiet KOI-8 dla LaTeXa

  4.3.    U¿ywanie pakietu cmcyralt dla LaTeXa

  4.4.    Pakiet CyrTUG

  5.      Cyrylica w PostScriptcie

  5.1.    Dodawanie czcionek cyrylicowych do Ghostscripta

  6.      Drukowanie

  6.1.    £adowanie czcionek cyrylicowych do drukarki niepostscriptowej

  6.2.    Drukowanie ró¿nymi czcionkami

  6.3.    Konwersja tekstu do TeXa

  6.4.    Konwersja tekstu do postscriptu

  7.      Konfiguracja ró¿nych narzêdzi

  7.1.    6.1. bash

  7.2.    6.2. csh/tcsh

  7.3.    6.3. emacs

  7.4.    6.4. ispell

  7.5.    joe

  7.6.    ksh

  7.7.    less

  7.8.    lynx

  7.9.    mc (Midnight Commander)

  7.10.   Netscape Navigator

  7.10.1. Konfiguracja podstawowa

  7.10.2. Konfiguracja zaawansowana

  7.11.   pine

  7.12.   rlogin

  7.13.   sendmail (aka 'zguba sysadmina')

  8.      zsh

  9.      U¿yteczne narzêdzia

  9.1.    Narzêdzia do konwersji

  9.2.    Narzêdzia programisty

  10.     Wykaz u¿ytecznych zasobów
  ______________________________________________________________________

  11..  11.. UUwwaaggii ooggóóllnnee

  11..11..  11..11 WWssttêêpp

  Dokument ten obejmuje to czego potrzebujesz aby skutecznie pisaæ,
  ogl±daæ i drukowaæ dokumenty po rosyjsku pod Linuxem. Chocia¿ dokument
  ten zak³ada ¿e jako systemu operacyjnego u¿ywasz Linuxa, wiêkszo¶æ z
  przedstawionych informacji stosuje siê tak¿e do innych odmian Unixa.
  Postaram siê zachowaæ rozró¿nienie tak widocznym jak to mo¿liwe.

  Istnieje pewna liczba popularnych dystrybucji linuxowych. Jako system
  przyk³adowy opiszê Linuxa Red Hat 3.0.3 (Picasso) oraz Red Hat 4.1
  (Vanderbildt) - tego którego osobi¶cie u¿ywam. Niemniej jednak
  postaram siê zaznaczyæ ró¿nice, je¶li takowe istniej±, w instalacji
  Linux Slackware.

  Poniewa¿ taka instalacja bezpo¶rednio modyfikuje i rozszerza system
  operacyjny, powiniene¶ zdawaæ sobie sprawê z tego co robisz. Chocia¿
  stara³em siê sprawy maksymalnie upro¶ciæ, posiadanie pewnego
  do¶wiadczenia z danym programem jest korzystne. Nie zamierzam opisywaæ
  czym jest system X Windows i jak sk³adaæ dokumenty u¿ywaj±c TeXa lub
  LaTeXa, albo jak zainstalowaæ drukarkê w Linuxie. Problemy te omawiane
  s± w innych dokumentach.

  Z tych samych powodów opisujê instalacjê na skalê systemow±, domy¶lnie
  wymagaj±c± uprawnieñ administratora. Je¶li jednak istnieje mo¿liwo¶æ
  instalacji na poziomie u¿ytkownika, nie omieszkam jej wspomnieæ.

  Uwaga: system X Windows, TeX i inne sk³adniki Linuxa s± z³o¿onymi
  systemami z wyrafinowan± konfiguracj±. Je¶li co¶ sknocisz, mo¿esz nie
  tylko nie dokonaæ instalacji cyrilicy, ale popsuæ sk³adnik, je¶li nie
  ca³y system. Nie ma to na celu ciê odstraszaæ, lecz tylko sprawiæ aby¶
  zrozumia³ powagê operacji i by³ ostro¿nym. Wstêpna kopia zapasowa
  plików konfiguracyjnych jest wielce po¿±dana. Posiadanie pod rêk±
  jakiego¶ guru zawsze siê przydaje.

  11..22..  11..22 DDoossttêêppnnoo¶¶ææ ii uuwwaaggii

  Dokument ten dostêpny jest na sunsite.unc.edu lub tsx-11.mit.edu jako
  czê¶æ Linux Documentation Project. Mo¿e tak¿e byæ dostêpny w ró¿nych
  archiwach zawieraj±cych Linuxa. Co wiêcej, mo¿e tak¿e wchodziæ w sk³ad
  dystrybucji Linuxa.

  Mo¿na go wreszcie otrzymaæ bezpo¶rednio od autora, na
  ftp.netvision.net.il.

  Je¶li masz jakie¶ pytania dotycz±ce tego dokumentu, nie wahaj siê,
  proszê, skontaktowaæ siê ze mn± pod adresem belikoff@netvision.net.il.
  Ka¿da nowa i u¿yteczna informacja na temat obs³ugi Cyrilicy w ró¿nych
  Unixach jest mile widziana. Pamiêtaj, pomo¿e to innym.

  Wielu ludzi pomog³o mi (i nie tylko mi) warto¶ciowymi informacjami
  oraz sugestiami. Jeszcze wiêcej ludzi do³o¿y³o oprogramowania na
  u¿ytek publiczny. Przepraszam je¿eli zapomnia³em kogo¶ wymieniæ.

  Oto wiêc oni: Bas v. de Bakker, David Daves, Siergiej Wakulenko,
  Siergiej O. Naoumow, Winfried Trümper, Michael van Canneyt.

  Ten dokument jest (c) 1995 Aleksander L. Belikoff. Mo¿na go u¿ywaæ i
  rozpowszechniaæ zgodnie ze zwyk³ymi warunkami Linux HOWTO opisanymi
  poni¿ej.

  Poni¿sze jest notk± o prawach autorskich Linux HOWTO:

  Dokumenty Linux HOWTO stanowi± prawn± w³asno¶æ ich autorów, chyba ¿e
  zaznaczono inaczej. Dokumenty Linux HOWTO mog± byæ reprodukowane i
  rozposzechniane w ca³o¶ci lub czê¶ci, w ka¿dym fizycznym lub
  elektronicznym ¶rodku przekazu, tak d³ugo jak w ka¿dej kopii pozostaje
  niniejsza notka o prawach autorskich. Redystrybucja komercyjna jest
  dozwolona i popierana; autorzy jednak woleliby zostaæ o takich
  dystrybucjach powiadomieni.

  Wszystkie t³umaczenia, prace pochodne i zbiorowe zawieraj±ce dokumenty
  Linux HOWTO musz± podlegaæ po t± notkê o prawach autorskich.  To jest,
  nie mo¿esz stworzyæ z HOWTO pracy pochodnej i na³o¿yæ dodatkowe
  ograniczenia na jej dystrybucjê. Wyj±tki do tych regu³ mog± byæ
  udzielone pod pewnymi warunkami; proszê skontaktowaæ siê z
  koordynatorem Linux HOWTO pod adresem podanym poni¿ej.

  W skrócie, chcieliby¶my promowaæ rozprzestrzenianie siê tych
  informacji tak wieloma kana³ami jak to mo¿liwe. Pragnêliby¶my jednak¿e
  zachowaæ prawa autorskie do dokumentów HOWTO, i byæ powiadamianymi o
  ka¿dych planach ich redystrybucji.

  Je¶li masz pytania, skontaktuj siê proszê z Gregiem Hankinsem,
  koordynatorem Linux HOWTO, pod adresem gregh@sunsite.unc.edu.  Mo¿esz
  u¿yæ tego adresu z programem finger by zdobyæ numer telefonu i inne
  dodatkowe informacje dotycz±ce kontaktu.
  Unix jest zastrze¿onym znakiem przemys³owym X/Open Ltd.; MS-DOS,
  Windows, Windows NT i Windows 95 s± zastrze¿onymi znakami Microsoft
  Corp.; System X Windows jest znakiem zastrze¿onym Consortium X, Inc.
  Wszystkie inne znaki zastrze¿one nale¿± do ich odpowiednich
  posiadaczy.

  22..  22.. ZZnnaakkii ii zzeessttaawwyy zznnaakkóóww

  A¿eby zrozumieæ i wy¶wietlaæ znaki ró¿nych jêzyków, system i programy
  musz± byæ zdolne odró¿niaæ je od innych znaków. To jest, ka¿dy
  pojedynczy znak musi mieæ odrêbn± reprezentacjê wewn±trz systemu
  operacyjnego, b±d¼ konkretnego pakietu programów. Taka kolekcja
  wszystkich odrêbnych znaków które jaki¶ system jest w stanie
  reprezentowaæ w danym momencie nazywa siê zestawem znaków.

  W czasie tworzenia najwiêkszych systemów operacyjnych nikt nie dba³ o
  to aby programy by³y wielojêzyczne. Dlatego te¿ najpopularniejszym
  zestawem znaków by³ (i ci±gle jest) ASCII (American Standard Code for
  Information Interchange).

  Standardowy ASCII (aka siedmiobitowy ASCII) zawiera 128 odrêbnych
  kodów.  Niektóre z nich ASCII definiuje jako faktyczne drukowalne
  znaki, a niektóre s± tak zwanymi znakami kontrolnymi, które posiada³y
  specjalne znaczenia w starszych protoko³ach komunikacyjnych. Ka¿dy
  element zestawu identyfikuje kod bêd±cy liczb± ca³kowit± (0-127).
  Podzbiór znaków drukowalnych przedstawia te które znale¼æ mo¿na na
  klawiaturze maszyny do pisania, z niewielkimi dodatkami. Ka¿dy znak
  zajmuje siedem najmniej znacz±cych bitów bajtu, podczas gdy
  najbardziej znacz±cy u¿ywany by³ dla celów kontrolnych (np. kontroli
  transmisji w starszych pakietach komunikacyjnych).

  Koncepcjê ASCII siedmiobitowego rozszerzy³ ASCII o¶miobitowy (aka
  rozszerzony ASCII). W tym zestawie zakres kodów znaków to 0-255. Dolna
  po³owa (0-127) to czysty ASCII, podczas gdy górna zawiera 127
  dodatkowych znaków. Poniewa¿ zestaw ten jest wstecznie kompatybilny z
  ASCII (znak ci±gle zajmuje osiem bitów, kody odpowiadaj± staremu
  ASCII), zyska³ on sobie szerok± popularno¶æ.

  ASCII o¶miobitowe nie definiuje zawarto¶ci górnej po³ówki zestawu.
  Dlatego ISO powziê³o zadanie ustalenia rodziny standardów znanych jako
  rodzina ISO-8859-X. Jest to zbiór kodowañ o¶miobitowych, w których
  ni¿sza po³owa ka¿dego kodowania (0-127) odpowiada ASCII, a wy¿sza
  definiuje znaki dla ró¿nych jêzyków. Zdefiniowano na przyk³ad
  nastêpuj±ce kodowania:

  ·  8859-1 - Europa Zachodnia, Ameryka £aciñska (znany te¿ jako Latin
     1)

  ·  8859-2 - Europa ¦rodkowa i Wschodnia

  ·  8859-5 - cyrylica

  ·  8859-8 - hebrajski

  W Latin 1 górna po³owa tabeli definiuje ró¿ne znaki które nie s±
  czê¶ci± alfabetu angielskiego, ale znajduj± siê w ró¿nych jêzykach
  zachodnioeuropejskich (umlauty niemieckie, akcenty francuskie).

  Programy które nie zak³adaj± nic co do ósmego bitu danych ASCII zwane
  s± o¶miobitowo czystymi. Niektóre starsze programy, napisane z my¶l± o
  ASCII 7-bitowym, nie s± czyste o¶miobitowe i mog± dzia³aæ niepoprawnie
  z danymi o¶miobitowymi. Wiêkszo¶æ jednak pakietów domy¶lnie radzi
  sobie z o¶miobitowym ASCII, albo wymaga bardzo prostego ustawienia.
  UWAGA: zanim wy¶lesz pytanie "Wszystko ustawi³em poprawnie, a nie mogê
  wprowadzaæ/ogl±daæ znaków cyrylicowych!", zajrzyj do sekcji 8 co do
  uwag o programie którego u¿ywasz.

  Poniewa¿ na wiêkszo¶ci systemów ASCII zajmuje osiem bitów, nie ma ju¿
  mo¿liwo¶æ aby ci±gle je rozszerzaæ. Sposobem na zaimplementowanie
  nowych symboli w kodowaniach opartych na ASCII jest stworzenie innej
  implementacji rozszerzonego ASCII. W taki w³a¶nie sposób
  zaimplementowane zosta³o kodowanie cyrylicy w ASCII.

  Wspomnieli¶my ju¿ o standardzie ISO-8859-5 jako okre¶laj±cym kodowanie
  cyrylicy. Lecz jak to czêsto bywa ze standardami, stworzono go nie
  bior±c pod uwagê istniej±cej praktyki w by³ym ZSRR. Jedyn± wiêc rzecz±
  jak± ten standard osi±gn±³ by³o spotêgowanie zamieszania. Nie
  powiedzia³bym ¿e gdzie¶ siê znacz±co u¿ywa ISO-8859-5.

  Innymi standardami kodowania cyrylicy s± tak zwane kodowanie Alt i
  strona kodowa 1251 Microsoftu. Ta pierwsza stworzona zosta³a (przez
  kogo?)  do¶æ dawno temu na potrzeby MS-DOS. W tamtych czasach nie by³o
  jeszcze tego ca³ego szumu o internetowaniu, intencj± wiêc by³o
  uczynienie jej jak najbardziej kompatybilnej ze standardem IBM.
  Dlatego kodowanie Alt jest w rzeczywisto¶ci stron± kodow± IBM, gdzie
  wszystkie specjalne znaki europejskie w górnej po³ówce zast±piono
  cyrylicznymi, z wy³±czeniem pseudografiki. Nie rujnowa³o to ³atwego
  tworzenia okienek i dawa³o tak¿e znaki cyrylicowe. Standard Alt ci±gle
  ¿yje i jest nies³ychanie popularny w ¶wiecie MS-DOSa.

  Strona kodowa 1251 to po prostu próba Microsoftu pokazania nowego
  standardu dla kodowania cyrylicy w Windows. Na ile wiem, nie jest ona
  kompatybilna z czymkolwiek (niezbyt dziwne, co?)

  I w koñcu istnieje KOI-8. Jest ono równie¿ stare, ale zaprojektowano
  je m±drze i dzisiaj za³o¿enia tego projektu wygl±daj± naprawdê
  u¿ytecznie.

  I znów, jest ono kompatybilne z ASCII, a znaki cyrylicy umieszczone s±
  w górnej po³ówce. Lecz g³ównym za³o¿eniem projektowania KOI-8 jest to
  ¿e pozycje znaków cyrylicy musz± odpowiadaæ znakom angielskim o
  zbli¿onej wymowie. Konkretnie, je¶li ustawimy ósmy bit w angielskim
  'a', dostaniemy mo¿emy uci±æ ósmy bit z ka¿dego znaku i dalej mieæ
  czytelny tekst. Bardzo to dzisiaj wa¿ne, poniewa¿ w Internecie jest
  wiele wêz³ów pocztowych które po prostu po cichu obcinaj± ósmy bit,
  pewne ¿e wszyscy na ca³ej Ziemi mówi± po angielsku.

  Nic dziwnego ¿e KOI-8 szybko sta³ siê de facto standardem dla cyrylicy
  w Internecie. Andriej A. Czernow poczyni³ ogromne nak³ady pracy aby
  ustaliæ w tym obszarze standard. Jest on autorem RFC 1489
  ("Registration of a Cyrillic character set").

  Te dwa standardy Alt i KOI-8 ró¿ni± siê tylko pozycjami znaków
  cyrylicowych w tabeli (to jest kodami znaków cyrylicowych)/

  G³ówn± ró¿nic± jest to ¿e kodowanie Alt u¿ywane jest tylko przez
  u¿ytkowników MS-DOS, podczas gdy KOI-8 u¿ywane jest w Unixie, a tak¿e
  w MS-DOSie (chocia¿ w tym drugim jest znacznie mniej popularne).
  Poniewa¿ robimy to co trzeba (to znaczy pracujemy w systemie Unixowym)
  skupimy siê g³ównie na KOI-8.

  Co do standardu ISO, jest on bardziej popularny jako standard
  cyrylicy.  w Europie i USA. W Rosji zdecydowanie przoduje KOI-8.

  Istniej± i inne standardy, ró¿ne od ASCII i o wiele bardziej
  elastyczne.  Najbardziej znanym jest Unicode. Nie s± jednak one
  zaimplementowane tak dobrze jak te podstawowe w Unixie w ogólno¶ci i
  Linuxie w szczególno¶ci. Dlatego te¿ nie bêdê ich tu opisywa³.

  33..  33.. UUssttaawwiiaanniiee ttrryybbuu tteekkssttoowweeggoo

  Zasadniczo tryb tekstowy jest najprostsz± metod± pokazywania i
  wprowadzania znaków cyrylicy. Istnieje jednak jedna zasadnicza
  komplikacja: fonty w trybie tekstowym i operacje na uk³adzie
  klawiatury zale¿± od implementacji sterownika terminala. Nie ma wiêc
  przeno¶nej metody dla osi±gniêcia tego celu miêdzy ró¿nymi systemami.

  Za chwilê opiszê sposób radzenia sobie ze sterownikiem konsoli Linuxa.
  Tak wiêc je¶li masz inny system, nie spodziewaj siê ¿e bêdzie to
  dzia³aæ u ciebie. Zajrzyj raczej do dokumentacji swojego sterownika
  terminala.  Po¶lij mi jednak¿e jakiekolwiek informacje jakie
  znajdziesz, tak aby móg³ w³±czyæ je do przysz³ych wersji tego
  dokumentu.

  33..11..  44..11.. KKoonnssoollaa

  Sterownik konsoli Linuxa jest do¶æ elastycznym kawa³kiem software'u.
  Potrafi on zmieniaæ fonty oraz uk³ady klawiatury. Aby to osi±gn±æ,
  bêdziesz potrzebowa³ pakietu kbd. RedHat i Slackware instaluj± kbd
  jako czê¶æ systemu.

  Pakiet kbd zawiera narzêdzia do kontrolowania klawiatury oraz znaczny
  zbiór fontów i uk³adów klawiatury.

  By ustawiæ cyrylicê, trzeba wykonaæ dwie rzeczy:

  1. Ustawienie czcionki ekranowej. Wykonywane jest to za pomoc±
     programu setfont. Pliki z czcionkami umieszczone s± w
     /usr/lib/kbd/consolefonts.

     UWAGA: Nigdy nie uruchamiaj programu setfont pod X, poniewa¿
     zawiesi on twój system. Dzieje siê tak poniewa¿ dzia³a on z
     odwo³aniami niskiego poziomu do karty graficznej, których nie lubi
     X.

  2. Za³adowaæ odpowiedni uk³ad klawiatury programem loadkeys.

  UWAGA: W RedHat 3.0.3 /usr/bin/loadkeys ma zbyt zawê¿one prawa
  dostêpu, konkretnie 700 (rwx------). Nie ma powodu aby tak by³o,
  poniewa¿ ka¿dy mo¿e skompilowaæ swoj± w³asn± kopiê i uruchomiæ j±
  (odpowiednie odwo³ania do systemu nie s± zarezerwowane tylko dla
  administratora). Popro¶ wiêc swojego sysadmina aby ustawi³ dlañ
  bardziej sensowne prawa dostêpu (na przyk³ad 755).

  Oto wyci±g z mojego skryptu cyrload, który ustawia tryb cyrylicy dla
  konsoli linuxowej.

         if [ notset.$DISPLAY != notset. ]; then
             echo "`basename $0`:  nie dzia³a pod 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"              # magiczna sekwencja
         echo "U¿yj prawego Ctrl aby zmieniæ tryb"

  Pozwól mi to nieco wyja¶niæ. £adujesz odpowiednie mapowanie
  klawiatury.  Nastêpnie ³adujesz font odpowiadaj±cy zestawowi znaków
  Alt. Pó¼niej, aby móc poprawnie wy¶wietlaæ tekst w KOI-8, ³adujesz
  tablicê przekodowywania ekranowego. Dokonuje ona translacji niektórych
  znaków z górnej po³ówki kodowania na kodowanie Alt. Kluczowe znaczenie
  ma s³owo 'niektóre' - nie wszystkie znaki podlegaj± translacji,
  dlatego te¿ niektóre z nich, jak pseudograficzne znaki IBM, trafiaj±
  na ekran niezmodyfikowane i wy¶wietlaj± siê poprawnie, poniewa¿ s± one
  kompatybilne z kodowaniem Alt, w przeciwieñstwie do KOI-8. Aby siê
  upewniæ, uruchom mc i udawaj ¿e jeste¶ znów w MS-DOS 3.3...

  W koñcu, owa magiczna sekwencja jest wa¿na, ale nie mam ¿adnego
  pojêcia co takiego robi resetuje konsolê i mapy odwzorowañ; patrz
  Keyboard-HOWTO - przyp. GSN. Po¿yczy³em/podkrad³em j± z German-HOWTO
  jeszcze w 1994, kiedy by³o no chyba jedynym HOWTO zorientowanym na
  jêzyki narodowe. Je¶li masz jaki¶ pomys³ co do tej magicznej
  sekwencji, powiadomij mnie, proszê.

  Dla tych purystów którzy nie chc± próbowaæ kodowania Alt do³±czam
  jeszcze jedn± wersjê powy¿szego skryptu, u¿ywaj±c± rdzennych fontów
  KOI-8.

         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 "U¿yj prawego Ctrl aby zmieniæ tryb"

  Nie spodziewaj siê jednak ³adnych ramek w swoich okienkowych
  aplikacjach tekstowych.

  Chcesz to pewnie teraz wypróbowaæ. Ustaw bash lub tcsh jak trzeba,
  uruchom je ponownie, potem naci¶nij prawy klawisz Ctrl i upewnij siê
  ¿e otrzymujesz prawid³owe znaki cyrylicy. Klawisz 'q' musi dawaæ
  rosyjskie 'krótkie i', w generowaæ 'c' itd.

  Je¶li co¶ pokrêci³e¶, najlepsz± rzecz± jest przywrócenie ustawieñ
  oryginalnych (tj. amerykañskich). Wykonaj nastêpuj±ce komendy:

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

  UWAGA: niestety sterownik konsoli nie jest w stanie zachowaæ swojego
  statusu (a przynajmniej nie w prosty sposób) podczas uruchamiania X
  Windows. Dlatego, kiedy wyjdziesz z X (albo prze³±czysz zeñ na
  konsolê), bêdziesz musia³ ponownie za³adowaæ rosyjski font konsolowy.

  33..22..  KKoonnssoollaa FFrreeeeBBSSDD

  Nie u¿ywam FreeBSD, tak wiêc nie mog³em przetestowaæ poni¿szej
  informacji.  Trzeba zacz±æ od tego ¿e wszystkie dane w tej sekcji
  nale¿y traktowaæ jako wska¼niki. Strona domowa projektu FreeBSD mo¿e
  mieæ jakie¶ informacje na ten temat. Innym dobrym ¼ród³em jest grupa
  newsowa relcom.fido.ru.unix.  Sprawd¼ tak¿e zasoby wyliczone w sekcji
  11.

  W ka¿dym razie, oto co Ilja K. Orechow sugeruje zrobiæ aby konsola
  FreeBSD mówi³a po rosyjsku:

  1. dodaj w /etc/sysconfig:

            keymap=ru.koi8-r
            keyrate=fast
            # UWAGA: ^[ poni¿ej to pojedynczy znak kontrolny [ESC]
            keychange="61 ^[[K"
            cursor=destructive
            scrnmap=koi8-r2cp866
            font8x16=cp866b-8x16
            font8x14=cp866-8x14
            font8x8=cp866-8x8

  2. w /etc/csh.login:

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

  33..33..  SSyysstteemm XX WWiinnddooww

  Podobnie jak tryb konsoli, ¶rodowisko X równie¿ wymaga nieco
  konfiguracji.  Zawiera siê w niej ustawienie trybu wprowadzania i
  Xowych czcionek.  Oba aspekty omówione s± poni¿ej.

  33..33..11..  XXoowwee cczzcciioonnkkii

  Po pierwsze zdobyæ musisz kolekcjê czcionek posiadaj±cych znaki
  cyrylicy w odpowiednich miejscach.

  Je¶li u¿ywasz najnowszej dystrybucji X (lub XFree86), istnieje szansa
  ¿e masz ju¿ takie czcionki. W koñcu 1995 X Windows System w³±czy³
  zestaw czcionek cyrylicowych, stworzonych przez Cronyxa. Zapytaj
  swojego administratora systemu, albo je¶li to ty nim jeste¶, sprawd¼
  swój system, to jest:

  1. Uruchom xlsfonts | grep koi8. Je¶li wyliczono jakie¶ czcionki, twój
     X-serwer ju¿ o nich wie.

  2. W przeciwnym razie wykonaj

       find /usr -name crox\*.pcf\*

  aby znale¼æ miejsce czcionek cyrylicowych na serwerze. Bêdziesz musia³
  w³±czyæ te czcionki dla X-serwera, jak wyja¶niam poni¿ej.

  Je¶li nie znalaz³e¶ takich fontów zainstalowanych, bêdziesz musia³ to
  sam zrobiæ.

  Istnieje pewna rozbie¿no¶æ co do czcionek. XFree86 twierdzi ¿e
  kolekcjê czcionek rosyjskich zamieszczonych w dystrybucji stworzy³
  Cronyx. Niemniej na sieci znale¼æ mo¿na inne czcionki cyrylicowe
  Cronyxa (np. na ftp.klae.su), znane jako pakiet xrus (nie myl go z
  programem xrus, który u¿ywany jest do ustawienia uk³adu klawiatury
  cyrylicy).  Na szczê¶cie ten drugi zosta³ ostatnio przemianowany na
  xruskb.  xrus ma mniej czcionek ni¿ kolekcja w XFree86 (38 wobec 68),
  ale te drugie czcionki nie chcia³y dzia³aæ z moim ustawieniem Netscape
  - dawa³y mi jak±¶ strasznie du¿± czcionkê w pasku menu. Pakiet xrus
  nie stwarza³ tego problemu.

  Sugerowa³bym ¶ci±gniêcie i wypróbowanie obydwu. Wybierz ten który
  bardziej ci siê podoba. Mam tak¿e zamiar wkrótce stworzyæ pakiety RPM
  dla obu kolekcji i pod³adowaæ je do ftp.redhat.com oraz mojego FTP.

  Istniej± tak¿e starsze rzeczy, na przyk³ad pakiet VakuFonts, stworzony
  przez Sergieja Wakulenko (), który tworzy³ podstawê dla tego w
  dystrubucji X. Istniej± te¿ inne. Wa¿n± rzecz± jest to ¿e nazwy
  czcionek w starszych kolekcjach nie ca³kiem ¶ci¶le stosowa³y siê do
  standardów. Pó¼niejsze s± w zasadzie w porz±dku, ale czasami wywo³aæ
  mog± ró¿ne dziwne b³êdy. Mia³em na przyk³ad niemi³e do¶wiadczenia z
  Maple V dla Linuxa, który wyk³ada³ siê tajemniczo z pakietem
  VakuFonts, ale dzia³a³ bez zarzutu ze "standardowymi".

  Zacznijmy wiêc od czcionek:

  1. ¦ci±gnij odpowiedni± kolekcjê czcionek. Pakiet dla XFree86 mo¿na
     znale¼æ w ka¿dym FTP zawieraj±cym dystrybucjê Xa, na przyk³ad
     mo¿esz j± ¶ci±gn±æ bezpo¶rednio z FTP XFree86. Pakiet xrus znale¼æ
     mo¿na na ftp.klae.su.

  2. Teraz kiedy masz czcionki, stwórz dla nich jaki¶ katalog. Zwykle
     z³ym pomys³em jest wsadzanie nowych czcionek do ju¿ istniej±cego
     katalogu. Umie¶æ je wiêc w, powiedzmy, /usr/lib/X11/fonts/cyrillic
     dla instalacji ca³osystemowej, albo po prostu utwórz katalog
     prywatny dla u¿ytku osobistego.

  3. Je¶li nowe czcionki s± w formacie BDF (pliki *.bdf), musisz je
     skompilowaæ. Wykonaj dla ka¿dej czcionki

            bdftopcf -o name.pcf name.bdf

  Je¶li twój serwer obs³uguje czcionki skompresowane, skompresuj je
  u¿ywaj±c programu compress

         compress name.pcf

  Je¶li chcesz wsadziæ nowe czcionki do ju¿ istniej±cego katalogu,
  bêdziesz musia³ po³±czyæ stary i nowy font.alias. w przypadku gdy oba
  istniej±, np.

  cat font.alias.new >> font.alias

  Teraz, ¿eby wszystko ustawiæ, powiniene¶ wykonaæ trzy rzeczy:

  4. Ka¿da katalog z czcionkami w X musi zawieraæ listê znajduj±cych siê
     w nim czcionek. Lista ta przechowywana jest w fonts.dir. Nie musisz
     jej tworzyæ rêcznie. Zamiast tego, wykonaj

     cd <katalog_z_nowymi_czcionkami>
     mkfontdir

  5. Musisz teraz powiadomiæ X-serwer o tym katalogu z czcionkami. Masz
     tu kilka opcji:

  ·  Instalacja dla ca³ego systemu XFree86. Je¶li uruchamiasz t± wersjê
     X, do³±cz nowy katalog do listy katalogów w XF86Config. Aby znale¼æ
     po³o¿enie tego pliku spójrz na wyj¶cie startx. Patrz te¿
     XF86Config{4,5} po szczegó³y.

  ·  Instalacja dla ca³ego systemu poprzez xinit. Dodaj katalog startowy
     do pliku startowego xinit. Patrz xinit(1x) i nastêpny punkt po
     szczegó³y.

  ·  Instalacja osobista. Masz specjalny plik startowy dla X -
     ~/.xinitrc (albo ~/.Xclients, albo ~/.xsession dla u¿ytkowników
     RedHata). Dodaj do niego nastêpuj±ce komedy:

       xset +fp katalog_z_czcionkami
       xset fp rehash

  ·  Zrestartuj teraz X. Je¶li wykona³e¶ wszystko prawid³owo, testy na
     pocz±tku sekcji powiod± siê. Pobaw siê tak¿e xfontsel(1x), aby siê
     upewniæ ¿e mo¿esz wybieraæ czcionki cyrylicowe.

  Aby klienci X u¿ywali czcionek cyrylicowych, musisz ustawiæ
  odpowiednie X-zasoby. Na przyk³ad, ustawiam czcionkê rosyjsk± jako
  domy¶ln± w swoim /.Xdefaults:

       *font           6x13

  Poniewa¿ moje czcionki cyrylicowe s± pierwsze na li¶cie ¶cie¿ek do
  czcionek (patrz rezultaty xinit, wybrana zostanie pierwsza czcionka o
  aliasie 6x13)

  To prostszy przyk³ad. Je¶li chcesz ustawiæ odpowiedni± czê¶æ X-klienta
  by u¿ywa³a czcionek cyrylicowych, musisz znale¼æ nazwê zasobu (np.  za
  pomoc± editres(1x) i ustaliæ go albo w bazie danych zasobów, albo w
  linii komend. Oto kilka przyk³adów:

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

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

  33..33..22..  TT³³uummaacczzeenniiee ddaannyycchh wwpprroowwaaddzzaannyycchh

  W najnowszych wersjach X (X11R61 i wy¿szych) istniej± dwie
  "standardowe" metody wprowadzania znaków: pierwotna, dzia³aj±ca z
  u¿yciem programu xmodmap, oraz nowa, zwana (Xkb) XKeyBoard. Pierwsze
  co powiniene¶ zrobiæ to wy³±czyæ metodê Xkb! Nie daj siê oczarowaæ jej
  mo¿liwo¶ciami ustawienia "cyrylicznej klawiatury". Wygl±da na to ¿e ta
  metoda u¿ywa klawsymów zdefiniowanych w keysymdef.h. Plik ten
  definiuje klawsymy dla wielu jêzyków. Jednym problemem jest to ¿e te
  definicje nie maj± nic wspólnego z rozszerzonym zestawem znaków ASCII
  - jedynym na którym potrafi wy³±cznie operowaæ wiêkszo¶æ programów!
  Ledwie wiem o jaki¶ programach które zdolne s± przetworzyæ klawsymy z
  keysymdef.h ró¿ne od o¶miobitowego ASCII. Jednakowo¿ naszym celem jest
  sprawienie ¿eby obs³uga KOI-8 zadzia³a³a.

  Aby wy³±czyæ obs³ugê Xkb, przegl±dnij sekcjê Keyboard w swoim pliku
  XF86Config i wykomentuj wszystkie linie zaczynaj±ce siê od Xkb
  (wielko¶æ liter bez znaczenia). Zamiast nich, wstaw nastêpuj±c± liniê:

         XkbDisable

  Program xmodmap pozwala na dopasowanie kodów które wysy³aj± ró¿ne
  znaki i ich kombinacje. Ustawia on to opieraj±c siê na pliku
  zawieraj±cym tabelê t³umaczeñ.

  Je¶li nie chcesz zajmowaæ siê wszystkimi tymi trikami i wolisz
  rozwi±zanie od rêki, b±d¼ to ¶ci±gnij odpowiedni± tablicê xmodmapow±,
  dostêpn± na wielu ftpach zajmuj±cych siê cyrylic±, na przyk³ad
  ftp.kiae.su albo ftp.funet.fi. Sam sporz±dzi³em równie¿ mapê opisan±
  poni¿ej, dostêpn± przez mój ftp.

  Bardziej odpowiedni± alternatyw± jest instalacja pakietu xruskb, który
  pozwala ci skonfigurowaæ wiêkszo¶æ parametrów translacji wej¶ciowej
  bez potrzeby obeznania siê z xmodmap.

  Poni¿ej uproszczony opis przystosowania wej¶cia. Je¶li chcesz jaki¶
  bardziej wyrafinowanych trików, zajrzyj do xmodmap(1) lub, jeszcze
  lepiej, poczekaj na nastêpn± wersjê g³ówn± X, która miejmy nadziejê
  zajmie siê bie¿±cymi problemami ze wprowadzaniem danych.

  W naszym przypadku, tablica t³umaczeñ powinna definiowaæ dwie rzeczy:

  ·  kody znaków wysy³ane przez klawisze alfanumeryczne, oraz

  ·  zasady prze³±czania siê miêdzy trybami

  33..33..22..11..  TTaabblliiccaa zznnaakkóóww

  Jest to w zasadzie sekwencja dyrektyw które przypisuj± pewne klawsymy
  okre¶lonym kodom klawiszy. Ogólna sk³adnia to:

  keycode kod = sym1 sym2 sym3 sym4

  gdzie kod to numeryczny kod okre¶lonego klawisza na klawiaturze
  (zajrzyj do tablicy standardowej dla twojego systemu. W moim przypadku
  znajduje siê ona w pliku /usr/lib/X11/etc/xmodmap.std). "Symy"
  definiuj± klawsymy wysy³ane przez ten klawisz w ró¿nych stanach. Sym1
  jest klawsymem wysy³anym w stanie normalnym, sym2 odpowiada klawiszowi
  z naci¶niêtym Shift (zwykle), Sym3 i sym4 definiuj± klawsymy wysy³ane
  przy aktywnym Mode_switch dla stanów normalnych i ze Shiftem
  odpowiednio (grupa 2, zgodnie z X Protocol Specification). W naszym
  przypadku aktywny Mode_switch odpowiada wprowadzaniu w trybie
  cyrylicy.

  Warto¶ciami powinny byæ albo kody szesnastkowe, albo sta³e symboliczne
  z /usr/include/X11/keysymdef.h (bez pocz±tkowego "XK_").

  Tak wiêc je¿eli chcieliby¶my aby klawisz odpowiadaj±cy ³aciñskiemu "a"
  wypisywa³ "a" rosyjskie w trybie alternatywnym, napisaliby¶my jak
  ni¿ej:

  keycode 38  =  a  A  0xC1 0xE1

  Czytelnik ciekaw byæ mo¿e dlaczego nie u¿y³em sta³ych Cyrillic_a oraz
  Cyrillic_A, odpowiednio. Odpowied¿ brzmi: nie dzia³aj± one dla mnie.
  Nie jestem zbyt obeznany z wnêtrzno¶ciami specyfikacji systemu X
  Windows, ale mam nastêpuj±ce wyt³umaczenie: symboliczne sta³e powy¿ej
  maj± warto¶ci 0x6C1 oraz 0x6E1 odpowiednio. Oznacza to ¿e w
  rzeczywi¶cie multijêzykowym ¶rodowisku mo¿naby u¿ywaæ ich bez ich
  nak³adania siê na inne zestawy znaków.  Jednak standard KOI-8 nie jest
  szczególnie przystosowany do takiego ¶rodowiska. Poniewa¿ wiêc chcemy
  pozostaæ kompatybilni z przesz³o¶ci±, naruszymy regu³y obs³ugi wielu
  jêzyków w systemie X Windows.

  Oto tabela dla najbardziej popularnej rosyjskiej klawiatury w uk³adzie
  JCUKEN (tabele te pochodz± od tych z pakietu VakuFonts).

    keysym  4             = 4               dollar          4       quotedbl
    keysym  5             = 5               percent         5       colon
    keysym  6             = 6               asciicircum     6       comma
    keysym  7             = 7               ampersand       7       period
    keysym  q             = q               Q               0xCA    0xEA
    keysym  w             = w               W               0xC3    0xE3
    keysym  e             = e               E               0xD5    0xF5
    keysym  r             = r               R               0xCB    0xEB
    keysym  t             = t               T               0xC5    0xE5
    keysym  y             = y               Y               0xCE    0xEE
    keysym  u             = u               U               0xC7    0xE7
    keysym  i             = i               I               0xDB    0xFB
    keysym  o             = o               O               0xDD    0xFD
    keysym  p             = p               P               0xDA    0xFA
    keysym  bracketleft   = bracketleft     braceleft       0xC8    0xE8
    keysym  bracketright  = bracketright    braceright      0xDF    0xFF
    keysym  a             = a               A               0xC6    0xE6
    keysym  s             = s               S               0xD9    0xF9
    keysym  d             = d               D               0xD7    0xF7
    keysym  f             = f               F               0xC1    0xE1
    keysym  g             = g               G               0xD0    0xF0
    keysym  h             = h               H               0xD2    0xF2
    keysym  j             = j               J               0xCF    0xEF
    keysym  k             = k               K               0xCC    0xEC
    keysym  l             = l               L               0xC4    0xE4
    keysym  semicolon     = semicolon       colon           0xD6    0xF6
    keysym  apostrophe    = apostrophe      quotedbl        0xDC    0xFC
    keysym  grave         = grave           asciitilde      0xA3    0xB3
    keysym  z             = z               Z               0xD1    0xF1
    keysym  x             = x               X               0xDE    0xFE
    keysym  c             = c               C               0xD3    0xF3
    keysym  v             = v               V               0xCD    0xED
    keysym  b             = b               B               0xC9    0xE9
    keysym  n             = n               N               0xD4    0xF4
    keysym  m             = m               M               0xD8    0xF8
    keysym  comma         = comma           less            0xC2    0xE2
    keysym  period        = period          greater         0xC0    0xE0

  Dla u¿ywaj±cych rosyjskiego uk³adu JAWERTY do³±czy³em nastêpuj±c±
  tabelê:

    keysym  q             = q               Q               0xD1    0xF1
    keysym  w             = w               W               0xD7    0xF7
    keysym  e             = e               E               0xC5    0xE5
    keysym  r             = r               R               0xD2    0xF2
    keysym  t             = t               T               0xD4    0xF4
    keysym  y             = y               Y               0xD9    0xF9
    keysym  u             = u               U               0xD5    0xF5
    keysym  i             = i               I               0xC9    0xE9
    keysym  o             = o               O               0xCF    0xEF
    keysym  p             = p               P               0xD0    0xF0
    keysym  bracketleft   = bracketleft     braceleft       0xDB    0xFB
    keysym  bracketright  = bracketright    braceright      0xDD    0xFD
    keysym  a             = a               A               0xC1    0xE1
    keysym  s             = s               S               0xD3    0xF3
    keysym  d             = d               D               0xC4    0xE4
    keysym  f             = f               F               0xC6    0xE6
    keysym  g             = g               G               0xC7    0xE7
    keysym  h             = h               H               0xC8    0xE8
    keysym  j             = j               J               0xCA    0xEA
    keysym  k             = k               K               0xCB    0xEB
    keysym  l             = l               L               0xCC    0xEC
    keysym  z             = z               Z               0xDA    0xFA
    keysym  x             = x               X               0xD8    0xF8
    keysym  c             = c               C               0xC3    0xE3
    keysym  v             = v               V               0xD6    0xF6
    keysym  b             = b               B               0xC2    0xE2
    keysym  n             = n               N               0xCE    0xEE
    keysym  m             = m               M               0xCD    0xED
    keysym  backslash     = backslash       bar             0xDC    0xFC
    keysym  grave         = grave           asciitilde      0xC0    0xE0
    keysym  equal         = equal           plus            0xDE    0xFE
    keysym  3             = 3               numbersign      3       0xDF
    keysym  4             = 4               dollar          4       0xFF

  33..33..22..22..  ZZaassaaddyy pprrzzee³³±±cczzaanniiaa ttrryybbóóww

  Jest to zasadniczo czê¶æ konfiguracji Xowej cyrylicy wymagaj±ca
  najwiêcej wiedzy. Zdefiniowaæ powiniene¶ warunki w których tryb
  bie¿±cy prze³±czany jest miêdzy trybem zwyk³ym i cyrylicy. Dziêki
  m±dremu zaprojektowaniu translacji wej¶cia w X, jest ona nieprzeno¶na,
  nieelastyczna, niekompletna i ogólnie mówi±c do kitu. Nic dziwnego ¿e
  ludzie przenosz± siê na MS Windows.

  Obecnie du¿o siê dzieje w rozwijaniu XFree86 w ogólno¶ci i modelu
  wej¶cia w X w szczególno¶ci. Rezultat jest taki ¿e twoja konfiguracja
  mo¿e dzia³aæ z jedn± wersj± XFree86 i nie dzia³aæ z inn±. Co gorsza,
  czasami rzeczy ró¿ni± siê miêdzy ró¿nymi serwerami w tej samej
  dystrybucji.

  Najpierw opiszê moje ustawienia, które w obecnej chwili dzia³aj± dla
  mnie.  Pracujê w XFree86 3.3, serwer SVGA. W moim pliku XF86Config (w
  dystrybucji RedHata umieszczony jest on w /etc/X11, w sekcji
  "Keyboard" mam nastêpuj±ce dyrektywy:

  Istniej± dwa sposoby osi±gniêcia tego w Linuxie. Jedna jest
  specyficzna dla XFree86, podczas gdy druga jest bardziej ogólna (nie
  za bardzo mo¿e, jak i poka¿ê ni¿ej).

       LeftAlt         Meta
       RightAlt        ModeShift
       ScrollLock      ModeLock
       RightCtl        Control

  UWAGA: Metoda ustawiania regu³ prze³±czania trybów poprzez plik
  XF86Config jest specyficzna dla XFree86. Nie bêdzie ona dzia³aæ w
  innych wersjach X.

  Teraz ³adujê tabelê opisan± w poprzedniej sekcji i zachowan± w jakim¶
  pliku u¿ywaj±c narzêdzia xmodmap(1x):

         xmodmap  <plik_z_tabel±>

  Teraz mam mo¿liwo¶æ zaznaczenia trybu wprowadzania cyrylicy u¿ywaj±c
  prawego klawisza Alt oraz prze³±czenia na cyrylicê i z powrotem
  u¿ywaj±c ScrollLock. Zdziwisz siê je¶li zobaczysz ¿e ani CapsLock ani
  klawisze Control nie dzia³aj± w trybie wprowadzania cyrylicy. Có¿,
  powiem to raz jeszcze: model wej¶cia X jest do kitu!

  Resztê tej sekcji zajmuje zwiêz³y opis zwyk³ej konfiguracji translacji
  wej¶cia w X. Dzia³a³a ona dla starszych wydañ XFree86, ale teraz
  wykazuje rozmaite problemy. Pozostawi³em j± tutaj, tak aby co bardziej
  ciekawi z was mogli spróbowaæ czê¶ci tego i zu¿ytkowaæ to.

  Powiniene¶ zrobiæ co nastêpuje:

  ·  przypisaæ klawsym Mode_switch jakiemu¶ klawiszowi, oraz

  ·  dodaæ Mode_switch do jakie¶ nieu¿ywanego uk³adu

  Teraz klawisz do którego przypisany jest ModeShift bêdzie dzia³a³ jako
  prze³±cznik trybów. Oznacza to ¿e gdy jest przyci¶niêty, klawiatura
  znajduje siê w trybie alternatywnym.

  Co wiêcej, je¶li dodasz klawsym Mode_lock do tego uk³adu, bêdzie on
  ustawia³ na sta³e tryb alternatywny.

  Uwaga: s± jednak pewne problemy. Siergiej Wakulenko (vax@cronyx.com)
  wskaza³ ¿e ró¿ne implementacje X-serwerów maj± ró¿ne zasady
  przypisywania prze³±czników trybu (np. niektóre serwery ograniczaj±
  zestaw klawiszy które mog± dzia³aæ w trybie prze³±cznika do,
  powiedzmy, CapsLock, NumLock oraz ScrollLock). Na szczê¶cie ma siê to
  zmieniæ w nastêpnym wydaniu systemu X Windows. Po szczegó³y patrz
  specyfikacja X Protocol.

  Niestety nie uda³o mi siê zmusiæ CapsLock aby mia³ t± sam±
  funkcjonalno¶æ w trybie alternatywnym, konkretnie aby na sta³e w³±cza³
  du¿e litery.  Wydaje mi siê ¿e nie mo¿na tego dokonaæ z powodu
  idiotycznego zaprojektowania translacji wej¶cia w X. Je¶li siê mylê,
  proszê mnie poprawiæ.

  Zobaczmy przyk³ad. Za³ó¿my ¿e chce siê u¿ywaæ prawego Alt jako
  prze³±cznika trybów i ScrollLock do ustawiania trybu na sta³e.
  Najpierw powinno siê sprawdziæ domy¶lny uk³ad modyfikatorów.  Osi±ga
  siê to uruchamiaj±c xmodmap bez argumentów.

              $ xmodmap

              xmodmap:  up to 2 keys per modifier, (keycodes in parentheses):

              shift       Shift_L (0x32),  Shift_R (0x3e)
              lock        Caps_Lock (0x42)
              control     Control_L (0x25)
              mod1        Alt_L (0x40),  Alt_R (0x71)
              mod2        Num_Lock (0x4d)
              mod3
              mod4
              mod5

  Zgodnie z powy¿szym, plan ataku wygl±da jak nastêpuje:

  1. usun±æ klawisz Alt_R z klawsymu mod1

  2. przypisaæ klawsym Mode_switch klawiszowi Alt_R

  3. przypisaæ klawsym Scroll_Lock do kodu klawisza 78 (kodu
     rzeczywistego ScrollLock)

  4. dodaæ Mode_switch do nieu¿ywanego klawsymu mod3 i

  5. dodaæ klawsym Scroll_Lock do mod3

  Oto wiêc rozwi±zanie:

         remove mod1 = Alt_R
         keysym Alt_R = Mode_switch
         keycode 78 = Scroll_Lock
         add mod3 = Mode_switch
         add mod3 = Scroll_Lock

  Je¶li u¿yjesz tego drugiego rozwi±zania, mo¿esz po³±czyæ tabelê i
  dyrektywy dotycz±ce trybów w swoim pliku ~/.Xmodmap.

  Pliki takie dostarczane s± przewa¿nie razem z ró¿nymi pakietami do
  obs³ugi cyrylicy pod X. Dobrym przyk³adem s± tabele w doskona³ym
  pakiecie Siergieja Wakulenki, opisanym wy¿ej.

  Gdy ju¿ masz taki plik zawieraj±cy tabelê, powiniene¶ wykonaæ komendê:

  xmodmap filename

  Plik dla ca³ego systemu to /usr/lib/X11/xinit/xinitrc; osobisty to
  albo ~/.xinitrc, albo ~/.Xclients, albo ~/.xsession, zale¿nie od tego
  co masz zainstalowane.

  UWAGA: Je¶li xmodmap narzeka na twoj± tabelê, spróbuj za³adowaæ
  najpierw domy¶ln±. Tabela domy¶lna znajduje siê zwykle w
  /usr/lib/X11/etc/xmodmap.std.

  44..  OObbss³³uuggaa ccyyrryylliiccyy ww LLaaTTeeXXiiee

  W tej sekcji opiszê kilka sposobów nak³onienia TeXa i LaTeXa do
  sk³adania tekstu w cyrylicy.  Istnieje kilka sposobów, które ró¿ni±
  siê wyrafinowaniem instalacji i wygod± w obs³udze. Dla przyk³adu,
  jedn± z mo¿liwo¶ci jest zacz±æ bez ¿adnej wstêpnej instalacji i u¿yæ
  fontów cyrylicowych Washington AMSTeX. Z drugiej strony, mo¿esz
  zainstalowaæ pakiet LaTeX, który zapewnia wysoki stopieñ ustawieñ
  dotycz±cych cyrylicy.  Mam pewne do¶wiadczenia z dwoma pakietami.
  Pierwszy to pakiet cmcyralt autorstwa Wadima W. ¯ytnikowa () i
  Aleksandra Harina (), a ten drugi to pakiet LH autorstwa CyrTUG
  Cyrillic TeX Users Group ze stylami i dzieleniem wyrazów dla LaTeX2e
  autorstwa Sergieja O. Naoumowa ().  Opiszê obydwa.

  Zauwa¿ ¿e dostêpne s± dwie wersje LaTeXa : 2.09 jest wersj± starsz±,
  podczas gdy 2e jest nowszym wydaniem pre-3.0. Je¶li u¿ywasz LaTeXa
  2.09, przestaw siê szybko na 2e. Ten drugi pozostaje kompatybilny z
  tym pierwszym, ale ma o wiele wiêcej funkcji. Miejmy nadziejê ¿e
  wersja 3 zostanie wkrótce wypuszczona. Opiszê ustawienia dla LaTeXa
  2e.

  Uwaga: oba te pakiety wymagaj± aby tekst w cyrylicy sk³adany by³ z
  u¿yciem zestawu znaków Alt, nie KOI-8! Spowodowane jest to przyczynami
  historycznymi, poniewa¿ twórcy tych pakietów pracowali byli z EmTeXem
  - MS-DOSow± wersj± TeXa (nie wiedzieli jeszcze o Linuxie :-).
  Przestawienie ich na KOI-8 wymaga nieco wysi³ku i spodziewane jest
  niebawem. Na razie, u¿ywaj jakiego¶ narzêdzia do konwersji tekstu
  rosyjskiego z KOI-8 do Alt. Patrz sekcja "Narzêdzia u¿ytkownika".

  44..11..  UU¿¿yywwaanniiee WWaasshhiinnggttoonn CCyyrryylliiiicc

  Pakiet ten zosta³ stworzony przez American Mathematics Society w celu
  uzupe³nienia dokumentów o odno¶niki po rosyjsku. Dlatego te¿ autorzy
  nie byli zbyt uwa¿ni, a czcionki wygl±daj± raczej niezrêcznie. Pakiet
  ten okre¶la siê zwykle jako 'ca³kiem kiepski pakiet cyrylicy dla
  TeXa'.

  Niemniej jednak omówimy go, poniewa¿ jest on bardzo ³atwy w u¿yciu i
  nie wymaga ¿adnej konfiguracji - kolekcja ta dostarczana jest z
  wiêkszo¶ci± dystrybucji TeXa.

  Oczywi¶cie nie bêdziesz móg³ sobie pozwoliæ na taki luksus jak
  automatyczne przenoszenie wyrazów, ale jednak...

  1. Poprzed¼ swój dokument nastêpuj±cymi dyrektywami:

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

  2. Teraz aby napisaæ literê w cyrylicy, wprowadzasz

     \cyr

  i u¿ywasz odpowiedniej litery ³aciñskiej albo komendy TeXa. I tak ma³e
  litery rosyjskiego alfabetu wyra¿aj± nastêpuj±ce kody:

  a b v g d e {

  Jest bardzo niewygodnym przekonwertowaæ twoje teksty rosyjskie na
  takie kodowanie, lecz proces mo¿na zautomatyzowaæ. Program translit
  (sekcja 11) obs³uguje wynik w postaci TeXowej.

  44..22..  PPaakkiieett KKOOII--88 ddllaa LLaaTTeeXXaa

  Pojawi³ siê jaki¶ nowy pakiet teTeX-rus. Podobno obs³uguje on zestaw
  znaków KOI-8 i ma wszystkie podstawowe rzeczy wymagane dla TeXa i
  LaTeXa. Osobi¶cie jeszcze go nie próbowa³em, chocia¿ s³ysza³em o
  pomy¶lnym go u¿ywaniu.

  44..33..  UU¿¿yywwaanniiee ppaakkiieettuu ccmmccyyrraalltt ddllaa LLaaTTeeXXaa

  Pakiet cmcyralt znale¼æ mo¿na na ka¿dym z wêz³ów CTAN (Comprehensive
  TeX Archive Network), jak ftp.dante.de. Powiniene¶ zdobyæ dwie
  kolekcje: kolekcjê fontów z katalogu /fonts/cmcyralt oraz style i
  regu³y dzielenia wyrazów z katalogu
  /macros/latex/contrib/others/cmcyralt.

  Uwaga: upewnij siê ¿e masz zainstalowany pakiet Sauter, bowiem
  cmcyralt potrzebuje z niego niektórych fontów. Pakiet ten mo¿esz
  równie¿ zdobyæ z wêz³a CTAN.

  Powiniene¶ teraz zrobiæ co nastêpuje:

  1. Umie¶ciæ nowe czcionki w drzewie czcionek TeXa. W moim systemie
     (Slackware 2.2) stworzy³em podkatalog cmcyralt w
     /usr/lib/texmf/fonts/cm/. Utwórz w nim podkatalogi src, tfm i vf.
     Umie¶æ tam pliki .mf, .tfm oraz

  2. Umie¶æ pliki sterowników czcionek (*.fd) z archiwum stylów w
     odpowiednim miejscu (w moim przypadku by³ to
     /usr/lib/texmf/tex/latex/fd).

  3. Umie¶æ pliki stylów (*.sty) w odpowiednim katalogu stylów LaTeXa (w
     moim przypadku /usr/lib/texmf/tex/latex/sty).

  Teraz konfiguracja dzielenia wyrazów. Wymaga to przerobienia pliku
  bazowego LaTeXa.

  1. Plik hyphen.cfg zawiera dyrektywy dla dzielenia wyrazów w
     angielskim i rosyjskim. Wytnij to co tyczy siê rosyjskiego i umie¶æ
     to w pliku konfiguracji dzielenia wyrazów LaTeXa, lthyphen.ltx. W
     moim przypadku plik ten znajdowa³ siê w
     /usr/lib/texmf/tex/latex/latex-base.

  2. W tym samym katalogu umie¶æ plik rhyphen.tex. Potrzebny jest on do
     stworzenia nowego pliku bazowego. Pó¼niej mo¿esz go usun±æ.

  3. Wykonaj w tym katalogu make. Nie zapomnij stworzyæ odno¶nika z
     Makefile do Makefile.unx. Podczas wykonywania make sprawd¼
     komunikaty. Powinno siê pojawiæ:

     Loading hyphenation patterns for Russian

  Je¶li wszystko pójdzie poprawnie, otrzymasz w tym katalogu nowy
  latex.fmt. Wstaw go w odpowiednie miejsce, tam gdzie znajdowa³ siê
  poprzedni (np. /usr/lib/texmf/ini/). Nie zapomnij zachowaæ starego
  pliku!

  Oto¿ i to. Instalacja gotowa. Spróbuj przetworzyæ przyk³ady z archiwum
  stylów. Je¶li mo¿esz stworzyæ pliki postscriptowe bez ¿adnych
  problemów, wszystko jest w porz±dku. Teraz aby u¿ywaæ cyrylicy w
  LaTeXie, wstaw na pocz±tek swojego dokumentu poni¿sz± dyrektywê:

  \usepackage{cmcyralt}

  Po szczegó³y patrz plik README w archiwum stylów cmcyralt.

  Uwaga: je¶li masz problemy z przyk³adami, za³o¿ywszy ¿e instalowa³e¶
  prawid³owo, to prawdopodobnie twój system TeX nie zosta³ zainstalowany
  poprawnie. Na przyk³ad, przy mojej pierwszym te¶cie ka¿da próba
  stworzenia plików .pk dla czcionek rosyjskich nie udawa³a siê (etap
  MakeTeXPK). Dok³adne przyjrzenie siê plikom wykry³o pewien niejawny
  konflikt miêdzy konfiguracjami METAFONT localfont i ljfour. Kiedy¶
  by³o to dzia³a³o, ale rozpad³o siê po instalacji cmcyralt. Skontaktuj
  siê ze swoim lokalnym guru od TeXa - TeX jest bardzo (czasami za
  bardzo) z³o¿ony aby rekonfigurowaæ go bez wcze¶niejszej znajomo¶ci.

  44..44..  PPaakkiieett CCyyrrTTUUGG

  Pakiet CyrTUG uzyskaæ mo¿esz z archiwum SunSite
  (ftp://sunsite.unc.edu/pub/academic/russian-studies/Software
  <ftp://sunsite.unc.edu/pub/academic/russian-studies/Software>).  Zrzuæ
  stamt±d pliki CyrTUGfonts.tar.gz, CyrTUGmacro.tar.gz i hyphen.tar.Z.

  Proces instalacji nie ró¿ni siê od opisanego powy¿ej.

  55..  CCyyrryylliiccaa ww PPoossttSSccrriippttcciiee

  Eksperci powiadaj± ¿e PostScript jest ³atwy. Nie potrafiê os±dziæ -
  mam zbyt wiele rzeczy do nauczenia siê aby po¶wiêciæ trochê czasu na
  naukê PostScriptu. Spróbujê wiêc opisaæ moje smutne z nim
  do¶wiadczenia. Mile widzia³bym wsparcie od ka¿dego kto wie wiêcej na
  ten temat ode mnie (ok. 99% ludzko¶ci).

  Zasadniczo aby wydrukowaæ tekst z u¿yciem PostScriptu, musisz siê
  upewniæ co do nastêpuj±cych rzeczy:

  ·  Czcionka cyrylicowa jest za³adowana lub zawarta w dokumencie

  ·  W dokumencie zawarty jest tekst w cyrylicy

  ·  Tekst w cyrylicy u¿ywa odpowiednich kodów które odpowiadaj±
     wymaganiom czcionki

  ·  Wybrano odpowiedni± czcionkê do drukowania tekstu w cyrylicy

  Nie ma rozwi±zania na tyle ogólnego aby je poleciæ jako ¶rodek
  ostateczny, Spróbujê nakre¶liæ ró¿ne sposoby radzenia sobie z ró¿nymi
  problemami odno¶nie tematu.

  Jednym ze sposobów podej¶cia do konfiguracji cyrylicy jest u¿ycie
  Ghostscripta. Ghostscript (lub po prostu gs w nowomowie) to darmowy
  (no, quasi-darmowy) interpreter PostScriptu. Ma on wiele zalet,
  pomiêdzy nimi:

  ·  Mo¿liwo¶æ dzia³ania na ró¿nych platformach (Windows, ró¿ne Unixy)

  ·  Obs³uga szerokiego zakresu drukarek niepostscriptowych

  ·  Du¿y stopieñ konfigurowalno¶ci

  To co wa¿ne w naszym konkretnym przypadku to to ¿e gdy ju¿ raz
  skonfigurujemy Ghostscripta, mo¿emy za jego pomoc± dokonywaæ ca³o¶ci
  drukowania, eliminuj±c tym samym ekstra konfiguracjê dla innych
  urz±dzeñ postscriptowych (np. HP Laserjet IV).

  55..11..  DDooddaawwaanniiee cczzcciioonneekk ccyyrryylliiccoowwyycchh ddoo GGhhoossttssccrriippttaa

  Jest to wa¿ne, poniewa¿ zapewne nie bêdziesz chcia³ polegaæ na innych
  programach przy umieszczaniu w wynikowym postscripcie czcionek
  cyrylicowych.  Zamiast tego dodajesz je do gs. i po prostu zmuszasz
  programy aby generowa³y wyj¶cie w cyrylicy kompatybilne z czcionkami.

  Aby dodaæ do gs now± czcionkê (w formacie .pfa lub .pfb), musisz:

  1. Dodaæ j± do katalogu czcionek gs (np.  /usr/lib/ghostscript/fonts).

  2. Dodaæ odpowiednie nazwy i aliasy dla czcionki w pliku Fontmap w
     katalogu gs

  Ostatnio pojawi³ siê porz±dny zestaw czcionek cyrylicowych dla
  GhostScripta.  Znajduje siê on na ftp.kapella.gpi.ru. Ma on nawet
  konieczny wpis który trzeba dodaæ do pliku Fontmap. ¦ci±gn±æ musisz
  zawarto¶æ katalogu /pub/cyrillic/psfonts/. Plik README opisuje
  niezbêdne szczegó³y.

  66..  DDrruukkoowwaanniiee

  Drukowanie zawsze jest rzecz± zawi³±. Istniej± ró¿ne drukarki ró¿nych
  producentów z ró¿nymi mo¿liwo¶ciami. Nawet co do drukowania w "go³ym"
  formacie nie ma jednorodnego rozwi±zania (odnosi siê to nie tylko do
  Unixa, ale równie¿ do innych systemów operacyjnych).

  Drukarki maj± ró¿ne jêzyki kontrolne, a czêsto maj± bardzo ró¿ne
  pogl±dy na obs³ugê innych takich jêzyków. Dobr± wiadomo¶ci± jest to ¿e
  jeden taki jêzyk kontrolny wydaje siê byæ uznawany za de facto
  standard dla opisywania zadañ zwi±zanych z drukiem - to jêzyk
  PostScript, stworzony przez Adobe Corporation.

  Innym problemem jest ró¿norodno¶æ wymagañ zwi±zanych z us³ug±
  drukowania.  Na przyk³ad, czasem chcesz po prostu wydrukowaæ kawa³ek
  programu w C z rosyjskimi komentarzami, wiêc nie potrzebujesz ¿adnego
  ³adnego drukowania - po prostu czysty wydruk ASCII w pojedynczej
  czcionce. Innym razem, kiedy projektujesz pocztówkê dla swojej
  dziewczyny, bêdziesz zapewne musia³ j± z³o¿yæ u¿ywaj±c ró¿nych
  czcionek, i tak dalej. Bêdzie to wymaga³o z pewno¶ci± wiêcej wysi³ku w
  kwestii ustawienia obs³ugi cyrylicy.

  Aby podo³aæ pierwszemu zadaniu bêdziesz musia³ po prostu zmusiæ swoj±
  drukarkê aby rozumia³a jeden font cyrylicowy i (byæ mo¿e) zainstalowaæ
  jaki¶ program filtruj±cy, który bêdzie wypisywa³ dane w odpowiednim
  formacie. Aby dokonaæ tego drugiego zadania, bêdziesz musia³ nauczyæ
  swoj± drukarkê ró¿nych czcionek i mieæ specjalny software.

  Istnieje tak¿e sytuacja po¶rodku, gdy masz program który wie jak
  wygenerowaæ i fonty i odpowiednie dane dla drukarki, mo¿esz wiêc,
  powiedzmy, wykonaæ parê ³adnych wydruków kodu ¼ród³owego bez
  wyrafinowanych systemów obróbki tekstu.

  Wszystkie te opcje zostan± mniej lub bardziej omówione poni¿ej.

  66..11..  ££aaddoowwaanniiee cczzcciioonneekk ccyyrryylliiccoowwyycchh ddoo ddrruukkaarrkkii nniieeppoossttssccrriippttoowweejj

  Je¶li masz star± dobr± drukarkê ig³ow± i potrzebujesz tylko wydrukowaæ
  czysty tekst w KOI-8, spróbuj poni¿szego:

  1. Znajd¼ odpowiedni± czcionkê KOI-8 dla swojej drukarki. Sprawd¼
     kolekcje MS-DOSowe w Internecie (na przyk³ad archiwum SimTel, ftp.
     simtel.net)

  2. Dowiedz siê z instrukcji jak za³adowaæ czcionkê do drukarki i,
     mo¿liwie, napisz prosty program który to robi

  3. Uruchom ten program z odpowiedniego pliku .rc w czasie startu
     systemu.

  Tak wiêc maj±c znaki cyrylicowe w górnej po³ówce zestawu znaków
  drukarki bêdziesz móg³ drukowaæ teksty po rosyjsku bez ¿adnych
  ceregieli.

  Alternatywnie z czcionkami KOI-8 mo¿esz u¿yæ czcionek Alt. S± ku temu
  dwa powody:

  ·  Mo¿e byæ ³atwiej znale¼æ czcionkê Alt, bowiem takowe by³y bardzo
     rozpowszechnione w kulturze MS-DOSowej

  ·  Posiadanie odpowiedniej czcionki Alt pozwoli ci drukowaæ równie¿
     pseudografikê

  Niemniej w tym przypadku bêdziesz musia³ przekodowaæ swoje teksty z
  KOI-8 na Alt przed pos³aniem ich do drukarki. Jest to ca³kiem ³atwe,
  poniewa¿ pe³no jest programów które to robi± (patrz "translit", na
  przyk³ad), tak wiêc wystarczy ¿e w³a¶ciwie wywo³asz ten program w polu
  if /etc/ printcap. Na przyk³ad dla programu translit napisaæ mo¿esz:

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

  Patrz printcap(5) po szczegó³y.

  66..22..  DDrruukkoowwaanniiee rróó¿¿nnyymmii cczzcciioonnkkaammii

  Jednym ¶wietnym sposobem poradzenia sobie z ró¿nymi czcionkami i
  drukarkami jest u¿ycie TeXa. Sterowniki TeXa zajmuj± siê wszelkimi
  detalami, wiêc skoro ju¿ raz nauczy³e¶ TeXa rozumieæ czcionki
  cyrylicowe, sprawa za³atwiona.

  Inn± mo¿liwo¶ci± jest u¿ycie PostScriptu. Zdecydowa³em siê po¶wiêciæ
  temu ca³y rozdzia³, poniewa¿ nie jest to ³atwe.

  W koñcu, s± i inne edytory tekstów które maj± sterowniki drukarek.
  Nigdy nie próbowa³em niczego poza TeXem, wiêc nie mogê niczego
  zasugerowaæ

  66..33..  KKoonnwweerrssjjaa tteekkssttuu ddoo TTeeXXaa

  Je¶li tym czego potrzebujesz jest wydrukowanie tekstu w ASCII bez
  ¿adnego dodatkowego przetworzenia, mo¿esz spróbowaæ u¿yæ kilku
  programów które przerobi± twój tekst w cyrylicy na gotowe do
  przetworzenia plik TeXa.  Jednym z najlepszych programów do tego celu
  jest translit. W tym przypadku nie musisz siê nawet k³opotaæ
  instalowaniem czcionek cyrylicowych dla TeXa, poniewa¿ translit u¿ywa
  pakietu Washington Cyriliic, który w³±czony jest do wiêkszo¶ci
  dystrybucji TeXa (a mo¿e siê mylê?)

  66..44..  KKoonnwweerrssjjaa tteekkssttuu ddoo ppoossttssccrriippttuu

  Czasami masz tekst w czystym KOI-8 i chcesz go wydrukowaæ tylko po to
  ¿eby mieæ go na papierze. Jedn± z najprostszych metod osi±gniêcia tego
  jest u¿ycie specjalnych programów konwertuj±cych tekst do postscriptu.

  Istnieje pewna liczba programów dokonuj±cych takiej konwersji.
  Osobi¶cie preferujê a2ps. Stworzony pocz±tkowo jako prosty konwerter
  tekstu do postscriptu, sta³ siê on du¿ym i wysoce konfigurowalnym
  programem z wieloma opcjami, pozwalaj±c ci obs³u¿yæ ró¿ne wielko¶ci
  strony, pod¶wietlanie sk³adni itp. Inne narzêdzie (obecnie dostêpne
  jako czê¶æ projektu GNU) to enscript

  G³ównym problemem z takimi programami jest to ¿e nie wiedz± one nic o
  czcionkach cyrylicowych. W³a¶nie rozwa¿am mo¿liwo¶æ zawierania w nich
  czcionek cyrylicowych, tak aby rozumia³y cyrylicê.

  Niemniej ca³a ta powy¿sza gadanina by³aby bezcelowa bez ¿adnej
  rzeczywistej rady. Oto wiêc ona:

  Jak zwykle, GNU wygrywa. GNUsowy program enscript zaprojektowany
  zosta³ do konwersji tekstu na postscript i ma doskona³± obs³ugê nie-
  ASCIIowych zestawów znaków. Nie zawiera on cyrylicowych czcionek
  postscriptowych, ale bardzo ³atwo je zdobyæ, jak wyja¶niono poni¿ej
  (podziêkowania dla Michaela Van Canneyta).

  1. Zainstaluj najnowszy enscript. Jak na razie naj¶wie¿sz± wersj± jest
     1.5. Mo¿esz ¶ci±gn±æ go albo z ftp GNU, albo jako pakiet RPM z ftp
     RedHata.

  2. Teraz, je¶li masz szczê¶cie byæ u¿ytkownikiem RedHat Linuxa,
     ¶ci±gnij i zainstaluj czcionkê Cyriliic Textbook
     (ftp://ftp.redhat.com/pub/ contrib/i386/enscript-fonts-
     koi8-1.0.1-i386.rpm)

  3. Je¶li nie u¿ywasz RPM, ¶ci±gnij plik textbook.tar.gz z Cyrillic
     Software Collection na ftp://sunsite.unc.edu/pub/academic/russian-
     studies/Software/). Rozpakuj go do katalogu w którym zainstalowane
     s± czcionki enscripta. Przejd¼ teraz do tego katalogu i wykonaj:

       mkamfmap *.afm

  4. Koniec konfiguracji. Spróbuj wydrukowaæ jaki¶ tekst w KOI-8
     poni¿sz± komend±:

       enscript --font=Textbook8 --encoding=koi8 jakis_plik

  Je¶li chcesz jakiego¶ szybkiego rozwi±zania i nie dbasz o jako¶æ
  wydruku, a wszystkim czego potrzebujesz jest cyrylica na papierze,
  spróbuj pakietu rtxt2ps. Jest to bardzo prosty i niewyszukany
  konwerter tekstu do postscriptu. Jako¶æ wydruku jest nienajlepsza
  (albo, mówi±c szczerze, ca³kiem z³a), ale robi on to co powinien.

  Jeszcze inn± desk± ratunku jest przerobiona wersja a2ps. Jest ona do¶æ
  stara, wiêc nie spodziewaj siê tych wszystkich fajerwerków z nowszych
  wersji. Ale drukuje ona tekst w cyrylicy, a jako¶æ wydruku jest
  znacz±co lepsza ni¿ ta rtxt2ps. Do¶wiadczy³em przy niej jednak ró¿nych
  rodzajów problemów, np. nie mog³em wydrukowaæ wiêcej ni¿ dwóch stron
  (???)

  77..  KKoonnffiigguurraaccjjaa rróó¿¿nnyycchh nnaarrzzêêddzzii

  Ogólnie, aby przestawiæ pewne narzêdzia w trybie operowania cyrylic±
  wymagane jest po prostu umo¿liwienie danych o¶miobitowych. W kilku
  przypadkach wymagane jest powiedzenie aplikacji aby pokaza³a
  rozszerzone znaki ASCII w ich bazowej formie.

  77..11..  66..11.. bbaasshh

  Aby bash rozumia³ o¶miobitowe znaki, powiniene¶ ustawiæ trzy zmienne,
  Najlepszym miejscem jest plik ~/.inputrc. Ustaw co nastêpuje:

         set meta-flag on
         set convert-meta off
         set output-meta on

  77..22..  66..22.. ccsshh//ttccsshh

  Powinienie¶ ustawiæ poni¿sze w .cshrc:

         setenv LC_CTYPE iso_8859_5
         stty pass8

  Je¶li nie masz stty zgodnego z POSIX (niemo¿liwe w Linuxie), zast±p
  ostatnie wywo³anie przez:

  stty -istrip cs8

  77..33..  66..33.. eemmaaccss

  Minimaln± obs³ugê cyrylicy w emacsie zapewnia dodanie poni¿szych
  wywo³añ do pliku .emacs (zak³adaj±c ¿e zainstalowana jest obs³uga
  zestawu znaków cyrylicy dla konsoli lub X, odpowiednio).

         (standard-display-european t)

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

  Umo¿liwia to u¿ytkownikowi ogl±danie i wprowadzanie rosyjskich
  dokumentów.

  Taki tryb nie jest jednak wielk± wygod±, poniewa¿ emacs nie rozpoznaje
  zwyk³ych komend klawiatury gdy znajduje siê w trybie wprowadzania
  cyrylicy. Istnieje pewna liczba pakietów które u¿ywaj± innego
  podej¶cia.  Nie polegaj± one na "input mode" ustalonym przez
  ¶rodowisko (X lub konsolê). Zamiast tego, pozwalaj± u¿ytkownikowi
  prze³±czaæ tryb wprowadzania specjalnymi komendami emacsa, a emacs sam
  jest odpowiedzialny za przedefiniowanie zestawu znaków. Autor mia³
  szansê zaznajomiæ siê z trzema takimi pakietami. Pakiet russian.el
  Walerego Aleksiejewa () pozwala u¿ytkownikowi prze³±czaæ siê miêdzy
  trybami cyrylicy i zwyk³ym oraz t³umaczyæ zawarto¶æ bufora z jednego
  kodowania cyrylicy na drugie (co jest szczególnie u¿yteczne przy
  czytaniu tekstów przeniesionych z MS-DOS). rustable.el (nie znam
  niestety autora) dodaje do emacsa regu³y sk³adniowe zestawu znaków
  (granice s³ów, regu³y zmiany wielko¶ci liter itd.) Pakiety te znale¼æ
  mo¿na w wiêkszo¶ci archiwów emacsowego Lispa.

  Jedyn± niewygod± jest to ¿e emacs ci±gle traktuje znaki rosyjskie jako
  specjalne, nie rozpoznaje wiêc granic s³ów rosyjskich i zmian
  wielko¶ci liter. Aby to poprawiæ, musisz zmodyfikowaæ sk³adniê i
  tablice wielko¶ci liter emacsa:

    ;; w zmiennych poni¿ej znajduj± siê ¶miecie, poniewa¿ SGML nie lubi
    ;; znaków cyrylicy. Bêdziesz musia³ wstawiæ du¿e i ma³e litery
    ;; rosyjskiego alfabetu, odpowiednio (patrz faktyczne pliki)

    (setq *russian-abc-ucase* "tu wstaw du¿e litery")
    (setq *russian-abc-lcase* "tu wstaw ma³e litery")

    (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))))

  Dla tego celu stworzy³em plik rusup.el który tego dokonuje, podobnie
  jak kilka porêcznych funkcji. Musisz za³adowaæ go w swoim ~/.emacs.

  Jeszcze jeden pakiet to remap, który próbuje bardziej utypowiæ obs³ugê
  cyrylicy. Pakiet ten napisa³ Per Abrahamsen (), i dostêpny jest on na
  ftp.iesd.auc.dk.

  We w³asnej opinii, sugerowa³bym zacz±æ od russian.el, bowiem jest on
  bardzo ³atwy w konfiguracji i u¿yciu.

  77..44..  66..44.. iissppeellll

  Istnieje dodatek rspell do pakietu GNU ispell, stworzony przez Neala
  Daltona (nrd@cray.com), ale do¶wiadczy³em z nim kilku problemów
  próbuj±c go zmusiæ do natychmiastowego dzia³ania. Spróbuj go - mo¿e
  tobie siê poszczê¶ci.

  77..55..  jjooee

  Spróbuj opcji -asis

  77..66..  kksshh

  Co do implementacji public domain ksh, pdksh 5.1.3, mo¿esz wprowadzaæ
  znaki o¶miobitowe tylko w trybie vi. U¿yj

          set -o vi

  77..77..  lleessss

  Jak na razie, less nie obs³uguje zestawu znaków KOI-8, ale poni¿sza
  zmienna ¶rodowiskowa za³atwia sprawê:
       LESSCHARSET=latin1

  77..88..  llyynnxx

  Od wersji 2.6 mo¿esz wybraæ odpowiedni± warto¶æ dla opcji Display
  Character Set.

  77..99..  mmcc ((MMiiddnniigghhtt CCoommmmaannddeerr))

  Aby poprawnie wy¶wietlaæ znaki cyrylicy, zaznacz opcjê 'full 8 bits' w
  menu Options/Display.

  Je¶li masz problem z brzydkimi ramkami okien, zobacz sekcjê ''

  Off topic: je¶li chcesz zmusiæ mc do u¿ywania kolorów w oknie xterma,
  ustaw zmienn± COLORTERM

       COLORTERM= ; export COLORTERM

  77..1100..  NNeettssccaappee NNaavviiggaattoorr

  Upewnij siê ¿e u¿ywasz wersji Netscape'a wiêkszej ni¿ 3. Je¶li twój
  Netscape jest starszy, ¶ci±gnij nowszego z www.netscape.com.

  77..1100..11..  KKoonnffiigguurraaccjjaa ppooddssttaawwoowwaa

  Aby móc ogl±daæ tekst cyrylic± w wiêkszej czê¶ci dokumentów HTMLowych,
  zrób co nastêpuje:

  ·  W menu Options/Encoding Document wybierz  Cyrillic (KOI-8)

  ·  W menu Options/General Preferences/Fonts wybierz Cyrillic (KOI-8),
     Times(Cronyx) jako czcionkê proporcjonaln± i Courier(Cronyx) jako
     czcionkê o sta³ej szeroko¶ci.

  ·  Zachowaj ustawienia

  UWAGA: konfiguracja ta bêdzie dzia³a³a z wiêksz± czê¶ci± dokumentu.
  Jednak¿e nie bêdziesz móg³ wy¶wietlaæ tekstu cyrylic± w nag³ówku okna,
  menu i niektórych dialogach. Aby naprawiæ te problemy:

  77..1100..22..  KKoonnffiigguurraaccjjaa zzaaaawwaannssoowwaannaa

  Andriej A. Czernow wie wiêcej ni¿ inni o KOI-8 w ogóle i o Netscape w
  szczególno¶ci. Odwied¼ jego doskona³± stronê o KOI-8 i ¶ci±gnij ³atê
  do pliku zasobów Netscape, co sprawi ¿e Netscape bêdzie mówi³o po
  rosyjsku na tyle na ile mo¿e.
  77..1111..  ppiinnee

  Wstaw nastêpuj±c± dyrektywê do ~/.pinerc dla konfiguracji osobistej,
  albo do /usr/lib/pine.conf dla globalnej:

       character-set=ISO-8859-5

  77..1122..  rrllooggiinn

  Upewnij siê ¿e pow³oka na serwerze docelowym jest ustawiona poprawnie.
  Potem, je¶li twój rlogin nie dzia³a domy¶lnie prawid³owo, u¿yj rlogin
  -8.

  77..1133..  sseennddmmaaiill ((aakkaa ''zzgguubbaa ssyyssaaddmmiinnaa''))

  Od wersji 8 sendmail domy¶lnie prawid³owo radzi sobie z 8-bitowymi
  danymi.  Je¶li nie jest tak u ciebie, sprawd¼ opcjê EightBitMode i
  opcjê -7 przekazywan± mailerom w twoim /etc/sendmail.cf. Patrz
  "Sendmail; Installation and Operation Guide" po szczegó³y.

  88..  zzsshh

  U¿ywaj w ten sam sposób jak csh (patrz sekcja o csh). Plikami
  startowymi w tym przypadku s± .zshrc oraz /etc/zshrc.

  99..  UU¿¿yytteecczznnee nnaarrzzêêddzziiaa

  99..11..  NNaarrzzêêddzziiaa ddoo kkoonnwweerrssjjii

  Istnieje pewna liczba programów zdolna konwertowaæ z KOI-8 na Alt i z
  powrotem. Poszukaj w SovInformBureau albo na ftp.funet.fi listy
  porêcznych ma³ych programików. Mo¿esz te¿ u¿yæ specjalnego trybu
  emacsa (patrz sekcja o emacsie).

  Szczególnie poleca³bym jednak¿e pakiet translit. Obs³uguje on wiele
  popularnych zestawów znaków i potrafi nawet stworzyæ pliki TeXa (patrz
  sekcja 5.1). z tekstu rosyjskiego. U¿ytkownicy RedHata maj± do
  dyspozycji translit w postaci pliku RPM.

  99..22..  NNaarrzzêêddzziiaa pprrooggrraammiissttyy

  Jak dot±d obja¶nia³em sposoby zmuszenia programów do akceptowania i
  wy¶wietlania zestawu znaków cyrylicy. Niemniej pe³ne przystosowanie
  systemu do warunków lokalnych obejmuje o wiele wiêcej. To co omówiono
  powy¿ej nie wystarcza. System powinien byæ przyjazny dla u¿ytkownika,
  który niekoniecznie musi znaæ angielski. W mojej opinii, nie jest
  wielk± spraw± obeznanie siê z angielskim na poziomie komunikatów
  programów. Jednak¿e nie jest ca³kiem fair tego wymagaæ.
  Tak wiêc nastêpny poziom przystosowania wymaga aby programy by³y
  dostosowywalne do wymagañ ró¿nych jêzyków i zwyczajów w przedstawianiu
  danych.

  Wcze¶niej dokonywano tego poprzez rozwijanie pewnej abstrakcji
  komunikatów bêd±cych rezultatem kodu programu. Teraz ten mechanizm
  jest (mniej czy wiêcej) ustandaryzowany. I, oczywi¶cie, istniej± jego
  darmowe implementacje!

  Dobra wiadomo¶æ to to ¿e GNU w koñcu przyjê³o sposób tworzenia
  zinternacjonalizowanych aplikacji. Ulrich Drepper () stworzy³ pakiet
  gettext, dostêpny we wszystkich repozytoriach GNU, takich jak
  ftp://prep.ai.mit.edu/pub/gnu/ <ftp://prep.ai.mit.edu/pub/gnu/>.
  Pozwala on tworzyæ programy w sposób który ³atwo mo¿na roszerzyæ na
  obs³ugê wielu jêzyków. Nie zamierzam opisywaæ technik
  programistycznych, zw³aszcza ¿e pakiet gettext zawiera doskona³y
  podrêcznik.

  Tak wiêc je¿eli tworzysz programy które wypisuj± jakie¶ komunikaty (a
  stworzy³e¶ kiedy¶ taki który by ich wypisywa³?), nie leñ siê i w³ó¿
  ociupinê (naprawdê ociupinê) wysi³ku w uczynienie swojego programu
  ¶wiadomym locale.

  Pro¶ba o wspó³pracê: je¶li chcesz nauczyæ siê pakietu gettext i
  równocze¶nie do³o¿yæ co¶ do projektu GNU; lub nawet je¶li tylko chcesz
  do³o¿yæ, mo¿esz to zrobiæ! GNU siê internacjonalizuje, wiêc wszystkie
  narzêdzia przerabiane s± na ¶wiadome locale. Problemem jest
  przet³umaczenie komunikatów z angielskiego na rosyjski (i inne jêzyki,
  jak wam siê podoba). Zasadniczo, to co trzeba zrobiæ to zdobyæ
  specjalny plik .po, sk³adaj±cy siê z angielskich komunikatów
  konkretnego narzêdzia i do³±czyæ do ka¿dego komunikatu jego
  odpowiednik po rosyjsku. W ostatecznym rozrachunku sprawi to ¿e system
  bêdzie odzywa³ siê po rosyjsku, je¶li zechce tego u¿ytkownik! Po
  wiêcej szczegó³ów i dalsze wskazówki skontaktuj siê z Ulrichem
  Drepperem ()

  1100..  WWyykkaazz uu¿¿yytteecczznnyycchh zzaassoobbóóww

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

  Strona A. Czernowa o KOI-8: http://www.nagual.ru/~ache/koi8.html
  <http://www.nagual.ru/~ache/koi8.html>

  Ogólna informacja o Linuxie: http://sunsite.unc.edu/mdw/linux.html
  <http://sunsite.unc.edu/mdw/linux.html>

  Moja kolekcja rzeczy zwi±zanych z konfiguracj± cyrylicy:
  ftp://netvision.net.il/pub/home/b/belikoff/cyrillic/
  <ftp://netvision.net.il/pub/home/b/belikoff/cyrillic/>

  Kolekcja cyrylicowa na ftp.kiae.su: ftp://ftp.kiae.su/cyrillic
  <ftp://ftp.kiae.su/cyrillic/>

  Kolekcja cyrylicowa na ftp.relcom.ru: ftp://ftp.relcom.ru/cyrillic/
  <ftp://ftp.relcom.ru/cyrillic/>

  Kolekcja programów cyrylizuj±cych
  ftp://ftp.funet.fi/pub/culture/russian/comp/
  <ftp://ftp.funet.fi/pub/culture/russian/comp/>

  Cronyx http://www.cronyx.ru/ <http://www.cronyx.ru/> - twórcy czcionek
  cyrylicowych dla systemu X Windows.

  Pakiet remap dla emacsa ftp://frp.iesd.auc.dk/
  <ftp://ftp.iesd.auc.dk/>

  Czcionki cyrylicowe dla Ghostscripta:
  ftp://ftp.kapella.gpi.ru/pub/cyrillic/psfonts
  <ftp://ftp.kapella.gpi.ru/pub/cyrillic/psfonts>

  Czcionki cyrylicowe dla X:
  ftp://ftp.kiae.su/cyrillic/x11/fonts/xrus-2.1.1-src.tgz
  <ftp://ftp.kiae.su/cyrillic/x11/fonts/xrus-2.1.1-src.tgz>

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

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

  Informacja o Cyrlillic Software:
  http://sunsite.oit.unc.edu/sergei/Software/Software.html
  <http://sunsite.oit.unc.edu/sergei/Software/Software.html>

  Grupa newsowa relcom.fido.ru.unix.

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

  U¿yteczne pakiety obs³uguj±ce cyrylicê:
  ftp://sunsite.unc.edu/pub/academic/russian-studies/Software
  <ftp://sunsite.unc.edu/pub/academic/russian-studies/Software>

  Pakiet kbd dla Linuxa:
  ftp://sunsite.unc.edu/pub/Linux/system/Keyboards/
  <ftp://sunsite.unc.edu/pub/Linux/system/Keyboards/>

  Kolekcje czcionek X: ftp://ftp.switch.ch/mirror/linux/X11/fonts/
  <ftp://ftp.switch.ch/mirror/linux/X11/fonts/>

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

  Pakiet rusyfikuj±cy teTeX: ftp://xray.sai.msu.su/pub/outgoing/teTeX-
  rus/ <ftp://xray.sai.msu.su/pub/outgoing/teTeX-rus/>

  rtxt2ps i przerobiony a2ps:
  http://www.siber.com/sib/russify/converters/
  <http://www.siber.com/sib/russify/converters/>

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

  Pakiet xruskb: ftp://ftp.relcom.ru/x11/cyrillic/
  <ftp://ftp.relcom.ru/x11/cyrillic/>

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

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