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 Trmper, 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
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
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
). 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/ .
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
Strona A. Czernowa o KOI-8: http://www.nagual.ru/~ache/koi8.html
Ogólna informacja o Linuxie: http://sunsite.unc.edu/mdw/linux.html
Moja kolekcja rzeczy związanych z konfiguracją cyrylicy:
ftp://netvision.net.il/pub/home/b/belikoff/cyrillic/
Kolekcja cyrylicowa na ftp.kiae.su: ftp://ftp.kiae.su/cyrillic
Kolekcja cyrylicowa na ftp.relcom.ru: ftp://ftp.relcom.ru/cyrillic/
Kolekcja programów cyrylizujących
ftp://ftp.funet.fi/pub/culture/russian/comp/
Cronyx http://www.cronyx.ru/ - twórcy czcionek
cyrylicowych dla systemu X Windows.
Pakiet remap dla emacsa ftp://frp.iesd.auc.dk/
Czcionki cyrylicowe dla Ghostscripta:
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
Ghostscript: http://www.cs.wisc.edu/~ghost/index.html
GNU nenscript: ftp://ftp.prep.ai.mit.edu/pub/gnu
Informacja o Cyrlillic Software:
http://sunsite.oit.unc.edu/sergei/Software/Software.html
Grupa newsowa relcom.fido.ru.unix.
RFC 1489: http://ds.internic.net/rfc/rfc1489.txt
Użyteczne pakiety obsługujące cyrylicę:
ftp://sunsite.unc.edu/pub/academic/russian-studies/Software
Pakiet kbd dla Linuxa:
ftp://sunsite.unc.edu/pub/Linux/system/Keyboards/
Kolekcje czcionek X: ftp://ftp.switch.ch/mirror/linux/X11/fonts/
SovInformBureau: http://www.siber.com/sib/russify/
Pakiet rusyfikujący teTeX: ftp://xray.sai.msu.su/pub/outgoing/teTeX-
rus/
rtxt2ps i przerobiony a2ps:
http://www.siber.com/sib/russify/converters/
Pakiet translit: ftp://ftp.osc.edu/pub/russian/translit/translit.tar.Z
Pakiet xruskb: ftp://ftp.relcom.ru/x11/cyrillic/
rspell: ftp://sunsite.unc.edu/pub/academic/russian-
studies/Software/rspell.tar.gz
FTP XFree86: http://www.xfree86.org
Wyszukiwarka
Podobne podstrony:
Cyrillic HOWTO pl 4 (2)
Cyrillic HOWTO pl 1 (2)
Cyrillic HOWTO pl 6 (2)
Cyrillic HOWTO pl 10 (2)
cyrillic howto pl
Cyrillic HOWTO pl 5 (2)
cyrillic howto pl 3
Cyrillic HOWTO pl 9 (2)
Cyrillic HOWTO pl 2 (2)
Cyrillic HOWTO pl 7 (2)
Cyrillic HOWTO pl (2)
bootdisk howto pl 8
PPP HOWTO pl 6 (2)
NIS HOWTO pl 1 (2)
cdrom howto pl 1
jtz howto pl 5
Keystroke HOWTO pl (2)
PostgreSQL HOWTO pl 14
więcej podobnych podstron