Linux 中文輸入法新挑戰

71
Linux Linux 中中中中中中中中 中中中中中中中中 Jim Huang ( 中中中 ) Project Manager, W-Channel Inc. ( 宇宇宇宇 ) <[email protected]> Kaffe Developer <[email protected]> September 16, 2004

description

Linux 中文輸入法新挑戰. Jim Huang ( 黃敬群 ) Project Manager, W-Channel Inc. ( 宇動科技 ) Kaffe Developer September 16, 2004. 題綱. 挑戰在哪? 走出 XIM 下一代輸入法架構 IIIMF SCIM 當輸入法遇見 Thin Client 新興專案介紹 XCING 新酷音. 挑戰在哪?. 過去中文輸入法的問題 架構上難以支援 輸入法選擇少 平台差異大 當今的挑戰 - PowerPoint PPT Presentation

Transcript of Linux 中文輸入法新挑戰

Linux Linux 中文輸入法新挑戰中文輸入法新挑戰

Jim Huang ( 黃敬群 ) Project Manager, W-Channel Inc. ( 宇動科技 )

<[email protected]>Kaffe Developer <[email protected]>

September 16, 2004

Linux 中文輸入法新挑戰

2

題綱題綱• 挑戰在哪?• 走出 XIM• 下一代輸入法架構

– IIIMF– SCIM

• 當輸入法遇見 Thin Client• 新興專案介紹

– XCING– 新酷音

Linux 中文輸入法新挑戰

3

挑戰在哪?挑戰在哪?• 過去中文輸入法的問題

– 架構上難以支援– 輸入法選擇少– 平台差異大

• 當今的挑戰– 重複開發,無謂的資源浪費– 已有的輸入法模組或系統,難以與新系統銜接– 選擇性太多,缺乏統整開發的架構– Thin Client 模式的引入– 多國語文支援的需求

Linux 中文輸入法新挑戰

4

為何採納 為何採納 GNU/LinuxGNU/Linux??

100%

1980 1990 2000 2010 2020 2030 2040 2050 2060

我們在這Market Share

Year0%

作業系統發展藍圖

Windows GNU/Linux Cyborg OS Matrix OS

Linux 中文輸入法新挑戰

5

Internet Internet 興起改變什麼?興起改變什麼?•寬頻

–軟體租賃成為可能–分散式系統大行其道–成本效益比

•合久必分、分久必合–分散式 集中式

Linux 中文輸入法新挑戰

6

典型網路服務架構

輸入法為何不能當作服務?

Linux 中文輸入法新挑戰

7

• GNU/Linux i18n/L10n 架構• XIM 簡介• XIM 缺陷

走出 走出 XIMXIM

Linux 中文輸入法新挑戰

8

•名詞解釋– i18n: Internationalization– L10n: Localization– m17n: Multilingualization– CJK(V): Chinese, Japanese, Korean, (Vietnamese)

– OpenI18N: Open Internationalization Initiative ( 舊稱: LI18NUX)

把系統或應用程式轉變成相容特定語言的過程 例如將某個軟體中文化主要項目:訊息翻譯、使用介面,圖形顯示等

在 i18n 的部分中只處理語言的部分稱為 m17n 比如,一個 「多國語言化」的軟體可同時處理英文、法文、中日韓,甚至阿拉伯文等

GNU/Linux GNU/Linux 的 的 i18n/L10n i18n/L10n 架構架構

把原來英文為主的系統或應用程式改寫為同時支援多種語文或特定文化慣例的過程一般的開發流程只使用英文,但是為了符合廣泛的語言文化慣例,軟體必須在設計架構與機制上針對多國語文作擴充I18n 僅是在軟體設計上提供使用多國語文的可能性

Linux 中文輸入法新挑戰

9

•觀念釐清–「中文化」是模糊的概念– Linux 上的「中文化」兼具 i18n 與 L10n

–中文平台發展技術•不需修改既有應用程式,便可顯示、印列輸入中文

–不侷限於特定環境•Linux tty (console)、 X Window、 Application Resource

GNU/Linux GNU/Linux 的 的 i18n/L10n i18n/L10n 架架構 構 (( 續續 ))

Linux 中文輸入法新挑戰

10

• 關連鍊 (chain)– Linux kernel– GNU C Library (glibc)

– XFree86 (X11)– Gtk/GNOME– Qt/KDE– 其他函式庫或工具程式– “chain” 的涵意

