## IBusEngineSimple

IBusEngineSimple — Input method engine supporting table-based input method

## Stability Level

Stable, unless otherwise indicated

## Functions

void | ibus_engine_simple_add_table ()
gboolean | ibus_engine_simple_add_table_by_locale ()
gboolean | ibus_engine_simple_add_compose_file ()

## Types and Values

#define | IBUS_MAX_COMPOSE_LEN
struct | IBusEngineSimple

## Object Hierarchy

        GObject
        ╰── GInitiallyUnowned
            ╰── IBusObject
                ╰── IBusService
                    ╰── IBusEngine
                        ╰── IBusEngineSimple

## Description

An IBusEngineSimple provides table-based input method logic.

see_also: IBusEngine

## Functions

### ibus_engine_simple_add_table ()

    void
    ibus_engine_simple_add_table (IBusEngineSimple *simple,
                                  const guint16 *data,
                                  gint max_seq_len,
                                  gint n_seqs);

Adds an additional table to search to the engine. Each row of the table consists of max_seq_len key symbols followed by two guint16 interpreted as the high and low words of a gunicode value. Tables are searched starting from the last added.

The table must be sorted in dictionary order on the numeric value of the key symbol fields. (Values beyond the length of the sequence should be zero.)

#### Parameters

simple | An IBusEngineSimple. |
data | The table which must be available during the whole life of the simple engine. | [element-type guint16][array]
max_seq_len | Maximum length of a sequence in the table (cannot be greater than `IBUS_MAX_COMPOSE_LEN`) |
n_seqs | number of sequences in the table |

### ibus_engine_simple_add_table_by_locale ()

    gboolean
    ibus_engine_simple_add_table_by_locale
                                   (IBusEngineSimple *simple,
                                    const gchar *locale);

Call `ibus_engine_simple_add_table()` internally by locale.

#### Parameters

simple | An IBusEngineSimple. |
locale | The locale name. If the locale is `NULL`, the current locale is used. | [allow-none]

#### Returns

`TRUE` if the `locale` is matched to the table.

### ibus_engine_simple_add_compose_file ()

    gboolean
    ibus_engine_simple_add_compose_file (IBusEngineSimple *simple,
                                         const gchar *file);

Call `ibus_engine_simple_add_table()` internally by locale.

#### Parameters

simple | An IBusEngineSimple. |
file | The compose file. |

#### Returns

`TRUE` if the `file` is loaded.

## Types and Values

### IBUS_MAX_COMPOSE_LEN

    #define IBUS_MAX_COMPOSE_LEN 0xFF

### struct IBusEngineSimple

    struct IBusEngineSimple;

IBusEngineSimple properties.