IBus

from Wikipedia, the free encyclopedia
IBus

Ibus-anthy-on-gedit.png
Basic data

Maintainer Intelligent Input Bus (IBus)
developer Peng Huang
Publishing year 2008
Current  version 1.5.22
( February 21, 2020 )
operating system Unix derivatives
programming language C , python
License GNU LGPL v2 or newer
https://github.com/ibus/ibus

The Intelligent Input Bus ( IBus , pronunciation : [ ˈaɪ bʌs ]) is a framework for multilingual input methods in Unix- like operating systems . It got its name because of its bus-like architecture. So it is possible to get a wide variety of functions with plugins .

Functions

IBus provides a framework for input methods including associated user interfaces . In order to develop a uniform basis for different input methods, the implementation of specific input methods was deliberately avoided.

The actual functionality is provided by separate plugins that access interfaces in C and Python . IBus implements the XIM protocol and supports both GTK + and Qt- based end applications.

motivation

The Northeast Asia OSS Promotion Forum (NEAOSS) recommended using a bus-centric architecture for an input method framework in a draft document. Huang Peng from Red Hat started the IBus project to implement the ideas of the discontinued IM-BUS project (by James Su). He used Python, D-Bus and GLib and sometimes deviated from the recommendations of the NEAOSS Forum. IBus caught on with users and is now available in the repository of FreeBSD and most Linux distributions . Since Fedora 11 and Ubuntu 9.10, IBus has been the standard input method for these distributions. In both cases it replaced the predecessor SCIM.

Available plugins and engines

There is a wide range of supported input methods for a variety of languages. Engines are usually a bit more complex than plugins and have more code of their own. However, they are equivalent in their application. In the documentation of various operating system distributions you can often find a precise list of the available plugins. Here is an incomplete selection of freely available plugins:

Chinese

  • ibus-cangjie: Cangjie input method.
  • ibus-chewing: Intelligent, phonetic Zhuyin input method.
  • ibus-pinyin: Intelligent, phonetic input method for pinyin by Huang Peng. Has advanced features such as the English-language spell checker.
  • ibus-libpinyin: Newer input method for pinyin, developed by Huang Peng and Peng Wu.

Japanese

  • ibus-anthy: Plugin for the Anthy input method.
  • ibus-kkc: Plugin for the Kana Kanji conversion library.
  • ibus-mozc: Plugin for the "mozc" input method from Google .

Korean

  • ibus-hangul

Vietnamese

  • ibus-unikey

Multilingual

  • ibus-table: input method for tables that do not require complex logic for word completion. Many structure-based Chinese input methods are supported with ibus-table. But it is also possible to develop completely different input methods, such as one for LaTeX .
  • ibus-m17n: Uses information from the m17n database. In contrast to ibus-table, various input states are also supported.

Web links

Individual evidence

  1. Release 1.5.22 . February 21, 2020 (accessed February 22, 2020).
  2. NEAOSS Workgroup 3: Draft recommendation of Information Technology - the Specification of IM engine Service Provider Interface. (PDF; 976 kB) September 12, 2007, accessed on October 3, 2016 (English).
  3. Releases / 11 / FeatureList. In: FedoraProject . Retrieved October 3, 2016 .
  4. ibus-table / README. Retrieved October 3, 2016 .
  5. Google Code Archive - Long-term storage for Google Code Project Hosting. In: code.google.com. Retrieved November 2, 2016 .