comparison src/ChangeLog @ 111833:f0dfec5bd26b

* src/lread.c (read1): Allow newstyle unquote outside of backquote. Disallow old-style backquotes inside new-style backquotes. Don't count unquotes to figure out when we're "syntactically inside but semantically outside of a backquote" any more. Extend the restriction no-unescaped-commas-and-backquotes-in-symbols to all contexts.
author Stefan Monnier <monnier@iro.umontreal.ca>
date Mon, 06 Dec 2010 11:37:26 -0500
parents a60f0af8cb39
children 05fc128a856f
comparison
equal deleted inserted replaced
111832:7e8cf0f45075 111833:f0dfec5bd26b
1 2010-12-06 Stefan Monnier <monnier@iro.umontreal.ca>
2
3 * lread.c (read1): Allow newstyle unquote outside of backquote.
4 Disallow old-style backquotes inside new-style backquotes.
5 Don't count unquotes to figure out when we're "syntactically inside
6 but semantically outside of a backquote" any more.
7 Extend the restriction no-unescaped-commas-and-backquotes-in-symbols
8 to all contexts.
9
1 2010-12-05 Chong Yidong <cyd@stupidchicken.com> 10 2010-12-05 Chong Yidong <cyd@stupidchicken.com>
2 11
3 * process.c: Remove checks for HAVE_SYS_IOCTL_H (Bug#7484). 12 * process.c: Remove checks for HAVE_SYS_IOCTL_H (Bug#7484).
4 13
5 2010-12-04 Andreas Schwab <schwab@linux-m68k.org> 14 2010-12-04 Andreas Schwab <schwab@linux-m68k.org>
43 52
44 2010-11-27 Kenichi Handa <handa@m17n.org> 53 2010-11-27 Kenichi Handa <handa@m17n.org>
45 54
46 * charset.c (emacs_mule_charset): Make it an array of charset ID; 55 * charset.c (emacs_mule_charset): Make it an array of charset ID;
47 i.e. integer. 56 i.e. integer.
48 (Fdefine_charset_internal): Adjusted for the above change. 57 (Fdefine_charset_internal): Adjust for the above change.
49 (init_charset_once): Likewise. 58 (init_charset_once): Likewise.
50 59
51 * charset.h (emacs_mule_charset): Adjust the prototype. Delete 60 * charset.h (emacs_mule_charset): Adjust the prototype.
52 duplicated extern. 61 Delete duplicated extern.
53 62
54 * coding.c (emacs_mule_char): Adjust for the change of 63 * coding.c (emacs_mule_char): Adjust for the change of
55 emacs_mule_charset. 64 emacs_mule_charset.
56 65
57 * lread.c (read_emacs_mule_char): Adjust for the change of 66 * lread.c (read_emacs_mule_char): Adjust for the change of
400 * w32term.c (x_draw_glyphless_glyph_string_foreground): Draw the 409 * w32term.c (x_draw_glyphless_glyph_string_foreground): Draw the
401 box before drawing the glyphs inside it. 410 box before drawing the glyphs inside it.
402 411
403 * xdisp.c (syms_of_xdisp) <glyphless-char-display>: Doc fix. 412 * xdisp.c (syms_of_xdisp) <glyphless-char-display>: Doc fix.
404 413
405 * dispextern.h (enum glyphless_display_method): Rename 414 * dispextern.h (enum glyphless_display_method):
406 GLYPHLESS_DISPLAY_HEXA_CODE to GLYPHLESS_DISPLAY_HEX_CODE. All 415 Rename GLYPHLESS_DISPLAY_HEXA_CODE to GLYPHLESS_DISPLAY_HEX_CODE.
407 users changed. 416 All users changed.
408 417
409 * term.c (append_glyphless_glyph, produce_glyphless_glyph): Fix 418 * term.c (append_glyphless_glyph, produce_glyphless_glyph):
410 comments. 419 Fix comments.
411 (produce_glyphless_glyph): Enclose "U+nnnn" and "empty box" 420 (produce_glyphless_glyph): Enclose "U+nnnn" and "empty box"
412 whitespace in "[]", to simulate a box. Don't use uninitialized 421 whitespace in "[]", to simulate a box. Don't use uninitialized
413 variable `width'. 422 variable `width'.
414 423
415 2010-11-11 Julien Danjou <julien@danjou.info> 424 2010-11-11 Julien Danjou <julien@danjou.info>
538 Replace Display_Info with Mouse_HLInfo everywhere where 547 Replace Display_Info with Mouse_HLInfo everywhere where
539 mouse_face_* members were accessed for mouse highlight purposes. 548 mouse_face_* members were accessed for mouse highlight purposes.
540 549
541 * xterm.c (x_update_window_begin, x_update_window_end) 550 * xterm.c (x_update_window_begin, x_update_window_end)
542 (x_update_end, XTframe_up_to_date, x_set_mouse_face_gc) 551 (x_update_end, XTframe_up_to_date, x_set_mouse_face_gc)
543 (handle_one_xevent, x_free_frame_resources, x_term_init): Replace 552 (handle_one_xevent, x_free_frame_resources, x_term_init):
544 Display_Info with Mouse_HLInfo everywhere where mouse_face_* 553 Replace Display_Info with Mouse_HLInfo everywhere where mouse_face_*
545 members were accessed for mouse highlight purposes. 554 members were accessed for mouse highlight purposes.
546 555
547 * w32term.c (x_update_window_begin, x_update_window_end) 556 * w32term.c (x_update_window_begin, x_update_window_end)
548 (x_update_end, w32_read_socket, x_free_frame_resources) 557 (x_update_end, w32_read_socket, x_free_frame_resources)
549 (w32_initialize_display_info): Replace Display_Info with 558 (w32_initialize_display_info): Replace Display_Info with
562 mouse_face_* members were accessed for mouse highlight purposes. 571 mouse_face_* members were accessed for mouse highlight purposes.
563 (coords_in_mouse_face_p): Move prototype out of the 572 (coords_in_mouse_face_p): Move prototype out of the
564 HAVE_WINDOW_SYSTEM conditional. 573 HAVE_WINDOW_SYSTEM conditional.
565 (x_y_to_hpos_vpos, frame_to_window_pixel_xy): Move out of the 574 (x_y_to_hpos_vpos, frame_to_window_pixel_xy): Move out of the
566 HAVE_WINDOW_SYSTEM block. 575 HAVE_WINDOW_SYSTEM block.
567 (try_window_id) [HAVE_GPM || MSDOS]: Call 576 (try_window_id) [HAVE_GPM || MSDOS]:
568 x_clear_window_mouse_face. 577 Call x_clear_window_mouse_face.
569 (draw_row_with_mouse_face): Implementation for HAVE_WINDOW_SYSTEM 578 (draw_row_with_mouse_face): Implementation for HAVE_WINDOW_SYSTEM
570 systems. Call tty_draw_row_with_mouse_face for TTY systems. 579 systems. Call tty_draw_row_with_mouse_face for TTY systems.
571 (show_mouse_face): Call draw_row_with_mouse_face, instead of 580 (show_mouse_face): Call draw_row_with_mouse_face, instead of
572 calling draw_glyphs directly. 581 calling draw_glyphs directly.
573 (show_mouse_face, clear_mouse_face, coords_in_mouse_face_p) 582 (show_mouse_face, clear_mouse_face, coords_in_mouse_face_p)
579 fragments. 588 fragments.
580 (note_mouse_highlight): Call popup_activated for MSDOS as well. 589 (note_mouse_highlight): Call popup_activated for MSDOS as well.
581 Clear mouse highlight if pointer is over glyphs whose OBJECT is an 590 Clear mouse highlight if pointer is over glyphs whose OBJECT is an
582 integer. 591 integer.
583 (mouse_face_from_buffer_pos): Add parentheses around && within ||. 592 (mouse_face_from_buffer_pos): Add parentheses around && within ||.
584 (x_consider_frame_title, tool_bar_lines_needed): Move 593 (x_consider_frame_title, tool_bar_lines_needed):
585 prototypes to HAVE_WINDOW_SYSTEM-only part. 594 Move prototypes to HAVE_WINDOW_SYSTEM-only part.
586 (get_window_cursor_type): Move inside a HAVE_WINDOW_SYSTEM-only 595 (get_window_cursor_type): Move inside a HAVE_WINDOW_SYSTEM-only
587 part. Remove "#ifdef HAVE_WINDOW_SYSTEM" from body of function. 596 part. Remove "#ifdef HAVE_WINDOW_SYSTEM" from body of function.
588 (null_glyph_slice): Move declaration into HAVE_WINDOW_SYSTEM-only 597 (null_glyph_slice): Move declaration into HAVE_WINDOW_SYSTEM-only
589 part. 598 part.
590 599
629 (draw_row_with_mouse_face): Declare prototype. 638 (draw_row_with_mouse_face): Declare prototype.
630 (tty_draw_row_with_mouse_face): Declare prototype. 639 (tty_draw_row_with_mouse_face): Declare prototype.
631 640
632 2010-11-05 Eli Zaretskii <eliz@gnu.org> 641 2010-11-05 Eli Zaretskii <eliz@gnu.org>
633 642
634 * term.c (append_glyphless_glyph, produce_glyphless_glyph): Remove 643 * term.c (append_glyphless_glyph, produce_glyphless_glyph):
635 unused variables. 644 Remove unused variables.
636 645
637 2010-11-05 Adrian Robert <Adrian.B.Robert@gmail.com> 646 2010-11-05 Adrian Robert <Adrian.B.Robert@gmail.com>
638 647
639 * nsterm.m (EmacsView-mouseExited:): Correct error in conditional 648 * nsterm.m (EmacsView-mouseExited:): Correct error in conditional
640 logic pointed out by Eli Zaretskii. 649 logic pointed out by Eli Zaretskii.
864 873
865 * xmenu.c: Revert 2010-07-27 change: lwlib.h is needed for 874 * xmenu.c: Revert 2010-07-27 change: lwlib.h is needed for
866 MOTIF (Bug#7263). 875 MOTIF (Bug#7263).
867 876
868 * xfns.c: Include Xm/TextF and Xm/List. 877 * xfns.c: Include Xm/TextF and Xm/List.
869 (file_dialog_cb, file_dialog_unmap_cb, clean_up_file_dialog): Make 878 (file_dialog_cb, file_dialog_unmap_cb, clean_up_file_dialog):
870 ANSI prototypes. 879 Make ANSI prototypes.
871 880
872 2010-10-22 Glenn Morris <rgm@gnu.org> 881 2010-10-22 Glenn Morris <rgm@gnu.org>
873 882
874 * Makefile.in (SOME_MACHINE_LISP): Add w32-vars. 883 * Makefile.in (SOME_MACHINE_LISP): Add w32-vars.
875 Remove ccl and duplicate mouse. 884 Remove ccl and duplicate mouse.
1146 1155
1147 * sysdep.c (flush_pending_output): Remove code, does not do 1156 * sysdep.c (flush_pending_output): Remove code, does not do
1148 anything on any platform. 1157 anything on any platform.
1149 1158
1150 Remove unused code. 1159 Remove unused code.
1151 * sysdep.c (select_alarm, sys_select, read_input_waiting): Remove 1160 * sysdep.c (select_alarm, sys_select, read_input_waiting):
1152 select emulation, all systems support select. 1161 Remove select emulation, all systems support select.
1153 (set_exclusive_use): Remove, the only user is in an #if 0 block. 1162 (set_exclusive_use): Remove, the only user is in an #if 0 block.
1154 * process.c (create_process): Remove #if 0 code. 1163 * process.c (create_process): Remove #if 0 code.
1155 1164
1156 Remove unused arguments for unexec. 1165 Remove unused arguments for unexec.
1157 The third one is never used, and the last two are always passed as zero. 1166 The third one is never used, and the last two are always passed as zero.
1212 (kill-emacs-hook): Doc fix. 1221 (kill-emacs-hook): Doc fix.
1213 1222
1214 2010-10-02 Lars Magne Ingebrigtsen <larsi@gnus.org> 1223 2010-10-02 Lars Magne Ingebrigtsen <larsi@gnus.org>
1215 1224
1216 * xml.c (Flibxml_parse_xml_region, Flibxml_parse_html_region) 1225 * xml.c (Flibxml_parse_xml_region, Flibxml_parse_html_region)
1217 (parse_region): Reworked to take regions instead of strings, and 1226 (parse_region): Rework to take regions instead of strings, and
1218 renamed to reflect that these are the libxml functions. 1227 renamed to reflect that these are the libxml functions.
1219 1228
1220 2010-10-01 Eli Zaretskii <eliz@gnu.org> 1229 2010-10-01 Eli Zaretskii <eliz@gnu.org>
1221 1230
1222 * term.c (init_tty) [DOS_NT]: Don't call Wcm_clear after setting 1231 * term.c (init_tty) [DOS_NT]: Don't call Wcm_clear after setting
1250 * callproc.c: 1259 * callproc.c:
1251 * process.c: 1260 * process.c:
1252 * msdos.c: 1261 * msdos.c:
1253 * charset.c: Do not include stdlib.h and string.h, config.h does it. 1262 * charset.c: Do not include stdlib.h and string.h, config.h does it.
1254 1263
1255 * callproc.c (SIGCHLD): Remove conditional definition, syssignal.h defines it. 1264 * callproc.c (SIGCHLD): Remove conditional definition, syssignal.h
1265 defines it.
1256 1266
1257 * process.c: Move #include <pty.h> earlier. 1267 * process.c: Move #include <pty.h> earlier.
1258 (SIGCHLD): Remove conditional definition, syssignal.h defines it. 1268 (SIGCHLD): Remove conditional definition, syssignal.h defines it.
1259 (pty_name): Move definition later. 1269 (pty_name): Move definition later.
1260 1270
1340 (hscroll_window_tree, text_outside_line_unchanged_p) 1350 (hscroll_window_tree, text_outside_line_unchanged_p)
1341 (set_cursor_from_row, set_vertical_scroll_bar, redisplay_window) 1351 (set_cursor_from_row, set_vertical_scroll_bar, redisplay_window)
1342 (find_last_unchanged_at_beg_row) 1352 (find_last_unchanged_at_beg_row)
1343 (find_first_unchanged_at_end_row, row_containing_pos) 1353 (find_first_unchanged_at_end_row, row_containing_pos)
1344 (trailing_whitespace_p, display_mode_element, decode_mode_spec) 1354 (trailing_whitespace_p, display_mode_element, decode_mode_spec)
1345 (display_count_lines, x_produce_glyphs, note_mouse_highlight): Use 1355 (display_count_lines, x_produce_glyphs, note_mouse_highlight):
1346 EMACS_INT for buffer and string positions. 1356 Use EMACS_INT for buffer and string positions.
1347 1357
1348 * dispextern.h (struct it) <string_nchars>: Declare EMACS_INT. 1358 * dispextern.h (struct it) <string_nchars>: Declare EMACS_INT.
1349 (row_containing_pos): Adjust prototype. 1359 (row_containing_pos): Adjust prototype.
1350 1360
1351 * lisp.h (pos_visible_p, message2, message2_nolog, message3) 1361 * lisp.h (pos_visible_p, message2, message2_nolog, message3)
1428 These changes are to remove restriction on the number of glyphs in 1438 These changes are to remove restriction on the number of glyphs in
1429 one composition. 1439 one composition.
1430 1440
1431 * dispextern.h (struct glyph): Change the member "slice" to union. 1441 * dispextern.h (struct glyph): Change the member "slice" to union.
1432 Remove u.cmp.from and u.cmp.to. Give more bits to u.cmp.id. 1442 Remove u.cmp.from and u.cmp.to. Give more bits to u.cmp.id.
1433 (GLYPH_SLICE_EQUAL_P): Adjusted for the above change. 1443 (GLYPH_SLICE_EQUAL_P): Adjust for the above change.
1434 1444
1435 * dispnew.c (buffer_posn_from_coords): Use glyph->slice.img 1445 * dispnew.c (buffer_posn_from_coords): Use glyph->slice.img
1436 instead of glyph->slice. 1446 instead of glyph->slice.
1437 (marginal_area_string): Likewise. 1447 (marginal_area_string): Likewise.
1438 1448
1624 1634
1625 * keyboard.c (make_lispy_position): Use EMACS_INT for buffer 1635 * keyboard.c (make_lispy_position): Use EMACS_INT for buffer
1626 positions. 1636 positions.
1627 1637
1628 * xdisp.c (redisplay_internal, try_window_id) 1638 * xdisp.c (redisplay_internal, try_window_id)
1629 (set_cursor_from_row, find_first_unchanged_at_end_row): Use 1639 (set_cursor_from_row, find_first_unchanged_at_end_row):
1630 EMACS_INT for buffer positions. 1640 Use EMACS_INT for buffer positions.
1631 1641
1632 * dispextern.h (set_cursor_from_row): Adjust prototype. 1642 * dispextern.h (set_cursor_from_row): Adjust prototype.
1633 1643
1634 * dispnew.c (increment_matrix_positions) 1644 * dispnew.c (increment_matrix_positions)
1635 (increment_row_positions, copy_glyph_row_contents) 1645 (increment_row_positions, copy_glyph_row_contents)
1636 (mode_line_string, marginal_area_string): Use EMACS_INT for buffer 1646 (mode_line_string, marginal_area_string): Use EMACS_INT for buffer
1637 positions. 1647 positions.
1638 1648
1639 * dispextern.h (mode_line_string, marginal_area_string) 1649 * dispextern.h (mode_line_string, marginal_area_string)
1640 (increment_matrix_positions, increment_row_positions): Adjust 1650 (increment_matrix_positions, increment_row_positions):
1641 prototypes. 1651 Adjust prototypes.
1642 1652
1643 * data.c (Faref, Faset): Use EMACS_INT for string length and 1653 * data.c (Faref, Faset): Use EMACS_INT for string length and
1644 positions. 1654 positions.
1645 1655
1646 * cmds.c (internal_self_insert): Use EMACS_INT for the count of 1656 * cmds.c (internal_self_insert): Use EMACS_INT for the count of
1649 * ccl.c (Fccl_execute_on_string): Use EMACS_INT for string 1659 * ccl.c (Fccl_execute_on_string): Use EMACS_INT for string
1650 position and size. 1660 position and size.
1651 1661
1652 * syntax.c (scan_words, update_syntax_table) 1662 * syntax.c (scan_words, update_syntax_table)
1653 (prev_char_comend_first, back_comment, skip_chars) 1663 (prev_char_comend_first, back_comment, skip_chars)
1654 (skip_syntaxes, Fforward_comment, Fbackward_prefix_chars): Use 1664 (skip_syntaxes, Fforward_comment, Fbackward_prefix_chars):
1655 EMACS_INT for buffer and string positions. 1665 Use EMACS_INT for buffer and string positions.
1656 1666
1657 * syntax.h (scan_words, update_syntax_table): Adjust prototypes. 1667 * syntax.h (scan_words, update_syntax_table): Adjust prototypes.
1658 1668
1659 * casefiddle.c (operate_on_word): Use EMACS_INT for buffer 1669 * casefiddle.c (operate_on_word): Use EMACS_INT for buffer
1660 positions. 1670 positions.
1698 (overlay_touches_p, record_overlay_string, overlay_strings) 1708 (overlay_touches_p, record_overlay_string, overlay_strings)
1699 (recenter_overlay_lists, fix_start_end_in_overlays) 1709 (recenter_overlay_lists, fix_start_end_in_overlays)
1700 (modify_overlay, Fmove_overlay, report_overlay_modification) 1710 (modify_overlay, Fmove_overlay, report_overlay_modification)
1701 (evaporate_overlays): Use EMACS_INT for buffer positions. 1711 (evaporate_overlays): Use EMACS_INT for buffer positions.
1702 1712
1703 * lisp.h (fix_start_end_in_overlays, overlay_touches_p): Adjust 1713 * lisp.h (fix_start_end_in_overlays, overlay_touches_p):
1704 prototypes. 1714 Adjust prototypes.
1705 1715
1706 * dispextern.h (struct bidi_saved_info): Use EMACS_INT for buffer 1716 * dispextern.h (struct bidi_saved_info): Use EMACS_INT for buffer
1707 positions. 1717 positions.
1708 1718
1709 * fns.c (Fcompare_strings, Fstring_lessp, concat) 1719 * fns.c (Fcompare_strings, Fstring_lessp, concat)
1790 2010-09-23 Eli Zaretskii <eliz@gnu.org> 1800 2010-09-23 Eli Zaretskii <eliz@gnu.org>
1791 1801
1792 * indent.c (compute_motion): Use EMACS_INT for arguments to 1802 * indent.c (compute_motion): Use EMACS_INT for arguments to
1793 region_cache_forward. 1803 region_cache_forward.
1794 1804
1795 * region-cache.c (struct boundary, struct region_cache): Use 1805 * region-cache.c (struct boundary, struct region_cache):
1796 EMACS_INT for positions. 1806 Use EMACS_INT for positions.
1797 (find_cache_boundary, move_cache_gap, insert_cache_boundary) 1807 (find_cache_boundary, move_cache_gap, insert_cache_boundary)
1798 (delete_cache_boundaries, set_cache_region) 1808 (delete_cache_boundaries, set_cache_region)
1799 (invalidate_region_cache, know_region_cache) 1809 (invalidate_region_cache, know_region_cache)
1800 (region_cache_forward, region_cache_backward, pp_cache): Use 1810 (region_cache_forward, region_cache_backward, pp_cache):
1801 EMACS_INT for buffer positions. 1811 Use EMACS_INT for buffer positions.
1802 1812
1803 * region-cache.h (know_region_cache, invalidate_region_cache) 1813 * region-cache.h (know_region_cache, invalidate_region_cache)
1804 (region_cache_forward, region_cache_backward): Adjust prototypes. 1814 (region_cache_forward, region_cache_backward): Adjust prototypes.
1805 1815
1806 * search.c (string_match_1, fast_c_string_match_ignore_case) 1816 * search.c (string_match_1, fast_c_string_match_ignore_case)
1817 (buildmark, clip_to_bounds, Fgoto_char, overlays_around) 1827 (buildmark, clip_to_bounds, Fgoto_char, overlays_around)
1818 (get_pos_property, Fconstrain_to_field) 1828 (get_pos_property, Fconstrain_to_field)
1819 (Fline_beginning_position, Fline_end_position, Fprevious_char) 1829 (Fline_beginning_position, Fline_end_position, Fprevious_char)
1820 (Fchar_after, Fchar_before, Finsert_char) 1830 (Fchar_after, Fchar_before, Finsert_char)
1821 (Finsert_buffer_substring, Fcompare_buffer_substrings) 1831 (Finsert_buffer_substring, Fcompare_buffer_substrings)
1822 (Fsubst_char_in_region, Fformat, Ftranspose_regions): Use 1832 (Fsubst_char_in_region, Fformat, Ftranspose_regions):
1823 EMACS_INT for buffer and string position variables. 1833 Use EMACS_INT for buffer and string position variables.
1824 (Finsert_char): Protect against too large insertions. 1834 (Finsert_char): Protect against too large insertions.
1825 1835
1826 * lisp.h (clip_to_bounds): Adjust prototype. 1836 * lisp.h (clip_to_bounds): Adjust prototype.
1827 1837
1828 * intervals.c (traverse_intervals, rotate_right, rotate_left) 1838 * intervals.c (traverse_intervals, rotate_right, rotate_left)
1855 * composite.h (get_composition_id, find_composition, compose_text) 1865 * composite.h (get_composition_id, find_composition, compose_text)
1856 (composition_gstring_width): Adjust prototypes. 1866 (composition_gstring_width): Adjust prototypes.
1857 1867
1858 * editfns.c (Fformat): Use EMACS_INT for string size variables. 1868 * editfns.c (Fformat): Use EMACS_INT for string size variables.
1859 1869
1860 * xdisp.c (store_mode_line_noprop, display_mode_element): Use 1870 * xdisp.c (store_mode_line_noprop, display_mode_element):
1861 EMACS_INT for string positions. 1871 Use EMACS_INT for string positions.
1862 1872
1863 * intervals.c (get_property_and_range): Use EMACS_INT for buffer 1873 * intervals.c (get_property_and_range): Use EMACS_INT for buffer
1864 position arguments. 1874 position arguments.
1865 1875
1866 * intervals.h (get_property_and_range): Adjust prototype. 1876 * intervals.h (get_property_and_range): Adjust prototype.
1867 1877
1868 * character.c (parse_str_as_multibyte, str_as_multibyte) 1878 * character.c (parse_str_as_multibyte, str_as_multibyte)
1869 (parse_str_to_multibyte, str_to_multibyte, str_as_unibyte) 1879 (parse_str_to_multibyte, str_to_multibyte, str_as_unibyte)
1870 (string_count_byte8, string_escape_byte8, c_string_width) 1880 (string_count_byte8, string_escape_byte8, c_string_width)
1871 (strwidth, lisp_string_width, multibyte_chars_in_text): Use 1881 (strwidth, lisp_string_width, multibyte_chars_in_text):
1872 EMACS_INT for string length variables and arguments. 1882 Use EMACS_INT for string length variables and arguments.
1873 1883
1874 * character.h (parse_str_as_multibyte, str_as_multibyte) 1884 * character.h (parse_str_as_multibyte, str_as_multibyte)
1875 (parse_str_to_multibyte, str_to_multibyte, str_as_unibyte) 1885 (parse_str_to_multibyte, str_to_multibyte, str_as_unibyte)
1876 (c_string_width, strwidth, lisp_string_width): Adjust 1886 (c_string_width, strwidth, lisp_string_width):
1877 prototypes. 1887 Adjust prototypes.
1878 1888
1879 * font.c (font_intern_prop): Use EMACS_INT for string length 1889 * font.c (font_intern_prop): Use EMACS_INT for string length
1880 variables. 1890 variables.
1881 1891
1882 * font.c (font_intern_prop): Use EMACS_INT for string length 1892 * font.c (font_intern_prop): Use EMACS_INT for string length
1892 differences. 1902 differences.
1893 (string_bytes, check_sblock, check_string_free_list) 1903 (string_bytes, check_sblock, check_string_free_list)
1894 (allocate_string_data, compact_small_strings, Fmake_string) 1904 (allocate_string_data, compact_small_strings, Fmake_string)
1895 (Fmake_bool_vector, make_string, make_unibyte_string) 1905 (Fmake_bool_vector, make_string, make_unibyte_string)
1896 (make_multibyte_string, make_string_from_bytes) 1906 (make_multibyte_string, make_string_from_bytes)
1897 (make_specified_string_string, Fmake_list, Fmake_vector): Use 1907 (make_specified_string_string, Fmake_list, Fmake_vector):
1898 EMACS_INT for string length variables and arguments. 1908 Use EMACS_INT for string length variables and arguments.
1899 (find_string_data_in_pure, make_pure_string, make_pure_c_string) 1909 (find_string_data_in_pure, make_pure_string, make_pure_c_string)
1900 (Fpurecopy): Use EMACS_INT for string size. 1910 (Fpurecopy): Use EMACS_INT for string size.
1901 (mark_vectorlike, mark_char_table, mark_object): Use EMACS_UINT 1911 (mark_vectorlike, mark_char_table, mark_object): Use EMACS_UINT
1902 for vector size. 1912 for vector size.
1903 1913
2158 (svg_load): Likewise. 2168 (svg_load): Likewise.
2159 (gs_load): Likewise. 2169 (gs_load): Likewise.
2160 2170
2161 2010-09-04 Eli Zaretskii <eliz@gnu.org> 2171 2010-09-04 Eli Zaretskii <eliz@gnu.org>
2162 2172
2163 * w32uniscribe.c (uniscribe_shape): Update commentary. Don't 2173 * w32uniscribe.c (uniscribe_shape): Update commentary.
2164 try to reorder grapheme clusters, since LGSTRING should always 2174 Don't try to reorder grapheme clusters, since LGSTRING should always
2165 hold them in the logical order. 2175 hold them in the logical order.
2166 (uniscribe_encode_char, uniscribe_shape): Force ScriptShape to 2176 (uniscribe_encode_char, uniscribe_shape): Force ScriptShape to
2167 return glyph codes in the logical order. 2177 return glyph codes in the logical order.
2168 2178
2169 2010-09-04 Andreas Schwab <schwab@linux-m68k.org> 2179 2010-09-04 Andreas Schwab <schwab@linux-m68k.org>
2358 * systty.h: Do not define HAVE_TCATTR. 2368 * systty.h: Do not define HAVE_TCATTR.
2359 Remove HAVE_TERMIO, HAVE_LTCHARS and HAVE_TCHARS code. 2369 Remove HAVE_TERMIO, HAVE_LTCHARS and HAVE_TCHARS code.
2360 Do not define EMACS_HAVE_TTY_PGRP. Only define 2370 Do not define EMACS_HAVE_TTY_PGRP. Only define
2361 EMACS_GET_TTY_PGRP for !DOS_NT. 2371 EMACS_GET_TTY_PGRP for !DOS_NT.
2362 * sysdep.c: Include sysselect.h unconditionally. Do not include 2372 * sysdep.c: Include sysselect.h unconditionally. Do not include
2363 sys/ioctl.h and termios.h, systty.h does it. Use 2373 sys/ioctl.h and termios.h, systty.h does it.
2364 HAVE_SYS_UTSNAME_H instead of USG as an include guard. 2374 Use HAVE_SYS_UTSNAME_H instead of USG as an include guard.
2365 (init_baud_rate): Remove HAVE_TERMIO code. 2375 (init_baud_rate): Remove HAVE_TERMIO code.
2366 (child_setup_tty): Remove HAVE_TERMIO code. 2376 (child_setup_tty): Remove HAVE_TERMIO code.
2367 (emacs_get_tty, emacs_set_tty): Remove HAVE_TERMIO, HAVE_TCHARS 2377 (emacs_get_tty, emacs_set_tty): Remove HAVE_TERMIO, HAVE_TCHARS
2368 and HAVE_LTCHARS code. Use !DOS_NT instead of HAVE_TCATTR. 2378 and HAVE_LTCHARS code. Use !DOS_NT instead of HAVE_TCATTR.
2369 (new_ltchars, new_tchars): Remove, unused. 2379 (new_ltchars, new_tchars): Remove, unused.
2370 (init_sys_modes): Remove HAVE_TERMIO, HAVE_TCHARS and HAVE_LTCHARS 2380 (init_sys_modes): Remove HAVE_TERMIO, HAVE_TCHARS and HAVE_LTCHARS
2371 code. Remove special casing for __mips__, it was a no-op. Remove 2381 code. Remove special casing for __mips__, it was a no-op.
2372 HAVE_TCATTR conditional, it is implied by HAVE_TERMIOS. 2382 Remove HAVE_TCATTR conditional, it is implied by HAVE_TERMIOS.
2373 (init_sys_modes): Remove HPUX special case. 2383 (init_sys_modes): Remove HPUX special case.
2374 * process.c: Include stdlib.h unconditionally. Do not include 2384 * process.c: Include stdlib.h unconditionally. Do not include
2375 fcntl.h, systty.h does it. Remove conditional code for 2385 fcntl.h, systty.h does it. Remove conditional code for
2376 HAVE_SERIAL, it is always true. 2386 HAVE_SERIAL, it is always true.
2377 (process_send_signal): Remove HAVE_TERMIOS conditional, it's 2387 (process_send_signal): Remove HAVE_TERMIOS conditional, it's
3091 (Vshell_file_name, Vsystem_name, Vwindow_scroll_functions) 3101 (Vshell_file_name, Vsystem_name, Vwindow_scroll_functions)
3092 (Vwindow_system_version, Vx_no_window_manager, initial_argc) 3102 (Vwindow_system_version, Vx_no_window_manager, initial_argc)
3093 (initial_argv, last_nonmenu_event, load_in_progress) 3103 (initial_argv, last_nonmenu_event, load_in_progress)
3094 (noninteractive_need_newline, scroll_margin): Add declarations. 3104 (noninteractive_need_newline, scroll_margin): Add declarations.
3095 3105
3096 * keyboard.h (xmalloc_widget_value, digest_single_submenu): Remove 3106 * keyboard.h (xmalloc_widget_value, digest_single_submenu):
3097 declarations, menu.h has them. 3107 Remove declarations, menu.h has them.
3098 (QCbutton, QCtoggle, QCradio, QClabel, extra_keyboard_modifiers) 3108 (QCbutton, QCtoggle, QCradio, QClabel, extra_keyboard_modifiers)
3099 (Vinput_method_function, Qinput_method_function) 3109 (Vinput_method_function, Qinput_method_function)
3100 (Qevent_symbol_element_mask, last_event_timestamp): 3110 (Qevent_symbol_element_mask, last_event_timestamp):
3101 * dispextern.h (Voverflow_newline_into_fringe): 3111 * dispextern.h (Voverflow_newline_into_fringe):
3102 * font.h (QCantialias, Qp, syms_of_ftfont, syms_of_xfns) 3112 * font.h (QCantialias, Qp, syms_of_ftfont, syms_of_xfns)
3399 3409
3400 * emacs.c (Fkill_emacs): Remove return statement. 3410 * emacs.c (Fkill_emacs): Remove return statement.
3401 3411
3402 * term.c (Qspace, QCalign_to, QCwidth): Remove declarations. 3412 * term.c (Qspace, QCalign_to, QCwidth): Remove declarations.
3403 (encode_terminal_code, produce_composite_glyph): Remove unused variables. 3413 (encode_terminal_code, produce_composite_glyph): Remove unused variables.
3404 (set_tty_color_mode, term_mouse_highlight, term_get_fkeys): Remove 3414 (set_tty_color_mode, term_mouse_highlight, term_get_fkeys):
3405 local extern declarations. 3415 Remove local extern declarations.
3406 3416
3407 * xmenu.c: Do not included lwlib.h, not needed. 3417 * xmenu.c: Do not included lwlib.h, not needed.
3408 3418
3409 * m/iris4d.h (XUINT, XSET): Remove, not needed. 3419 * m/iris4d.h (XUINT, XSET): Remove, not needed.
3410 3420
3765 * xterm.c (x_frame_of_widget, x_alloc_nearest_color_for_widget) 3775 * xterm.c (x_frame_of_widget, x_alloc_nearest_color_for_widget)
3766 (x_alloc_lighter_color_for_widget, cvt_string_to_pixel) 3776 (x_alloc_lighter_color_for_widget, cvt_string_to_pixel)
3767 (cvt_pixel_dtor, x_window_to_menu_bar, xt_action_hook) 3777 (cvt_pixel_dtor, x_window_to_menu_bar, xt_action_hook)
3768 (xaw_jump_callback, xaw_scroll_callback) 3778 (xaw_jump_callback, xaw_scroll_callback)
3769 (x_create_toolkit_scroll_bar, x_set_toolkit_scroll_bar_thumb) 3779 (x_create_toolkit_scroll_bar, x_set_toolkit_scroll_bar_thumb)
3770 (x_wm_set_size_hint, x_activate_timeout_atimer): Convert 3780 (x_wm_set_size_hint, x_activate_timeout_atimer):
3771 definitions to standard C. 3781 Convert definitions to standard C.
3772 * xmenu.c (menubar_id_to_frame, popup_get_selection) 3782 * xmenu.c (menubar_id_to_frame, popup_get_selection)
3773 (popup_activate_callback, popup_deactivate_callback) 3783 (popup_activate_callback, popup_deactivate_callback)
3774 (menu_highlight_callback, menubar_selection_callback) 3784 (menu_highlight_callback, menubar_selection_callback)
3775 (apply_systemfont_to_dialog, apply_systemfont_to_menu) 3785 (apply_systemfont_to_dialog, apply_systemfont_to_menu)
3776 (free_frame_menubar, popup_selection_callback, as) 3786 (free_frame_menubar, popup_selection_callback, as)
3879 (Ffont_get): If KEY is :otf and the font-object doesn't have the 3889 (Ffont_get): If KEY is :otf and the font-object doesn't have the
3880 property, get the property value dynamically. 3890 property, get the property value dynamically.
3881 (Ffont_put): Accept font-entity and font-object too. 3891 (Ffont_put): Accept font-entity and font-object too.
3882 (Ffont_get_glyhphs): Renamed from Fget_font_glyphs. Arguments and 3892 (Ffont_get_glyhphs): Renamed from Fget_font_glyphs. Arguments and
3883 return value changed. 3893 return value changed.
3884 (syms_of_font): Adjusted for the above change. 3894 (syms_of_font): Adjust for the above change.
3885 3895
3886 2010-07-11 Andreas Schwab <schwab@linux-m68k.org> 3896 2010-07-11 Andreas Schwab <schwab@linux-m68k.org>
3887 3897
3888 * blockinput.h: Remove obsolete comment. 3898 * blockinput.h: Remove obsolete comment.
3889 3899
3970 3980
3971 2010-07-10 Chong Yidong <cyd@stupidchicken.com> 3981 2010-07-10 Chong Yidong <cyd@stupidchicken.com>
3972 3982
3973 * frame.c (make_frame): Initialize menu_bar_lines and 3983 * frame.c (make_frame): Initialize menu_bar_lines and
3974 tool_bar_lines members. 3984 tool_bar_lines members.
3975 (make_initial_frame, make_terminal_frame): Initialize 3985 (make_initial_frame, make_terminal_frame):
3976 menu_bar_lines using value of menu-bar-mode. 3986 Initialize menu_bar_lines using value of menu-bar-mode.
3977 3987
3978 * msdos.c (IT_set_frame_parameters): Don't set menu-bar-lines. 3988 * msdos.c (IT_set_frame_parameters): Don't set menu-bar-lines.
3979 3989
3980 2010-07-10 Eli Zaretskii <eliz@gnu.org> 3990 2010-07-10 Eli Zaretskii <eliz@gnu.org>
3981 3991
4419 * xterm.c (XTring_bell, XTset_terminal_window): Fix wrong prototype. 4429 * xterm.c (XTring_bell, XTset_terminal_window): Fix wrong prototype.
4420 4430
4421 * xsmfns.c (SSDATA): New macro. 4431 * xsmfns.c (SSDATA): New macro.
4422 (smc_save_yourself_CB, x_session_initialize): Use SSDATA for strings 4432 (smc_save_yourself_CB, x_session_initialize): Use SSDATA for strings
4423 passed to strlen/strcpy/strcat. 4433 passed to strlen/strcpy/strcat.
4424 (create_client_leader_window): Surround with #ifndef USE_GTK. Cast 4434 (create_client_leader_window): Surround with #ifndef USE_GTK.
4425 7:th arg to XChangeProperty to (unsigned char *). 4435 Cast 7:th arg to XChangeProperty to (unsigned char *).
4426 4436
4427 * xsettings.c (something_changedCB, parse_settings) 4437 * xsettings.c (something_changedCB, parse_settings)
4428 (apply_xft_settings): Reformat prototype. 4438 (apply_xft_settings): Reformat prototype.
4429 (something_changedCB, init_gconf): Remove unused variable i. 4439 (something_changedCB, init_gconf): Remove unused variable i.
4430 (read_settings): Remove unused variable long_len. 4440 (read_settings): Remove unused variable long_len.
4578 4588
4579 2010-07-03 Eli Zaretskii <eliz@gnu.org> 4589 2010-07-03 Eli Zaretskii <eliz@gnu.org>
4580 4590
4581 * msdos.c (IT_set_frame_parameters): Fix setting of colors in 4591 * msdos.c (IT_set_frame_parameters): Fix setting of colors in
4582 frames other than the initial one. Fix reversal of colors when 4592 frames other than the initial one. Fix reversal of colors when
4583 `reverse' is specified in the frame parameters. Call 4593 `reverse' is specified in the frame parameters.
4584 update_face_from_frame_parameter instead of 4594 Call update_face_from_frame_parameter instead of
4585 internal-set-lisp-face-attribute. Initialize screen colors from 4595 internal-set-lisp-face-attribute. Initialize screen colors from
4586 initial_screen_colors[] when f->default_face_done_p is zero, 4596 initial_screen_colors[] when f->default_face_done_p is zero,
4587 instead of depending on being called with default-frame-alist as 4597 instead of depending on being called with default-frame-alist as
4588 the alist argument. 4598 the alist argument.
4589 4599
4764 * nsmenu.m (free_frame_tool_bar, update_frame_tool_bar): 4774 * nsmenu.m (free_frame_tool_bar, update_frame_tool_bar):
4765 Add BLOCK/UNBLOCK_INPUT so asserts don't trigger. 4775 Add BLOCK/UNBLOCK_INPUT so asserts don't trigger.
4766 4776
4767 2010-06-30 Chong Yidong <cyd@stupidchicken.com> 4777 2010-06-30 Chong Yidong <cyd@stupidchicken.com>
4768 4778
4769 * frame.c (get_future_frame_param, Fmake_terminal_frame): Don't 4779 * frame.c (get_future_frame_param, Fmake_terminal_frame):
4770 check default-frame-alist. 4780 Don't check default-frame-alist.
4771 4781
4772 2010-06-30 Andreas Schwab <schwab@linux-m68k.org> 4782 2010-06-30 Andreas Schwab <schwab@linux-m68k.org>
4773 4783
4774 * process.c (create_process): Avoid using invalid file descriptors. 4784 * process.c (create_process): Avoid using invalid file descriptors.
4775 4785
4857 4867
4858 * xfns.c (x_default_font_parameter): Remove got_from_system 4868 * xfns.c (x_default_font_parameter): Remove got_from_system
4859 (Bug#6526). 4869 (Bug#6526).
4860 4870
4861 * xterm.h (gtk_widget_get_window, gtk_widget_get_mapped) 4871 * xterm.h (gtk_widget_get_window, gtk_widget_get_mapped)
4862 (gtk_adjustment_get_page_size, gtk_adjustment_get_upper): New 4872 (gtk_adjustment_get_page_size, gtk_adjustment_get_upper):
4863 defines based on what configure finds. 4873 New defines based on what configure finds.
4864 4874
4865 * xterm.c (XTflash): Use gtk_widget_get_window. 4875 * xterm.c (XTflash): Use gtk_widget_get_window.
4866 (xg_scroll_callback): Use gtk_adjustment_get_upper and 4876 (xg_scroll_callback): Use gtk_adjustment_get_upper and
4867 gtk_adjustment_get_page_size. 4877 gtk_adjustment_get_page_size.
4868 (handle_one_xevent): Use gtk_widget_get_mapped. 4878 (handle_one_xevent): Use gtk_widget_get_mapped.
4872 * xmenu.c (create_and_show_popup_menu): Call gtk_widget_get_mapped. 4882 * xmenu.c (create_and_show_popup_menu): Call gtk_widget_get_mapped.
4873 4883
4874 * gtkutil.h: Replace HAVE_GTK_FILE_BOTH with 4884 * gtkutil.h: Replace HAVE_GTK_FILE_BOTH with
4875 HAVE_GTK_FILE_SELECTION_NEW. 4885 HAVE_GTK_FILE_SELECTION_NEW.
4876 4886
4877 * gtkutil.c (xg_display_open, xg_display_close): Remove 4887 * gtkutil.c (xg_display_open, xg_display_close):
4878 HAVE_GTK_MULTIDISPLAY, it is always defined. 4888 Remove HAVE_GTK_MULTIDISPLAY, it is always defined.
4879 (xg_display_open): Return type is void. 4889 (xg_display_open): Return type is void.
4880 (gtk_widget_set_has_window) 4890 (gtk_widget_set_has_window)
4881 (gtk_dialog_get_action_area, gtk_dialog_get_content_area) 4891 (gtk_dialog_get_action_area, gtk_dialog_get_content_area)
4882 (gtk_widget_get_sensitive, gtk_adjustment_set_page_size) 4892 (gtk_widget_get_sensitive, gtk_adjustment_set_page_size)
4883 (gtk_adjustment_set_page_increment) 4893 (gtk_adjustment_set_page_increment)
4884 (gtk_adjustment_get_step_increment): #define these if not found 4894 (gtk_adjustment_get_step_increment): #define these if not found
4885 by configure. 4895 by configure.
4886 (remove_submenu): New define based on Gtk+ version. 4896 (remove_submenu): New define based on Gtk+ version.
4887 (xg_set_cursor, xg_frame_resized, xg_event_is_for_scrollbar): Use 4897 (xg_set_cursor, xg_frame_resized, xg_event_is_for_scrollbar):
4888 gtk_widget_get_window. 4898 Use gtk_widget_get_window.
4889 (xg_frame_resized, xg_update_frame_menubar): Use gtk_widget_get_mapped. 4899 (xg_frame_resized, xg_update_frame_menubar): Use gtk_widget_get_mapped.
4890 (xg_create_frame_widgets): Use gtk_widget_set_has_window. 4900 (xg_create_frame_widgets): Use gtk_widget_set_has_window.
4891 (create_dialog): Use gtk_dialog_get_action_area and 4901 (create_dialog): Use gtk_dialog_get_action_area and
4892 gtk_dialog_get_content_area. 4902 gtk_dialog_get_content_area.
4893 (xg_uses_old_file_dialog, xg_get_file_name): Remove HAVE_GTK_FILE_BOTH 4903 (xg_uses_old_file_dialog, xg_get_file_name): Remove HAVE_GTK_FILE_BOTH
4894 and HAVE_GTK_FILE_CHOOSER_DIALOG_NEW. File chooser is always 4904 and HAVE_GTK_FILE_CHOOSER_DIALOG_NEW. File chooser is always
4895 available, so checking for HAVE_GTK_FILE_SELECTION_NEW is enough. 4905 available, so checking for HAVE_GTK_FILE_SELECTION_NEW is enough.
4896 (xg_update_menubar, xg_update_submenu, xg_show_toolbar_item): Use 4906 (xg_update_menubar, xg_update_submenu, xg_show_toolbar_item):
4897 g_object_ref and g_object_unref. 4907 Use g_object_ref and g_object_unref.
4898 (xg_update_menu_item, xg_tool_bar_menu_proxy): Use 4908 (xg_update_menu_item, xg_tool_bar_menu_proxy):
4899 gtk_widget_get_sensitive. 4909 Use gtk_widget_get_sensitive.
4900 (xg_update_submenu): Use remove_submenu. 4910 (xg_update_submenu): Use remove_submenu.
4901 (xg_update_scrollbar_pos): Don't use GtkFixedChild, use child 4911 (xg_update_scrollbar_pos): Don't use GtkFixedChild, use child
4902 properties instead to get old x and y position. 4912 properties instead to get old x and y position.
4903 (xg_set_toolkit_scroll_bar_thumb): Use gtk_adjustment_get_page_size, 4913 (xg_set_toolkit_scroll_bar_thumb): Use gtk_adjustment_get_page_size,
4904 gtk_adjustment_get_step_increment, gtk_adjustment_set_page_size, 4914 gtk_adjustment_get_step_increment, gtk_adjustment_set_page_size,
5427 (clean): Use $DEPDIR. 5437 (clean): Use $DEPDIR.
5428 (deps_frag): Include from configure. 5438 (deps_frag): Include from configure.
5429 Move static/dynamic dependency stuff to deps.mk/autodeps.mk. 5439 Move static/dynamic dependency stuff to deps.mk/autodeps.mk.
5430 * deps.mk, autodeps.mk: New files, extracted from Makefile.in. 5440 * deps.mk, autodeps.mk: New files, extracted from Makefile.in.
5431 5441
5432 * bidi.c (bidi_cache_shrink, bidi_cache_iterator_state): Fix 5442 * bidi.c (bidi_cache_shrink, bidi_cache_iterator_state):
5433 reallocation of the cache. (Bug#6210) 5443 Fix reallocation of the cache. (Bug#6210)
5434 5444
5435 2010-05-19 Glenn Morris <rgm@gnu.org> 5445 2010-05-19 Glenn Morris <rgm@gnu.org>
5436 5446
5437 * s/msdos.h (ORDINARY_LINK): Move to sed2v2.inp. 5447 * s/msdos.h (ORDINARY_LINK): Move to sed2v2.inp.
5438 5448
6135 2010-04-27 Dan Nicolaescu <dann@ics.uci.edu> 6145 2010-04-27 Dan Nicolaescu <dann@ics.uci.edu>
6136 6146
6137 Reduce CPP usage. 6147 Reduce CPP usage.
6138 * Makefile.in (LIB_X11_LIB): Remove, inline in the only user. 6148 * Makefile.in (LIB_X11_LIB): Remove, inline in the only user.
6139 (obj): Use autoconf for unexec instead of cpp. 6149 (obj): Use autoconf for unexec instead of cpp.
6140 (C_SWITCH_SYSTEM, C_SWITCH_MACHINE, C_SWITCH_X_SITE): Remove 6150 (C_SWITCH_SYSTEM, C_SWITCH_MACHINE, C_SWITCH_X_SITE):
6141 definitions and undefs. Inline definitions in the only user. 6151 Remove definitions and undefs. Inline definitions in the only user.
6142 (ALL_CFLAGS): Substitute C_SWITCH_X_SYSTEM using autoconf. 6152 (ALL_CFLAGS): Substitute C_SWITCH_X_SYSTEM using autoconf.
6143 6153
6144 2010-04-27 Glenn Morris <rgm@gnu.org> 6154 2010-04-27 Glenn Morris <rgm@gnu.org>
6145 6155
6146 * m/amdx86-64.h (START_FILES, LIB_STANDARD): Change the logic around, 6156 * m/amdx86-64.h (START_FILES, LIB_STANDARD): Change the logic around,
6247 (SOLARIS2): Remove LOAD_AVE_TYPE, LOAD_AVE_CVT, LIBS_MACHINE, unused. 6257 (SOLARIS2): Remove LOAD_AVE_TYPE, LOAD_AVE_CVT, LIBS_MACHINE, unused.
6248 (USG5_4): Move LOAD_AVE_TYPE, LOAD_AVE_CVT, FSCALE definitions to 6258 (USG5_4): Move LOAD_AVE_TYPE, LOAD_AVE_CVT, FSCALE definitions to
6249 the only user: s/unixware.h. 6259 the only user: s/unixware.h.
6250 * ecrt0.c: Remove #ifndef static. Inline CRT0_DUMMIES definition 6260 * ecrt0.c: Remove #ifndef static. Inline CRT0_DUMMIES definition
6251 from m/intel386.h. 6261 from m/intel386.h.
6252 * s/unixware.h (LOAD_AVE_TYPE, LOAD_AVE_CVT, FSCALE): Definitions 6262 * s/unixware.h (LOAD_AVE_TYPE, LOAD_AVE_CVT, FSCALE):
6253 moved here from m/intel386.h. 6263 Definitions moved here from m/intel386.h.
6254 6264
6255 * m/mips.h: Remove #if 0 code. 6265 * m/mips.h: Remove #if 0 code.
6256 6266
6257 2010-04-23 Eli Zaretskii <eliz@gnu.org> 6267 2010-04-23 Eli Zaretskii <eliz@gnu.org>
6258 6268
6330 (SEEN_FONT, SEEN_TB_STYLE): New enum values. 6340 (SEEN_FONT, SEEN_TB_STYLE): New enum values.
6331 (struct xsettings): Add font and tb_style, set xft stuff inside #ifdef 6341 (struct xsettings): Add font and tb_style, set xft stuff inside #ifdef
6332 HAVE_XFT. 6342 HAVE_XFT.
6333 (something_changedCB): store_font_changed_event is now 6343 (something_changedCB): store_font_changed_event is now
6334 store_config_changed_event. 6344 store_config_changed_event.
6335 (parse_settings): Rename from parse_xft_settings. Read 6345 (parse_settings): Rename from parse_xft_settings.
6336 non-xft xsettings outside #ifdef HAVE_XFT. 6346 Read non-xft xsettings outside #ifdef HAVE_XFT.
6337 (read_settings): Renamed from read_xft_settings. 6347 (read_settings): Renamed from read_xft_settings.
6338 (apply_xft_settings): Take current settings as parameter. Do not 6348 (apply_xft_settings): Take current settings as parameter. Do not
6339 call read_(xft)_settings. 6349 call read_(xft)_settings.
6340 (read_and_apply_settings): New function. 6350 (read_and_apply_settings): New function.
6341 (xft_settings_event): Do non-xft stuff out of HAVE_XFT. Call 6351 (xft_settings_event): Do non-xft stuff out of HAVE_XFT.
6342 read_and_apply_settings if there are settings to be read. 6352 Call read_and_apply_settings if there are settings to be read.
6343 (init_xsettings): Renamed from init_xfd_settings. 6353 (init_xsettings): Renamed from init_xfd_settings.
6344 Call read_and_apply_settings unconditionally. 6354 Call read_and_apply_settings unconditionally.
6345 (xsettings_initialize): Call init_xsettings. 6355 (xsettings_initialize): Call init_xsettings.
6346 (Ftool_bar_get_system_style): New function. 6356 (Ftool_bar_get_system_style): New function.
6347 (syms_of_xsettings): Define Qmonospace_font_name and 6357 (syms_of_xsettings): Define Qmonospace_font_name and
6465 6475
6466 Implement display of R2L paragraphs in GUI sessions. 6476 Implement display of R2L paragraphs in GUI sessions.
6467 6477
6468 * xdisp.c [HAVE_WINDOW_SYSTEM]: Add prototype for 6478 * xdisp.c [HAVE_WINDOW_SYSTEM]: Add prototype for
6469 append_stretch_glyph. 6479 append_stretch_glyph.
6470 (set_cursor_from_row) <cursor_x>: Remove unused variable. Fix 6480 (set_cursor_from_row) <cursor_x>: Remove unused variable.
6471 off-by-one error in computing x at end of text in the row. 6481 Fix off-by-one error in computing x at end of text in the row.
6472 (append_stretch_glyph): In reversed row, prepend the glyph rather 6482 (append_stretch_glyph): In reversed row, prepend the glyph rather
6473 than append it. Set resolved_level and bidi_type of the glyph. 6483 than append it. Set resolved_level and bidi_type of the glyph.
6474 (extend_face_to_end_of_line): If the row is reversed, prepend a 6484 (extend_face_to_end_of_line): If the row is reversed, prepend a
6475 stretch glyph whose width is such that the rightmost glyph will be 6485 stretch glyph whose width is such that the rightmost glyph will be
6476 drawn at the right margin of the window. Fix off-by-one error on 6486 drawn at the right margin of the window. Fix off-by-one error on
6477 TTY frames in testing whether a line needs face extension. Fix 6487 TTY frames in testing whether a line needs face extension.
6478 face extension at ZV. If this is the last glyph row, use 6488 Fix face extension at ZV. If this is the last glyph row, use
6479 DEFAULT_FACE_ID, to avoid painting the rest of the window with the 6489 DEFAULT_FACE_ID, to avoid painting the rest of the window with the
6480 region face. 6490 region face.
6481 (set_cursor_from_row, display_line): Use 6491 (set_cursor_from_row, display_line):
6482 MATRIX_ROW_CONTINUATION_LINE_P instead of testing value of 6492 Use MATRIX_ROW_CONTINUATION_LINE_P instead of testing value of
6483 row->continuation_lines_width. 6493 row->continuation_lines_width.
6484 (next_element_from_buffer): Don't call bidi_paragraph_init if we 6494 (next_element_from_buffer): Don't call bidi_paragraph_init if we
6485 are at ZV. Fixes a crash when reseated to ZV by 6495 are at ZV. Fixes a crash when reseated to ZV by
6486 try_window_reusing_current_matrix. 6496 try_window_reusing_current_matrix.
6487 (display_and_set_cursor, erase_phys_cursor): Handle negative HPOS, 6497 (display_and_set_cursor, erase_phys_cursor): Handle negative HPOS,
6843 * menu.c (digest_single_submenu): If USE_LUCID and HAVE_XFT, encode 6853 * menu.c (digest_single_submenu): If USE_LUCID and HAVE_XFT, encode
6844 menu items in UTF-8. 6854 menu items in UTF-8.
6845 6855
6846 * xmenu.c: include xsettings.h and xlwmenu.h if USE_LUCID. 6856 * xmenu.c: include xsettings.h and xlwmenu.h if USE_LUCID.
6847 (apply_systemfont_to_menu): New function. 6857 (apply_systemfont_to_menu): New function.
6848 (set_frame_menubar, create_and_show_popup_menu): Call 6858 (set_frame_menubar, create_and_show_popup_menu):
6849 apply_systemfont_to_menu. 6859 Call apply_systemfont_to_menu.
6850 6860
6851 2010-04-07 Jan Djärv <jan.h.d@swipnet.se> 6861 2010-04-07 Jan Djärv <jan.h.d@swipnet.se>
6852 6862
6853 * frame.h (FRAME_TEXT_LINES_TO_PIXEL_HEIGHT): Don't use 6863 * frame.h (FRAME_TEXT_LINES_TO_PIXEL_HEIGHT): Don't use
6854 FRAME_LINE_TO_PIXEL_Y. 6864 FRAME_LINE_TO_PIXEL_Y.
6872 * xfns.c (set_machine_and_pid_properties): New function. 6882 * xfns.c (set_machine_and_pid_properties): New function.
6873 (Fx_create_frame): Call set_machine_and_pid_properties. 6883 (Fx_create_frame): Call set_machine_and_pid_properties.
6874 6884
6875 2010-04-03 Eli Zaretskii <eliz@gnu.org> 6885 2010-04-03 Eli Zaretskii <eliz@gnu.org>
6876 6886
6877 * bidi.c (bidi_resolve_explicit, bidi_level_of_next_char): Check 6887 * bidi.c (bidi_resolve_explicit, bidi_level_of_next_char):
6878 bidi_it->bytepos against ZV_BYTE instead of bidi_it->ch against 6888 Check bidi_it->bytepos against ZV_BYTE instead of bidi_it->ch against
6879 BIDI_EOB. Fixes infloop with vertical cursor motion at ZV. 6889 BIDI_EOB. Fixes infloop with vertical cursor motion at ZV.
6880 6890
6881 * w32fns.c (x_create_tip_frame): Copy `parms' before we modify it 6891 * w32fns.c (x_create_tip_frame): Copy `parms' before we modify it
6882 in this function. (Bug#5703) 6892 in this function. (Bug#5703)
6883 6893
7096 * dispnew.c (direct_output_forward_char): Give up if we need bidi 7106 * dispnew.c (direct_output_forward_char): Give up if we need bidi
7097 processing or buffer's direction is right-to-left. 7107 processing or buffer's direction is right-to-left.
7098 (prepare_desired_row): Preserve the reversed_p flag. 7108 (prepare_desired_row): Preserve the reversed_p flag.
7099 (row_equal_p): Compare the reversed_p attributes as well. 7109 (row_equal_p): Compare the reversed_p attributes as well.
7100 7110
7101 * xdisp.c (init_iterator): Initialize it->bidi_p. Call 7111 * xdisp.c (init_iterator): Initialize it->bidi_p.
7102 bidi_init_it and set it->paragraph_embedding from the current 7112 Call bidi_init_it and set it->paragraph_embedding from the current
7103 buffer's value of bidi_paragraph_direction. 7113 buffer's value of bidi_paragraph_direction.
7104 (reseat_1): Initialize bidi_it.first_elt. 7114 (reseat_1): Initialize bidi_it.first_elt.
7105 (set_iterator_to_next, next_element_from_buffer): Use the value of 7115 (set_iterator_to_next, next_element_from_buffer): Use the value of
7106 paragraph_embedding to determine the paragraph direction. 7116 paragraph_embedding to determine the paragraph direction.
7107 (set_iterator_to_next): Under bidi reordering, call 7117 (set_iterator_to_next): Under bidi reordering, call
7108 bidi_get_next_char_visually. Call bidi_paragraph_init if the 7118 bidi_get_next_char_visually. Call bidi_paragraph_init if the
7109 new_paragraph flag is set in the bidi iterator. 7119 new_paragraph flag is set in the bidi iterator.
7110 (next_element_from_buffer): If bidi_it.first_elt is set, 7120 (next_element_from_buffer): If bidi_it.first_elt is set,
7111 initialize paragraph direction and find the first character to 7121 initialize paragraph direction and find the first character to
7112 display in the visual order. If reseated to a middle of a line, 7122 display in the visual order. If reseated to a middle of a line,
7113 prime the bidi iterator starting at the line's beginning. Handle 7123 prime the bidi iterator starting at the line's beginning.
7114 the situation where we overstepped stop_charpos due to 7124 Handle the situation where we overstepped stop_charpos due to
7115 non-linearity of the bidi iteration. Likewise for when we back up 7125 non-linearity of the bidi iteration. Likewise for when we back up
7116 beyond the previous stop_charpos. When moving across stop_charpos, 7126 beyond the previous stop_charpos. When moving across stop_charpos,
7117 record it in prev_stop. 7127 record it in prev_stop.
7118 (display_line): Set row->end and it->start for the next row to the 7128 (display_line): Set row->end and it->start for the next row to the
7119 next character in logical order. Always extend reversed_p rows to 7129 next character in logical order. Always extend reversed_p rows to
7130 (string_buffer_position): Most of code moved to 7140 (string_buffer_position): Most of code moved to
7131 string_buffer_position_lim. Last argument and return value are 7141 string_buffer_position_lim. Last argument and return value are
7132 now EMACS_INT; all callers changed. 7142 now EMACS_INT; all callers changed.
7133 (set_cursor_from_row): Rewritten to support bidirectional text and 7143 (set_cursor_from_row): Rewritten to support bidirectional text and
7134 reversed glyph rows. 7144 reversed glyph rows.
7135 (text_outside_line_unchanged_p, try_window_id): Disable 7145 (text_outside_line_unchanged_p, try_window_id):
7136 optimizations if we are reordering bidirectional text and the 7146 Disable optimizations if we are reordering bidirectional text and the
7137 paragraph direction can be affected by the change. 7147 paragraph direction can be affected by the change.
7138 (append_glyph, append_composite_glyph) 7148 (append_glyph, append_composite_glyph)
7139 (produce_image_glyph, append_stretch_glyph): Set the 7149 (produce_image_glyph, append_stretch_glyph): Set the
7140 resolved_level and bidi_type members of each glyph. 7150 resolved_level and bidi_type members of each glyph.
7141 (append_glyph): If the glyph row is reversed, prepend the glyph 7151 (append_glyph): If the glyph row is reversed, prepend the glyph
9284 * syntax.c (Fchar_syntax): Minor doc fix (Bug#4400). 9294 * syntax.c (Fchar_syntax): Minor doc fix (Bug#4400).
9285 9295
9286 2009-09-18 Adrian Robert <Adrian.B.Robert@gmail.com> 9296 2009-09-18 Adrian Robert <Adrian.B.Robert@gmail.com>
9287 9297
9288 * emacs.c (inhibit_x_resources): Update doc string for NS. 9298 * emacs.c (inhibit_x_resources): Update doc string for NS.
9289 (main) [HAVE_NS]: Don't process --no-init-file option. Remove 9299 (main) [HAVE_NS]: Don't process --no-init-file option.
9290 legacy code for -NXHost. Fix error printf in daemon case. 9300 Remove legacy code for -NXHost. Fix error printf in daemon case.
9291 9301
9292 * nsterm.h (ns_no_defaults): Remove. 9302 * nsterm.h (ns_no_defaults): Remove.
9293 9303
9294 * nsterm.m (ns_no_defaults): Remove. 9304 * nsterm.m (ns_no_defaults): Remove.
9295 (ns_term_init): Switch ns_no_defaults -> inhibit_x_resources. 9305 (ns_term_init): Switch ns_no_defaults -> inhibit_x_resources.
9296 (ns_use_qd_smoothing): Remove legacy variable. 9306 (ns_use_qd_smoothing): Remove legacy variable.
9297 (EmacsView-windowShouldZoom:): Set frame left_pos, top_pos and 9307 (EmacsView-windowShouldZoom:): Set frame left_pos, top_pos and
9298 don't update the NSWindow itself. 9308 don't update the NSWindow itself.
9299 (EmacsView-windowWillUseStandardFrame:defaultFrame:): Improve 9309 (EmacsView-windowWillUseStandardFrame:defaultFrame:):
9300 state detection and store user rect ourselves. (Bug #3581) 9310 Improve state detection and store user rect ourselves. (Bug #3581)
9301 9311
9302 * nsfont.m (nsfont_draw) [NS_IMPL_COCOA]: Don't use 9312 * nsfont.m (nsfont_draw) [NS_IMPL_COCOA]: Don't use
9303 ns_use_qd_smoothing. 9313 ns_use_qd_smoothing.
9304 9314
9305 * nsfns.m (x_get_string_resource): Ape just-previous changes to other 9315 * nsfns.m (x_get_string_resource): Ape just-previous changes to other
9598 (xd_add_watch, xd_remove_watch): Use HAVE_DBUS_WATCH_GET_UNIX_FD. 9608 (xd_add_watch, xd_remove_watch): Use HAVE_DBUS_WATCH_GET_UNIX_FD.
9599 9609
9600 2009-08-21 Adrian Robert <Adrian.B.Robert@gmail.com> 9610 2009-08-21 Adrian Robert <Adrian.B.Robert@gmail.com>
9601 9611
9602 * nsterm.m (ns_get_color): Update documentation properly for last 9612 * nsterm.m (ns_get_color): Update documentation properly for last
9603 change, and clean up loose ends in the code left by it. Fix 9613 change, and clean up loose ends in the code left by it.
9604 longstanding bug with 16-bit hex parsing, and add support for 9614 Fix longstanding bug with 16-bit hex parsing, and add support for
9605 yet another X11 format (rgb:r/g/b) for compatibility. 9615 yet another X11 format (rgb:r/g/b) for compatibility.
9606 * nsfns.m (EmacsDialogPanel-runDialogAt): Add declaration of 9616 * nsfns.m (EmacsDialogPanel-runDialogAt): Add declaration of
9607 timer_check() to avoid crash on Leopard/PPC. Bug #2154. 9617 timer_check() to avoid crash on Leopard/PPC. Bug #2154.
9608 9618
9609 2009-08-21 Stefan Monnier <monnier@iro.umontreal.ca> 9619 2009-08-21 Stefan Monnier <monnier@iro.umontreal.ca>
11494 (SAFE_CHARSET_P): Likewise. 11504 (SAFE_CHARSET_P): Likewise.
11495 (setup_iso_safe_charsets): Properly setup safe_charsets. 11505 (setup_iso_safe_charsets): Properly setup safe_charsets.
11496 (Fdefine_coding_system_internal): Likewise. 11506 (Fdefine_coding_system_internal): Likewise.
11497 (setup_coding_system): Likewise. Remove unneeded casts. 11507 (setup_coding_system): Likewise. Remove unneeded casts.
11498 (detect_coding_iso_2022): Compare Viso_2022_charset_list with 11508 (detect_coding_iso_2022): Compare Viso_2022_charset_list with
11499 CODING_ATTR_CHARSET_LIST, not CODING_ATTR_SAFE_CHARSETS. Remove 11509 CODING_ATTR_CHARSET_LIST, not CODING_ATTR_SAFE_CHARSETS.
11500 unneeded casts. 11510 Remove unneeded casts.
11501 11511
11502 * insdel.c (del_range_2): Don't modify gap contents when called 11512 * insdel.c (del_range_2): Don't modify gap contents when called
11503 from decode_coding_object. (Bug#1809) 11513 from decode_coding_object. (Bug#1809)
11504 11514
11505 2009-02-21 Chong Yidong <cyd@stupidchicken.com> 11515 2009-02-21 Chong Yidong <cyd@stupidchicken.com>
11508 Qfont_object. 11518 Qfont_object.
11509 (Ftype_of): Recognize font objects. 11519 (Ftype_of): Recognize font objects.
11510 11520
11511 * lisp.h: Define Qfont_spec, Qfont_entity, Qfont_object extern. 11521 * lisp.h: Define Qfont_spec, Qfont_entity, Qfont_object extern.
11512 11522
11513 * font.c (Qfont_spec, Qfont_entity, Qfont_object): Definitions 11523 * font.c (Qfont_spec, Qfont_entity, Qfont_object):
11514 moved to data.c. 11524 Definitions moved to data.c.
11515 11525
11516 2009-02-20 Adrian Robert <Adrian.B.Robert@gmail.com> 11526 2009-02-20 Adrian Robert <Adrian.B.Robert@gmail.com>
11517 11527
11518 * nsterm.m (x_make_frame_invisible): Unset async_visible, 11528 * nsterm.m (x_make_frame_invisible): Unset async_visible,
11519 async_iconified. Based on a patch by Christian Lynbech 11529 async_iconified. Based on a patch by Christian Lynbech
12525 12535
12526 * w32term.c (w32_term_init): Don't initialize the image cache 12536 * w32term.c (w32_term_init): Don't initialize the image cache
12527 here; it will be done in init_frame_faces. 12537 here; it will be done in init_frame_faces.
12528 12538
12529 * xterm.h (struct xim_inst_t): Definition moved from xterm.c. 12539 * xterm.h (struct xim_inst_t): Definition moved from xterm.c.
12530 (struct x_display_info): Remove unused member null_pixel. New 12540 (struct x_display_info): Remove unused member null_pixel.
12531 member xim_callback_data. 12541 New member xim_callback_data.
12532 12542
12533 * xterm.c (struct xim_inst_t): Definition moved to xterm.h. 12543 * xterm.c (struct xim_inst_t): Definition moved to xterm.h.
12534 (xim_initialize): Save pointer to callback function data. 12544 (xim_initialize): Save pointer to callback function data.
12535 (xim_close_dpy): Free callback function data. Call XCloseIM, 12545 (xim_close_dpy): Free callback function data. Call XCloseIM,
12536 reverting 2008-11-04 change by David Smith. 12546 reverting 2008-11-04 change by David Smith.
12551 12561
12552 * xfns.c (Fx_wm_set_size_hint): Check if the frame is an X frame. 12562 * xfns.c (Fx_wm_set_size_hint): Check if the frame is an X frame.
12553 12563
12554 2008-12-12 Jason Rumney <jasonr@gnu.org> 12564 2008-12-12 Jason Rumney <jasonr@gnu.org>
12555 12565
12556 * w32fns.c (x_display_info_for_name, Fx_open_connection): Set 12566 * w32fns.c (x_display_info_for_name, Fx_open_connection):
12557 Vwindow_system_version to the real w32 major version. 12567 Set Vwindow_system_version to the real w32 major version.
12558 12568
12559 2008-12-12 Dan Nicolaescu <dann@ics.uci.edu> 12569 2008-12-12 Dan Nicolaescu <dann@ics.uci.edu>
12560 12570
12561 * term.c (init_tty): Move setting the terminal name before the 12571 * term.c (init_tty): Move setting the terminal name before the
12562 potential user: maybe_fatal. 12572 potential user: maybe_fatal.
12802 12812
12803 * category.h (SET_CATEGORY_SET): Call set_category_set. 12813 * category.h (SET_CATEGORY_SET): Call set_category_set.
12804 (set_category_set): Extern it. 12814 (set_category_set): Extern it.
12805 12815
12806 * category.c (hash_get_category_set): New function. 12816 * category.c (hash_get_category_set): New function.
12807 (Fmodify_category_entry): Adjusted for the change of 12817 (Fmodify_category_entry): Adjust for the change of
12808 char_table_ref_and_range. Call hash_get_category_set to get a 12818 char_table_ref_and_range. Call hash_get_category_set to get a
12809 category set to store in the table. 12819 category set to store in the table.
12810 12820
12811 * character.h (MAYBE_UNIFY_CHAR): Call maybe_unify_char instead of 12821 * character.h (MAYBE_UNIFY_CHAR): Call maybe_unify_char instead of
12812 Funify_charset. 12822 Funify_charset.
12820 (inhibit_load_charset_map): New variable. 12830 (inhibit_load_charset_map): New variable.
12821 (temp_charset_work): New variable. 12831 (temp_charset_work): New variable.
12822 (SET_TEMP_CHARSET_WORK_ENCODER, GET_TEMP_CHARSET_WORK_ENCODER) 12832 (SET_TEMP_CHARSET_WORK_ENCODER, GET_TEMP_CHARSET_WORK_ENCODER)
12823 (SET_TEMP_CHARSET_WORK_DECODER, GET_TEMP_CHARSET_WORK_DECODER): 12833 (SET_TEMP_CHARSET_WORK_DECODER, GET_TEMP_CHARSET_WORK_DECODER):
12824 New macros. 12834 New macros.
12825 (load_charset_map): Meaning of control_flag changed. If 12835 (load_charset_map): Meaning of control_flag changed.
12826 inhibit_load_charset_map is nonzero, setup a table in 12836 If inhibit_load_charset_map is nonzero, setup a table in
12827 temp_charset_work. 12837 temp_charset_work.
12828 (load_charset): New argument control_flag. 12838 (load_charset): New argument control_flag.
12829 (map_charset_for_dump): New function. 12839 (map_charset_for_dump): New function.
12830 (map_charset_chars): If inhibit_load_charset_map is nonzero, use 12840 (map_charset_chars): If inhibit_load_charset_map is nonzero, use
12831 map_charset_for_dump. 12841 map_charset_for_dump.
12840 Handle the case of inhibit_load_charset_map being nonzero. 12850 Handle the case of inhibit_load_charset_map being nonzero.
12841 (Fclear_charset_maps): Just free temp_charset_work. 12851 (Fclear_charset_maps): Just free temp_charset_work.
12842 (syms_of_charset): Make `inhibit-load-charset-map' a Lisp 12852 (syms_of_charset): Make `inhibit-load-charset-map' a Lisp
12843 variable. 12853 variable.
12844 12854
12845 * chartab.c (sub_char_table_ref_and_range): Adjusted for the 12855 * chartab.c (sub_char_table_ref_and_range): Adjust for the
12846 change of char_table_ref_and_range. 12856 change of char_table_ref_and_range.
12847 (char_table_ref_and_range): Change the meaning of argument FROM 12857 (char_table_ref_and_range): Change the meaning of argument FROM
12848 and TO. Now the caller must provide initial values for *FROM 12858 and TO. Now the caller must provide initial values for *FROM
12849 and *TO. 12859 and *TO.
12850 12860
12851 * fontset.c (fontset_add): Adjusted for the change of 12861 * fontset.c (fontset_add): Adjust for the change of
12852 char_table_ref_and_range. 12862 char_table_ref_and_range.
12853 (fontset_get_font_group): Likewise. 12863 (fontset_get_font_group): Likewise.
12854 (Ffontset_info): Likewise. 12864 (Ffontset_info): Likewise.
12855 12865
12856 * keymap.c (describe_vector): Adjusted for the change of 12866 * keymap.c (describe_vector): Adjust for the change of
12857 char_table_ref_and_range. For char-table, put boundary between 12867 char_table_ref_and_range. For char-table, put boundary between
12858 non-ASCII and 8-bit characters. 12868 non-ASCII and 8-bit characters.
12859 12869
12860 * print.c (print_object): For bool-vector, delete unnecessary 12870 * print.c (print_object): For bool-vector, delete unnecessary
12861 check of ASCII_BYTE_P. 12871 check of ASCII_BYTE_P.
14665 14675
14666 * m/inter386.h: Change DARWIN to DARWIN_OS. 14676 * m/inter386.h: Change DARWIN to DARWIN_OS.
14667 14677
14668 * s/darwin.h: Add #define DARWIN_OS. Get rid of C_SWITCH_SYSTEM def. 14678 * s/darwin.h: Add #define DARWIN_OS. Get rid of C_SWITCH_SYSTEM def.
14669 Change LIBS_MACGUI to LIBS_NSGUI. Move temacs-conditionalized defs 14679 Change LIBS_MACGUI to LIBS_NSGUI. Move temacs-conditionalized defs
14670 closer to C_SWITCH_SYSTEM_TEMACS so usage is understood. Expand 14680 closer to C_SWITCH_SYSTEM_TEMACS so usage is understood.
14671 comment on NO_SOCK_SIGIO. 14681 Expand comment on NO_SOCK_SIGIO.
14672 14682
14673 2008-08-03 Chong Yidong <cyd@stupidchicken.com> 14683 2008-08-03 Chong Yidong <cyd@stupidchicken.com>
14674 14684
14675 * nsterm.m (windowDidResize): Remove stopModal call. 14685 * nsterm.m (windowDidResize): Remove stopModal call.
14676 14686
15658 * Makefile.in: Correct additions for nsfont.o in last commit. 15668 * Makefile.in: Correct additions for nsfont.o in last commit.
15659 * nsfont.m: New file (forgot last commit). 15669 * nsfont.m: New file (forgot last commit).
15660 15670
15661 2008-07-15 Chris Hall <chris@web.workinglinux.com> (tiny change) 15671 2008-07-15 Chris Hall <chris@web.workinglinux.com> (tiny change)
15662 15672
15663 * callproc.c (set_initial_environment): Initialize 15673 * callproc.c (set_initial_environment):
15664 Vprocess_environment under CANNOT_DUMP (fixes crash when 15674 Initialize Vprocess_environment under CANNOT_DUMP (fixes crash when
15665 batch-compiling for bootstrap). 15675 batch-compiling for bootstrap).
15666 15676
15667 2008-07-15 Chris Hall <chris@web.workinglinux.com> (tiny change) 15677 2008-07-15 Chris Hall <chris@web.workinglinux.com> (tiny change)
15668 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> 15678 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
15669 15679
16075 (ftfont_shape): Use ftfont_get_otf. 16085 (ftfont_shape): Use ftfont_get_otf.
16076 (ftfont_text_extents): Fix initial setting of metrics. 16086 (ftfont_text_extents): Fix initial setting of metrics.
16077 16087
16078 * xftfont.c (struct xftfont_info): New member ft_size. Make the 16088 * xftfont.c (struct xftfont_info): New member ft_size. Make the
16079 member order compatible with struct ftfont_info. 16089 member order compatible with struct ftfont_info.
16080 (xftfont_open): Add FC_CHARSET to the pattern. Set 16090 (xftfont_open): Add FC_CHARSET to the pattern.
16081 xftfont_info->ft_size. Don't unlock the face. Check BDF 16091 Set xftfont_info->ft_size. Don't unlock the face. Check BDF
16082 properties if appropriate. 16092 properties if appropriate.
16083 (xftfont_close): Unlock the face. 16093 (xftfont_close): Unlock the face.
16084 (xftfont_anchor_point, xftfont_shape): Deleted. 16094 (xftfont_anchor_point, xftfont_shape): Deleted.
16085 (syms_of_xftfont): Don't set members anchor_point and shape of 16095 (syms_of_xftfont): Don't set members anchor_point and shape of
16086 xftfont_driver. 16096 xftfont_driver.
16502 replacing truncate_partial_width_windows. 16512 replacing truncate_partial_width_windows.
16503 (init_iterator): If Vtruncate_partial_width_windows is an integer, 16513 (init_iterator): If Vtruncate_partial_width_windows is an integer,
16504 truncate only if the window width is below that integer. 16514 truncate only if the window width is below that integer.
16505 (start_display, resize_mini_window, produce_stretch_glyph) 16515 (start_display, resize_mini_window, produce_stretch_glyph)
16506 (display_string, move_it_in_display_line_to): Use line_wrap. 16516 (display_string, move_it_in_display_line_to): Use line_wrap.
16507 (back_to_previous_visible_line_start, reseat_1): Reset 16517 (back_to_previous_visible_line_start, reseat_1):
16508 string_from_display_prop_p. 16518 Reset string_from_display_prop_p.
16509 (display_line): Extend default face to end of line when wrapping. 16519 (display_line): Extend default face to end of line when wrapping.
16510 16520
16511 2008-06-24 Kim F. Storm <storm@cua.dk> 16521 2008-06-24 Kim F. Storm <storm@cua.dk>
16512 16522
16513 * xdisp.c (display_line, move_it_in_display_line_to): Add ability 16523 * xdisp.c (display_line, move_it_in_display_line_to): Add ability
17871 * dispextern.h (struct glyph_string): Change type of `font' to 17881 * dispextern.h (struct glyph_string): Change type of `font' to
17872 `struct font *'. 17882 `struct font *'.
17873 (struct glyph_string): New member underline_position and 17883 (struct glyph_string): New member underline_position and
17874 underline_thickness. 17884 underline_thickness.
17875 (enum lface_attribute_index): Remove LFACE_AVGWIDTH_INDEX. 17885 (enum lface_attribute_index): Remove LFACE_AVGWIDTH_INDEX.
17876 (struct face): Change type of `font' to `struct font *'. Remove 17886 (struct face): Change type of `font' to `struct font *'.
17877 members `font_name', `font_info_id'. 17887 Remove members `font_name', `font_info_id'.
17878 (per_char_metric, encode_char): Delete externs. 17888 (per_char_metric, encode_char): Delete externs.
17879 (calc_pixel_width_or_height): Adjust the prototype. 17889 (calc_pixel_width_or_height): Adjust the prototype.
17880 17890
17881 * emacs.c (enable_font_backend): Delete extern. 17891 * emacs.c (enable_font_backend): Delete extern.
17882 (main): Don't set enable_font_backend. Don't check the command 17892 (main): Don't set enable_font_backend. Don't check the command
17900 the new font-related objects. 17910 the new font-related objects.
17901 (CHECK_FONT_SPEC, CHECK_FONT_ENTITY, CHECK_FONT_OBJECT) 17911 (CHECK_FONT_SPEC, CHECK_FONT_ENTITY, CHECK_FONT_OBJECT)
17902 (CHECK_FONT_GET_OBJECT): Likewise. 17912 (CHECK_FONT_GET_OBJECT): Likewise.
17903 (XFONT_SPEC, XFONT_ENTITY, XFONT_OBJECT, XSETFONT): New macros. 17913 (XFONT_SPEC, XFONT_ENTITY, XFONT_OBJECT, XSETFONT): New macros.
17904 (PT_PER_INCH, POINT_TO_PIXEL, PIXEL_TO_POINT): Moved from font.h. 17914 (PT_PER_INCH, POINT_TO_PIXEL, PIXEL_TO_POINT): Moved from font.h.
17905 (struct font_driver): New members case_sensitive anc check. Type 17915 (struct font_driver): New members case_sensitive anc check.
17906 of the member list and open changed. 17916 Type of the member list and open changed.
17907 (enable_font_backend, font_symbolic_weight, font_symbolic_slant) 17917 (enable_font_backend, font_symbolic_weight, font_symbolic_slant)
17908 (font_symbolic_width, font_find_object, font_get_spec) 17918 (font_symbolic_width, font_find_object, font_get_spec)
17909 (font_set_lface_from_name): Delete extern. 17919 (font_set_lface_from_name): Delete extern.
17910 (Fcopy_font_spec, Fmerge_font_spec, Ffont_family_list): New EXFUNs. 17920 (Fcopy_font_spec, Fmerge_font_spec, Ffont_family_list): New EXFUNs.
17911 17921
17921 (QCextra, QClanguage): Delete it. 17931 (QCextra, QClanguage): Delete it.
17922 (QClang, QCavgwidth, QCfont_entity, QCfc_unknown_spec): New variables. 17932 (QClang, QCavgwidth, QCfont_entity, QCfc_unknown_spec): New variables.
17923 (font_make_spec, font_make_entity, font_make_object) 17933 (font_make_spec, font_make_entity, font_make_object)
17924 (font_intern_prop): Renamed from intern_downcase. Don't downcase 17934 (font_intern_prop): Renamed from intern_downcase. Don't downcase
17925 the string. Callers changed. 17935 the string. Callers changed.
17926 (font_pixel_size): Adjusted for the format change of font-related 17936 (font_pixel_size): Adjust for the format change of font-related
17927 objects. 17937 objects.
17928 (prop_name_to_numeric, prop_numeric_to_name): Delete them. 17938 (prop_name_to_numeric, prop_numeric_to_name): Delete them.
17929 (font_style_to_value, font_style_symbolic): New function. 17939 (font_style_to_value, font_style_symbolic): New function.
17930 (build_font_family_alist): Delete it. 17940 (build_font_family_alist): Delete it.
17931 (font_registry_charsets): Use Fassoc_string instead of 17941 (font_registry_charsets): Use Fassoc_string instead of
17932 assq_no_quit. 17942 assq_no_quit.
17933 (font_prop_validate_symbol): Don't return null_string. 17943 (font_prop_validate_symbol): Don't return null_string.
17934 (font_prop_validate_style): Adjusted for the change of 17944 (font_prop_validate_style): Adjust for the change of
17935 style-related values in a font vector. 17945 style-related values in a font vector.
17936 (font_property_table): Delete entries for QClanguage and 17946 (font_property_table): Delete entries for QClanguage and
17937 QCantialias, add entries for QCavgwidth. 17947 QCantialias, add entries for QCavgwidth.
17938 (get_font_prop_index): Delete the 2nd argument FROM. 17948 (get_font_prop_index): Delete the 2nd argument FROM.
17939 (font_prop_validate): Arguments changed. 17949 (font_prop_validate): Arguments changed.
17940 (font_put_extra): Adjusted for the change of font-related objects. 17950 (font_put_extra): Adjust for the change of font-related objects.
17941 (font_expand_wildcards, font_parse_xlfd, font_unparse_xlfd) 17951 (font_expand_wildcards, font_parse_xlfd, font_unparse_xlfd)
17942 (font_parse_fcname, font_unparse_fcname) 17952 (font_parse_fcname, font_unparse_fcname)
17943 (font_prepare_composition): Likewise. 17953 (font_prepare_composition): Likewise.
17944 (font_parse_family_registry): Renamed from font_merge_old_spec. 17954 (font_parse_family_registry): Renamed from font_merge_old_spec.
17945 (otf_open): Delete the 1st arg entity. 17955 (otf_open): Delete the 1st arg entity.
17946 (font_otf_capability): Adjusted for the above change. 17956 (font_otf_capability): Adjust for the above change.
17947 (font_score): New arg alternate_families. Adjusted for the change 17957 (font_score): New arg alternate_families. Adjusted for the change
17948 of font-related objects. 17958 of font-related objects.
17949 (font_sort_entites): New arg best_only. 17959 (font_sort_entites): New arg best_only.
17950 (font_symbolic_weight, font_symbolic_slant, font_symbolic_width): 17960 (font_symbolic_weight, font_symbolic_slant, font_symbolic_width):
17951 Delete them. 17961 Delete them.
17952 (font_match_p): Check alternate families. 17962 (font_match_p): Check alternate families.
17953 (font_find_object): Delete it. 17963 (font_find_object): Delete it.
17954 (font_check_object): New function. 17964 (font_check_object): New function.
17955 (font_clear_cache): Adjusted for the change of font-related objects. 17965 (font_clear_cache): Adjust for the change of font-related objects.
17956 (font_delete_unmatched): New arg. 17966 (font_delete_unmatched): New arg.
17957 (font_list_entities): Call font_driver->list with a spec that 17967 (font_list_entities): Call font_driver->list with a spec that
17958 doesn't specify style-related properties. 17968 doesn't specify style-related properties.
17959 (font_matching_entity): Arguments changed. Caller changed. 17969 (font_matching_entity): Arguments changed. Caller changed.
17960 (font_open_entity): Adjusted for the change of font-related objects. 17970 (font_open_entity): Adjust for the change of font-related objects.
17961 (font_close_object, font_has_char, font_encode_char) 17971 (font_close_object, font_has_char, font_encode_char)
17962 (font_get_name, font_get_spec): Likewise. 17972 (font_get_name, font_get_spec): Likewise.
17963 (font_spec_from_name, font_clear_prop, font_update_lface): 17973 (font_spec_from_name, font_clear_prop, font_update_lface):
17964 New functions. 17974 New functions.
17965 (font_find_for_lface, font_open_for_lface, font_load_for_lface) 17975 (font_find_for_lface, font_open_for_lface, font_load_for_lface)
17966 (font_prepare_for_face, font_done_for_face, font_open_by_name) 17976 (font_prepare_for_face, font_done_for_face, font_open_by_name)
17967 (font_at): Adjusted for the change of font-related objects. 17977 (font_at): Adjust for the change of font-related objects.
17968 (font_range): New function. 17978 (font_range): New function.
17969 (Ffontp, Ffont_spec, Ffont_get, Ffont_put, Flist_fonts) 17979 (Ffontp, Ffont_spec, Ffont_get, Ffont_put, Flist_fonts)
17970 (Ffont_xlfd_name): Adjusted for the change of font-related objects. 17980 (Ffont_xlfd_name): Adjust for the change of font-related objects.
17971 (Fcopy_font_spec, Fmerge_font_spec): New function. 17981 (Fcopy_font_spec, Fmerge_font_spec): New function.
17972 (Ffont_family_list): Renamed from list-families. 17982 (Ffont_family_list): Renamed from list-families.
17973 (Finternal_set_font_style_table): Arguments changed. 17983 (Finternal_set_font_style_table): Arguments changed.
17974 (Ffont_fill_gstring, Ffont_shape_text, Fopen_font) 17984 (Ffont_fill_gstring, Ffont_shape_text, Fopen_font)
17975 (Ffont_drive_otf, Fquery_font, Ffont_match_p): Adjusted for the 17985 (Ffont_drive_otf, Fquery_font, Ffont_match_p): Adjust for the
17976 change of font-related objects. 17986 change of font-related objects.
17977 (syms_of_font): Delete "ifdef USE_FONT_BACKEND". DEFSYM new symbols. 17987 (syms_of_font): Delete "ifdef USE_FONT_BACKEND". DEFSYM new symbols.
17978 17988
17979 * fontset.h (struct font_info): Delete it. Most members go to 17989 * fontset.h (struct font_info): Delete it. Most members go to
17980 struct font. 17990 struct font.
17981 (FONT_ENCODING_NOT_DECIDED): Moved to font.h. 17991 (FONT_ENCODING_NOT_DECIDED): Moved to font.h.
17982 (enum FONT_SPEC_INDEX): Delete it. 17992 (enum FONT_SPEC_INDEX): Delete it.
17983 (font_info, list_fonts_func, load_font_func, query_font_func) 17993 (font_info, list_fonts_func, load_font_func, query_font_func)
17984 (set_frame_fontset_func, find_ccl_program_func) 17994 (set_frame_fontset_func, find_ccl_program_func)
17985 (get_font_repertory_func, new_fontset_from_font_name): Delete 17995 (get_font_repertory_func, new_fontset_from_font_name):
17986 externs. 17996 Delete externs.
17987 (fontset_from_font_name): Extern it. 17997 (fontset_from_font_name): Extern it.
17988 (FS_LOAD_FONT, FONT_INFO_ID, FONT_INFO_FROM_ID) 17998 (FS_LOAD_FONT, FONT_INFO_ID, FONT_INFO_FROM_ID)
17989 (FONT_INFO_FROM_FACE): Deleted. 17999 (FONT_INFO_FROM_FACE): Deleted.
17990 (face_for_font): Adjust prototype. 18000 (face_for_font): Adjust prototype.
17991 18001
18011 (face_suitable_for_char_p): Use new macros to ref/set elements of 18021 (face_suitable_for_char_p): Use new macros to ref/set elements of
18012 rfont-def. 18022 rfont-def.
18013 (face_for_char): Likewise. Call face_for_char with font_object. 18023 (face_for_char): Likewise. Call face_for_char with font_object.
18014 (fs_load_font): Delete. Delete #pragma surrounding it. 18024 (fs_load_font): Delete. Delete #pragma surrounding it.
18015 (fs_query_fontset): Use strcasecmp instead of strcmp. 18025 (fs_query_fontset): Use strcasecmp instead of strcmp.
18016 (generate_ascii_font_name): Adjusted for the format change of 18026 (generate_ascii_font_name): Adjust for the format change of
18017 font-spec. 18027 font-spec.
18018 (Fset_fontset_font): Likewise. Use new macros to set elements of 18028 (Fset_fontset_font): Likewise. Use new macros to set elements of
18019 font-def. 18029 font-def.
18020 (Fnew_fontset): Use font_unparse_xlfd to generate 18030 (Fnew_fontset): Use font_unparse_xlfd to generate
18021 FONTSET_ASCII (fontset). 18031 FONTSET_ASCII (fontset).
18022 (new_fontset_from_font_name): Deleted. 18032 (new_fontset_from_font_name): Deleted.
18023 (fontset_from_font): Renamed from new_fontset_from_font. Check if 18033 (fontset_from_font): Renamed from new_fontset_from_font. Check if
18024 a fontset is already created for the font. FIx updating of 18034 a fontset is already created for the font. FIx updating of
18025 Vfontset_alias_alist. 18035 Vfontset_alias_alist.
18026 (fontset_ascii_font): Deleted. 18036 (fontset_ascii_font): Deleted.
18027 (Ffont_info): Adjusted for the format change of font-spec. 18037 (Ffont_info): Adjust for the format change of font-spec.
18028 (Finternal_char_font): Likewise. 18038 (Finternal_char_font): Likewise.
18029 (Ffontset_info): Likewise. 18039 (Ffontset_info): Likewise.
18030 (syms_of_fontset): Don't check load_font_func. 18040 (syms_of_fontset): Don't check load_font_func.
18031 18041
18032 * fns.c (internal_equal): Handle PREV_FONT. 18042 * fns.c (internal_equal): Handle PREV_FONT.
18038 used only when USE_FONT_BACKEND is not defined. 18048 used only when USE_FONT_BACKEND is not defined.
18039 (x_set_font): Call x_new_font, not x_new_fontset2. 18049 (x_set_font): Call x_new_font, not x_new_fontset2.
18040 (x_set_font_backend): Use FRAME_FONT macro to check if a font is 18050 (x_set_font_backend): Use FRAME_FONT macro to check if a font is
18041 already set for the frame. 18051 already set for the frame.
18042 18052
18043 * ftfont.c (ftfont_pattern_entity): Argument FRAME removed. Make 18053 * ftfont.c (ftfont_pattern_entity): Argument FRAME removed.
18044 a font-entity by font_make_entity. Use font_intern_prop instead 18054 Make a font-entity by font_make_entity. Use font_intern_prop instead
18045 of intern_downcase. Use FONT_SET_STYLE to set a style-related 18055 of intern_downcase. Use FONT_SET_STYLE to set a style-related
18046 font property. If a font is scalable, set avgwidth property to 0. 18056 font property. If a font is scalable, set avgwidth property to 0.
18047 Set font-entity property by font_put_extra. 18057 Set font-entity property by font_put_extra.
18048 (ftfont_list_generic_family): Argument SPEC and REGISTRY removed. 18058 (ftfont_list_generic_family): Argument SPEC and REGISTRY removed.
18049 (ffont_driver): Adjusted for the change of struct font_driver. 18059 (ffont_driver): Adjust for the change of struct font_driver.
18050 (ftfont_spec_pattern): New function. 18060 (ftfont_spec_pattern): New function.
18051 (ftfont_list): Return a list, not vector. 18061 (ftfont_list): Return a list, not vector.
18052 (ftfont_match): Use ftfont_spec_pattern to get a pattern. 18062 (ftfont_match): Use ftfont_spec_pattern to get a pattern.
18053 (ftfont_list_family): Don't downcase names. 18063 (ftfont_list_family): Don't downcase names.
18054 (ftfont_free_entity): Deleted. 18064 (ftfont_free_entity): Deleted.
18055 (ftfont_open): Return a font-object. Adjusted for the change of 18065 (ftfont_open): Return a font-object. Adjusted for the change of
18056 struct font. Get underline_thickness and underline_position from 18066 struct font. Get underline_thickness and underline_position from
18057 font property. Don't update dpyinfo->smallest_font_height and 18067 font property. Don't update dpyinfo->smallest_font_height and
18058 dpyinfo->smallest_char_width. 18068 dpyinfo->smallest_char_width.
18059 (ftfont_close): Don't free `struct font'. 18069 (ftfont_close): Don't free `struct font'.
18060 (ftfont_has_char): Adjusted for the format change of font-entity. 18070 (ftfont_has_char): Adjust for the format change of font-entity.
18061 (ftfont_encode_char, ftfont_text_extents): Likewise. 18071 (ftfont_encode_char, ftfont_text_extents): Likewise.
18062 18072
18063 * ftxfont.c (ftxfont_list): Return a list, not vector. 18073 * ftxfont.c (ftxfont_list): Return a list, not vector.
18064 (ftxfont_open): Return a font-object. Adjusted for the change of 18074 (ftxfont_open): Return a font-object. Adjusted for the change of
18065 struct font. Get underline_thickness and underline_position from 18075 struct font. Get underline_thickness and underline_position from
18066 font property. Don't update dpyinfo->smallest_font_height and 18076 font property. Don't update dpyinfo->smallest_font_height and
18067 dpyinfo->smallest_char_width. 18077 dpyinfo->smallest_char_width.
18068 (ftxfont_close): Don't decrease FRAME_X_DISPLAY_INFO (f)->n_fonts. 18078 (ftxfont_close): Don't decrease FRAME_X_DISPLAY_INFO (f)->n_fonts.
18069 (ftxfont_draw): Adjusted for the change of struct font. 18079 (ftxfont_draw): Adjust for the change of struct font.
18070 18080
18071 * image.c (image_ascent): Don't include "charset.h". Include 18081 * image.c (image_ascent): Don't include "charset.h".
18072 "character.h" and "font.h". 18082 Include "character.h" and "font.h".
18073 18083
18074 * lisp.h (enum pvec_type): New member PREV_FONT. 18084 * lisp.h (enum pvec_type): New member PREV_FONT.
18075 (Fassoc_string): EXFUN it. 18085 (Fassoc_string): EXFUN it.
18076 18086
18077 * print.c: Include font.h. 18087 * print.c: Include font.h.
18085 displayed by the same font. 18095 displayed by the same font.
18086 (calc_pixel_width_or_height): Type of the 4th arg is changed to 18096 (calc_pixel_width_or_height): Type of the 4th arg is changed to
18087 'struct font *'. 18097 'struct font *'.
18088 (get_char_face_and_encoding): Assign the whole encoding task to 18098 (get_char_face_and_encoding): Assign the whole encoding task to
18089 the `encode-char' method of a font driver. 18099 the `encode-char' method of a font driver.
18090 (fill_composite_glyph_string): Adjusted for the change of `struct 18100 (fill_composite_glyph_string): Adjust for the change of `struct
18091 face' and `struct glyph_string'. 18101 face' and `struct glyph_string'.
18092 (fill_glyph_string): Likewise. 18102 (fill_glyph_string): Likewise.
18093 (get_per_char_metric): Arguments changed. 18103 (get_per_char_metric): Arguments changed.
18094 (x_get_glyph_overhangs): Adjusted for the change of `struct face' 18104 (x_get_glyph_overhangs): Adjust for the change of `struct face'
18095 and `struct glyph_string'. 18105 and `struct glyph_string'.
18096 (produce_stretch_glyph, calc_line_height_property) 18106 (produce_stretch_glyph, calc_line_height_property)
18097 (x_produce_glyphs): Likewise. 18107 (x_produce_glyphs): Likewise.
18098 18108
18099 * xfaces.c: Throughout the file, delete all USE_FONT_BACKEND 18109 * xfaces.c: Throughout the file, delete all USE_FONT_BACKEND
18100 conditionals. Don't check enable_font_backend. Delete all codes 18110 conditionals. Don't check enable_font_backend. Delete all codes
18101 used only when USE_FONT_BACKEND is not defined. Use 18111 used only when USE_FONT_BACKEND is not defined.
18102 FONT_XXX_NAME_NUMERIC instead of face_numeric_xxx. 18112 Use FONT_XXX_NAME_NUMERIC instead of face_numeric_xxx.
18103 (QCfoundry, QCadstyle, QCregistry, QCspacing, QCsize, QCavgwidth) 18113 (QCfoundry, QCadstyle, QCregistry, QCspacing, QCsize, QCavgwidth)
18104 (Qp): Extern them. 18114 (Qp): Extern them.
18105 (clear_font_table, load_face_font, xlfd_lookup_field_contents): 18115 (clear_font_table, load_face_font, xlfd_lookup_field_contents):
18106 Deleted. 18116 Deleted.
18107 (struct font_name): Deleted. 18117 (struct font_name): Deleted.
18170 * xfont.c: Include <stdlib.h> and "ccl.h". 18180 * xfont.c: Include <stdlib.h> and "ccl.h".
18171 (struct xfont_info): New structure. 18181 (struct xfont_info): New structure.
18172 (xfont_query_font): Deleted. 18182 (xfont_query_font): Deleted.
18173 (xfont_find_ccl_program): Renamed from x_find_ccl_program and 18183 (xfont_find_ccl_program): Renamed from x_find_ccl_program and
18174 moved from xterm.c. 18184 moved from xterm.c.
18175 (xfont_driver): Adjusted for the change of struct font_driver. 18185 (xfont_driver): Adjust for the change of struct font_driver.
18176 (compare_font_names): New function. 18186 (compare_font_names): New function.
18177 (xfont_list_pattern): Sort font names case insensitively. Make 18187 (xfont_list_pattern): Sort font names case insensitively. Make
18178 font_entity by calling font_make_entity. Avoid auto-scaled fonts. 18188 font_entity by calling font_make_entity. Avoid auto-scaled fonts.
18179 (xfont_list): Return a list, not vector. 18189 (xfont_list): Return a list, not vector.
18180 (xfont_match): If the font doesn't have QCname property, generate 18190 (xfont_match): If the font doesn't have QCname property, generate
18182 (xfont_open): Return a font-object. Adjusted for the change of 18192 (xfont_open): Return a font-object. Adjusted for the change of
18183 struct font. Get underline_thickness and underline_position from 18193 struct font. Get underline_thickness and underline_position from
18184 font property. Don't update dpyinfo->smallest_font_height and 18194 font property. Don't update dpyinfo->smallest_font_height and
18185 dpyinfo->smallest_char_width. 18195 dpyinfo->smallest_char_width.
18186 (xfont_close): Don't free struct font. 18196 (xfont_close): Don't free struct font.
18187 (xfont_prepare_face): Adjusted for the change of struct font. 18197 (xfont_prepare_face): Adjust for the change of struct font.
18188 (xfont_done_face): Deleted. 18198 (xfont_done_face): Deleted.
18189 (xfont_has_char): Adjusted for the change of struct font. 18199 (xfont_has_char): Adjust for the change of struct font.
18190 (xfont_encode_char, xfont_draw): Likewise. 18200 (xfont_encode_char, xfont_draw): Likewise.
18191 (xfont_check): New function. 18201 (xfont_check): New function.
18192 18202
18193 * xftfont.c (xftfont_list): Adjusted for the change of `list' 18203 * xftfont.c (xftfont_list): Adjust for the change of `list'
18194 callback function. 18204 callback function.
18195 (xftfont_match): Adjusted for the format change of font-entity. 18205 (xftfont_match): Adjust for the format change of font-entity.
18196 (xftfont_open): Adjusted for the format change of font-entity and 18206 (xftfont_open): Adjust for the format change of font-entity and
18197 font-object. Adjusted for the change of struct font. Return a 18207 font-object. Adjusted for the change of struct font. Return a
18198 font-object. Don't update dpyinfo->smallest_font_height and 18208 font-object. Don't update dpyinfo->smallest_font_height and
18199 dpyinfo->smallest_char_width. 18209 dpyinfo->smallest_char_width.
18200 (xftfont_close): Block input while calling XftFontClose. 18210 (xftfont_close): Block input while calling XftFontClose.
18201 (xftfont_prepare_face): Don't block input while calling 18211 (xftfont_prepare_face): Don't block input while calling
18215 * xterm.c: Throughout the file, delete all USE_FONT_BACKEND 18225 * xterm.c: Throughout the file, delete all USE_FONT_BACKEND
18216 conditionals. Don't check enable_font_backend. Delete all codes 18226 conditionals. Don't check enable_font_backend. Delete all codes
18217 used only when USE_FONT_BACKEND is not defined. Don't include ccl.h. 18227 used only when USE_FONT_BACKEND is not defined. Don't include ccl.h.
18218 (x_per_char_metric, x_encode_char): Deleted. 18228 (x_per_char_metric, x_encode_char): Deleted.
18219 (x_set_cursor_gc, x_set_mouse_face_gc): Don't set GCFont. 18229 (x_set_cursor_gc, x_set_mouse_face_gc): Don't set GCFont.
18220 (x_compute_glyph_string_overhangs): Adjusted for the change of 18230 (x_compute_glyph_string_overhangs): Adjust for the change of
18221 `struct face'. 18231 `struct face'.
18222 (x_draw_glyph_string_foreground) 18232 (x_draw_glyph_string_foreground)
18223 (x_draw_composite_glyph_string_foreground): Likewise. 18233 (x_draw_composite_glyph_string_foreground): Likewise.
18224 (x_draw_glyph_string): Likewise. Use font->underline_position and 18234 (x_draw_glyph_string): Likewise. Use font->underline_position and
18225 font->underline_thickness. 18235 font->underline_thickness.
18227 (x_new_fontset, x_get_font_info, x_list_fonts): Deleted. 18237 (x_new_fontset, x_get_font_info, x_list_fonts): Deleted.
18228 (x_check_font): Call `check' method of a font driver. 18238 (x_check_font): Call `check' method of a font driver.
18229 (x_font_min_bounds, x_compute_min_glyph_bounds, x_load_font) 18239 (x_font_min_bounds, x_compute_min_glyph_bounds, x_load_font)
18230 (x_query_font, x_get_font_repertory): Deleted. 18240 (x_query_font, x_get_font_repertory): Deleted.
18231 (x_find_ccl_program): Renamed and moved to xfont.c. 18241 (x_find_ccl_program): Renamed and moved to xfont.c.
18232 (x_redisplay_interface): Adjusted for the change of `struct 18242 (x_redisplay_interface): Adjust for the change of `struct
18233 redisplay_interface'. 18243 redisplay_interface'.
18234 18244
18235 * w32fns.c: Throughout the file, delete all USE_FONT_BACKEND 18245 * w32fns.c: Throughout the file, delete all USE_FONT_BACKEND
18236 conditionals. Don't check enable_font_backend. Delete all codes 18246 conditionals. Don't check enable_font_backend. Delete all codes
18237 used only when USE_FONT_BACKEND is not defined. Surround non-used 18247 used only when USE_FONT_BACKEND is not defined. Surround non-used
18262 (w32_enumfont_pattern_entity): Make a font-entity by 18272 (w32_enumfont_pattern_entity): Make a font-entity by
18263 font_make_entity. Adjusted for the format change of font-entity. 18273 font_make_entity. Adjusted for the format change of font-entity.
18264 Use FONT_SET_STYLE to set a style-related font property. If a 18274 Use FONT_SET_STYLE to set a style-related font property. If a
18265 font is scalable, set avgwidth property to 0. Set font-entity 18275 font is scalable, set avgwidth property to 0. Set font-entity
18266 property by font_put_extra. 18276 property by font_put_extra.
18267 (font_matches_spec): Adjusted for the format change of font-entity. 18277 (font_matches_spec): Adjust for the format change of font-entity.
18268 (w32_weight_table, w32_decode_weight): New variables. 18278 (w32_weight_table, w32_decode_weight): New variables.
18269 (w32_encode_weight): New function. 18279 (w32_encode_weight): New function.
18270 (fill_in_logfont): Adjusted for the format change of font-spec. 18280 (fill_in_logfont): Adjust for the format change of font-spec.
18271 (w32font_full_name): Use FONT_WEIGHT_SYMBOLIC to get a symbol 18281 (w32font_full_name): Use FONT_WEIGHT_SYMBOLIC to get a symbol
18272 weight value. 18282 weight value.
18273 (w32font_driver): Adjusted for the change of struct font_driver. 18283 (w32font_driver): Adjust for the change of struct font_driver.
18274 18284
18275 * w32term.h: Throughout the file, delete all USE_FONT_BACKEND 18285 * w32term.h: Throughout the file, delete all USE_FONT_BACKEND
18276 conditionals. Don't check enable_font_backend. Surround non-used 18286 conditionals. Don't check enable_font_backend. Surround non-used
18277 code by "#ifdef OLD_FONT" and "endif". 18287 code by "#ifdef OLD_FONT" and "endif".
18278 (FONT_WIDTH, FONT_HEIGHT, FONT_BASE, FONT_DESCENT) 18288 (FONT_WIDTH, FONT_HEIGHT, FONT_BASE, FONT_DESCENT)
18279 (FONT_AVG_WIDTH): Adjusted for the change of struct font. 18289 (FONT_AVG_WIDTH): Adjust for the change of struct font.
18280 18290
18281 * w32term.c: Throughout the file, delete all USE_FONT_BACKEND 18291 * w32term.c: Throughout the file, delete all USE_FONT_BACKEND
18282 conditionals. Don't check enable_font_backend. Delete all codes 18292 conditionals. Don't check enable_font_backend. Delete all codes
18283 used only when USE_FONT_BACKEND is not defined. Surround non-used 18293 used only when USE_FONT_BACKEND is not defined. Surround non-used
18284 code by "#ifdef OLD_FONT" and "endif". 18294 code by "#ifdef OLD_FONT" and "endif".
18285 18295
18286 * w32uniscribe.c: Delete USE_FONT_BACKEND conditional. 18296 * w32uniscribe.c: Delete USE_FONT_BACKEND conditional.
18287 (uniscribe_open): Return value changed to font-object. 18297 (uniscribe_open): Return value changed to font-object.
18288 Adjusted for the format change of font-object. 18298 Adjusted for the format change of font-object.
18289 (uniscribe_otf_capability): Adjusted for the change of struct font. 18299 (uniscribe_otf_capability): Adjust for the change of struct font.
18290 (add_opentype_font_name_to_list): Don't downcase names. 18300 (add_opentype_font_name_to_list): Don't downcase names.
18291 (uniscribe_font_driver): Adjusted for the change of struct 18301 (uniscribe_font_driver): Adjust for the change of struct
18292 font_driver. 18302 font_driver.
18293 18303
18294 2008-05-13 Chong Yidong <cyd@stupidchicken.com> 18304 2008-05-13 Chong Yidong <cyd@stupidchicken.com>
18295 18305
18296 * dispnew.c (update_frame_1): Check if tty output is still valid 18306 * dispnew.c (update_frame_1): Check if tty output is still valid
20437 Fix previous change. If the frame is not on a window system, 20447 Fix previous change. If the frame is not on a window system,
20438 signal an error. 20448 signal an error.
20439 20449
20440 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp> 20450 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
20441 20451
20442 * coding.c (decode_coding_object, encode_coding_object): Adjust 20452 * coding.c (decode_coding_object, encode_coding_object):
20443 marker positions after conversion. 20453 Adjust marker positions after conversion.
20444 20454
20445 * lisp.h (struct Lisp_Marker): New member need_adjustment. 20455 * lisp.h (struct Lisp_Marker): New member need_adjustment.
20446 20456
20447 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp> 20457 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
20448 20458
21007 21017
21008 * w32xfns.c (get_next_msg): Consolidate WM_PAINT messages. 21018 * w32xfns.c (get_next_msg): Consolidate WM_PAINT messages.
21009 21019
21010 2008-02-01 Jason Rumney <jasonr@gnu.org> 21020 2008-02-01 Jason Rumney <jasonr@gnu.org>
21011 21021
21012 * w32term.c (x_set_glyph_string_clipping): Use 21022 * w32term.c (x_set_glyph_string_clipping):
21013 get_glyph_string_clip_rects. 21023 Use get_glyph_string_clip_rects.
21014 (x_set_glyph_string_clipping_exactly, x_draw_glyph_string): 21024 (x_set_glyph_string_clipping_exactly, x_draw_glyph_string):
21015 Adjust for the change of struct glyph_string. 21025 Adjust for the change of struct glyph_string.
21016 21026
21017 * w32font.c (w32font_draw): Do clipping here. 21027 * w32font.c (w32font_draw): Do clipping here.
21018 21028
21019 2008-02-01 Kenichi Handa <handa@m17n.org> 21029 2008-02-01 Kenichi Handa <handa@m17n.org>
21020 21030
21021 * xftfont.c (xftfont_draw): Adjust for the change of struct 21031 * xftfont.c (xftfont_draw): Adjust for the change of struct
21022 glyph_string. 21032 glyph_string.
21023 21033
21024 * xterm.c (x_set_glyph_string_clipping): Use 21034 * xterm.c (x_set_glyph_string_clipping):
21025 get_glyph_string_clip_rects. 21035 Use get_glyph_string_clip_rects.
21026 (x_set_glyph_string_clipping_exactly, x_draw_glyph_string): 21036 (x_set_glyph_string_clipping_exactly, x_draw_glyph_string):
21027 Adjust for the change of struct glyph_string. 21037 Adjust for the change of struct glyph_string.
21028 21038
21029 * xdisp.c (get_glyph_string_clip_rects): Reflect s->row->clip to 21039 * xdisp.c (get_glyph_string_clip_rects): Reflect s->row->clip to
21030 the resulting clip(s}. 21040 the resulting clip(s}.
21197 set frame parameter. Use backward compatible fake foundries. 21207 set frame parameter. Use backward compatible fake foundries.
21198 Save generic family in extra slot under QCfamily. Make width slot 21208 Save generic family in extra slot under QCfamily. Make width slot
21199 constant. Save QCspacing value. Save list of scripts instead of 21209 constant. Save QCspacing value. Save list of scripts instead of
21200 binary subranges. 21210 binary subranges.
21201 (w32_generic_family, logfonts_match, font_matches_spec): New functions. 21211 (w32_generic_family, logfonts_match, font_matches_spec): New functions.
21202 (add_font_entity_to_list): Use font_callback_data struct. Filter 21212 (add_font_entity_to_list): Use font_callback_data struct.
21203 unwanted fonts. 21213 Filter unwanted fonts.
21204 (add_one_font_entity_to_list): Use font_callback_data struct. 21214 (add_one_font_entity_to_list): Use font_callback_data struct.
21205 (w32_registry): Default to iso10646_1. 21215 (w32_registry): Default to iso10646_1.
21206 (fill_in_logfont): Use dpi from extra slot. Don't bother with 21216 (fill_in_logfont): Use dpi from extra slot. Don't bother with
21207 string font registries. Don't fill in font name if it is a generic 21217 string font registries. Don't fill in font name if it is a generic
21208 family name, fill family instead. Use spacing, family and script 21218 family name, fill family instead. Use spacing, family and script
21419 (decode_coding_gap): Temporarily set 21429 (decode_coding_gap): Temporarily set
21420 current_buffer->text->inhibit_shrinking to 1. 21430 current_buffer->text->inhibit_shrinking to 1.
21421 21431
21422 2008-02-01 Kenichi Handa <handa@m17n.org> 21432 2008-02-01 Kenichi Handa <handa@m17n.org>
21423 21433
21424 * xterm.c (x_draw_composite_glyph_string_foreground): Fix 21434 * xterm.c (x_draw_composite_glyph_string_foreground):
21425 indexing into elements of s->cmp and s->char2b. 21435 Fix indexing into elements of s->cmp and s->char2b.
21426 21436
21427 2008-02-01 Juanma Barranquero <lekktu@gmail.com> 21437 2008-02-01 Juanma Barranquero <lekktu@gmail.com>
21428 21438
21429 * regex.c (RE_STRING_CHAR_AND_LENGTH) [! emacs]: Add missing arg `len'. 21439 * regex.c (RE_STRING_CHAR_AND_LENGTH) [! emacs]: Add missing arg `len'.
21430 21440
21658 * font.h (struct font_driver): New member `match'. 21668 * font.h (struct font_driver): New member `match'.
21659 (font_update_drivers): Adjust prototype. 21669 (font_update_drivers): Adjust prototype.
21660 21670
21661 * font.c (font_parse_fcname, font_parse_name): Don't change :name 21671 * font.c (font_parse_fcname, font_parse_name): Don't change :name
21662 property of FONT. 21672 property of FONT.
21663 (LGSTRING_HEADER_SIZE, LGSTRING_GLYPH_SIZE, check_gstring): Define 21673 (LGSTRING_HEADER_SIZE, LGSTRING_GLYPH_SIZE, check_gstring):
21664 them unconditionally. 21674 Define them unconditionally.
21665 (font_matching_entity): New function. 21675 (font_matching_entity): New function.
21666 (font_open_by_name): Try font_matching_entity if exact match is 21676 (font_open_by_name): Try font_matching_entity if exact match is
21667 not found. 21677 not found.
21668 (font_update_drivers): Delete the arg FONT. Return a list of 21678 (font_update_drivers): Delete the arg FONT. Return a list of
21669 actually used backends. Don't free faces, font caches here. 21679 actually used backends. Don't free faces, font caches here.
21704 glyph codes of GSTRING. 21714 glyph codes of GSTRING.
21705 (font_otf_gpos): Be sure to set all glyph codes of GSTRING. 21715 (font_otf_gpos): Be sure to set all glyph codes of GSTRING.
21706 (font_prepare_composition): Set cmp->glyph_len. 21716 (font_prepare_composition): Set cmp->glyph_len.
21707 (font_open_entity): Set font->scalable. 21717 (font_open_entity): Set font->scalable.
21708 (Ffont_get): Handle :otf property. 21718 (Ffont_get): Handle :otf property.
21709 (Ffont_otf_gsub, Ffont_otf_gpos, Ffont_otf_alternates): New 21719 (Ffont_otf_gsub, Ffont_otf_gpos, Ffont_otf_alternates):
21710 functions. 21720 New functions.
21711 (Fquery_font): Use font->font.full_name. 21721 (Fquery_font): Use font->font.full_name.
21712 (syms_of_font): Defsubr Sfont_otf_gsub, Sfont_otf_gpos, and 21722 (syms_of_font): Defsubr Sfont_otf_gsub, Sfont_otf_gpos, and
21713 Sfont_otf_alternates. 21723 Sfont_otf_alternates.
21714 21724
21715 * ftfont.c (ftfont_open): Set font->font.full_name and 21725 * ftfont.c (ftfont_open): Set font->font.full_name and
21774 end of valid glyph. 21784 end of valid glyph.
21775 (font_close_object): Fix getting (struct font *). 21785 (font_close_object): Fix getting (struct font *).
21776 (font_at): New function. 21786 (font_at): New function.
21777 (Ffont_get): If FONT is a font-object, get entity from it. 21787 (Ffont_get): If FONT is a font-object, get entity from it.
21778 (Ffont_make_gstring): Initialize elements of glyphs with nil. 21788 (Ffont_make_gstring): Initialize elements of glyphs with nil.
21779 (Ffont_fill_gstring): Use macro LGSTRING_XXX and LGLYPH_XXX. Fix 21789 (Ffont_fill_gstring): Use macro LGSTRING_XXX and LGLYPH_XXX.
21780 range check. 21790 Fix range check.
21781 (Ffont_at): New function. 21791 (Ffont_at): New function.
21782 (syms_of_font): Defsubr Sfont_at. 21792 (syms_of_font): Defsubr Sfont_at.
21783 21793
21784 * xdisp.c (it_props): Move the entry for Qauto_composed to just 21794 * xdisp.c (it_props): Move the entry for Qauto_composed to just
21785 before the entry for Qcomposition. 21795 before the entry for Qcomposition.
21806 * character.h (CHECK_CHARACTER): Redefine in terms of CHECK_TYPE. 21816 * character.h (CHECK_CHARACTER): Redefine in terms of CHECK_TYPE.
21807 21817
21808 2008-02-01 Kenichi Handa <handa@m17n.org> 21818 2008-02-01 Kenichi Handa <handa@m17n.org>
21809 21819
21810 * font.h (LGLYPH_XOFF, LGLYPH_YOFF, LGLYPH_WIDTH, LGLYPH_WADJUST) 21820 * font.h (LGLYPH_XOFF, LGLYPH_YOFF, LGLYPH_WIDTH, LGLYPH_WADJUST)
21811 (LGLYPH_SET_WIDTH): Adjusted for the change of LGLYPH format. 21821 (LGLYPH_SET_WIDTH): Adjust for the change of LGLYPH format.
21812 (LGLYPH_ADJUSTMENT, LGLYPH_SET_ADJUSTMENT): New macros. 21822 (LGLYPH_ADJUSTMENT, LGLYPH_SET_ADJUSTMENT): New macros.
21813 21823
21814 * font.c (font_merge_old_spec): Treat '*' in foundry as a wild card. 21824 * font.c (font_merge_old_spec): Treat '*' in foundry as a wild card.
21815 (DEVICE_DELTA): Fix typo. 21825 (DEVICE_DELTA): Fix typo.
21816 (font_otf_gpos, font_prepare_compositio): Adjust for the change of 21826 (font_otf_gpos, font_prepare_compositio): Adjust for the change of
21868 Change caller. 21878 Change caller.
21869 (font_prop_validate_non_neg): Rename from font_prop_validate_size. 21879 (font_prop_validate_non_neg): Rename from font_prop_validate_size.
21870 (font_prop_validate_extra): Delete. 21880 (font_prop_validate_extra): Delete.
21871 (font_prop_validate_spacing): New function. 21881 (font_prop_validate_spacing): New function.
21872 (font_property_table): Add elements for all known properties. 21882 (font_property_table): Add elements for all known properties.
21873 (get_font_prop_index): Rename from check_font_prop_name. New 21883 (get_font_prop_index): Rename from check_font_prop_name.
21874 argument FROM. Change caller. 21884 New argument FROM. Change caller.
21875 (font_prop_validate): Validate all known properties. 21885 (font_prop_validate): Validate all known properties.
21876 (font_put_extra): Delete argument force. Change caller. 21886 (font_put_extra): Delete argument force. Change caller.
21877 (font_expand_wildcards): Make it static. Fix the way of shrinking 21887 (font_expand_wildcards): Make it static. Fix the way of shrinking
21878 the possible range. 21888 the possible range.
21879 (font_parse_xlfd): Delete argument merge. Fix handling of RESX, 21889 (font_parse_xlfd): Delete argument merge. Fix handling of RESX,
21941 FONT_PIXEL_SIZE_QUANTUM. 21951 FONT_PIXEL_SIZE_QUANTUM.
21942 (font_sort_entites, font_list_entities, font_find_for_lface) 21952 (font_sort_entites, font_list_entities, font_find_for_lface)
21943 (font_open_for_lface, font_open_by_name): Fix handling of font size. 21953 (font_open_for_lface, font_open_by_name): Fix handling of font size.
21944 (Ffont_spec): Add QCname property that contains only unknown properties. 21954 (Ffont_spec): Add QCname property that contains only unknown properties.
21945 21955
21946 * ftfont.c (ftfont_list): Use assq_no_quit, not Fassq. Don't 21956 * ftfont.c (ftfont_list): Use assq_no_quit, not Fassq.
21947 include weight in listing pattern, instead check weight of each 21957 Don't include weight in listing pattern, instead check weight of each
21948 listed font. Don't include scalable in pattern. Pay attention to 21958 listed font. Don't include scalable in pattern. Pay attention to
21949 FONT_PIXEL_SIZE_QUANTUM. 21959 FONT_PIXEL_SIZE_QUANTUM.
21950 21960
21951 2008-02-01 Kenichi Handa <handa@m17n.org> 21961 2008-02-01 Kenichi Handa <handa@m17n.org>
21952 21962
21977 (font_unparse_fcname): Extern them. 21987 (font_unparse_fcname): Extern them.
21978 (font_get_name): Adjust prototype. 21988 (font_get_name): Adjust prototype.
21979 21989
21980 * font.c (XLFD_SMALLNUM_MASK): Delete this macro. 21990 * font.c (XLFD_SMALLNUM_MASK): Delete this macro.
21981 (XLFD_LARGENUM_MASK): Delete XLFD_ENCODING_MASK from it. 21991 (XLFD_LARGENUM_MASK): Delete XLFD_ENCODING_MASK from it.
21982 (font_expand_wildcards): Fix handling ENCODING field. Avoid 21992 (font_expand_wildcards): Fix handling ENCODING field.
21983 unnecessary checks for weight, slant, and swidth. 21993 Avoid unnecessary checks for weight, slant, and swidth.
21984 (font_parse_fcname): New function. 21994 (font_parse_fcname): New function.
21985 (font_unparse_fcname): New function. 21995 (font_unparse_fcname): New function.
21986 (font_parse_name): New function. 21996 (font_parse_name): New function.
21987 (font_match_p): New function. 21997 (font_match_p): New function.
21988 (font_get_name): Change return value to Lisp string. 21998 (font_get_name): Change return value to Lisp string.
22212 (face_symbolic_swidth, face_for_font) [USE_FONT_BACKEND]: New functions. 22222 (face_symbolic_swidth, face_for_font) [USE_FONT_BACKEND]: New functions.
22213 22223
22214 * xfns.c [USE_FONT_BACKEND]: Include "font.h". 22224 * xfns.c [USE_FONT_BACKEND]: Include "font.h".
22215 (x_default_font_parameter) [USE_FONT_BACKEND]: New function. 22225 (x_default_font_parameter) [USE_FONT_BACKEND]: New function.
22216 (Fx_create_frame) [USE_FONT_BACKEND]: If enable_font_backend is 22226 (Fx_create_frame) [USE_FONT_BACKEND]: If enable_font_backend is
22217 nonzero, register all available font drivers. Call 22227 nonzero, register all available font drivers.
22218 x_default_font_parameter for deciding a font. 22228 Call x_default_font_parameter for deciding a font.
22219 (x_create_tip_frame) [USE_FONT_BACKEND]: Likewise. 22229 (x_create_tip_frame) [USE_FONT_BACKEND]: Likewise.
22220 22230
22221 * xterm.c [USE_FONT_BACKEND]: Include "font.h". 22231 * xterm.c [USE_FONT_BACKEND]: Include "font.h".
22222 (x_set_mouse_face_gc, x_set_glyph_string_clipping) 22232 (x_set_mouse_face_gc, x_set_glyph_string_clipping)
22223 (x_set_glyph_string_clipping_exactly) 22233 (x_set_glyph_string_clipping_exactly)
22257 * keyboard.c (read_char): Check if C is a character or not before 22267 * keyboard.c (read_char): Check if C is a character or not before
22258 looking up Vkeyboard_translate_table. 22268 looking up Vkeyboard_translate_table.
22259 22269
22260 2008-02-01 Kenichi Handa <handa@m17n.org> 22270 2008-02-01 Kenichi Handa <handa@m17n.org>
22261 22271
22262 * coding.c (DECODE_EMACS_MULE_20_RELATIVE_COMPOSITION): Fix 22272 * coding.c (DECODE_EMACS_MULE_20_RELATIVE_COMPOSITION):
22263 condition to terminate the loop. 22273 Fix condition to terminate the loop.
22264 22274
22265 2008-02-01 Kenichi Handa <handa@m17n.org> 22275 2008-02-01 Kenichi Handa <handa@m17n.org>
22266 22276
22267 * coding.c (produce_composition): Compare charbuf[i] instead of 22277 * coding.c (produce_composition): Compare charbuf[i] instead of
22268 args[i] against 0. 22278 args[i] against 0.
22291 * ccl.c (Fccl_execute_on_string): Fix the condition of terminating 22301 * ccl.c (Fccl_execute_on_string): Fix the condition of terminating
22292 the loop. When quitted, show a proper error message. 22302 the loop. When quitted, show a proper error message.
22293 22303
22294 2008-02-01 Kenichi Handa <handa@m17n.org> 22304 2008-02-01 Kenichi Handa <handa@m17n.org>
22295 22305
22296 * xterm.c (x_set_glyph_string_clipping_exactly): Set 22306 * xterm.c (x_set_glyph_string_clipping_exactly):
22297 src->clip_head and src->clip_tail temporarily instead of src->hl. 22307 Set src->clip_head and src->clip_tail temporarily instead of src->hl.
22298 22308
22299 * ccl.c (CCL_WRITE_STRING): Handle a flag bit for multibyte 22309 * ccl.c (CCL_WRITE_STRING): Handle a flag bit for multibyte
22300 character sequence. 22310 character sequence.
22301 (Fccl_execute_on_string): Use ASET, not XSET. 22311 (Fccl_execute_on_string): Use ASET, not XSET.
22302 22312
22324 * xdisp.c (fill_composite_glyph_string): Check s->face is NULL or 22334 * xdisp.c (fill_composite_glyph_string): Check s->face is NULL or
22325 not. 22335 not.
22326 (BUILD_COMPOSITE_GLYPH_STRING): If C is TAB, set s->face to NULL. 22336 (BUILD_COMPOSITE_GLYPH_STRING): If C is TAB, set s->face to NULL.
22327 (x_produce_glyphs): If CH is TAB, set cmp->offsets properly. 22337 (x_produce_glyphs): If CH is TAB, set cmp->offsets properly.
22328 22338
22329 * xterm.c (x_draw_composite_glyph_string_foreground): Check 22339 * xterm.c (x_draw_composite_glyph_string_foreground):
22330 s->face is NULL or not. 22340 Check s->face is NULL or not.
22331 22341
22332 2008-02-01 Kenichi Handa <handa@m17n.org> 22342 2008-02-01 Kenichi Handa <handa@m17n.org>
22333 22343
22334 * xterm.c (x_set_glyph_string_clipping_exactly): New function. 22344 * xterm.c (x_set_glyph_string_clipping_exactly): New function.
22335 (x_draw_glyph_string): Fix drawing of right_overhang and 22345 (x_draw_glyph_string): Fix drawing of right_overhang and
22375 22385
22376 * macterm.c (mac_encode_char): Call ccl_driver with the last arg 22386 * macterm.c (mac_encode_char): Call ccl_driver with the last arg
22377 Qnil. Use JIS_TO_SJIS instead of ENCODE_SJIS. 22387 Qnil. Use JIS_TO_SJIS instead of ENCODE_SJIS.
22378 (decode_mac_font_name): Use decode_coding_c_string instead of 22388 (decode_mac_font_name): Use decode_coding_c_string instead of
22379 decode_coding. 22389 decode_coding.
22380 (x_load_font): Initialize fontp->fontset to -1. Set 22390 (x_load_font): Initialize fontp->fontset to -1.
22381 fontp->encoding_type. 22391 Set fontp->encoding_type.
22382 22392
22383 2008-02-01 Kenichi Handa <handa@m17n.org> 22393 2008-02-01 Kenichi Handa <handa@m17n.org>
22384 22394
22385 * search.c (search_buffer): Give up BM search on case-fold-search 22395 * search.c (search_buffer): Give up BM search on case-fold-search
22386 if one of a target character has a case-equivalence of different 22396 if one of a target character has a case-equivalence of different
22423 22433
22424 * Makefile.in (RUN_TEMACS): Include "-nl" if HAVE_SHM is defined. 22434 * Makefile.in (RUN_TEMACS): Include "-nl" if HAVE_SHM is defined.
22425 (emacs${EXEEXT}): Run $(RUN_TEMACS) unconditionally. 22435 (emacs${EXEEXT}): Run $(RUN_TEMACS) unconditionally.
22426 (UNIDATA): New variable. 22436 (UNIDATA): New variable.
22427 (${lispsource}international/charprop.el): Depends on ${UNIDATA}. 22437 (${lispsource}international/charprop.el): Depends on ${UNIDATA}.
22428 (bootstrap-emacs${EXEEXT}): Depends on charprop.el. Run 22438 (bootstrap-emacs${EXEEXT}): Depends on charprop.el.
22429 $(RUN_TEMACS) unconditionally. 22439 Run $(RUN_TEMACS) unconditionally.
22430 22440
22431 2008-02-01 Kenichi Handa <handa@m17n.org> 22441 2008-02-01 Kenichi Handa <handa@m17n.org>
22432 22442
22433 * Makefile.in (temacs${EXEEXT}): Build charprop.el if necessary. 22443 * Makefile.in (temacs${EXEEXT}): Build charprop.el if necessary.
22434 (admindir): New variable. 22444 (admindir): New variable.
22441 22451
22442 2008-02-01 Benjamin Riefenstahl <b.riefenstahl@turtle-trading.net> 22452 2008-02-01 Benjamin Riefenstahl <b.riefenstahl@turtle-trading.net>
22443 22453
22444 * w32select.c (validate_coding_system) 22454 * w32select.c (validate_coding_system)
22445 (setup_windows_coding_system): New functions. 22455 (setup_windows_coding_system): New functions.
22446 (convert_to_handle_as_coded, Fw32_get_clipboard_data): Use 22456 (convert_to_handle_as_coded, Fw32_get_clipboard_data):
22447 setup_windows_coding_system. 22457 Use setup_windows_coding_system.
22448 (setup_config, Fw32_get_clipboard_data): Use 22458 (setup_config, Fw32_get_clipboard_data):
22449 validate_coding_system. 22459 Use validate_coding_system.
22450 (Fx_selection_exists): Move call to setup_config to a place 22460 (Fx_selection_exists): Move call to setup_config to a place
22451 where signals are allowed. 22461 where signals are allowed.
22452 22462
22453 * lisp.h (Fcoding_system_base, Fcoding_system_eol_type) 22463 * lisp.h (Fcoding_system_base, Fcoding_system_eol_type)
22454 (Fcheck_coding_system): Add declarations. 22464 (Fcheck_coding_system): Add declarations.
22526 22536
22527 2008-02-01 Kenichi Handa <handa@m17n.org> 22537 2008-02-01 Kenichi Handa <handa@m17n.org>
22528 22538
22529 * fontset.c (fs_load_font): Use fast_string_match_ignore_case 22539 * fontset.c (fs_load_font): Use fast_string_match_ignore_case
22530 instead of fast_c_string_match_ignore_case. 22540 instead of fast_c_string_match_ignore_case.
22531 (find_font_encoding): Change argument to Lisp_Object. Use 22541 (find_font_encoding): Change argument to Lisp_Object.
22532 fast_string_match_ignore_case instead of 22542 Use fast_string_match_ignore_case instead of
22533 fast_c_string_match_ignore_case. Change caller. 22543 fast_c_string_match_ignore_case. Change caller.
22534 22544
22535 2008-02-01 Kenichi Handa <handa@m17n.org> 22545 2008-02-01 Kenichi Handa <handa@m17n.org>
22536 22546
22537 * xdisp.c (get_next_display_element): In unibyte case, decide to 22547 * xdisp.c (get_next_display_element): In unibyte case, decide to
22554 22564
22555 * coding.c (setup_coding_system): If coding_system is nil, use 22565 * coding.c (setup_coding_system): If coding_system is nil, use
22556 Qundecided. 22566 Qundecided.
22557 (Fterminal_coding_system): Return nil if terminal coding system is 22567 (Fterminal_coding_system): Return nil if terminal coding system is
22558 `undecided'. 22568 `undecided'.
22559 (syms_of_coding): Define coding-system `undecided' here. Setup 22569 (syms_of_coding): Define coding-system `undecided' here.
22560 terminal_coding as `undecided'. 22570 Setup terminal_coding as `undecided'.
22561 22571
22562 2008-02-01 Kenichi Handa <handa@m17n.org> 22572 2008-02-01 Kenichi Handa <handa@m17n.org>
22563 22573
22564 * xdisp.c (message_dolog, set_message_1): Call 22574 * xdisp.c (message_dolog, set_message_1):
22565 unibyte_char_to_multibyte with arg type int. 22575 Call unibyte_char_to_multibyte with arg type int.
22566 22576
22567 * lread.c (read1): Fix reading of a char-table. 22577 * lread.c (read1): Fix reading of a char-table.
22568 22578
22569 * print.c (print_object): Include sub char-table in circularities 22579 * print.c (print_object): Include sub char-table in circularities
22570 detection. 22580 detection.
22658 * coding.c (encode_coding_utf_8): Fix handling of raw-byte char. 22668 * coding.c (encode_coding_utf_8): Fix handling of raw-byte char.
22659 (consume_chars): Fix handling of 8-bit bytes in unibyte source. 22669 (consume_chars): Fix handling of 8-bit bytes in unibyte source.
22660 22670
22661 2008-02-01 Kenichi Handa <handa@m17n.org> 22671 2008-02-01 Kenichi Handa <handa@m17n.org>
22662 22672
22663 * coding.c (Ffind_coding_systems_region_internal): Include 22673 * coding.c (Ffind_coding_systems_region_internal):
22664 raw-text and no-conversion in the result. 22674 Include raw-text and no-conversion in the result.
22665 22675
22666 2008-02-01 Kenichi Handa <handa@m17n.org> 22676 2008-02-01 Kenichi Handa <handa@m17n.org>
22667 22677
22668 * fontset.c (find_font_encoding): Return `ascii' for unknown encoding. 22678 * fontset.c (find_font_encoding): Return `ascii' for unknown encoding.
22669 (load_font_get_repertory): Delete unnecessary check of ENCODING of 22679 (load_font_get_repertory): Delete unnecessary check of ENCODING of
22715 22725
22716 * print.c (print_prune_string_charset): Fix Lisp_Object/int mixup. 22726 * print.c (print_prune_string_charset): Fix Lisp_Object/int mixup.
22717 22727
22718 * fontset.c: Include "intervals.h". 22728 * fontset.c: Include "intervals.h".
22719 (fontset_face): Fix comparing of Lisp_Objects. 22729 (fontset_face): Fix comparing of Lisp_Objects.
22720 (free_face_fontset, new_fontset_from_font_name): Fix 22730 (free_face_fontset, new_fontset_from_font_name):
22721 Lisp_Object/int mixup. 22731 Fix Lisp_Object/int mixup.
22722 22732
22723 * editfns.c (Ftranslate_region_internal): Fix Lisp_Object/int mixup. 22733 * editfns.c (Ftranslate_region_internal): Fix Lisp_Object/int mixup.
22724 22734
22725 * coding.c: Add many prototypes for static functions. 22735 * coding.c: Add many prototypes for static functions.
22726 (get_translation_table): Allow max_lookup to be NULL. 22736 (get_translation_table): Allow max_lookup to be NULL.
22727 (decode_coding, Ffind_coding_systems_region_internal) 22737 (decode_coding, Ffind_coding_systems_region_internal)
22728 (Funencodable_char_position, Fcheck_coding_systems_region): Call 22738 (Funencodable_char_position, Fcheck_coding_systems_region):
22729 get_translation_table with max_lookup NULL. 22739 Call get_translation_table with max_lookup NULL.
22730 22740
22731 2008-02-01 Kenichi Handa <handa@m17n.org> 22741 2008-02-01 Kenichi Handa <handa@m17n.org>
22732 22742
22733 * coding.c (get_translation_table): Declare it as Lisp_Object. 22743 * coding.c (get_translation_table): Declare it as Lisp_Object.
22734 (LOOKUP_TRANSLATION_TABLE): New macro. 22744 (LOOKUP_TRANSLATION_TABLE): New macro.
22853 (char_encodable_p): If translation_table is non-nil, always call 22863 (char_encodable_p): If translation_table is non-nil, always call
22854 translate_char. 22864 translate_char.
22855 (Fdefine_coding_system_internal): Accept list of translation 22865 (Fdefine_coding_system_internal): Accept list of translation
22856 tables as :encode-translation-table and :decode-translation-table. 22866 tables as :encode-translation-table and :decode-translation-table.
22857 (Fcoding_system_put): New function. 22867 (Fcoding_system_put): New function.
22858 (syms_of_coding): Declare new symbols. Defsubr 22868 (syms_of_coding): Declare new symbols.
22859 Scoding_system_put. 22869 Defsubr Scoding_system_put.
22860 (decode_coding_sjis, encode_coding_sjis): Handle 4th charset, 22870 (decode_coding_sjis, encode_coding_sjis): Handle 4th charset,
22861 typically JISX0212. 22871 typically JISX0212.
22862 22872
22863 * charset.c (map_charset_chars): Fix arg to map_charset_chars in 22873 * charset.c (map_charset_chars): Fix arg to map_charset_chars in
22864 when the charset is superset type. 22874 when the charset is superset type.
22975 (map_charset_chars): Fix args to c_function with. 22985 (map_charset_chars): Fix args to c_function with.
22976 22986
22977 * chartab.c (map_sub_char_table_for_charset): Fix args to 22987 * chartab.c (map_sub_char_table_for_charset): Fix args to
22978 c_function with. 22988 c_function with.
22979 22989
22980 * coding.h (enum coding_result_code): Delete 22990 * coding.h (enum coding_result_code):
22981 CODING_RESULT_INSUFFICIENT_CMP, add CODING_RESULT_INVALID_SRC. 22991 Delete CODING_RESULT_INSUFFICIENT_CMP, add CODING_RESULT_INVALID_SRC.
22982 22992
22983 * coding.c (Qinsufficient_source, Qinconsistent_eol) 22993 * coding.c (Qinsufficient_source, Qinconsistent_eol)
22984 (Qinvalid_source, Qinterrupted, Qinsufficient_memory): New variables. 22994 (Qinvalid_source, Qinterrupted, Qinsufficient_memory): New variables.
22985 (Vlast_code_conversion_error): New variables. 22995 (Vlast_code_conversion_error): New variables.
22986 (syms_of_coding): DEFSYM or DEFVAR_LISP them. 22996 (syms_of_coding): DEFSYM or DEFVAR_LISP them.
23188 (x_to_w32_font): Use encode_coding_object in place of encode_coding. 23198 (x_to_w32_font): Use encode_coding_object in place of encode_coding.
23189 (syms_of_w32fns): Set get_font_repertory_func. 23199 (syms_of_w32fns): Set get_font_repertory_func.
23190 23200
23191 * w32console.c: Include character.h. Use terminal_encode_buffer 23201 * w32console.c: Include character.h. Use terminal_encode_buffer
23192 from term.c. 23202 from term.c.
23193 (write_glyphs): Use new version of encode_terminal_code. Use 23203 (write_glyphs): Use new version of encode_terminal_code.
23194 encode_coding_object in place of encode_coding. 23204 Use encode_coding_object in place of encode_coding.
23195 23205
23196 * w32bdf.c (w32_load_bdf_font): Clear font_info before filling. 23206 * w32bdf.c (w32_load_bdf_font): Clear font_info before filling.
23197 encoding becomes encoding_type. 23207 encoding becomes encoding_type.
23198 23208
23199 * term.c (terminal_encode_buffer): Make externally visible. 23209 * term.c (terminal_encode_buffer): Make externally visible.
23213 2008-02-01 Kenichi Handa <handa@m17n.org> 23223 2008-02-01 Kenichi Handa <handa@m17n.org>
23214 23224
23215 * charset.h (charset_unicode): Extern it. 23225 * charset.h (charset_unicode): Extern it.
23216 23226
23217 * charset.c (string_xstring_p): Check by (C >= 0x100). 23227 * charset.c (string_xstring_p): Check by (C >= 0x100).
23218 (find_charsets_in_text): Change format of the arc CHARSETS. New 23228 (find_charsets_in_text): Change format of the arc CHARSETS.
23219 arg MULTIBYTE. 23229 New arg MULTIBYTE.
23220 (Ffind_charset_region, Ffind_charset_string): Adjust for the 23230 (Ffind_charset_region, Ffind_charset_string): Adjust for the
23221 change of find_charsets_in_text. 23231 change of find_charsets_in_text.
23222 (Fsplit_char): Fix doc. Never return unknown. 23232 (Fsplit_char): Fix doc. Never return unknown.
23223 23233
23224 * chartab.c (char_table_translate): Use CHARACTERP, not INTEGERP. 23234 * chartab.c (char_table_translate): Use CHARACTERP, not INTEGERP.
23225 23235
23226 * coding.c (Fdefine_coding_system_alias): Update 23236 * coding.c (Fdefine_coding_system_alias):
23227 Vcoding_system_list. 23237 Update Vcoding_system_list.
23228 23238
23229 * fontset.c (load_font_get_repertory): Pay attention to the case 23239 * fontset.c (load_font_get_repertory): Pay attention to the case
23230 that ENCODING of a font is specified by a char-table. 23240 that ENCODING of a font is specified by a char-table.
23231 23241
23232 * xterm.c (x_get_font_repertory): Handle the case that the 23242 * xterm.c (x_get_font_repertory): Handle the case that the
23233 encoding of font is other than Unicode. 23243 encoding of font is other than Unicode.
23234 23244
23235 2008-02-01 Kenichi Handa <handa@m17n.org> 23245 2008-02-01 Kenichi Handa <handa@m17n.org>
23236 23246
23237 * term.c (encode_terminal_code): Don't handle glyph-table. Check 23247 * term.c (encode_terminal_code): Don't handle glyph-table.
23238 if a character is encodable by the terminal coding system. If 23248 Check if a character is encodable by the terminal coding system.
23239 not, produces proper number of `?'s. Update 23249 If not, produces proper number of `?'s. Update
23240 terminal_encode_buffer and terminal_encode_buf_size if necessary. 23250 terminal_encode_buffer and terminal_encode_buf_size if necessary.
23241 (produce_glyphs): Check by CHAR_BYTE8_P, not SINGLE_BYTE_CHAR_P. 23251 (produce_glyphs): Check by CHAR_BYTE8_P, not SINGLE_BYTE_CHAR_P.
23242 23252
23243 2008-02-01 Kenichi Handa <handa@m17n.org> 23253 2008-02-01 Kenichi Handa <handa@m17n.org>
23244 23254
23245 * term.c (terminal_encode_buffer, terminal_encode_buf_size): New 23255 * term.c (terminal_encode_buffer, terminal_encode_buf_size):
23246 variables. 23256 New variables.
23247 (encode_terminal_code): Change argument. Encode multiple 23257 (encode_terminal_code): Change argument. Encode multiple
23248 characters at once. Store the result of encoding in 23258 characters at once. Store the result of encoding in
23249 terminal_encode_buffer. 23259 terminal_encode_buffer.
23250 (write_glyphs, insert_glyphs): Adjust for the change of 23260 (write_glyphs, insert_glyphs): Adjust for the change of
23251 encode_terminal_code. 23261 encode_terminal_code.
23319 (find_charsets_in_text, Ffind_charset_region): Use EMACS_INT for 23329 (find_charsets_in_text, Ffind_charset_region): Use EMACS_INT for
23320 byte/char counts. 23330 byte/char counts.
23321 23331
23322 * casetab.c (set_case_table): Remove unused var. 23332 * casetab.c (set_case_table): Remove unused var.
23323 23333
23324 * window.c (Fdisplay_buffer, Fframe_selected_window): Remove 23334 * window.c (Fdisplay_buffer, Fframe_selected_window):
23325 unused vars. 23335 Remove unused vars.
23326 23336
23327 2008-02-01 Dave Love <fx@gnu.org> 23337 2008-02-01 Dave Love <fx@gnu.org>
23328 23338
23329 * xterm.c (x_bitmap_mask): Declare. 23339 * xterm.c (x_bitmap_mask): Declare.
23330 23340
23348 23358
23349 * composite.c (find_composition, run_composition_function) 23359 * composite.c (find_composition, run_composition_function)
23350 (update_compositions, Ffind_composition_internal): Make buffer 23360 (update_compositions, Ffind_composition_internal): Make buffer
23351 positions EMACS_INT. 23361 positions EMACS_INT.
23352 23362
23353 * composite.h (find_composition, update_compositions): Make 23363 * composite.h (find_composition, update_compositions):
23354 position args EMACS_INT. 23364 Make position args EMACS_INT.
23355 23365
23356 * keyboard.c (adjust_point_for_property): Make beg and end EMACS_INT. 23366 * keyboard.c (adjust_point_for_property): Make beg and end EMACS_INT.
23357 23367
23358 * intervals.c (get_property_and_range): 23368 * intervals.c (get_property_and_range):
23359 * intervals.h (get_property_and_range): Make start and end EMACS_INT. 23369 * intervals.h (get_property_and_range): Make start and end EMACS_INT.
23373 * fileio.c (Finsert_file_contents): Call setup_coding_system in 23383 * fileio.c (Finsert_file_contents): Call setup_coding_system in
23374 the case of auto saving. 23384 the case of auto saving.
23375 23385
23376 2008-02-01 Andreas Schwab <schwab@suse.de> 23386 2008-02-01 Andreas Schwab <schwab@suse.de>
23377 23387
23378 * chartab.c (map_char_table, map_char_table_for_charset): Protect 23388 * chartab.c (map_char_table, map_char_table_for_charset):
23379 `range' from GC. 23389 Protect `range' from GC.
23380 23390
23381 2008-02-01 Kenichi Handa <handa@m17n.org> 23391 2008-02-01 Kenichi Handa <handa@m17n.org>
23382 23392
23383 * coding.c (decode_coding_sjis): Check bytes more rigidly. 23393 * coding.c (decode_coding_sjis): Check bytes more rigidly.
23384 23394
23436 (TARGET_CHAR_AND_LENGTH): Delete this macro. 23446 (TARGET_CHAR_AND_LENGTH): Delete this macro.
23437 (TRANSLATE_VIA_MULTIBYTE): New macro. 23447 (TRANSLATE_VIA_MULTIBYTE): New macro.
23438 (re_match_2_internal): Don't check RE_TARGET_MULTIBYTE_P (bufp). 23448 (re_match_2_internal): Don't check RE_TARGET_MULTIBYTE_P (bufp).
23439 It is the same as RE_MULTIBYTE_P (bufp) now. 23449 It is the same as RE_MULTIBYTE_P (bufp) now.
23440 <exactn>: Translate via multibyte. 23450 <exactn>: Translate via multibyte.
23441 <anychar>: Fetch a character by RE_STRING_CHAR_AND_LENGTH. Don't 23451 <anychar>: Fetch a character by RE_STRING_CHAR_AND_LENGTH.
23442 translate it. 23452 Don't translate it.
23443 <charset, charset_not>: Fetch a character by 23453 <charset, charset_not>: Fetch a character by
23444 RE_STRING_CHAR_AND_LENGTH. Translate via multibyte. 23454 RE_STRING_CHAR_AND_LENGTH. Translate via multibyte.
23445 <duplicate>: Call bcmp_translate with the last arg `multibyte'. 23455 <duplicate>: Call bcmp_translate with the last arg `multibyte'.
23446 <wordbound, notwordbound, wordbeg, wordend, syntaxspec, 23456 <wordbound, notwordbound, wordbeg, wordend, syntaxspec,
23447 notsyntaxspec, categoryspec, notcategoryspec> Fetch a character 23457 notsyntaxspec, categoryspec, notcategoryspec> Fetch a character
23658 using split_font_name_into_vector and build_font_name_from_vector. 23668 using split_font_name_into_vector and build_font_name_from_vector.
23659 (Fset_fontset_font): Access the elements of font_spec by enum 23669 (Fset_fontset_font): Access the elements of font_spec by enum
23660 FONT_SPEC_INDEX. If font_spec is a string, extract the registry 23670 FONT_SPEC_INDEX. If font_spec is a string, extract the registry
23661 name by using split_font_name_into_vector. 23671 name by using split_font_name_into_vector.
23662 (Fnew_fontset): If no ASCII font is specified in FONTLIST, 23672 (Fnew_fontset): If no ASCII font is specified in FONTLIST,
23663 generate a proper font name from the fontset name. Update 23673 generate a proper font name from the fontset name.
23664 Vfontset_alias_alist. 23674 Update Vfontset_alias_alist.
23665 (n_auto_fontsets): New variable. 23675 (n_auto_fontsets): New variable.
23666 (new_fontset_from_font_name): New function. 23676 (new_fontset_from_font_name): New function.
23667 (Ffont_info): Store the information about fonts generated from the 23677 (Ffont_info): Store the information about fonts generated from the
23668 default fontset in the first extra slot of the returned char-table. 23678 default fontset in the first extra slot of the returned char-table.
23669 23679
23724 (detect_coding_ccl, detect_coding_charset): Change argument MASK 23734 (detect_coding_ccl, detect_coding_charset): Change argument MASK
23725 to DETECT_INFO. Update DETECT_INFO and return 1 if the byte 23735 to DETECT_INFO. Update DETECT_INFO and return 1 if the byte
23726 sequence is valid in this coding system. Change callers. 23736 sequence is valid in this coding system. Change callers.
23727 (MAX_ANNOTATION_LENGTH): New macro. 23737 (MAX_ANNOTATION_LENGTH): New macro.
23728 (ADD_ANNOTATION_DATA): New macro. 23738 (ADD_ANNOTATION_DATA): New macro.
23729 (ADD_COMPOSITION_DATA): Change argument. Change callers. Call 23739 (ADD_COMPOSITION_DATA): Change argument. Change callers.
23730 ADD_ANNOTATION_DATA. Change the format of annotation data. 23740 Call ADD_ANNOTATION_DATA. Change the format of annotation data.
23731 (ADD_CHARSET_DATA): New macro. 23741 (ADD_CHARSET_DATA): New macro.
23732 (emacs_mule_char): New argument ID. Change callers. 23742 (emacs_mule_char): New argument ID. Change callers.
23733 (decode_coding_emacs_mule, decode_coding_iso_2022) 23743 (decode_coding_emacs_mule, decode_coding_iso_2022)
23734 (decode_coding_sjis, decode_coding_big5, decode_coding_charset): 23744 (decode_coding_sjis, decode_coding_big5, decode_coding_charset):
23735 Produce charset annotation data in coding->charbuf. 23745 Produce charset annotation data in coding->charbuf.
23739 coding->common_flags if the coding system is iso-2022 based and 23749 coding->common_flags if the coding system is iso-2022 based and
23740 uses designation. 23750 uses designation.
23741 (produce_composition): Adjust for the new annotation data format. 23751 (produce_composition): Adjust for the new annotation data format.
23742 (produce_charset): New function. 23752 (produce_charset): New function.
23743 (produce_annotation): Handle charset annotation. 23753 (produce_annotation): Handle charset annotation.
23744 (handle_composition_annotation, handle_charset_annotation): New 23754 (handle_composition_annotation, handle_charset_annotation):
23745 functions. 23755 New functions.
23746 (consume_chars): Handle charset annotation. Utilize the above two 23756 (consume_chars): Handle charset annotation. Utilize the above two
23747 functions. 23757 functions.
23748 (encode_coding_object): If SRC_OBJECT and DST_OBJECT are the same 23758 (encode_coding_object): If SRC_OBJECT and DST_OBJECT are the same
23749 buffer, get the deleted text as a string and set 23759 buffer, get the deleted text as a string and set
23750 coding->src_object to that string. 23760 coding->src_object to that string.
23870 23880
23871 2008-02-01 Kenichi Handa <handa@m17n.org> 23881 2008-02-01 Kenichi Handa <handa@m17n.org>
23872 23882
23873 * coding.c (detect_coding_charset): If only ASCII bytes are found, 23883 * coding.c (detect_coding_charset): If only ASCII bytes are found,
23874 return 0. 23884 return 0.
23875 (Fdefine_coding_system_internal): Setup 23885 (Fdefine_coding_system_internal):
23876 CODING_ATTR_ASCII_COMPAT (attrs) correctly. 23886 Setup CODING_ATTR_ASCII_COMPAT (attrs) correctly.
23877 23887
23878 2008-02-01 Dave Love <fx@gnu.org> 23888 2008-02-01 Dave Love <fx@gnu.org>
23879 23889
23880 * coding.c (Fcheck_coding_system): Doc fix. 23890 * coding.c (Fcheck_coding_system): Doc fix.
23881 23891
23882 * editfns.c (Finsert_byte): Return a proper value. 23892 * editfns.c (Finsert_byte): Return a proper value.
23883 23893
23884 2008-02-01 Kenichi Handa <handa@m17n.org> 23894 2008-02-01 Kenichi Handa <handa@m17n.org>
23885 23895
23886 * coding.c (decode_coding): Fix args to translate_chars. Pay 23896 * coding.c (decode_coding): Fix args to translate_chars.
23887 attention to Vstandard_translation_table_for_decode. 23897 Pay attention to Vstandard_translation_table_for_decode.
23888 (encode_coding): Fix args to translate_chars. Pay attention to 23898 (encode_coding): Fix args to translate_chars. Pay attention to
23889 Vstandard_translation_table_for_encode. 23899 Vstandard_translation_table_for_encode.
23890 23900
23891 * data.c (Faset): Check NEWELT by ASCII_CHAR_P, not by 23901 * data.c (Faset): Check NEWELT by ASCII_CHAR_P, not by
23892 SINGLE_BYTE_CHAR_P. 23902 SINGLE_BYTE_CHAR_P.
23932 char_string_with_unification. Pay attention to CHAR_MODIFIER_MASK. 23942 char_string_with_unification. Pay attention to CHAR_MODIFIER_MASK.
23933 (string_char): Rename from string_char. 23943 (string_char): Rename from string_char.
23934 23944
23935 * character.h (CHAR_STRING, CHAR_STRING_ADVANCE): Call char_string 23945 * character.h (CHAR_STRING, CHAR_STRING_ADVANCE): Call char_string
23936 if C is greater than MAX_3_BYTE_CHAR. 23946 if C is greater than MAX_3_BYTE_CHAR.
23937 (STRING_CHAR, STRING_CHAR_AND_LENGTH, STRING_CHAR_ADVANCE): Call 23947 (STRING_CHAR, STRING_CHAR_AND_LENGTH, STRING_CHAR_ADVANCE):
23938 string_char instead of string_char_with_unification. 23948 Call string_char instead of string_char_with_unification.
23939 23949
23940 2008-02-01 Dave Love <fx@gnu.org> 23950 2008-02-01 Dave Love <fx@gnu.org>
23941 23951
23942 * coding.c (decode_coding_utf_8): Treat surrogates as invalid. 23952 * coding.c (decode_coding_utf_8): Treat surrogates as invalid.
23943 23953
23991 24001
23992 * regex.c: Use `ifdef HAVE_ALLOCA_H', not `if HAVE_ALLOCA_H'. 24002 * regex.c: Use `ifdef HAVE_ALLOCA_H', not `if HAVE_ALLOCA_H'.
23993 24003
23994 * keyboard.c (read_key_sequence): Fix type error. 24004 * keyboard.c (read_key_sequence): Fix type error.
23995 24005
23996 * buffer.c (Fset_buffer_multibyte, Fset_buffer_multibyte): Fix 24006 * buffer.c (Fset_buffer_multibyte, Fset_buffer_multibyte):
23997 type error. 24007 Fix type error.
23998 24008
23999 * fontset.c (fontset_add): Return Lisp_Object. 24009 * fontset.c (fontset_add): Return Lisp_Object.
24000 24010
24001 2008-02-01 Dave Love <fx@gnu.org> 24011 2008-02-01 Dave Love <fx@gnu.org>
24002 24012
24044 FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE. 24054 FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE.
24045 24055
24046 * regex.h (struct re_pattern_buffer): New member target_multibyte. 24056 * regex.h (struct re_pattern_buffer): New member target_multibyte.
24047 24057
24048 * regex.c (RE_TARGET_MULTIBYTE_P): New macro. 24058 * regex.c (RE_TARGET_MULTIBYTE_P): New macro.
24049 (GET_CHAR_BEFORE_2): Check target_multibyte, not multibyte. If 24059 (GET_CHAR_BEFORE_2): Check target_multibyte, not multibyte.
24050 that is zero, convert an eight-bit char to multibyte. 24060 If that is zero, convert an eight-bit char to multibyte.
24051 (MAKE_CHAR_MULTIBYTE, CHAR_LEADING_CODE): New dummy new macros for 24061 (MAKE_CHAR_MULTIBYTE, CHAR_LEADING_CODE): New dummy new macros for
24052 non-emacs case. 24062 non-emacs case.
24053 (PATFETCH): Convert an eight-bit char to multibyte. 24063 (PATFETCH): Convert an eight-bit char to multibyte.
24054 (HANDLE_UNIBYTE_RANGE): New macro. 24064 (HANDLE_UNIBYTE_RANGE): New macro.
24055 (regex_compile): Setup the compiled pattern for multibyte chars 24065 (regex_compile): Setup the compiled pattern for multibyte chars
24064 <categoryspec>: If multibyte, setup fastmap only for ASCII chars here. 24074 <categoryspec>: If multibyte, setup fastmap only for ASCII chars here.
24065 (re_compile_fastmap) [emacs]: Call analyse_first with the arg 24075 (re_compile_fastmap) [emacs]: Call analyse_first with the arg
24066 multibyte always 1. 24076 multibyte always 1.
24067 (re_search_2): In emacs, set the locale variable multibyte to 1, 24077 (re_search_2): In emacs, set the locale variable multibyte to 1,
24068 otherwise to 0. New local variable target_multibyte. Check it 24078 otherwise to 0. New local variable target_multibyte. Check it
24069 to decide the multibyteness of STR1 and STR2. If 24079 to decide the multibyteness of STR1 and STR2.
24070 target_multibyte is zero, convert unibyte chars to multibyte 24080 If target_multibyte is zero, convert unibyte chars to multibyte
24071 before translating and checking fastmap. 24081 before translating and checking fastmap.
24072 (TARGET_CHAR_AND_LENGTH): New macro. 24082 (TARGET_CHAR_AND_LENGTH): New macro.
24073 (re_match_2_internal): In emacs, set the locale variable multibyte 24083 (re_match_2_internal): In emacs, set the locale variable multibyte
24074 to 1, otherwise to 0. New local variable target_multibyte. Check 24084 to 1, otherwise to 0. New local variable target_multibyte.
24075 it to decide the multibyteness of STR1 and STR2. Use 24085 Check it to decide the multibyteness of STR1 and STR2.
24076 TARGET_CHAR_AND_LENGTH to fetch a character from D. 24086 Use TARGET_CHAR_AND_LENGTH to fetch a character from D.
24077 <charset, charset_not>: If multibyte is nonzero, check fastmap 24087 <charset, charset_not>: If multibyte is nonzero, check fastmap
24078 only for ASCII chars. Call bcmp_translate with 24088 only for ASCII chars. Call bcmp_translate with
24079 target_multibyte, not with multibyte. 24089 target_multibyte, not with multibyte.
24080 <begline>: Declare the local variable C as `unsigned'. 24090 <begline>: Declare the local variable C as `unsigned'.
24081 (bcmp_translate): Change the last arg name to target_multibyte. 24091 (bcmp_translate): Change the last arg name to target_multibyte.
24279 of Fset_buffer_multibyte. 24289 of Fset_buffer_multibyte.
24280 (encode_coding_raw_text): Increment p0 in the loop. 24290 (encode_coding_raw_text): Increment p0 in the loop.
24281 24291
24282 * lisp.h (Fset_buffer_multibyte): Adjust prototype. 24292 * lisp.h (Fset_buffer_multibyte): Adjust prototype.
24283 24293
24284 * xdisp.c (setup_echo_area_for_printing, set_message_1): Adjust 24294 * xdisp.c (setup_echo_area_for_printing, set_message_1):
24285 for the change of Fset_buffer_multibyte. 24295 Adjust for the change of Fset_buffer_multibyte.
24286 24296
24287 * fns.c (Fstring_to_multibyte): New function. 24297 * fns.c (Fstring_to_multibyte): New function.
24288 (syms_of_fns): Declare Fstring_to_multibyte as Lisp subroutine. 24298 (syms_of_fns): Declare Fstring_to_multibyte as Lisp subroutine.
24289 24299
24290 2008-02-01 Dave Love <fx@gnu.org> 24300 2008-02-01 Dave Love <fx@gnu.org>
24375 (fs_load_font): New arg CHARSET_ID. Don't check 24385 (fs_load_font): New arg CHARSET_ID. Don't check
24376 Vfont_encoding_alist here. 24386 Vfont_encoding_alist here.
24377 (find_font_encoding): New function. 24387 (find_font_encoding): New function.
24378 (list_fontsets): Use STRINGP, not ! NILP. 24388 (list_fontsets): Use STRINGP, not ! NILP.
24379 (accumulate_script_ranges): New function. 24389 (accumulate_script_ranges): New function.
24380 (Fset_fontset_font, Fnew_fontset, Ffontset_info): Completely 24390 (Fset_fontset_font, Fnew_fontset, Ffontset_info):
24381 re-written to handle new fontset structure. 24391 Completely re-written to handle new fontset structure.
24382 (Ffontset_font): Return a copy of element. 24392 (Ffontset_font): Return a copy of element.
24383 (syms_of_fontset): Define symbols Qprepend and Qappend. Fix 24393 (syms_of_fontset): Define symbols Qprepend and Qappend.
24384 docstring of font-encoding-alist. 24394 Fix docstring of font-encoding-alist.
24385 24395
24386 * lisp.h (CHAR_TABLE_REF): Remove unnecessary check (IDX >= 0). 24396 * lisp.h (CHAR_TABLE_REF): Remove unnecessary check (IDX >= 0).
24387 (Fset_fotset_font): Fix arguments to 5. 24397 (Fset_fotset_font): Fix arguments to 5.
24388 24398
24389 * msdos.c (XMenuActivate): Adjust for the change of lookup_derived_face. 24399 * msdos.c (XMenuActivate): Adjust for the change of lookup_derived_face.
24469 (syms_of_lread): Intern and staticpro Qget_emacs_mule_file_char 24479 (syms_of_lread): Intern and staticpro Qget_emacs_mule_file_char
24470 and Qload_force_doc_strings. 24480 and Qload_force_doc_strings.
24471 24481
24472 2008-02-01 Kenichi Handa <handa@m17n.org> 24482 2008-02-01 Kenichi Handa <handa@m17n.org>
24473 24483
24474 * xdisp.c (face_before_or_after_it_pos): Call 24484 * xdisp.c (face_before_or_after_it_pos):
24475 FETCH_MULTIBYTE_CHAR with byte postion, not char position. 24485 Call FETCH_MULTIBYTE_CHAR with byte postion, not char position.
24476 24486
24477 2008-02-01 Kenichi Handa <handa@m17n.org> 24487 2008-02-01 Kenichi Handa <handa@m17n.org>
24478 24488
24479 * character.h (TRAILING_CODE_P): New macro. 24489 * character.h (TRAILING_CODE_P): New macro.
24480 (MAYBE_UNIFY_CHAR): Adjust for the change of Funify_charset. 24490 (MAYBE_UNIFY_CHAR): Adjust for the change of Funify_charset.
24498 (Fdefine_charset_internal): Increment charset_ordered_list_tick. 24508 (Fdefine_charset_internal): Increment charset_ordered_list_tick.
24499 (Funify_charset): New optional arg DEUNIFY. If it is non-nil, 24509 (Funify_charset): New optional arg DEUNIFY. If it is non-nil,
24500 deunify instead of unify a charset. 24510 deunify instead of unify a charset.
24501 (string_xstring_p): Add `const' to local variables. 24511 (string_xstring_p): Add `const' to local variables.
24502 (find_charsets_in_text): Add `const' to arguments and local variables. 24512 (find_charsets_in_text): Add `const' to arguments and local variables.
24503 (encode_char): Adjust for the change of Funify_charset. Fix 24513 (encode_char): Adjust for the change of Funify_charset.
24504 detecting of invalid code. 24514 Fix detecting of invalid code.
24505 (Fset_charset_priority): Increment charset_ordered_list_tick. 24515 (Fset_charset_priority): Increment charset_ordered_list_tick.
24506 (Fmap_charset_chars): Fix handling of default value for FROM_CODE 24516 (Fmap_charset_chars): Fix handling of default value for FROM_CODE
24507 and TO_CODE. 24517 and TO_CODE.
24508 24518
24509 * coding.c (LEADING_CODE_PRIVATE_11, LEADING_CODE_PRIVATE_12) 24519 * coding.c (LEADING_CODE_PRIVATE_11, LEADING_CODE_PRIVATE_12)
24532 24542
24533 * coding.c (adjust_coding_eol_type): Fix eol_type/eol_seen mixup. 24543 * coding.c (adjust_coding_eol_type): Fix eol_type/eol_seen mixup.
24534 24544
24535 2008-02-01 Dave Love <fx@gnu.org> 24545 2008-02-01 Dave Love <fx@gnu.org>
24536 24546
24537 * casetab.c (init_casetab_once, init_casetab_once): Fix 24547 * casetab.c (init_casetab_once, init_casetab_once):
24538 CHAR_TABLE_SET call. 24548 Fix CHAR_TABLE_SET call.
24539 24549
24540 * category.c (Fmodify_category_entry): Fix CATEGORY_MEMBER call. 24550 * category.c (Fmodify_category_entry): Fix CATEGORY_MEMBER call.
24541 24551
24542 * character.c (syms_of_character): Fix CHAR_TABLE_SET call. 24552 * character.c (syms_of_character): Fix CHAR_TABLE_SET call.
24543 24553
24608 (Fload): Maybe use load-with-code-conversion. 24618 (Fload): Maybe use load-with-code-conversion.
24609 24619
24610 2008-02-01 Kenichi Handa <handa@m17n.org> 24620 2008-02-01 Kenichi Handa <handa@m17n.org>
24611 24621
24612 * category.c (Fmodify_category_entry): Don't modify the contents 24622 * category.c (Fmodify_category_entry): Don't modify the contents
24613 of category_set for characters out of the range. Avoid 24623 of category_set for characters out of the range.
24614 unnecessary modification. 24624 Avoid unnecessary modification.
24615 24625
24616 * character.h (MAYBE_UNIFY_CHAR): Adjust for the change of 24626 * character.h (MAYBE_UNIFY_CHAR): Adjust for the change of
24617 Vchar_unify_table. The default value of the table is now nil. 24627 Vchar_unify_table. The default value of the table is now nil.
24618 24628
24619 * character.c (syms_of_character): Setup Vchar_width_table for 24629 * character.c (syms_of_character): Setup Vchar_width_table for
24620 eight-bit-control and raw-byte chars. 24630 eight-bit-control and raw-byte chars.
24621 24631
24622 * charset.h (enum define_charset_arg_index): Delete 24632 * charset.h (enum define_charset_arg_index):
24623 charset_arg_parents and add charset_arg_subset and 24633 Delete charset_arg_parents and add charset_arg_subset and
24624 charset_arg_superset. 24634 charset_arg_superset.
24625 (enum charset_attr_index): Delete charset_parents and add 24635 (enum charset_attr_index): Delete charset_parents and add
24626 charset_subset and charset_superset. 24636 charset_subset and charset_superset.
24627 (enum charset_method): Delete CHARSET_METHOD_INHERIT and add 24637 (enum charset_method): Delete CHARSET_METHOD_INHERIT and add
24628 CHARSET_METHOD_SUBSET and CHARSET_METHOD_SUPERSET. 24638 CHARSET_METHOD_SUBSET and CHARSET_METHOD_SUPERSET.
24634 (CHAR_CHARSET_P): Adjust for the change of encoder format. 24644 (CHAR_CHARSET_P): Adjust for the change of encoder format.
24635 (map_charset_chars): Extern it. 24645 (map_charset_chars): Extern it.
24636 24646
24637 * charset.c (load_charset_map): Set the default value of encoder 24647 * charset.c (load_charset_map): Set the default value of encoder
24638 and deunifier char-tables to nil. 24648 and deunifier char-tables to nil.
24639 (map_charset_chars): Change argument. Change callers. Use 24649 (map_charset_chars): Change argument. Change callers.
24640 map_char_table_for_charset instead of map_char_table. 24650 Use map_char_table_for_charset instead of map_char_table.
24641 (Fmap_charset_chars): New optional args from_code and to_code. 24651 (Fmap_charset_chars): New optional args from_code and to_code.
24642 (Fdefine_charset_internal): Adjust for the change of 24652 (Fdefine_charset_internal): Adjust for the change of
24643 `define-charset' (:parents -> :subset or :superset). 24653 `define-charset' (:parents -> :subset or :superset).
24644 (charset_work): New variable. 24654 (charset_work): New variable.
24645 (encode_char, syms_of_charset): Adjust for the change of 24655 (encode_char, syms_of_charset): Adjust for the change of
24646 Fdefine_charset_internal. 24656 Fdefine_charset_internal.
24647 (Ffind_charset_string): Setup the vector `charsets' correctly. 24657 (Ffind_charset_string): Setup the vector `charsets' correctly.
24648 24658
24649 * chartab.c (sub_char_table_ref_and_range): New arg default. Fix 24659 * chartab.c (sub_char_table_ref_and_range): New arg default.
24650 the previous change. 24660 Fix the previous change.
24651 (char_table_ref_and_range): Adjust for the above change. 24661 (char_table_ref_and_range): Adjust for the above change.
24652 (map_sub_char_table_for_charset): New function. 24662 (map_sub_char_table_for_charset): New function.
24653 (map_char_table_for_charset): New function. 24663 (map_char_table_for_charset): New function.
24654 24664
24655 * keymap.c (describe_vector): Handle a char-table directly here. 24665 * keymap.c (describe_vector): Handle a char-table directly here.
24788 `charset_attr_charset_valids' element of coding attributes. 24798 `charset_attr_charset_valids' element of coding attributes.
24789 24799
24790 2008-02-01 Kenichi Handa <handa@m17n.org> 24800 2008-02-01 Kenichi Handa <handa@m17n.org>
24791 24801
24792 * coding.c (ONE_MORE_BYTE_NO_CHECK): Increment consumed_chars. 24802 * coding.c (ONE_MORE_BYTE_NO_CHECK): Increment consumed_chars.
24793 (emacs_mule_char): New arg src. Delete arg `composition'. Change 24803 (emacs_mule_char): New arg src. Delete arg `composition'.
24794 caller. Handle 2-byte and 3-byte charsets correctly. 24804 Change caller. Handle 2-byte and 3-byte charsets correctly.
24795 (DECODE_EMACS_MULE_COMPOSITION_RULE_20): Rename from 24805 (DECODE_EMACS_MULE_COMPOSITION_RULE_20): Rename from
24796 DECODE_EMACS_MULE_COMPOSITION_RULE. Change caller. 24806 DECODE_EMACS_MULE_COMPOSITION_RULE. Change caller.
24797 (DECODE_EMACS_MULE_COMPOSITION_RULE_21): New macro. 24807 (DECODE_EMACS_MULE_COMPOSITION_RULE_21): New macro.
24798 (DECODE_EMACS_MULE_21_COMPOSITION): Call 24808 (DECODE_EMACS_MULE_21_COMPOSITION): Call
24799 DECODE_EMACS_MULE_COMPOSITION_RULE_21. Produce correct annotation 24809 DECODE_EMACS_MULE_COMPOSITION_RULE_21. Produce correct annotation
24834 (face_for_char, Fset_fontset_font, Ffontset_info): Remove unused 24844 (face_for_char, Fset_fontset_font, Ffontset_info): Remove unused
24835 variables. 24845 variables.
24836 24846
24837 * character.h (string_escape_byte8): Declare. 24847 * character.h (string_escape_byte8): Declare.
24838 24848
24839 * charset.c (load_charset_map, load_charset_map_from_file): Remove 24849 * charset.c (load_charset_map, load_charset_map_from_file):
24840 unused vars. 24850 Remove unused vars.
24841 (Fdefine_charset_internal, Fsplit_char, syms_of_charset) 24851 (Fdefine_charset_internal, Fsplit_char, syms_of_charset)
24842 (Fmap_charset_chars): Doc fix. 24852 (Fmap_charset_chars): Doc fix.
24843 24853
24844 * coding.c (Vchar_coding_system_table, Qchar_coding_system): Remove. 24854 * coding.c (Vchar_coding_system_table, Qchar_coding_system): Remove.
24845 (Fset_coding_system_priority, Fset_coding_system_priority) 24855 (Fset_coding_system_priority, Fset_coding_system_priority)
24906 * charset.h (struct charset): New member `code_space_mask'. 24916 * charset.h (struct charset): New member `code_space_mask'.
24907 24917
24908 * coding.c (coding_set_source): Delete the local variable beg_byte. 24918 * coding.c (coding_set_source): Delete the local variable beg_byte.
24909 (encode_coding_charset, Fdefine_coding_system_internal): 24919 (encode_coding_charset, Fdefine_coding_system_internal):
24910 Delete the local variable charset. 24920 Delete the local variable charset.
24911 (Fdefine_coding_system_internal): Setup 24921 (Fdefine_coding_system_internal):
24912 attrs[coding_attr_charset_valids] correctly. 24922 Setup attrs[coding_attr_charset_valids] correctly.
24913 24923
24914 * charset.c (CODE_POINT_TO_INDEX): Utilize `code_space_mask' 24924 * charset.c (CODE_POINT_TO_INDEX): Utilize `code_space_mask'
24915 member to check if CODE is valid or not. 24925 member to check if CODE is valid or not.
24916 (Fdefine_charset_internal): Initialize `code_space_mask' member. 24926 (Fdefine_charset_internal): Initialize `code_space_mask' member.
24917 (encode_char): Before calling CODE_POINT_TO_INDEX, check if CODE 24927 (encode_char): Before calling CODE_POINT_TO_INDEX, check if CODE
24929 (Fset_terminal_coding_system_internal) 24939 (Fset_terminal_coding_system_internal)
24930 (Fset_safe_terminal_coding_system_internal): Fix arg declarations. 24940 (Fset_safe_terminal_coding_system_internal): Fix arg declarations.
24931 24941
24932 2008-02-01 Kenichi Handa <handa@m17n.org> 24942 2008-02-01 Kenichi Handa <handa@m17n.org>
24933 24943
24934 * coding.c (decode_coding_charset, encode_coding_charset): Handle 24944 * coding.c (decode_coding_charset, encode_coding_charset):
24935 multiple charsets correctly. 24945 Handle multiple charsets correctly.
24936 24946
24937 2008-02-01 Kenichi Handa <handa@m17n.org> 24947 2008-02-01 Kenichi Handa <handa@m17n.org>
24938 24948
24939 * search.c (boyer_moore): Fix handling of multibyte character 24949 * search.c (boyer_moore): Fix handling of multibyte character
24940 translation. 24950 translation.