The Old Blog Archive (Traditional Chinese), 2004-2009

Archive for November, 2007

OpenVanilla 2007年11月18日止的捐款收支明細

我們今天整理完OpenVanilla至昨日(2007年11月18日)為止的捐款收支明細,發佈為一份Google Docs的試算表,並且說明了近期的開發及支用情形。請大家參閱OpenVanilla Group所公佈的文件,謝謝!

.cin的歷史,與Leopard對.cin的支援

Apple在OS X Leopard中加入了對.cin格式的支援。做為輸入法開發者,我想這大概是對open source社群最棒的tribute之一。這個經過歷史考驗(.cin最早是由Xcin創建的格式)、廣為各framework使用、有許多使用者自訂或創建內容的格式,如今也成為了商業作業系統的一環。

根據我所知道的,把.cin放進~/Input Methods/或/Library/Input Methods中,重新登入,就會變出相對應的輸入法。不過要怎麼調整各種選項,我就不是很清楚了。

Yale Chinese Mac的主人Eric Rasmussen在Chinese Mac Google Group起了個頭,想了解 .cin 格式的定義,以及Leopard對 .cin 的支援。我貼了一封回應,也等於整理了我對 .cin 的理解。我對 .cin 在其他 framework 的實作瞭解有限,如有疏漏還要請大家指正了。

滿城盡是封面流 (cover flow)

Xcode 3的Quartz範例中有一個叫CovertFlow的程式,示範如何以CoreAnimation來製作cover flow。程式相當複雜。有人在Cocoa mailing list上問:Apple有沒有Cover Flow的API?

答案是有的──雖然Apple沒有將之公開。Class就叫IKImageFlowView。

如果你會用IKImageBrowserView,那麼幾乎已經完成了把程式cover-flow化的準備。進Interface Builder弄一個class為IKImageFlowView的custom view,然後把data source (IKImageBrowserDataSource protocol)的兩個必備method換成:

  • - (NSUInteger)numberOfItemsInImageFlow:(id)aFlowLayer
  • - (id)imageFlow:(id)aFlowLayer itemAtIndex:(int)index

就可以了。事實上呢,Apple的API還會耍一下小把戲。當你什麼都不做時,console log會丟給你一個exception,說data source沒有實作 “-flowLayer:itemAtIndex:” 這個method,實際上的名字卻是上述的imageFlow:itemAtIndex: 。

於是就做完了,根據傳統,有圖有真相:

Cover Flow Study

範例程式碼可以從CocoaHeads Taipei Group此處取得

OpenVanilla新模組:聯想詞功能(alpha版)

好久沒用 OpenVanilla 開發新功能了。都說 OV 適合開發輸入法相關功能,如果不拿來善用會有點可惜。

所以就寫了這個:OpenVanilla聯想詞模組

這只是開發版,還有點生。抓下來之後,照著裡頭”How to Install”的說明來安裝,然後把兩個名稱奇異的模組都enable,就可以開始用了。任何單字式的輸入法都可以使用(倉頡、簡易、傳統注音、大易、行列… you name it)

Tiger跟Leopard用的OV,都可以安裝。

No picture(s), no truth. 首先是要 enable 兩個名稱怪異的模組:

OpenVanilla Associated Phrase Module

就大功告成了:

Example of Associated Phrase Module in Action

裡面的詞庫是從酷音詞庫(tsi.src)衍生來的。目前還沒有翻頁功能,不過基本邏輯已經正確囉。

Windows版本,等 key preprocessor 架構完整後,就能支援了。

再度徵求測試:LeopardVanilla 0.8.0.3

晚上發布了新版本的 LeopardVanilla ,請從此處下載

這個版本修正了幾個問題:

  • 最令人困擾的 “Finder當機” 問題(這次不是被輸入法模組害到,而是 OV Loader 本體的問題了),應該已經被修正了(尤其是 PowerPC Mac 常發生這種狀況)。如果您還是遇到「裝完後重開,Finder卡住」問題,請務必再和我們回報,好讓我們找出原因
  • 數字鍵被誤判為輸入碼,而不被當成數字輸出(10.4 用的 OV 無此問題)
  • 在中文介面上無法正確顯示為 “LeopardVanilla” 而顯示成 “OpenVanilla” 的問題
  • 使用了其他語系的鍵盤後,再切回中文輸入法,鍵碼錯亂問題(此修正為 LeopardVanilla 限定)

另外修正幾個問題,目前為 LeopardVanilla 限定。我們也將發布 10.4 用的 OV 與之同步:

  • 反查模組不穩的問題
  • 酷音模組在使用許氏鍵盤配置時,無法使用七個以上選字鍵的問題
  • 偏好設定中,加入酷音「候選字數」設定,沒有正確出現的問題
  • 酷音模組在使用許氏鍵盤時,無法使用 asdfghjkl 連續選字鍵的問題
  • 行列30反查模組加回標準安裝包中

已知問題:

在 LeopardVanilla 上,「使用完偏好設定後,輸入法失效」的問題,仍無法獲得有效解決。我們已經將問題回報給 Apple ,也正在尋找合適的 workaround(避開問題的方法)。在此之前,如果您發現用完偏好設定後,LeopardVanilla 失效,可以試試以下任一種方法:

  • 再進入一次 OV 偏好設定 (在 /Library/OpenVanilla/0.8/Loader/OVPreference.app),然後離開
  • 在 shell 下執行 “killall OpenVanilla”
  • 從 Activity Monitor 中將 OpenVanilla.app (或者是名稱為 LeopardVanilla 的 process) 給停止

要再請大家測試了。謝謝!

徵求測試:針對LeopardVanilla不穩所做的修正

自上週五 OpenVanilla 0.8.0 發布以來,我們已經接到不少關於 Leopard 專用版 (“LeopardVanilla”) 不穩定問題的回報。我們今天發布了新的修正套件,在此徵求測試。請下載本連結所附的檔案,解開後,依據README文件說明,將/Library/Input Methods/中的OpenVanilla.app代換掉(可能要先disable LeopardVanilla並登出才能進行代換,或者在shell進行sudo cp),再重新登入。

目前「初次起動不穩」的問題應能獲得改善。「進入偏好程式修改設定後,輸入法無法使用」的問題也應獲得大幅改善。前者應可算完全解決,後者仍有機會在離開偏好設定後,造成輸入法失靈(解決方法,除了離開現有應用程式,也可試著在shell下打”killall OpenVanilla”)。我們會繼續努力解決後面這一問題。

要請各位朋友幫忙測試看看這一版是否有改進了。謝謝!