GMime 2.4 Reference Manual | ||||
---|---|---|---|---|
GMimeCharset; void g_mime_charset_map_init (void); void g_mime_charset_map_shutdown (void); const char* g_mime_locale_charset (void); const char* g_mime_locale_language (void); const char* g_mime_charset_language (const char *charset); const char* g_mime_charset_canon_name (const char *charset); const char* g_mime_charset_iconv_name (const char *charset); const char* g_mime_charset_name (const char *charset); const char* g_mime_charset_locale_name (void); const char* g_mime_charset_iso_to_windows (const char *isocharset); void g_mime_charset_init (GMimeCharset *charset); void g_mime_charset_step (GMimeCharset *charset, const char *inbuf, size_t inlen); const char* g_mime_charset_best_name (GMimeCharset *charset); const char* g_mime_charset_best (const char *inbuf, size_t inlen); gboolean g_mime_charset_can_encode (GMimeCharset *mask, const char *charset, const char *text, size_t len); void g_mime_set_user_charsets (const char **charsets); const char** g_mime_user_charsets (void);
typedef struct { unsigned int mask; unsigned int level; } GMimeCharset;
State used by g_mime_charset_best()
and g_mime_charset_best_name()
.
unsigned int |
charset mask |
unsigned int |
charset level |
void g_mime_charset_map_init (void);
Initializes the locale charset variable for later calls to
g_mime_locale_charset()
. Only really needs to be called for non-
iso-8859-1 locales.
Note: g_mime_init()
calls this routine for you.
void g_mime_charset_map_shutdown (void);
Frees internal lookup tables created in g_mime_charset_map_init()
.
const char* g_mime_locale_charset (void);
Gets the user's locale charset (or iso-8859-1 by default).
Returns : |
the user's locale charset (or iso-8859-1 by default). |
const char* g_mime_locale_language (void);
Gets the user's locale language code (or NULL
by default).
Returns : |
the user's locale language code (or NULL by default).
|
const char* g_mime_charset_language (const char *charset);
Attempts to find a specific language code that is specific to
charset
. Currently only handles CJK and Russian/Ukranian
charset->lang mapping. Everything else will return NULL
.
|
charset name |
Returns : |
a language code that is specific to charset , or NULL on
fail.
|
const char* g_mime_charset_canon_name (const char *charset);
Attempts to find a canonical charset name for charset
.
Note: Will normally return the same value as
g_mime_charset_iconv_name()
unless the system iconv does not use
the canonical ISO charset names (such as using ISO8859-1 rather
than the canonical form ISO-8859-1).
|
charset name |
Returns : |
a canonical charset name for charset .
|
const char* g_mime_charset_iconv_name (const char *charset);
Attempts to find an iconv-friendly charset name for charset
.
|
charset name |
Returns : |
an iconv-friendly charset name for charset .
|
const char* g_mime_charset_name (const char *charset);
g_mime_charset_name
is deprecated and should not be used in newly-written code.
Attempts to find an iconv-friendly charset name for charset
.
Note: This function is deprecated. Use g_mime_charset_iconv_name()
instead.
|
charset name |
Returns : |
an iconv-friendly charset name for charset .
|
const char* g_mime_charset_locale_name (void);
g_mime_charset_locale_name
is deprecated and should not be used in newly-written code.
Gets the user's locale charset (or iso-8859-1 by default).
Note: This function is deprecated. Use g_mime_locale_charset()
instead.
Returns : |
the user's locale charset (or iso-8859-1 by default). |
const char* g_mime_charset_iso_to_windows (const char *isocharset);
Maps the ISO-8859-# charset to the equivalent Windows-CP125# charset.
|
ISO-8859-# charset |
Returns : |
equivalent Windows charset. |
void g_mime_charset_init (GMimeCharset *charset);
Initializes a charset mask structure.
|
charset mask |
void g_mime_charset_step (GMimeCharset *charset, const char *inbuf, size_t inlen);
Steps through the input buffer 1 unicode character (glyph) at a
time (ie, not necessarily 1 byte at a time). Bitwise 'and' our
charset->mask
with the mask for each glyph. This has the effect of
limiting what charsets our charset->mask
can match.
|
charset structure |
|
input text buffer (must be in UTF-8) |
|
input buffer length |
const char* g_mime_charset_best_name (GMimeCharset *charset);
Gets the best charset name based on the charset mask charset
.
|
charset mask |
Returns : |
a pointer to a string containing the best charset name that
can represent the charset mask charset .
|
const char* g_mime_charset_best (const char *inbuf, size_t inlen);
Computes the best charset to use to encode this text buffer.
|
a UTF-8 text buffer |
|
input buffer length |
Returns : |
the charset name best suited for the input text or NULL if
it is US-ASCII safe.
|
gboolean g_mime_charset_can_encode (GMimeCharset *mask, const char *charset, const char *text, size_t len);
Check to see if the UTF-8 text
will fit safely within charset
.
|
a GMimeCharset mask |
|
a charset |
|
utf-8 text to check |
|
length of text
|
Returns : |
TRUE if it is safe to encode text into charset or FALSE
otherwise.
|
void g_mime_set_user_charsets (const char **charsets);
Set a list of charsets for GMime to use as a hint for encoding and decoding headers. The charset list should be in order of preference (e.g. most preferred first, least preferred last).
|
an array of user-preferred charsets |
const char** g_mime_user_charsets (void);
Get the list of user-preferred charsets set with
g_mime_set_user_charsets()
.
Returns : |
an array of user-set charsets or NULL if none set.
|