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