Functions | |
__extern uint32_t | cucul_utf8_to_utf32 (char const *, size_t *) |
Convert a UTF-8 character to UTF-32. | |
__extern size_t | cucul_utf32_to_utf8 (char *, uint32_t) |
Convert a UTF-32 character to UTF-8. | |
__extern uint8_t | cucul_utf32_to_cp437 (uint32_t) |
Convert a UTF-32 character to CP437. | |
__extern uint32_t | cucul_cp437_to_utf32 (uint8_t) |
Convert a CP437 character to UTF-32. | |
__extern char | cucul_utf32_to_ascii (uint32_t) |
Convert a UTF-32 character to ASCII. | |
__extern int | cucul_utf32_is_fullwidth (uint32_t) |
Tell whether a UTF-32 character is fullwidth. |
__extern uint32_t cucul_utf8_to_utf32 | ( | char const * | s, | |
size_t * | bytes | |||
) |
Convert a UTF-8 character read from a string and return its value in the UTF-32 character set. If the second argument is not null, the total number of read bytes is written in it.
If a null byte was reached before the expected end of the UTF-8 sequence, this function returns zero and the number of read bytes is set to zero.
This function never fails, but its behaviour with illegal UTF-8 sequences is undefined.
s | A string containing the UTF-8 character. | |
bytes | A pointer to a size_t to store the number of bytes in the character, or NULL. |
Referenced by cucul_put_str().
__extern size_t cucul_utf32_to_utf8 | ( | char * | buf, | |
uint32_t | ch | |||
) |
Convert a UTF-32 character read from a string and write its value in the UTF-8 character set into the given buffer.
This function never fails, but its behaviour with illegal UTF-32 characters is undefined.
buf | A pointer to a character buffer where the UTF-8 sequence will be written. | |
ch | The UTF-32 character. |
__extern uint8_t cucul_utf32_to_cp437 | ( | uint32_t | ch | ) |
Convert a UTF-32 character read from a string and return its value in the CP437 character set, or "?" if the character has no equivalent.
This function never fails.
ch | The UTF-32 character. |
__extern uint32_t cucul_cp437_to_utf32 | ( | uint8_t | ch | ) |
Convert a CP437 character read from a string and return its value in the UTF-32 character set, or zero if the character is a CP437 control character.
This function never fails.
ch | The CP437 character. |
__extern char cucul_utf32_to_ascii | ( | uint32_t | ch | ) |
Convert a UTF-32 character into an ASCII character. When no equivalent exists, a graphically close equivalent is sought.
This function never fails, but its behaviour with illegal UTF-32 characters is undefined.
ch | The UTF-32 character. |
__extern int cucul_utf32_is_fullwidth | ( | uint32_t | ch | ) |
Check whether the given UTF-32 character should be printed at twice the normal width (fullwidth characters). If the character is unknown or if its status cannot be decided, it is treated as a standard-width character.
This function never fails.
ch | The UTF-32 character. |
Referenced by cucul_put_char(), and cucul_put_str().