GNU/Linux GNU/Linux 的 的 i18n/L10n i18n/L10n 架架構 構 (( 續續 ))

Linux 中文輸入法新挑戰

11

• 國際化的四大等級– 語言可切換,在系統啟動時可指定某語言– 使用不同語言的軟體可同時使用,在應用軟體啟動時可指定某語言

– 使用不同語言的軟體可同時使用,而且應用程式的語言可動態切換

– 使用不同語言的軟體可同時使用,而且在應用程式中可同時使用不同語言

mltalk (X 基金會 ) 決定使用採納本方式實用與可行性原則:不需要重新編譯程式即可適用多語文環境的平台

語系 語系 (Locale) (Locale) 的概念的概念

Linux 中文輸入法新挑戰

12

• XIM 概況• XIM 特徵• XIM 歷史回顧• XIM 架構

XIM XIM 簡介簡介

Linux 中文輸入法新挑戰

13

XIM (X Input Method)XIM (X Input Method)

Linux 中文輸入法新挑戰

14

• 架構在 I18N (InternationizatioN) 與 Locale 上的輸入法協定

• 目的是不需要更改原始碼本身就能接受各語系輸入法

• 用來處理非歐美語系的輸入法• 規範–XIM Client : 應用程式–XIM Server : 輸入法

XIM XIM 特徵特徵

Linux 中文輸入法新挑戰

15

• X11R4– 沒有統一的輸入法系統,由個別軟體自行處理輸入法需求

– 由 Fujitus 與 Omron 提供 Xjp• X11R5

– 1989 年 XI18n 開始在 X 協會推動輸入法– 開始定義 XIM/XFontSet APIs– 分歧發展

• Omron/NTT 實作 Xsi• Unix International (UI) 實作 Ximp• Unix International 將 XIM 定義為標準

XIM XIM 發展歷史回顧發展歷史回顧

Linux 中文輸入法新挑戰

16

• X11R5– 輸入法系統的衝突

• Omron/NTT• UI

(Fijitsu 、 Sony 、 Xerox 、 ATT/USL 、 Hitachi 、 Sun 、… )

• X11R6– OSF (IBM 、 DEC 、 HP) 加盟 UI– XIM Protocol 定義

• 但不與 Xsi/Ximp 相容– 強化 XIM/XOM/XLC APIs– Xlib XIM 實作獨立為 SI– IMdKit (IM server Developer Kit) 引入

XIM XIM 發展歷史回顧 發展歷史回顧 (( 續續 ))

Linux 中文輸入法新挑戰

17

• X11R6.5–X 協會重新啟動, X.org 更新 X 標準與

SI–Sun 移轉 Solaris 的 XI18N 貢獻到

X.org–XFree86 從 XI18N 相關改變帶回 X.org–OpenI18N.org 發佈 xiiimp.so

• XIM 相容 IIIMF 模組

XIM XIM 發展歷史回顧 發展歷史回顧 (( 續續 ))

Linux 中文輸入法新挑戰

18

XIM XIM 架構架構

Linux 中文輸入法新挑戰

19

XIM 結構與 X Window System 緊密相連,所以使用 XIM 之系統必須擁有 X ,對 Embeded System 而言限制很大

不支援多種語言 XIM 輸入法 Server 無法告知 Client 端,用戶輸入何

種語言或編碼 案例: Mozilla 可進行多國語文網頁瀏覽,可是卻缺乏

對應的 XIM client/server 互動

XIM XIM 的缺陷的缺陷

Linux 中文輸入法新挑戰

20

XIM 與 IIIMF 設計者 Hideki Hiura 指出: 功能單一的 XIM ,只能運作於 X 架構

對 X 元件具有強烈的相依性,如: XFontSet 、 Cordinates 、 Color 、 Display 、 Scre

en 、 Atom, … Ctext (subset of ISO-2022) 更是 charset 的依賴 採 X transport ,因此 XIM 只能存在於 X 與 X

server XIM 以 POSIX 單一 locale 為基礎

導致每個 XIM client/server 聯繫以 locale 為主,無法更動

XIM 只能提供給 single-user User 應該可自終端機連線取得輸入法服務

XIM XIM 的缺陷 的缺陷 (( 續續 ))

Linux 中文輸入法新挑戰

21

XIM 與 IIIMF 設計者 Hideki Hiura 指出: 缺乏通用性 IM server 架構

需要同時啟動多個單一功能的 XIM server 要啟動多少 XIM server 才能滿足多國語

