Mercurial > emacs
comparison lisp/international/code-pages.el @ 47911:e07cfa93f2f3
(cp-make-translation-table): Use
ucs-mule-to-mule-unicode.
(cp-fix-safe-chars): Fix typo.
(non-iso-charset-alist): Don't define.
(cp-make-coding-system): Use utf-8-translation-table-for-decode.
Define translation-table-for-input.
(cp866): Reinstate.
(alternativnj): Don't define alias.
(koi8-u): Deleted.
author | Dave Love <fx@gnu.org> |
---|---|
date | Thu, 17 Oct 2002 15:30:28 +0000 |
parents | a0eaee1a642d |
children | 146474b01dad |
comparison
equal
deleted
inserted
replaced
47910:729eccda4769 | 47911:e07cfa93f2f3 |
---|---|
1 ;;; code-pages.el --- coding systems for assorted codepages -*-coding: utf-8;-*- | 1 ;;; code-pages.el --- coding systems for assorted codepages -*-coding: utf-8;-*- |
2 | 2 |
3 ;; Copyright (C) 2001 Free Software Foundation, Inc. | 3 ;; Copyright (C) 2001, 2002 Free Software Foundation, Inc. |
4 | 4 |
5 ;; Author: Dave Love <fx@gnu.org> | 5 ;; Author: Dave Love <fx@gnu.org> |
6 ;; Keywords: i18n | 6 ;; Keywords: i18n |
7 | 7 |
8 ;; This file is part of GNU Emacs. | 8 ;; This file is part of GNU Emacs. |
33 | 33 |
34 ;; Those covered are: cp437, cp737, cp720, cp775, cp850, cp851, cp852, | 34 ;; Those covered are: cp437, cp737, cp720, cp775, cp850, cp851, cp852, |
35 ;; cp855, cp857, cp860, cp861, cp862, cp863, cp864, cp865, cp866, | 35 ;; cp855, cp857, cp860, cp861, cp862, cp863, cp864, cp865, cp866, |
36 ;; cp869, cp874, cp1125, windows-1250, windows-1251, windows-1252, | 36 ;; cp869, cp874, cp1125, windows-1250, windows-1251, windows-1252, |
37 ;; windows-1253, windows-1254, windows-1255, windows-1256, | 37 ;; windows-1253, windows-1254, windows-1255, windows-1256, |
38 ;; windows-1257, windows-1258, next, koi8-r, koi8-u, iso-8859-6, | 38 ;; windows-1257, windows-1258, next, koi8-u, iso-8859-6, |
39 ;; iso-8859-10, iso-8859-12, iso-8859-16, koi8-t, georgian-ps. This | 39 ;; iso-8859-10, iso-8859-12, iso-8859-16, koi8-t, georgian-ps. This |
40 ;; is meant to include all the single-byte ones relevant to GNU (used | 40 ;; is meant to include all the single-byte ones relevant to GNU (used |
41 ;; in glibc-defined locales); we don't yet get all the multibyte ones | 41 ;; in glibc-defined locales); we don't yet get all the multibyte ones |
42 ;; in base Emacs. | 42 ;; in base Emacs. |
43 | 43 |
44 ;; Note that koi8-r and cp866 (alternativnyj) clash with the | 44 ;; Note that various of these can clash with definitions in |
45 ;; iso8859-5-based versions in cyrillic.el (which should be changed), | 45 ;; codepage.el; we try to avoid damage from that. A few CPs from |
46 ;; and others can clash with definitions in codepage.el; we try to | 46 ;; codepage.el (770, 773, 774) aren't covered (in the absence of |
47 ;; avoid damage from that. A few CPs from codepage.el (770, 773, 774) | 47 ;; translation tables to Unicode). |
48 ;; aren't covered (in the absence of translation tables to Unicode). | |
49 | 48 |
50 ;; Compile this, to avoid loading `ccl' at runtime. | 49 ;; Compile this, to avoid loading `ccl' at runtime. |
51 | 50 |
52 ;; Although the tables used here aren't very big, it might be worth | 51 ;; Although the tables used here aren't very big, it might be worth |
53 ;; splitting the file and autoloading the coding systems if/when my | 52 ;; splitting the file and autoloading the coding systems if/when my |
61 (let ((encoding-vector (make-vector 256 0))) | 60 (let ((encoding-vector (make-vector 256 0))) |
62 (dotimes (i 128) | 61 (dotimes (i 128) |
63 (aset encoding-vector i i)) | 62 (aset encoding-vector i i)) |
64 (dotimes (i 128) | 63 (dotimes (i 128) |
65 (aset encoding-vector (+ i 128) (aref v i))) | 64 (aset encoding-vector (+ i 128) (aref v i))) |
66 (make-translation-table-from-vector encoding-vector))) | 65 ;; Add equivalent characters to the encoder so that we can unify |
66 ;; on encoding. | |
67 (let* ((tab (make-translation-table-from-vector encoding-vector)) | |
68 ;; Translation table used for encoding: | |
69 (encode-table (char-table-extra-slot tab 0))) | |
70 (map-char-table (lambda (c v) | |
71 (if v | |
72 (let ((c1 (aref encode-table v))) | |
73 (if c1 ; we encode that unicode | |
74 (aset encode-table c c1))))) | |
75 ucs-mule-to-mule-unicode) | |
76 tab))) | |
67 | 77 |
68 (defun cp-valid-codes (v) | 78 (defun cp-valid-codes (v) |
69 "Derive a valid-codes list for translation vector V. | 79 "Derive a valid-codes list for translation vector V. |
70 See `make-coding-system'." | 80 See `make-coding-system'." |
71 (let (pairs | 81 (let (pairs |
92 (map-char-table | 102 (map-char-table |
93 (lambda (k v) | 103 (lambda (k v) |
94 (if (and v (not (eq v t))) | 104 (if (and v (not (eq v t))) |
95 (aset char-coding-system-table | 105 (aset char-coding-system-table |
96 k | 106 k |
97 (remq cs (aref char-coding-system-table v))))) | 107 (remq cs (aref char-coding-system-table k))))) |
98 chars)))) | 108 chars)))) |
99 | 109 |
100 ;; Fix things that have been, or might be done by codepage.el. | 110 ;; Fix things that have been, or might be done by codepage.el. |
101 (eval-after-load "codepage" | 111 (eval-after-load "codepage" |
102 '(progn | 112 '(progn |
137 (let ((cp (format "cp%s" codepage))) | 147 (let ((cp (format "cp%s" codepage))) |
138 (unless (coding-system-p (intern cp)) | 148 (unless (coding-system-p (intern cp)) |
139 (cp-make-coding-systems-for-codepage | 149 (cp-make-coding-systems-for-codepage |
140 cp (cp-charset-for-codepage cp) (cp-offset-for-codepage cp)))))) | 150 cp (cp-charset-for-codepage cp) (cp-offset-for-codepage cp)))))) |
141 ) ; eval-after-load | 151 ) ; eval-after-load |
142 | |
143 ;; Somewhat amended from the version in mule-diag.el, needed below. | |
144 (defvar non-iso-charset-alist | |
145 `((mac-roman | |
146 nil | |
147 mac-roman-decoder | |
148 ((0 255))) | |
149 (viscii | |
150 (ascii vietnamese-viscii-lower vietnamese-viscii-upper) | |
151 viet-viscii-nonascii-translation-table | |
152 ((0 255))) | |
153 (big5 | |
154 (ascii chinese-big5-1 chinese-big5-2) | |
155 decode-big5-char | |
156 ((32 127) | |
157 ((?\xA1 ?\xFE) . (?\x40 ?\x7E ?\xA1 ?\xFE)))) | |
158 (sjis | |
159 (ascii katakana-jisx0201 japanese-jisx0208) | |
160 decode-sjis-char | |
161 ((32 127 ?\xA1 ?\xDF) | |
162 ((?\x81 ?\x9F ?\xE0 ?\xEF) . (?\x40 ?\x7E ?\x80 ?\xFC)))))) | |
163 | 152 |
164 ;; Macro to allow ccl compilation at byte-compile time, avoiding | 153 ;; Macro to allow ccl compilation at byte-compile time, avoiding |
165 ;; loading ccl. | 154 ;; loading ccl. |
166 ;;;###autoload | 155 ;;;###autoload |
167 (defmacro cp-make-coding-system (name v &optional doc-string mnemonic) | 156 (defmacro cp-make-coding-system (name v &optional doc-string mnemonic) |
181 (r0 = ,(charset-id 'ascii)) | 170 (r0 = ,(charset-id 'ascii)) |
182 (if (r1 < 160) | 171 (if (r1 < 160) |
183 (r0 = ,(charset-id 'eight-bit-control)) | 172 (r0 = ,(charset-id 'eight-bit-control)) |
184 (r0 = ,(charset-id 'eight-bit-graphic)))) | 173 (r0 = ,(charset-id 'eight-bit-graphic)))) |
185 (translate-character ,decoder r0 r1) | 174 (translate-character ,decoder r0 r1) |
175 ;; Allow fragmentation on decoding -- relevant for | |
176 ;; Cyrillic, Greek and, possibly Arabic and Hebrew. | |
177 (translate-character utf-8-translation-table-for-decode r0 r1) | |
186 (write-multibyte-character r0 r1) | 178 (write-multibyte-character r0 r1) |
187 (repeat)))))) | 179 (repeat)))))) |
188 (ccl-encoder | 180 (ccl-encoder |
189 (ccl-compile | 181 (ccl-compile |
190 `(1 | 182 `(1 |
202 ',name 4 ,(or mnemonic ?*) | 194 ',name 4 ,(or mnemonic ?*) |
203 (or ,doc-string (format "%s encoding" ',name)) | 195 (or ,doc-string (format "%s encoding" ',name)) |
204 (cons ,ccl-decoder ,ccl-encoder) | 196 (cons ,ccl-decoder ,ccl-encoder) |
205 (list (cons 'safe-chars (get ',encoder 'translation-table)) | 197 (list (cons 'safe-chars (get ',encoder 'translation-table)) |
206 (cons 'valid-codes codes) | 198 (cons 'valid-codes codes) |
207 (cons 'mime-charset ',name))) | 199 (cons 'mime-charset ',name) |
200 ;; For Quail translation. Fixme: this should really be | |
201 ;; a separate table that only translates the coding | |
202 ;; system's safe-chars. | |
203 (cons 'translation-table-for-input ,ucs-mule-to-mule-unicode))) | |
208 (push (list ',name | 204 (push (list ',name |
209 nil ; charset list | 205 nil ; charset list |
210 ',decoder | 206 ',decoder |
211 (let (l) ; code range | 207 (let (l) ; code range |
212 (dolist (elt (reverse codes)) | 208 (dolist (elt (reverse codes)) |
2057 ?\ⁿ | 2053 ?\ⁿ |
2058 ?\² | 2054 ?\² |
2059 ?\■ | 2055 ?\■ |
2060 ?\ ]) | 2056 ?\ ]) |
2061 | 2057 |
2062 ;; ;; This should be the same as cyrillic-alternativnyj, | 2058 (cp-make-coding-system |
2063 ;; ;; (<URL:http://czyborra.com/charsets/cyrillic.html>), but code point | 2059 cp866 |
2064 ;; ;; 255 in the cyrillic.el alternativnyj table is `№', i.e. point 240 | 2060 [?\А |
2065 ;; ;; in 8859-5, not no-break space as below; `№' should be at point 252. | 2061 ?\Б |
2066 ;; (cp-make-coding-system | 2062 ?\В |
2067 ;; cp866 | 2063 ?\Г |
2068 ;; [?\А | 2064 ?\Д |
2069 ;; ?\Б | 2065 ?\Е |
2070 ;; ?\В | 2066 ?\Ж |
2071 ;; ?\Г | 2067 ?\З |
2072 ;; ?\Д | 2068 ?\И |
2073 ;; ?\Е | 2069 ?\Й |
2074 ;; ?\Ж | 2070 ?\К |
2075 ;; ?\З | 2071 ?\Л |
2076 ;; ?\И | 2072 ?\М |
2077 ;; ?\Й | 2073 ?\Н |
2078 ;; ?\К | 2074 ?\О |
2079 ;; ?\Л | 2075 ?\П |
2080 ;; ?\М | 2076 ?\Р |
2081 ;; ?\Н | 2077 ?\С |
2082 ;; ?\О | 2078 ?\Т |
2083 ;; ?\П | 2079 ?\У |
2084 ;; ?\Р | 2080 ?\Ф |
2085 ;; ?\С | 2081 ?\Х |
2086 ;; ?\Т | 2082 ?\Ц |
2087 ;; ?\У | 2083 ?\Ч |
2088 ;; ?\Ф | 2084 ?\Ш |
2089 ;; ?\Х | 2085 ?\Щ |
2090 ;; ?\Ц | 2086 ?\Ъ |
2091 ;; ?\Ч | 2087 ?\Ы |
2092 ;; ?\Ш | 2088 ?\Ь |
2093 ;; ?\Щ | 2089 ?\Э |
2094 ;; ?\Ъ | 2090 ?\Ю |
2095 ;; ?\Ы | 2091 ?\Я |
2096 ;; ?\Ь | 2092 ?\а |
2097 ;; ?\Э | 2093 ?\б |
2098 ;; ?\Ю | 2094 ?\в |
2099 ;; ?\Я | 2095 ?\г |
2100 ;; ?\а | 2096 ?\д |
2101 ;; ?\б | 2097 ?\е |
2102 ;; ?\в | 2098 ?\ж |
2103 ;; ?\г | 2099 ?\з |
2104 ;; ?\д | 2100 ?\и |
2105 ;; ?\е | 2101 ?\й |
2106 ;; ?\ж | 2102 ?\к |
2107 ;; ?\з | 2103 ?\л |
2108 ;; ?\и | 2104 ?\м |
2109 ;; ?\й | 2105 ?\н |
2110 ;; ?\к | 2106 ?\о |
2111 ;; ?\л | 2107 ?\п |
2112 ;; ?\м | 2108 ?\░ |
2113 ;; ?\н | 2109 ?\▒ |
2114 ;; ?\о | 2110 ?\▓ |
2115 ;; ?\п | 2111 ?\│ |
2116 ;; ?\░ | 2112 ?\┤ |
2117 ;; ?\▒ | 2113 ?\╡ |
2118 ;; ?\▓ | 2114 ?\╢ |
2119 ;; ?\│ | 2115 ?\╖ |
2120 ;; ?\┤ | 2116 ?\╕ |
2121 ;; ?\╡ | 2117 ?\╣ |
2122 ;; ?\╢ | 2118 ?\║ |
2123 ;; ?\╖ | 2119 ?\╗ |
2124 ;; ?\╕ | 2120 ?\╝ |
2125 ;; ?\╣ | 2121 ?\╜ |
2126 ;; ?\║ | 2122 ?\╛ |
2127 ;; ?\╗ | 2123 ?\┐ |
2128 ;; ?\╝ | 2124 ?\└ |
2129 ;; ?\╜ | 2125 ?\┴ |
2130 ;; ?\╛ | 2126 ?\┬ |
2131 ;; ?\┐ | 2127 ?\├ |
2132 ;; ?\└ | 2128 ?\─ |
2133 ;; ?\┴ | 2129 ?\┼ |
2134 ;; ?\┬ | 2130 ?\╞ |
2135 ;; ?\├ | 2131 ?\╟ |
2136 ;; ?\─ | 2132 ?\╚ |
2137 ;; ?\┼ | 2133 ?\╔ |
2138 ;; ?\╞ | 2134 ?\╩ |
2139 ;; ?\╟ | 2135 ?\╦ |
2140 ;; ?\╚ | 2136 ?\╠ |
2141 ;; ?\╔ | 2137 ?\═ |
2142 ;; ?\╩ | 2138 ?\╬ |
2143 ;; ?\╦ | 2139 ?\╧ |
2144 ;; ?\╠ | 2140 ?\╨ |
2145 ;; ?\═ | 2141 ?\╤ |
2146 ;; ?\╬ | 2142 ?\╥ |
2147 ;; ?\╧ | 2143 ?\╙ |
2148 ;; ?\╨ | 2144 ?\╘ |
2149 ;; ?\╤ | 2145 ?\╒ |
2150 ;; ?\╥ | 2146 ?\╓ |
2151 ;; ?\╙ | 2147 ?\╫ |
2152 ;; ?\╘ | 2148 ?\╪ |
2153 ;; ?\╒ | 2149 ?\┘ |
2154 ;; ?\╓ | 2150 ?\┌ |
2155 ;; ?\╫ | 2151 ?\█ |
2156 ;; ?\╪ | 2152 ?\▄ |
2157 ;; ?\┘ | 2153 ?\▌ |
2158 ;; ?\┌ | 2154 ?\▐ |
2159 ;; ?\█ | 2155 ?\▀ |
2160 ;; ?\▄ | 2156 ?\р |
2161 ;; ?\▌ | 2157 ?\с |
2162 ;; ?\▐ | 2158 ?\т |
2163 ;; ?\▀ | 2159 ?\у |
2164 ;; ?\р | 2160 ?\ф |
2165 ;; ?\с | 2161 ?\х |
2166 ;; ?\т | 2162 ?\ц |
2167 ;; ?\у | 2163 ?\ч |
2168 ;; ?\ф | 2164 ?\ш |
2169 ;; ?\х | 2165 ?\щ |
2170 ;; ?\ц | 2166 ?\ъ |
2171 ;; ?\ч | 2167 ?\ы |
2172 ;; ?\ш | 2168 ?\ь |
2173 ;; ?\щ | 2169 ?\э |
2174 ;; ?\ъ | 2170 ?\ю |
2175 ;; ?\ы | 2171 ?\я |
2176 ;; ?\ь | 2172 ?\Ё |
2177 ;; ?\э | 2173 ?\ё |
2178 ;; ?\ю | 2174 ?\Є |
2179 ;; ?\я | 2175 ?\є |
2180 ;; ?\Ё | 2176 ?\Ї |
2181 ;; ?\ё | 2177 ?\ї |
2182 ;; ?\Є | 2178 ?\Ў |
2183 ;; ?\є | 2179 ?\ў |
2184 ;; ?\Ї | 2180 ?\° |
2185 ;; ?\ї | 2181 ?\∙ |
2186 ;; ?\Ў | 2182 ?\· |
2187 ;; ?\ў | 2183 ?\√ |
2188 ;; ?\° | 2184 ?\№ |
2189 ;; ?\∙ | 2185 ?\¤ |
2190 ;; ?\· | 2186 ?\■ |
2191 ;; ?\√ | 2187 ?\ ] |
2192 ;; ?\№ | 2188 "CP866 (Cyrillic)." |
2193 ;; ?\¤ | 2189 ?A) |
2194 ;; ?\■ | |
2195 ;; ?\ ] | |
2196 ;; "CP866 (Cyrillic Alternativnyj) encoding using Unicode." | |
2197 ;; ?A) | |
2198 ;; (define-coding-system-alias 'alternativnyj 'cp866) | |
2199 ;; (cp-fix-safe-chars 'cyrillic-alternativnyj) | |
2200 ;; (define-coding-system-alias 'cyrillic-alternativnyj 'cp866) | |
2201 | 2190 |
2202 (cp-make-coding-system | 2191 (cp-make-coding-system |
2203 cp869 | 2192 cp869 |
2204 [nil | 2193 [nil |
2205 nil | 2194 nil |
3777 nil | 3766 nil |
3778 nil] | 3767 nil] |
3779 "NeXTstep encoding." ?N) | 3768 "NeXTstep encoding." ?N) |
3780 | 3769 |
3781 (cp-make-coding-system | 3770 (cp-make-coding-system |
3782 koi8-u | |
3783 [?\─ | |
3784 ?\│ | |
3785 ?\┌ | |
3786 ?\┐ | |
3787 ?\└ | |
3788 ?\┘ | |
3789 ?\├ | |
3790 ?\┤ | |
3791 ?\┬ | |
3792 ?\┴ | |
3793 ?\┼ | |
3794 ?\▀ | |
3795 ?\▄ | |
3796 ?\█ | |
3797 ?\▌ | |
3798 ?\▐ | |
3799 ?\░ | |
3800 ?\▒ | |
3801 ?\▓ | |
3802 ?\⌠ | |
3803 ?\■ | |
3804 ?\∙ | |
3805 ?\√ | |
3806 ?\≈ | |
3807 ?\≤ | |
3808 ?\≥ | |
3809 ?\ | |
3810 ?\⌡ | |
3811 ?\° | |
3812 ?\² | |
3813 ?\· | |
3814 ?\÷ | |
3815 ?\═ | |
3816 ?\║ | |
3817 ?\╒ | |
3818 ?\ё | |
3819 ?\є | |
3820 ?\╔ | |
3821 ?\і | |
3822 ?\ї | |
3823 ?\╗ | |
3824 ?\╘ | |
3825 ?\╙ | |
3826 ?\╚ | |
3827 ?\╛ | |
3828 ?\ґ | |
3829 ?\╝ | |
3830 ?\╞ | |
3831 ?\╟ | |
3832 ?\╠ | |
3833 ?\╡ | |
3834 ?\Ё | |
3835 ?\Є | |
3836 ?\╣ | |
3837 ?\І | |
3838 ?\Ї | |
3839 ?\╦ | |
3840 ?\╧ | |
3841 ?\╨ | |
3842 ?\╩ | |
3843 ?\╪ | |
3844 ?\Ґ | |
3845 ?\╬ | |
3846 ?\© | |
3847 ?\ю | |
3848 ?\а | |
3849 ?\б | |
3850 ?\ц | |
3851 ?\д | |
3852 ?\е | |
3853 ?\ф | |
3854 ?\г | |
3855 ?\х | |
3856 ?\и | |
3857 ?\й | |
3858 ?\к | |
3859 ?\л | |
3860 ?\м | |
3861 ?\н | |
3862 ?\о | |
3863 ?\п | |
3864 ?\я | |
3865 ?\р | |
3866 ?\с | |
3867 ?\т | |
3868 ?\у | |
3869 ?\ж | |
3870 ?\в | |
3871 ?\ь | |
3872 ?\ы | |
3873 ?\з | |
3874 ?\ш | |
3875 ?\э | |
3876 ?\щ | |
3877 ?\ч | |
3878 ?\ъ | |
3879 ?\Ю | |
3880 ?\А | |
3881 ?\Б | |
3882 ?\Ц | |
3883 ?\Д | |
3884 ?\Е | |
3885 ?\Ф | |
3886 ?\Г | |
3887 ?\Х | |
3888 ?\И | |
3889 ?\Й | |
3890 ?\К | |
3891 ?\Л | |
3892 ?\М | |
3893 ?\Н | |
3894 ?\О | |
3895 ?\П | |
3896 ?\Я | |
3897 ?\Р | |
3898 ?\С | |
3899 ?\Т | |
3900 ?\У | |
3901 ?\Ж | |
3902 ?\В | |
3903 ?\Ь | |
3904 ?\Ы | |
3905 ?\З | |
3906 ?\Ш | |
3907 ?\Э | |
3908 ?\Щ | |
3909 ?\Ч | |
3910 ?\Ъ] | |
3911 "Cyrillic KOI8-U (Ukranian) encoding." | |
3912 ?U) | |
3913 | |
3914 ;; ;; Unicode-based, not cyrillic-iso8859-5 based (and thus incomplete) | |
3915 ;; ;; like the standard version. | |
3916 ;; (cp-make-coding-system | |
3917 ;; ;; The base system uses cyrillic-koi8 as the canonical name, but | |
3918 ;; ;; that's not a MIME name. | |
3919 ;; koi8-r | |
3920 ;; [?\─ | |
3921 ;; ?\│ | |
3922 ;; ?\┌ | |
3923 ;; ?\┐ | |
3924 ;; ?\└ | |
3925 ;; ?\┘ | |
3926 ;; ?\├ | |
3927 ;; ?\┤ | |
3928 ;; ?\┬ | |
3929 ;; ?\┴ | |
3930 ;; ?\┼ | |
3931 ;; ?\▀ | |
3932 ;; ?\▄ | |
3933 ;; ?\█ | |
3934 ;; ?\▌ | |
3935 ;; ?\▐ | |
3936 ;; ?\░ | |
3937 ;; ?\▒ | |
3938 ;; ?\▓ | |
3939 ;; ?\⌠ | |
3940 ;; ?\■ | |
3941 ;; ?\• | |
3942 ;; ?\√ | |
3943 ;; ?\≈ | |
3944 ;; ?\≤ | |
3945 ;; ?\≥ | |
3946 ;; ?\ | |
3947 ;; ?\⌡ | |
3948 ;; ?\° | |
3949 ;; ?\² | |
3950 ;; ?\· | |
3951 ;; ?\÷ | |
3952 ;; ?\═ | |
3953 ;; ?\║ | |
3954 ;; ?\╒ | |
3955 ;; ?\ё | |
3956 ;; ?\╓ | |
3957 ;; ?\╔ | |
3958 ;; ?\╕ | |
3959 ;; ?\╖ | |
3960 ;; ?\╗ | |
3961 ;; ?\╘ | |
3962 ;; ?\╙ | |
3963 ;; ?\╚ | |
3964 ;; ?\╛ | |
3965 ;; ?\╜ | |
3966 ;; ?\╝ | |
3967 ;; ?\╞ | |
3968 ;; ?\╟ | |
3969 ;; ?\╠ | |
3970 ;; ?\╡ | |
3971 ;; ?\Ё | |
3972 ;; ?\╢ | |
3973 ;; ?\╣ | |
3974 ;; ?\╤ | |
3975 ;; ?\╥ | |
3976 ;; ?\╦ | |
3977 ;; ?\╧ | |
3978 ;; ?\╨ | |
3979 ;; ?\╩ | |
3980 ;; ?\╪ | |
3981 ;; ?\╫ | |
3982 ;; ?\╬ | |
3983 ;; ?\© | |
3984 ;; ?\ю | |
3985 ;; ?\а | |
3986 ;; ?\б | |
3987 ;; ?\ц | |
3988 ;; ?\д | |
3989 ;; ?\е | |
3990 ;; ?\ф | |
3991 ;; ?\г | |
3992 ;; ?\х | |
3993 ;; ?\и | |
3994 ;; ?\й | |
3995 ;; ?\к | |
3996 ;; ?\л | |
3997 ;; ?\м | |
3998 ;; ?\н | |
3999 ;; ?\о | |
4000 ;; ?\п | |
4001 ;; ?\я | |
4002 ;; ?\р | |
4003 ;; ?\с | |
4004 ;; ?\т | |
4005 ;; ?\у | |
4006 ;; ?\ж | |
4007 ;; ?\в | |
4008 ;; ?\ь | |
4009 ;; ?\ы | |
4010 ;; ?\з | |
4011 ;; ?\ш | |
4012 ;; ?\э | |
4013 ;; ?\щ | |
4014 ;; ?\ч | |
4015 ;; ?\ъ | |
4016 ;; ?\Ю | |
4017 ;; ?\А | |
4018 ;; ?\Б | |
4019 ;; ?\Ц | |
4020 ;; ?\Д | |
4021 ;; ?\Е | |
4022 ;; ?\Ф | |
4023 ;; ?\Г | |
4024 ;; ?\Х | |
4025 ;; ?\И | |
4026 ;; ?\Й | |
4027 ;; ?\К | |
4028 ;; ?\Л | |
4029 ;; ?\М | |
4030 ;; ?\Н | |
4031 ;; ?\О | |
4032 ;; ?\П | |
4033 ;; ?\Я | |
4034 ;; ?\Р | |
4035 ;; ?\С | |
4036 ;; ?\Т | |
4037 ;; ?\У | |
4038 ;; ?\Ж | |
4039 ;; ?\В | |
4040 ;; ?\Ь | |
4041 ;; ?\Ы | |
4042 ;; ?\З | |
4043 ;; ?\Ш | |
4044 ;; ?\Э | |
4045 ;; ?\Щ | |
4046 ;; ?\Ч | |
4047 ;; ?\Ъ] | |
4048 ;; "Unicode-based KOI8 encoding for Cyrillic (MIME: KOI8-R)" | |
4049 ;; ?R) | |
4050 ;; (cp-fix-safe-chars 'cyrillic-koi8) | |
4051 ;; (define-coding-system-alias 'cyrillic-koi8 'koi8-r) | |
4052 ;; (define-coding-system-alias 'koi8 'koi8-r) | |
4053 ;; (define-coding-system-alias 'cp878 'koi8-r) | |
4054 | |
4055 (cp-make-coding-system | |
4056 koi8-t ; used by glibc for tg_TJ | 3771 koi8-t ; used by glibc for tg_TJ |
4057 [?\қ | 3772 [?\қ |
4058 ?\ғ | 3773 ?\ғ |
4059 ?\‚ | 3774 ?\‚ |
4060 ?\Ғ | 3775 ?\Ғ |
4185 "Unicode-based KOI8-T encoding for Cyrillic") | 3900 "Unicode-based KOI8-T encoding for Cyrillic") |
4186 (coding-system-put 'koi8-t 'mime-charset nil) ; not in the IANA list | 3901 (coding-system-put 'koi8-t 'mime-charset nil) ; not in the IANA list |
4187 | 3902 |
4188 ;; Online final ISO draft: | 3903 ;; Online final ISO draft: |
4189 | 3904 |
4190 ;; http://www.egt.ie/standards/iso8859/fdis8859-16-en.pdf | 3905 ;; http://www.evertype.com/standards/iso8859/fdis8859-16-en.pdf |
4191 | 3906 |
4192 ;; Equivalent National Standard: | 3907 ;; Equivalent National Standard: |
4193 ;; Romanian Standard SR 14111:1998, Romanian Standards Institution | 3908 ;; Romanian Standard SR 14111:1998, Romanian Standards Institution |
4194 ;; (ASRO). | 3909 ;; (ASRO). |
4195 | 3910 |
4989 ?\± | 4704 ?\± |
4990 ?\№ | 4705 ?\№ |
4991 ?\¤ | 4706 ?\¤ |
4992 ?\■ | 4707 ?\■ |
4993 ?\ ]) | 4708 ?\ ]) |
4994 ;; Original ;name for cp1125, says Serhii Hlodin <hlodin@lutsk.bank.gov.ua> | 4709 (define-coding-system-alias 'ruscii 'cp1125) |
4710 ;; Original name for cp1125, says Serhii Hlodin <hlodin@lutsk.bank.gov.ua> | |
4995 (define-coding-system-alias 'cp866u 'cp1125) | 4711 (define-coding-system-alias 'cp866u 'cp1125) |
4996 | 4712 |
4997 (dotimes (i 8) | 4713 (dotimes (i 8) |
4998 (let ((w (intern (format "windows-125%d" i))) | 4714 (let ((w (intern (format "windows-125%d" i))) |
4999 (c (intern (format "cp125%d" i)))) | 4715 (c (intern (format "cp125%d" i)))) |