---------------------------------------------------------------
From: Evgenij Baldin (baldin@sky.inp.nsk.su))
- Cyrillic HOWTO - -
, - - ,- .
UNIX - ,
( , )
-----------------------------------------------------------------------
. , (abel@bfr.co.il), Berger Financial
Research Ltd. V3.15, 14 1997
, Linux
, .
, , -
Linux. , Linux
,
Unix.
.
Linux.
RedHat 3.0.3 Linux (Picasso) RedHat 4.1 Linux
(Vanderbildt) - , . ,
, ,
Slackware Linux.
, , .
, ,
,
.
X Windows
TeX LaTeX,
Linux. .
,
root. ,
,
.
: X WIndows, TeX Linux-
setup. -
,
,
. , ,
.
.
.
sunsite.unc.edu tsx-11.mit.edu
Linux Document Project. ,
FTP, Linux. ,
Linux.
, ,
abel@bfr.co.il.
Unix . ,
.
( )
.
public comunity.
- .
:
Bas V. Bakker
David Daves
.
Winfried Truemper
.
Michael Van Canneyt
relcom.fido.ru.unix relcom.fido.ru.linux Usenet newsgroups.
- Copyright (C) 1995,1997 . .
Linux
HOWTO , .
- Linux HOWTO:
, Linux HOWTO
. Linux HOWTO
,
,
.
; ,
.
, ,
Linux HOWTO,
.
HOWTO.
;
Linux HOWTO , .
,
. ,
HOWTO ,
HOWTO.
, Greg
Hankins, Linux HOWTO , gregh@sunsite.unc.edu.
finger.
Unix is a technology trademark of the X/Open Ltd.; MS-DOS,
Windows, Windows 95, and Windows NT are trademarks of the
Microsoft Corp.; The X Window System is a trademark of The X
Consortium Inc. Other trademarks belong to the appropriate
holders.
,
.
,
.
, ,
codeset ().
,
,
. , codeset (
) ASCII (
).
ASCII ( ASCII 7 ) 128
. , ASCII
,
,
.
(0-127).
,
.
7 ( ,
).
ASCII 7 ASCII 8
( ASCII). ,
0 255. (0-127) -
ASCII, 127 .
codeset ASCII (
8 , ASCII),
codeset .
ASCII 8
codeset.
(ISO)
, ISO 8859-X . -
8 ,
codeset ( 0-127) ASCII,
. ,
codesets :
8859-1 - , ( Latin 1)
8859-2 -
8859-5 -
8859-8 -
Latin 1,
, - ,
( umlauts,
.).
ASCII -
IBM (
, , codeset
). -
.
,
8- ASCII ,
8 . ,
ASCII 7 8
ASCII .
, ,
ASCII ,
.
: : "
,
Cyrillic! ",
, .
8 ,
ASCII .
ASCII -
ASCII .
ASCII.
ISO 859-5 ,
codeset . (
),
(
),
. , ISO 8859-5 -
.
, , Alt
codeset Microsoft CP1251. Alt
- .
,
IBM . Alt codeset -
IBM ,
European
, .
,
Cyrillic. Alt
-.
Microsoft CP1251 - Microsoft
Windows.
, (
, -)
KOI-8. ,
,
.
ASCII, Cyrillic
. KOI-8 - ,
Cyrillic English
. ,
English " ", " ". ,
, , KOI-8,
, ,
English! ,
E-maile
, ,
.
, KOI-8
Internet. .
, . - RFC 1489
("Registration of a Cyrillic Character Set ").
(
).
- , Alt codeset
- , KOI-8
Unix, - ( KOI-8
). (
Unix- ),
KOI-8.
ISO,
. KOI-8.
,
ASCI. Unicode.
, ASCII Unix
Linux . ,
.
, -
Cyrillic. ,
:
.
,
.
, Linux console.
, ,
. ,
, ,
.
Linux -
.
. , kbd. RedHat,
Slackware kbd .
kbd ,
.
kbd :
1. ,
setfont. /usr/lib/kbd/consolefonts.
: setfont
X, . ,
, X .
2.
loadkeys.
: RedHat 3.0.3, /usr/bin/loadkeys
, 700 (rwx ------).
,
(
root).
, sysadmin
(, 755).
, ,
Cyrillic Linux:
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/Cyr_a8x16
mapscrn /usr/lib/kbd/consoletrans/koi2alt
echo -ne "\033(K" # the magic sequence - -
echo "Use the right Ctrl key to switch the mode..."
.
. , Alt
codeset. , KOI8-R ,
. :
codeset Alt
. " " - ,
, ,
IBM
, Alt codeset,
KOI8-R. , mc,
, - 3.3
...
, magic sequence (-) ,
, . // German
HOWTO 1994,
HOWTO. -
,
.
, , Alt
codeset, ,
KOI8-R .
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 "Use the right Ctrl key to switch the mode..."
, ,
.
.
bash tcsh, ,
CTRL, ,
. "q" "", "w"
"", ..
,
( US) .
:
loadkeys /usr/lib/kbd/keytables/defkeymap.map
setfont /usr/lib/kbd/consolefonts/default8x16
: ,
( ),
X Windows. , ,
X ( ),
.
FreeBSD,
.
.
FreeBSD, , - .
- relcom.fido.ru.unix newsgroup.
, , """.
, - , .
, FreeBSD :
1. In /etc/sysconfig add:
keymap=ru.koi8-r
keyrate=fast
# NOTE: '^[' below is a single control character
keychange="61 ^[[K"
cursor=destructive
scrnmap=koi8-r2cp866
font8x16=cp866b-8x16
font8x14=cp866-8x14
font8x8=cp866-8x8
2. /etc/csh.login:
setenv ENABLE_STARTUP_LOCALE
setenv LANG ru_SU.KOI8-R
setenv LESSCHARSET latin1
3. /etc/profile
4. X Windows
, X windows
.
X . .
,
glyphs () .
X (
XFree86), , . 1995,
X Windows ,
Cronyx. , ,
- , ,
::
1. " xlsfonts | grep -i koi ".
, X
.
2. ,
find -name crox\*.pcf\*
.
X servery, - .
,
.
.
XFree86 , ,
Cronyx. ,
Cronyx (
ftp.kiae.su), , xrus (
xrus,
. ,
xruskb). Xrus Xfree86
(38 68), " Netscape "
- menubar Netscape.
xrus .
, .
, .
, RPM , ,
ftp.redhat.com FTP .
, vakufonts,
,
X Windows
. ,
. Vakufonts ,
- .
, Maple V Linux,
vakufonts,
"" .
, :
1. ftp .
XFree86 FTP , X
Windows, , XFree86 FTP
. Xrus ftp.kiae.su
2. , ,
.
. , ,
/usr/lib/X11/fonts/cyrillic ,
.
3. BDF (* .bdf ),
. :
bdftopcf -o <font>.pcf <font>.bdf
server ,
compress:
compress *.pcf
-
,
, fonts.alias , ,
.
4. X .
fonts.dir.
. , :
cd <new font directory>
mkfontdir .
5.
X . :
XFree86.
X Windows,
XF86Config. , .
startx . man XF86Config (4/5).
xinit.
xinit. man xinit (1x).
.
X - ~/.xinitrc ( ~/.Xclients, ~/.xsession
RedHat). :
xset +fp <new font directory>
xset fp rehash
, " + fp "- ,
.
, , fix font,
fixed font Cyrillic,
.
.
fixed font.
- 6x13, ,
, Emacs/XEmacs
. , -
, .
6. X Windows.,
, .
, xfontsel (1x),
.
X ,
X resources. ,
~/.Xdefaults:
*font: 6x13
-
, - (. )
. X
client ,
, (
editres (1x))
, . :
$ xterm -font '-cronyx-*-bold-*-*-*-19-*-*-*-*-*-*-*'
$ xfontsel -xrm '*quitButton.font: -*-times-*-*-*-*-13-*-*-*-*-*-koi8-*'
xfontsel.
X (X11R61 )
"" : ,
xmodmap, , Xkb (X
KeyBoard). Xkb !
"russian keyboard". , ,
keysymdef.h.
.
, ,
ASCII codeset -
! ,
keysymdef.h
8 ASCII. ,
, KOI8-R.
Xkb, XF86Config
Keyboard , ,
Xkb. , :
XkbDisable
xmodmap
.
, .
xmodmap.
. ,
, Xmodmap, , -,
, .
XFree . ,
.
xmodmap,
.
. ,
xruskb,
xmodmap.
TeX LaTeX.
,
. ,
Washington AMSTeX (
).
, LaTeX,
.
. - cmcyralt
. (vvzhy@phy.ncu.edu.tw)
(harin@lourie.und.ac.za), - LH
CyrTUG LaTeX2e
. (serge@astro.unc.edu). .
, LaTeX, -
2.09 - , 2e - ( pre-3.0).
LaTeX 2.09, 2e.
,
. , 3
. LaTeX 2e.
, ,
Alt , KOI-8!
, , ,
EmTeX- MS-DOS TeX ( Linux :-).
KOI-8 , ,
. , - ,
KOI-8 Alt. . """.
,
. ,
. "
TeX ".
, ,
-
TeX.
,
, ...
1. :
\input cyracc.def
\font\tencyr=wncyr10
\def\cyr{\tencyr\cyracc}
2. , ,
\cyr
TeX. ,
: a b v g d e \"e zh z i {\u
i} k l m n o p r s t u f kh c ch sh shch {\cprime} y {\cdprime}
\`e yu ya
, .
translit ( """) TeX.
teTeX-rus.
KOI-8 TeX LaTeX.
, , ,
.
: ,
teTeX ( precompiled LaTeX ).
, ,
.
-
Cmcyralt CTAN (Comprehansive
TeX Archive Network)- ftp.dante.de.
: fonts/cmcyralt
-
macros/latex/contrib/others/cmcyralt.
: , Sauter ,
cmcyralt
, CTAN.
:
1. TeX.
(Slackware 2.2) cmcyralt
/usr/lib/texmf/fonts/cm/. src, tfm, vf
. .mf, .tfm, vf .
2. (* .fd)
(
/usr/lib/texmf/tex/latex/fd).
3. (* .sty)
LaTeX (
/usr/lib/texmf/tex/latex/sty).
. ,
LaTeX.
1. hyphen.cfg
.
,
LaTeX - lthyphen.ltx. ,
/usr/lib/texmf/tex/latex/latex-base.
2. rhyphen.tex .
. , .
3. "make" .
Makefile Makefile.unx. .
:
Loading hyphenation patterns for Russian.
O'K, latex.fmt.
, (
/usr/lib/texmf/ini/).
(, )!.
. . ,
.
PostScript - , - OK. ,
LaTeX,
:
\usepackage{cmcyralt}
, README cmcyralt.
: ,
, TeX
. , ,
.pk
( Make TeXPK).
localfont ljfour METAFONT
. ,
cmcyralt. TeX . TeX
( ) ,
.
CyrTUG SunSite.
CyrTUGfonts.tar.gz, CyrTUGmacro.tar.gz, hyphen.tar.Z.
.
, PostScript . -
, ,
PostScript.
.
,
( 99 %
).
PostScript,
:
.
.
,
.
.
,
.
,
.
, Ghostscript. Ghostscript (
gs newspeak) free (, )
PostScript. ;
:
( Unix,
.)
-PostScript
, -
Ghostscript ,
,
PostScript ( HP LaserJet
IV)
,
PostScript
. , gs
.
( pfa pfb) gs,
:
1. gs ( .
/usr/lib/ghostscript/fonts).
2. aliases
Fontmap gs.
GhostScript. ftp.kapella.gpi.ru.
Fontmap.
/pub/cyrillic/psfonts.
README .
- - .
.
( UNIX,
.
,
.
- , ,
, de facto (
...) PosScript,
Adobe.
-
. ,
C , ,
-
ASCII . ,
.
, ,
..
.
,
() - ,
.
,
.
, ,
, ,
, , ,
,
.
.
,
KOI-8,
:
1. KOI-8 .
ftp MS DOS - Internete ( SimTel
<ftp://ftp.simtel.net>).
2.
, , , ,
.
3. rc
.
, Cyrillic
-
.
KOI-8
Alt . :
1. Alt ,
-.
2. Alt
- .
,
KOI-8 Alt .
, , (
" " translit " " ),
/etc/printcap "if ". ,
translit :
if=/usr/bin/translit -t koi8-alt.rus
printcap (5).
, TeX
(. """). TeX ,
TeX ,
.
- PostScript
. " " " ",
.
, ,
. -
TeX, - .
, - ASCII
,
,
TeX .
- " "translit". ,
TeX, translit
Washington AmsTex,
TeX ( - ?)
ASCII KOI-8 ,
.
PostScript.
, .
a2ps.
text-to-PostScript
,
,
.. (
GNU) - enscript.
,
.
, .
.
- . , .
PostScript
. , ,
, , a2ps 4.9.8
. ,
PostScript .
, :
a2ps -X koi8r --print-anyway <file>
GNU enscript
PostScript
ascii codeset. PostScript
, .
( Michael Van Canneyt):
1. enscript. ,
1.5. GNU FTP ,
RPM Redhat.
2. - RedHat Linux,
Cyrillic Textbook
<ftp://ftp.redhat.com/pub/contrib/i386/enscript-fonts-koi8-1.0-1.i386.rpm>.
3. RPM, textbook.tar.gz
sunsite.unc.edu
<ftp://sunsite.unc.edu/pub/academic/russian-studies/Software/>
( ).
, enscript
( /usr/share/enscript). ,
:
mkafmmap *.afm
4. . KOI8-R
:
enscript --font=Textbook8 --encoding=koi8 some.file
,
, -
, rtxt2ps.
PostScript.
(, ) -
.
, -
8 .
,
ASCII "" .
,
bash 8 .
~/.inputrc. : set
meta-flag on set convert-meta off set output-meta on
.cshrc :
setenv LC_CTYPE iso_8859_5
stty pass8
POSIX stty ( Linux),
:
stty -istrip cs8
, , ,
Alt . ,
Alt DOS,
DOS, alt-.
()
. DOS
. rk . ,
, X dosemu.
- r .
, Alt
KOI8. X Windows (
1.14, , 2.0).
Internet , ftp
<ftp://ftp.kiae.su/pub/cyrillic/msdos>.
X dosemu
X .
. - VGA
dosemu, Alt . ,
- .
FTP
<ftp://ftp.netvision.net.il/home/b/belikoff/cyrillic>.
dosemu
X. , " "
4.1 X ''.
dosemu.
VGA, .
, /etc/dosemu.conf:
# Font to use (without filename extensions). For example:
X { updatefreq 8 title "MS DOS" icon_name "xdos" font "vga-alt"}
, .
, X .
, .
: rk . , cyrkeyb Pete Kvitek.
emacs
.emacs ( ,
Cyrillic X
):
(standard-display-european t)
(set-input-mode (car (current-input-mode))
(nth 1 (current-input-mode))
0)
-.
, ,
emacs .
,
.
( X ). ,
emacs, emacs
.
.
(valery@math.uga.edu) russian.el
<http://www.math.uga.edu/~valery/russian.el>
(
-).
- , emacs
,
. , Syntax
Case emacs:
;; there is a garbage in the variables below, since SGML doesn't like
;; cyrillic characters. You have to put the uppercase and lowercase
;; parts of the Russian alphabet respectively (see the actual files)
(setq *russian-abc-ucase* "*** SGML SUCKS ***")
(setq *russian-abc-lcase* "*** SGML SUCKS ***")
(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))))
rusup.el , ,
.
~/.emacs.
- ,
. Per Abrahamsen
(abraham@iesd.auc.dk) ftp.iesd.auc.dk.
russian.el,
.
rspell Neal Dalton
(nrd@cray.com) - plug-in GNU ispell ,
. -
.
-asis.
public domain ksh - pdksh 5.1.3,
8 vi.
:
set -o vi
, less KOI-8,
:
LESSCHARSET=latin1
LESS="-e -r"
2.6,
- Character set option.
8.10. Mc (The Midnight Commander)
, full 8 bit
Optiond/Display .
,
" " " " .
off-topic, mc Xterm :
COLORTERM:
COLORTERM= ; export COLORTERM
, Netscape 3.
Netscape , www.netscape.com.
( 5 Netscape GNU)
HTML
, :
Options/Document Encoding Cyrillic(KOI-8).
Options/General Preferences/Fonts Cyrillic
(KOI-8) encoding, Times(Cronyx)
Courier(Cronyx) .
.
:
. ,
, .
,
, :
1. Netscape (
Netscape.ad) ~/Netscape.
2. , :
*documentFonts.charset*iso8859-1: koi8-r
koi8-r ,
,
(. """).
. - KOI-8
netscape .
KOI-8 ,
Netscape, Netscape ,
.
~/.pinerc
, /usr/lib/pine.conf :
character-set=ISO-8859-5
, shell
. rlogin ,
" rlogin -8 ".
8, sendmail 8
. -
EightBitMode 7 mailers /etc/sendmail.cf.
"Sendmail. Operation and Installation Guide" .
, StarOffice, libc.
, .
()
StarOffice. "" "". ,
,
, xemacs .
.
- , . """.
.
, " " rusup.el " "
xemacs,
. .
, csh (. "
"csh"). - .zshrc /etc/zshrc.
9. Localization and Internationalization
, ,
. , ,
, . ,
.
,
.
, ,
.
,
; ,
.
, .
.
c :
.
,
. .
- //.
, - ...
,
. ,
,
,
"" () .
, .
( i18n )
, ,
, .
,
,
.
,
;
.
.
,
.
- locale. locale
,
. ,
locale . ,
locale- /
/ . , /
- /
/ , /
- / /
.
locale - ,
:
1.
2.
3. ( . )
4. /
RedHat 4.1, ,
locale: C (libc) X
.
locale .
locale ,
LANG. ,
sh:
LANG=ru_RU
export LANG
, locale
. , (
) ru_RU locale,
POSIX . ,
,
locale.
:
LANG=ru_RU
LC_NUMERIC=POSIX
export LANG LC_NUMERIC
, . man locale (7).
Linux.
, Linux libc 5.3.12,
RedHat 4.1 locale.
Interneta (, , ).
, locale
" locale -a ". locale
libc.
, Linux GNU libc
(glibc 2, posix-
locale). RedHat 5.0
glibc.
X,
locale. (XFree86 3.3),
locale.
. , ,
usr/lib/X11/locale/ ( ).
, , koi8-r
iso8859-5.
locale,
, .
, API,
, locale. ,
, locale
- ,
locale ( ).
man setlocale (3):
locale,
setlocale (LC_ALL, "") ,
, localeconv ()
locale - strcoll () strxfrm
() .
SunSoft, , 5 :
1. 8 .
setlocale (), -
8- .
ctype.h limits.h,
signed/unsigned .
( ) -
.
()
:
if (c >= 'A' && c <= 'Z') {
...
,
locale ctype.h.
2. , , .
strcoll () strxfrm () strcmp () ,
time (), localtime (), strftime () /
, , localeconv ()
.
3. " ".
"
".
.
,
. ,
gettext () (Sun/POSIX ), catgets ()
(X/Open ). . """.
4. EUC/Unicode . ,
char. wchar_t,
, ,
Unicode. ANSI C API.
, ., (""") (""").
,
, ( i18n
)
- .
, ,
. , (
) . , ,
!
GNU
. Ulrich Drepper
(drepper@ipd.info.uni-karlsruhe.de) gettext.
GNU , prep.ai.mit.edu.
,
.
, gettext
.
: gettext
GNU
, ! GNU
, locale .
,
( , ).
, : .po
, ,
.
, ,
! Ulrich
Drepper (drepper@ipd.info.uni-karlsruhe.de).
, KOI-8 Alt
. SovInformBureau ftp.funet.fi
.
emacs (. " "Emacs").
, translit.
codesets
TeX (. """) . ,
transli RPMt.
ftp:ftp:
1. . KOI-8 <http://www.nagual.ru/~ache/koi8.html>.
KOI-8.
2. Ulrich Drepper. GNU
<http://i44www.info.uni-karlsruhe.de/~drepper/conf96/paper.html>.
GNU i18n.
3. Michael Karl Gschwind.
<http://www.vlsivie.tuwien.ac.at/mike/i18n.html>. Various
resources on i18n.
4. .
<http://sunsite.oit.unc.edu/sergei/Software/Software.html>.
.
5. The Open Group Single UNIX specification
<http://www.UNIX-systems.org/online.html>.
6. Alec Voropay. Localization as it is
<http://www.sensi.org/~alec/locale>. locale
...
a2ps homepage <http://www-inf.enst.fr/~demaille/a2ps.html>
Linux <http://sunsite.unc.edu/mdw/linux.html>
ftp.kiae.su
<ftp://ftp.kiae.su/cyrillic/>
ftp.relcom.ru
<ftp://ftp.relcom.ru/cyrillic/>
<ftp://ftp.funet.fi/pub/culture/russian/comp/>
Cronyx <http://www.cronyx.ru> -
X Windows.
Ghostscript
<ftp://ftp.kapella.gpi.ru/pub/cyrillic/psfonts>
X
<ftp://ftp.kiae.su/cyrillic/x11/fonts/xrus-2.1.1-src.tgz>
Ghostscript <http://www.cs.wisc.edu/~ghost/index.html>
GNU enscript <ftp://prep.ai.mit.edu/pub/gnu>
Relcom.fido.ru.unix.
RFC 1489 <file://ds.internic.net/rfc/rfc1489.txt>
Rspell GNU ispell
<ftp://sunsite.unc.edu/pub/academic/russian-studies/Software/rspell.tar.gz>
SovInformBureau <http://www.siber.com/sib/russify/>
TeTeX
<ftp://xray.sai.msu.su/pub/outgoing/teTeX-rus/>
Kbd Linux
<ftp://sunsite.unc.edu/pub/Linux/system/Keyboards/>
Emacs <ftp://ftp.iesd.auc.dk/>
rtxt2ps <http://www.siber.com/sib/russify/converters/>
russian.el emacs
<http://www.math.uga.edu/~valery/russian.el>
translit
<ftp://ftp.osc.edu/pub/russian/translit/translit.tar.Z>
xruskb <ftp://ftp.relcom.ru/pub/x11/cyrillic/>
<ftp://sunsite.unc.edu/pub/academic/russian-studies/Software>
X <ftp://ftp.switch.ch/mirror/linux/X11/fonts/>
XFree86 FTP <http://www.xfree86.org>
Last-modified: Tue, 29 Sep 1998 04:41:46 GMT