Next Previous Contents

6. Redaktirovanie teksta

V etom razdele ya opishu nastrojku razlichnyh programm dlya raboty s kirillicheskimi tekstami. |tot razdel ne ohvatyvaet tekstovye processory, nastrojka kotoryh opisyvaetsya pozzhe (smotri razdel Tekstovye processory)

6.1 Proverka pravopisaniya na russkom yazyke

Dlya proverki pravopisaniya ya ispol'zuyu programmu GNU ispell. Ona imeet ochen' gibkie nastrojki i vozmozhnosti dlya rasshireniya. Ee mozhno ispol'zovat' pri proverki pravopisaniya tekstov, napisannyh na yazykah, otlichnyh ot anglijskogo, putem dobavleniya novyh slovarej.

Slovar' Konstantina Knizhnika

Konstantin Knizhnik sozdal ochen' horoshij russkij slovar' dlya ispell. Vy mozhete najti ego na domashnej stranichke K.Knizhnika. V postavku slovarya vklyuchen poleznyj skript, obespechivayushchij inkrementnyj rezhim proverki pravopisaniya slov dlya emacs;

V ideal'nom sluchae, kogda vash ispell ustanovlen pravil'no, vam nado tol'ko sozdat' slovar', ispol'zuya komandy, obespechivaemye fajlom Makefile iz distributiva. Odnako s nekoj dolej veroyatnosti u vas vozniknut problemy s ispell, kotoryj otkazhetsya ponimat' 8-mi bitnye dannye. |to oznachaet, chto v vashej sisteme ispell skompilirovan bez podderzhki 8-mi bitnyh simvolov. V etom sluchae vam ne udastsya izbezhat' perekompilyacii paketa ispell.

Esli u vas vse normal'no, to mozhete iniciirovat' proverku pravopisaniya dlya russkih tekstov putem vyzova programmy ispell s opciej '-d russian'

Esli vy ispol'zuete Emacs (podrobnee v razdele Emacs), to, veroyatno, vy ne protiv dobavit' punkt v menyu dlya proverki s russkim slovarem.

Konstantin Knizhnik sovetuet vypolnit' sleduyushchie dejstviya:

CHtoby imet' vozmozhnost' pereklyuchit' zapuskaemyj EMACS'om ISPELL na ispol'zovanie russkogo slovarya, mozhno poprobovat' dobavit' v .emacs sleduyushchie stroki


(setq ispell-dictionary-alist (cons
 '("russian"                          ; make russian selectable
   "[\xc0-\xdf\xe0-\xff]" "[^\xc0-\xdf\xe0-\xff]" "[']"
   nil ("-B" "-d" "russian") nil) ispell-dictionary-alist))
(setq  ispell-menu-map-needed t)
(setq  ispell-menu-map nil)
(load "ispell")  ; reload ISPELL

Neobhodimye dejstviya uzhe soderzhatsya v cyrconf.el v direktorii emacs, poetomu v sluchae ispol'zovanie nizhesleduyushchego vklyuchat' ih v .emacs ne nuzhno.

Slovar' Aleksandra Lebedeva

Bolee pravil'nym (s tochki zreniya sposoba sozdaniya) chem slovar' Knizhnika yavlyaetsya "Slovar' russkogo yazyka dlya ispell" Aleksandra Lebedeva

Slovar' postoyanno sovershenstvuetsya, dopolnyaetsya i korrektiruetsya. Poslednyuyu versiyu slovarya mozhno najti na servere: mch5.chem.msu.su

YA ispol'zuyu imenno etot slovar'.

6.2 Emacs i XEmacs

Est' dve versii redaktora Emacs - GNU Emacs i XEmacs. Oni obespechivayut bolee ili menee shodnyj nabor funkcij i vozmozhnostej, no pri etom realizaciya nekotoryh detalej rashoditsya dovol'no sil'no. Nastrojka kirillicy trebuet nekogo nizko-urovnevogo (v duhe Emacs Lispa) "haka" i nemnogo otlichaetsya dlya etih dvuh realizacij.

Minimal'naya podderzhka kirillicy v GNU emacs (vam ne nuzhno etogo delat' pri nastrojke XEmacs) obespechivaetsya pri vypolnenii sleduyushchih vyzovov, dobavlennyh v .emacs (pri uslovii, chto podderzhka simvolov kirillicy ustanovlena dlya konsoli ili dlya X Window sootvetstvenno):


