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.
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
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
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
(
mailto:ava@math.jhu.edu)
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
(
mailto:abraham@iesd.auc.dk), 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.
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.
Spróbuj opcji -asis
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
Jak na razie, less nie obsługuje zestawu znaków KOI-8, ale poniższa
zmienna środowiskowa załatwia sprawę:
LESSCHARSET=latin1
Od wersji 2.6 możesz wybrać odpowiednią wartość dla opcji Display Character Set.
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
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.
Aby móc oglądać tekst cyrylicą w większej części dokumentów HTMLowych, zrób co następuje:
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:
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.
Wstaw następującą dyrektywę do ~/.pinerc dla konfiguracji
osobistej, albo do /usr/lib/pine.conf dla globalnej:
character-set=ISO-8859-5
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.
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.