IBus

aus Wikipedia, der freien Enzyklopädie
(Weitergeleitet von Ibus)
Wechseln zu: Navigation, Suche
IBus
Ibus-anthy-on-gedit.png
Basisdaten
Maintainer Intelligent Input Bus (IBus)
Entwickler Peng Huang
Erscheinungsjahr 2008
Aktuelle Version 1.5.16[1]
(15. Mai 2017)
Betriebssystem Unix-Derivate
Programmiersprache 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 mittels Plugins verschiedenste Funktionen zu erhalten.

Funktionen[Bearbeiten | Quelltext bearbeiten]

IBus stellt ein Framework für Eingabemethoden mitsamt entsprechender Benutzeroberflächen zur Verfügung. Es wurde bewusst vermieden konkrete Eingabemethoden zu implementieren, um eine einheitliche Basis für möglicherweise sehr unterschiedliche Eingabemethoden zu entwickeln.

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

Motivation[Bearbeiten | Quelltext bearbeiten]

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. Dennoch setzte sich IBus 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, sind in der Anwendung aber äquivalent. In der Dokumentation verschiedener Betriebssystem-Distributionen findet man oftmals eine genaue Aufzählung der verfügbaren Plugins, es folgt zumindest eine unvollständige Auswahl an freiverfügbaren Plugins:

Chinesisch[Bearbeiten | Quelltext bearbeiten]

  • 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.

Japanisch[Bearbeiten | Quelltext bearbeiten]

  • ibus-anthy: Ein Plugin für Anthy, eine japanische Eingabemethode.
  • ibus-mozc: Plugin für die "mozc" Eingabemethode von Google.

Koreanisch[Bearbeiten | Quelltext bearbeiten]

  • ibus-hangul

Vietnamesisch[Bearbeiten | Quelltext bearbeiten]

  • ibus-unikey

Mehrsprachig[Bearbeiten | Quelltext bearbeiten]

  • ibus-table: Eingabemethode für Tabellen, welche keine komplexe Logik für die Wortvervollständigung erfordern.[4] Viele strukturbasierte chinesische Eingabemethoden werden hiermit unterstützt, es ist aber auch möglich ganz andere Eingabemethoden zu entwickeln, wie zum Beispiel eine für LaTeX eingestellt.[5]
  • ibus-m17n: Verwendet Informationen aus der m17n Datenbank. Im Gegensatz zu ibus-table werden auch verschiedene Eingabezustände unterstützt.

Weblinks[Bearbeiten | Quelltext bearbeiten]

Einzelnachweise[Bearbeiten | Quelltext bearbeiten]

  1. api.github.com. (abgerufen am 15. Mai 2017).
  2. NEAOSS Work Group 3: Draft recommendation of Information Technology - the Specification of IM engine Service Provider Interface. 12. September 2007, abgerufen am 3. Oktober 2016 (PDF; 976 kB, 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.