## Unicode Information

Unicode Information — Unicode related utility functions

## Functions

gint | font_manager_unicode_get_codepoint_data_name_count ()
gint | font_manager_unicode_get_unihan_count ()
gint | font_manager_unicode_unichar_to_printable_utf8 ()
gboolean | font_manager_unicode_unichar_validate ()
gboolean | font_manager_unicode_unichar_isgraph ()
gunichar * | font_manager_unicode_get_nameslist_exes ()
const gchar * | font_manager_unicode_get_codepoint_name ()
const gchar * | font_manager_unicode_get_codepoint_data_name ()
const gchar * | font_manager_unicode_get_category_name ()
const gchar * | font_manager_unicode_get_unicode_kDefinition ()
const gchar ** | font_manager_unicode_get_nameslist_stars ()
const gchar ** | font_manager_unicode_get_nameslist_equals ()
const gchar ** | font_manager_unicode_get_nameslist_pounds ()
const gchar ** | font_manager_unicode_get_nameslist_colons ()
const gchar * | font_manager_unicode_version_to_string ()
FontManagerUnicodeStandard | font_manager_unicode_get_version ()

## Types and Values

#define | FONT_MANAGER_UNICHAR_MAX
enum | FontManagerUnicodeStandard

## Includes

    #include <unicode-info.h>

## Description

This widget provides a way to search for characters by name, value or other information.

## Functions

### font_manager_unicode_get_codepoint_data_name_count ()

    gint
    font_manager_unicode_get_codepoint_data_name_count
                                   (void);

### font_manager_unicode_get_unihan_count ()

    gint
    font_manager_unicode_get_unihan_count (void);

### font_manager_unicode_unichar_to_printable_utf8 ()

    gint
    font_manager_unicode_unichar_to_printable_utf8
                                   (gunichar uc,
                                    gchar *outbuf);

Converts a single character to UTF-8 suitable for rendering. Check the source to see what this means. ;-)

#### Parameters

uc | a unicode character |
outbuf | output buffer, must have at least 10 bytes of space. If `NULL`, the length will be computed and returned, nothing will be written to `outbuf` . | [out caller-allocates]

#### Returns

number of bytes written

### font_manager_unicode_unichar_validate ()

    gboolean
    font_manager_unicode_unichar_validate (gunichar uc);

### font_manager_unicode_unichar_isgraph ()

    gboolean
    font_manager_unicode_unichar_isgraph (gunichar uc);

Determines whether a character is printable and not a space (returns `FALSE` for control characters and spaces). `g_unichar_isprint()` is similar, but returns `TRUE` for spaces. Given some UTF-8 text, obtain a character value with `g_utf8_get_char()`.

#### Parameters

uc | a Unicode character |

#### Returns

`TRUE` if `c` is printable unless it's a space or control character

### font_manager_unicode_get_nameslist_exes ()

    gunichar *
    font_manager_unicode_get_nameslist_exes
                                   (gunichar uc);

### font_manager_unicode_get_codepoint_name ()

    const gchar *
    font_manager_unicode_get_codepoint_name
                                   (gunichar uc);

### font_manager_unicode_get_codepoint_data_name ()

    const gchar *
    font_manager_unicode_get_codepoint_data_name
                                   (gunichar uc);

### font_manager_unicode_get_category_name ()

    const gchar *
    font_manager_unicode_get_category_name
                                   (gunichar uc);

### font_manager_unicode_get_unicode_kDefinition ()

    const gchar *
    font_manager_unicode_get_unicode_kDefinition
                                   (gunichar uc);

### font_manager_unicode_get_nameslist_stars ()

    const gchar **
    font_manager_unicode_get_nameslist_stars
                                   (gunichar uc);

#### Parameters

uc | a gunichar |

#### Returns

newly allocated `NULL`-terminated array of gchar*, the items are const, but the array should be freed by the caller.

[transfer container][array zero-terminated=1][element-type utf8]

### font_manager_unicode_get_nameslist_equals ()

    const gchar **
    font_manager_unicode_get_nameslist_equals
                                   (gunichar uc);

