int main() { MPlist *imlist, *elm; MSymbol utf8 = msymbol("utf8"); M17N_INIT(); imlist = mdatabase_list(msymbol("input-method"), Mnil, Mnil, Mnil); for (elm = imlist; elm && mplist_key(elm) != Mnil; elm = mplist_next(elm)) { MDatabase *mdb = (MDatabase *) mplist_value(elm); MSymbol *tag = mdatabase_tag(mdb); if (tag[1] != Mnil) { MInputMethod *im = minput_open_im(tag[1], tag[2], NULL); if (im) { std::cout << msymbol_name (im->language); std::cout << "-"; std::cout << msymbol_name (im->name); std::cout << "\n"; } } } M17N_FINI(); }
static void nimf_m17n_close_im (NimfM17n *m17n) { g_debug (G_STRLOC ": %s", G_STRFUNC); if (m17n->converter) mconv_free_converter (m17n->converter); if (m17n->ic) minput_destroy_ic (m17n->ic); if (m17n->im) minput_close_im (m17n->im); m17n->converter = NULL; m17n->ic = NULL; m17n->im = NULL; M17N_FINI (); g_free (m17n->preedit); }
static void transliterator_m17n_class_finalize (TransliteratorM17nClass *klass) { mconv_free_converter (utf8_converter); M17N_FINI (); }