文需求? 以純文字資料交換當作 API 設計依據

僅能處理純文字 輸入法與其他智慧型裝置,如手寫辨識、語音輸入、或

其他具有大量資料傳遞的應用,倘若需要整合,將有大量的資料交換

無法處理不同環境 對 Web 應用相當薄弱

XIM XIM 的缺陷 的缺陷 (( 續續 ))

Linux 中文輸入法新挑戰

22

Hideki Hiura 指出: 「基本上 XIM 太多問題… 根本無法透

過 patch 改正」 1995 年重新設計輸入法,提出 IIIMF 架

XIM XIM 的缺陷 的缺陷 (( 續續 ))

Linux 中文輸入法新挑戰

23

許多輸入法系統相繼提出 但唯有兼具質 (彈性、擴充性 ) 與量 ( 支

援多語文、多輸入法需求 ) 者將勝出 首選

IIIMF Sun 主導,為 OpenI18N 正式計畫

SCIM/UIM/m17n 由 SCIM 與 UIM 作者共同推動,為

FreeDesktop.org 子計畫

下一代輸入法架構下一代輸入法架構

Linux 中文輸入法新挑戰

24

推動 IIIMF 的理由 IIIMF vs. XIM

IIIMF 發展目標 IIIM Framework 特性

IIIMF IIIMF (Internet/Intranet (Internet/Intranet

Input Method Framework)Input Method Framework)

Linux 中文輸入法新挑戰

25

1. 解決跨平台問題 ( 將輸入法模組與 GUI 分離 ) ,更完善的 Server-Client 架構

2. XIM 受限於 Locale ,不同語系輸入困難 (IIIMF與 Locale 無關 )

3. 較容易發展新的 Language Engine

4. 適用於嵌入式系統5. 適用於在 Internet 環境, Client 端對 Server 端

要求輸入法服務

推動 推動 IIIMF IIIMF 的理由的理由

Linux 中文輸入法新挑戰

26

不同平台部分由 IIIM Client端處理,解決跨平台問題

IIIMP 用 Utf-16 傳送,可支援多語系與編碼輸入 LE vendor 不需要再去著重於一些“ non-

language specific” 的基礎建設,而可專注於輸入法本體的呈現

context managements Input Method Protocol platform secific input method interface rendering

IIIMF vs. XIMIIIMF vs. XIM

Linux 中文輸入法新挑戰

27

XIM IIIMF

應 Client端需求,可能產生多個 Server

Daemon存在,只需啟動一次

應用程式受 Locale 限制轉換狀態需更換 Locale 變數

與 Locale 無關直接切換

Locale 切換較麻煩 不需切換 Locale

輸入法 engine 等同於 XIM Server

輸入法 engine 以動態模組掛入

IIIM Server

必須有 X Window system platform independent

可相容於支援 XIM 之應用程式

IIIMF vs. XIM IIIMF vs. XIM (( 續續 ))

Linux 中文輸入法新挑戰

28

徹底解決 XIM 弊端 去除對 Window System 的相依性 完全 Unicode 支援、實現真正多語文支援 在 Unix 運作的 server 可讓 Windows 或其他環境的

client 使用 完整的 IM 架構 無所不在,可透過網路動態提供輸入法 可攜性與擴展能力

提供現有 XIM、 GTK+ immodule、 Java Input Framework 等架構的溝通介面

擴展性強的 client-side API

IIIMF IIIMF 發展目標發展目標

Linux 中文輸入法新挑戰

29

• 多平台、跨平台支援• 不依賴與底層視窗系統 • 同時運行多個 LE (Language Engine)• 多使用者支援• 輸入法 Protocol 可再低頻寬的系統,如 Modem 連線,

上運作• 讓 LE 開發者專注開發輸入法本身• 元件

– Server Framework– Client Framework– Language Engine

IIIM Framework IIIM Framework 特性特性

Linux 中文輸入法新挑戰

30

Internet/Intranet

IIIM Protocol

IIIM Client 1 IIIM Client 2 IIIM Client3

IIIM Server

Microsoft Windows

IME

X Window System

QTimmodule

IIIM FrameworkIIIM Framework

Linux 中文輸入法新挑戰

32

IIIM Server(Htt Server)1. 作為 UNIX Daemon2. 只需要運作一個 IIIM server3. 提供標準輸入法系統 API (LEIF) -

/usr/lib/im/leif4. 所有的 LE 都是動態載入的 so (shared object) 或

