#osxchat blog

2004/12/19

OpenVanilla 0.6.1 發表

作者: lukhnos

經過幾個禮拜的調整與修改,OpenVanilla 0.6.1 誕生。

OpenVanilla 是一套輸入法「框架」,本身並不是任何中文輸入法,而是提供一個架構,希望讓中文輸入法的開發變得比較簡單,同時提供了一套「載入器」,把輸入法載到作業環境中。

0.6.1 的新增功能,我們先前陸續都在 #osxchat blog 報導過了。除了「打繁出簡/打簡出繁」的功能外,使用「系統偏好設定」來存取輸入法的設定、「全形/半形」功能、使用快速鍵(目前暫定為 CMD-CTRL-1~9) 來切換輸入法,這些也都是從 OpenVanilla 計劃開始以來,就說應該要做的東西。如今這些功能也都一一加進去了。

在最重要的輸入法部份,感謝 ijliao 和 xeonchen 兩位朋友的測試,OpenVanilla 的行列輸入法已經可以使用了,在 w 快速鍵等行列特有的設定上,也已經和 PC 版的一致。另外,0.6 的當家模組,當然還是要屬 Xcin 模組了。Xcin 是中文界極重要的中文輸入法計劃,因為 Xcin 而讓 UNIX/X-Window 有了好用的中文輸入法。而 .cin 資料格式便是 Xcin 的重要創見。OpenVanilla 的 Xcin 模組並沒有使用到 Xcin 的程式碼,而是新寫程式碼,讓功能上可以做到「讀哪一套 .cin 就產生哪一套輸入法」的功能。在 b6s 的努力下,原來使用 Objective-C++/Cocoa 的程式,已經全部 C++ 化,讓 OVIMXcin 成為可以跨平台的模組。

技術問題擺一邊,在 OVIMXcin 模組的加入後,OpenVanilla 可以支援的輸入法數量,也就瞬間提升。簡單地說,任何 UTF-8 編碼、符合 .cin 格式的檔案,OpenVanilla 都可以使用。在 0.6.1 的標準包裝裡,我們提供了三碼大易輸入法、倉頡輸入法(與過去的「香草倉頡」其實是一樣的東西,唯一差別在於標點符號的輸入上)、漁村符號輸入及日文假名輸入。其中漁村輸入法是 zonble 的心血。據 zonble 的說法,這更是自泰山輸入法以來,國內唯一新作的符號輸入法。

而如果安裝了 OpenVanilla 的「加值包」套件,就會有更多輸入法可使用:簡體拼音、簡體倉頡、簡體注音、五筆字形、雙拼、粵語拼音等等。這些也都是源自 Xcin 計劃的輸入法表格,如今也都可以在 Mac OS X 上使用了。配合「打繁出簡/打簡出繁」的轉換功能,相信對於需要撰寫簡體中文文件的繁體使用者,以及對於熟悉簡體中文但希望輸出繁體字的朋友,都會有所幫助。

在 gugod 的努力下,OpenVanilla 如今也有了可用空白鍵選字的酷音輸入法模組。OV 的酷音模組,採用新版的 libchewing (由 jserv 維護),在核心部份與 Xcin 酷音、IIIMF-酷音、SCIM-酷音可說是系出同源了。

除此之外,pc 所參與的 POJ (台語白話字)模組,也已經有了初步的成果。目前我們已經可以用這個模組,來打出教羅白話字,也可以在有資料檔的情況下,做到打音出字(打POJ出漢字,也就是所謂的漢羅模式)的功能,一定程度上算是完成Mac OS X上的台語「注音輸入法」。

在 0.6.1 完成之後,我們除了會針對系統功能上可能有的缺陷做補正,另外就是開始著手 0.7 版的工作。在目前初步的構想中,除了程式碼要做再更進一步的結構重整,另外對於使用者介面、選字窗,也應該要有所改變。

除了 OpenVanilla 架構上的修改外,另一個面向是我們希望關心輸入法的朋友都能一同參與的,那就是輸入法的「內容」。例如倉頡資料表的標點符號該怎麼設計,注音資料表中許多錯了好多年的資料,這些都需要有人發起維護或「補完」計劃。對於 OpenVanilla 的開發者來說,我們不可能瞭解每一套輸入法的細膩差異,因此也不可能遍答我們不熟悉的輸入法問題。既然 .cin 是公開且獨立的資料檔格式,由熟悉某一輸入法的朋友,來發起該輸入法的相關計劃,應該是比較恰當的。

OpenVanilla 設計的目的方向,其實並不在於「解決每一個人的輸入法問題」,而在於「提供一個方法,讓每一個人都能解決自己的輸入法問題」。其中最大的問題之一,要屬於標點符號的輸入。由於每個人的習慣不同、需要不同,其實要輸入法去應付所有可能,並不是非常經濟。直觀的作法,是應該提供足夠的彈性,讓使用者能夠依自己的需要來自訂,但同時自訂的方法又應該簡單。

