iBus | ||
---|---|---|
Información general | ||
Tipo de programa | Input Method Editor | |
Desarrollador | Peng Huang | |
Lanzamiento inicial | 2008 | |
Licencia | LGPL-2.1 | |
Información técnica | ||
Programado en | ||
Versiones | ||
Última versión estable | 1.5.3123 de octubre de 2024 | |
Enlaces | ||
El Intelligent Input Bus (Bus de Entrada Inteligente, frecuentemente abreviado como iBus) es un entorno de trabajo que permite un método de entrada (editor de método de entrada, en inglés: Input Method Editor, abreviado IME) para la internacionalización y localización del software que se ejecuta en un sistema operativo tipo *nix. El nombre "Bus" proviene de su parecido con la arquitectura de tipo canal, la cual transfiere datos entre los componentes (hardware) de una computadora.
Los principales objetivos del proyecto IBus incluyen:
El borrador "Specification of IM engine Service Provider Interface",[1] documento del Northeast Asia OSS Forum (Grupo de Trabajo 3),[2] recomienda arquitecturas de estructura de métodos de entrada centradas en bus con una implementación de bus (similar a dbus). De acuerdo con la especificación, SCIM-1.4 no se considera adecuado para un desarrollo posterior, ya que se desarrolla en C++, que normalmente causa problemas de transición de en la interfaz binaria de aplicaciones (ABI).[3]
Desde entonces, se iniciaron proyectos exitosos como IM-BUS (dirigido por James Su) y SCIM-2 (liderado por Zheng Hu). Sin embargo, ambos proyectos están suspendidos. Por lo tanto, Huang Peng de Red Hat estableció el proyecto IBus para probar la idea de IM-BUS utilizando Python, D-Bus y GLib en lugar de implementar las funciones recomendadas por el foro CJK OSS. A pesar de ello, IBus ya ha ganado la aceptación de la comunidad, y FreeBSD y muchas distribuciones de GNU/Linux como Fedora y Ubuntu ya tienen IBus en sus repositorios de paquetes. IBus se convirtió en el nuevo marco de métodos de entrada por defecto en Fedora 11,[4] y reemplazó a SCIM en Ubuntu 9.10.[5]
IBus está desarrollado en C y Python, evitando así el problema de transición de la ABI C++ de SCIM (en versiones anteriores a 1.4.14 de SCIM).
IBus proporciona la mayor parte de su funcionalidad a través de servicios. Hay tres tipos de servicios:
IBus emplea D-Bus para comunicarse entre ibus-daemon, servicios y clientes de mensajería instantánea como emuladores de terminal, editores y navegadores web. ibus-daemon gestiona todos los clientes y servicios recibiendo registros de los servicios y enviando mensajes D-Bus a los servicios correspondientes y al cliente de mensajería instantánea.
Implementa el protocolo XIM y dispone de módulos de métodos de entrada GTK+ (ahora conocido como GTK) y Qt.
ibus-anthy
: un complemento para Anthy, un IME para el idioma japonés.ibus-cangjie
:[7] un motor para el método de entrada de caracteres Cangjieibus-chewing
: un IME fonético chino avanzado para usuarios de Zhuyin. Se basa en libChewing.ibus-hangul
: un IME para el idioma coreano.ibus-libpinyin
: un nuevo IME para el idioma chino para personas que utilizan el Pinyin, fue diseñado por Huang Peng and Peng Wu.ibus-ibus-libzhuyin
:[8] un motor para el método de entrada Zhuyin ("bopomofo") (una alternativa al ibus-chewing).ibus-m17n
: un IME para m17n el cual permite la introducción de muchos lenguajes utilizando los métodos de entrada desde mn-17-db
. Vea detalles en la sección #ibus-m17n.ibus-mozc
: un complemento para IME japonés llamado "mozc" y desarrollado por Google.[9]ibus-pinyin
: un IME fonético chino avanzado para usuarios de Pinyin. Desarrollado por Huang Peng (autor principal de Ibus) y también con muchas características avanzadas tales como corrector ortográfico para el idioma inglésibus-table
: un IME que aloja o acoge métodos de entrada basados en tablas. Vea detalles en #ibus-table.ibus-unikey
: un IME para introducción de caracteres en idioma vietnamita.El ibus-m17n es un IME que utiliza métodos de entrada e iconos correspondientes en la base de datos m17n. A diferencia de la ibus-table, que admite tablas planas, los métodos de entrada m17n también admiten estados, cuyas etiquetas se muestran en el panel IBus (barra de idiomas). Los métodos de entrada M17n también soportan el texto circundante, por lo tanto, lenguajes como el idioma tailandés y varios IM como el Zuyin plano que requieren esta característica son soportados a través de ibus-m17n.
El ibus-table, desarrollado por Yu Wei Yu, es un IME que carga tablas de métodos de entrada que no necesitan una lógica complicada para seleccionar palabras.[10] Muchos métodos de entrada chinos basados en estructuras como Cangjie y Wubi son soportados de esta manera.
Tablas del MI publicadas oficialmente:[11]