#### Parameters

uc | a gunichar |

#### Returns

newly allocated `NULL`-terminated array of gchar*, the items are const, but the array should be freed by the caller.

[transfer container][array zero-terminated=1][element-type utf8]

### font_manager_unicode_get_nameslist_pounds ()

    const gchar **
    font_manager_unicode_get_nameslist_pounds
                                   (gunichar uc);

#### Parameters

uc | a gunichar |

#### Returns

newly allocated `NULL`-terminated array of gchar*, the items are const, but the array should be freed by the caller.

[transfer container][array zero-terminated=1][element-type utf8]

### font_manager_unicode_get_nameslist_colons ()

    const gchar **
    font_manager_unicode_get_nameslist_colons
                                   (gunichar uc);

#### Parameters

uc | a gunichar |

#### Returns

newly allocated `NULL`-terminated array of gchar*, the items are const, but the array should be freed by the caller.

[transfer container][array zero-terminated=1][element-type utf8]

### font_manager_unicode_version_to_string ()

    const gchar *
    font_manager_unicode_version_to_string
                                   (FontManagerUnicodeStandard version);

### font_manager_unicode_get_version ()

    FontManagerUnicodeStandard
    font_manager_unicode_get_version (gunichar uc);

## Types and Values

### FONT_MANAGER_UNICHAR_MAX

    #define FONT_MANAGER_UNICHAR_MAX (0x0010FFFFUL)

### enum FontManagerUnicodeStandard

#### Members

FONT_MANAGER_UNICODE_VERSION_UNASSIGNED | Not assigned |
FONT_MANAGER_UNICODE_VERSION_1_1 | Version 1.1 |
FONT_MANAGER_UNICODE_VERSION_2_0 | Version 2.0 |
FONT_MANAGER_UNICODE_VERSION_2_1 | Version 2.1 |
FONT_MANAGER_UNICODE_VERSION_3_0 | Version 3.0 |
FONT_MANAGER_UNICODE_VERSION_3_1 | Version 3.1 |
FONT_MANAGER_UNICODE_VERSION_3_2 | Version 3.2 |
FONT_MANAGER_UNICODE_VERSION_4_0 | Version 4.0 |
FONT_MANAGER_UNICODE_VERSION_4_1 | Version 4.1 |
FONT_MANAGER_UNICODE_VERSION_5_0 | Version 5.0 |
FONT_MANAGER_UNICODE_VERSION_5_1 | Version 5.1 |
FONT_MANAGER_UNICODE_VERSION_5_2 | Version 5.2 |
FONT_MANAGER_UNICODE_VERSION_6_0 | Version 6.0 |
FONT_MANAGER_UNICODE_VERSION_6_1 | Version 6.1 |
FONT_MANAGER_UNICODE_VERSION_6_2 | Version 6.2 |
FONT_MANAGER_UNICODE_VERSION_6_3 | Version 6.3 |
FONT_MANAGER_UNICODE_VERSION_7_0 | Version 7.0 |
FONT_MANAGER_UNICODE_VERSION_8_0 | Version 8.0 |
FONT_MANAGER_UNICODE_VERSION_9_0 | Version 9.0 |
FONT_MANAGER_UNICODE_VERSION_10_0 | Version 10.0 |
FONT_MANAGER_UNICODE_VERSION_11_0 | Version 11.0 |
FONT_MANAGER_UNICODE_VERSION_12_0 | Version 12.0 |
FONT_MANAGER_UNICODE_VERSION_12_1 | Version 12.1 |
FONT_MANAGER_UNICODE_VERSION_13_0 | Version 13.0 |
FONT_MANAGER_UNICODE_VERSION_14_0 | Version 14.0 |
FONT_MANAGER_UNICODE_VERSION_15_0 | Version 15.0 |
FONT_MANAGER_UNICODE_VERSION_15_1 | Version 15.1 |
FONT_MANAGER_UNICODE_VERSION_16_0 | Version 16.0 |
FONT_MANAGER_UNICODE_VERSION_LATEST | Version 16.0 |