IBus

IBus

Basisdaten

Hauptentwickler Intelligent Input Bus (IBus)
Entwickler Peng Huang
Erscheinungsjahr 2008
Aktuelle Version 1.5.31[1]
(23. Oktober 2024)
Betriebssystem Unix-Derivate
Programmier­sprache C, Python
Lizenz GNU LGPL v2 oder neuer
https://github.com/ibus/ibus

Der Intelligent Input Bus (IBus, Aussprache [ˈaɪ bʌs]) ist ein Framework für mehrsprachige Eingabemethoden in Unix-ähnlichen Betriebssystemen. Den Namen hat es aufgrund seiner Bus-artigen Architektur erhalten. So ist es möglich mit Plugins verschiedenste Funktionen zu erhalten.

IBus stellt ein Framework für Eingabemethoden einschließlich zugehöriger Benutzeroberflächen zur Verfügung. Um eine einheitliche Basis für unterschiedliche Eingabemethoden zu entwickeln, wurde bewusst vermieden, konkrete Eingabemethoden zu implementieren.

Die eigentliche Funktionalität wird durch separate Plugins bereitgestellt, die auf Schnittstellen in C und Python zugreifen. IBus implementiert das XIM Protokoll und unterstützt sowohl auf GTK+ als auch auf Qt basierende Endanwendungen.

Das Northeast Asia OSS Promotion Forum (NEAOSS) empfahl in einem Dokumententwurf eine bus-zentrische Architektur für ein Eingabemethoden-Framework zu verwenden.[2] Huang Peng von Red Hat startete das IBus Projekt, um die Ideen des eingestellten IM-BUS Projektes (von James Su), umzusetzen. Dabei verwendete er Python, D-Bus und GLib und wich auch teilweise von den Empfehlungen des NEAOSS Forums ab. IBus setzte sich bei den Anwendern durch und ist heute in den Paketquellen von FreeBSD und den meisten Linux-Distributionen verfügbar. Seit Fedora 11 und Ubuntu 9.10 ist IBus die Standard-Eingabemethode dieser Distributionen. Es ersetzte in beiden Fällen den Vorgänger SCIM.[3]

Verfügbare Plugins und Engines

[Bearbeiten | Quelltext bearbeiten]

Es besteht eine große Auswahl an unterstützten Eingabemethoden für eine Vielzahl von Sprachen. Engines sind in aller Regel etwas komplexer als Plugins und verfügen über mehr eigenen Code. Sie sind in der Anwendung aber äquivalent. In der Dokumentation verschiedener Betriebssystem-Distributionen findet man oft eine genaue Aufzählung der verfügbaren Plugins. Hier eine unvollständige Auswahl an frei verfügbaren Plugins:

  • ibus-cangjie: Cangjie-Eingabemethode.
  • ibus-chewing: Intelligente, phonetische Zhuyin-Eingabemethode.
  • ibus-pinyin: Intelligente, phonetische Eingabemethode für Pinyin von Huang Peng. Verfügt über fortgeschrittene Funktionen, wie die englischsprachige Rechtschreibüberprüfung.
  • ibus-libpinyin: Neuere Eingabemethode für Pinyin, von Huang Peng und Peng Wu entwickelt.
  • ibus-anthy: Plugin für die Anthy Eingabemethode.
  • ibus-kkc: Plugin für die Kana Kanji conversion library.
  • ibus-mozc: Plugin für die „mozc“-Eingabemethode von Google.
  • ibus-hangul
  • ibus-unikey
  • ibus-table: Eingabemethode für Tabellen, die keine komplexe Logik für die Wortvervollständigung erfordern.[4] Viele strukturbasierte chinesische Eingabemethoden werden mit ibus-table unterstützt. Es ist aber auch möglich, ganz andere Eingabemethoden zu entwickeln, wie zum Beispiel eine für LaTeX.[5]
  • ibus-m17n: Verwendet Informationen aus der m17n Datenbank. Im Gegensatz zu ibus-table werden auch verschiedene Eingabezustände unterstützt.

Einzelnachweise

[Bearbeiten | Quelltext bearbeiten]
  1. 1.5.31. 23. Oktober 2024 (abgerufen am 10. November 2024).
  2. NEAOSS Work Group 3: Draft recommendation of Information Technology - the Specification of IM engine Service Provider Interface. (PDF; 976 kB) 12. September 2007, abgerufen am 3. Oktober 2016 (englisch).
  3. Releases/11/FeatureList. In: FedoraProject. Abgerufen am 3. Oktober 2016 (englisch).
  4. ibus-table/README. Abgerufen am 3. Oktober 2016 (englisch).
  5. Google Code Archive - Long-term storage for Google Code Project Hosting. In: code.google.com. Abgerufen am 2. November 2016.