gwyentities

gwyentities — Transform SGML-like symbol entities to UTF-8

Synopsis




                    GwyTextEntity;
GwyInventory*       gwy_entities                        (void);
const gchar*        gwy_entities_entity_to_utf8         (const gchar *entity);
gchar*              gwy_entities_text_to_utf8           (const gchar *text);

Description

A subset of named SGML-like symbol entities (e.g. α), to be used namely in GwySciText.

Function gwy_entities_entity_to_utf8() converts a signle entity to UTF-8. Function gwy_entities_text_to_utf8() converts a text containing entities to UTF-8. An GwyInventory with all available entities can be obtained with gwy_entities().

Details

GwyTextEntity

typedef struct {
    const gchar *entity;
    const gchar *utf8;
} GwyTextEntity;

The type of text entity data.

const gchar *entity; Bare entity name, without the leading ampersand and trailing semicolon.
const gchar *utf8; The corresponding character, in UTF-8.

gwy_entities ()

GwyInventory*       gwy_entities                        (void);

Returns a constant inventory with all available entities.

Returns : The entities as a GwyInventory.

gwy_entities_entity_to_utf8 ()

const gchar*        gwy_entities_entity_to_utf8         (const gchar *entity);

Converts a single named entity entity to UTF-8 representation.

The string passed to this function should be a bare entity name, i.e. it should not contain the ampersand and semicolon.

entity : A single entity name, as a nul-delimited string.
Returns : entity if the name was not recognized, or a valid UTF-8 string. If the returned string is not equal to entities, it's owned by entities and must not be freed nor modified.

gwy_entities_text_to_utf8 ()

gchar*              gwy_entities_text_to_utf8           (const gchar *text);

Converts entities in a text to UTF-8.

text : A nul-delimited string.
Returns : A newly allocated nul-delimited string containing the converted text.