ibus-pinyin 使用 OpenCC 地區用字轉換

ibus-pinyin 對於臺灣使用者有個很麻煩的地方是它在輸入繁體模式的時候會出現很奇怪的用字,譬如「羣」和「衆」這兩個字在臺灣習慣的寫法是「群眾」。

trace ibus-pinyin 好久老是找不到它到底是怎麼做繁簡轉換的……

最後發現是利用 libpyzy ,libpyzy 本身看起來有一些基本的轉換功能,但在 Ubuntu 的套件裡面看來是會直接呼叫 OpenCC (套件名稱是 libopencc1)。

OpenCC 其實有支援地區習慣用字的轉換,從簡體字可以轉到臺灣或是香港的習慣用字。但是從原始碼macro 的定義看起來不會做地區用字轉換。

opencc_open 函數接受轉換設定檔的檔名,轉換設定檔的檔名在 Ubuntu 下可以去 /usr/lib/x86_64-linux-gnu/opencc/ 找到(附檔名 ini)。

那接下來我要做的事情就很簡單了,把

m_od = opencc_open (OPENCC_DEFAULT_CONFIG_SIMP_TO_TRAD);

改成

m_od = opencc_open ("zhs2zhtw_vp.ini");

然後重編套件、打包就行了。

套件檔在這

發表迴響

在下方填入你的資料或按右方圖示以社群網站登入:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / 變更 )

Twitter picture

You are commenting using your Twitter account. Log Out / 變更 )

Facebook照片

You are commenting using your Facebook account. Log Out / 變更 )

Google+ photo

You are commenting using your Google+ account. Log Out / 變更 )

連結到 %s