comparison src/casetab.c @ 410:de805c49cfc1 r21-2-35

Import from CVS: tag r21-2-35
author cvs
date Mon, 13 Aug 2007 11:19:21 +0200
parents 74fd4e045ea6
children 697ef44129c6
comparison
equal deleted inserted replaced
409:301b9ebbdf3b 410:de805c49cfc1
187 187
188 static Lisp_Object 188 static Lisp_Object
189 set_case_table (Lisp_Object table, int standard) 189 set_case_table (Lisp_Object table, int standard)
190 { 190 {
191 Lisp_Object down, up, canon, eqv, tail = table; 191 Lisp_Object down, up, canon, eqv, tail = table;
192 struct buffer *buf = current_buffer; 192 struct buffer *buf =
193 standard ? XBUFFER(Vbuffer_defaults) : current_buffer;
193 194
194 check_case_table (table); 195 check_case_table (table);
195 196
196 down = XCAR (tail); tail = XCDR (tail); 197 down = XCAR (tail); tail = XCDR (tail);
197 up = XCAR (tail); tail = XCDR (tail); 198 up = XCAR (tail); tail = XCDR (tail);
240 Vmirror_ascii_upcase_table = make_mirror_trt_table (up); 241 Vmirror_ascii_upcase_table = make_mirror_trt_table (up);
241 Vmirror_ascii_canon_table = make_mirror_trt_table (canon); 242 Vmirror_ascii_canon_table = make_mirror_trt_table (canon);
242 Vmirror_ascii_eqv_table = make_mirror_trt_table (eqv); 243 Vmirror_ascii_eqv_table = make_mirror_trt_table (eqv);
243 #endif 244 #endif
244 } 245 }
245 else 246 buf->downcase_table = down;
246 { 247 buf->upcase_table = up;
247 buf->downcase_table = down; 248 buf->case_canon_table = canon;
248 buf->upcase_table = up; 249 buf->case_eqv_table = eqv;
249 buf->case_canon_table = canon; 250 #ifdef MULE
250 buf->case_eqv_table = eqv; 251 buf->mirror_downcase_table = make_mirror_trt_table (down);
251 #ifdef MULE 252 buf->mirror_upcase_table = make_mirror_trt_table (up);
252 buf->mirror_downcase_table = make_mirror_trt_table (down); 253 buf->mirror_case_canon_table = make_mirror_trt_table (canon);
253 buf->mirror_upcase_table = make_mirror_trt_table (up); 254 buf->mirror_case_eqv_table = make_mirror_trt_table (eqv);
254 buf->mirror_case_canon_table = make_mirror_trt_table (canon); 255 #endif
255 buf->mirror_case_eqv_table = make_mirror_trt_table (eqv); 256
256 #endif
257 }
258 return table; 257 return table;
259 } 258 }
260 259
261 /* Given a translate table TRT, store the inverse mapping into INVERSE. 260 /* Given a translate table TRT, store the inverse mapping into INVERSE.
262 Since TRT is not one-to-one, INVERSE is not a simple mapping. 261 Since TRT is not one-to-one, INVERSE is not a simple mapping.