dll精髓:提供一個 LE 的 plugin 介面與 Client 端以 IIIM

Protocol來溝通,用以處理 Client 的要求 (Input Event)

IIIM Server FrameworkIIIM Server Framework

Linux 中文輸入法新挑戰

33

Linux 中文輸入法新挑戰

34

• PCE/EMIL– LE 與 IIIMSF 聯繫的 XML-based IDL

•EMIL 可用以設計輸入法•新的輸入法應該是一個 generic EMIL processor,把使用者指定的輸入法行為翻譯出來,而不是針對各別輸入法做 specific case

• X Auxiliary Library– X Auxiliary Object 共通性

• Client-side configuration library

IIIMF IIIMF 的擴充設計的擴充設計

Linux 中文輸入法新挑戰

35

• SCIM 背景– SCIM / UIM / m17n

• SCIM 支援度–快照 (To See Is To Believe.)

• SCIM 特點

SCIM (Smart Common SCIM (Smart Common Input Method platform)Input Method platform)

Linux 中文輸入法新挑戰

36

• SCIM、 UIM 與 m17n library 原本是三路人馬– SCIM (Smart Common Input Method platform) 為蘇哲發展•完整的簡體中文與優秀的架構

– UIM (Universal Input Method) 為 TOKUNAGA Hiroyuki、 Masahito Omote 、 Yamaken 等人發展•眾多 CJK 輸入法支援

• 2004-06-12 SCIM/UIM 整合• 2004-06-14 SCIM/m17n 整合

– SCIM/UIM 成為多國語文輸入法解決方案

SCIM/UIM/m17nSCIM/UIM/m17n

SCIM/UIM SCIM/UIM 快照快照

SCIM/UIM SCIM/UIM 快照 快照 (( 續續 ))

Linux 中文輸入法新挑戰

39

• 與現有架構良好的整合能力 – scim-uim (使用 UIM 作為 backend) – scim-m17n (使用 m17n library 作為 backend)

• 完善的使用者介面與設定工具 – scim-panel-gtk : GTK+ 2.x 打造的設定介面

( 預設 ) – skim : KDE 環境下的 SCIM 設定介面

• 設計哲學 – 兼具簡易與彈性的 API – 高度延展與動態性 – 徹底分離 IMEngine、 FrontEnd,與 GUI Panel – 各元件間維持低耦合度 (loose binding) – 選擇性的 socket communication (IIIMF 是強制

使用 )

SCIM SCIM 特點特點

Linux 中文輸入法新挑戰

40

• 重要特徵 – 以 C++/STL 實作,提供有效與簡易清楚的 API (也提供 C API binding)

– 提供眾多函示簡化 IMEngine 開發的困難度 – 兼具 dynamic loading 的 Input Method backend 特徵 ( 類似 UIM) 與採用 Client-Server 架構 ( 類似 IIIMF)

SCIM SCIM 特點 特點 (( 續續 ))

Linux 中文輸入法新挑戰

41

• SCIM 兼具務實與彈性– 易於與現有架構接軌– 簡單卻有彈性的架構

• 運作模式– 動態載入 IMEngine– Client-Server 架構

SCIM SCIM 運作模式運作模式

Linux 中文輸入法新挑戰

42

SCIM SCIM 運作模式:運作模式:動態載入 動態載入 IMEngineIMEngine

Linux 中文輸入法新挑戰

43

SCIM SCIM 運作模式:運作模式: Client-Server Client-Server 架架構構

Linux 中文輸入法新挑戰

44

• 七月份 SCIM mailing-list 上, SCIM/UIM 開發者與 IIIMF 設計人 Hideki 大興筆戰– SCIM 將與 IIIMF 分道揚鑣?

• SCIM 主要開發者蘇哲成為 IIIMF cvs committer,致力輸入法平台的整合

• Sun JDS (Java Desktop System) 全面支援 Unicode– 只保留 UTF-8,其餘 locale codec 一律捨棄– 內建強化的 IIIMF

SCIM SCIM 與 與 IIIMF IIIMF 的八卦的八卦

Linux 中文輸入法新挑戰

45

當輸入法遇見 當輸入法遇見 Thin ClientThin Client

•原則–輸入法是一種服務

• Thin Client 與輸入法系統的整合• Thin Client 在多國語文環境遇到的問題

• W-Channel 的 Peach (發展代號 )

Linux 中文輸入法新挑戰

46

Thin Client Thin Client 與輸入法系統的整與輸入法系統的整合合

