35
#ifndef _uim_util_h_included_
36
#define _uim_util_h_included_
39
#include <sys/types.h>
44
* @param localename locale string. typical format of this string
45
* is ll_CC.charset. E.G. for Japanese locale, ja_JP.EUC-JP
46
* ll is language code defined in ISO 639, CC is country code defined
48
* @return language name string. (Now it's untranslated.)
48
* Returns human-readable language name from a locale string.
50
* @param locale locale string. typical format of this string is
51
* ll_CC.charset. e.g. for Japanese locale, ja_JP.EUC-JP ll is language code
52
* defined in ISO 639-1, CC is country code defined in ISO 3166.
54
* @return untranslated language name string, or else "-" if no language is
55
* matched. apply gettext() in caller side if needed.
50
57
* @see uim_create_context
53
uim_get_language_name_from_locale(const char *localename);
60
uim_get_language_name_from_locale(const char *locale);
63
* Returns ISO 639-1 language code from a human-readable language name.
65
* @param language_name a human-readable language name in English such as
68
* @return ISO 639-1 language code such as "ja", or else "-" if no language
56
72
uim_get_language_code_from_language_name(const char *language_name);
58
/* uim's iconv_open wrapper */
59
void *uim_iconv_open(const char *tocode, const char *fromcode);
75
/* command execution in pipe-connected subprocess (like popen(3))*/
76
pid_t uim_ipc_open_command(pid_t old_pid,
77
FILE **read_handler, FILE **write_handler,
79
pid_t uim_ipc_open_command_with_option(pid_t old_pid,
84
char *uim_ipc_send_command(pid_t *pid,
85
FILE **read_handler, FILE **write_handler,
86
const char *command, const char *str);
88
/* an uim_code_converter implementation using iconv */
89
extern struct uim_code_converter *uim_iconv;