在 0.6.1 釋出的同一天晚上,gugod 和我聊到 OV 的發展。沒錯,目前我們因為有了 .cin ,我們的確可以跟使用者說,有需要,自己改 .cin 檔便行。但不管怎麼樣,那離 "it just works" ,也就是裝起來就能用、裝起來就好用、要修改也只需兩三步的境界,還相當遙遠。(Gugod 常舉的例子是 Mac 的無線網路設定,這樣一件簡單的事,在許多作業系統平台上,其實不是理論當然的。我所想到的則是 Mac 的檔案分享與防火牆設定)。總之,我們希望能有更方便、更直觀的輸入法框架,其中還有很多努力的空間。

就我個人來說,在過去這兩個月裡,我學到不少 OS X 上的程式開發技巧。大架構上像是 Objective-C 語言、Cocoa 程式庫,軟體的門面上,像是使用 Interface Builder 建立介面、PackageMaker 的使用(因為不熟悉內部的運作,讓 0.6 版推出時,整整除了一個晚上的錯),以及對 Darwin 有更進一步的瞭解等等。但其實這些都只是初步。就像之前引用過的話「當一個計劃完成 90% 的程式碼時,就還有 90% 的事情未完成」。這種非常 Zeno 阿奇里斯跑不贏烏龜式的悖論,卻是寫程式的人點滴在心頭的真實。不過,這也是從事創作與開發工作,有意思的地方吧。

另一個我先前一直少提及的,是 open source 。OpenVanilla 固然是因為 open source 而成為可能,OV 也希望透過 open source 的方式,提出一些中文輸入法的可能解決方案。但 open source 的精神之一也在於自己動手解決問題。「自己動手」並不代表一定要會寫程式或是資訊背景出身。傳統上仰賴/寄望少數人幫你解決個人問題(例如期望電腦公司解決一個切身需要、對大公司來說卻沒急迫性的輸入法「個人習慣」問題),其實帶來許多痛苦和無謂的等待(浪費生命)。在最低限度上,open source 至少提供了一個可能性。而擴大那可能性、擴大輸入法議題的參與面,這是我自己在參與 OpenVanilla 的開發時,心裡所抱持的一個想法。

再次謝謝 OpenVanilla 的 committers: gugod, zonble, b6s, pc ,以及 #osxchat 上許多幫忙測試、提供意見的朋友。沒有些這些「先鋒」勇於冒著小白的生命危險進行測試,OpenVanilla 不會有這麼大步的進展。

OpenVanilla 的首頁位於 http://www.openvanilla.org 。在使用上有任何問題,建議大家多多利用中研院 OpenFoundry 的回報系統進行討論。

標籤: , ,

8 篇留言:

  • 說到了「it just works」,我大概半年前學了一個片語叫做「Out of the box」—拿出盒子就可以用,這個說法好像在國外更常用的樣子。

    作者: Blogger zonble 發表時間: 12/19/2004 04:06:00 下午  

  • 你好,我是 macdog,www.oikos.com.tw 的站長。

    這整個軟體計畫真的是太讓人感動了,很棒,看到可以直接輸入臺語、繁體轉簡體等功能,忽然想到大和解的定義居然就在 OpenVanilla 這裡出現,呵呵。

    這麼好的輸入法環境,不知道是不是有移轉到 win 上面的計畫,win 上面的輸入法雖然很多,但是還沒有看到這麼好用的。

    加油!

    作者: Anonymous 匿名 發表時間: 12/19/2004 06:20:00 下午  

  • 簡單的回答是,win32 ime api 的問題遠比 mac os x 來得大,所以我會先把 mac os x 的東西做到某個程度再回去弄 win32 的。

    進一步的說明,我將會發表於 http://b6s.blogspot.com/

    作者: Blogger b6s 發表時間: 12/20/2004 02:02:00 下午  

  • http://b6s.blogspot.com/2004/12/windows.html

    作者: Blogger b6s 發表時間: 12/20/2004 04:24:00 下午  

  • 你好,看到這個輸入法覺得很捧,但 link 卻開不到,無法享受...

    作者: Blogger watt 發表時間: 12/21/2004 12:35:00 下午  

  • 我用過前一版,真的很好
    但www.openvanilla.org就是開不到~: -(

    作者: Anonymous 匿名 發表時間: 12/21/2004 06:29:00 下午  

  • 網誌管理員已經移除這則留言。

    作者: Blogger gugod 發表時間: 12/21/2004 06:38:00 下午  

  • 我是歪林。 我對輸入法編程有濃厚的興趣。看到你的香草輸入法,有點像我的 MyIM,
    也是一個輸入法容器,也有 Linux 版 / Windows 版。遲些有時間,一定會下載你的
    來看看。

    作者: Anonymous 匿名 發表時間: 12/23/2004 12:40:00 上午  

張貼留言

逆向鍊結:

建立連結

? 回前頁