This manual is the API specification for the IBus. IBus is built upon GObject and D-Bus, so you may find that modules are named as classes and objects in the sense of GObject, and may D-Bus wrapper API.

According to the puroposes of modules, we categorized them into following parts:


A IBus-panel is an UI which provides UI components such as language bar, property buttons and so on.

Input method engine (IME)

An Input method engine is an implementation of certain input method. Here lists essential classes and functions for input method engine building, such as engine specification, and class abstracts.


This part lists functions for configuring IBus and engines. Since most configuration files are in XML format, XML handling functions are also listed here.


Here lists the service communication functions.


Definition and functions for IBus internal use.

Normally input method developers need only to read the first three parts.