• 實際上的問題– 對中文、日文,以及韓文使用者來說,永遠無法一套輸入法方式滿足所有使用者需求

– Thin Client 內建多種輸入法不經濟– 某些輸入法,如日文手寫辨識,容量很大

• 解決方案– 將輸入法視作服務!– 貫徹 Client-Server 架構,發揮 Thin Client 優勢

• InputMethod-on-Demand

Linux 中文輸入法新挑戰

47

Thin Client Thin Client 在多國語文環境遇到的問題在多國語文環境遇到的問題

• 案例分析– Kiosk 的應用可能放置於機場提供服務,必須對不同國籍使用者作最快速的線上更換語言,並且提供所需輸入法服務

– 過去 X-based Thin Client 難以動態更換 XIM server,也無法動態切換不同語系的輸入法

• 解決方案– 徹底採用 Unicode– 引入 IIIMF 或 SCIM 等新一代的輸入法架構

Linux 中文輸入法新挑戰

48

W-Channel W-Channel 的 的 PeachPeach• Peach (發展代號 ) Thin Client 關鍵特性:

– Smart-Install/Update (以 Zero-Install 為基礎 )

– TinyX/GTK+2.2• 提供高效能與良好的多國語文支援

– CoreWM / Desktop Environment• 支援 FreeDesktop.org 最新規格•全新打造,精簡又具彈性

– International Edition 內建 SCIM• 動態載入 IMEngine (localhost)• Client-Server 架構 (access remote IM services)

Linux 中文輸入法新挑戰

49

Smart-Install/UpdateSmart-Install/Update• 以 Zero-Install 為基礎• 將 Java WebStart 的理念與實作方式引入 Thin Client

• 軟體租賃、維護,以及授權方式的新選擇• 與 Desktop Environment 的整合

– 不需要系統管理者權限,使用者可以透明的取用任何有效的軟體

– 無論是否存在於 localhost 上– 所有軟體只會被 cache,並不會真正安裝

Linux 中文輸入法新挑戰

50

Smart-Install/Update Smart-Install/Update (( 續續 ))

• Download-on-Demand

• 降低過度集中的運算資源消耗

• 搭配版本控管• 允許 Thin Client 有更加的自訂能力

Linux 中文輸入法新挑戰

51

Smart-Install/Update Smart-Install/Update (( 續續 ))

Linux 中文輸入法新挑戰

52

Input Method on DemandInput Method on Demand• 將 SCIM 包裝後放置於 Smart-Install/Update 機制中

• 修改 SCIM 模組載入機制,允許動態更新• 策略

– 簡單的表格輸入法與模組•透過 Smart-Install 由使用者選擇後作 cache

– 複雜的大型辭典與手寫辨識資料比對• 由 IM service 統籌,以 Client-Server 架構進行

Linux 中文輸入法新挑戰

53

DemoDemo

Linux 中文輸入法新挑戰

54

Linux 中文輸入法新挑戰

55

– XCIN 的反思– XCIN 的新發展 – XCING

•eXtensive Chinese Input Next Generation

–酷音輸入法的新發展 -- Qooing (新酷音 )

新興專案介紹新興專案介紹

Linux 中文輸入法新挑戰

56

–中文輸入概況– XCIN (XIM 版本 )–中文輸入的重複開發– XCIN 的啟示

XCIN XCIN 的反思的反思

Linux 中文輸入法新挑戰

57

– 以「字型」為主• Cangjie (Changjei) (倉頡 )• Wubizixing (五笔字型 )• Array 30 (行列 )

– 以「字音」為主• Pinyin (拼音 )• Zhuyin (Phonetic) (注音 )• Cantonese Pinyin (廣東話拼音、粵拼 )

– 以「字義」為主•辭典輸入法 ( 英漢、漢英 )

– 混合「形、音、義」

中文輸入法概況中文輸入法概況

Linux 中文輸入法新挑戰

58

• 支援 BIG5 、 BIG5HKSCS 、 GB2312,以及 UTF-8

• 只要在不同 Locale 下啟動,自動採用該語系的編碼

目標– 輸入法模組功能改進– 處理多區域化資料庫的 XIM client 請求– 更多 Unix 平台支援

XCIN (XIM version)XCIN (XIM version)

Linux 中文輸入法新挑戰

59

• 著名中文輸入應用– JMCCE / zhcon / yact / chdrv / cce2k– IIIMF-xcin– IIIMF-chewing– CKeyboard

