diff options
| author | Kenichi Handa | 1998-08-02 01:06:57 +0000 |
|---|---|---|
| committer | Kenichi Handa | 1998-08-02 01:06:57 +0000 |
| commit | 70c58a1f514e692f92aa328604ac5ddb6766212f (patch) | |
| tree | d9ddab59444a5adf652a8a95d354cb05e77bed1b | |
| parent | 0c9470b3032347ba0115a47fc796ce3e2e72580b (diff) | |
| download | emacs-70c58a1f514e692f92aa328604ac5ddb6766212f.tar.gz emacs-70c58a1f514e692f92aa328604ac5ddb6766212f.zip | |
(cyrillic-koi8-r-decode-table): New
variable.
(cyrillic-koi8-r-encode-table): Likewise.
(ccl-decode-koi8): Use cyrillic-koi8-r-decode-table.
(ccl-encode-koi8): Use cyrillic-koi8-r-encode-table.
(ccl-encode-koi8-font): Likewise.
(cyrillic-koi8-r-nonascii-translation-table): New variable.
("Cyrillic-KOI8"): Add nonascii-translation-table and
charset-origin-alist properties.
(cyrillic-alternativnyj-decode-table): New variable.
(cyrillic-alternativnyj-encode-table): Likewise.
(ccl-decode-alternativnyj): Use
cyrillic-alternativnyj-decode-table.
(ccl-encode-alternativnyj): Use
cyrillic-alternativnyj-encode-table.
(ccl-encode-alternativnyj-font): Likewise.
(cyrillic-alternativnyj-nonascii-translation-table): New variable.
("Cyrillic-ALT"): Add nonascii-translation-table and
charset-origin-alist properties.
| -rw-r--r-- | lisp/language/cyrillic.el | 192 |
1 files changed, 111 insertions, 81 deletions
diff --git a/lisp/language/cyrillic.el b/lisp/language/cyrillic.el index 924b8aa826e..22cf312d64c 100644 --- a/lisp/language/cyrillic.el +++ b/lisp/language/cyrillic.el | |||
| @@ -54,28 +54,49 @@ | |||
| 54 | 54 | ||
| 55 | ;; KOI-8 staff | 55 | ;; KOI-8 staff |
| 56 | 56 | ||
| 57 | (eval-and-compile | ||
| 58 | |||
| 59 | (defvar cyrillic-koi8-r-decode-table | ||
| 60 | [ | ||
| 61 | 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | ||
| 62 | 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 | ||
| 63 | 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 | ||
| 64 | 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 | ||
| 65 | 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 | ||
| 66 | 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 | ||
| 67 | 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 | ||
| 68 | 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 | ||
| 69 | 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 | ||
| 70 | 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 | ||
| 71 | 32 32 32 ?,Lq(B 32 32 32 32 32 32 32 32 32 32 32 32 | ||
| 72 | 32 32 32 ?,L!(B 32 32 32 32 32 32 32 32 32 32 32 32 | ||
| 73 | ?,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 | ||
| 74 | ?,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 | ||
| 75 | ?,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 | ||
| 76 | ?,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 ] | ||
| 77 | "Cyrillic KOI8-R decoding table.") | ||
| 78 | |||
| 79 | (defvar cyrillic-koi8-r-encode-table | ||
| 80 | (let ((table (make-vector 256 32)) | ||
| 81 | (i 0)) | ||
| 82 | (while (< i 256) | ||
| 83 | (let* ((ch (aref cyrillic-koi8-r-decode-table i)) | ||
| 84 | (split (split-char ch))) | ||
| 85 | (if (eq (car split) 'cyrillic-iso8859-5) | ||
| 86 | (aset table (logior (nth 1 split) 128) i) | ||
| 87 | (if (/= ch 32) | ||
| 88 | (aset table ch i)))) | ||
| 89 | (setq i (1+ i))) | ||
| 90 | table) | ||
| 91 | "Cyrillic KOI8-R encoding table.") | ||
| 92 | |||
| 93 | ) | ||
| 94 | |||
| 57 | (define-ccl-program ccl-decode-koi8 | 95 | (define-ccl-program ccl-decode-koi8 |
| 58 | '(3 | 96 | `(3 |
| 59 | ((read r0) | 97 | ((read r0) |
| 60 | (loop | 98 | (loop |
| 61 | (write-read-repeat | 99 | (write-read-repeat r0 ,cyrillic-koi8-r-decode-table)))) |
| 62 | r0 | ||
| 63 | [0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | ||
| 64 | 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 | ||
| 65 | 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 | ||
| 66 | 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 | ||
| 67 | 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 | ||
| 68 | 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 | ||
| 69 | 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 | ||
| 70 | 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 | ||
| 71 | 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 | ||
| 72 | 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 | ||
| 73 | 32 32 32 ?,Lq(B 32 32 32 32 32 32 32 32 32 32 32 32 | ||
| 74 | 32 32 32 ?,L!(B 32 32 32 32 32 32 32 32 32 32 32 32 | ||
| 75 | ?,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 | ||
| 76 | ?,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 | ||
| 77 | ?,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 | ||
| 78 | ?,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 ])))) | ||
| 79 | "CCL program to decode KOI8.") | 100 | "CCL program to decode KOI8.") |
| 80 | 101 | ||
| 81 | (define-ccl-program ccl-encode-koi8 | 102 | (define-ccl-program ccl-encode-koi8 |
| @@ -85,16 +106,7 @@ | |||
| 85 | (if (r0 != ,(charset-id 'cyrillic-iso8859-5)) | 106 | (if (r0 != ,(charset-id 'cyrillic-iso8859-5)) |
| 86 | (write-read-repeat r0) | 107 | (write-read-repeat r0) |
| 87 | ((read r0) | 108 | ((read r0) |
| 88 | (r0 -= 160) | 109 | (write-read-repeat r0 , cyrillic-koi8-r-encode-table)))))) |
| 89 | (write-read-repeat | ||
| 90 | r0 | ||
| 91 | [ 32 179 32 32 32 32 32 32 32 32 32 32 32 32 32 32 | ||
| 92 | 225 226 247 231 228 229 246 250 233 234 235 236 237 238 239 240 | ||
| 93 | 242 243 244 245 230 232 227 254 251 253 255 249 248 252 224 241 | ||
| 94 | 193 194 215 199 196 197 214 218 201 202 203 204 205 206 207 208 | ||
| 95 | 210 211 212 213 198 200 195 222 219 221 223 217 216 220 192 209 | ||
| 96 | 32 163 32 32 32 32 32 32 32 32 32 32 32 32 32 32]) | ||
| 97 | ))))) | ||
| 98 | "CCL program to encode KOI8.") | 110 | "CCL program to encode KOI8.") |
| 99 | 111 | ||
| 100 | (make-coding-system | 112 | (make-coding-system |
| @@ -106,60 +118,84 @@ | |||
| 106 | ?R "KOI8 8-bit encoding for Cyrillic (MIME: KOI8-R)" | 118 | ?R "KOI8 8-bit encoding for Cyrillic (MIME: KOI8-R)" |
| 107 | '(ccl-decode-koi8 . ccl-encode-koi8) | 119 | '(ccl-decode-koi8 . ccl-encode-koi8) |
| 108 | '((safe-charsets ascii cyrillic-iso8859-5) | 120 | '((safe-charsets ascii cyrillic-iso8859-5) |
| 109 | (mime-charset . koi8-r))) | 121 | (mime-charset . koi8-r) |
| 122 | (valid-codes (0 127) 163 179 (192 255)))) | ||
| 110 | 123 | ||
| 111 | (define-coding-system-alias 'koi8-r 'cyrillic-koi8) | 124 | (define-coding-system-alias 'koi8-r 'cyrillic-koi8) |
| 112 | (define-coding-system-alias 'koi8 'cyrillic-koi8) | 125 | (define-coding-system-alias 'koi8 'cyrillic-koi8) |
| 113 | 126 | ||
| 114 | (define-ccl-program ccl-encode-koi8-font | 127 | (define-ccl-program ccl-encode-koi8-font |
| 115 | '(0 | 128 | `(0 |
| 116 | ((r1 -= 32) | 129 | ((r1 |= 128) |
| 117 | (r1 = r1 | 130 | (r1 = r1 ,cyrillic-koi8-r-encode-table))) |
| 118 | [ 32 179 32 32 32 32 32 32 32 32 32 32 32 32 32 32 | ||
| 119 | 225 226 247 231 228 229 246 250 233 234 235 236 237 238 239 240 | ||
| 120 | 242 243 244 245 230 232 227 254 251 253 255 249 248 252 224 241 | ||
| 121 | 193 194 215 199 196 197 214 218 201 202 203 204 205 206 207 208 | ||
| 122 | 210 211 212 213 198 200 195 222 219 221 223 217 216 220 192 209 | ||
| 123 | 32 163 32 32 32 32 32 32 32 32 32 32 32 32 32 32]) | ||
| 124 | )) | ||
| 125 | "CCL program to encode Cyrillic chars to KOI font.") | 131 | "CCL program to encode Cyrillic chars to KOI font.") |
| 126 | 132 | ||
| 127 | (setq font-ccl-encoder-alist | 133 | (setq font-ccl-encoder-alist |
| 128 | (cons (cons "koi8" ccl-encode-koi8-font) font-ccl-encoder-alist)) | 134 | (cons (cons "koi8" ccl-encode-koi8-font) font-ccl-encoder-alist)) |
| 129 | 135 | ||
| 136 | (defvar cyrillic-koi8-r-nonascii-translation-table | ||
| 137 | (make-translation-table-from-vector cyrillic-koi8-r-decode-table) | ||
| 138 | "Value of `nonascii-translation-table' in Cyrillic-KOI8 language environment..") | ||
| 139 | |||
| 130 | (set-language-info-alist | 140 | (set-language-info-alist |
| 131 | "Cyrillic-KOI8" '((setup-function . setup-cyrillic-koi8-environment) | 141 | "Cyrillic-KOI8" `((setup-function . setup-cyrillic-koi8-environment) |
| 132 | (charset cyrillic-iso8859-5) | 142 | (charset cyrillic-iso8859-5) |
| 143 | (nonascii-translation-table | ||
| 144 | . ,cyrillic-koi8-r-nonascii-translation-table) | ||
| 145 | (charset-origin-alist | ||
| 146 | (cyrillic-iso8859-5 "KOI8-R" cyrillic-encode-koi8-r-char)) | ||
| 133 | (coding-system cyrillic-koi8) | 147 | (coding-system cyrillic-koi8) |
| 134 | (coding-priority cyrillic-koi8) | 148 | (coding-priority cyrillic-koi8) |
| 135 | (sample-text . "Russian (,L@caaZXY(B) ,L7T`PRabRcYbU(B!") | 149 | (sample-text . "Russian (,L@caaZXY(B) ,L7T`PRabRcYbU(B!") |
| 136 | (documentation . "Support for Cyrillic KOI-8.")) | 150 | (documentation . "Support for Cyrillic KOI8-R.")) |
| 137 | '("Cyrillic")) | 151 | '("Cyrillic")) |
| 138 | 152 | ||
| 139 | ;;; ALTERNATIVNYJ staff | 153 | ;;; ALTERNATIVNYJ staff |
| 140 | 154 | ||
| 155 | (eval-and-compile | ||
| 156 | |||
| 157 | (defvar cyrillic-alternativnyj-decode-table | ||
| 158 | [ | ||
| 159 | 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | ||
| 160 | 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 | ||
| 161 | 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 | ||
| 162 | 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 | ||
| 163 | 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 | ||
| 164 | 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 | ||
| 165 | 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 | ||
| 166 | 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 | ||
| 167 | ?,L0(B ?,L1(B ?,L2(B ?,L3(B ?,L4(B ?,L5(B ?,L6(B ?,L7(B ?,L8(B ?,L9(B ?,L:(B ?,L;(B ?,L<(B ?,L=(B ?,L>(B ?,L?(B | ||
| 168 | ?,L@(B ?,LA(B ?,LB(B ?,LC(B ?,LD(B ?,LE(B ?,LF(B ?,LG(B ?,LH(B ?,LI(B ?,LJ(B ?,LK(B ?,LL(B ?,LM(B ?,LN(B ?,LO(B | ||
| 169 | ?,LP(B ?,LQ(B ?,LR(B ?,LS(B ?,LT(B ?,LU(B ?,LV(B ?,LW(B ?,LX(B ?,LY(B ?,LZ(B ?,L[(B ?,L\(B ?,L](B ?,L^(B ?,L_(B | ||
| 170 | 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 | ||
| 171 | 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 | ||
| 172 | 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 | ||
| 173 | ?,L`(B ?,La(B ?,Lb(B ?,Lc(B ?,Ld(B ?,Le(B ?,Lf(B ?,Lg(B ?,Lh(B ?,Li(B ?,Lj(B ?,Lk(B ?,Ll(B ?,Lm(B ?,Ln(B ?,Lo(B | ||
| 174 | ?,L!(B ?,Lq(B 32 32 32 32 32 32 32 32 32 32 32 32 32 ?,Lp(B] | ||
| 175 | "Cyrillic ALTERNATIVNYJ decoding table.") | ||
| 176 | |||
| 177 | (defvar cyrillic-alternativnyj-encode-table | ||
| 178 | (let ((table (make-vector 256 32)) | ||
| 179 | (i 0)) | ||
| 180 | (while (< i 256) | ||
| 181 | (let* ((ch (aref cyrillic-alternativnyj-decode-table i)) | ||
| 182 | (split (split-char ch))) | ||
| 183 | (if (eq (car split) 'cyrillic-iso8859-5) | ||
| 184 | (aset table (nth 1 split) i) | ||
| 185 | (if (/= ch 32) | ||
| 186 | (aset table ch i)))) | ||
| 187 | (setq i (1+ i))) | ||
| 188 | table) | ||
| 189 | "Cyrillic ALTERNATIVNYJ encoding table.") | ||
| 190 | |||
| 191 | ) | ||
| 192 | |||
| 193 | |||
| 141 | (define-ccl-program ccl-decode-alternativnyj | 194 | (define-ccl-program ccl-decode-alternativnyj |
| 142 | '(3 | 195 | `(3 |
| 143 | ((read r0) | 196 | ((read r0) |
| 144 | (loop | 197 | (loop |
| 145 | (write-read-repeat | 198 | (write-read-repeat r0 ,cyrillic-alternativnyj-decode-table)))) |
| 146 | r0 | ||
| 147 | [ 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | ||
| 148 | 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 | ||
| 149 | 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 | ||
| 150 | 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 | ||
| 151 | 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 | ||
| 152 | 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 | ||
| 153 | 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 | ||
| 154 | 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 | ||
| 155 | ?,L0(B ?,L1(B ?,L2(B ?,L3(B ?,L4(B ?,L5(B ?,L6(B ?,L7(B ?,L8(B ?,L9(B ?,L:(B ?,L;(B ?,L<(B ?,L=(B ?,L>(B ?,L?(B | ||
| 156 | ?,L@(B ?,LA(B ?,LB(B ?,LC(B ?,LD(B ?,LE(B ?,LF(B ?,LG(B ?,LH(B ?,LI(B ?,LJ(B ?,LK(B ?,LL(B ?,LM(B ?,LN(B ?,LO(B | ||
| 157 | ?,LP(B ?,LQ(B ?,LR(B ?,LS(B ?,LT(B ?,LU(B ?,LV(B ?,LW(B ?,LX(B ?,LY(B ?,LZ(B ?,L[(B ?,L\(B ?,L](B ?,L^(B ?,L_(B | ||
| 158 | 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 | ||
| 159 | 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 | ||
| 160 | 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 | ||
| 161 | ?,L`(B ?,La(B ?,Lb(B ?,Lc(B ?,Ld(B ?,Le(B ?,Lf(B ?,Lg(B ?,Lh(B ?,Li(B ?,Lj(B ?,Lk(B ?,Ll(B ?,Lm(B ?,Ln(B ?,Lo(B | ||
| 162 | ?,L!(B ?,Lq(B 32 32 32 32 32 32 32 32 32 32 32 32 32 ?,Lp(B])))) | ||
| 163 | "CCL program to decode Alternativnyj.") | 199 | "CCL program to decode Alternativnyj.") |
| 164 | 200 | ||
| 165 | (define-ccl-program ccl-encode-alternativnyj | 201 | (define-ccl-program ccl-encode-alternativnyj |
| @@ -169,46 +205,40 @@ | |||
| 169 | (if (r0 != ,(charset-id 'cyrillic-iso8859-5)) | 205 | (if (r0 != ,(charset-id 'cyrillic-iso8859-5)) |
| 170 | (write-read-repeat r0) | 206 | (write-read-repeat r0) |
| 171 | ((read r0) | 207 | ((read r0) |
| 172 | (r0 -= 160) | 208 | (write-read-repeat r0 ,cyrillic-alternativnyj-encode-table)))))) |
| 173 | (write-read-repeat | ||
| 174 | r0 | ||
| 175 | [ 32 240 32 32 32 32 32 32 32 32 32 32 32 32 32 32 | ||
| 176 | 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 | ||
| 177 | 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 | ||
| 178 | 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 | ||
| 179 | 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 | ||
| 180 | 255 241 32 32 32 32 32 32 32 32 32 32 32 32 32 32]) | ||
| 181 | ))))) | ||
| 182 | "CCL program to encode Alternativnyj.") | 209 | "CCL program to encode Alternativnyj.") |
| 183 | 210 | ||
| 184 | (make-coding-system | 211 | (make-coding-system |
| 185 | 'cyrillic-alternativnyj 4 ?A | 212 | 'cyrillic-alternativnyj 4 ?A |
| 186 | "ALTERNATIVNYJ 8-bit encoding for Cyrillic" | 213 | "ALTERNATIVNYJ 8-bit encoding for Cyrillic" |
| 187 | '(ccl-decode-alternativnyj . ccl-encode-alternativnyj) | 214 | '(ccl-decode-alternativnyj . ccl-encode-alternativnyj) |
| 188 | '((safe-charsets ascii cyrillic-iso8859-5))) | 215 | '((safe-charsets ascii cyrillic-iso8859-5) |
| 216 | (valid-codes (0 175) (224 241) 255))) | ||
| 189 | 217 | ||
| 190 | (define-coding-system-alias 'alternativnyj 'cyrillic-alternativnyj) | 218 | (define-coding-system-alias 'alternativnyj 'cyrillic-alternativnyj) |
| 191 | 219 | ||
| 192 | (define-ccl-program ccl-encode-alternativnyj-font | 220 | (define-ccl-program ccl-encode-alternativnyj-font |
| 193 | '(0 | 221 | '(0 |
| 194 | ((r1 -= 32) | 222 | ((r1 |= 128) |
| 195 | (r1 = r1 | 223 | (r1 = r1 ,cyrillic-alternativnyj-encode-table))) |
| 196 | [ 32 240 32 32 32 32 32 32 32 32 32 32 32 32 32 32 | ||
| 197 | 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 | ||
| 198 | 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 | ||
| 199 | 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 | ||
| 200 | 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 | ||
| 201 | 255 241 32 32 32 32 32 32 32 32 32 32 32 32 32 32]) | ||
| 202 | )) | ||
| 203 | "CCL program to encode Cyrillic chars to Alternativnyj font.") | 224 | "CCL program to encode Cyrillic chars to Alternativnyj font.") |
| 204 | 225 | ||
| 205 | (setq font-ccl-encoder-alist | 226 | (setq font-ccl-encoder-alist |
| 206 | (cons (cons "alternativnyj" ccl-encode-alternativnyj-font) | 227 | (cons (cons "alternativnyj" ccl-encode-alternativnyj-font) |
| 207 | font-ccl-encoder-alist)) | 228 | font-ccl-encoder-alist)) |
| 208 | 229 | ||
| 230 | (defvar cyrillic-alternativnyj-nonascii-translation-table | ||
| 231 | (make-translation-table-from-vector cyrillic-alternativnyj-decode-table) | ||
| 232 | "Value of `nonascii-translation-table' in Cyrillic-ALT language environment.") | ||
| 233 | |||
| 209 | (set-language-info-alist | 234 | (set-language-info-alist |
| 210 | "Cyrillic-ALT" '((setup-function . setup-cyrillic-alternativnyj-environment) | 235 | "Cyrillic-ALT" '((setup-function . setup-cyrillic-alternativnyj-environment) |
| 211 | (charset cyrillic-iso8859-5) | 236 | (charset cyrillic-iso8859-5) |
| 237 | (nonascii-translation-table | ||
| 238 | . cyrillic-alternativnyj-nonascii-translation-table) | ||
| 239 | (charset-origin-alist | ||
| 240 | (cyrillic-iso8859-5 "ALTERNATIVNYJ" | ||
| 241 | cyrillic-encode-koi8-char)) | ||
| 212 | (coding-system cyrillic-alternativnyj) | 242 | (coding-system cyrillic-alternativnyj) |
| 213 | (coding-priority cyrillic-alternativnyj) | 243 | (coding-priority cyrillic-alternativnyj) |
| 214 | (sample-text . "Russian (,L@caaZXY(B) ,L7T`PRabRcYbU(B!") | 244 | (sample-text . "Russian (,L@caaZXY(B) ,L7T`PRabRcYbU(B!") |