% Cyrillic to TeX 2.01  (C) by Wadim Zudilin,    26.09.1999
\magnification1200
\hsize140mm
\vsize200mm
\font\tencyrrm=wncyr10 \relax
\font\tencyrbf=wncyb10 \relax
\font\tencyrit=wncyi10 \relax
\font\tencyrss=wncyss10 \relax
\font\tencyrsc=wncysc10 \relax
\font\tentt=cmtt10 \relax
\font\ninerm=cmr9 \relax
\font\nineit=cmti9 \relax
\let\cyr\tencyrrm
\let\cyrb\tencyrbf
\let\cyri\tencyrit
\let\cyrs\tencyrss
\let\cyrc\tencyrsc
\let\tt\tentt
\def\AmSTeX{{\it A\kern-.1667em\lower.5ex\hbox{M}\kern-.125emS-\rm\TeX}}
\parindent=5mm
\baselineskip14pt

\line{\hskip2.4mm\rm Cyrillic to \TeX{} 1.0x\hss
\copyright{} by Wadim Zudilin, 19--24.02.1999}
\line{\rm Cyrillic to \TeX{} 2.0x\hss
\copyright{} by Wadim Zudilin, 26.09--01.10.1999}
\line{\hskip2.4mm\rm Cyrillic to \TeX{} 2.03\hss
\copyright{} by Wadim Zudilin, \phantom{00--}11.11.1999}

