m17n/m17n-lib.git
18 years ago(resolve_command): Adjusted for the format change of
handa [Thu, 14 Sep 2006 00:55:48 +0000 (00:55 +0000)]
(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.

18 years ago(write_element): Delete superfluous ':'.
handa [Thu, 14 Sep 2006 00:47:16 +0000 (00:47 +0000)]
(write_element): Delete superfluous ':'.

18 years ago(Minherited, Mcustomized, Mconfigured): Extern them.
handa [Wed, 13 Sep 2006 12:03:36 +0000 (12:03 +0000)]
(Minherited, Mcustomized, Mconfigured): Extern them.
(minput_config_file): Extern it.

18 years ago(Minherited): Declaration moved to input.c.
handa [Wed, 13 Sep 2006 11:50:49 +0000 (11:50 +0000)]
(Minherited): Declaration moved to input.c.
(mdraw__init): Don't initialize Minherited here.

18 years ago(mdatabase__unlock): Be sure to unlink uniq file.
handa [Wed, 13 Sep 2006 11:50:01 +0000 (11:50 +0000)]
(mdatabase__unlock): Be sure to unlink uniq file.

18 years ago(register_database): Be sure to initialize db_info->absolute_filename.
handa [Thu, 7 Sep 2006 10:16:42 +0000 (10:16 +0000)]
(register_database): Be sure to initialize db_info->absolute_filename.

18 years ago*** empty log message ***
handa [Thu, 7 Sep 2006 07:59:58 +0000 (07:59 +0000)]
*** empty log message ***

18 years ago(mtext_serialize): Call mplist__serialize with the
handa [Thu, 7 Sep 2006 07:59:49 +0000 (07:59 +0000)]
(mtext_serialize): Call mplist__serialize with the
arg pretty 0.

18 years ago(mplist__serialize): Prototype adjusted.
handa [Thu, 7 Sep 2006 07:59:18 +0000 (07:59 +0000)]
(mplist__serialize): Prototype adjusted.
(mplist__assq): Extern it.

18 years agoInclude <ctype.h>
handa [Thu, 7 Sep 2006 07:58:47 +0000 (07:58 +0000)]
Include <ctype.h>
(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.

18 years ago(mtext_cat_char): Allocate more memory.
handa [Thu, 7 Sep 2006 07:56:47 +0000 (07:56 +0000)]
(mtext_cat_char): Allocate more memory.
(mdebug_dump_mtext): Don't escal a newline character.

18 years ago(minput_get_command, minput_get_variable)
handa [Thu, 7 Sep 2006 07:55:40 +0000 (07:55 +0000)]
(minput_get_command, minput_get_variable)
(minput_config_command, minput_config_variable)
(minput_save_config): Extern them.

18 years agoInclude <string.h>.
handa [Thu, 7 Sep 2006 07:54:30 +0000 (07:54 +0000)]
Include <string.h>.
(m17n_init_core): If the env. var. MDEBUG_OUTPUT_FILE is "stdout",
use the stream stdout instead of a file of that name.

18 years ago(mwin__parse_event): Fix handling of Shift and Control
handa [Thu, 7 Sep 2006 07:53:11 +0000 (07:53 +0000)]
(mwin__parse_event): Fix handling of Shift and Control
modifiers.

18 years ago(MFAILP, MDEBUG_PRINT0): New macros.
handa [Thu, 7 Sep 2006 07:52:22 +0000 (07:52 +0000)]
(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.

18 years ago(struct _MInputMethodInfo): Delete member im. New
handa [Thu, 7 Sep 2006 07:51:04 +0000 (07:51 +0000)]
(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.

18 years agoBig change to improve user-side input method
handa [Thu, 7 Sep 2006 07:49:47 +0000 (07:49 +0000)]
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): New functions.

18 years ago*** empty log message ***
handa [Thu, 7 Sep 2006 07:42:22 +0000 (07:42 +0000)]
*** empty log message ***

18 years agoInclude <time.h>.
handa [Thu, 7 Sep 2006 07:40:05 +0000 (07:40 +0000)]
Include <time.h>.
(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.

18 years ago*** empty log message ***
ntakahas [Wed, 30 Aug 2006 11:08:22 +0000 (11:08 +0000)]
*** empty log message ***

18 years agoReturn -2 when surrounding text is unavailable.
ntakahas [Wed, 30 Aug 2006 10:55:20 +0000 (10:55 +0000)]
Return -2 when surrounding text is unavailable.

18 years ago(reset_ic): Fix previous change.
handa [Thu, 17 Aug 2006 12:22:58 +0000 (12:22 +0000)]
(reset_ic): Fix previous change.

18 years ago(reset_ic): Fix previous change.
handa [Thu, 17 Aug 2006 12:12:53 +0000 (12:12 +0000)]
(reset_ic): Fix previous change.

18 years ago*** empty log message ***
handa [Thu, 17 Aug 2006 12:09:07 +0000 (12:09 +0000)]
*** empty log message ***

18 years ago(reset_ic): Use shift_state to setup the current state.
handa [Thu, 17 Aug 2006 12:09:04 +0000 (12:09 +0000)]
(reset_ic): Use shift_state to setup the current state.

18 years ago(mdatabase__check): Add comment.
handa [Tue, 15 Aug 2006 00:06:42 +0000 (00:06 +0000)]
(mdatabase__check): Add comment.

18 years ago*** empty log message ***
handa [Wed, 2 Aug 2006 11:54:56 +0000 (11:54 +0000)]
*** empty log message ***

18 years ago(common_ldflags, common_ldflags_gui): Use ${top_builddir}.
handa [Wed, 2 Aug 2006 11:54:45 +0000 (11:54 +0000)]
(common_ldflags, common_ldflags_gui): Use ${top_builddir}.

18 years ago(libm17n_la_LIBADD, libm17n_gui_la_LIBADD)
handa [Wed, 2 Aug 2006 11:53:44 +0000 (11:53 +0000)]
(libm17n_la_LIBADD, libm17n_gui_la_LIBADD)
(libm17n_X_la_LIBADD, libm17n_gd_la_LIBADD, linkcore_LDADD)
(linkshell_LDADD, linkgui_LDADD): Use ${top_builddir}.

18 years ago(mdebug_dump_plist): Fix the 2nd arg to dump_plist_element.
handa [Wed, 2 Aug 2006 11:51:46 +0000 (11:51 +0000)]
(mdebug_dump_plist): Fix the 2nd arg to dump_plist_element.

18 years ago(mdebug_dump_mtext): If not fullp, dump just text.
handa [Wed, 2 Aug 2006 11:08:10 +0000 (11:08 +0000)]
(mdebug_dump_mtext): If not fullp, dump just text.

18 years ago(ft_encapsulate): Add code for debugging.
handa [Wed, 2 Aug 2006 11:07:22 +0000 (11:07 +0000)]
(ft_encapsulate): Add code for debugging.
(mfont__ft_drive_otf): Be sure to encode character before getting
metrics.

18 years ago*** empty log message ***
handa [Fri, 21 Jul 2006 11:39:35 +0000 (11:39 +0000)]
*** empty log message ***

18 years ago(mdraw_text_extents): Fix previous typo.
handa [Fri, 21 Jul 2006 11:39:31 +0000 (11:39 +0000)]
(mdraw_text_extents): Fix previous typo.

18 years ago*** empty log message ***
handa [Wed, 19 Jul 2006 12:55:31 +0000 (12:55 +0000)]
*** empty log message ***

18 years ago(gstring_width): New arg lbearing.
handa [Wed, 19 Jul 2006 12:55:28 +0000 (12:55 +0000)]
(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.

18 years ago*** empty log message ***
ntakahas [Wed, 19 Jul 2006 07:27:13 +0000 (07:27 +0000)]
*** empty log message ***

18 years agoAdd final sukun to Arabic.
ntakahas [Wed, 19 Jul 2006 07:26:00 +0000 (07:26 +0000)]
Add final sukun to Arabic.

18 years ago*** empty log message ***
handa [Wed, 19 Jul 2006 06:39:30 +0000 (06:39 +0000)]
*** empty log message ***

18 years agoCancel previous change.
handa [Wed, 19 Jul 2006 06:39:19 +0000 (06:39 +0000)]
Cancel previous change.

18 years ago*** empty log message ***
handa [Wed, 19 Jul 2006 06:13:25 +0000 (06:13 +0000)]
*** empty log message ***

18 years agoUse pkg-config if available for checking libotf.
handa [Wed, 19 Jul 2006 06:13:19 +0000 (06:13 +0000)]
Use pkg-config if available for checking libotf.
Include the result of `libotf-config --cflags` in CPPFLAGS.

18 years ago*** empty log message ***
handa [Wed, 19 Jul 2006 02:43:48 +0000 (02:43 +0000)]
*** empty log message ***

18 years ago(CPPFLAGS): Include the result of `libotf-config
handa [Wed, 19 Jul 2006 02:43:40 +0000 (02:43 +0000)]
(CPPFLAGS): Include the result of `libotf-config
--cflags`.

18 years ago(Mlanguage): Extern it.
handa [Wed, 19 Jul 2006 02:42:18 +0000 (02:42 +0000)]
(Mlanguage): Extern it.

18 years ago(Mlanguage): Extern deleted.
handa [Wed, 19 Jul 2006 02:42:00 +0000 (02:42 +0000)]
(Mlanguage): Extern deleted.

18 years ago* mtext.c (mtext__init): Initialize Mlanguage.
handa [Wed, 19 Jul 2006 02:41:17 +0000 (02:41 +0000)]
* 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.

18 years ago(mlocale__init): Don't initialize Mlanguage here.
handa [Wed, 19 Jul 2006 02:40:21 +0000 (02:40 +0000)]
(mlocale__init): Don't initialize Mlanguage here.
(Mlanguage): Don't declare it here.

18 years ago(mlang__init): Don't initialize Mlanguage here.
handa [Wed, 19 Jul 2006 02:39:50 +0000 (02:39 +0000)]
(mlang__init): Don't initialize Mlanguage here.

18 years ago(OTF_tag_name) [! HAVE_OTF]: New function.
handa [Wed, 19 Jul 2006 02:39:14 +0000 (02:39 +0000)]
(OTF_tag_name) [! HAVE_OTF]: New function.

18 years ago*** empty log message ***
handa [Fri, 14 Jul 2006 07:03:34 +0000 (07:03 +0000)]
*** empty log message ***

18 years agoUse FT_BDF_H macro. Include fontconfig/fcfreetype.h.
handa [Fri, 14 Jul 2006 07:01:55 +0000 (07:01 +0000)]
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.

18 years ago(struct MRealizedFont): New member encapsulating.
handa [Fri, 14 Jul 2006 06:56:25 +0000 (06:56 +0000)]
(struct MRealizedFont): New member encapsulating.
(struct MFontDriver): New members encapsulate and close.

18 years ago(mfont__match_p): If FONT is realized, check capability
handa [Fri, 14 Jul 2006 06:55:41 +0000 (06:55 +0000)]
(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.

18 years ago(xfont_list_family_names): Delete unused var. Fix
handa [Fri, 14 Jul 2006 06:54:12 +0000 (06:54 +0000)]
(xfont_list_family_names): Delete unused var.  Fix
declarations of foundry and fam local vars.
(xft_driver): Make it static.

18 years ago(mfont_match_p, mfont_open, mfont_encapsulate)
handa [Fri, 14 Jul 2006 06:52:42 +0000 (06:52 +0000)]
(mfont_match_p, mfont_open, mfont_encapsulate)
(mfont_close): Extern them.

18 years ago(device_open): Don't specify foundry and family of the
handa [Fri, 14 Jul 2006 06:50:18 +0000 (06:50 +0000)]
(device_open): Don't specify foundry and family of the
default face.

18 years ago*** empty log message ***
handa [Fri, 14 Jul 2006 06:49:32 +0000 (06:49 +0000)]
*** empty log message ***

18 years agoVersion changed to 1.3.4. Delete args to
handa [Fri, 14 Jul 2006 06:49:25 +0000 (06:49 +0000)]
Version changed to 1.3.4.  Delete args to
AM_INIT_AUTOMAKE.

18 years ago*** empty log message ***
handa [Thu, 13 Jul 2006 07:45:38 +0000 (07:45 +0000)]
*** empty log message ***

18 years ago*** empty log message ***
handa [Thu, 13 Jul 2006 07:34:17 +0000 (07:34 +0000)]
*** empty log message ***

18 years ago(fc_build_charset): Return NULL if FcCharSet can't be
handa [Thu, 13 Jul 2006 07:34:12 +0000 (07:34 +0000)]
(fc_build_charset): Return NULL if FcCharSet can't be
created.
(ft_check_script): Delete unused var.
(ft_list_capability): Likewise.

18 years ago(mfont__get_capability): Setup cap->otf.
handa [Thu, 13 Jul 2006 07:33:04 +0000 (07:33 +0000)]
(mfont__get_capability): Setup cap->otf.
(Motf): Make it global.
(mfont_get_prop): Accept Mlanguage, Mscript, and Motf as key arg.

18 years ago(MFontCapability): New member otf.
handa [Thu, 13 Jul 2006 07:31:51 +0000 (07:31 +0000)]
(MFontCapability): New member otf.

18 years ago(mlang__fini): Delete unused vars.
handa [Thu, 13 Jul 2006 07:31:13 +0000 (07:31 +0000)]
(mlang__fini): Delete unused vars.

18 years ago(Motf): Extern it.
handa [Thu, 13 Jul 2006 07:30:49 +0000 (07:30 +0000)]
(Motf): Extern it.

18 years ago(update_database_list): Delete unused vars.
handa [Thu, 13 Jul 2006 07:30:17 +0000 (07:30 +0000)]
(update_database_list): Delete unused vars.

18 years ago(m17n_fini_win): Set null_interface.handle to NULL;
handa [Tue, 11 Jul 2006 02:24:03 +0000 (02:24 +0000)]
(m17n_fini_win): Set null_interface.handle to NULL;

18 years ago*** empty log message ***
handa [Fri, 7 Jul 2006 03:45:01 +0000 (03:45 +0000)]
*** empty log message ***

18 years ago(DEVICE_DELTA): Fix typo.
handa [Fri, 7 Jul 2006 03:44:42 +0000 (03:44 +0000)]
(DEVICE_DELTA): Fix typo.

18 years ago*** empty log message ***
handa [Thu, 6 Jul 2006 05:33:31 +0000 (05:33 +0000)]
*** empty log message ***

18 years ago(mfont__lookup_fontset): Don't ignore family and
handa [Thu, 6 Jul 2006 05:33:14 +0000 (05:33 +0000)]
(mfont__lookup_fontset): Don't ignore family and
foundry of face.

18 years ago*** empty log message ***
ntakahas [Wed, 5 Jul 2006 11:47:32 +0000 (11:47 +0000)]
*** empty log message ***

18 years agoUpdate comments.
ntakahas [Wed, 5 Jul 2006 11:47:12 +0000 (11:47 +0000)]
Update comments.

18 years ago*** empty log message ***
handa [Wed, 5 Jul 2006 07:28:36 +0000 (07:28 +0000)]
*** empty log message ***

18 years ago*** empty log message ***
handa [Wed, 5 Jul 2006 07:22:01 +0000 (07:22 +0000)]
*** empty log message ***

18 years ago(PATH_MAX): Define it if not yet defined.
handa [Wed, 5 Jul 2006 07:21:45 +0000 (07:21 +0000)]
(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".

18 years ago*** empty log message ***
handa [Mon, 3 Jul 2006 12:43:50 +0000 (12:43 +0000)]
*** empty log message ***

18 years ago(win_callback): If is ic->candidate_show zero, don't
handa [Mon, 3 Jul 2006 12:43:47 +0000 (12:43 +0000)]
(win_callback): If is ic->candidate_show zero, don't
push reverse property.

18 years ago(dump_plist_element): Fix previous change.
handa [Mon, 3 Jul 2006 12:42:54 +0000 (12:42 +0000)]
(dump_plist_element): Fix previous change.

18 years ago*** empty log message ***
handa [Wed, 28 Jun 2006 11:22:11 +0000 (11:22 +0000)]
*** empty log message ***

18 years ago(xlfd_unparse_name): Suppress the heading '-' if not
handa [Wed, 28 Jun 2006 11:22:06 +0000 (11:22 +0000)]
(xlfd_unparse_name): Suppress the heading '-' if not
necessary.

18 years ago(MbidiNSM): New variable.
handa [Wed, 28 Jun 2006 11:20:57 +0000 (11:20 +0000)]
(MbidiNSM): New variable.
(visual_order) [! HAVE_FRIBIDI]: Clear levels at first.  Pay
attention to bidi type NSM.
(mdraw__init): Initialize MbibiNSM.

18 years ago*** empty log message ***
handa [Wed, 28 Jun 2006 11:20:51 +0000 (11:20 +0000)]
*** empty log message ***

18 years ago*** empty log message ***
handa [Wed, 28 Jun 2006 07:22:19 +0000 (07:22 +0000)]
*** empty log message ***

18 years ago(mscript__char_list): Fix finding a char-list element.
handa [Wed, 28 Jun 2006 07:22:15 +0000 (07:22 +0000)]
(mscript__char_list): Fix finding a char-list element.

18 years ago*** empty log message ***
handa [Wed, 28 Jun 2006 07:03:35 +0000 (07:03 +0000)]
*** empty log message ***

18 years ago(dump_string): Return number of printed characters.
handa [Wed, 28 Jun 2006 07:03:30 +0000 (07:03 +0000)]
(dump_string): Return number of printed characters.
(dump_plist_element): Print elements more compactly.

18 years ago*** empty log message ***
handa [Fri, 23 Jun 2006 12:52:57 +0000 (12:52 +0000)]
*** empty log message ***

18 years ago(BUILD_LIBS): Don't increment it conditionally.
handa [Fri, 23 Jun 2006 12:52:54 +0000 (12:52 +0000)]
(BUILD_LIBS): Don't increment it conditionally.

18 years ago(BUILD_LIBS): Don't increment it conditionally.
handa [Fri, 23 Jun 2006 12:51:45 +0000 (12:51 +0000)]
(BUILD_LIBS): Don't increment it conditionally.
(include_HEADERS): Likewise.

18 years ago*** empty log message ***
handa [Fri, 23 Jun 2006 12:29:28 +0000 (12:29 +0000)]
*** empty log message ***

18 years ago*** empty log message ***
handa [Fri, 23 Jun 2006 12:27:54 +0000 (12:27 +0000)]
*** empty log message ***

18 years ago*** empty log message ***
handa [Fri, 23 Jun 2006 12:23:00 +0000 (12:23 +0000)]
*** empty log message ***

18 years ago*** empty log message ***
ntakahas [Fri, 23 Jun 2006 08:17:59 +0000 (08:17 +0000)]
*** empty log message ***

18 years agoUpdate documentation.
ntakahas [Fri, 23 Jun 2006 08:17:31 +0000 (08:17 +0000)]
Update documentation.

18 years ago(mlanguage_code): On failure, return Mnil, not NULL.
handa [Fri, 23 Jun 2006 07:25:00 +0000 (07:25 +0000)]
(mlanguage_code): On failure, return Mnil, not NULL.

18 years ago*** empty log message ***
handa [Fri, 23 Jun 2006 02:47:18 +0000 (02:47 +0000)]
*** empty log message ***

18 years ago(show_cursor): Call mlanguage_name to get English name
handa [Fri, 23 Jun 2006 02:44:55 +0000 (02:44 +0000)]
(show_cursor): Call mlanguage_name to get English name
of language.
(compare_input_method): Likewise.
(main): Likewise.

18 years ago(struct MFontFT): Delete member lang.
handa [Fri, 23 Jun 2006 02:43:51 +0000 (02:43 +0000)]
(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.