1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
|
# Jan Labanowski, jkl@osc.edu, Jan 10, 1993
# File koi8_7.rus
# This is a transliteration data file for converting from KOI8 (RELCOM,
# GOST 19768-74) to KOI7. The KOI7 character codes for Russian letters
# overlap with Latin letters. To mark what is in Russian and what in English,
# The SHIFT-OUT and SHIFT-IN characters are used. The SHIFT-OUT and SHIFT-IN
# switch between Latin and Russian character set. The SHIFT-OUT switches
# to Russian letters.
# The SHIFT-OUT character is CTRL-N (\14 = \0x0E = \0o16).
# The SHIFT-IN character is CTRL-O (\15 = \0x0F = \0o17). It switches back to
# Latin characters. You might want to read comments in file koi7_8.rus
#
# To be used with translit.c program by Jan Labanowski
1 file version number
" " # string delimiters
[ ] # list delimites
{ } # regular expression delimiters
#starting sequence
""
#ending sequence
""
0 # number of input SHIFT sequences, only one set of output characters
2 # number of output SHIFT sequences, only one set of input characters
"" "" # Latin characters
"\0x0E" "\0x0F" # Russian letters ^N...^O
# "{{" "}}" # Russian letters {{...}}
# conversion table
# ASCII characters (set 1) no-change
# Russian letters could be given as a range like:
# 0 [\0xA3\0xB3\0xFF\0xC0-\0xFE] 2 [#$"@-~]
# but then we would miss the nice table for the humans
# inp_set_numb inp_seq out_set_numb out_seq
# This line is given here so the appropriate SHIFT-OUT/IN sequences are
# sent to output. Note that it does not include control characters, spaces
# digits, punctuation, etc., which can appear in both sets (at least this
# is my understanding).
0 [#$"@-~] 1 [#$"@-~] #Pass ASCII, no change
# Russian letters
0 "\0xA3" 2 "#" #small yo
0 "\0xB3" 2 "$" #capital YO
0 "\0xE1" 2 "a" #capital A
0 "\0xE2" 2 "b" #capital Be
0 "\0xF7" 2 "w" #capital Ve
0 "\0xE7" 2 "g" #capital Ghe
0 "\0xE4" 2 "d" #capital De
0 "\0xE5" 2 "e" #capital Ie
0 "\0xF6" 2 "v" #capital Zhe
0 "\0xFA" 2 "z" #capital Ze
0 "\0xE9" 2 "i" #capital I
0 "\0xEA" 2 "j" #capital short I
0 "\0xEB" 2 "k" #capital Ka
0 "\0xEC" 2 "l" #capital El
0 "\0xED" 2 "m" #capital Em
0 "\0xEE" 2 "n" #capital En
0 "\0xEF" 2 "o" #capital O
0 "\0xF0" 2 "p" #capital Pe
0 "\0xF2" 2 "r" #capital Er
0 "\0xF3" 2 "s" #capital Es
0 "\0xF4" 2 "t" #capital Te
0 "\0xF5" 2 "u" #capital U
0 "\0xE6" 2 "f" #capital Ef
0 "\0xE8" 2 "h" #capital Kha
0 "\0xE3" 2 "c" #capital Tse
0 "\0xFE" 2 "~" #capital Che
0 "\0xFB" 2 "{" #capital Sha
0 "\0xFD" 2 "}" #capital Shcha
0 "\0xFF" 2 "\0x22" #capital hard sign (Ier)
0 "\0xF9" 2 "y" #capital Y (Iery)
0 "\0xF8" 2 "x" #capit soft sign(Ierik)
0 "\0xFC" 2 "|" #capit reverse rounded E
0 "\0xE0" 2 "`" #capital Yu
0 "\0xF1" 2 "q" #capital Ya
0 "\0xC1" 2 "A" #small a
0 "\0xC2" 2 "B" #small be
0 "\0xD7" 2 "W" #small ve
0 "\0xC7" 2 "G" #small ghe
0 "\0xC4" 2 "D" #small de
0 "\0xC5" 2 "E" #small ie
0 "\0xD6" 2 "V" #small zhe
0 "\0xDA" 2 "Z" #small z
0 "\0xC9" 2 "I" #small i
0 "\0xCA" 2 "J" #small short i
0 "\0xCB" 2 "K" #small ka
0 "\0xCC" 2 "L" #small el
0 "\0xCD" 2 "M" #small em
0 "\0xCE" 2 "N" #small en
0 "\0xCF" 2 "O" #small o
0 "\0xD0" 2 "P" #small pe
0 "\0xD2" 2 "R" #small er
0 "\0xD3" 2 "S" #small es
0 "\0xD4" 2 "T" #small te
0 "\0xD5" 2 "U" #small u
0 "\0xC6" 2 "F" #small ef
0 "\0xC8" 2 "H" #small kha
0 "\0xC3" 2 "C" #small tse
0 "\0xDE" 2 "^" #small che
0 "\0xDB" 2 "[" #small sha
0 "\0xDD" 2 "]" #small shcha
0 "\0xDF" 2 "_" #small hard sign (ier)
0 "\0xD9" 2 "Y" #small y (iery)
0 "\0xD8" 2 "X" #small soft sign (ierik)
0 "\0xDC" 2 "\" #small rev rounded e
0 "\0xC0" 2 "@" #small yu
0 "\0xD1" 2 "Q" #small ya
|