\vskip7.5mm
\line{\hss\ninerm You can't be in London for long without going to the Zoo}
\vskip-.75mm
\line{\hss\nineit A.A.~Milne, ``Winnie-The-Pooh''}

\vskip1.5mm
\line{\hss\ninerm You can be in London for ever without going to Russia}
\vskip-.75mm
\line{\hss\nineit W.~Z.}

\vskip8mm
\centerline{\cyr V ocheredno\char"1A\ raz privet{s}tvuyu vas,}
\centerline{\cyr uvazhaemye damy i gospoda!}

\medskip
\cyr Nachnu s togo, chto ya byl neskazanno udivlen, obnaruzhiv
(pust\char"7E\ i nebol\char"7Eshuyu) auditoriyu pol\char"7Ezovatele\char"1A\
svoe\char"1A\ programmy. Dlya nesveduwih lyude\char"1A\ poyasnyu, chto
\cyri programma \tt c2t \cyri pozvolyaet chitat\char"7E\ i pis\accent"26at\char"7E\
kirillicheskie fa\char"1Aly na mashinah i v~sistemah\rm, \cyri gde dostup
k rusifikatoram absolyutno zakryt\/ \cyr(hotya do nastoyawego momenta
mne izvestna tol\char"7Eko ee \rm UNIX\cyr ovaya aprobatsiya).

Versiya~2.03 greshit neznachitel\char"7Enymi novovvedeniyami,
o kotoryh my uzn\accent"26aem po hodu dela.
Ya postaralsya privnesti e1lement novizny i v sleduyuwee
dalee povestvovanie, sdelav ego ponyatnym ne tol\char"7Eko dlya
umudrennyh zhizn\char"7Eyu cenitele\char"1A\ \rm UNIX\cyr a i \rm\TeX\cyr a,
no i dlya buduwih pochitatele\char"1A\ e1tih vewe\char"1A.

Pol\char"7Ezuyas\char"7E\ nebol\char"7Eshim mestom na e1to\char"1A\ stranitse,
hochu vyrazit\char"7E\ iskrennyuyu priznatel\char"7Enost\char"7E\
neustannomu ispytatelyu \tt c2t \cyr i generatoru mnogih poleznyh
re\-komendatsi\char"1A\ po ee usovershenstvovaniyu \cyri Alekseyu Alimovu\cyr.
No ya s neterpeniem zhdu novyh (dazhe gnevnyh) otzyvov.
Ya takzhe blagodaren Amerikanskomu matobwestvu za sozdanie
zamechatel\char"7Enyh kirillicheskih shriftov seme\char"1Astva
\tt wncy\cyr, reshayuwih mnogie chisto russkie problemy.

\vskip4mm
\centerline{\cyrb1. Kratki\char"1A\ instruktazh (vmesto vvedeniya)}

\medskip
\cyr Predstavim na mgnovenie, chto programma \tt c2t \cyr
u vas ustanovlena, i vy prosto hotite prochitat\char"7E\
okazavshi\char"1Asya pod ruko\char"1A\ russki\char"1A\ fa\char"1Al \tt russian.txt
\cyr(v neizvest\-no\char"1A\ kodirovke). Reshenie maksimal\char"7Eno prostoe:
naberite komandnuyu stroku
\par\noindent
\line{\hskip6mm\rm``\tt c2t russian.txt\rm''.\hss}
\par\noindent
Esli vy ne storonnik e1krannogo sozercaniya, dobav\char"7Ete klyuchik
\tt+p \cyr do ili posle imeni fa\char"1Ala i begite k printeru
za raspechatko\char"1A. (V sluchae problem poprobu\char"1Ate nabrat\char"7E\
``\tt.$\backslash$c2t\cyr'' vmesto ``\tt c2t\cyr''.)

Samostoyatel\char"7Enoe napisanie russkogo fa\char"1Ala (v lyubo\char"1A\
iz naibolee rasprostranennyh kodirovok) --- process bolee
utomitel\char"7Eny\char"1A. Vam potrebuet\hbox{s}ya tekstovy\char"1A\
redaktor i znanie \cyri volopeka\/ --- \cyr estestvennogo
sootvet\hbox{s}tviya russkih i nerusskih bukv:

\baselineskip13.75pt

\line{\hss
\vbox{\offinterlineskip\halign to36.5mm{\strut\tabskip=.5ptminus.5pt
\strut\vphantom{$1\over1$}%
\vrule\hbox to5mm{\hfil#\hfil}&%
\vrule\hbox to11mm{\hfil#\hfil}&%
\vrule\hskip.5mm%
\vrule\hbox to6mm{\hfil#\hfil}&%
\vrule\hbox to12.5mm{\hfil#\hfil}\vrule\cr
\noalign{\hrule}
\cyr a&\rm a&\cyr A&\rm A\cr
\cyr b&\rm b&\cyr B&\rm B\cr
\cyr v&\rm v&\cyr V&\rm V\cr
\cyr g&\rm g&\cyr G&\rm G\cr
\cyr d&\rm d&\cyr D&\rm D\cr
\cyr e&\rm e&\cyr E&\rm E\cr
\cyr\char"1B&\rm yo $|$ jo&\cyr\char"13&\rm Yo $|$ Jo\cr
\cyr zh&\rm zh&\cyr Zh&\rm Zh\cr
\cyr z&\rm z&\cyr Z&\rm Z\cr
\cyr i&\rm i&\cyr I&\rm I\cr
\cyr\char"1A&\rm j $|$ i1&\cyr\char"12&\rm J $|$ I1\cr
\noalign{\hrule}
}}\hss
\vbox{\offinterlineskip\halign to24mm{\strut\tabskip=.5ptminus.5pt
\strut\vphantom{$1\over1$}%
\vrule\hbox to5mm{\hfil#\hfil}&%
\vrule\hbox to5mm{\hfil#\hfil}&%
\vrule\hskip.5mm%
\vrule\hbox to6mm{\hfil#\hfil}&%
\vrule\hbox to6mm{\hfil#\hfil}\vrule\cr
\noalign{\hrule}
\cyr k&\rm k&\cyr K&\rm K\cr
\cyr l&\rm l&\cyr L&\rm L\cr
\cyr m&\rm m&\cyr M&\rm M\cr
\cyr n&\rm n&\cyr N&\rm N\cr
\cyr o&\rm o&\cyr O&\rm O\cr
\cyr p&\rm p&\cyr P&\rm P\cr
\cyr r&\rm r&\cyr R&\rm R\cr
\cyr s&\rm s&\cyr S&\rm S\cr
\cyr t&\rm t&\cyr T&\rm T\cr
\cyr u&\rm u&\cyr U&\rm U\cr
\cyr f&\rm f&\cyr F&\rm F\cr
\noalign{\hrule}
}}\hss
\vbox{\offinterlineskip\halign to42mm{\strut\tabskip=.5ptminus.5pt
\strut\vphantom{$1\over1$}%
\vrule\hbox to5mm{\hfil#\hfil}&%
\vrule\hbox to13.5mm{\hfil#\hfil}&%
\vrule\hskip.5mm%
\vrule\hbox to6mm{\hfil#\hfil}&%
\vrule\hbox to15.5mm{\hfil#\hfil}\vrule\cr
\noalign{\hrule}
\cyr h&\rm h $|$ x&\cyr H&\rm H $|$ X\cr
\cyr ts&\rm c&\cyr Ts&\rm C $|$ Ts\cr
\cyr ch&\rm ch $|$ q&\cyr Ch&\rm Ch $|$ Q\cr
\cyr sh&\rm sh&\cyr Sh&\rm Sh\cr
\cyr w&\rm w $|$ shch&\cyr W&\rm W $|$ Shch\cr
\cyr\char"7F&$'$$'$&\cyr\char"5F&$'$$'$1\cr
\cyr y&\rm y&\cyr Y&\rm Y\cr
\cyr\char"7E&$'$&\cyr\char"5E&$'$1\cr
\cyr e1&\rm e1&\cyr E1&\rm E1\cr
\cyr yu&\rm yu $|$ ju&\cyr Yu&\rm Yu $|$ Ju\cr
\cyr ya&\rm ya $|$ ja&\cyr Ya&\rm Ya $|$ Ja\cr
\noalign{\hrule}
}}\hss}

\smallskip
\noindent(tverdy\char"1A\ znak otvechaet dvum iduwim podryad
shtriham, a ne dvo\char"1Anym kavych\-kam!). S pomow\char"7Eyu
redaktora vy izgotavlivaete volopekovski\char"1A\ tekst i sohranyaete
ego v vide fa\char"1Ala, skazhem \tt volopek.txt\cyr,
a zatem nabiraete
\par\noindent
\line{\hskip6mm\rm``\tt c2t volopek.txt\rm''\hss}
\par\noindent
i naslazhdaetes\char"7E\ produktom svoe\char"1A\ deyatel\char"7Enosti,
ustavivshis\char"7E\ v monitor (kak e1to dobro raspechatat\char"7E,
vy uzhe znaete). Ves\char"7Ema osyazaemym sobytiem stanovit\hbox{s}ya
po\-yavlenie v vashe\char"1A\ direktorii novogo fa\char"1Ala po imeni
\tt volopek.koi\cyr, v kotorom polnost\char"7Eyu vosproizveden
nabranny\char"1A\ vami tekst v kodirovke \rm KOI8\cyr.
Pri neobhodimosti vy mozhete vnesti korrektivy v svoe tvorenie
(s pomow\char"7Eyu togo zhe samogo redaktora) i, povtoriv
ukazannuyu posledovatel\char"7Enost\char"7E\ de\char"1Astvi\char"1A,
poluchit\char"7E\ obnovlenny\char"1A\ \tt volopek.koi\cyr.

\smallskip
\cyrc Zamechanie\cyr.
Iznachal\char"7Eno programma \tt c2t \cyr zadumyvalas\char"7E\
isklyuchitel\char"7Eno dlya pochtovyh cele\char"1A\ v \rm UNIX\cyr ovyh
sredah. Privedem nekotorye bazovye znaniya dlya
kooperacii naibolee rasprostranenno\char"1A\ pochtovo\char"1A\ programmy
\tt pine \cyr i (poka) menee rasprostranenno\char"1A\ \tt c2t\cyr.
Dlya sohraneniya tekuwego pis\char"7Ema v vashe\char"1A\ direktorii
ispol\char"7Ezuet\hbox{s}ya klavisha~\tt E \rm(Export)
\cyr(s posleduyuwim otvetom na zapros, kak fa\char"1Al nazvat\char"7E),
a ne~\tt S \rm(Save)\cyr. Podklyuchenie fa\char"1Ala iz direktorii
k gotovyawemusya k otpravke pis\char"7Emu realizuet\hbox{s}ya
odnovremennym nazhatiem klavish \tt Ctrl \cyr i~\tt R \rm(Read)
\cyr(s~posleduyuwim otvetom na zapros...). Otmechu takzhe, chto
kodirovka \rm KOI8 \cyr naibolee rasprostranena na priemnyh
pochtovyh punktah Rossii i ne vyzyvaet nikakih problem
s peresylko\char"1A\ za ee predelami.

\medskip
Dlya uspeshno\char"1A\ sborki programmy \tt c2t \cyr vam neobhodimo
imet\char"7E\ fa\char"1Aly \tt c2t.c\rm, \tt c2t.h \cyr i
standartny\char"1A\ \rm C\cyr-kompilyator. Tak, v lyubo\char"1A\
\rm UNIX\cyr opodobno\char"1A\ sisteme e1ta operaciya
osuwestvlyaet\hbox{s}ya s pomow\char"7Eyu komandy
\par\noindent
\line{\hskip6mm\rm``\tt cc c2t.c -o c2t\cyr'' ili
``\tt gcc c2t.c -o c2t\rm''.\hss}
\par\noindent
\cyr Posle uspeshnogo kompilirovaniya rekomenduyu
(po vozmozhnosti i v sluchae neobhodimosti) pomestit\char"7E\
poluchenny\char"1A\ zapuskaemy\char"1A\ fa\char"1Al v put\char"7E,
inache vam, skore\char"1A\ vsego, pridet\hbox{s}ya
dovol\char"7Estvovat\char"7Esya v dal\char"7Ene\char"1Ashem 
neudobnym ``\tt.$\backslash$c2t\cyr'' vmesto ``\tt c2t\cyr''.

Polnocennaya rabota \tt c2t \cyr vozmozhna pri nalichii na vashe\char"1A\
mashine programm \rm\TeX\cyr irovaniya, prosmotra i pechati
\rm DVI-\cyr fa\char"1Alov. No i bez e1tih pribambasov vy smozhete
pis\accent"26at\char"7E\ \cyri po-russki\/ \cyr tak nazyvaemym
\cyri slepym metodom\cyr.

\baselineskip14pt

\vskip4mm
\centerline{\cyrb2. Nyuansy volopekovskogo nabora}

\medskip
Pered naborom fa\char"1Alov vam ponadobit\hbox{s}ya osvoit\char"7E\
(lyubo\char"1A) tekstovy\char"1A\ redaktor. Na pervyh porah ya rekomenduyu
imet\char"7E\ pered glazami privedennuyu v pervom punkte tablitsu.
Vo vseh versiyah programmy \tt c2t\cyr, nachinaya s 2.01,
predusmotrena udobnaya
vozmozhnost\char"7E\ perehoda k angli\char"1Askim (nekirillicheskim)
vstavkam s pomow\char"7Eyu nabora otkryvayuwe\char"1A\ kvadratno\char"1A\
skobki~\tt[ \cyr i obratnogo vozvrata k kirillice s pomow\char"7Eyu
zakryvayuwe\char"1A\ kvadratno\char"1A\ skobki~\tt]\cyr. Pri e1tom sochetanie
\tt[] \cyr pozvolyaet likvidirovat\char"7E\ e1ffekt slipaniya
nekotoryh bukv: stroka \tt shodit' \cyr preobrazuet\hbox{s}ya
programmo\char"1A\ v \cyrs shodit\char"7E\cyr, a \tt s[]hodit' \cyr ---
v nuzhnuyu \cyrs\hbox{s}hodit\char"7E\cyr. Dlya polucheniya na
vyhode samih kvadratnyh skobok neobhodimo pered nimi v volopekovskom
fa\char"1Ale pomewat\char"7E\ obratny\char"1A\ sle1sh~$\backslash$.

\smallskip
\cyrc Zamechanie\cyr.
Problema formatirovaniya (krasivogo raspolozheniya v fa\char"1Ale)
poluchaemogo russkogo teksta celikom lozhit\hbox{s}ya
na plechi zagotovitelya, tak kak programma \tt c2t \cyri sohranyaet
``avtorski\char"1A'' nabor strok\cyr. No nichto ne meshaet vam
otformatirovat\char"7E\ poluchenny\char"1A\ kirillicheski\char"1A\ fa\char"1Al
vslepuyu, pol\char"7Ezuyas\char"7E\ uslugami kakogo-nibud\char"7E\
prodvinutogo redaktora (iz izvestnyh i udobnyh \rm X\cyr-redaktorov
mogu privesti primer \rm NEdit\cyr, sm.\hskip2pt\relax
``\tt http://www-pat.fnal.gov/nirvana/nedit.html\cyr'').

\vskip4mm
\centerline{\cyrb3. Ponyatlivost\char"7E\ programmy}

\medskip
Programma podderzhivaet i raspoznaet pyat\char"7E\ osnovnyh kirillicheskih
kodirovok:
\par\noindent
\line{\hskip6mm\cyr-- kodirovka \rm DOS (CP866), \cyr klyuch$=$\tt d\rm;\hss}
\line{\hskip6mm\cyr-- kodirovka \rm KOI8, \cyr klyuch$=$\tt k\rm;\hss}
\line{\hskip6mm\cyr-- kodirovka \rm WIN (CP1251), \cyr klyuch$=$\tt w\rm;\hss}
\line{\hskip6mm\cyr-- kodirovka \rm MacOS, \cyr klyuch$=$\tt m\rm;\hss}
\line{\hskip6mm\cyr-- kodirovka \rm ISO8859-5, \cyr klyuch$=$\tt i\rm,\hss}
\par\noindent
a takzhe mnemonicheski\char"1A\ russki\char"1A\ volopek (sm.\ privedennuyu
ranee tablicu):
\par\noindent
\line{\hskip6mm\cyr-- kodirovka \rm Russian volopek,
\cyr klyuch$=$\tt r\rm,\hss}
\par\noindent
i (v nekotorom smysle) \rm\TeX\cyr:
\par\noindent
\line{\hskip6mm\cyr-- kodirovka \rm\TeX, \cyr klyuch$=$\tt t\rm,\hss}
\par\noindent
no dve poslednie kodirovki nepolnocenny. Vy mozhete peregnat\char"7E\
volopekovski\char"1A\ fa\char"1Al v lyubuyu kirillicheskuyu kodirovku,
i poslednyaya operaciya neobratima;
iz fa\char"1Ala v lyubo\char"1A\ kirillichesko\char"1A\ kodirovke (ne v volopeke!) mozhno
poluchit\char"7E \rm\TeX-\cyr fa\char"1Al dlya samostoyatel\char"7Enogo
\rm\TeX\cyr irovaniya (osobo\char"1A\ krasoto\char"1A\ on blistat\char"7E\ ne budet).

Komandnaya stroka programmy \tt c2t \cyr imeet vid
\par\noindent
\line{\hskip6mm\rm``\tt c2t [+\cyrs kodirovka\_na\_vhode\tt]
[-\cyrs kodirovka\_na\_vyhode\tt]\hss}
\line{\hskip6mm\phantom{\rm``\tt c2t\ }\cyrs imya\_vhodnogo\_fa\char"1Ala
\tt[\cyrs imya\_vyhodnogo\_fa\char"1Ala\tt]\rm'',\hss}
\par\noindent
gde \cyrs kodirovko\char"1A\_na\_vhode \cyr mozhet byt\char"7E\ lyubaya kirillicheskaya
kodirovka ili volopek, a \cyrs kodirovko\char"1A\_na\_vyhode \cyr---
lyubaya kirillicheskaya kodirovka ili \rm\TeX\cyr. Dlya sovmestimosti
s predyduwimi versiyami my uravnivaem
vozmozhnosti kodirovok \rm Russian volopek \cyr i \rm\TeX\cyr,
to bish\char"7E\ \tt+t \cyr e1to to zhe samoe, chto i \tt+r\cyr,
a \tt-r \cyr--- to zhe, chto i \tt-t\cyr. Vse parametry komandno\char"1A\
stroki, krome \cyrs imeni\_vhodnogo\_fa\char"1Ala \cyr yavlyayut\hbox{s}ya
neobyazatel\char"7Enymi. Po umolchaniyu \cyrs kodirovka\_na\_vhode \cyr(dazhe
volopek!) opredelyaet\hbox{s}ya samo\char"1A\ programmo\char"1A, a dlya
\cyrs kodirovki\_na\_vyhode \cyr ispol\char"7Ezuet\hbox{s}ya \rm KOI8\cyr.
\cyrs Imya\_vyhodnogo\_fa\char"1Ala \cyr povtoryaet 
\cyrs imya\_vhodnogo\_fa\char"1Ala\cyr, no s izmeneniem rasshireniya
na \tt dos\rm, \tt koi\rm, \tt win\rm, \tt mac\rm, \tt iso \cyr ili
\tt tex \cyr v zavisimosti ot \cyrs kodirovki\_na\_vyhode\cyr.

Esli u vas net zhelaniya chitat\char"7E\ na angli\char"1Askom yazyke sintaksis
komandno\char"1A\ stroki programmy \tt c2t\cyr, ne pyta\char"1Ates\char"7E\ dobit\char"7Esya
ot nee nevozmozhnogo: lyubaya iz \cyrs kodirovok \cyr---
\cyrs na\_vhode \cyr ili \cyrs na\_vyhode \cyr--- mozhet
prisut\hbox{s}tvovat\char"7E\
\cyri v edinstvennom e1k\-zemp\-lyare\cyr.

\vskip4mm
\centerline{\cyrb4. \bf\TeX\cyrb nicheskie e1lementy
komandno\char"1A\ stroki}

\medskip
Na samom dele, my nemnogo slukavili v predyduwem punkte, ukazav
nepolny\char"1A\ sintaksis komandno\char"1A\ stroki. K ukazannym sostavlyayuwim
mogut byt\char"7E\ dobavleny klyuchi \tt+v\rm/\tt-v \cyr i \tt+p\rm/\tt-p\cyr,
soobwayuwie o \cyri neobhodimosti\/ \cyr(plyus~\tt+\cyr)
ili \cyri otmene\/ \cyr(mi\-nus~\hbox{\tt-\cyr)}
\cyr prosmotra i pechati sootvet\hbox{s}tvenno. Po umolchaniyu programma
schitaet celesoobraznym prosmotr rezul\char"7Etata ee deyatel\char"7Enosti, no
ne ego raspechatki. Poe1tomu komandnaya stroka
\par\noindent
\line{\hskip6mm\rm``\tt c2t -w +p russian.txt\rm''\hss}
\par\noindent
traktuet\hbox{s}ya programmo\char"1A\ sleduyuwim obrazom:
``perevesti'' soderzhimoe fa\char"1Ala
\break
\tt russian.txt
\cyr v fa\char"1Al \tt russian.win \cyr(v kodirovke
\rm WIN\cyr), ``napustit\char"7E''
na poluchen\-ny\char"1A\ fa\char"1Al programmu prosmotra,
a zatem raspechatat\char"7E\ ego.

Komandno\char"1A\ stroko\char"1A\ programmy \tt c2t \cyr predusmotren \cyri
e1kzoticheski\char"1A\/
\cyr klyuch \tt+e \cyr(ili, chto to zhe samoe, \tt-e\cyr) dlya yavnogo
ukazaniya direktorii, v kotoro\char"1A\ mozhno na\char"1Ati
\cyrs vhodno\char"1A\_fa\char"1Al \cyr i
v kotoruyu nuzhno polozhit\char"7E\ \cyrs vyhodno\char"1A\_fa\char"1Al\cyr.
Imya e1to\char"1A\ raboche\char"1A\ direktorii dolzhno byt\char"7E\ nepremenno ukazano
srazu zhe (bez probelov) posle~\tt e\cyr. Takaya
e1kzoticheskaya vozmozhnost\char"7E\ orientirovana na podklyuchenie \tt c2t \cyr iz
drugih programm. Dlya pochitatele\char"1A\ \rm Norton Commander\cyr a
v \rm DOS\cyr e ili \rm Windows \cyr budet ne bezynteresno uznat\char"7E\
o ego podobii (ili parodii) \rm Midnight Commander (\tt mc\cyr)
v \rm UNIX\cyr e
(sm.\ ``\tt http://www.gnome.org/mc/\cyr''); imenno blagodarya
e1kzoticheskomu klyuchu udaet\hbox{s}ya zapuskat\char"7E\ programmu \tt c2t
\cyr pryamo iz \tt mc \cyr nazhatiem klavishi \tt Enter\cyr.

\smallskip
\cyrc Zamechanie\cyr.
Poryadok sledovaniya argumentov komandno\char"1A\ stroki, a takzhe
za\-glavnost\char"7E\ ili strochnost\char"7E\ bukv v klyuchah
ne imeyut nikakogo znacheniya, za odnim edinstvennym
isklyucheniem, --- sochetaniem ``\tt-d\rm\hskip.5mm/\tt-D\cyr''.
Zaglavnaya bukva~\tt D \cyr
uka\-zyvaet na to, chto perenosy strok v poluchaemom fa\char"1Ale
neobhodimo delat\char"7E\ v formate psevdooperatsionno\char"1A\
sistemy \rm DOS\cyr,
dobavlyaya pered kazhdym \tt0x0A \cyr simvol \tt0x0D
\cyr(poslednyaya magicheskaya fraza tol\char"7Eko dlya posvyawennyh).

Kak by tam ni bylo, esli vy zapustite programmu \tt c2t \cyr bez argumentov
ili oshibetes\char"7E\ v ih napisanii, programma predostavit vam vpolne
dostatochnuyu informaciyu o sebe (pravda, na angli\char"1Askom yazyke).

\baselineskip14.5pt

\vskip4mm
\centerline{\cyrb5. Izmenenie umolchani\char"1A\ i \bf Copyright}

\medskip
Nachinaya s versii 2.01, u pol\char"7Ezovatele\char"1A\ programmy poyavilas\char"7E\
zamechatel\char"7Enaya vozmozhnost\char"7E\ sdelat\char"7E\ samostoyatel\char"7Enie nastro\char"1Aki
i izmenit\char"7E\ predusmotrennye umolchaniya \tt c2t \cyr pered ee
kompilirovaniem (ili sborko\char"1A, opisanno\char"1A\ v pervom pun\-kte),
ne vnikaya v podrobnosti raboty programmy. Vse izmeneniya
prodelyvayut\hbox{s}ya tol\char"7Eko v fa\char"1Ale \tt c2t.h\cyr.
Edinstvennye sistemno zavisimye komponenty programmy
otnosyat\hbox{s}ya k sleduyuwim komandam:
\par\noindent
\line{\hskip6mm\cyr-- komanda \tt TEX\_COMMAND \rm\TeX\cyr irovaniya,
po umolchaniyu \tt"tex \&plain"\rm;\hss}
\line{\hskip6mm\cyr-- komanda \tt VIEW\_COMMAND \cyr vizualizacii
\rm DVI\cyr-fa\char"1Ala, po umolchaniyu \tt"xdvi"\rm;\hss}
\line{\hskip6mm\cyr-- komanda \tt PRN\_COMMAND \cyr vyvoda na pechat\char"7E\
\rm DVI\cyr-fa\char"1Ala, po umolchaniyu \tt"dvips"\rm;\hss}
\line{\hskip6mm\cyr-- komanda \tt DEL\_COMMAND \cyr molchalivogo
udaleniya vspomogatel\char"7Enyh fa\char"1Alov, po\hss}
\line{\hskip6mm\cyr\phantom{--} umolchaniyu \tt"rm -f",
\cyr dolzhna rabotat\char"7E\ s fa\char"1Alovymi shablonami;\hss}
\line{\hskip6mm\cyr-- komanda \tt BAT\_COMMAND \cyr vyzova sistemnogo
yadra, po umolchaniyu \tt"sh"\rm.\hss}
\par\noindent
Ostal\char"7Enye komponenty \tt c2t.h \cyr prednaznacheny dlya individual\char"7Eno\char"1A\
nastro\char"1Aki na pol\char"7Ezovatelya, a ne na sistemu. K nim otnosyat\hbox{s}ya:
\par\noindent
\line{\hskip6mm\cyr-- perehod \tt ROM\_SWITCH \cyr k latinskim vstavkam
v volopeke, po umolchaniyu \tt'['\rm;\hss}
\line{\hskip6mm\cyr-- vozvrat \tt CYR\_SWITCH \cyr k kirillice
v volopeke, po umolchaniyu \tt']'\rm;\hss}
\line{\hskip6mm\cyr-- kodirovanie \tt DEF\_CODING \cyri po umolchaniyu\cyr,
po umolchaniyu \tt KOI\rm;\hss}
\line{\hskip6mm\cyr-- prosmotr \tt DEF\_VIEW \cyr rezul\char"7Etata
\cyri po umolchaniyu\cyr, po umolchaniyu \tt YES\rm;\hss}
\line{\hskip6mm\cyr-- raspechatka \tt DEF\_PRN \cyr rezul\char"7Etata
\cyri po umolchaniyu\cyr, po umolchaniyu \tt NO\rm.\hss}
\par\noindent
Ostavshayasya gruppa opredeleni\char"1A\ nosit chisto \rm\TeX\cyr nicheski\char"1A\
harakter i poyavilas\char"7E\ v svete tol\char"7Eko v versii~2.02. S pomow\char"7Eyu
ih umelo\char"1A\ nastro\char"1Aki vy mozhete udovletvorit\char"7E\ svoi
sobstvennye e1steticheskie vozzreniya, no pover\char"7Ete, umolchatel\char"7Enye
nastro\char"1Aki tozhe delalis\char"7E\ s umom:
\par\noindent
\line{\hskip6mm\cyr-- masshtab (\rm magnification) \tt MAG\cyr,
po umolchaniyu \tt"1200"\rm;\hss}
\line{\hskip6mm\cyr-- levy\char"1A\ ot\hbox{s}tup \tt HOFFSET\cyr,
po umolchaniyu \tt"-13mm"\rm;\hss}
\line{\hskip6mm\cyr-- verhni\char"1A\ ot\hbox{s}tup \tt VOFFSET\cyr,
po umolchaniyu \tt"-12mm"\rm;\hss}
\line{\hskip6mm\cyr-- shirina stranicy \tt HSIZE\cyr,
po umolchaniyu \tt"165mm"\rm;\hss}
\line{\hskip6mm\cyr-- vysota stranicy \tt VSIZE\cyr,
po umolchaniyu \tt"224mm"\rm;\hss}
\line{\hskip6mm\cyr-- imya kirillicheskogo shrifta \tt CYRFONT\cyr,
po umolchaniyu \tt"wncyr10"\rm.\hss}
\par\noindent
Vy takzhe mozhete izmenyat\char"7E\ nastro\char"1Aki, manipuliruya klyuchami
programm prosmo\-tra i\hskip.5mm/\hskip.5mmili pechati. Tak, naprimer,
ustanovka \tt PRN\_COMMAND \cyr v \tt"dvired -x833" \cyr po\-zvolit
raspechatyvat\char"7E\ fa\char"1Aly po dve stranicy na odno\char"1A.

\cyrb Vnimanie!
\rm Copyright \copyright{} by Wadim Zudilin
\cyr oznachaet vpolne konkretnye vewi. Programma \tt c2t
\cyr predstavlyaet sobo\char"1A\ \cyri svobodny\char"1A\/ \cyr produkt, poe1tomu
v prilagayuwemsya pakete \tt c2t.zip \cyr vy na\char"1Adete
ne otkompilirovannuyu versiyu, a fa\char"1Aly \tt c2t.c\cyr, \tt c2t.h
\cyr i (e1tot fa\char"1Al) \tt c2t.tex\cyr. Vse predusmotrennye mno\char"1A\
nastro\char"1Aki mogut byt\char"7E\ ispravleny tol\char"7Eko v fa\char"1Ale \tt c2t.h\cyr.
Ya nastoyatel\char"7Eno proshu vas
\cyri ne vnosit\char"7E\ nikakih izmeneni\char"1A\ i ispravleni\char"1A\
v fa\char"1Aly\/ \tt c2t.c \cyri i\/ \tt c2t.tex \cyri bez moego vedoma\cyr.

\baselineskip14pt

\vskip4mm
\centerline{\cyrb6. Sistemnye osobennosti}

\medskip
Sozdavaemye programmo\char"1A\ \tt c2t
\cyr kirillicheskie \rm\TeX\cyr-fa\char"1Aly
ispol\char"7Ezuyut \cyri edinst\-venny\char"1A\/ \cyr``nestandartny\char"1A''
shrift \tt wncyr10 scaled1200 \cyr
iz standartnogo paketa \rm\AmSTeX{} \cyr(chego ne skazhesh\char"7E\ ob e1tom
fa\char"1Ale \tt c2t.tex\cyr). Prilagayuwi\char"1Asya arhiv \tt wncyr10.zip
\cyr prigodit\hbox{s}ya v sluchae nedostachi e1togo shrifta
v vashe\char"1A\ sisteme, on soderzhit fa\char"1Aly \tt wncyr10.mf\rm,
\tt wncyr10.tfm \cyr i \tt360dpi$\backslash$wncyr10.pk\cyr.
Versiya~2.03 ne nuzhdaet\hbox{s}ya v uslugah fa\char"1Ala
\tt cyracc.def\cyr.

Operacionnaya sistema ne vsegda byvaet nastroena dolzhnym obrazom
(ne vse puti propisany, kak polozheno), i inogda prihodit\hbox{s}ya vmesto
prostogo i ponyat\-nogo \rm``\tt c2t\rm'' \cyr nabirat\char"7E\
\rm``\tt./c2t\rm'', \cyr imeya programmu v tekuwe\char"1A\ direktorii.
Kak pravi\-lo, nichto vse-taki ne meshaet rabotat\char"7E\
po-chelovecheski, propisav samostoyatel\char"7Eno put\char"7E\
dlya svoih zapuskaemyh fa\char"1Alov (skazhem, \tt\%home\%/bin \cyr v
\rm UNIX\cyr e) i pomestit\char"7E\ \tt c2t \cyr v e1tu direktoriyu.
V kra\char"1Anem sluchae po vsem interesuyuwim vas voprosam ne
stesnya\char"1Ates\char"7E\ obrawat\char"7Esya k sistemnomu programmistu.

Problemy rusifikacii sistem mogut reshat\char"7Esya drugimi putyami,
osobenno esli delo kasaet\hbox{s}ya vashego lichnogo \cyri personal\char"7Enogo
\cyr komp\char"7Eyutera.
Edinstvennym poleznym primeneniem programmy \tt c2t \cyr v sistemah
\rm DOS \cyr i \rm Windows \cyr mne predstavlya\-et\hbox{s}ya
perekodirovka fa\char"1Alov iz neznakomo\char"1A\ kodirovki v znakomuyu (skazhem, \rm DOS).
\cyr Pri e1tom neobhodimo vnesti sleduyuwie izmeneniya v fa\char"1Al \tt c2t.h\cyr:
\par\noindent
\line{\hskip6mm\tt\#define DEF\_CODING DOS\hss}
\line{\hskip6mm\tt\#define DEF\_VIEW NO\hss}

Ewe raz otmetim, chto propisannaya v fa\char"1Ale \tt c2t.h \cyr umolchatel\char"7Enaya
kodirovka \rm KOI8 \cyr(naryadu
s kodirovko\char"1A\ \rm WIN\cyr) obozhaet\hbox{s}ya russkimi me1\char"1Alerami.
Kodirovka \rm ISO8859-5 \cyr yavlyaet\hbox{s}ya standartom v \rm UNIX\cyr e,
a s kodirovko\char"1A\ \rm MacOS \cyr mne do sih por stalkivat\char"7Esya ne prihodilos\char"7E,
hotya francuzskie personal\char"7Enye Makintoshi stali mne pochti druz\char"7Eyami.
Kodirovka \rm DOS \cyr neprigodna dlya pryamo\char"1A\ peresylki
po e1lekt\-ronno\char"1A\ pochte, no nichto ne meshaet vam
vospol\char"7Ezovat\char"7Esya programmami \rm UU\cyr- ili
\rm XX\cyr-kodirovaniya (sm.\
``\tt http://storm.ph.utexas.edu/\~{}read/uuxfer.html\cyr'').

\medskip
Zhelayu vam ne ot\hbox{s}tavat\char"7E\ ot russko\char"1A\ mysli,
chitaya i sochinyaya (vremya ot vremeni) russkie fa\char"1Aly.

\vskip3mm

\par\noindent
\line{\hss\cyr Iskrenne vash}
\line{\hss\cyr Vadim Zudilin}

\smallskip
\par\noindent
\line{\hss\cyri 11 noyabrya 1999 goda}

\vskip2mm
\line{\hss\cyr Polny\char"1A\ paket \tt c2t \cyr dostizhim po adresu\hss}
\line{\hss\rm``\tt http://www.math.jussieu.fr/\~{}zudilin/c2t/\rm''\hss}

\end
