11 #ifndef __UNICODEUTIL_H__ 12 #define __UNICODEUTIL_H__ 14 #include "ws_symbol_export.h" 28 int ws_utf8_char_len(guint8 ch);
44 const wchar_t * utf_8to16(
const char *utf8str);
53 void utf_8to16_snprintf(TCHAR *utf16buf, gint utf16buf_len,
const gchar* fmt,
54 ...) G_GNUC_PRINTF(3, 4);
64 gchar * utf_16to8(const
wchar_t *utf16str);
76 void arg_list_utf_16to8(
int argc,
char *argv[]);
85 #define IS_LEAD_SURROGATE(uchar2) \ 86 ((uchar2) >= 0xd800 && (uchar2) < 0xdc00) 87 #define IS_TRAIL_SURROGATE(uchar2) \ 88 ((uchar2) >= 0xdc00 && (uchar2) < 0xe000) 89 #define SURROGATE_VALUE(lead, trail) \ 90 (((((lead) - 0xd800) << 10) | ((trail) - 0xdc00)) + 0x10000)