• 個人經驗– JMCCE 1.5 的遺憾– 接手 iiimf-chewing– 開發 scim-chewing

中文輸入法資源重複開發中文輸入法資源重複開發

Linux 中文輸入法新挑戰

60

• XCIN 程式碼品質優良,在許多 Unix 平台均有不錯的表現

• XCIN 有最佳的繁體中文輸入環境• XCIN 太依賴 X•許多需要中文輸入的專案仍自行作重複的工作,成果無法累積

XCIN XCIN 的啟示的啟示

Linux 中文輸入法新挑戰

61

• XCING = eXtensive Chinese Input Next Generation

•目標:– 延續 XCIN 功能– 整合現有中文輸入成果– 精簡 XCIN,移除所有 X 相依性– 更容易與其他專案合作– 協同開發

XCIN XCIN 的新發展 的新發展 -- XCING-- XCING

Linux 中文輸入法新挑戰

62

• XCING = eXtensive Chinese Input Next Generation

•目標:– 延續 XCIN 功能– 精簡 XCIN,移除所有 X 相依性– 更容易與其他專案合作– 協同開發

XCIN XCIN 的新發展 的新發展 – – XCING XCING (( 續續 ))

Linux 中文輸入法新挑戰

63

• SCIM/IIIMF-libxcin• libxcin– libxcin-core– libxcin-gen_inp– libxcin-bimsphone

XCING XCING 子計畫子計畫

Linux 中文輸入法新挑戰

64

libxcin libxcin 架構架構

Configuration

Modules Loader

Module Routines

Input Mehod Logic

Feedback

讀取 xcinrc 設定檔,初始化各項參數

接受 libxcin-core 送來的事件 ( 鍵盤輸入或滑鼠點選 )

依據設定,動態載入 libxcin 的各 module•libxcin-gen_inp (通用表格輸入 )•libxcin-bimsphone (詞音輸入模組 )•libxcin-chewing (酷音輸入模組 )

輸入法模組會針對不同事件,作 preedit 區編輯或 commit 動作

Linux 中文輸入法新挑戰

65

libxcin-core libxcin-core 與 與 IIIMF/SCIM IIIMF/SCIM 的的接軌方式接軌方式

libxcin-core 會自行處理中文輸入法的細節,並且充分利用現有的輸入法模組

IIIMF

Iiimf-libxcin (Language Engine)

libxcin-core

libxcin-core 會動態載入以下模組:•libxcin-bimsphone (詞音輸入法 )•libxcin-chewing (酷音輸入法 )•libxcin-gen_inp (通用表格輸入 )

SCIM

scim-libxcin (IMEngine)

libxcin-core

iiimf-libxcin 是與 IIIMF 接軌的 Language Engine

scim-libxcin 是與 SCIM 接軌的IMEngine

Linux 中文輸入法新挑戰

66

• Qooing = 新酷音•目標:– 徹底將 Logic 與 View 分離– 多種環境的酷音輸入法支援– 成為 Open Source 智慧型注音的核心專案

– Chewing Anywhere!

酷音輸入法的新發展 酷音輸入法的新發展 – – 新酷音新酷音

Linux 中文輸入法新挑戰

67

User

Backend 是使用者接觸的環境,可以是 XIM ,也可以是終端機 (JMCCE/screen) ,甚至是某個模組 (XCIN/IIIMF)

對使用者而言,各平台的新酷音輸入法方式是一致的

由 backend 收到的資料,從字詞庫模組處理斷詞

Backend

libchewing

新酷音邏輯上的呈現新酷音邏輯上的呈現

Linux 中文輸入法新挑戰

68

新酷音架構新酷音架構

Linux 中文輸入法新挑戰

69

• libchewing-0.3.x– Fully Unicode core– libskk-like API

• XCIN-chewing• IIIMF-chewing• SCIM-chewing• Console-chewing 提供給 zhcon/itw• screen-chewing• MSIME-chewing Win32 下的酷音輸入法

新酷音進行中計畫新酷音進行中計畫

Linux 中文輸入法新挑戰

70

新酷音展示快照 新酷音展示快照 (old)(old)

Linux 中文輸入法新挑戰

71

Linux 中文輸入法新挑戰

72

We Want You!We Want You!• Linux Kernel Hacker• WirelessLAN guru• Security/Crypto Hacker• GUI Designer• X Window Fan• C / Shell Script Programmer

• Contact Info: <[email protected]>