1 |
;;; cyrillic.el --- Support for Cyrillic -*- coding: iso-2022-7bit; -*- |
;;; cyrillic.el --- support for Cyrillic -*- coding: iso-2022-7bit; -*- |
2 |
|
|
3 |
;; Copyright (C) 1995 Electrotechnical Laboratory, JAPAN. |
;; Copyright (C) 1995 Electrotechnical Laboratory, JAPAN. |
4 |
;; Licensed to the Free Software Foundation. |
;; Licensed to the Free Software Foundation. |
5 |
|
;; Copyright (C) 2001 Free Software Foundation, Inc. |
6 |
|
|
7 |
;; Keywords: multilingual, Cyrillic |
;; Keywords: multilingual, Cyrillic, i18n |
8 |
|
|
9 |
;; This file is part of GNU Emacs. |
;; This file is part of GNU Emacs. |
10 |
|
|
26 |
;;; Commentary: |
;;; Commentary: |
27 |
|
|
28 |
;; The character set ISO8859-5 is supported. KOI-8 and ALTERNATIVNYJ |
;; The character set ISO8859-5 is supported. KOI-8 and ALTERNATIVNYJ |
29 |
;; are converted to ISO8859-5 internally. See |
;; are converted to ISO8859-5+Unicode internally. See |
30 |
;; <URL:http://www.ecma.ch/ecma1/STAND/ECMA-113.HTM>. For more info |
;; <URL:http://www.ecma.ch/ecma1/STAND/ECMA-113.HTM>. For more info |
31 |
;; on Cyrillic charsets, see |
;; on Cyrillic charsets, see |
32 |
;; <URL:http://czyborra.com/charsets/cyrillic.html>. KOI-8 and |
;; <URL:http://czyborra.com/charsets/cyrillic.html>. |
33 |
;; ALTERNATIVNYJ are converted to ISO8859-5 internally. |
|
34 |
|
;; See codepages.el for straight Unicode definitions of the non-ISO |
35 |
|
;; charsets. |
36 |
|
|
37 |
;;; Code: |
;;; Code: |
38 |
|
|
39 |
;; Cyrillic (general) |
;; Cyrillic (general) |
40 |
|
|
41 |
;; ISO-8859-5 staff |
;; ISO-8859-5 stuff |
42 |
|
|
43 |
(make-coding-system |
(make-coding-system |
44 |
'cyrillic-iso-8bit 2 ?5 |
'cyrillic-iso-8bit 2 ?5 |
169 |
80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 |
80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 |
170 |
96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 |
96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 |
171 |
112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 |
112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 |
172 |
?$,2 (B ?$,2 "(B ?$,2 ,(B ?$,2 0(B ?$,2 4(B ?$,2 8(B ?$,2 <(B ?$,2 D(B ?$,2 L(B ?$,2 T(B ?$,2 \(B ?$,2!@(B ?$,2!D(B ?$,2!H(B ?$,2!L(B ?$,2!P(B |
;; All Unicode: |
173 |
?$,2!Q(B ?$,2!R(B ?$,2!S(B ?$,1{ (B ?$,2!`(B ?$,1x9(B ?$,1x:(B ?$,1xh(B ?$,1y$(B ?$,1y%(B ?,A (B ?$,1{!(B ?,A0(B ?,A2(B ?,A7(B ?,Aw(B |
;; ?\$,2 (B ?\$,2 "(B ?\$,2 ,(B ?\$,2 0(B ?\$,2 4(B ?\$,2 8(B ?\$,2 <(B ?\$,2 D(B ?\$,2 L(B ?\$,2 T(B ?\$,2 \(B ?\$,2!@(B ?\$,2!D(B ?\$,2!H(B ?\$,2!L(B ?\$,2!P(B |
174 |
?$,2 p(B ?$,2 q(B ?$,2 r(B ?,Lq(B ?,Lt(B ?$,2 t(B ?,Lv(B ?,Lw(B ?$,2 w(B ?$,2 x(B ?$,2 y(B ?$,2 z(B ?$,2 {(B ?$,1)Q(B ?$,2 }(B ?$,2 ~(B |
;; ?\$,2!Q(B ?\$,2!R(B ?\$,2!S(B ?\$,1{ (B ?\$,2!`(B ?\$,1x9(B ?\$,1x:(B ?\$,1xh(B ?\$,1y$(B ?\$,1y%(B ?\,A (B ?\$,1{!(B ?\,A0(B ?\,A2(B ?\,A7(B ?\,Aw(B |
175 |
?$,2 (B ?$,2! (B ?$,2!!(B ?,L!(B ?,L$(B ?$,2!#(B ?,L&(B ?,L'(B ?$,2!&(B ?$,2!'(B ?$,2!((B ?$,2!)(B ?$,2!*(B ?$,1)P(B ?$,2!,(B ?,A)(B |
;; ?\$,2 p(B ?\$,2 q(B ?\$,2 r(B ?\$,1(q(B ?\$,1(t(B ?\$,2 t(B ?\$,1(v(B ?\$,1(w(B ?\$,2 w(B ?\$,2 x(B ?\$,2 y(B ?\$,2 z(B ?\$,2 {(B ?\$,1)Q(B ?\$,2 }(B ?\$,2 ~(B |
176 |
?,Ln(B ?,LP(B ?,LQ(B ?,Lf(B ?,LT(B ?,LU(B ?,Ld(B ?,LS(B ?,Le(B ?,LX(B ?,LY(B ?,LZ(B ?,L[(B ?,L\(B ?,L](B ?,L^(B |
;; ?\$,2 (B ?\$,2! (B ?\$,2!!(B ?\$,1(!(B ?\$,1($(B ?\$,2!#(B ?\$,1(&(B ?\$,1('(B ?\$,2!&(B ?\$,2!'(B ?\$,2!((B ?\$,2!)(B ?\$,2!*(B ?\$,1)P(B ?\$,2!,(B ?\,A)(B |
177 |
?,L_(B ?,Lo(B ?,L`(B ?,La(B ?,Lb(B ?,Lc(B ?,LV(B ?,LR(B ?,Ll(B ?,Lk(B ?,LW(B ?,Lh(B ?,Lm(B ?,Li(B ?,Lg(B ?,Lj(B |
;; ?\$,1(n(B ?\$,1(P(B ?\$,1(Q(B ?\$,1(f(B ?\$,1(T(B ?\$,1(U(B ?\$,1(d(B ?\$,1(S(B ?\$,1(e(B ?\$,1(X(B ?\$,1(Y(B ?\$,1(Z(B ?\$,1([(B ?\$,1(\(B ?\$,1(](B ?\$,1(^(B |
178 |
?,LN(B ?,L0(B ?,L1(B ?,LF(B ?,L4(B ?,L5(B ?,LD(B ?,L3(B ?,LE(B ?,L8(B ?,L9(B ?,L:(B ?,L;(B ?,L<(B ?,L=(B ?,L>(B |
;; ?\$,1(_(B ?\$,1(o(B ?\$,1(`(B ?\$,1(a(B ?\$,1(b(B ?\$,1(c(B ?\$,1(V(B ?\$,1(R(B ?\$,1(l(B ?\$,1(k(B ?\$,1(W(B ?\$,1(h(B ?\$,1(m(B ?\$,1(i(B ?\$,1(g(B ?\$,1(j(B |
179 |
?,L?(B ?,LO(B ?,L@(B ?,LA(B ?,LB(B ?,LC(B ?,L6(B ?,L2(B ?,LL(B ?,LK(B ?,L7(B ?,LH(B ?,LM(B ?,LI(B ?,LG(B ?,LJ(B ] |
;; ?\$,1(N(B ?\$,1(0(B ?\$,1(1(B ?\$,1(F(B ?\$,1(4(B ?\$,1(5(B ?\$,1(D(B ?\$,1(3(B ?\$,1(E(B ?\$,1(8(B ?\$,1(9(B ?\$,1(:(B ?\$,1(;(B ?\$,1(<(B ?\$,1(=(B ?\$,1(>(B |
180 |
|
;; ?\$,1(?(B ?\$,1(O(B ?\$,1(@(B ?\$,1(A(B ?\$,1(B(B ?\$,1(C(B ?\$,1(6(B ?\$,1(2(B ?\$,1(L(B ?\$,1(K(B ?\$,1(7(B ?\$,1(H(B ?\$,1(M(B ?\$,1(I(B ?\$,1(G(B ?\$,1(J(B |
181 |
|
?\$,2 (B ?\$,2 "(B ?\$,2 ,(B ?\$,2 0(B ?\$,2 4(B ?\$,2 8(B ?\$,2 <(B ?\$,2 D(B ?\$,2 L(B ?\$,2 T(B ?\$,2 \(B ?\$,2!@(B ?\$,2!D(B ?\$,2!H(B ?\$,2!L(B ?\$,2!P(B |
182 |
|
?\$,2!Q(B ?\$,2!R(B ?\$,2!S(B ?\$,1{ (B ?\$,2!`(B ?\$,1x9(B ?\$,1x:(B ?\$,1xh(B ?\$,1y$(B ?\$,1y%(B ?\,L (B ?\$,1{!(B ?\,A0(B ?\,A2(B ?\,A7(B ?\,Aw(B |
183 |
|
?\$,2 p(B ?\$,2 q(B ?\$,2 r(B ?\,Lq(B ?\,Lt(B ?\$,2 t(B ?\,Lv(B ?\,Lw(B ?\$,2 w(B ?\$,2 x(B ?\$,2 y(B ?\$,2 z(B ?\$,2 {(B ?\$,1)Q(B ?\$,2 }(B ?\$,2 ~(B |
184 |
|
?\$,2 (B ?\$,2! (B ?\$,2!!(B ?\,L!(B ?\,L$(B ?\$,2!#(B ?\,L&(B ?\,L'(B ?\$,2!&(B ?\$,2!'(B ?\$,2!((B ?\$,2!)(B ?\$,2!*(B ?\$,1)P(B ?\$,2!,(B ?\,A)(B |
185 |
|
?\,Ln(B ?\,LP(B ?\,LQ(B ?\,Lf(B ?\,LT(B ?\,LU(B ?\,Ld(B ?\,LS(B ?\,Le(B ?\,LX(B ?\,LY(B ?\,LZ(B ?\,L[(B ?\,L\(B ?\,L](B ?\,L^(B |
186 |
|
?\,L_(B ?\,Lo(B ?\,L`(B ?\,La(B ?\,Lb(B ?\,Lc(B ?\,LV(B ?\,LR(B ?\,Ll(B ?\,Lk(B ?\,LW(B ?\,Lh(B ?\,Lm(B ?\,Li(B ?\,Lg(B ?\,Lj(B |
187 |
|
?\,LN(B ?\,L0(B ?\,L1(B ?\,LF(B ?\,L4(B ?\,L5(B ?\,LD(B ?\,L3(B ?\,LE(B ?\,L8(B ?\,L9(B ?\,L:(B ?\,L;(B ?\,L<(B ?\,L=(B ?\,L>(B |
188 |
|
?\,L?(B ?\,LO(B ?\,L@(B ?\,LA(B ?\,LB(B ?\,LC(B ?\,L6(B ?\,L2(B ?\,LL(B ?\,LK(B ?\,L7(B ?\,LH(B ?\,LM(B ?\,LI(B ?\,LG(B ?\,LJ(B] |
189 |
"Cyrillic KOI8-U decoding table.") |
"Cyrillic KOI8-U decoding table.") |
190 |
|
|
191 |
(let ((table (make-translation-table-from-vector |
(let ((table (make-translation-table-from-vector |
239 |
|
|
240 |
(set-language-info-alist |
(set-language-info-alist |
241 |
"Cyrillic-KOI8-U" `((charset cyrillic-iso8859-5) |
"Cyrillic-KOI8-U" `((charset cyrillic-iso8859-5) |
|
(nonascii-translation |
|
|
. ,(get 'cyrillic-koi8-u-nonascii-translation-table |
|
|
'translation-table)) |
|
242 |
(coding-system cyrillic-koi8-u) |
(coding-system cyrillic-koi8-u) |
243 |
(coding-priority cyrillic-koi8-u) |
(coding-priority cyrillic-koi8-u) |
244 |
(input-method . "cyrillic-jcuken") |
(input-method . "cyrillic-ukrainian") |
245 |
(features cyril-util) |
(features cyril-util) |
246 |
(unibyte-display . cyrillic-koi8-u) |
(unibyte-display . cyrillic-koi8-u) |
|
(sample-text . "Russian (,L@caaZXY(B) ,L7T`PRabRcYbU(B!") |
|
247 |
(documentation . "Support for Cyrillic KOI8-U.")) |
(documentation . "Support for Cyrillic KOI8-U.")) |
248 |
'("Cyrillic")) |
'("Cyrillic")) |
249 |
|
|
341 |
(documentation . "Support for Cyrillic ALTERNATIVNYJ.")) |
(documentation . "Support for Cyrillic ALTERNATIVNYJ.")) |
342 |
'("Cyrillic")) |
'("Cyrillic")) |
343 |
|
|
344 |
|
(set-language-info-alist |
345 |
|
"Windows-1251" `((coding-system windows-1251) |
346 |
|
(coding-priority windows-1251) |
347 |
|
(features codepages) |
348 |
|
(documentation . "Support for windows-1251 character set.")) |
349 |
|
'("Cyrillic")) |
350 |
|
|
351 |
|
(set-language-info-alist |
352 |
|
"Cyrillic-KOI8-T" `((coding-system cyrillic-koi8-t) |
353 |
|
(coding-priority cyrillic-koi8-t) |
354 |
|
(features codepages) |
355 |
|
(documentation . "Support for Cyrillic KOI8-T.")) |
356 |
|
'("Cyrillic")) |
357 |
|
|
358 |
|
(set-language-info-alist |
359 |
|
"Bulgarian" `((coding-system windows-1251) |
360 |
|
(coding-priority windows-1251) |
361 |
|
(input-method . "cyrillic-translit-bulgarian") |
362 |
|
(features codepages) |
363 |
|
(documentation . "Support for Bulgrian with windows-1251 character set.")) |
364 |
|
'("Cyrillic")) |
365 |
|
|
366 |
|
(set-language-info-alist |
367 |
|
"Belarussian" `((coding-system windows-1251) |
368 |
|
(coding-priority windows-1251) |
369 |
|
(input-method . "cyrillic-beylorussian") |
370 |
|
(features codepages) |
371 |
|
(documentation |
372 |
|
. "Support for Belarussian with windows-1251 character set.")) |
373 |
|
'("Cyrillic")) |
374 |
|
|
375 |
(provide 'cyrillic) |
(provide 'cyrillic) |
376 |
|
|
377 |
;;; cyrillic.el ends here |
;;; cyrillic.el ends here |