IBus
出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2024/01/01 06:49 UTC 版)
目標
IBusの主要な目標は以下のようなものである。
- ユーザーフレンドリーでかつ十分な機能を持ったインプットメソッドのユーザインタフェースを提供する
- セキュリティの向上のために認証の評価を採用する
- 変換エンジン開発者へ普遍的なインタフェースとライブラリを提供する
- 様々な地域や利用者の要求に耐えうる
動機
Northeast Asia OSS Forum[1]の第3ワークグループによるSpecification of IM engine Service Provider Interface[2]のドラフトは、D-Busのようなバス (コンピュータ)の実装を伴うバス中心のインプットメソッド構造を推奨した。その仕様書によれば、SCIM-1.4はC++で開発されている点で開発にあまりに適さないと考えられる。それはアプリケーションバイナリインタフェース (ABI) の変遷による問題でよく引き起こされる[3]。
そのため、IM-BUSやSCIM-2のような後継のプロジェクトがスタートした。しかしどちらのプロジェクトも休止してしまった。そのためレッドハットのHuang PengはIM-Busの考え方をCJK OSSフォーラムが推奨する機能の実装の代わりに、PythonやD-BusそしてgLibを用いて提供するためにIBusプロジェクトを創設した。それにも関わらず、IBusはすでにコミュニティの承認を得ており、FedoraやUbuntuのようなLinuxディストリビューションユーザーが追加しなくてもIBusが標準のレポジトリに含まれている。IBusはFedora 11から新しい標準インプットメソッド[4]になり、Ubuntuでは9.10でSCIMから置き換えられた。
構造
IBusはC言語とPythonで開発されている。これはSCIM 1.4.14以降でのC++のABI変更に伴う問題を防ぐためである。
IBusの大部分の機能はサービスを通して提供される。"サービス"の例は以下の通りである。
- Input method engine: 変換エンジン。IMEと省略することもできるが、MS IME(Input Method Editor)とは語源が異なる。
- Configuration: 設定。IBusや変換エンジンのような"サービス"の設定を扱う。
- Panel: パネル。言語バーや候補選択画面のユーザインタフェース。
IBusはibus-daemon、service、テキストエディタ、ウェブブラウザ、端末エミュレータのようなインプットメソッドクライアントと連携(通信)するためにD-Busを採用している。ibus-daemonマネージャーはサービスからの登録を受け取り、D-Busのメッセージを対応するサービスやインプットメソッドクライアントに送信することで、すべてのクライアント、サービス、クライアントを処理している。
IBusはXIMのプロトコル、GTK、Qtのインプットメソッドモジュールを実装している。
- ^ Northeast Asia Open Source Software Forum
- ^ Specification of IM engine Service Provider Interface
- ^ SCIM ABI transition in sid
- ^ Fedora 11 Feature List
- ^ “Show home:ftake / ibus-canna - openSUSE Build Service”. openSUSE Build Service. openSUSE project. 2024年1月1日閲覧。
- ^ Ueno, Daiki. “GitHub - ueno/ibus-skk: Japanese SKK engine for IBus”. GitHub. GitHub, Inc.. 2024年1月1日閲覧。
- ^ ibus-table README (in Chinese and English)
- ^ IBus Google Downloads
iBus
出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2020/06/14 15:21 UTC 版)
iBus(アイバス、Intelligent Input Bus)はUnix系OSにおけるインプットメソッドフレームワークである。iBusのbusはバスのような構造を持つところから来ている。
|
アイバス
固有名詞の分類
- IBusのページへのリンク