Mercurial > emacs
annotate src/ChangeLog.22 @ 89599:161f8ca95885
*** empty log message ***
author | Kenichi Handa <handa@m17n.org> |
---|---|
date | Thu, 16 Oct 2003 00:44:55 +0000 |
parents | 237980c2b1d3 |
children | 611b87bc04a4 |
rev | line source |
---|---|
89599 | 1 2003-10-16 Kenichi Handa <handa@m17n.org> |
2 | |
3 * insdel.c (insert_from_gap): Adjust intervals correctly. | |
4 | |
89592 | 5 2003-10-12 Jason Rumney <jasonr@gnu.org> |
6 | |
89597 | 7 * w32term.c (GLYPHSET, WCRANGE): Define if system headers don't. |
8 (pfnGetFontUnicodeRanges): New dynamically loaded function. | |
9 (w32_initialize): Try to load it. | |
10 (x_get_font_repertory): Use it if available. | |
11 (w32_encode_char): Add shortcut for unicode output. | |
12 | |
13 * w32fns.c (w32_load_system_font): Default charset to -1. | |
14 (x_to_w32_charset): Match all fonts for unicode. | |
15 (w32_to_x_charset): New parameter matching. Don't return partial | |
16 or wildcard charsets. | |
17 (w32_to_all_x_charsets): Don't return partial or wildcard charsets. | |
18 (w32_codepage_for_font): Return CP_UNICODE for unicode. | |
19 (w32_to_x_font): Match charset to real charset. | |
20 (enum_font_cb2): Always list unicode versions. | |
21 | |
89592 | 22 * makefile.w32-in (temacs): Increase EMHEAP. |
23 | |
89589 | 24 2003-10-11 Jason Rumney <jasonr@gnu.org> |
25 | |
26 * w32term.c (w32_encode_char): New charset parameter. | |
27 font_info.encoding becomes encoding_type. | |
28 (x_get_font_repertory): New function. Warning: stub only! | |
29 (x_new_font): Return quickly if font already set. | |
30 (x_new_fontset): fontsetname parameter is Lisp_Object. | |
31 Use new fs_query_fontset. Try new_fontset_from_font_name. Use | |
32 fontset_name for return value. | |
33 | |
34 * w32term.h: Declare x_get_font_repertory. | |
35 | |
36 * w32select.c (Fw32_set_clipboard_data): Use string_x_string_p in | |
37 place of find_charset_in_text. Use encode_coding_object in place | |
38 of encode_coding. | |
39 (Fw32_get_clipboard_data): Use decode_coding_c_string in place of | |
40 decode_coding. | |
41 | |
42 * w32fns.c (Fx_create_frame, x_create_tip_frame): Use new version | |
43 of x_new_fontset. | |
44 (w32_load_system_font): Initialize charset as unicode. | |
45 font_info.encoding becomes encoding_type. | |
46 (w32_to_x_font): Use decode_coding_c_string in place of | |
47 decode_coding. | |
48 (x_to_w32_font): Use encode_coding_object in place of | |
49 encode_coding. | |
50 (syms_of_w32fns): Set get_font_repertory_func. | |
51 | |
52 * w32console.c: Include character.h. Use terminal_encode_buffer | |
53 from term.c. | |
54 (write_glyphs): Use new version of encode_terminal_code. Use | |
55 encode_coding_object in place of encode_coding. | |
56 | |
57 * w32bdf.c (w32_load_bdf_font): Clear font_info before filling. | |
58 encoding becomes encoding_type. | |
59 | |
60 * term.c (terminal_encode_buffer): Make externally visible. | |
61 | |
62 * makefile.w32-in: Add character.h dependancies. | |
63 (character.o, chartab.o): New targets. | |
64 | |
89578 | 65 2003-10-10 Kenichi Handa <handa@m17n.org> |
66 | |
67 * fileio.c (Finsert_file_contents) [DOS_NT]: Use the macro | |
68 CODING_ID_EOL_TYPE.. | |
69 | |
89576
c4e90e6721e8
*** empty log message ***
Andreas Schwab <schwab@suse.de>
parents:
89574
diff
changeset
|
70 2003-10-07 Andreas Schwab <schwab@suse.de> |
c4e90e6721e8
*** empty log message ***
Andreas Schwab <schwab@suse.de>
parents:
89574
diff
changeset
|
71 |
c4e90e6721e8
*** empty log message ***
Andreas Schwab <schwab@suse.de>
parents:
89574
diff
changeset
|
72 * coding.c (produce_chars): Revert last change. |
c4e90e6721e8
*** empty log message ***
Andreas Schwab <schwab@suse.de>
parents:
89574
diff
changeset
|
73 |
89574 | 74 2003-10-06 Kenichi Handa <handa@m17n.org> |
75 | |
76 * charset.h (charset_unicode): Extern it. | |
77 | |
78 * charset.c (string_xstring_p): Check by (C >= 0x100). | |
79 (find_charsets_in_text): Format of the arc CHARSETS changed. New | |
80 arg MULTIBYTE. | |
81 (Ffind_charset_region, Ffind_charset_string): Adjusted for the | |
82 change of find_charsets_in_text. | |
83 (Fsplit_char): Fix doc. Never return unknown. | |
84 | |
85 * chartab.c (char_table_translate): Use CHARACTERP, not INETEGERP. | |
86 | |
87 * coding.c (Fdefine_coding_system_alias): Update | |
88 Vcoding_system_list. | |
89 | |
90 * fontset.c (load_font_get_repertory): Pay attention to the case | |
91 that ENCODING of a font is specified by a char-table. | |
92 | |
93 * xterm.c (x_get_font_repertory): Handle the case that the | |
94 encoding of font is other than Unicode. | |
95 | |
89567 | 96 2003-10-02 Kenichi Handa <handa@m17n.org> |
97 | |
98 * term.c (encode_terminal_code): Don't handle glyph-table. Check | |
99 if a character is encodable by the terminal coding system. If | |
100 not, produces proper number of `?'s. Update | |
101 terminal_encode_buffer and terminal_encode_buf_size if necessary. | |
102 (produce_glyphs): Check by CHAR_BYTE8_P, not SINGLE_BYTE_CHAR_P. | |
103 | |
89565 | 104 2003-10-01 Kenichi Handa <handa@m17n.org> |
105 | |
106 * term.c (terminal_encode_buffer, terminal_encode_buf_size): New | |
107 variables. | |
108 (encode_terminal_code): Argument changed. Encode multiple | |
109 characters at once. Store the result of encoding in | |
110 terminal_encode_buffer. | |
111 (write_glyphs): Adjusted for the change of encode_terminal_code. | |
112 (insert_glyphs): Likewise. | |
113 (term_init): Initialize terminal_encode_buffer and | |
114 terminal_encode_buf_size. | |
115 | |
116 * coding.c (consume_chars): If coding->src_object is nil, don't | |
117 check annotation. | |
118 | |
89561 | 119 2003-09-30 Kenichi Handa <handa@m17n.org> |
120 | |
121 * character.c (char_string): Use ASCII_CHAR_P instead of | |
122 SINGLE_BYTE_CHAR_P. | |
123 | |
89560 | 124 2003-09-30 Kenichi Handa <handa@m17n.org> |
125 | |
126 * xdisp.c (handle_auto_composed_prop): Check if the last | |
127 characters of auto-composed region is newly composed with the | |
128 following characters. | |
129 (handle_composition_prop): Fix checking of point being inside | |
130 composition. | |
131 | |
132 2003-09-26 Kenichi Handa <handa@m17n.org> | |
133 | |
134 * fns.c (concat): Don't change multibyteness of the result by | |
135 concatenating an 8-bit character. | |
136 | |
137 * data.c (Faset): Check newelt by CHECK_CHARACTER. Don't change | |
138 multibyteness of the result when newelt is an 8-bit character. | |
139 | |
89557 | 140 2003-09-29 Dave Love <fx@gnu.org> |
141 | |
142 * xmenu.c (find_and_call_menu_selection): Make menu_bar_items_used | |
143 EMACS_INT. | |
144 | |
145 * xfns.c (DefaultDepthOfScreen, x_encode_text): Remove unused vars. | |
146 | |
147 * xfaces.c (face_numeric_value): Declare dim size_t. | |
148 (Finternal_lisp_face_equal_p): Remove unused f. | |
149 | |
150 * xdisp.c (BUILD_CHAR_GLYPH_STRINGS, display_and_set_cursor) | |
151 (MATRIX_ROW): Remove unused vars. | |
152 (draw_glyphs, x_insert_glyphs, fast_find_position) | |
153 (fast_find_position, fast_find_string_pos): Use EMACS_INT for | |
154 byte/char counts. | |
155 | |
156 * regex.c (regex_compile): Remove unused var. | |
157 | |
158 * minibuf.c (Fminibuffer_complete_word): Remove unused var. | |
159 | |
160 * keymap.c (Fset_keymap_parent, map_keymap, Fcopy_keymap) | |
161 (Faccessible_keymaps, where_is_internal): Remove unused vars. | |
162 | |
163 * keyboard.c (cancel_hourglass_unwind): Return Qnil. | |
164 | |
165 * frame.c (frame_name_fnn_p): Make len EMACS_INT. | |
166 | |
167 * fileio.c (Fwrite_region): Remove unused var. | |
168 | |
169 * dispnew.c (adjust_frame_glyphs_for_frame_redisplay) | |
170 (adjust_frame_glyphs_for_window_redisplay): Remove unused ch_dim. | |
171 | |
172 * composite.c (Fremove_list_of_text_properties): Declare. | |
173 | |
174 * coding.c (inhibit_pre_post_conversion): Removed (unused). | |
175 (alloc_destination, produce_chars): Use EMACS_INT for byte/char | |
176 counts. | |
177 (coding_inherit_eol_type): Remove unused attrs. | |
178 (detect_coding): Cast arg of detect_eol. | |
179 | |
180 * charset.c (syms_of_charset): Remove unused var p. | |
181 (find_charsets_in_text, Ffind_charset_region): Use EMACS_INT for | |
182 byte/char counts. | |
183 | |
184 * casetab.c (set_case_table): Remove unused var. | |
185 | |
186 * window.c (Fdisplay_buffer, Fframe_selected_window): Remove | |
187 unsued vars. | |
188 | |
89561 | 189 >>>>>>> 1.1.2.8 |
89536 | 190 2003-09-26 Dave Love <fx@gnu.org> |
191 | |
192 * xterm.c (x_bitmap_mask): Declare. | |
193 | |
89516 | 194 2003-09-17 Dave Love <fx@gnu.org> |
195 | |
89523 | 196 * xterm.c (x_term_init): Fix type error. |
197 | |
198 * lisp.h: Add Funibyte_char_to_multibyte. | |
199 | |
200 * coding.c (Fread_coding_system): Fix arg of XSETSTRING. | |
201 (Fset_coding_system_priority): Doc fix. | |
202 | |
203 * alloc.c: Sync with HEAD version. | |
204 | |
205 * ccl.c (ccl_driver): Fix arg of CHARACTERP. | |
206 | |
89516 | 207 * indent.c (check_composition): Make start and end EMACS_INT. |
208 | |
209 * character.c (lisp_string_width): Make ignore and end EMACS_INT. | |
210 | |
211 * xdisp.c (handle_composition_prop, check_point_in_composition): | |
212 Make buffer positions EMACS_INT. | |
213 | |
214 * composite.c (find_composition, run_composition_function) | |
215 (update_compositions, Ffind_composition_internal): Make buffer | |
216 positions EMACS_INT. | |
217 | |
218 * composite.h (find_composition, update_compositions): Make | |
219 position args EMACS_INT. | |
220 | |
221 * keyboard.c (adjust_point_for_property): Make beg and end | |
222 EMACS_INT. | |
223 | |
224 * intervals.c (get_property_and_range) | |
225 * intervals.h (get_property_and_range): Make start and end EMACS_INT. | |
226 | |
227 * unexalpha.c: Don't include varargs.h. | |
228 | |
89508 | 229 2003-09-16 Dave Love <fx@gnu.org> |
230 | |
231 * coding.h (ENCODE_UTF_8): New. | |
232 | |
233 * Makefile.in (gtkutil.o): Depend on coding.h. | |
234 | |
235 * coding.c (Fset_coding_system_priority): Doc fix. | |
236 | |
89505 | 237 2003-09-16 Kenichi Handa <handa@m17n.org> |
238 | |
239 * fileio.c (Finsert_file_contents): Call setup_coding_system in | |
240 the case of auto saving. | |
241 | |
89560 | 242 2003-09-10 Andreas Schwab <schwab@suse.de> |
243 | |
244 * chartab.c (map_char_table): Protect `range' from GC. | |
245 (map_char_table_for_charset): Likewise. | |
246 | |
89483 | 247 2003-07-09 Kenichi Handa <handa@m17n.org> |
248 | |
249 * coding.c (decode_coding_sjis): Check bytes more rigidly. | |
250 | |
251 2003-06-26 Kenichi Handa <handa@m17n.org> | |
252 | |
253 * fileio.c (choose_write_coding_system): Return a decided coding | |
254 system. | |
255 (Fwrite_region): Set Vlast_coding_system_used to the return value | |
256 of choose_write_coding_system. | |
257 | |
258 2003-06-06 Kenichi Handa <handa@m17n.org> | |
259 | |
260 * charset.c (Fset_charset_priority): Pay attention to duplicated | |
261 arguments. | |
262 | |
263 * coding.c (QCcategory): New variable. | |
264 (syms_of_coding): Defsym it. Set all elements of | |
265 Vcoding_category_table and their symbol values. | |
266 (Fset_coding_system_priority): Doc fix. Update symbol qvalues of | |
267 coding-category-XXX, and coding-category-list. | |
268 (Fdefine_coding_system_internal): Add category in the plist. | |
269 | |
270 2003-06-05 Kenichi Handa <handa@m17n.org> | |
271 | |
272 * callproc.c (Fcall_process): Handle carryover correctly. | |
273 | |
274 * coding.c (decode_coding_iso_2022): Fix handling of invalid | |
275 bytes. | |
276 (raw_text_coding_system): Check NILP (coding_system). | |
277 (coding_inherit_eol_type): Check NILP (coding_system) and | |
278 NILP (parent). | |
279 (consume_chars): Fix for the case of raw-text. | |
280 | |
281 * process.c (read_process_output): Handle carryover correctly. | |
282 | |
283 2003-06-02 Dave Love <fx@gnu.org> | |
284 | |
285 * regex.c (re_search_2): Fix last change. | |
286 | |
287 2003-05-30 Kenichi Handa <handa@m17n.org> | |
288 | |
289 * regex.c (GET_CHAR_BEFORE_2): Check multibyte, not | |
290 target_multibyte. Even in a unibyte case, return a converted | |
291 multibyte char. | |
292 (GET_CHAR_AFTER): New macro. | |
293 (PATFETCH): Translate via multibyte char. | |
294 (HANDLE_UNIBYTE_RANGE): Delete this macro. | |
295 (SETUP_MULTIBYTE_RANGE): New macro. | |
296 (regex_compile): Setup compiled code so that its multibyteness | |
297 matches that of a target. Fix the handling of "[X-YZ]" using | |
298 SETUP_MULTIBYTE_RANGE. | |
299 (analyse_first) <charset>: For filling fastmap for all multibyte | |
300 characters, don't check by BASE_LEADING_CODE_P. | |
301 (re_search_2): Don't check RE_TARGET_MULTIBYTE_P (bufp). It is | |
302 the same as RE_MULTIBYTE_P (bufp) now. | |
303 (mutually_exclusive_p): Check by (! multibyte || | |
304 IS_REAL_ASCII (c)). | |
305 (TARGET_CHAR_AND_LENGTH): Delete this macro. | |
306 (TRANSLATE_VIA_MULTIBYTE): New macro. | |
307 (re_match_2_internal): Don't check RE_TARGET_MULTIBYTE_P (bufp). | |
308 It is the same as RE_MULTIBYTE_P (bufp) now. | |
309 <exactn>: Translate via multibyte. | |
310 <anychar>: Fetch a character by RE_STRING_CHAR_AND_LENGTH. Don't | |
311 translate it. | |
312 <charset, charset_not>: Fetch a character by | |
313 RE_STRING_CHAR_AND_LENGTH. Translate via multibyte. | |
314 <duplicate>: Call bcmp_translate with the last arg `multibyte'. | |
315 <wordbound, notwordbound, wordbeg, wordend, syntaxspec, | |
316 notsyntaxspec, categoryspec, notcategoryspec> Fetch a character | |
317 by GET_CHAR_AFTER. | |
318 (bcmp_translate): Likewise. | |
319 | |
320 * search.c (compile_pattern): Check the member target_multibyte, | |
321 not the member multibyte of buf. | |
322 | |
323 * lread.c (read1): While reading a string, set force_singlebyte | |
324 and force_multibyte correctly. | |
325 | |
326 * charset.c (Fset_unibyte_charset): Fix setting up of | |
327 unibyte_to_multibyte_table. | |
328 (init_charset_once): Likewise. | |
329 | |
330 2003-05-29 Kenichi Handa <handa@m17n.org> | |
331 | |
332 * coding.c (setup_coding_system): If coding has | |
333 post-read-conversion or pre-write-conversion, set | |
334 CODING_REQUIRE_DECODING_MASK and CODING_REQUIRE_ENCODING_MASK | |
335 respectively. | |
336 (decode_coding_gap): Run post-read-conversion if any. | |
337 | |
338 * fileio.c (Finsert_file_contents): Even if we read into a | |
339 unibyte buffer, check if we must decode the result or not. | |
340 | |
341 2003-05-29 Kenichi Handa <handa@m17n.org> | |
342 | |
343 * coding.c (make_conversion_work_buffer): Change the work buffer | |
344 name to the same one as that of Emacs 21. | |
345 | |
346 2003-05-28 Kenichi Handa <handa@m17n.org> | |
347 | |
348 * coding.h (make_conversion_work_buffer): Prototype adjusted. | |
349 (code_conversion_restore): Don't extern it. | |
350 | |
351 * coding.c (detected_mask): Delete unused variable. | |
352 (decode_coding_iso_2022): Pay attention to the byte sequence of | |
353 CTEXT extended segment, and retain those bytes as is. | |
354 (decode_coding_ccl): Delete unused variable `valids'. | |
355 (setup_coding_system): Delete unused variable `category'. | |
356 (consume_chars): Delete unused variable `category'. Make it work | |
357 for non-multibyte case. | |
358 (make_conversion_work_buffer): Argument changed. | |
359 (saved_coding): Delete unused variable. | |
360 (code_conversion_restore): Don't check saved_coding->destination. | |
361 (code_conversion_save): New function. | |
362 (decode_coding_gap, encode_coding_gap): Call code_conversion_save | |
363 instead of record_unwind_protect. | |
364 (decode_coding_object, encode_coding_object): Likewise. Recover | |
365 PT. | |
366 (detect_coding_system): Delete unused variable `mask'. | |
367 (Fdefine_coding_system_internal): Delete unsed vaiable id; | |
368 | |
369 * fileio.c (kill_workbuf_unwind): New function. | |
370 (Finsert_file_contents): On replacing, call | |
371 make_conversion_work_buffer with correct args, and call | |
372 record_unwind_protect with the first arg kill_workbuf_unwind. | |
373 | |
374 * lisp.h (Fgenerate_new_buffer_name): EXFUN it. | |
375 | |
376 2003-05-20 Kenichi Handa <handa@m17n.org> | |
377 | |
378 * fontset.c (BASE_FONTSET_P): Check FONTSET_BASE, not | |
379 FONTSET_NAME. | |
380 (fontset_add): Fix for the case that TO is less than TO1. | |
381 (Ffontset_info): Don't use fallback fontset on checking the | |
382 default fontset. | |
383 (dump_fontset): New function for debugging. | |
384 | |
385 * coding.c (Fdefine_coding_system_internal): Fix for the case that | |
386 coding_type is Qcharset. | |
387 | |
388 2003-05-07 Kenichi Handa <handa@m17n.org> | |
389 | |
390 * chartab.c (map_sub_char_table): New argument DEFAULT_VAL. | |
391 (map_char_table): Don't inherit the value from the parent on | |
392 initializing VAL. Adjusted for the above change. | |
393 | |
394 2003-05-06 Kenichi Handa <handa@m17n.org> | |
395 | |
396 * coding.c (Qsignature, Qendian): Delete these variables. | |
397 (syms_of_coding): Don't initialize them. | |
398 (CATEGORY_MASK_UTF_16_AUTO): New macro. | |
399 (detect_coding_utf_16): Add CATEGORY_MASK_UTF_16_AUTO in | |
400 detect_info->found. | |
401 (decode_coding_utf_16): Don't detect BOM here. | |
402 (encode_coding_utf_16): Produce BOM if CODING_UTF_16_BOM (coding) | |
403 is NOT utf_16_without_bom. | |
404 (setup_coding_system): For a coding system of type utf-16, check | |
405 if the attribute :endian is Qbig or not (not nil or not), and set | |
406 CODING_REQUIRE_DETECTION_MASK if BOM detection is required. | |
407 (detect_coding): If coding type is utf-16 and BOM detection is | |
408 required, detect it. | |
409 (Fdefine_coding_system_internal): For a coding system of type | |
410 utf-16, check if the attribute :endian is Qbig or not (not nil or | |
411 not). | |
412 | |
413 2003-05-06 Kenichi Handa <handa@m17n.org> | |
414 | |
415 * coding.c (coding_set_source): Fix for the case that the current | |
416 buffer is different from coding->src_object. | |
417 (decode_coding_object): Don't use the conversion work buffer if | |
418 DST_OBJECT is a buffer. | |
419 | |
420 2003-05-04 Dave Love <fx@gnu.org> | |
421 | |
422 * lread.c (read_emacs_mule_char) [len==2]: Index | |
423 emacs_mule_charset correctly. | |
424 | |
425 2003-02-16 Dave Love <fx@gnu.org> | |
426 | |
427 * coding.c (Qbig5, Vbig5_coding_system, CATEGORY_MASK_BIG5) | |
428 (detect_coding_big5, decode_coding_big5, encode_coding_big5) | |
429 (Fdecode_big5_char, Fencode_big5_char): Deleted. (Big5 no longer | |
430 treated specially.) | |
431 (setup_coding_system, coding_category, CATEGORY_MASK_ANY) | |
432 (detected_mask): Remove Big5 bits. | |
433 | |
434 2003-04-09 Kenichi Handa <handa@m17n.org> | |
435 | |
436 The following changes are to make the font rescaling facility | |
437 compatible with Emacs 21. | |
438 | |
439 * xfaces.c (Vface_font_rescale_alist): Renamed from | |
440 Vface_resizing_fonts. | |
441 (struct font_name): Rename member resizing_ratio to rescale_ratio. | |
442 (font_rescale_ratio): Renamed from font_resizing_ratio. | |
443 (split_font_name): Set font->rescale_ratio. | |
444 (better_font_p): Pay attention to font->rescale_ratio. | |
445 (build_scalable_font_name): Likewise. Change RESX, and RESY | |
446 fields. | |
447 (syms_of_xfaces): Declare Vface_font_rescale_alist as a Lisp | |
448 variable. | |
449 | |
450 2003-03-28 Kenichi Handa <handa@m17n.org> | |
451 | |
452 * coding.c (Qutf_16_be_nosig, Qutf_16_be, Qutf_16_le_nosig) | |
453 (Qutf_16_le): Remove these variables. | |
454 (syms_of_coding): Don't DEFSYM them. | |
455 (decode_coding_utf_16): Fix handling of BOM. | |
456 (encode_coding_utf_16): Fix handling of BOM. | |
457 | |
458 2003-03-14 Kenichi Handa <handa@m17n.org> | |
459 | |
460 * fileio.c (Finsert_file_contents): On replacing, before decoding | |
461 the file into the work buffer, set point of the work buffer to the | |
462 end. | |
463 | |
464 2003-02-13 Dave Love <fx@gnu.org> | |
465 | |
466 * coding.c (Fcheck_coding_systems_region): Fix type errors. | |
467 | |
468 2003-02-04 Dave Love <fx@gnu.org> | |
469 | |
470 * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table | |
471 and fix C types. | |
472 | |
473 2003-01-31 Kenichi Handa <handa@m17n.org> | |
474 | |
475 * xdisp.c (SKIP_GLYPHS): New macro. | |
476 (set_cursor_from_row): Pay attention to string display properties. | |
477 | |
478 * category.c (copy_category_entry): Fix for the case that RANGE | |
479 is an integer. | |
480 | |
481 * xterm.c (x_encode_char): Call ccl_driver with the last arg Qnil. | |
482 | |
483 * w32term.c (w32_encode_char): Call ccl_driver with the last arg | |
484 Qnil. | |
485 | |
486 2003-01-30 Kenichi Handa <handa@m17n.org> | |
487 | |
488 * charset.c (Fcharset_id_internal): New function. | |
489 (syms_of_charset): Defsubr it. | |
490 | |
491 * coding.c (decode_coding_ccl, encode_coding_ccl): Call ccl_driver | |
492 with the last arg charset_list acquired from coding. | |
493 (Fdefine_coding_system_internal): For ccl-based coding system, fix | |
494 the attribute coding_attr_ccl_valids. | |
495 | |
496 * coding.h (enum define_coding_ccl_arg_index): Set the first | |
497 member coding_arg_ccl_decoder to coding_arg_max. | |
498 | |
499 * ccl.h (ccl_driver): Prototype adjusted. | |
500 | |
501 * ccl.c (CCL_DECODE_CHAR, CCL_ENCODE_CHAR): New macros. | |
502 (ccl_driver): New arg CHARSET_LIST. Use the above macros instead | |
503 of DECODE_CAHR, ENCODE_CHAR, CHAR_CHARSET. | |
504 (Fccl_execute): Call ccl_driver with the last arg Qnil. | |
505 (Fccl_execute_on_string): Likewise. | |
506 | |
507 2003-01-11 Kenichi Handa <handa@m17n.org> | |
508 | |
509 * charset.h (ENCODE_CHAR): If the method is SUBSET or SUPERSET, | |
510 call encode_char. | |
511 | |
512 * charset.c (encode_char): Fix handling of methods SUBSET and | |
513 SUPERSET. | |
514 | |
515 * xterm.c (x_new_fontset): Fix previous change. | |
516 | |
517 2003-01-10 Dave Love <fx@gnu.org> | |
518 | |
519 * composite.c (syms_of_composite): Make composition_hash_table | |
520 weak. | |
521 | |
522 2003-01-10 Kenichi Handa <handa@m17n.org> | |
523 | |
524 * dispextern.h (check_face_attributes, generate_ascii_font_name) | |
525 (font_name_registry): Don't extern them. | |
526 (split_font_name_into_vector, build_font_name_from_vector): Extern | |
527 them. | |
528 | |
529 * fontset.h (Qfontset): Don't extern it. | |
530 (new_fontset_from_font_name): Extern it. | |
531 | |
532 * fontset.c: Give 8 extra slots to fontset objects. | |
533 (Qfontset_info): New variable. | |
534 (syms_of_fontset): Defsym it. | |
535 (FONTSET_FALLBACK): New macro. | |
536 (fontset_face): Try also the default fontset. | |
537 (make_fontset): Realize a fallback fontset from the default | |
538 fontset. | |
539 (generate_ascii_font_name): Moved from xfaces.c. Rewritten by | |
540 using split_font_name_into_vector and build_font_name_from_vector. | |
541 (Fset_fontset_font): Access the elements of font_spec by enum | |
542 FONT_SPEC_INDEX. If font_spec is a string, extract the registry | |
543 name by using split_font_name_into_vector. | |
544 (Fnew_fontset): If no ASCII font is specified in FONTLIST, | |
545 generate a proper font name from the fontset name. Update | |
546 Vfontset_alias_alist. | |
547 (n_auto_fontsets): New variable. | |
548 (new_fontset_from_font_name): New function. | |
549 (Ffont_info): Store the information about fonts generated from the | |
550 default fontset in the first extra slot of the returned | |
551 char-table. | |
552 | |
553 * xfaces.c (generate_ascii_font_name): Moved to fontset.c. | |
554 (font_name_registry): Function deleted. | |
555 (split_font_name_into_vector): New function. | |
556 (build_font_name_from_vector): New function. | |
557 (font_list): The argument REGISTRY is now a list of registry | |
558 names. | |
559 (choose_face_font): If we are choosing an ASCII font, and ATTRS | |
560 specifies an explicit font name, return the name as is. Make a | |
561 list of registy names. | |
562 | |
563 * xfns.c (x_set_font, x_create_tip_frame): Adjusted to the change | |
564 of x_new_fontset. | |
565 (Fx_create_frame): Don't call x_new_fontset here. Just use | |
566 x_list_fonts to check the existence of fonts. | |
567 | |
568 * xterm.h (x_new_fontset): Prototype adjusted. | |
569 | |
570 * xterm.c (x_new_fontset): Change the arg FONTSETNAME to Lisp | |
571 string. Use new_fontset_from_font_name to create a fontset from a | |
572 font name. | |
573 | |
574 2003-01-07 Dave Love <fx@gnu.org> | |
575 | |
576 * Makefile.in: Fix some dependencies. | |
577 | |
578 * keymap.c (Fapropos_internal): Don't gcpro apropos_predicate but | |
579 set it to nil before returning. | |
580 | |
581 * composite.c (update_compositions): Fix type error. | |
582 | |
583 * syntax.c (skip_chars, skip_syntaxes): Fix type errors. | |
584 | |
585 2003-01-07 Kenichi Handa <handa@etl.go.jp> | |
586 | |
587 * xterm.c (x_new_font): Optimize for the case that the font is | |
588 already set for the frame. | |
589 | |
590 2003-01-06 Kenichi Handa <handa@m17n.org> | |
591 | |
592 * chartab.c (char_table_ascii): Check if the char table contents | |
593 is sub-char-table or not. | |
594 (char_table_set): Fix argument to char_table_ascii. | |
595 (char_table_set_range): Likewise. | |
596 | |
597 * coding.c (CATEGORY_MASK_RAW_TEXT): New macro. | |
598 (detect_coding_utf_8, detect_coding_utf_16) | |
599 (detect_coding_emacs_mule, detect_coding_iso_2022) | |
600 (detect_coding_sjis, detect_coding_big5) | |
601 (detect_coding_ccl, detect_coding_charset): Change argument MASK | |
602 to DETECT_INFO. Update DETECT_INFO and return 1 if the byte | |
603 sequence is valid in this coding system. Callers changed. | |
604 (MAX_ANNOTATION_LENGTH): New macro. | |
605 (ADD_ANNOTATION_DATA): New macro. | |
606 (ADD_COMPOSITION_DATA): Argument changed. Callers changed. Call | |
607 ADD_ANNOTATION_DATA. The format of annotation data changed. | |
608 (ADD_CHARSET_DATA): New macro. | |
609 (emacs_mule_char): New argument ID. Callers changed. | |
610 (decode_coding_emacs_mule, decode_coding_iso_2022) | |
611 (decode_coding_sjis, decode_coding_big5, decode_coding_charset): | |
612 Produce charset annotation data in coding->charbuf. | |
613 (encode_coding_emacs_mule, encode_coding_iso_2022): Pay attention | |
614 to charset annotation data in coding->charbuf. | |
615 (setup_coding_system): Add CODING_ANNOTATE_CHARSET_MASK | |
616 coding->common_flags if the coding system is iso-2022 based and | |
617 uses designation. | |
618 (produce_composition): Adjusted for the new annotation data | |
619 format. | |
620 (produce_charset): New function. | |
621 (produce_annotation): Handle charset annotation. | |
622 (handle_composition_annotation, handle_charset_annotation): New | |
623 functions. | |
624 (consume_chars): Handle charset annotation. Utilize the above two | |
625 functions. | |
626 (encode_coding_object): If SRC_OBJECT and DST_OBJECT are the same | |
627 buffer, get the deleted text as a string and set | |
628 coding->src_object to that string. | |
629 (detect_coding, detect_coding_system): Use the new struct | |
630 coding_detection_info. | |
631 | |
632 * coding.h (struct coding_detection_info): New structure. | |
633 (struct coding_system): Prototype of the member `detector' | |
634 adjusted. | |
635 (CODING_ANNOTATE_CHARSET_MASK): New macro. | |
636 | |
637 2003-01-06 Kenichi Handa <handa@etl.go.jp> | |
638 | |
639 * insdel.c (insert_from_gap): Fix argument to offset_intervals. | |
640 | |
641 2003-01-03 Dave Love <fx@gnu.org> | |
642 | |
643 * keymap.c (apropos_predicate, apropos_accumulate): Declare | |
644 static. | |
645 (Fapropos_internal): Don't gcpro apropos_accumulate. Set result | |
646 to new local and nullify apropos_accumulate before returning. | |
647 (syms_of_keymap): Staticpro and initialize apropos_accumulate. | |
648 | |
649 2002-12-05 Kenichi Handa <handa@m17n.org> | |
650 | |
651 * charset.c (Fdefine_charset_internal): Setup charset.fast_map | |
652 correctly. | |
653 | |
654 2002-11-26 Dave Love <fx@gnu.org> | |
655 | |
656 * fns.c (Flanginfo): Call synchronize_system_time_locale. | |
657 | |
658 2002-11-07 Kenichi Handa <handa@m17n.org> | |
659 | |
660 The following changes are to make character composition happen | |
661 automatically on displaying. | |
662 | |
663 * Makefile.in (lisp, shortlisp): Add composite.elc | |
664 | |
665 * composite.h (Qauto_composed, Vauto_composition_function, | |
666 Qauto_composition_function): Extern them. | |
667 | |
668 * composite.c (Vcomposition_function_table, | |
669 Qcomposition_function_table): Delete variables. | |
670 (Qauto_composed, Vauto_composition_function, | |
671 Qauto_composition_function): New variables. | |
672 (run_composition_function): Don't call | |
673 compose-chars-after-function. | |
674 (update_compositions): Clear `auto-composed' text property. | |
675 (compose_chars_in_text): Delete this function. | |
676 (syms_of_composite): Staticpro Qauto_composed and | |
677 Qauto_composition_function. Declare Vauto_composition_function as | |
678 a Lisp variable. | |
679 | |
680 * dispextern.h (enum prop_idx): Add member AUTO_COMPOSED_PROP_IDX. | |
681 | |
682 * xdisp.c (it_props): Add an entry for Qauto_composed. | |
683 (handle_auto_composed_prop): New function. | |
684 | |
685 * xselect.c (selection_data_to_lisp_data): Don't call | |
686 compose_chars_in_text. | |
687 | |
688 2002-11-06 Dave Love <fx@gnu.org> | |
689 | |
690 * keyboard.c (read_char): Modify checking around use of | |
691 Vkeyboard_translate_table. | |
692 | |
693 * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table | |
694 and fix C types. | |
695 | |
696 2002-11-06 Kenichi Handa <handa@m17n.org> | |
697 | |
698 * coding.c (decode_coding_utf_8): When eol_type is Qdos, handle | |
699 the case that the last byte is '\r' correctly. | |
700 (decode_coding_emacs_mule): Likewise. | |
701 (decode_coding_iso_2022): Likewise. | |
702 (decode_coding_sjis): Likewise. | |
703 (decode_coding_big5): Likewise. | |
704 (decode_coding_charset): Likewise. | |
705 (produce_chars): Likewise. | |
706 (decode_coding): Flushing out the unprocessed data correctly. | |
707 (decode_coding_gap): Set CODING_MODE_LAST_BLOCK bit of | |
708 coding->mode. | |
709 | |
710 2002-10-31 Dave Love <fx@gnu.org> | |
711 | |
712 * xterm.c (XTread_socket): Fix changes for defined keysyms. Add | |
713 XK_ISO... case. | |
714 (xaw_scroll_callback): Revert last change. | |
715 | |
716 2002-10-30 Kenichi Handa <handa@m17n.org> | |
717 | |
718 * charset.c (Fset_charset_priority): Update | |
719 Viso_2022_charset_list. | |
720 | |
721 2002-10-29 Kenichi Handa <handa@m17n.org> | |
722 | |
723 * xfaces.c (Vface_resizing_fonts): New variable. | |
724 (struct font_name): New member `resizing_ratio'. | |
725 (font_resizing_ratio): New function. | |
726 (split_font_name): Set font->resizing_ratio. | |
727 (better_font_p): Pay attention to font->resizing_ratio. | |
728 (build_scalable_font_name): Likewise. Don't change POINT_SIZE, | |
729 RESX, and RESY fields. | |
730 (try_alternative_families): Try scalable fonts if | |
731 Vscalable_fonts_allowed is not Qt. | |
732 (syms_of_xfaces): Declare Vface_resizing_fonts as a Lisp variable. | |
733 | |
734 2002-10-29 Dave Love <fx@gnu.org> | |
735 | |
736 * xterm.c (xaw_scroll_callback): Cast correctly. | |
737 | |
738 2002-10-28 Dave Love <fx@gnu.org> | |
739 | |
740 * keyboard.c (lispy_accent_codes, lispy_accent_keys): Extend. | |
741 (lispy_kana_keys): Comment out. | |
742 (make_lispy_event) [XK_kana_A]: Comment out. | |
743 | |
744 * xterm.c (xaw_scroll_callback): Cast call_data. | |
745 (XTread_socket): Deal with ASCII keysyms. | |
746 (syms_of_xterm) <Vx_keysym_table>: Fix args of make_hash_table. | |
747 | |
748 2002-10-27 Dave Love <fx@gnu.org> | |
749 | |
750 * xterm.c (Vx_keysym_table): New. | |
751 (syms_of_xterm): Initialize it. | |
752 (XTread_socket): Use it. | |
753 From head: Eliminate incorrect optimization that tried to avoid | |
754 decoding the output of X*LookupString. | |
755 (x_get_font_repertory): Delete charset declaration. | |
756 | |
757 2002-10-16 Kenichi Handa <handa@m17n.org> | |
758 | |
759 * coding.c (detect_coding): Fix previous change. | |
760 (detect_coding_charset): If only ASCII bytes are found, return 0. | |
761 (detect_coding_system): Fix previous change. | |
762 (Fdefine_coding_system_internal): Setup CODING_ATTR_ASCII_COMPAT | |
763 (attrs) correctly. | |
764 | |
765 2002-10-15 Dave Love <fx@gnu.org> | |
766 | |
767 * coding.c (Fcheck_coding_system): Doc fix. | |
768 | |
769 * editfns.c (Finsert_byte): Return a proper value. | |
770 | |
771 2002-10-14 Kenichi Handa <handa@etl.go.jp> | |
772 | |
773 * coding.c (decode_coding): Fix args to translate_chars. Pay | |
774 attention to Vstandard_translation_table_for_decode. | |
775 (encode_coding): Fix args to translate_chars. Pay attention to | |
776 Vstandard_translation_table_for_encode. | |
777 | |
778 * data.c (Faset): Check NEWELT by ASCII_CHAR_P, not by | |
779 SINGLE_BYTE_CHAR_P. | |
780 | |
781 * editfns.c (general_insert_function): Check VAL by ASCII_CHAR_P, | |
782 not by SINGLE_BYTE_CHAR_P. | |
783 | |
784 * fns.c (concat): Check CH by ASCII_CHAR_P, not by | |
785 SINGLE_BYTE_CHAR_P. | |
786 | |
787 * insdel.c (copy_text): Check C by ASCII_CHAR_P, not by | |
788 SINGLE_BYTE_CHAR_P. | |
789 | |
790 * keymap.c (Ftext_char_description): Check C by ASCII_CHAR_P, not | |
791 by SINGLE_BYTE_CHAR_P. | |
792 | |
793 * search.c (Freplace_match): Check C by ASCII_CHAR_P, not by | |
794 SINGLE_BYTE_CHAR_P. | |
795 | |
796 2002-10-14 Dave Love <fx@gnu.org> | |
797 | |
798 * fns.c (Fstring_as_multibyte, Fstring_to_multibyte): Doc fix. | |
799 | |
800 2002-10-10 Dave Love <fx@gnu.org> | |
801 | |
802 * fns.c (Flanginfo): Fix typo. | |
803 | |
804 * unexelf.c (unexec): Make last change conditional on Irix 6.5. | |
805 | |
806 2002-10-10 Kenichi Handa <handa@m17n.org> | |
807 | |
808 * coding.c (detect_coding_utf_8): Check incomplete byte sequence. | |
809 Don't update *mask when correctly detected. | |
810 (detect_coding_utf_16): Likewise. | |
811 (detect_coding_emacs_mule): Likewise. | |
812 (detect_coding_iso_2022): Likewise. | |
813 (detect_coding_sjis): Likewise. | |
814 (detect_coding_big5): Likewise. | |
815 (detect_coding_ccl): Likewise. | |
816 (decode_coding_sjis): Fix decoding of katakana-jisx0201. | |
817 (detect_eol): Delete the argument CODING, and add the argument | |
818 CATEGORY. | |
819 (detect_coding): Adjusted for the changes above. | |
820 (detect_coding_system): Likewise. | |
821 | |
822 2002-10-09 Kenichi Handa <handa@m17n.org> | |
823 | |
824 * character.c (char_string): Renamed from | |
825 char_string_with_unification. Pay attention to | |
826 CHAR_MODIFIER_MASK. | |
827 (string_char): Renamed from string_char. | |
828 | |
829 * character.h (CHAR_STRING): Call char_string if C is greater than | |
830 MAX_3_BYTE_CHAR. | |
831 (CHAR_STRING_ADVANCE): Likewise. | |
832 (STRING_CHAR): Call string_char instead of | |
833 string_char_with_unification. | |
834 (STRING_CHAR_AND_LENGTH): Likewise. | |
835 (STRING_CHAR_ADVANCE): Likewise. | |
836 | |
837 2002-10-09 Dave Love <fx@gnu.org> | |
838 | |
839 * coding.c (decode_coding_utf_8): Treat surrogates as invalid. | |
840 | |
841 2002-10-07 Kenichi Handa <handa@m17n.org> | |
842 | |
843 * keymap.c (push_key_description): Pay attention to | |
844 force_multibyte. | |
845 | |
846 * regex.c (re_search_2): Fix for the case of unibyte buffer. | |
847 | |
848 2002-10-06 Dave Love <fx@gnu.org> | |
849 | |
850 * charset.c (define_charset_internal): Rename `supprementary'. | |
851 | |
852 * Makefile.in (lisp, shortlisp): Remove latin-N. | |
853 | |
854 2002-10-05 Dave Love <fx@gnu.org> | |
855 | |
856 * xfns.c (x_window, x_window): Use use_xim. | |
857 | |
858 * xterm.c (use_xim): Initialize. | |
859 (xim_open_dpy, xim_initialize, xim_close_dpy): Use use_xim. | |
860 (x_term_init): Maybe set use_xim. | |
861 | |
862 * xterm.h (use_xim) [HAVE_X_I18N]: Declare. | |
863 | |
864 2002-10-01 Kenichi Handa <handa@m17n.org> | |
865 | |
866 * search.c (search_buffer): Fix case-fold-search of multibyte | |
867 characters. | |
868 (boyer_moore): Rename the last argument to char_high_bits. | |
869 | |
870 2002-09-27 Kenichi Handa <handa@etl.go.jp> | |
871 | |
872 * xdisp.c (display_string): Fix for the case of zero width glyph. | |
873 | |
874 * xfns.c (x_set_font): Change the error message of the case that | |
875 x_new_fontset returns Qt. | |
876 | |
877 * xfaces.c (set_lface_from_font_name): Reject the default fontset. | |
878 (Finternal_set_lisp_face_attribute): Use signal_error for the | |
879 error of invalid fontset. | |
880 | |
881 * xterm.c (x_new_fontset): If FONTSETNAME specifies the default | |
882 fontset, return Qt. | |
883 | |
884 2002-09-19 Kenichi Handa <handa@etl.go.jp> | |
885 | |
886 * regex.c (re_search_2): Fix previous change. | |
887 | |
888 2002-09-18 Kenichi Handa <handa@etl.go.jp> | |
889 | |
890 * syntax.c (skip_syntaxes): Fix previous change. | |
891 | |
892 2002-09-13 Kenichi Handa <handa@etl.go.jp> | |
893 | |
894 * syntax.c (skip_chars): Fix previous change. | |
895 (skip_syntaxes): Fix previous change. | |
896 | |
897 2002-09-06 Dave Love <fx@gnu.org> | |
898 | |
899 * config.in: Restore it. | |
900 | |
901 2002-09-05 Dave Love <fx@gnu.org> | |
902 | |
903 * config.in: Removed (now auto-generated). | |
904 | |
905 * s/usg5-4.h: Fix last change. | |
906 | |
907 * unexelf.c (unexec): Make .got handling not SGI-specific. | |
908 | |
909 * syntax.c (syms_of_syntax) <multibyte-syntax-as-symbol>: Doc fix. | |
910 | |
911 * regex.c: Use `ifdef HAVE_ALLOCA_H', not `if HAVE_ALLOCA_H'. | |
912 | |
913 * keyboard.c (read_key_sequence): Fix type error. | |
914 | |
915 * buffer.c (Fset_buffer_multibyte, Fset_buffer_multibyte): Fix | |
916 type error. | |
917 | |
918 * fontset.c (fontset_add): Return Lisp_Object. | |
919 | |
920 2002-09-03 Dave Love <fx@gnu.org> | |
921 | |
922 * charset.h (charset_ordered_list_tick): Declare extern. | |
923 | |
924 2002-09-03 Kenichi Handa <handa@etl.go.jp> | |
925 | |
926 The following changes (and some of 2002-08-20 changes of mine) are | |
927 for handling syntax, category, and case conversion for unibyte | |
928 characters by converting them to multibyte on the fly. With these | |
929 changes, we don't have to setup syntax and case tables for unibyte | |
930 characters in each language environment. | |
931 | |
932 * abbrev.c (Fexpand_abbrev): Convert a unibyte character to | |
933 multibyte if necessary. | |
934 | |
935 * bytecode.c (Fbyte_code): Likewise. | |
936 | |
937 * character.h (LEADING_CODE_LATIN_1_MIN) | |
938 (LEADING_CODE_LATIN_1_MAX): New macros. | |
939 (unibyte_to_multibyte_table): Extern it. | |
940 (unibyte_char_to_multibyte): New macro. | |
941 (MAKE_CHAR_MULTIBYTE): Use unibyte_to_multibyte_table. | |
942 (CHAR_LEADING_CODE): New macro. | |
943 (FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE): New macro. | |
944 | |
945 * character.c (unibyte_to_multibyte_table): New variable. | |
946 (unibyte_char_to_multibyte): Move to character.h and defined as | |
947 macro. | |
948 (multibyte_char_to_unibyte): If C is an eight-bit character, | |
949 convert it to the corresponding byte value. | |
950 | |
951 * charset.c (Fset_unibyte_charset): If the dimension of CHARSET is | |
952 not 1, singals an error. Update the elements of | |
953 unibyte_to_multibyte_table. | |
954 (init_charset_once): Initialize unibyte_to_multibyte_table. | |
955 (syms_of_charset): Define the charset `iso-8859-1'. | |
956 | |
957 * casefiddle.c (casify_object): Fix previous change. | |
958 | |
959 * cmds.c (internal_self_insert): In a multibyte buffer, insert C | |
960 as is without converting it to unibyte. In a unibyte buffer, | |
961 convert C to multibyte before checking the syntax. | |
962 | |
963 * lisp.h (unibyte_char_to_multibyte): Extern deleted. | |
964 | |
965 * minibuf.c (Fminibuffer_complete_word): Use the macro | |
966 FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE. | |
967 | |
968 * regex.h (struct re_pattern_buffer): New member target_multibyte. | |
969 | |
970 * regex.c (RE_TARGET_MULTIBYTE_P): New macro. | |
971 (GET_CHAR_BEFORE_2): Check target_multibyte, not multibyte. If | |
972 that is zero, convert an eight-bit char to multibyte. | |
973 (MAKE_CHAR_MULTIBYTE, CHAR_LEADING_CODE): New dummy new macros for | |
974 non-emacs case. | |
975 (PATFETCH): Convert an eight-bit char to multibyte. | |
976 (HANDLE_UNIBYTE_RANGE): New macro. | |
977 (regex_compile): Setup the compiled pattern for multibyte chars | |
978 even if the given regex string is unibyte. Use PATFETCH_RAW | |
979 instead of PATFETCH in many places. To handle `charset' | |
980 specification of unibyte, call HANDLE_UNIBYTE_RANGE. Use bitmap | |
981 only for ASCII chars. | |
982 (analyse_first) <exactn>: Simplified because the compiled pattern | |
983 is multibyte. | |
984 <charset_not>: Setup fastmap from bitmap only for ASCII chars. | |
985 <charset>: Use CHAR_LEADING_CODE to get leading codes. | |
986 <categoryspec>: If multibyte, setup fastmap only for ASCII chars | |
987 here. | |
988 (re_compile_fastmap) [emacs]: Call analyse_first with the arg | |
989 multibyte always 1. | |
990 (re_search_2) In emacs, set the locale variable multibyte to 1, | |
991 otherwise to 0. New local variable target_multibyte. Check it | |
992 to decide the multibyteness of STR1 and STR2. If | |
993 target_multibyte is zero, convert unibyte chars to multibyte | |
994 before translating and checking fastmap. | |
995 (TARGET_CHAR_AND_LENGTH): New macro. | |
996 (re_match_2_internal): In emacs, set the locale variable multibyte | |
997 to 1, otherwise to 0. New local variable target_multibyte. Check | |
998 it to decide the multibyteness of STR1 and STR2. Use | |
999 TARGET_CHAR_AND_LENGTH to fetch a character from D. | |
1000 <charset, charset_not>: If multibyte is nonzero, check fastmap | |
1001 only for ASCII chars. Call bcmp_translate with | |
1002 target_multibyte, not with multibyte. | |
1003 <begline>: Declare the local variable C as `unsigned'. | |
1004 (bcmp_translate): Change the last arg name to target_multibyte. | |
1005 | |
1006 * search.c (compile_pattern_1): Don't adjust the multibyteness of | |
1007 the regexp pattern and the matching target. Set cp->buf.multibyte | |
1008 to the multibyteness of the regexp pattern. Set | |
1009 cp->but.target_multibyte to the multibyteness of the matching | |
1010 target. | |
1011 (wordify): Use FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE instead of | |
1012 FETCH_STRING_CHAR_ADVANCE. | |
1013 (Freplace_match): Convert unibyte chars to multibyte. | |
1014 | |
1015 * syntax.c (char_quoted): Use FETCH_CHAR_AS_MULTIBYTE to convert | |
1016 unibyte chars to multibyte. | |
1017 (back_comment): Likewise. | |
1018 (scan_words): Likewise. | |
1019 (skip_chars): The arg syntaxp is deleted, and the code for | |
1020 handling syntaxes is moved to skip_syntaxes. Callers changed. | |
1021 Fix the case that the multibyteness of STRING and the current | |
1022 buffer doesn't match. | |
1023 (skip_syntaxes): New function. | |
1024 (SYNTAX_WITH_MULTIBYTE_CHECK): Check C by ASCII_CHAR_P, not by | |
1025 SINGLE_BYTE_CHAR_P. | |
1026 (Fforward_comment): Use FETCH_CHAR_AS_MULTIBYTE to convert unibyte | |
1027 chars to multibyte. | |
1028 (scan_lists): Likewise. | |
1029 (Fbackward_prefix_chars): Likewise. | |
1030 (scan_sexps_forward): Likewise. | |
1031 | |
1032 2002-08-23 Kenichi Handa <handa@etl.go.jp> | |
1033 | |
1034 * xfaces.c (QCfontset): New variable. | |
1035 (LFACE_FONTSET): New macro. | |
1036 (check_lface_attrs): Check also LFACE_FONTSET_INDEX. | |
1037 (set_lface_from_font_name): Setup LFACE_FONTSET (lface). | |
1038 (Finternal_set_lisp_face_attribute): Handle QCfontset. | |
1039 (Finternal_get_lisp_face_attribute): Likewise. | |
1040 (lface_same_font_attributes_p): Fix checking of LFACE_FONT_INDEX, | |
1041 check also LFACE_FONTSET_INDEX. | |
1042 (face_fontset): Check attrs[LFACE_FONTSET_INDEX], not | |
1043 attrs[LFACE_FONT_INDEX]. | |
1044 (syms_of_xfaces): Intern and staticpro QCfontset. | |
1045 | |
1046 * dispextern.h (enum lface_attribute_index): New member | |
1047 LFACE_FONTSET_INDEX. | |
1048 | |
1049 * fns.c (base64_encode_1): Handle eight-bit chars correctly. | |
1050 | |
1051 2002-08-21 Kenichi Handa <handa@etl.go.jp> | |
1052 | |
1053 * coding.c (coding_set_destination): Fix coding->destination for | |
1054 the case converting a region. | |
1055 (encode_coding_utf_8): Encode eight-bit chars as single byte. | |
1056 (encode_coding_object): Fix coding->dst_pos and | |
1057 coding->dst_pos_byte for the case converting a region. | |
1058 | |
1059 * insdel.c (insert_from_gap): Make it work even if PT != GTP. | |
1060 | |
1061 * character.h (BYTE8_STRING): New macro. | |
1062 | |
1063 * fns.c (base64_decode_1): Insert eight-bit chars correctly. | |
1064 | |
1065 2002-08-20 Kenichi Handa <handa@etl.go.jp> | |
1066 | |
1067 * xdisp.c (get_next_display_element): Don't display unibyte 8-bit | |
1068 characters by octal form. | |
1069 | |
1070 * abbrev.c (Fexpand_abbrev): Fix for the multibyte case. | |
1071 | |
1072 * buffer.h (_fetch_multibyte_char_len): Extern deleted. | |
1073 (FETCH_MULTIBYTE_CHAR): Don't use _fetch_multibyte_char_len. | |
1074 (BUF_FETCH_MULTIBYTE_CHAR): Likewise. | |
1075 (FETCH_CHAR_AS_MULTIBYTE): New macro. | |
1076 | |
1077 * casetab.c (set_canon, set_identity, shuffle): Simplified. | |
1078 | |
1079 * casefiddle.c (casify_object): Simplified. Handle the case that | |
1080 the case conversion change the byte length. | |
1081 (casify_region): Likewise | |
1082 | |
1083 * character.h (MAKE_CHAR_UNIBYTE, MAKE_CHAR_MULTIBYTE): New | |
1084 macros. | |
1085 | |
1086 * character.c (_fetch_multibyte_char_len): This variable deleted. | |
1087 (syms_of_character): Setup Vprintable_chars. | |
1088 | |
1089 * editfns.c (Fchar_equal): Fix for the unibyte case. | |
1090 (Finsert_byte): New function. | |
1091 (syms_of_editfns): Defsubr it. | |
1092 | |
1093 * keyboard.c (read_key_sequence): Use ~CHAR_MODIFIER_MASK instead | |
1094 of direct code 0x3ffff. | |
1095 | |
1096 * search.c (Freplace_match): Fix for the unibyte case. | |
1097 | |
1098 2002-08-19 Kenichi Handa <handa@etl.go.jp> | |
1099 | |
1100 * lread.c (safe_to_load_p): Fix the logic. | |
1101 | |
1102 * syntax.c (scan_words): Don't treat characters belonging to | |
1103 different scripts as constituting a word. | |
1104 | |
1105 * editfns.c (Fformat): Use ASCII_CHAR_P, not SINGLE_BYTE_CHAR_P. | |
1106 | |
1107 * fontset.c (Fset_fontset_font): Treat `ascii' as charset, not | |
1108 script. | |
1109 | |
1110 * emacs.c (main): In the case of --unibyte, instead of aborting on | |
1111 finding non-empty buffer, make it unibyte. | |
1112 | |
1113 2002-08-18 Kenichi Handa <handa@etl.go.jp> | |
1114 | |
1115 * xterm.c (x_new_fontset): Call `create-fontset-from-ascii-font' | |
1116 to create a fontset. | |
1117 | |
1118 2002-08-18 Dave Love <fx@gnu.org> | |
1119 | |
1120 * character.c (Funibyte_char_to_multibyte): Doc fix. | |
1121 | |
1122 * xfns.c [HAVE_STDLIB_H]: Fix last change. | |
1123 | |
1124 2002-08-15 Kenichi Handa <handa@etl.go.jp> | |
1125 | |
1126 * fontset.c (fontset_add): Make the type `int'. | |
1127 (fontset_id_valid_p): Define it if FONTSET_DEBUG is defined. | |
1128 | |
1129 * character.c (unibyte_char_to_multibyte): Refer to | |
1130 charset_unibyte, not charset_primary. | |
1131 (multibyte_char_to_unibyte): Likewise. | |
1132 (Funibyte_char_to_multibyte): Likewise. | |
1133 | |
1134 * charset.h: (charset_unibyte): Extern it instead of | |
1135 charset_primary. | |
1136 | |
1137 * charset.c (charset_unibyte): Renamed from charset_primary. | |
1138 (Funibyte_charset): Renamed from Fprimary_charset. | |
1139 (Fset_unibyte_charset): Renamed from Fset_primary_charset. | |
1140 (syms_of_charset): Adjusted for the above changes. | |
1141 | |
1142 * w32term.c (x_produce_glyphs): Use ASCII_CHAR_P, not | |
1143 SINGLE_BYTE_CHAR_P. Fix the logic of handling non-ASCII char when | |
1144 it->multibyte_p is zero. | |
1145 | |
1146 * lisp.h (nonascii_insert_offset, Vnonascii_translation_table): | |
1147 Extern deleted. | |
1148 | |
1149 2002-08-08 Kenichi Handa <handa@etl.go.jp> | |
1150 | |
1151 * coding.c (Fdefine_coding_system_internal): Fix category setting | |
1152 for a coding system of type iso-2022. | |
1153 | |
1154 2002-08-02 Kenichi Handa <handa@etl.go.jp> | |
1155 | |
1156 * fontset.h (FS_LOAD_FONT): Call fs_load_font with the arg CHARSET | |
1157 -1. | |
1158 | |
1159 2002-08-01 Kenichi Handa <handa@etl.go.jp> | |
1160 | |
1161 * syntax.c (Vnext_word_boundary_function_table): New variable. | |
1162 (syms_of_syntax): Declare it as a Lisp variable. | |
1163 (scan_words): Call functions in Vnext_word_boundary_function_table | |
1164 if any. | |
1165 | |
1166 * xterm.c (x_load_font): Initialize fontp->fontset to -1. | |
1167 | |
1168 * fontset.c (fs_load_font): If fontp->charset is not negative, | |
1169 return fontp without setting its members. | |
1170 | |
1171 2002-07-31 Dave Love <fx@gnu.org> | |
1172 | |
1173 * config.in: Generated with autoheader. | |
1174 | |
1175 * xfns.c [HAVE_STDLIB_H]: Change logic (instead of fixing typo). | |
1176 | |
1177 * m/sparc.h (HAVE_ALLOCA): Delete. | |
1178 | |
1179 * s/irix6-5.h: Don't include strings.h. | |
1180 (bcopy, bzero, bcmp): Don't undef. | |
1181 | |
1182 * s/irix6-0.h (bcopy, bzero, bcmp): Don't undef. | |
1183 | |
1184 * s/usg5-4.h (NO_SIOCTL_H): Don't define. | |
1185 (TIOCSIGSEND): Don't test IRIX6. | |
1186 (bcopy, bzero, bcmp): Define conditionally. | |
1187 | |
1188 2002-07-31 Kenichi Handa <handa@etl.go.jp> | |
1189 | |
1190 * buffer.c (Qas, Qmake, Qto): New variables. | |
1191 (Fset_buffer_multibyte): New optional arg METHOD. Caller changed. | |
1192 (syms_of_buffer): Intern and staticpro Qas, Qmake, and Qto. | |
1193 | |
1194 * callproc.c (Fcall_process): Don't call insert_1_both directly if | |
1195 we are inserting a process output into a multibyte buffer. | |
1196 | |
1197 * character.h (CHAR_TO_BYTE8): If C is not eight-bit char, call | |
1198 multibyte_char_to_unibyte. | |
1199 | |
1200 * character.c (Funibyte_char_to_multibyte): If C can't be decoded | |
1201 by the primary charset, make it eight-bit char. | |
1202 (Fmultibyte_char_to_unibyte): Call CHAR_TO_BYTE8. | |
1203 | |
1204 * charset.c: (charset_eight_bit, Qeight_bit_control): New | |
1205 variables. | |
1206 (charset_8_bit__control, charset_8_bit_graphic, | |
1207 Qeight_bit_control, Qeight_bit_graphic): These variables deleted. | |
1208 (define_charset_internal): New function. | |
1209 (syms_of_charset): Call define_charset_internal for pre-defined | |
1210 charsets. | |
1211 | |
1212 * charset.h (charset_8_bit): Extern it. | |
1213 | |
1214 * coding.c (make_conversion_work_buffer): Adjusted for the change | |
1215 of Fset_buffer_multibyte. | |
1216 (encode_coding_raw_text): Increment p0 in the loop. | |
1217 | |
1218 * lisp.h (Fset_buffer_multibyte): Prototype adjusted. | |
1219 | |
1220 * xdisp.c (setup_echo_area_for_printing, set_message_1): Adjusted | |
1221 for the change of Fset_buffer_multibyte. | |
1222 | |
1223 * fns.c (Fstring_to_multibyte): New function. | |
1224 (syms_of_fns): Declare Fstring_to_multibyte as Lisp subroutine. | |
1225 | |
1226 2002-07-30 Dave Love <fx@gnu.org> | |
1227 | |
1228 * xfns.c (x_put_x_image): Declare args. | |
1229 | |
1230 * xfaces.c (font_name_registry, choose_face_font): Delete unused | |
1231 vars. | |
1232 (try_font_list): Declare an arg. | |
1233 | |
1234 * xdisp.c (message2_nolog, set_message): Declare an arg. | |
1235 | |
1236 * terminfo.c (tparam): Declare an arg. Use P_ to declare tparm. | |
1237 | |
1238 * syntax.c (scan_sexps_forward): Declare an arg. | |
1239 | |
1240 * scroll.c (calculate_scrolling, calculate_direct_scrolling): | |
1241 Declare an arg. | |
1242 | |
1243 * lisp.h (Fnew_fontset): Declare. | |
1244 | |
1245 * keymap.c (push_key_description): Call CHARACTERP correctly. | |
1246 | |
1247 * fontset.c (fontset_add): Declare args. Call make_number | |
1248 correctly. | |
1249 (face_for_char): Delete unused vars. | |
1250 (Fset_fontset_font): Doc fix. Delete unused vars. | |
1251 | |
1252 * doc.c (Fsubstitute_command_keys): Delete unused vars. | |
1253 | |
1254 * composite.c (update_compositions): Declare arg. | |
1255 | |
1256 * cm.c (calccost, cmgoto): Declare args. | |
1257 | |
1258 * charset.c: Remove `emacs' conditional. Doc fixes. | |
1259 (map_char_table_for_charset): Declare. | |
1260 | |
1261 * character.c (syms_of_character) <translation-table-vector>: Doc | |
1262 fix. | |
1263 | |
1264 * ccl.c: Remove `emacs' conditional. Include hash table stuff | |
1265 from trunk. | |
1266 | |
1267 2002-07-26 Kenichi Handa <handa@etl.go.jp> | |
1268 | |
1269 The following changes are to allow specifying multiple font | |
1270 patterns for a character range (specified by script or charset). | |
1271 | |
1272 * Makefile.in (abbrev.o): Depend on syntax.h. | |
1273 (xfaces.o): Depend on charset.h. | |
1274 | |
1275 * alloc.c (Fmake_string): Use ASCII_CHAR_P, not | |
1276 SINGLE_BYTE_CHAR_P. | |
1277 | |
1278 * ccl.c (Fccl_execute_on_string): Add `const' to local variables. | |
1279 | |
1280 * character.h (Vchar_script_table): Extern it. | |
1281 | |
1282 * character.c (Vscript_alist): This variable deleted. | |
1283 (Vchar_script_table, Qchar_script_table): New variable. | |
1284 (syms_of_character): Declare Vchar_script_table as a lisp variable | |
1285 and initialize it. | |
1286 | |
1287 * chartab.c (Fmake_char_table): Doc fixed. If PURPOSE doesn't | |
1288 have property char-table-extra-slots, make no extra slot. | |
1289 | |
1290 * dispextern.h (struct face): Member `charset' deleted. | |
1291 (FACE_SUITABLE_FOR_CHAR_P): Use ASCII_CHAR_P, not | |
1292 SINGLE_BYTE_CHAR_P. | |
1293 (FACE_FOR_CHAR): Likewise. | |
1294 (choose_face_font, lookup_non_ascii_face, font_name_registry): Add | |
1295 prototypes | |
1296 (lookup_face, lookup_named_face, lookup_derived_face): Prototype | |
1297 fixed. | |
1298 (generate_ascii_font_name): Renamed from generate_ascii_font. | |
1299 | |
1300 * fontset.h (get_font_repertory_func): New prototype. | |
1301 (make_fontset_for_ascii_face, fs_load_font): Prototypes fixed. | |
1302 (FS_LOAD_FONT): Call fs_load_font with the 3rd arg charset_ascii. | |
1303 | |
1304 * fontset.c (Qprepend, Qappend): New variables. | |
1305 (FONTSET_CHARSET_ALIST, FONTSET_FACE_ALIST): These macros deleted. | |
1306 (FONTSET_NOFONT_FACE, FONTSET_REPERTORY): New macros. | |
1307 (FONTSET_REF): Optimize if FONTSET is Vdefault_fontset. | |
1308 (FONTSET_REF_AND_RANGE, FONTSET_ADD): New macros. | |
1309 (fontset_ref_and_range, fontset_add, reorder_font_vector) | |
1310 (load_font_get_repertory): New functions. | |
1311 (fontset_set): This function deleted. | |
1312 (fontset_face): New arg FACE. Return face ID, not face. | |
1313 Completely re-written to handle new fontset structure. Caller | |
1314 changed. | |
1315 (free_face_fontset): Use ASET istead of AREF (X) = Y. | |
1316 (face_for_char): Don't call lookup_face. | |
1317 (make_fontset_for_ascii_face): New arg FACE. | |
1318 (fs_load_font): New arg CHARSET_ID. Don't check | |
1319 Vfont_encoding_alist here. | |
1320 (find_font_encoding): New function. | |
1321 (list_fontsets): Use STRINGP, not ! NILP. | |
1322 (accumulate_script_ranges): New function. | |
1323 (Fset_fontset_font, Fnew_fontset, Ffontset_info): Completely | |
1324 re-written to handle new fontset structure. | |
1325 (Ffontset_font): Return a copy of element. | |
1326 (syms_of_fontset): Define symbols Qprepend and Qappend. Fix | |
1327 docstring of font-encoding-alist. | |
1328 | |
1329 * lisp.h (CHAR_TABLE_REF): Remove unnecessary check (IDX >= 0). | |
1330 (Fset_fotset_font): Fix arguments to 5. | |
1331 | |
1332 * msdos.c (XMenuActivate): Adjuted for the change of | |
1333 lookup_derived_face. | |
1334 | |
1335 * xdisp.c (message_dolog, set_message_1, extend_face_to_end_of_line): | |
1336 Use ASCII_CHAR_P, not SINGLE_BYTE_CHAR_P. | |
1337 (highlight_trailing_whitespace): Adjusted for the change of | |
1338 lookup_named_face. | |
1339 | |
1340 * xfaces.c: Include charset.h. | |
1341 (load_face_font): Argument C deleted. Caller changed. | |
1342 (generate_ascii_font_name): Renamed from generate_ascii_font. | |
1343 (font_name_registry): New function. | |
1344 (cache_face): Store ascii faces before non-ascii faces in buckets. | |
1345 (lookup_face): Arguments C and BASE_FACE deleted. Caller changed. | |
1346 Lookup only ascii faces. | |
1347 (lookup_non_ascii_face): New function. | |
1348 (lookup_named_face): Argument C deleted. Caller changed. | |
1349 (lookup_derived_face): Argument C deleted. Caller changed. | |
1350 (try_font_list): New arg PATTERN. Caller changed. If PATTERN is | |
1351 a string, just call font_list with it. | |
1352 (choose_face_font): Arguments FACE and C deleted. New arg | |
1353 FONT_SPEC. Caller changed. | |
1354 (realize_face): Arguments C and BASE_FACE deleted. Caller | |
1355 (realize_x_face): Likewise. | |
1356 (realize_non_ascii_face): New function. | |
1357 (realize_x_face): Call load_face_font here. | |
1358 (realize_tty_face): Argument C deleted. Caller changed. | |
1359 (compute_char_face): If CH is not ascii, call FACE_FOR_CHAR to | |
1360 get a face ID. | |
1361 (dump_realized_face): Don't print charset of FACE. | |
1362 | |
1363 * xfns.c (x_set_font): Always call x_new_fontset and | |
1364 store_frame_parameter. | |
1365 (Fx_create_frame): Call x_new_fontset, not x_new_font. | |
1366 (syms_of_xfns): Set get_font_repertory_func to | |
1367 x_get_font_repertory. | |
1368 | |
1369 * xterm.h (x_get_font_repertory): Extern it. | |
1370 | |
1371 * xterm.c (x_produce_glyphs): Use ASCII_CHAR_P, not | |
1372 SINGLE_BYTE_CHAR_P. Fix the logic of handling non-ASCII char when | |
1373 it->multibyte_p is zero. | |
1374 (XTread_socket): Use ASCII_CHAR_P, not SINGLE_BYTE_CHAR_P. | |
1375 (x_new_fontset): If FONTSETNAME doesn't match any existing | |
1376 fontsets, create a new one. | |
1377 (x_get_font_repertory): New function. | |
1378 | |
1379 2002-07-25 Kenichi Handa <handa@etl.go.jp> | |
1380 | |
1381 * coding.c (Ffind_coding_systems_region_internal): Detect an | |
1382 ASCII only string correctly. | |
1383 | |
1384 * lread.c (Fload): Don't load with Qload_force_doc_strings t if | |
1385 version is 0. | |
1386 | |
1387 2002-07-24 Kenichi Handa <handa@etl.go.jp> | |
1388 | |
1389 * lread.c: Include "coding.h". | |
1390 (Qget_emacs_mule_file_char, Qload_force_doc_strings, | |
1391 load_each_byte, unread_char): New variables. | |
1392 (readchar_backlog): This variable deleted. | |
1393 (readchar): Return a character unless load_each_byte is nonzero. | |
1394 Handle the case that readcharfun is Qget_emacs_mule_file_char or a | |
1395 cons. If unread_char is not -1, simply return it. | |
1396 (unreadchar): Handle the case that readcharfun is | |
1397 Qget_emacs_mule_file_char or a cons. Set unread_char if | |
1398 necessary. | |
1399 (read_multibyte): This function deleted. | |
1400 (readbyte_for_lambda, readbyte_from_file, readbyte_from_string) | |
1401 (read_emacs_mule_char): New functions. | |
1402 (Fload): Even if the file doesn't have the extention ".elc", if | |
1403 safe_to_load_p returns a positive version number, assume that the | |
1404 file contains bytecompiled code. If the version is less than 22, | |
1405 load the file while decoding multibyte sequences by emacs-mule. | |
1406 (readevalloop): Don't use readchar_backlog. | |
1407 (Fread): Likewise. Pay attention to the case that STREAM is a | |
1408 cons. | |
1409 (Fread_from_string): Pay attention to the case that STREAM is a | |
1410 cons. | |
1411 (read_escape): The arg BYTEREP deleted. | |
1412 (read1): Set load_each_byte to 1 temporarily while handling | |
1413 #@NUMBER. Don't call read_multibyte. | |
1414 (read_vector): Call Fread with a cons. If readcharfun is | |
1415 Qget_emacs_mule_file_char, decode the read string by emacs-mule. | |
1416 (read_list): If doc_reference is 2, make the cdr part string as | |
1417 unibyte. | |
1418 (syms_of_lread): Intern and staticpro Qget_emacs_mule_file_char | |
1419 and Qload_force_doc_strings. | |
1420 | |
1421 2002-07-23 Kenichi Handa <handa@etl.go.jp> | |
1422 | |
1423 * xdisp.c (face_before_or_after_it_pos): Call | |
1424 FETCH_MULTIBYTE_CHAR with byte postion, not char position. | |
1425 | |
1426 2002-07-22 Kenichi Handa <handa@etl.go.jp> | |
1427 | |
1428 * character.h (TRAILING_CODE_P): New macro. | |
1429 (MAYBE_UNIFY_CHAR): Adjusted for the change of Funify_charset. | |
1430 (string_char_with_unification): Fix prototype. | |
1431 (Vscript_alist): Extern it. | |
1432 | |
1433 * character.c (Vscript_alist): New variable. | |
1434 (string_char_with_unification): Add `const' to local variables. | |
1435 (str_as_unibyte): Likewise. | |
1436 (string_escape_byte8): Likewise. | |
1437 (syms_of_character): Declare script-alist as a Lisp variable. | |
1438 | |
1439 * charset.h (Vcharset_ordered_list): Extern it. | |
1440 (charset_ordered_list_tick): Extern it. | |
1441 (EMACS_MULE_LEADING_CODE_PRIVATE_11) | |
1442 (EMACS_MULE_LEADING_CODE_PRIVATE_12) | |
1443 (EMACS_MULE_LEADING_CODE_PRIVATE_21) | |
1444 (EMACS_MULE_LEADING_CODE_PRIVATE_22): New macros | |
1445 (Funify_charset): Adjusted for the change of Funify_charset. | |
1446 | |
1447 * charset.c (charset_ordered_list_tick): New variable. | |
1448 (Fdefine_charset_internal): Increment charset_ordered_list_tick. | |
1449 (Funify_charset): New optional arg DEUNIFY. If it is non-nil, | |
1450 deunify intead of unify a charset. | |
1451 (string_xstring_p): Add `const' to local variables. | |
1452 (find_charsets_in_text): Add `const' to arguemnts and local | |
1453 variables. | |
1454 (encode_char): Adjusted for the change of Funify_charset. Fix | |
1455 detecting of invalid code. | |
1456 (Fset_charset_priority): Increment charset_ordered_list_tick. | |
1457 (Fmap_charset_chars): Fix handling of default value for FROM_CODE | |
1458 and TO_CODE. | |
1459 | |
1460 * coding.c (LEADING_CODE_PRIVATE_11, LEADING_CODE_PRIVATE_12) | |
1461 (LEADING_CODE_PRIVATE_21, LEADING_CODE_PRIVATE_22): Macros | |
1462 deleted. Callers changed to use | |
1463 EMACS_MULE_LEADING_CODE_PRIVATE_11, etc. | |
1464 (decode_coding_ccl): Add `const' to local variables. | |
1465 (consume_chars): Likewise. | |
1466 (Ffind_coding_systems_region_internal): Likewise. | |
1467 (Fcheck_coding_systems_region): Likewise. | |
1468 | |
1469 * print.c (print_object): Use octal form for printing the | |
1470 contents of a bool vector. | |
1471 | |
1472 2002-07-18 Dave Love <fx@gnu.org> | |
1473 | |
1474 * lread.c (Fload) <!load_dangerous_libraries>: Don't leak fd. | |
1475 <version == 20>: Refuse to load. | |
1476 | |
1477 2002-07-17 Dave Love <fx@gnu.org> | |
1478 | |
1479 * fns.c: Move coding.h. | |
1480 (Qcodeset, Qdays, Qmonths): New. | |
1481 (concat): Use CHARACTERP instead of INTERGERP. | |
1482 (Flocale_codeset): Deleted. | |
1483 (Flanginfo): New function. | |
1484 (syms_of_fns): Changed accordingly. | |
1485 | |
1486 * coding.c (adjust_coding_eol_type): Fix eol_type/eol_seen mixup. | |
1487 | |
1488 2002-07-16 Dave Love <fx@gnu.org> | |
1489 | |
1490 * casetab.c (init_casetab_once, init_casetab_once): Fix | |
1491 CHAR_TABLE_SET call. | |
1492 | |
1493 * category.c (Fmodify_category_entry): Fix CATEGORY_MEMBER call. | |
1494 | |
1495 * character.c (syms_of_character): Fix CHAR_TABLE_SET call. | |
1496 | |
1497 * charset.c (Fmap_charset_chars): Check args. Convert Lisp types. | |
1498 (load_charset_map, Fdeclare_equiv_charset, Fencode_char) | |
1499 (Fset_charset_priority, syms_of_charset): Convert Lisp types. | |
1500 | |
1501 * charset.h (CHECK_CHARSET_GET_ID): Use XINT on AREF result. | |
1502 | |
1503 * coding.c (ENCODE_DESIGNATION, decode_eol) | |
1504 (make_conversion_work_buffer, code_conversion_restore) | |
1505 (Fdefine_coding_system_internal): Convert Lisp types. | |
1506 (code_conversion_restore): Use EQ, not ==. | |
1507 (Fencode_coding_string): Fix code_convert_string call. | |
1508 | |
1509 * coding.h (code_convert_region): Fix prototype. | |
1510 | |
1511 * dispextern.h (redraw_frame, redraw_garbaged_frames): Removed. | |
1512 | |
1513 * fontset.c (fontset_ref, fontset_set, fs_load_font) | |
1514 (Ffontset_info): Convert Lisp types. | |
1515 | |
1516 * syntax.h (SYNTAX_ENTRY_INT): Don't use make_number. | |
1517 | |
1518 * xterm.c (note_mouse_movement): Fix call of window_from_coordinates. | |
1519 | |
1520 * xdisp.c (display_mode_element): Fix call of Fset_text_properties. | |
1521 | |
1522 * chartab.c: Include "...h", not <...h> in some cases. | |
1523 | |
1524 * callproc.c (Fcall_process): Remove unused variables. | |
1525 | |
1526 2002-07-12 Dave Love <fx@gnu.org> | |
1527 | |
1528 * coding.c (Fset_coding_system_priority): Allow null arg list. | |
1529 | |
1530 2002-07-03 Dave Love <fx@gnu.org> | |
1531 | |
1532 * minibuf.c (Fminibuffer_complete_word): Remove unused var. | |
1533 (Fself_insert_and_exit): Use CHARACTERP. | |
1534 | |
1535 * callproc.c (Fcall_process): Remove unused vars. | |
1536 | |
1537 * xterm.c (XTread_socket): Add extra dead keysyms. | |
1538 | |
1539 * xdisp.c (decode_mode_spec_coding): Use CHARACTERP. | |
1540 | |
1541 * dispextern.h: Remove prototypes for redraw_frame, | |
1542 redraw_garbaged_frames. | |
1543 | |
1544 * cmds.c (Fself_insert_command): Use CHARACTERP. | |
1545 | |
1546 * chartab.c (make_sub_char_table): Remove unused var. | |
1547 (Fset_char_table_default, Fmap_char_table): Doc fix. | |
1548 | |
1549 * keymap.c (access_keymap): Remove generic char code. | |
1550 (push_key_description): Use CHARACTERP. | |
1551 | |
1552 2002-07-01 Dave Love <fx@gnu.org> | |
1553 | |
1554 * charset.c: Doc fixes. | |
1555 (Funify_charset): Extra checking. | |
1556 | |
1557 2002-06-24 Dave Love <fx@gnu.org> | |
1558 | |
1559 * lread.c: Remove some unused variables. | |
1560 (safe_to_load_p): If safe, return the magic number version byte. | |
1561 (Fload): Maybe use load-with-code-conversion. | |
1562 | |
1563 2002-06-12 Kenichi Handa <handa@etl.go.jp> | |
1564 | |
1565 * category.c (Fmodify_category_entry): Don't modify the contents | |
1566 of category_set for characters out of the range. Avoid | |
1567 unnecessary modification. | |
1568 | |
1569 * character.h (MAYBE_UNIFY_CHAR): Adjusted for the change of | |
1570 Vchar_unify_table. The default value of the table is now nil. | |
1571 | |
1572 * character.c (syms_of_character): Setup Vchar_width_table for | |
1573 eight-bit-control and raw-byte chars. | |
1574 | |
1575 * charset.h (enum define_charset_arg_index): Delete | |
1576 charset_arg_parents and add charset_arg_subset and | |
1577 charset_arg_superset. | |
1578 (enum charset_attr_index): Delete charset_parents and add | |
1579 charset_subset and charset_superset. | |
1580 (enum charset_method): Delete CHARSET_METHOD_INHERIT and add | |
1581 CHARSET_METHOD_SUBSET and CHARSET_METHOD_SUPERSET. | |
1582 (CHARSET_ATTR_PARENTS, CHARSET_PARENTS): Macros deleted. | |
1583 (CHARSET_ATTR_SUBSET, CHARSET_ATTR_SUPERSET, CHARSET_SUBSET) | |
1584 (CHARSET_SUPERSET): New macros. | |
1585 (charset_work): Extern it. | |
1586 (ENCODE_CHAR): Use charset_work. | |
1587 (CHAR_CHARSET_P): Adjusted for the change of encoder format. | |
1588 (map_charset_chars): Extern it. | |
1589 | |
1590 * charset.c (load_charset_map): Set the default value of encoder | |
1591 and deunifier char-tables to nil. | |
1592 (map_charset_chars): Argument changed. Callers changed. Use | |
1593 map_char_table_for_charset instead of map_char_table. | |
1594 (Fmap_charset_chars): New optional args from_code and to_code. | |
1595 (Fdefine_charset_internal): Adjusted for the change of | |
1596 `define-charset' (:parents -> :subset or :superset). | |
1597 (charset_work): New variable. | |
1598 (encode_char): Adjusted for the change of | |
1599 Fdefine_charset_internal. | |
1600 (syms_of_charset): Likewise. | |
1601 (Ffind_charset_string): Setup the vector `charsets' correctly. | |
1602 | |
1603 * chartab.c (sub_char_table_ref_and_range): New arg defalt. Fix | |
1604 the previous change. | |
1605 (char_table_ref_and_range): Adjusted for the above change. | |
1606 (map_sub_char_table_for_charset): New function. | |
1607 (map_char_table_for_charset): New function. | |
1608 | |
1609 * keymap.c (describe_vector): Handle a char-table directly here. | |
1610 (describe_char_table): Deleted. | |
1611 | |
1612 * lisp.h (map_charset_chars): Deleted. | |
1613 | |
1614 2002-06-11 Dave Love <fx@gnu.org> | |
1615 | |
1616 * fns.c (count_combining): Comment out (unused). | |
1617 (Flocale_codeset): New. | |
1618 (syms_of_fns): Defsubr it. | |
1619 | |
1620 * config.in (HAVE_PTY_H, HAVE_SIZE_T, HAVE_LANGINFO_CODESET): New. | |
1621 (size_t): Removed. | |
1622 | |
1623 2002-06-06 Dave Love <fx@gnu.org> | |
1624 | |
1625 * Makefile.in (chartab.o): Depend on charset.h | |
1626 | |
1627 2002-06-03 Kenichi Handa <handa@etl.go.jp> | |
1628 | |
1629 * character.c (syms_of_character): Set the default value of | |
1630 Vprintable_chars to Qnil. | |
1631 | |
1632 2002-05-31 Dave Love <fx@gnu.org> | |
1633 | |
1634 * Makefile.in (lisp, shortlisp): Change indian.elc to indian.el. | |
1635 | |
1636 2002-05-31 Kenichi Handa <handa@etl.go.jp> | |
1637 | |
1638 * charset.c (load_charset_map): Handle the case that from < to | |
1639 correctly. | |
1640 | |
1641 * coding.c (encode_coding_emacs_mule): Pay attention to raw-8-bit | |
1642 chars. | |
1643 (encode_coding_iso_2022): Likewise. | |
1644 (encode_coding_sjis): Likewise. | |
1645 (encode_coding_big5): Likewise. | |
1646 (encode_coding_charset): Likewise. | |
1647 | |
1648 2002-05-30 Kenichi Handa <handa@etl.go.jp> | |
1649 | |
1650 * Makefile.in (lisp): Change chinese.elc to chinese.el. They are | |
1651 not bytecompiled now. | |
1652 (shortlisp): Likewise. | |
1653 | |
1654 * charset.c (charset_jisx0201_roman, charset_jisx0208_1978) | |
1655 (charset_jisx0208): New variables. | |
1656 (Fdefine_charset_internal): Setup them if appropriate. | |
1657 (init_charset_once): Initialize them to -1. | |
1658 | |
1659 * charset.h (charset_jisx0201_roman, charset_jisx0208_1978, | |
1660 charset_jisx0208): Extern them. | |
1661 | |
1662 * coding.c (CODING_ISO_FLAG_USE_ROMAN): New macro | |
1663 (CODING_ISO_FLAG_USE_OLDJIS): New macro. | |
1664 (CODING_ISO_FLAG_FULL_SUPPORT): Macro definition changed. | |
1665 (setup_iso_safe_charsets): Fix arguemtns to Fassq. | |
1666 (DECODE_DESIGNATION): Pay attention to CODING_ISO_FLAG_USE_ROMAN | |
1667 and CODING_ISO_FLAG_USE_OLDJIS. | |
1668 (ENCODE_ISO_CHARACTER_DIMENSION1): Likewise. | |
1669 (ENCODE_ISO_CHARACTER_DIMENSION2): Likewise. | |
1670 (encode_coding_iso_2022): Change the 1st arg to | |
1671 ENCODE_ISO_CHARACTER to a variable. | |
1672 | |
1673 2002-05-29 Kenichi Handa <handa@etl.go.jp> | |
1674 | |
1675 * charset.h (enum define_charset_arg_index): New enums | |
1676 charset_arg_min_code and charset_arg_max_code. | |
1677 (struct charset): New member char_index_offset. | |
1678 | |
1679 * charset.c (CODE_POINT_TO_INDEX): Take charset->char_index_offset | |
1680 into account. | |
1681 (INDEX_TO_CODE_POINT): Likewise. | |
1682 (Fdefine_charset_internal): Handle args[charset_arg_min_code] and | |
1683 args[charset_arg_max_code]. Setup charset.char_index_offset. | |
1684 (syms_of_charset): Fix args to Fdefine_charset_internal. | |
1685 | |
1686 2002-05-27 Dave Love <fx@gnu.org> | |
1687 | |
1688 * coding.c (decode_coding_utf_8): Reject overlong sequences. | |
1689 | |
1690 2002-05-26 Dave Love <fx@gnu.org> | |
1691 | |
1692 * coding.c: Doc fixes. | |
1693 (Fcoding_system_aliases): Fix return value. | |
1694 (Qmac): Remove (duplicated) definition. | |
1695 | |
1696 2002-05-25 Dave Love <fx@gnu.org> | |
1697 | |
1698 * charset.c (Fcharset_priority_list, Fset_charset_priority): New | |
1699 functions. | |
1700 | |
1701 * character.c (Fstring): Doc fix. | |
1702 | |
1703 * charset.c (Fdefine_charset_alias): Update Vcharset_list. | |
1704 | |
1705 * fontset.c (Ffontset_info): Doc fix. Return charset names, not | |
1706 ids. | |
1707 (font-encoding-alist): Doc fix. | |
1708 | |
1709 2002-05-24 Dave Love <fx@gnu.org> | |
1710 | |
1711 * term.c (costs_set): Declare static, non-initialized for pcc. | |
1712 (encode_terminal_code): Remove ensued var. | |
1713 | |
1714 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal decl | |
1715 for K&R. | |
1716 | |
1717 * xterm.c (xlwmenu_window_p): Fix prototype for K&R. | |
1718 | |
1719 * coding.c (setup_iso_safe_charsets): Fix arg decl for K&R. | |
1720 (suffixes): Moved out of make_subsidiaries for K&R. | |
1721 | |
1722 * charset.c (map_charset_chars): Fix c_function declaration for | |
1723 K&R. | |
1724 | |
1725 * lisp.h (DEFUN) [!PROTOTYPES]: Remove spurious `args'. | |
1726 | |
1727 2002-05-23 Dave Love <fx@gnu.org> | |
1728 | |
1729 * data.c (Fchar_or_string_p): Doc fix. Use CHARACTERP. | |
1730 | |
1731 * category.c (Fmodify_category_entry): Doc fix. Remove unused | |
1732 vars. | |
1733 | |
1734 2002-05-23 Yong Lu <lyongu@asia-infonet.com> | |
1735 | |
1736 * charset.c (Fdefine_charset_internal): Fix argument to bzero. | |
1737 | |
1738 * coding.c (Fdefine_coding_system_internal): Fix previous change. | |
1739 (decode_coding_charset): Workaround for the bug of GCC 2.96. | |
1740 | |
1741 2002-05-23 Kenichi Handa <handa@etl.go.jp> | |
1742 | |
1743 * Makefile.in (lisp): Change cyrillic.elc to cyrillic.el, | |
1744 vietnamese.elc to vietnamese.el. They are not bytecompiled now. | |
1745 (shortlisp): Likewise. | |
1746 | |
1747 2002-05-22 Kenichi Handa <handa@etl.go.jp> | |
1748 | |
1749 * coding.c (decode_coding_charset): Adjusted for the change of | |
1750 Fdefine_coding_system_internal. | |
1751 (Fdefine_coding_system_internal): For a coding system of | |
1752 `charset' type, store a list of charset IDs in | |
1753 `charset_attr_charset_valids' element of coding attributes. | |
1754 | |
1755 * charset.c (Fmake_char): Fix previous change. | |
1756 | |
1757 2002-05-21 Kenichi Handa <handa@etl.go.jp> | |
1758 | |
1759 * coding.c (ONE_MORE_BYTE_NO_CHECK): Increment consumed_chars. | |
1760 (emacs_mule_char): New arg src. Delete arg `composition'. Caller | |
1761 changed. Handle 2-byte and 3-byte charsets correctly. | |
1762 (DECODE_EMACS_MULE_COMPOSITION_RULE_20): Renamed from | |
1763 DECODE_EMACS_MULE_COMPOSITION_RULE. Caller changed. | |
1764 (DECODE_EMACS_MULE_COMPOSITION_RULE_21): New macro. | |
1765 (DECODE_EMACS_MULE_21_COMPOSITION): Call | |
1766 DECODE_EMACS_MULE_COMPOSITION_RULE_21. Produce correct annotation | |
1767 sequence. | |
1768 (decode_coding_emacs_mule): Handle composition correctly. Rewind | |
1769 `src' and `consumed_chars' correctly before calling | |
1770 emacs_mule_char. | |
1771 (DECODE_COMPOSITION_START): Correctly handle the case of altchar | |
1772 and alt&rule composition. | |
1773 (decode_coding_iso_2022): Handle composition correctly. | |
1774 (init_coding_once): Setup emacs_mule_bytes for private charsets. | |
1775 | |
1776 * charset.c (Fdefine_charset_internal): Fix bug for the case of | |
1777 re-defining a charset. If the charset has :emacs-mule-id, setup | |
1778 emacs_mule_bytes. | |
1779 (Fmake_char): If CODE1 is nil, use the minimum code of the | |
1780 charset. | |
1781 | |
1782 2002-05-20 Kenichi Handa <handa@etl.go.jp> | |
1783 | |
1784 * coding.c (encode_coding_iso_2022): If coding requires safe | |
1785 encoding, produce a character specified by | |
1786 CODING_INHIBIT_CHARACTER_SUBSTITUTION. | |
1787 (encode_coding_sjis): Likewise. | |
1788 (encode_coding_big5): Likewise. | |
1789 (encode_coding_charset): Likewise. | |
1790 | |
1791 2002-05-17 Dave Love <fx@gnu.org> | |
1792 | |
1793 * xterm.c (XSetIMValues): Declare. | |
1794 | |
1795 * process.c: Conditionally include sys/wait.h, pty.h. | |
1796 | |
1797 * print.c (print_object): Fix print format for 64-bit | |
1798 systems. | |
1799 | |
1800 * keyboard.c (modify_event_symbol): Fix print format for 64-bit | |
1801 systems. | |
1802 | |
1803 * buffer.c (emacs_strerror): Declare. | |
1804 (MMAP_ALLOCATED_P, mmap_enlarge, syms_of_buffer): Import changes | |
1805 from trunk. | |
1806 | |
1807 * fontset.c (Fclear_face_cache): Declare. | |
1808 (accumulate_font_info): Commented-out (unused). | |
1809 (face_for_char, Fset_fontset_font, Ffontset_info): Remove unused | |
1810 variables. | |
1811 | |
1812 * character.h (string_escape_byte8): Declare. | |
1813 | |
1814 * charset.c (load_charset_map, load_charset_map_from_file): Remove | |
1815 unused vars. | |
1816 (Fdefine_charset_internal, Fsplit_char, syms_of_charset) | |
1817 (Fmap_charset_chars): Doc fix. | |
1818 | |
1819 * coding.c (Vchar_coding_system_table, Qchar_coding_system): | |
1820 Removed. | |
1821 (Fset_coding_system_priority, Fset_coding_system_priority) | |
1822 (Fdefine_coding_system_internal): Doc fix. | |
1823 | |
1824 2002-05-16 Dave Love <fx@gnu.org> | |
1825 | |
1826 * s/osf5-0.h (C_SWITCH_SYSTEM) [!__GNUC__]: Remove -nointrinsics. | |
1827 | |
1828 2002-05-16 Kenichi Handa <handa@etl.go.jp> | |
1829 | |
1830 * character.c (string_escape_byte8): Make multibyte string with | |
1831 correct size. | |
1832 | |
1833 * charset.c (Fmake_char): Delete unnecessary code. | |
1834 | |
1835 2002-05-14 Kenichi Handa <handa@etl.go.jp> | |
1836 | |
1837 * xfns.c (x_encode_text): Allocate coding.destination here, and | |
1838 call encode_coding_object with dst_object Qnil. | |
1839 | |
1840 * buffer.c (Fset_buffer_multibyte): Convert 8-bit bytes to | |
1841 multibyte form correctly. | |
1842 | |
1843 * fontset.c (fs_load_font): Check fontp->full_name (not fontname) | |
1844 against Vfont_encoding_alist. | |
1845 | |
1846 * coding.c (Fdecode_sjis_char): Fix typo (0x7F->0xFF). Fix the | |
1847 handling of charset list. | |
1848 (encode_coding_iso_2022): Setup coding->safe_charsets in advance. | |
1849 (decode_coding_object): Move point to coding->dst_pos before | |
1850 calling post-read-conversion function. | |
1851 (encode_coding_object): Give correct arguments to | |
1852 pre-write-conversion. Ignore the return value of | |
1853 pre-write-conversion function. Pay attention to the case that | |
1854 pre-write-conversion changes the current buffer. If dst_object is | |
1855 Qt, even if coding->src_bytes is zero, allocate at least one byte | |
1856 to coding->destination. | |
1857 | |
1858 * coding.h (JIS_TO_SJIS): Fix typo (j1->s1, j2->s2). | |
1859 | |
1860 * charset.c (Fmake_char): Make it more backward compatible. | |
1861 (Fmap_charset_chars): Fix docstring. | |
1862 | |
1863 2002-05-13 Dave Love <fx@gnu.org> | |
1864 | |
1865 * coding.c: Doc fixes. | |
1866 (Fdefine_coding_system_alias): Use names, not symbols, in | |
1867 coding-system-alist. | |
1868 | |
1869 2002-05-13 Kenichi Handa <handa@etl.go.jp> | |
1870 | |
1871 * fontset.c (free_realized_fontsets): Call Fclear_face_cache instead | |
1872 of calling free_realized_face. | |
1873 | |
1874 2002-05-10 Yong Lu <lyongu@asia-infonet.com> | |
1875 | |
1876 * charset.c (load_charset_map): Fix previous change. | |
1877 (read_hex): Don't treat SPC as a comment starter. | |
1878 (decode_char): If CODE_POINT_TO_INDEX retruns -1, always return | |
1879 -1. | |
1880 (Fdecode_char): Fix typo. | |
1881 | |
1882 2002-05-10 Kenichi Handa <handa@etl.go.jp> | |
1883 | |
1884 * charset.h (struct charset): New member `code_space_mask'. | |
1885 | |
1886 * coding.c (coding_set_source): Delete the local variable | |
1887 beg_byte. | |
1888 (encode_coding_charset): Delete the local variable charset. | |
1889 (Fdefine_coding_system_internal): Likewise. | |
1890 (Fdefine_coding_system_internal): Setup | |
1891 attrs[coding_attr_charset_valids] correctly. | |
1892 | |
1893 * charset.c (CODE_POINT_TO_INDEX): Utilize `code_space_mask' | |
1894 member to check if CODE is valid or not. | |
1895 (Fdefine_charset_internal): Initialize `code_space_mask' member. | |
1896 (encode_char): Before calling CODE_POINT_TO_INDEX, check if CODE | |
1897 is within the range of charset->min_code and carset->max_code. | |
1898 | |
1899 2002-05-09 Dave Love <fx@gnu.org> | |
1900 | |
1901 * syntax.h (syntax_temp) [!__GNUC__]: Declare. | |
1902 | |
1903 * dispextern.h (generate_ascii_font): Fix return type. | |
1904 | |
1905 * xfaces.c (generate_ascii_font): Fix arg declaration. | |
1906 | |
1907 * coding.c (coding_inherit_eol_type) | |
1908 (Fset_terminal_coding_system_internal) | |
1909 (Fset_safe_terminal_coding_system_internal): Fix arg declarations. | |
1910 | |
1911 2002-05-08 Kenichi Handa <handa@etl.go.jp> | |
1912 | |
1913 * coding.c (decode_coding_charset, encode_coding_charset): Handle | |
1914 multiple charsets correctly. | |
1915 | |
1916 2002-05-07 Kenichi Handa <handa@etl.go.jp> | |
1917 | |
1918 * search.c (boyer_moore): Fix handling of mulitbyte character | |
1919 translation. | |
1920 | |
1921 * xdisp.c (display_mode_element): When the variable `elt' is | |
1922 changed, update `this' and `lisp_string'. | |
1923 | |
1924 2002-05-07 Kenichi Handa <handa@etl.go.jp> | |
1925 | |
1926 * buffer.c (Fset_buffer_multibyte): Fix 8-bit char handling. | |
1927 | |
1928 * callproc.c (Fcall_process): Be sure to give the current buffer | |
1929 to decode_coding_c_string. Update PT and PT_BYTE after the | |
1930 insertion. | |
1931 | |
1932 * charset.c (struct charset_map_entries): New struct. | |
1933 (load_charset_map): Renamed from parse_charset_map. New args | |
1934 entries and n_entries. Caller changed. | |
1935 (load_charset_map_from_file): Renamed from load_charset_map. | |
1936 Caller changed. New arg control_flag. Call load_charset_map at | |
1937 the tail. | |
1938 (load_charset_map_from_vector): New function. | |
1939 (Fdefine_charset_internal): Setup charset.compact_codes_p. | |
1940 (encode_char): If the charset is compact, change a character index | |
1941 to a code point. | |
1942 | |
1943 * coding.c (coding_alloc_by_making_gap): Check the case that the | |
1944 source and destination are the same correctly. | |
1945 (decode_coding_raw_text): Set coding->consumed_char and | |
1946 coding->consumed to 0. | |
1947 (produce_chars): If coding->chars_at_source is nonzero, update | |
1948 coding->consumed_char and coding->consumed before calling | |
1949 alloc_destination. | |
1950 (Fdefine_coding_system_alias): Register ALIAS in | |
1951 Vcoding_system_alist. | |
1952 (syms_of_coding): Define `no-convesion' coding system at the tail. | |
1953 | |
1954 * fileio.c (Finsert_file_contents): Set coding_system instead of | |
1955 val. If the current buffer is multibyte, always call | |
1956 decode_coding_gap. | |
1957 | |
1958 * xfaces.c (try_font_list): Give higher priority to fontset's | |
1959 family than face's family. | |
1960 | |
1961 2002-04-18 Kenichi Handa <handa@etl.go.jp> | |
1962 | |
1963 * callproc.c (Fcall_process): Be sure to give the current buffer | |
1964 to decode_coding_c_string. | |
1965 | |
1966 * xfaces.c (try_font_list): Give a family specified in a fontset | |
1967 higher priority than a family specified in a face. | |
1968 | |
1969 2002-04-09 Kenichi Handa <handa@etl.go.jp> | |
1970 | |
1971 * fileio.c (Finsert_file_contents): Fix calculation of `inserted'. | |
1972 Fix arguments to insert_from_buffer. | |
1973 | |
1974 * xdisp.c (display_mode_element): Fix calculation of `bytepos'. | |
1975 | |
1976 2002-03-11 Kenichi Handa <handa@etl.go.jp> | |
1977 | |
1978 * coding.c (produce_chars): Set the variable `multibytep' correctly. | |
1979 (decode_coding_gap): Set coding->dst_multibyte correctly. | |
1980 | |
1981 2002-03-07 Kenichi Handa <handa@etl.go.jp> | |
1982 | |
1983 * coding.c (encode_coding_utf_8): Initialize produced_chars to 0. | |
1984 (decode_coding_utf_16): Fix converting high and low bytes to | |
1985 code-point. | |
1986 (encode_coding_utf_16): Substitute coding->default_char for | |
1987 non-Unicode characters. | |
1988 (decode_coding): Don't call record_insert here. | |
1989 (setup_coding_system): Initialize `surrogate' of | |
1990 coding->spec.utf_16 to 0. | |
1991 (EMIT_ONE_BYTE): Fix for multibyte case. | |
1992 | |
1993 * insdel.c (insert_from_gap): Call record_insert. | |
1994 | |
1995 2002-03-04 Kenichi Handa <handa@etl.go.jp> | |
1996 | |
1997 * casefiddle.c (casify_region): Fix multibyte case. | |
1998 | |
1999 * character.c (c_string_width): Add return type `int'. | |
2000 (char_string_with_unification): Arg ADVANCED deleted. | |
2001 | |
2002 * character.h (CHAR_VALID_P): Don't call CHARACTERP. | |
2003 (CHAR_STRING): Adjusted for the change of | |
2004 char_string_with_unification. | |
2005 (CHAR_STRING_ADVANCE): Make it do-while statement. | |
2006 | |
2007 * chartab.c (sub_char_table_set_range): Optimized for the case | |
2008 DEPTH == 3. Add workaround code for a GCC optimization bug. | |
2009 | |
2010 * charset.c (parse_charset_map): Remove an unused variable. | |
2011 | |
2012 * coding.c: Delete unused variables. | |
2013 | |
2014 * fileio.c (Finsert_file_contents): Set coding_system to Qnil | |
2015 earlier. If inserted is zero and the coding system doesn't | |
2016 require flushing, don't call decode_coding_gap. | |
2017 | |
2018 * syntax.h (SET_RAW_SYNTAX_ENTRY): Don't call make_number. | |
2019 | |
2020 2002-03-01 Kenichi Handa <handa@etl.go.jp> | |
2021 | |
2022 The following changes are for using Unicode as an internal | |
2023 character model, and use UTF-8 format for buffer/string | |
2024 representation. | |
2025 | |
2026 * .gdbinit (xchartable): Adjusted for the change of char table | |
2027 structure. | |
2028 (xsubchartable, xcoding, xcharset, xcurbuf): New commands. | |
2029 | |
2030 * Makefile.in (obj): Add character.o and chartab.o. | |
2031 (lisp, shortlisp): Remove utf-8.elc: | |
2032 (*.o): For many files, change dependency on charset.h to | |
2033 character.h, and add dependency on character.h. | |
2034 (character.o, chartab.o): New targets. | |
2035 | |
2036 * abbrev.c, bytecode.c, casefiddle.c, cmds.c, dispnew.c, doc.c, | |
2037 doprnt.c, dosfns.c, frame.c, marker.c, minibuf.c, msdos.c, | |
2038 w16select.c, w32bdf.c, w32console.c: Include "character.h" instead | |
2039 of "charset.h". | |
2040 | |
2041 * dired.c, filelock.c: Include "character.h". | |
2042 | |
2043 * alloc.c: Include "character.h" instead of "charset.h". | |
2044 (Fmake_char_table): Moved to chartab.c. | |
2045 (make_sub_char_table): Likewise. | |
2046 (syms_of_alloc): Remove defsubr for Smake_char_table. | |
2047 | |
2048 * buffer.c: Include "character.h" instead of "charset.h", don't | |
2049 include "coding.h". | |
2050 (Fset_buffer_multibyte): Adjuted for UTF-8. | |
2051 | |
2052 * buffer.h: EXFUN Fbuffer_live_p. | |
2053 | |
2054 * callproc.c: Include "character.h" instead of "charset.h". | |
2055 (Fcall_process): Big change for the new code-conversion APIs. | |
2056 | |
2057 * casetab.c: Include "character.h" instead of "charset.h". | |
2058 (set_canon, set_identity, shuffle): Adjusted for the new | |
2059 map_char_table spec. | |
2060 (init_casetab_once): Call CHAR_TABLE_SET instead of directly | |
2061 accessing the char table structure. | |
2062 | |
2063 * chartab.c: New file that implements char table. | |
2064 | |
2065 * category.c: Include "character.h". | |
2066 (copy_category_entry): New function. | |
2067 (copy_category_table): Call map_char_table and copy_category_entry. | |
2068 (Fmake_category_table): Initialize all top-vel slots. | |
2069 (char_category_set): New function. | |
2070 (modify_lower_category_set): Deleted. | |
2071 (Fmodify_category_entry): Call char_table_ref_and_range. | |
2072 | |
2073 * category.h (CATEGORY_SET): Just call char_category_set. | |
2074 | |
2075 * ccl.c: Include "character.h". | |
2076 (Qccl, Qcclp): New variables. | |
2077 (CCL_WRITE_CHAR): Alway treat the arg CH as a character even if | |
2078 it's less than 256. | |
2079 (CCL_WRITE_MULTIBYTE_CHAR): Deleted. | |
2080 (CCL_WRITE_STRING, CCL_READ_CHAR): Adjusted for the change of SRC | |
2081 and DST type. | |
2082 (ccl_driver): Types of arguments changed. Code adjusted for that. | |
2083 (Fccl_execute, Fccl_execute_on_string): Adjusted for the change of | |
2084 ccl_driver. | |
2085 (syms_of_ccl): Intern and staticpro Qccl and Qcclp. | |
2086 | |
2087 * ccl.h (struct ccl_program): Members eol_type and multibyte | |
2088 deleted. New members src_multibyte, dst_multibyte, consumed, and | |
2089 produced. | |
2090 (struct ccl_spec): Members decoder and encoder deleted. New | |
2091 memeber ccl. | |
2092 (CODING_SPEC_CCL_PROGRAM): New macro. | |
2093 (ccl_driver): Prototype updated. | |
2094 (Qccl, Qcclp, Fccl_program_p): Extern them. | |
2095 (CHECK_CCL_PROGRAM): New macro. | |
2096 | |
2097 * character.c, character.h, chartab.c: New files. | |
2098 | |
2099 * charset.c: Mostly re-written. Character and multibyte sequence | |
2100 handling codes are moved to character.c. | |
2101 | |
2102 * charset.h: Mostly re-written. Character and multibyte sequence | |
2103 handling codes are moved to character.h. | |
2104 | |
2105 * coding.c, coding.h: Mostly re-written. | |
2106 | |
2107 * composite.c: Include "character.h" instead of "charset.h". | |
2108 (CHAR_WIDTH): Moved to character.h. | |
2109 (HASH_KEY, HASH_VALUE): Deleted. | |
2110 | |
2111 * composite.h (enum composition_method): Order of enumeration | |
2112 symbols changed. | |
2113 | |
2114 * data.c: Include "character.h" instead of "charset.h". | |
2115 (Faref): Call CHAR_TABLE_REF for a char table. | |
2116 (Faset): Call CHAR_TABLE_SET for a char table. | |
2117 | |
2118 * dispextern.h (free_realized_face, check_face_attribytes, | |
2119 generate_ascii_font): Extern them. | |
2120 (free_realized_multibyte_face): Extern deleted. | |
2121 | |
2122 * disptab.h (DISP_CHAR_VECTOR): Adjusted for the change of char | |
2123 table structure. | |
2124 | |
2125 * editfns.c: Include "character.h" instead of "charset.h". | |
2126 (Fchar_to_string): Always call CHAR_STRING. | |
2127 | |
2128 * emacs.c (main): Call init_charset_once, init_charset, | |
2129 syms_of_chartab, and syms_of_character. | |
2130 | |
2131 * fileio.c: Include "character.h" instead of "charset.h". | |
2132 (Finsert_file_contents): Big change for the new code-conversion | |
2133 API. | |
2134 (choose_write_coding_system): Likewise. | |
2135 (Fwrite_region): Likewise. | |
2136 (build_annotations_2): Deleted. | |
2137 (e_write): Big change for the new code-conversion API. | |
2138 | |
2139 * fns.c: Include "character.h" instead of "charset.h". | |
2140 (copy_sub_char_table): Moved to chartab.c. | |
2141 (Fcopy_sequence): Call copy_char_table for a char table. | |
2142 (concat): Delete codes calling count_multibyte. | |
2143 (string_char_to_byte): Adjusted for the new multibyte form. | |
2144 (string_byte_to_char): Likewise. | |
2145 (internal_equal): Adjusted for the change of char table structure. | |
2146 (Fchar_table_subtype, Fchar_table_parent, Fset_char_table_parent, | |
2147 Fchar_table_extra_slot, Fset_char_table_extra_slot, | |
2148 Fchar_table_range, Fset_char_table_range, Fset_char_table_default, | |
2149 char_table_translate, optimize_sub_char_table, | |
2150 Foptimize_char_table, map_char_table, Fmap_char_table): Moved to | |
2151 chartab.c. | |
2152 (char_table_ref_and_index): Deleted. | |
2153 (HASH_KEY, HASH_VALUE): Moved to lisp.h. | |
2154 (Fmd5): Call preferred_coding_system instead of accessing | |
2155 Vcoding_category_list. Adjusted for the new code-conversion API. | |
2156 (syms_of_fns): Defsubr for char table related functions moved to | |
2157 chartab.c. | |
2158 | |
2159 * fontset.c: Mostly re-written. | |
2160 | |
2161 * fontset.h (struct font_info): Type of the member encoding_type | |
2162 changed. | |
2163 (enum FONT_SPEC_INDEX): New enum. | |
2164 (fontset_font_pattern, fs_load_font): Prototype updated. | |
2165 (FS_LOAD_FONT): Adjusted for the change of fs_load_font. | |
2166 | |
2167 * indent.c: Include "character.h" instead of "charset.h". | |
2168 (MULTIBYTE_BYTES_WIDTH): Call CHAR_WIDTH instead of | |
2169 WIDTH_BY_CHAR_HEAD. | |
2170 | |
2171 * insdel.c: Include "character.h" instead of "charset.h". | |
2172 (copy_text): Don't refer to Vnonascii_translation_table. | |
2173 (insert_from_gap): New function. | |
2174 | |
2175 * keyboard.c: Include "character.h" instead of "charset.h". | |
2176 (command_loop_1): Never call direct_output_forward_char before | |
2177 a non-ASCII character. | |
2178 (read_char): If Vkeyboard_translate_table is a char table, always | |
2179 translated a character. | |
2180 | |
2181 * keymap.c: Include "character.h". | |
2182 (store_in_keymap): Handle the case that IDX is a cons. | |
2183 (Fdefine_key): Handle the case that KEY is a cons and the car part | |
2184 is also a cons (range). | |
2185 (push_key_description): Adjusted for the new character code. | |
2186 (describe_vector): Call describe_char_table for a char table. | |
2187 (describe_char_table): New function. | |
2188 | |
2189 * keymap.h (describe_char_table): Extern it. | |
2190 | |
2191 * lisp.h (enum pvec_type): New member PVEC_SUB_CHAR_TABLE. | |
2192 (XSUB_CHAR_TABLE, XSETSUB_CHAR_TABLE): New macros. | |
2193 (CHAR_TABLE_ORDINARY_SLOTS, CHAR_TABLE_SINGLE_BYTE_SLOTS, | |
2194 SUB_CHAR_TABLE_ORDINARY_SLOTS, SUB_CHAR_TABLE_STANDARD_SLOTS): | |
2195 Deleted. | |
2196 (CHAR_TABLE_REF, CHAR_TABLE_SET): Adjusted for the new char table | |
2197 structure. | |
2198 (CHAR_TABLE_TRANSLATE): Just call char_table_translate. | |
2199 (CHARTAB_SIZE_BITS_0, CHARTAB_SIZE_BITS_1, CHARTAB_SIZE_BITS_2, | |
2200 CHARTAB_SIZE_BITS_3): New macros. | |
2201 (chartab_size): Extern it. | |
2202 (struct Lisp_Char_Table): Re-designed. | |
2203 (struct Lisp_Sub_Char_Table): New structure. | |
2204 (HASH_KEY, HASH_VALUE): Moved from fns.c. | |
2205 (CHARACTERBITS): Defined as 22. | |
2206 (GLYPH_MASK_FACE, GLYPH_MASK_CHAR): Adjusted for the above change. | |
2207 (SUB_CHAR_TABLE_P): Check PVEC_CHAR_TABLE. | |
2208 (GC_SUB_CHAR_TABLE_P): New macro. | |
2209 (Fencode_coding_string, Fdecode_coding_string): EXFUN Updated. | |
2210 (code_convert_string_norecord): Extern deleted. | |
2211 (init_character_once, syms_of_character, init_charset, | |
2212 syms_of_composite, Qeq, Fmakehash, insert_from_gap): Extern them. | |
2213 | |
2214 * lread.c: Include "character.h". | |
2215 (read_multibyte): New arg NBYTES. | |
2216 (read_escape): The meaning of returned *BYTEREP changed. | |
2217 (to_multibyte): Deleted. | |
2218 (read1): Adjuted the handling of char table and string. | |
2219 | |
2220 * print.c: Include "character.h" instead of "charset.h". | |
2221 (print_string): Convert 8-bit raw bytes to octal form by | |
2222 string_escape_byte8. | |
2223 (print_object): Adjusted for the new multibyte form. Print 8-bit | |
2224 raw bytes always in octal form. Handle sub char table correctly. | |
2225 | |
2226 * process.c: Include "character.h" instead of "charset.h". | |
2227 (read_process_output): Adjusted for the new code-conversion API. | |
2228 (send_process): Likewise. | |
2229 | |
2230 * puresize.h (BASE_PURESIZE): Increased. | |
2231 | |
2232 * regex.c: Include "character.h" instead of "charset.h". | |
2233 (BYTE8_TO_CHAR, CHAR_BYTE8_P) [not emacs]: New dummy macros. | |
2234 (regex_compile): Accept a range whose starting and ending | |
2235 character have different leading bytes. | |
2236 (analyse_first): Adjusted for the above change. | |
2237 | |
2238 * search.c: Include "character.h" instead of "charset.h". | |
2239 (search_buffer, boyer_moore): Adjusted for the new multibyte form. | |
2240 (Freplace_match): Adjusted for the change of | |
2241 multibyte_char_to_unibyte. | |
2242 | |
2243 * syntax.c: Include "character.h" instead of "charset.h". | |
2244 (syntax_parent_lookup): Deleted. | |
2245 (Fmodify_syntax_entry): Accept a cons as CHAR. | |
2246 (skip_chars): Adjusted for the new multibyte form. | |
2247 (init_syntax_once): Call char_table_set_range instead of directly | |
2248 accessing the structure of a char table. | |
2249 | |
2250 * syntax.h (SET_RAW_SYNTAX_ENTRY): Call CHAR_TABLE_SET. | |
2251 (SYNTAX_ENTRY_FOLLOW_PARENT): Macro deleted. | |
2252 (SET_RAW_SYNTAX_ENTRY_RANGE): New macro. | |
2253 (SYNTAX_ENTRY_INT): Call CHAR_TABLE_REF. | |
2254 | |
2255 * term.c: Include "buffer.h" and "character.h". | |
2256 (encode_terminal_code): Adjusted for the new code-conversion API. | |
2257 (write_glyphs): Likewise. | |
2258 (produce_glyphs): Call CHAR_WIDTH instead of CHARSET_WIDTH. | |
2259 | |
2260 * w32term.c (x_new_font): Adjusted for the change of FS_LOAD_FONT. | |
2261 | |
2262 * xdisp.c: Include "character.h". | |
2263 (get_next_display_element): Adjusted for the new multibyte form. | |
2264 (disp_char_vector): Adjusted for the new char table structure. | |
2265 (decode_mode_spec_coding): Adjusted for the new structure of | |
2266 coding system. | |
2267 (decode_mode_spec): Adjusted for the new code-conversion API. | |
2268 | |
2269 * xfaces.c: Include "character.h" instead of "charset.h". | |
2270 (load_face_font): Adjusted for the change of choose_face_font and | |
2271 FS_LOAD_FONT. | |
2272 (generate_ascii_font): New function. | |
2273 (set_lface_from_font_name): Adjusted for the change of | |
2274 FS_LOAD_FONT. | |
2275 (set_font_frame_param): Adjusted for the change of | |
2276 choose_face_font. | |
2277 (free_realized_face): Make it public. | |
2278 (free_realized_faces_for_fontset): Renamed from | |
2279 free_realized_multibyte_face. Free also faces realized for ASCII. | |
2280 (choose_face_font): Argments changed. Adjusted for the change of | |
2281 fontset_font_pattern and FS_LOAD_FONT. | |
2282 | |
2283 * xfns.c: Include "character.h". | |
2284 (x_encode_text): Adjusted for the new code-conversion API. | |
2285 | |
2286 * xselect.c: Don't include "charset.h". | |
2287 (selection_data_to_lisp_data): Adjusted for the new code | |
2288 covnersion API. | |
2289 | |
2290 * xterm.c: Include "character.h". | |
2291 (x_encode_char): New argument CHARSET. Caller changed. | |
2292 (x_get_char_face_and_encoding): Call ENCODE_CHAR instead of | |
2293 SPLIT_CHAR. | |
2294 (x_get_glyph_face_and_encoding): Likewise. | |
2295 (x_produce_glyphs): Don't check Vnonascii_translation_table Call | |
2296 CHAR_WIDTH instead of CHARSET_WIDTH. | |
2297 (XTread_socket): Adjusted for the new code-conversion API. | |
2298 (x_new_font): Adjusted for the change of FS_LOAD_FONT. | |
2299 (x_load_font): Adjusted for the change of struct font. | |
2300 | |
2301 ;; Local Variables: | |
2302 ;; coding: iso-2022-7bit | |
2303 ;; End: | |
2304 | |
2305 Copyright (C) 2002 Free Software Foundation, Inc. | |
2306 Copying and distribution of this file, with or without modification, | |
2307 are permitted provided the copyright notice and this notice are preserved. |