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

OpenVanilla on Linux/FreeBSD 的近期更新

Update: llwang也包裝過FreeBSD port,原文被我誤植的HTML code遮住了,特此更正。

OpenVanilla 在 2005 年春天時曾經發布過一個透過 SCIM 能夠在 Linux/FreeBSD 的 X11 環境下使用的輸入法套件。這個部份是由 vgod 完成並準備出第一份 Debian 套件,後來有 llwang 的 FreeBSD portmarr 的 RPM 包裝等套件。在此之後這支被稱為 OV-SCIM 的 loader 便進入開發停滯,然而在最近一個版本 (0.7.2) 中,OV-SCIM 仍然是可以順利編譯使用的。

在測試過 OV-SCIM 仍然可用,並且可在例如 Ubuntu 6.10 Installer CD 這樣的環境下使用後,我想該是時候來做一點修改的動作。

於是,OV-SCIM 在沉睡了一年半後,又開始動了起來。其中長久以來一直缺乏的設定管理(config management)和游標支援已經完成。

我們在這邊準備了一個可以 untar 到 Ubuntu 環境的套件,可以從這裡下載。下載完只要 sudo untar 到 Ubuntu 環境(或 Ubuntu Live CD 下),就可以使用了(可能需要重新啟動 X11、scim 或者調整 XMODIFIERS 等設定,在此不詳述)。

包裝內容包括 OV-SCIM Loader、幾套常用的 OV 輸入法模組(泛用模組 [包括倉頡、簡易、大易等]、傳統注音、台灣閩南語白話字 [Holo POJ]、行列、藏文),以及 OV 需要的 ltdl 程式庫。

以下是最近一次更動的說明:

  1. 在設定管理方面:這一版的 OV-SCIM 會將設定檔存在 ~/.openvanilla/ 下面的 org.openvanilla.[版號].plist 中。.plist 是蘋果公司的property list XML,也是 OS X 版本的 OpenVanilla 所使用的設定檔。這個版本使用和 OS X 一模一樣的設定方式和鍵碼配置,因此先前因為沒有config management而無法完整使用的模組(尤其是泛用輸入法的大易、簡易等),現在可以正常使用了。另外,使用 .plist 的設計哲學也與 OS X 相同:任何人可以用任何方式或任何程式去修改這個檔案,OV 會在偵測到檔案有變動時,通知輸入法模組更改設定。這樣一來,OV偏好設定程式,可以用 GTK、QT、ncurse 來撰寫,或者就只是使用 vim 來修改 .plist。
  2. 增加了游標支援。對於有使用到此一功能的輸入法,終於可以正確地使用方向鍵了。

技術說明和目前的問題如下:

  • 這一次的設定管理,是使用了第一個重構完的 AmphiVanilla 模組 AVConfig 來完成的。AVConfig 使用了 expat 這套 XML 程式庫來解譯 .plist 檔案。選擇使用 expat 的理由有二:(1) 它是 Ubuntu 本身即安裝好的程式庫、(2) 它在其他平台(例如 Windows)上的佈建也已成熟完整。當然另一方面也是藉此機會瞭解了一下 expat 的使用方式,發現比想像中簡單得多……
  • SCIM 的輸入法是可以指定一個 icon 的,但因為我不熟悉 autoconf 的用法,不知道怎麼樣在 make 時把圖片安裝到指定位置上。
  • 承繼上一個問題,因為 autoconf 設定不熟,目前 include AmphiVanilla 的方式,是寫死在程式碼中的。
  • 還沒有轉碼和 OV 所需的狀態列 (OVService::notify) 支援。不過之後當 OV 也 deploy UTF-8 的酷音時,也許我們完全可以進入到無需轉碼的時代(OV 目前 deploy 的仍是 Big5 版本的酷音)。

測試套件可從 openvanillla.org 的 beta 測試區取得。以下是 screenshot:

OpenVanilla on Ubuntu

Comments are closed.