X-Git-Url: http://git.chise.org/gitweb/?a=blobdiff_plain;f=src%2FChangeLog;h=877bfd78025a4db048caaa45b66c9de342f2ad62;hb=f1aad8f0759688ade29a34cc45b81c843dc29413;hp=ee5cc1473e67e02aaecf87315c58988f9e5937aa;hpb=0788ea9c9a734c01813ea152d2d0e6b8551d328a;p=m17n%2Fm17n-lib.git diff --git a/src/ChangeLog b/src/ChangeLog index ee5cc14..877bfd7 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -1,6 +1,777 @@ +2006-10-27 Kenichi Handa + + * input.c (marker_code): New arg surrounding. Callers changed. + (surrounding_pos): Check if name[0] == '@'. + (integer_value): Fix for the change semantics of `@-N' and `@+N'. + (take_action_list): Likewise. + (get_preceding_char): If POS is zero, always call + get_surrounding_text. + +2006-10-19 Kenichi Handa + + * input.c (load_variables): Fix setting of `global'. + +2006-10-16 Kenichi Handa + + * draw.c (draw_background): Be sure to set *to_x. + (render_glyph_string): If from == to, just return. + +2006-10-18 Kenichi Handa + + * database.c (get_dir_info): Return NULL if the directory name is + too long. + (register_databases_in_files): Call register_database with + MDB_STATUS_AUTO. + (mdatabase__update): Fix logic. Call register_database with + MDB_STATUS_AUTO. + (mdatabase_define): Call register_database with + MDB_STATUS_EXPLICIT. + + * input.c (delete_surrounding_text): Be sure to set members + preceding_text and following_text to NULL. + (shift_state): Save variable values in ic_info->vars_saved. + (preedit_commit): Don't print debug information here. Don't + change ic_info->keys here. + (get_candidate_list): Don't ref plist. + (take_action_list): Don't unref return value of + get_candidate_list. For undo, reset ic->produced and recover + ic_info->vars. Be sure to set ic->candidate_list to NULL after + unref it. + (init_ic_info): Set ic_info->vars_saved. + (fini_ic_info): Unref ic_info->vars_saved. + (re_init_ic): Be sure to set ic->candidate_list to NULL after + unref it. + (filter): Be sure to set members preceding_text and following_text + to NULL. Print debug information about produced text. Delete + processed keys from ic_info->keys. + + * input.h (MInputContextInfo): New member vars_saved. + +2006-10-16 Kenichi Handa + + * database.c (mdatabase__update): Fix the way to get db_info. + +2006-10-02 Kenichi Handa + + * font.h (struct MFont): New member `multiple_sizes'. Bit-size of + `size' changed to 24. + + * font.c (xlfd_unparse_name): Adjusted for the change of + MFont->size. + (font_score): Likewise. + (mfont__set_spec_from_face): Set spec->multiple_sizes to 0. + + * m17n-X.c (MFontX, _MFontX): Deleted. + (SET_SIZE, HAVE_SIZE): Deleted. + (free_display_info): Adjusted for the change of + disp_info->font_list format. + (xfont_registry_list): Likewise. + (xfont_open): Likewise. + (xfont_list): Likewise. + (xfont_encode_char): Ignore size to find a realized font. + (MRealizedFontXft): Change the order of members to make it + compatible with MRealizedFontFT. + +2006-09-27 Kenichi Handa + + * font.c (mfont_match_p, mfont_open, mfont_encapsulate) + (mfont_close): Add comments. + + * mtext-lbrk.c (mtext_line_break): Add comment. + +2006-09-26 Kenichi Handa + + * input.c (minput_get_description): Handle description about + inclusion-only input methods. + +2006-09-21 Kenichi Handa + + * input.c (M_gettext): New variable. + (fully_initialize): Initialize M_gettext. + (check_description): New function. + (load_commands): Call check_description. + (config_all_commands): Be sure to unref pl. + (load_variables): Call check_description. + (config_all_variables): Be sure to unref pl. + (load_im_info): Call check_description. + + * internal.h [ENABLE_NLS]: Include and define _. + + * m17n-core.c (m17n_init_core) [ENABLE_NLS]: Call bindtextdoman + and bind_textdomain_codeset. + + * Makefile.am (AM_CPPFLAGS): Add -DGETTEXTDIR=... + +2006-09-15 Kenichi Handa + + * input.c (reload_im_info): Update custom and global info. + (init_ic_info): Fix previous change. + +2006-09-14 Kenichi Handa + + * database.c: Include . + (mdatabase__lock): Make a directory if necessary. + + * input.c (resolve_command): Adjusted for the format change of + configured_cmds member. + (load_commands, load_variables): Fix for errornous data handling. + (config_command, config_variable): New function. + (config_all_commands, config_all_variables): Renamed from + config_commands and config_variables. Utilize the above function. + (check_variable_value): Argument changed. Callers changed. + (load_im_info): Call config_all_commands and config_all_variables. + (init_ic_info): Adjusted for the format change of configured_vars + member. + (minput__init): Initialize Mcustomized, Mconfigured, and + Minherited. + (Mcustomized, Mconfigured, Minherited): New variables. + (minput_get_command): Be sure to return NULL if an input method + use no local command. + (minput_get_variable): Be sure to return NULL if an input method + use no local variable. + (minput_config_command, minput_config_variable) + (minput_save_config): Adjusted for the format change of + configured_cmds and configured_vars members. + + * plist.c (write_element): Delete superfluous ':'. + +2006-09-13 Kenichi Handa + + * m17n.h (Minherited, Mcustomized, Mconfigured): Extern them. + (minput_config_file): Extern it. + + * draw.c (Minherited): Declaration moved to input.c. + (mdraw__init): Don't initialize Minherited here. + + * database.c (mdatabase__unlock): Be sure to unlink uniq file. + +2006-09-07 Kenichi Handa + + * textprop.c (mtext_serialize): Call mplist__serialize with the + arg pretty 0. + + * plist.h (mplist__serialize): Prototype adjusted. + (mplist__assq): Extern it. + + * plist.c: Include + (PUTC, PUTS): New macros. + (write_symbol): New function. + (write_element): New arg indent. + (dump_string, dump_plist_element): Delete them. + (mplist__from_string): New arg pretty. + (mplist__assq): New function. + (mdebug_dump_plist): Use write_element. + + * mtext.c (mtext_cat_char): Allocate more memory. + (mdebug_dump_mtext): Don't escal a newline character. + + * m17n.h (minput_get_command, minput_get_variable) + (minput_config_command, minput_config_variable) + (minput_save_config): Extern them. + + * m17n-core.c: Include . + (m17n_init_core): If the env. var. MDEBUG_OUTPUT_FILE is "stdout", + use the stream stdout instead of a file of that name. + + * m17n-X.c (mwin__parse_event): Fix handling of Shift and Control + modifiers. + + * internal.h (MFAILP, MDEBUG_PRINT0): New macros. + (MDEBUG_PRINT, MDEBUG_PRINT1, MDEBUG_PRINT2, MDEBUG_PRINT3) + (MDEBUG_PRINT4, MDEBUG_PRINT5): Use MDEBUG_PRINT0. + (MDEBUG_DUMP): Flush the stream. + + * input.h (struct _MInputMethodInfo): Delete member im. New + members mdb, language, name, extra, cmds, configured_cmds, + bc_cmds, vars, configured_vars, bc_vars, description, and tick. + (MInputContextInfo): New member tick. + + * input.c: Big change to improve user-side input method + customization. Here, list just public API changes. + (minput_get_commands, minput_get_variables) + (minput_assign_command_keys, minput_set_variable): Label them + obsolete. + (minput_get_command, minput_get_variable) + (minput_config_command, minput_config_variable) + (minput_save_config): New functions. + + * database.h (PATH_MAX): Define it if not yet defined. + (PATH_SEPARATOR): Likewise. + (enum MDatabaseStatus): New enum. + (struct MDatabaseInfo): Moved from database.c. New members status, + time, lock_file, and uniq_file. + (mdatabase__update, mdatabase__file, mdatabase__lock, mdatabase__save) + (mdatabase__unlock): Extern them. + + * database.c: Include . + (MDB_DIR_LEN): Don't include the terminating '\0' in the length. + (GEN_PATH): Args changed. Callers changed. + (struct MDatabaseInfo): Moved to database.h. + (struct MDatabase, mdb_list): Deleted. + (mdatabase__list): New var. + (get_database_filename): Deleted. Callers changed to use + get_database_file. + (find_file, get_database_file): New files. + (get_dir_info): Initialize new members of MDatabaseInfo. + (find_database): Arg chagnded. Callers changed. + (free_db_info, register_database, register_databases_in_files): + New functions. + (update_database_list): Deleted. + (mdatabase__init): Initialize mdatabase__list instead of mdb_list. + (mdatabase__fini): Finalize mdatabase__list instead of mdb_list. + (mdatabase__update): New function. + (mdatabase__check): Return value changed. + (mdatabase__file, mdatabase__lock, mdatabase__save) + (mdatabase__unlock): New functions. + +2006-08-30 TAKAHASHI Naoto + + * input.c (get_surrounding_text): Return -2 when surrounding text + is unavailable. + (get_following_char): Likewise. + (get_preceding_char): Likewise. + (minput__callback): Return 0 if there is a callback function, + otherwise -1. + +2006-08-17 Kenichi Handa + + * input.c (reset_ic): Use shift_state to setup the current state. + +2006-08-02 Theppitak Karoonboonyanan (tiny change) + + * Makefile.am (libm17n_la_LIBADD, libm17n_gui_la_LIBADD) + (libm17n_X_la_LIBADD, libm17n_gd_la_LIBADD, linkcore_LDADD) + (linkshell_LDADD, linkgui_LDADD): Use ${top_builddir}. + +2006-08-02 Kenichi Handa + + * plist.c (mdebug_dump_plist): Fix the 2nd arg to dump_plist_element. + + * mtext.c (mdebug_dump_mtext): If not fullp, dump just text. + + * font-ft.c (ft_encapsulate): Add code for debugging. + (mfont__ft_drive_otf): Be sure to encode character before getting + metrics. + +2006-07-21 Kenichi Handa + + * draw.c (mdraw_text_extents): Fix previous typo. + +2006-07-19 Kenichi Handa + + * draw.c (gstring_width): New arg lbearing. + (render_glyph_string): Adjusted for the change of gstring_width. + (mdraw_text_extents): Fix lbearing of ink and line metrics. + + * m17n-core.h (Mlanguage): Extern it. + + * m17n.h (Mlanguage): Extern deleted. + + * mtext.c (mtext__init): Initialize Mlanguage. + (Mlanguage): Declaration moved from locale.c + + * locale.c (mlocale__init): Don't initialize Mlanguage here. + (Mlanguage): Declaration moved to mtext.c. + + * language.c (mlang__init): Don't initialize Mlanguage here. + + * font.c (OTF_tag_name) [! HAVE_OTF]: New function. + +2006-07-14 Kenichi Handa + + * font-ft.c: Use FT_BDF_H macro. Include fontconfig/fcfreetype.h. + (MRealizedFontFT): New member face_encapsulated. + (free_ft_rfont): Pay attention to ft_rfont->face_encapsulated. + (ft_gen_font): New function. + (ft_add_font): Use ft_gen_font. + (ft_list_script): Store lists in ft_script_list. + (ft_check_otf): New arg ft_face. Caller changed. + (ft_check_language): Likewise. + (ft_check_script): Likewise. + (ft_encapsulate, ft_close): New functions. + (mfont__ft_driver): Initialize members encapsulate and close. + (mfont__ft_drive_otf): Use OTF_open_ft_face if it is available. + + * font.h (struct MRealizedFont): New member encapsulating. + (struct MFontDriver): New members encapsulate and close. + + * font.c (mfont__match_p): If FONT is realized, check capability + by font drivers's check_capability method. + (mfont_match_p, mfont_open, mfont_encapsulate, mfont_close): New + functions. + + * m17n-X.c (xfont_list_family_names): Delete unused var. Fix + declarations of foundry and fam local vars. + (xft_driver): Make it static. + + * m17n-gui.h (mfont_match_p, mfont_open, mfont_encapsulate) + (mfont_close): Extern them. + + * m17n-gd.c (device_open): Don't specify foundry and family of the + default face. + +2006-07-11 Kenichi Handa + + * m17n-gui.c (m17n_fini_win): Set null_interface.handle to NULL; + +2006-07-13 Kenichi Handa + + * font-ft.c (fc_build_charset): Return NULL if FcCharSet can't be + created. + (ft_check_script): Delete unused var. + (ft_list_capability): Likewise. + + * font.c (mfont__get_capability): Setup cap->otf. + (Motf): Make it global. + (mfont_get_prop): Accept Mlanguage, Mscript, and Motf as key arg. + + * font.h (MFontCapability): New member otf. + + * language.c (mlang__fini): Delete unused vars. + + * m17n-gui.h (Motf): Extern it. + + * database.c (update_database_list): Delete unused vars. + +2006-07-07 Kenichi Handa + + * font-ft.c (DEVICE_DELTA): Fix typo. + +2006-07-06 Kenichi Handa + + * fontset.c (mfont__lookup_fontset): Don't ignore family and + foundry of face. + +2006-07-05 TAKAHASHI Naoto + + * database.c: Update comments. + +2006-07-05 Kenichi Handa + + * database.c (PATH_MAX): Define it if not yet defined. + (PATH_SEPARATOR, USE_GEN_PATH, GEN_PATH, GEN_PATH_FROM_MT): New + macros. + (get_database_filename): Use GEN_PATH. + (get_dir_info): Don't include the last '/' in directory name. + (register_database): New function. + (update_database_list): Use register_database. Search all + directories in mdatabase__dir_list for wildcard databases. + (mdatabase__init): Check "~/.m17n.d". + +2006-07-03 Kenichi Handa + + * input-gui.c (win_callback): If is ic->candidate_show zero, don't + push reverse property. + + * plist.c (dump_plist_element): Fix previous change. + +2006-06-28 Kenichi Handa + + * font.c (xlfd_unparse_name): Suppress the heading '-' if not + necessary. + + * draw.c (MbidiNSM): New variable. + (visual_order) [! HAVE_FRIBIDI]: Clear levels at first. Pay + attention to bidi type NSM. + (mdraw__init): Initialize MbibiNSM. + + * language.c (mscript__char_list): Fix finding a char-list element. + + * plist.c (dump_string): Return number of printed characters. + (dump_plist_element): Print elements more compactly. + +2006-06-23 Kenichi Handa + + * Makefile.am (BUILD_LIBS): Don't increment it conditionally. + (include_HEADERS): Likewise. + +2006-06-23 TAKAHASHI Naoto + + * language.c: Update documentation. + +2006-06-23 Kenichi Handa + + * font-ft.c (struct MFontFT): Delete member lang. + (free_ft_info): Don't unref member lang. Destroy members langset + and charset. + (fc_parse_pattern): Last argument changed to MFontFT *. Callers + changed. Set members langset and charset. + (fc_init_font_list, fc_list_pattern, fc_build_charset): New + functions. + (ft_init_font_list, ft_has_char_list_p, ft_list_char_list): New + functions. + (ft_list_family) [HAVE_FONTCONFIG]: Include FC_CHARSET on objset. + (ft_list_family) [! HAVE_FONTCONFIG]: Call ft_init_font_list. + (ft_list_language) [HAVE_FONTCONFIG]: Check representative + characters at first. If it fails, try listing by language names. + (ft_list_language) [! HAVE_FONTCONFIG]: Call ft_list_char_list. + (ft_check_language): Renamed from ft_check_lang. Adjusted for the + change of MFontCapability. + (ft_list_capability): Likewise. Try listing by languages, then by + scripts. Check OTF at last. + (ft_check_script): New function. + (ft_select): Adjusted for the check of MFontCapability. + (ft_list_family_names): New function. + (ft_check_capability): If cap->script is not Mnil, call + ft_check_script. + (mfont__ft_driver): Initialize with ft_list_family_names. + + * font.h (struct MFontDriver): New member list_fmaily_names. + (struct): Change member "MSymbol *lang" to "MSymbol language". + + * font.c: Include "language.h". + (Motf): New variable. + (otf_script_list, load_otf_script_list): Delete it. + (find_script_from_otf_tag): Delete it. + (merge_capability): New function. + (mfont__init): Init Motf. + (mfont__fini): Don't unref otf_script_list. + (free_font_capability): Check cap->script_tag to determine if + OTF-related capability is set. + (mfont__get_capability): Call mscript__from_otf_tag. Adjusted for + the change of type MFontCapability. + (mfont_put_prop): Call merge_capability for Mlanguage, Mscript, + and Motf properties. + (mfont_list): Call merge_capability for LANGUAGE arg. + (mfont_list_family_names): New function. + + * input-gui.c: Typo in comments fixed. + + * input.c: Typo in comments fixed. + + * language.h (mlanguage__list): Delete it. + (mscript__char_list, mscript__otf_tag, mscript__from_otf_tag): New + functions. + + * language.c: Include "mtext.h". + (M_script_lang_list): Delete it. + (language_list, script_list): New variables. + (load_lang_script_list, init_language_list, init_script_list): New + functions. + (mlang__init): Don't load language database here. + (mlang__fini): Unref language_list and script_list if not NULL. + (mlanguage__list): Delete it. + (mlanguage__info, mscript__info, mscript__char_list) + (mscript__otf_tag, mscript__from_otf_tag): New functions. + (mlanguage_list, mlanguage_code, mlanguage_name, mlanguage_text) + (mscript_list, mscript_language_list): New functions. + + * m17n-gui.h (mfont_list_family_names): Extern it. + + * m17n.h (mlanguage_list, mlanguage_code, mlanguage_name) + (mlanguage_text, mscript_list, mscript_language_list): Extern + them. + +2006-06-21 Kenichi Handa + + * m17n-X.c (xfont_driver): Initialize with + xfont_list_family_names. + (xfont_list_family_names): New function. + (xft_driver): Initialize with NULL for list_family_names member. + (device_init): Set list_family_names member of xft_driver to that + of mfont__ft_driver. + +2006-06-06 Kenichi Handa + + * fontset.c (mfont__lookup_fontset): Don't set *num to 1 if it is 0. + +2006-03-24 Kenichi Handa + + * font-ft.c (ft_open): Improve debug message. + + * fontset.c (mfontset__get_font): Fix for the case that no font in + per_script list is available. + +2006-02-06 Kenichi Handa + + * Version 1.3.3 released. + +2006-02-22 Kenichi Handa + + * textprop.c: Fix some typos in documentation. + + * plist.c: Fix some typos in documentation. + + * m17n-core.h: Fix some typos in documentation. + (M17NLIB_PATCH_LEVEL): Updated to 3. + (M17NLIB_VERSION_NAME): Updated to "1.3.3". + + * symbol.c: Fix some typos in documentation. + + * mtext.c: Fix some typos in documentation. + + * input.c: Fix several typos in documentation. + +2006-02-06 Kenichi Handa + + * Version 1.3.2 released. + +2006-02-03 Kenichi Handa + + * m17n-core.h (M17NLIB_PATCH_LEVEL): Updated to 2. + (M17NLIB_VERSION_NAME): Updated to "1.3.2". + + * font.c (xlfd_parse_name): Fix handling of the name "nil". + + * draw.c (layout_glyphs): Fix handling left_padding of + composition's base. + + * m17n-gd.c (read_rgb_txt): Support HTML 4.0 color names. + +2006-02-02 Kenichi Handa + + * Makefile.am (include_HEADERS): Add m17n-gui.h and m17n-X.h only + if WITH_GUI is true. + +2006-01-25 Kenichi Handa + + * input.c (resolve_expression): If the value of PLIST is a plist, + but the first element is not symbol, return 0. + +2006-01-17 Kenichi Handa + + * m17n-gd.c (gd_render): Use gdImageColorResolveAlpha only if + HAVE_GD is 2 or the greater. + +2006-01-16 Kenichi Handa + + * Version 1.3.1 released. + +2006-01-16 Kenichi Handa + + * m17n-gd.c (gd_render): Use gdImageColorResolveAlpha instead of + simulating anti-aliasing. + + * m17n-core.h (M17NLIB_PATCH_LEVEL): Updated to 1. + (M17NLIB_VERSION_NAME): Updated to "1.3.1". + +2006-01-12 Kenichi Handa + + * input.c (get_surrounding_text): Always pop ic->plist. + (reset_ic): Don't reset ic->plist. + +2006-01-10 Kenichi Handa + + * input.c (preedit_commit): For debugging, print only commiting + charactes. Don't set ic->candidate_show to 0. + (handle_key): Don't run branch-actions just by shifting to the + current state. + (reset_ic): Reset state_key_head and key_head of ic_info to 0. + Reset vars and plist. + +2006-01-07 Kenichi Handa + + * input.c (load_branch): Confirm that maps is not NULL. + +2006-01-05 Kenichi Handa + + * input-gui.c (win_filter): Try to convert arg to key only when + arg is not NULL. + + * plist.c (read_integer_element): If '#' and '-' are followed by + non-integer-constituent, read them as a part of a symbol. + (read_symbol_element): New arg C. + (read_element): Adjust args to read_symbol_element. + + * input.c (load_macros): On overwriting a macro, free the old + definition. + (minput__init): Store Mmap in load_im_info_keys. + (minput_get_title_icon): If the input method has no title, be sure + to return NULL. + (minput_get_description): If the input method has no description, + be sure to return NULL. + (minput_get_variables): Fix documentation. + (handle_key): Pay attention to the case that key is Mnil. + (filter): Likewise. Fix handling of such symbol as S-A. + +2005-12-22 Kenichi Handa + + * Version 1.3.0 released. + +2005-12-22 Kenichi Handa + + * font-ft.c (ft_list): If the specified font has no property, + return all fonts. + +2005-12-20 Kenichi Handa + + * character.c (mchar_get_prop): Check char_prop_list. + (mchar_put_prop, mchar_get_prop_table): Likewise. + +2005-12-18 Kenichi Handa + + * input.c (minput_get_title_icon): If LANGUAGE is Mt, try also a + file name sans language. + +2005-12-16 TAKAHASHI Naoto + + * input.c: Fix typo in comments. + +2005-12-14 Kenichi Handa + + * input.c (minput_get_title_icon): Check the default icon for the + input method. + +2005-12-13 Kenichi Handa + + * input.c (Mless_equal, Mgreater_equal): New variables. + (parse_expression, resolve_expression, parse_action_list) + (take_action_list): Handle the aboves. + (filter): Treat key S-X as X. + (minput__init): Initialize Mless_equal and Mgreater_equal. + (minput_get_title_icon): New function. + + * m17n.h (minput_get_title_icon): Extern it. + + * database.c (get_database_filename): Return a filename instead of + file pointer. + (load_database): Adjusted for the above change. + (mdatabase__load_for_keys): Likewise. + (mdatabase__find_file): New function. + + * database.h (mdatabase__find_file): Extern it. + + * font.h (mfont__resize): Delete extern. + + * font.c (mfont__list): Check resize ratio. + (mfont__resize): Delete it. + (mfont_resize_ratio): Include the code of mfont__resize. + + * font-ft.c (ft_open): Check resize ratio. + + * m17n-X.c (xfont_open): Check resize ratio. + (xft_open): Likewise. + +2005-12-07 Kenichi Handa + + * input.c (take_action_list): If take_action_list return -1, + return -1. + (handle_key): Likewise. + + * face.c (mface__for_chars): When font is specified and layouter + is found for it, if the layouter doesn't support one of a + character, use a face sans layouter for it. + +2005-12-06 Kenichi Handa + + * fontset.c (mfont__lookup_fontset): If only a fallback font is + found, don't use it for more than one character. + +2005-12-05 Kenichi Handa + + * face.c (mface__realize): Set rfont->layouter to Mnil. + (mface__for_chars): Fix handling of layouter. + + * character.h (mchar__define_prop): Extern it. + + * database.c (update_database_list): Call mchar__define_prop if + necessary. + + * character.c (mchar__init): Don't call mchar_define_property. + Instead just initialize property keys. + (mchar__fini): Free char_prop_list only if it's not NULL. + (mchar__define_prop): New function. + (mchar_define_property): Call mchar__define_prop. + + * m17n-core.c (m17n_fini_core): Call mtext__prop_fini at after + mplist__fini. + +2005-12-02 Kenichi Handa + + * language.c (mlang__init): Handle extra chars. + + * m17n-gui.h (mfont_check): Adjust prototype. + + * m17n-X.c (xfont_driver): Specify xfont_check_capability. + (xfont_check_capability): New function. + (xft_driver): Specify xft_check_capability. + (xft_check_capability): New function. + + * font-ft.c (M0_3): Delete it. + (M0): New variable. + (ft_get_charmaps): Refer to M0. + (fc_parse_pattern): Fix previous change. + (ft_list_language): Check also extra chars. + (ft_check_otf): Define it even if HAVE_OTF is undef. + (ft_check_lang): Check the result of FcLangSetHasLang against + FcLangDifferentLang. Check also extra chars. + (ft_list_capability): Delete ifdef HAVE_OTF. + (ft_select): Likewise. + (ft_open): Improve debug information. + (ft_check_capability): New function. + (mfont__ft_driver): Specify ft_check_capability. + (mfont__ft_init): Initialize M0. + + * fontset.c (get_font_from_group): New function. + (mfontset__get_font): New function. + + * fontset.h (mfontset__get_font): Extern it. + + * font.c (OTF_tag): Define it if HAVE_OTF is undef. + (mfont__fini): Delete ifdef HAVE_OTF. + (free_font_capability): Likewise. + (mfont__get_capability): Likewise. + (mfont__check_capability): New function. + (mfont_check): Change the order of arguments. Use + mfontset__get_font. + + * font.h (struct MFontDriver): New member check_capability. + (MFontCapability): Delete ifdef HAVE_OTF. + (mfont__check_capability): Extern it. + + * face.c (mface__realize): Fix handling of FONT arg. + (mface__for_chars): Fix handling of explicitly specified font. + +2005-11-25 Kenichi Handa + + * font-flt.c (run_command): Print debug info for + left/rigth_padding + + * draw.c (layout_glyphs): Fix handling of left/right_padding. + + * face.c (mface__for_chars): Check rfont before accessing the + members. + +2005-11-21 Kenichi Handa + + * Makefile.am (lib_LTLIBRARIES): Define it conditionaly on + WITH_GUI. + + * fontset.c (fontset_table): New variable. + (free_fontset): Call M17N_OBJECT_UNREGISTER. + (mfont__fontset_init): Add fontset_table as an object array. + (mfont__realize_fontset): Ref FONTSET. + (mfont__free_realized_fontset): Unref REALIZED->fontset. + (mfontset): Call M17N_OBJECT_REGISTER. + (mfontset_copy): Likewise. + + * input.c (handle_key): For debugging, print information about + alias key. + (filter): Add an alias for Meta and Alt modifiers. + (Mcond, Mplus, Mminus, Mstar, Mslush, Mand, Mor, Mnot): New + variables. + (minput__init): Initialize them. + (parse_expression): New function. + (resolve_expression): New function. + (parse_action_list): Handle expressions by parse_expression. + (take_action_list): Handle expressions by resolve_expression. + (parse_nested_list_value): Fix previous change. + (resolve_command): Fix handling of the return value of + get_nested_list. + 2005-11-18 Kenichi Handa + * font-ft.c (ft_check_otf, otf_script_list): Define only when + HAVE_OTF is defined. + (ft_list_capability): Call ft_check_otf only when HAVE_OTF is + defined. + (ft_select): Likewise. + * font.c (mfont_list): Fix for the case that FONT is NULL. + (OTF_tag): Delete it. + (load_otf_script_list): Define only when HAVE_OTF is defined. + (mfont__fini): Unref otf_script_list only when HAVE_OTF is + defined. * draw.c (truncate_gstring): Be sure to truncate at glapheme-cluster boundary.