Line 0
Link Here
|
|
|
1 |
diff --git egg-com.el egg-com.el |
2 |
index 63ebdb5..daab668 100644 |
3 |
--- egg-com.el |
4 |
+++ egg-com.el |
5 |
@@ -99,135 +99,38 @@ |
6 |
(prog1 (- (point) pos) |
7 |
(goto-char pos)))) |
8 |
|
9 |
-(if (and (fboundp 'make-coding-system) |
10 |
- (null (get 'make-coding-system 'byte-obsolete-info))) |
11 |
-;; since Emacs 23.1, make-coding-system has been marked as obsolete. |
12 |
- (eval-and-compile |
13 |
- (define-ccl-program ccl-decode-fixed-euc-jp |
14 |
- `(2 |
15 |
- ((r2 = ,(charset-id 'japanese-jisx0208)) |
16 |
- (r3 = ,(charset-id 'japanese-jisx0212)) |
17 |
- (r4 = ,(charset-id 'katakana-jisx0201)) |
18 |
- (read r0) |
19 |
- (loop |
20 |
- (read r1) |
21 |
- (if (r0 < ?\x80) |
22 |
- ((r0 = r1) |
23 |
- (if (r1 < ?\x80) |
24 |
- (write-read-repeat r0)) |
25 |
- (write r4) |
26 |
- (write-read-repeat r0)) |
27 |
- ((if (r1 > ?\x80) |
28 |
- ((write r2 r0) |
29 |
- (r0 = r1) |
30 |
- (write-read-repeat r0)) |
31 |
- ((write r3 r0) |
32 |
- (r0 = (r1 | ?\x80)) |
33 |
- (write-read-repeat r0))))))))) |
34 |
- |
35 |
- (define-ccl-program ccl-encode-fixed-euc-jp |
36 |
- `(2 |
37 |
- ((read r0) |
38 |
- (loop |
39 |
- (if (r0 == ,(charset-id 'latin-jisx0201)) ; Unify |
40 |
- ((read r0) |
41 |
- (r0 &= ?\x7f))) |
42 |
- (if (r0 < ?\x80) ;G0 |
43 |
- ((write 0) |
44 |
- (write-read-repeat r0))) |
45 |
- (r6 = (r0 == ,(charset-id 'japanese-jisx0208))) |
46 |
- (r6 |= (r0 == ,(charset-id 'japanese-jisx0208-1978))) |
47 |
- (if r6 ;G1 |
48 |
- ((read r0) |
49 |
- (write r0) |
50 |
- (read r0) |
51 |
- (write-read-repeat r0))) |
52 |
- (if (r0 == ,(charset-id 'katakana-jisx0201)) ;G2 |
53 |
- ((read r0) |
54 |
- (write 0) |
55 |
- (write-read-repeat r0))) |
56 |
- (if (r0 == ,(charset-id 'japanese-jisx0212)) ;G3 |
57 |
- ((read r0) |
58 |
- (write r0) |
59 |
- (read r0) |
60 |
- (r0 &= ?\x7f) |
61 |
- (write-read-repeat r0))) |
62 |
- (read r0) |
63 |
- (repeat))))) |
64 |
- (make-coding-system 'fixed-euc-jp 4 ?W "Coding System for fixed EUC Japanese" |
65 |
- (cons ccl-decode-fixed-euc-jp ccl-encode-fixed-euc-jp)) |
66 |
- ) |
67 |
- (eval-and-compile |
68 |
- ;; since Emacs 23.1, make-coding-system has been marked as obsolete. |
69 |
- ;; From Handa-san. [mule-ja : No.09414] |
70 |
- (define-charset 'fixed-euc-jp |
71 |
- "Fixed EUC Japanese" |
72 |
- :dimension 2 |
73 |
- :superset '(ascii |
74 |
- (katakana-jisx0201 . #x80) |
75 |
- (japanese-jisx0208 . #x8080) |
76 |
- (japanese-jisx0212 . #x8000))) |
77 |
- (define-coding-system 'fixed-euc-jp |
78 |
- "Coding System for fixed EUC Japanese" |
79 |
- :mnemonic ?W |
80 |
- :coding-type 'charset |
81 |
- :charset-list '(fixed-euc-jp)) |
82 |
- ) |
83 |
+(eval-and-compile |
84 |
+ (define-charset 'fixed-euc-jp |
85 |
+ "Fixed EUC Japanese" |
86 |
+ :dimension 2 |
87 |
+ :superset '(ascii |
88 |
+ (katakana-jisx0201 . #x80) |
89 |
+ (japanese-jisx0208 . #x8080) |
90 |
+ (japanese-jisx0212 . #x8000))) |
91 |
+ (define-coding-system 'fixed-euc-jp |
92 |
+ "Coding System for fixed EUC Japanese" |
93 |
+ :mnemonic ?W |
94 |
+ :coding-type 'charset |
95 |
+ :charset-list '(fixed-euc-jp)) |
96 |
) |
97 |
|
98 |
;; Korean |
99 |
- |
100 |
-(if (and (fboundp 'make-coding-system) |
101 |
- (null (get 'make-coding-system 'byte-obsolete-info))) |
102 |
-;; since Emacs 23.1, make-coding-system has been marked as obsolete. |
103 |
- (eval-and-compile |
104 |
-(define-ccl-program ccl-decode-fixed-euc-kr |
105 |
- `(2 |
106 |
- ((r2 = ,(charset-id 'korean-ksc5601)) |
107 |
- (read r0) |
108 |
- (loop |
109 |
- (read r1) |
110 |
- (if (r0 < ?\x80) |
111 |
- (r0 = r1 & ?\x7f) |
112 |
- ((write r2 r0) |
113 |
- (r0 = r1 | ?\x80))) |
114 |
- (write-read-repeat r0))))) |
115 |
- |
116 |
-(define-ccl-program ccl-encode-fixed-euc-kr |
117 |
- `(2 |
118 |
- ((read r0) |
119 |
- (loop |
120 |
- (if (r0 < ?\x80) |
121 |
- ((write 0) |
122 |
- (write-read-repeat r0))) |
123 |
- (if (r0 == ,(charset-id 'korean-ksc5601)) |
124 |
- ((read r0) |
125 |
- (write r0) |
126 |
- (read r0) |
127 |
- (write-read-repeat r0))) |
128 |
- (read r0) |
129 |
- (repeat))))) |
130 |
-(make-coding-system 'fixed-euc-kr 4 ?W "Coding System for fixed EUC Korean" |
131 |
- (cons ccl-decode-fixed-euc-kr ccl-encode-fixed-euc-kr))) |
132 |
- (eval-and-compile |
133 |
- ;; since Emacs 23.1, make-coding-system has been marked as obsolete. |
134 |
- (define-charset 'fixed-euc-kr |
135 |
- "Fixed EUC Korean" |
136 |
- :dimension 2 |
137 |
- :superset '(ascii |
138 |
- (korean-ksc5601 . #x8080))) |
139 |
- (define-coding-system 'fixed-euc-kr |
140 |
- "Coding System for fixed EUC Korean" |
141 |
- :mnemonic ?W |
142 |
- :coding-type 'charset |
143 |
- :charset-list '(fixed-euc-kr)) |
144 |
- ) |
145 |
-) |
146 |
+(eval-and-compile |
147 |
+ (define-charset 'fixed-euc-kr |
148 |
+ "Fixed EUC Korean" |
149 |
+ :dimension 2 |
150 |
+ :superset '(ascii |
151 |
+ (korean-ksc5601 . #x8080))) |
152 |
+ (define-coding-system 'fixed-euc-kr |
153 |
+ "Coding System for fixed EUC Korean" |
154 |
+ :mnemonic ?W |
155 |
+ :coding-type 'charset |
156 |
+ :charset-list '(fixed-euc-kr)) |
157 |
+ ) |
158 |
|
159 |
|
160 |
;; Chinese |
161 |
;; |
162 |
-;; TODO: convert an obsolete make-coding-system to define-coding-system. |
163 |
|
164 |
(defconst egg-pinyin-shengmu |
165 |
'(("" . 0) ("B" . 1) ("C" . 2) ("Ch" . 3) ("D" . 4) |
166 |
@@ -687,29 +590,33 @@ Return the length of resulting text." |
167 |
(defun post-read-decode-euc-zy-tw (len) |
168 |
(post-read-decode-fixed-euc-china len 'tw t)) |
169 |
|
170 |
-(make-coding-system 'fixed-euc-py-cn 0 ?W |
171 |
- "Coding System for fixed EUC Chinese-gb2312") |
172 |
+(define-coding-system |
173 |
+ 'fixed-euc-py-cn "Coding System for fixed EUC Chinese-gb2312" |
174 |
+ :mnemonic ?W :coding-type 'emacs-mule) |
175 |
(coding-system-put 'fixed-euc-py-cn |
176 |
'pre-write-conversion 'pre-write-encode-euc-cn) |
177 |
(coding-system-put 'fixed-euc-py-cn |
178 |
'post-read-conversion 'post-read-decode-euc-py-cn) |
179 |
|
180 |
-(make-coding-system 'fixed-euc-zy-cn 0 ?W |
181 |
- "Coding System for fixed EUC Chinese-gb2312") |
182 |
+(define-coding-system |
183 |
+ 'fixed-euc-zy-cn "Coding System for fixed EUC Chinese-gb2312" |
184 |
+ :mnemonic ?W :coding-type 'emacs-mule) |
185 |
(coding-system-put 'fixed-euc-zy-cn |
186 |
'pre-write-conversion 'pre-write-encode-euc-cn) |
187 |
(coding-system-put 'fixed-euc-zy-cn |
188 |
'post-read-conversion 'post-read-decode-euc-zy-cn) |
189 |
|
190 |
-(make-coding-system 'fixed-euc-py-tw 0 ?W |
191 |
- "Coding System for fixed EUC Chinese-cns11643") |
192 |
+(define-coding-system |
193 |
+ 'fixed-euc-py-tw "Coding System for fixed EUC Chinese-cns11643" |
194 |
+ :mnemonic ?W :coding-type 'emacs-mule) |
195 |
(coding-system-put 'fixed-euc-py-tw |
196 |
'pre-write-conversion 'pre-write-encode-euc-tw) |
197 |
(coding-system-put 'fixed-euc-py-tw |
198 |
'post-read-conversion 'post-read-decode-euc-py-tw) |
199 |
|
200 |
-(make-coding-system 'fixed-euc-zy-tw 0 ?W |
201 |
- "Coding System for fixed EUC Chinese-cns11643") |
202 |
+(define-coding-system |
203 |
+ 'fixed-euc-zy-tw "Coding System for fixed EUC Chinese-cns11643" |
204 |
+ :mnemonic ?W :coding-type 'emacs-mule) |
205 |
(coding-system-put 'fixed-euc-zy-tw |
206 |
'pre-write-conversion 'pre-write-encode-euc-tw) |
207 |
(coding-system-put 'fixed-euc-zy-tw |
208 |
@@ -735,8 +642,9 @@ Return the length of resulting text." |
209 |
(r0 = 0))) |
210 |
(write-read-repeat r0)))))) |
211 |
|
212 |
-(make-coding-system 'egg-binary 4 ?W "Coding System for binary data" |
213 |
- (cons ccl-decode-egg-binary ccl-encode-egg-binary)) |
214 |
+(define-coding-system 'egg-binary "Coding System for binary data" |
215 |
+ :mnemonic ?W :coding-type 'ccl :ccl-decoder ccl-decode-egg-binary |
216 |
+ :ccl-encoder ccl-encode-egg-binary) |
217 |
|
218 |
|
219 |
(defun comm-format-u32c (uint32c) |
220 |
diff --git egg-x0213.el egg-x0213.el |
221 |
index ce13eb3..bb44584 100644 |
222 |
--- egg-x0213.el |
223 |
+++ egg-x0213.el |
224 |
@@ -104,8 +104,10 @@ |
225 |
(repeat))) |
226 |
(repeat))))) |
227 |
|
228 |
- (make-coding-system |
229 |
- 'fixed-euc-jisx0213 4 ?W "Coding System for fixed EUC Japanese" |
230 |
- (cons ccl-decode-fixed-euc-jisx0213 ccl-encode-fixed-euc-jisx0213)))) |
231 |
+ (define-coding-system |
232 |
+ 'fixed-euc-jisx0213 "Coding System for fixed EUC Japanese" |
233 |
+ :mnemonic ?W :coding-type 'ccl |
234 |
+ :ccl-decoder ccl-decode-fixed-euc-jisx0213 |
235 |
+ :ccl-encoder ccl-encode-fixed-euc-jisx0213))) |
236 |
|
237 |
(provide 'egg-x0213) |