IBus:修订间差异
First draft 新條目 |
→ibus-table: 內容擴充 |
||
第63行: | 第63行: | ||
ibus-table 為余鈺煒所開發,針對查表型輸入法所設計的碼表輸入引擎。許多輸入法,不需要像是 ibus-chewing 或是 ibus-pinyin 之類的複雜選字演算法,只需要一個對照表即可運作<ref>[http://code.google.com/p/ibus/wiki/TableReadme ibus-table README (in Chinese and English)]</ref>。許多[[字形輸入法]]像是[[倉頡輸入法]]及[[五筆輸入法]]都由 ibus-table 所支援。 |
ibus-table 為余鈺煒所開發,針對查表型輸入法所設計的碼表輸入引擎。許多輸入法,不需要像是 ibus-chewing 或是 ibus-pinyin 之類的複雜選字演算法,只需要一個對照表即可運作<ref>[http://code.google.com/p/ibus/wiki/TableReadme ibus-table README (in Chinese and English)]</ref>。許多[[字形輸入法]]像是[[倉頡輸入法]]及[[五筆輸入法]]都由 ibus-table 所支援。 |
||
官方釋出的碼表<ref>[http://code.google.com/p/ibus/downloads/list IBus Google Downloads]</ref>: |
|||
現有的碼表: |
|||
* latex: 使用 latex 語法來輸入特殊符號,ibus-table 自帶 |
* latex: 使用 latex 語法來輸入特殊符號,ibus-table 自帶 |
||
* compose: 使用 compose letter 及 diacritical mark 來輸入特殊字元,ibus-table 自帶 |
* compose: 使用 compose letter 及 diacritical mark 來輸入特殊字元,ibus-table 自帶 |
||
第70行: | 第70行: | ||
* Wubi: [[五筆輸入法]] |
* Wubi: [[五筆輸入法]] |
||
* Yong: YongMa |
* Yong: YongMa |
||
* ZhengMa: 鄭碼 |
|||
==參閱== |
==參閱== |
2009年5月12日 (二) 07:05的版本
IBus logo | |
原作者 | 黃鵬 |
---|---|
開發者 | 黃鵬 |
首次发布 | 2008年8月10日 |
当前版本 | 1.1.0.20090424(2009年4月24日 | )
源代码库 | |
编程语言 | C, Python |
操作系统 | Unix-like |
语言 | 多語 |
类型 | User interface techniques |
许可协议 | GNU Lesser General Public License v2 |
网站 | IBus project website |
Intelligent Input Bus (IBus) 是 Unix-like 作業系統下的多語輸入法平台。因為它採用了匯流排(Bus)式的架構,所以命名為Bus。
目標
IBus 的主要目標如下:
開發動機
在東北亞OSS論壇 Work Group 3[1]提出的「輸入法引擎服務提供者界面規格」(Specification of IM engine Service Provider Interface)草案裡[2],能實現以Bus為核心的架構被建議採用。SCIM-1.4 的架構並不被看好,因為它是用C++開發的,因此常常會有C++應用二進位介面不符合的情況發生[3]。
從那時起,一些人開始著手開發下一代的輸入法平台,像是蘇哲領導的IM-Bus,以及胡正的SCIM-2,可惜的是它們的開發進度仍然停滯不前。因此,紅帽的黃鵬開始用Python開發IBus以實現 IM-Bus提出的構想。IBus 並不完全實現東北亞OSS論壇所建議的函式,而是採用D-Bus及Glib來實做。儘管如此,IBus已經開始被OSS社群所接受,FreeBSD以及各大Linux發行版 如Fedora, Ubuntu已經將 IBus 納入其套件庫裡。在 Fedora 11 裡,IBus已經成為預設的多語輸入平台[4]。
系統架構
IBus 是用 C 及 Python 開發的,如此可以避免 C++ ABI transition 問題。IBus主要透過下列三種服務(Service)來提供功能:
- 輸入法引擎服務:為輸入法本身。
- 配置服務:管理IBus以及輸入法的設定選項。
- 控制面板服務:提供諸如語言條,候選字選單等使用者介面。
IBus 使用D-Bus作 ibus-daemon,服務,以及 IM客戶端(像是konsole, gedit, firefox)之間的溝通。 ibus-daemon 透過接受服務登錄,以及發送D-Bus訊息來管理服務及IM客戶端。
IBus支援 XIM 協議及 Gtk IM 模組。Qt IM 模組正在開發中,目前KDE之類的Qt程式可以使用XIM來輸入。
特點
現有輸入法引擎列表
- ibus-anthy: 日文輸入法
- ibus-chewing: 新酷音輸入法,基於libChewing智慧型注音輸入法。
- ibus-hangul: 韓文輸入法
- ibus-m17n: 使用m17n-db 的多語輸入法。
- ibus-pinyin: 拼音輸入法,為IBus主要開發者所開發,有許多像是英文拼字檢查之類的進階功能。
- ibus-table: 碼表輸入引擎,細節請參閱 #ibus-table.
ibus-table
ibus-table 為余鈺煒所開發,針對查表型輸入法所設計的碼表輸入引擎。許多輸入法,不需要像是 ibus-chewing 或是 ibus-pinyin 之類的複雜選字演算法,只需要一個對照表即可運作[5]。許多字形輸入法像是倉頡輸入法及五筆輸入法都由 ibus-table 所支援。
官方釋出的碼表[6]:
- latex: 使用 latex 語法來輸入特殊符號,ibus-table 自帶
- compose: 使用 compose letter 及 diacritical mark 來輸入特殊字元,ibus-table 自帶
- Cangjie: 倉頡三代及五代。
- Erbi: 二筆輸入法
- Wubi: 五筆輸入法
- Yong: YongMa
- ZhengMa: 鄭碼
參閱
- IBus 首頁
- IBus Git 源碼
- List of input methods for UNIX platforms
- Input method
- SCIM
- uim
- Comparison of Chinese Input Method Servers for Unix-like Operating Systems