(standard-display-european t)

(let ((m (current-input-mode)))
  (set-input-mode (car m) (nth 1 m) 1))

|to pozvolit vam videt' i vvodit' simvoly, nahodyashchiesya v verhnej chasti ASCII tablicy.

Odnako, etogo ne dostatochno. Emacs obrabatyvaet kirillicheskie simvoly kak special'nye i, kak sledstvie, ne raspoznaet granicy russkih slov i ne delaet razlichiya mezhdu strochnymi i zaglavnymi bukvami. CHtoby obojti eto, vam sleduet neskol'ko modificirovat' tablicy sintaksisa i registra emacs:


(require 'case-table)

(let* ((ruc "\341\342\367\347\344\345\263\366\372\351\352\353\354\355\356\357\360\362\363\364\365\346\350\343\376\373\375\370\371\377\374\340\361")
       (rlc "\301\302\327\307\304\305\243\326\332\311\312\313\314\315\316\317\320\322\323\324\325\306\310\303\336\333\335\330\331\337\334\300\321")
       (i 0)
       (len (length ruc)))
  (while (< i len)
    (modify-syntax-entry (elt ruc i) "w  ")
    (modify-syntax-entry (elt rlc i) "w  ")
    (set-case-syntax-pair (elt ruc i) (elt rlc i) (standard-case-table))
    (setq i (+ i 1))))

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

Obratite vnimanie na paket russian.el, sozdannyj Valeriem Alekseevym (valery@math.uga.edu), pozvolyaet pol'zovatelyu pereklyuchat'sya mezhdu kirillicheskim i standartnym modami vvoda i preobrazovyvat' tekstovyj bufer iz odnoj russkoj kodirovki v druguyu (eto ochen' polezno dlya chteniya tekstov, importirovannyh iz MS-DOS ili Windows).

VNIMANIE:Pomimo nastrojki, opisannoj vyshe, sushchestvuet al'ternativnyj put' obucheniya oboih versij emacs kirillice. Dlya etogo ispol'zuetsya MULE (MULtilanguage Emacs support). Dlya nastrojki kirillicy cherez MULE berem iso8859-5 shrifty (sm. razdel Gde vzyat' shrifty dlya X-window?, podklyuchaem ih k iksam, i vybiraem v menyu Mule nuzhnuyu kodirovku. |tot sposob yavlyaetsya bolee "ideologicheski" pravil'nym.

Sovet:Pri rabote s X-window dlya Emacs, veroyatno, luchshe vsego podojdut shrifty lucidatypewriter iz kollekcii shriftov Bolhovityanova (Sm. razdel Cyr-RFX).

6.3 Rabota s vi

Redaktor vi (po krajnej mere, ego klon vim, prisutstvuyushchij v bol'shinstve distributivov Linux) znaet o sushchestvovanii 8-mi bitnyh simvolov. |to daet vam vozmozhnost' vvodit' kirillicheskie bukvy. Redaktor pravil'no raspoznaet granicy slov. YA nichego ne znayu po povodu pravil preobrazovaniya iz strochnyh v zaglavnye i obratno, tak kak ya ne chasto rabotayu v vi. Esli vy znaete chto-libo ob etom, to, pozhalujsta, soobshchite mne

6.4 Redaktirovanie teksta v joe

Vse problemy joe mozhno reshit' pravil'no nastroiv locale (Sm. razdel Nastrojka lokali (esli on pravil'nym obrazom "propatchen"). Esli u vas nichego ne poluchilos', to poprobujte recept opisannyj nizhe.

Dlya togo chtoby raspoznavat' 8-mi bitnye simvoly, joe trebuet special'nuyu opciyu -asis. Vy mozhete ukazat' ee v komandnoj stroke ili vstavit' v fajl ~/.joerc dlya lichnogo pol'zovaniya ili v /usr/lib/joerc dlya nastrojki vsej sistemy.

Odnako, joe ne raspoznaet granicy russkih slov. YA predpolagayu, chto tozhe samoe proishodit i s perekodirovkoj iz verhnego registra v nizhnij i obratno.


Next Previous Contents