2012年8月24日 星期五

openSUSE 12.2 的其他中文輸入法

0. 輸入法框架

這裡指的輸入法,並非一般人所說的倉頡、注音、行列、嘸蝦米、拼音等等輸入的方法,
這些輸入的方法通常是指一種參照表格,
當你在鍵盤上按某些按鍵的組合,會組成您所需要的文字
有些較複雜的演算方式則需要有輸入法引擎的幫助(不同輸入方法會用到不同的輸入法引擎)
但本文中提到的輸入法指的是輸入法框架
輸入法框架就是提供使用者介面讓您能使用不同的輸入法引擎和參照表格
參考:
 http://vicid603.pixnet.net/blog/post/33244831-%E3%80%8C%E8%BC%B8%E5%85%A5%E6%B3%95%E6%A1%86%E6%9E%B6%E3%80%8D%E5%9F%BA%E6%9C%AC%E7%9F%A5%E8%AD%98
http://zh.opensuse.org/Packaging_Input_Method_Framework_and_Engines


1. Linux 下常用的中文輸入法框架

fcitx :  http://code.google.com/p/fcitx/
openSUSE 12.2 預設的簡體中文輸入法,
雖然說是簡體,但基於上面所述,輸入法框架主要提供一個使用者介面,
所以很多繁體輸入法的表格和引擎也有支援

gcin : http://hyperrate.com/dir.php?eid=67
openSUSE 12.2 預設的繁體中文輸入法,
在上一篇文章中已介紹過

hime : https://github.com/hime-ime/hime
是 gcin 的一個分支,
他的源起和方向請參考
http://tetralet.luna.com.tw/index.php?op=ViewArticle&articleId=234&blogId=1

ibus : http://code.google.com/p/ibus/
很多 Linux 發行版本預設使用的輸入法引擎
是個比較國際化的專案

oxim : http://opendesktop.org.tw/demopage/oxim/
似乎已停止開發...

scim : http://www.scim-im.org/
前一代的主流輸入法框架

這些輸入法框架都有 openSUSE 官方或非官方的安裝支援
您可以很輕易的無痛安裝(輸入法通常不建議自行由原始碼自行編譯安裝)
如果需要社群支援,可以在中文論壇中文郵件列表(按此訂閱)中尋求幫助


2. 設定檔

openSUSE 各種輸入法的設定檔位置在  /etc/X11/xim.d/ 目錄中
每個輸入法框架會在它的設定檔中設定好環境變數並啟動它
至於要啟動哪一個輸入法框架則由不同的區域設定目錄中的連結數字來決定
例如在 /etc/X11/xim.d/zh_TW/ 目錄中有
30-gcin  40-ibus  49-scim-bridge  50-scim 這幾個連結
這些連結分別連結到上層目錄中的各輸入法框架設定檔
如果您使用繁體中文環境,就會優先啟動 gcin
gcin 若啟動失敗就會用 ibus, 依此類推


3. 切換輸入法框架的方法

ubuntu 所使用的 im-switch 或 im-config 並不適用於 openSUSE
雖然目前 openSUSE 仍沒有切換輸入法框架的工具
但只要設定好 INPUT_METHOD 這個環境變數
就可以蓋過原先為不同語言所設定的預設值
例如您可以設定  INPUT_METHOD="ibus"
下次登入就會使用 ibus 輸入法框架
(這個變數的值必須為  /etc/X11/xim.d/ 中的設定檔名稱)
這個環境變數可以在
/etc/sysconfig/language


~/.profile

中設定

/etc/sysconfig/language 是全域設定,
你必須以 root 的身份用純文字編輯器編輯  /etc/sysconfig/language
找到  INPUT_METHOD="" 填入您所要用的輸入法框架
這台電腦中所有的使用者都會使用你在這裡設定的輸入法框架作為預設值
除非使用者有自行設定

~/.profile 是進入桌面環境時系統會去讀取的檔案之一
這是在家目錄中的一個隱藏檔
檔名是 .profile
如果您要用圖形介面去編輯它
你得先在檔案管理員中看到它
在 Dolphin 的選單中在 「檢視」-「顯示隱藏檔」
您要自行在此檔案的最後加上(例如)
export INPUT_METHOD="ibus"
重新登入這個使用者就會使用指定的輸入法框架了

您可以參考 /usr/share/doc/packages/ibus/ibus-README.suse


4. 實戰

4-1. 使用 ibus

ibus 仍有不少人使用,所以仍在 OSS 套件庫中(也已經預設安裝)
所以不需要做額外工作
只要修改 ~/.profile 加上 export INPUT_METHOD="ibus"
然後重新登入即可



* ibus-chewing 1.4.0 已經送到 M17N 套件庫,
這版本解決了缺字的問題(http://code.google.com/p/ibus/issues/detail?id=1481)
若來不及進入 12.2 可由 M17N 安裝

4-2. 使用 fcitx

雖然是簡體中文的預設輸入法,但仍支援一些繁體輸入的模組
套件清單:
S | 名稱                           | 摘要                                                        | 類型
--+--------------------------------+-------------------------------------------------------------+-----
i | fcitx                          | Flexible Context-aware Input Tool with eXtension            | 套件
i | fcitx-chewing                  | Chewing Wrapper for Fcitx                                   | 套件
  | fcitx-cloudpinyin              | Cloudpinyin module for fcitx                                | 套件
  | fcitx-config-gtk3              | GTK GUI Config tool for FCITX                               | 套件
  | fcitx-config-kde4              | KDE control module for Fcitx                                | 套件
  | fcitx-devel                    | Development files for fcitx                                 | 套件
  | fcitx-fbterm                   | Fbterm Support for Fcitx                                    | 套件
  | fcitx-googlepinyin             | Googlepinyin module for fcitx                               | 套件
i | fcitx-gtk2                     | Gtk2 IM module for fcitx                                    | 套件
  | fcitx-gtk2-32bit               | Gtk2 IM module for fcitx                                    | 套件
i | fcitx-gtk3                     | Gtk3 IM module for fcitx                                    | 套件
  | fcitx-gtk3-32bit               | Gtk3 IM module for fcitx                                    | 套件
  | fcitx-hangul                   | Hangul Module for Fcitx IM Framework                        | 套件
  | fcitx-libpinyin                | Libpinyin Wrapper for Fcitx                                 | 套件
  | fcitx-m17n                     | M17N engine for fcitx                                       | 套件
i | fcitx-pinyin                   | Chinese Pinyin engine for fcitx                             | 套件
  | fcitx-pinyin-tools             | Fcitx tools to make pinyin match list                       | 套件
i | fcitx-qt4                      | Qt4 IM module for fcitx                                     | 套件
  | fcitx-qt4-32bit                | Qt4 IM module for fcitx                                     | 套件
  | fcitx-quwei                    | Chinese Zone-bit(QuWei) engine for fcitx                    | 套件
  | fcitx-skin-classic             | Fcitx Classic Skin                                          | 套件
  | fcitx-skin-dark                | Fcitx Dark Skin                                             | 套件
  | fcitx-sunpinyin                | Sunpinyin module for fcitx                                  | 套件
i | fcitx-table                    | Table engine for fcitx                                      | 套件
  | fcitx-table-amharic            | Amharic table for Fcitx                                     | 套件
  | fcitx-table-arabic             | Arabic table for Fcitx                                      | 套件
  | fcitx-table-cn-bingchan        | Icefrog Holography(QXM) table for fcitx                     | 套件
  | fcitx-table-cn-cangjie         | Simplified Chinese Tsang-Jei(Cangjie) table for fcitx       | 套件
  | fcitx-table-cn-cantonese       | Standard Guongdonkwa Penkyampji table for Fcitx             | 套件
  | fcitx-table-cn-cns11643        | CNS 11643 table for Fcitx                                   | 套件
  | fcitx-table-cn-dianbao         | Telegram(Dianbao) table for fcitx                           | 套件
  | fcitx-table-cn-erbi            | Two stroke(Erbi) table for fcitx                            | 套件
  | fcitx-table-cn-wanfeng         | Evening Breeze(Wanfeng) table for fcitx                     | 套件
  | fcitx-table-cn-wu              | Wu table for Fcitx                                          | 套件
  | fcitx-table-cn-wubi            | Wubi table for fcitx                                        | 套件
  | fcitx-table-cn-wubi-large      | Wubi large character set table for Fcitx                    | 套件
  | fcitx-table-cn-wubi-pinyin     | Wubi and pinyin(wubi-pinyin) table for fcitx                | 套件
  | fcitx-table-cn-zhengma         | Cheng table for Fcitx                                       | 套件
  | fcitx-table-cn-ziran           | Nature(Ziran) table for fcitx                               | 套件
  | fcitx-table-emoji              | Emoji table for Fcitx                                       | 套件
  | fcitx-table-extra-lang         | Languages for package fcitx-table-extra                     | 套件
  | fcitx-table-hk-cantonese       | Hong Kong Guongdonkwa Penkyampji table for Fcitx            | 套件
  | fcitx-table-hk-jyutping        | Hong Kong jyutping table for Fcitx                          | 套件
  | fcitx-table-hk-stroke5         | Hong Kong 5 stroke input table for Fcitx                    | 套件
  | fcitx-table-ipa-x-sampa        | IPA X-Sampa table for Fcitx                                 | 套件
  | fcitx-table-latex              | Latex table for Fcitx                                       | 套件
  | fcitx-table-malayalam-compose  | Malayalam Compose table for Fcitx                           | 套件
  | fcitx-table-malayalam-phonetic | Malayalam Phonetic table for Fcitx                          | 套件
  | fcitx-table-other              | A fork of ibus-table-others for Fcitx                       | 套件
  | fcitx-table-ru-rustrad         | Traditional Russian table for Fcitx                         | 套件
  | fcitx-table-ru-translit        | Russian Translit table for Fcitx                            | 套件
  | fcitx-table-ru-yawerty         | Russian Yawerty table for Fcitx                             | 套件
  | fcitx-table-tamil-remington    | Tamil Remington tables for Fcitx                            | 套件
  | fcitx-table-thai               | Thai table for Fcitx                                        | 套件
  | fcitx-table-tools              | Fcitx tools to make tables                                  | 套件
  | fcitx-table-tw-array30         | Array 30 table for Traditional Chinese                      | 套件
  | fcitx-table-tw-array30-large   | Array 30 table with large character set for Traditional C-> | 套件
  | fcitx-table-tw-boshiamy        | Boshiamy table for Fcitx                                    | 套件
  | fcitx-table-tw-cangjie-large   | Tsang Jei large character set table for Fcitx               | 套件
  | fcitx-table-tw-cangjie3        | Tsang Jei 3 table for Fcitx                                 | 套件
  | fcitx-table-tw-cangjie5        | Tsang Jei 5 table for Fcitx                                 | 套件
  | fcitx-table-tw-easy-large      | Easy table with large character set for Traditional Chinese | 套件
  | fcitx-table-tw-quick-classic   | Quick Classic table for Traditional Chinese                 | 套件
  | fcitx-table-tw-quick3          | Quick 3 table for Traditional Chinese                       | 套件
  | fcitx-table-tw-quick5          | Quick 5 table for Traditional Chinese                       | 套件
  | fcitx-table-tw-smart-cangjie6  | Smart Tsang Jei 6 table for Fcitx                           | 套件
  | fcitx-table-ua-translit        | Ukrainian Translit table for Fcitx                          | 套件
  | fcitx-table-vi-qr              | Vietnamese Quoted Readable table for Fcitx                  | 套件
  | fcitx-ui-light                 | Light Weight UI for Fcitx                                   | 套件
  | fcitx-unikey                   | Vietnamese unikey support for Fcitx                         | 套件
i | libfcitx-4_2_4                 | Shared libraries for fcitx                                  | 套件
  | libfcitx-4_2_4-32bit           | Shared libraries for fcitx

您可以看見裡面有不少的繁體中文的輸入法
您可以選擇您喜愛的(例如新酷音)
用指令安裝比較方便:
# zypper in fcitx fcitx-chewing

然後設定 INPUT_METHOD=fcitx 重新登入即可
在 ubuntu-tw 論壇中論壇中有一篇推薦文可參考:
http://www.ubuntu-tw.org/modules/newbb/viewtopic.php?topic_id=53570&forum=8&post_id=247156#forumpost247156



4-3. 使用 hime

hime  在兩個月前已發佈更新到 0.9.10
您可以在 home:swyear 套件庫中找到
目前的權值先定在 25
(比 gcin 還優先,您都這麼辛苦的找過來了,一定是很想用這個框架作為預設值吧!
但以後進入到 M17N 的套件庫時會調到比 gcin 後面)
所以可以不必另外設定 INPUT_METHOD 重新登入即可




2012年8月20日 星期一

openSUSE 12.2 的預設輸入法--gcin

如果您在安裝 openSUSE 12.2 時選擇了繁體中文語系
預設就會使用 gcin 作為您的預設輸入法
您可能以前習慣用 ibus,先別急著換回來
(下一篇再介紹如何切換成不同輸入法框架)
先體驗一下 gcin 的強大功能吧!

gcin 首頁: http://hyperrate.com/dir.php?eid=67
您可以在 gcin 首頁回報問題與建議功能
作者和一大群的愛用者都會熱心幫助您喔

1. 套件:
zypper se gcin
正在載入套件庫資料...
讀取已安裝的套件...

S | 名稱                          | 摘要                        | 類型
--+-------------------------------+-----------------------------+-----
i | gcin                          | Chinese input method server | 套件
  | gcin-32bit                    | Chinese input method server | 套件
i | gcin-anthy-module             | Gcin anthy module           | 套件
  | gcin-anthy-module-32bit       | Gcin anthy module           | 套件
  | gcin-branding-basedonopensuse | Provides gcin branding      | 套件
i | gcin-branding-openSUSE        | openSUSE branding of gcin   | 套件
  | gcin-branding-upstream        | Upstream branding of gcin   | 套件
i | gcin-chewing-module           | Gcin chewing module         | 套件
  | gcin-chewing-module-32bit     | Gcin chewing module         | 套件
i | gcin-gtk3-immodule            | Gcin gtk3 immodule          | 套件
  | gcin-gtk3-immodule-32bit      | Gcin gtk3 immodule          | 套件
  | gcin-qt3-immodule             | Gcin qt3 immodule           | 套件
  | gcin-qt3-immodule-32bit       | Gcin qt3 immodule           | 套件
i | gcin-qt4-immodule             | Gcin qt4 immodule           | 套件
  | gcin-qt4-immodule-32bit       | Gcin qt4 immodule           | 套件

gcin : 主程式與 gtk2 immodule (預設安裝)
gcin-anthy-module : 日文 Anthy 輸入法模組
gcin-branding-openSUSE : openSUSE 預設的 kai-mono gcin 圖示集 (預設安裝)
gcin-branding-upstream : 上游預設的圖示集
gcin-chewing-module : 新酷音輸入法模組 (預設安裝)
gcin-gtk3-immodule : gtk3 immodule ,使用 gtk3-base 程式時需要,大多用在 gnome3 環境 (預設安裝)
gcin-qt3-immodule : qt3 immodule (除非您安裝 kde3.x,否則很少會用到)
gcin-qt4-immodule :qt4 immodule,使用 qt4-base 程式時需要,大多用在 kde4 環境 (預設安裝)
如果您是 64 位元的環境,還會有尾綴 -32bit 的套件(例如:gcin-qt4-immodule-32bit )
這是在 64 位元系統使用 32 位元程式時會需要用,
像在 64 位元系統安裝 skype (這是一個 32 位元的程式)就需要 gcin-qt4-immodule-32bit

2. 系統匣:
gcin 使用雙圖示系統匣
 

在「鍵盤圖示」上按左鍵,顯示可用的輸入法,直接用滑鼠點選就可以使用該種輸入法
(預設的優先輸入法可以用 Ctrl+space 快速鍵切換)

除了國人常用的輸入法外,
還可以輸入韓文、希臘文、俄文、拉丁字母,
並有符號表及符號小鍵盤
如果加裝 gcin-anthy-module 也可以輸入日文
(可以在 gcin 設定/工具中設定要顯示的輸入法)

在 「鍵盤圖示」上按右鍵,可顯示 gcin 的功能選單,包含
發音(需安裝 gcin-voice 套件,請到 home:swyear 套件庫下載)
螢幕小鍵盤以及設定工具
 

在 「半」圖示按左鍵,切換全形半形輸出

在 「半」示按右鍵,則可選擇繁簡轉換等功能
 

3. 常用設定:
在 gcin鍵盤圖示上按右鍵,選擇「設定/工具」,可進行細節的設定
 

3-1. 注音/詞音/拼音設定(個人偏好)
選擇鍵我習慣使用 asdfghjkl;
每一行顯示 10 個字(變成選字是橫式的)
我也會需要用到注音聲調符號
 

3-2. 外觀設定(個人偏好)
我喜歡在「編輯區顯示」中設定「同時顯示」
這樣比較不會有被跳出的選單擋住輸入區的情形

所謂「編輯區顯示」指的是 Input Method Editing Style
(參考:http://www-archive.mozilla.org/projects/intl/input-method-spec.html)
「gcin 視窗」相當於 over-the-spot 的樣式
「應用程式編輯區」相當於 on-the-spot 的樣式

3-3. 內定輸入法&開啟/關閉
在此選擇您常用的輸入法,可將不會用到的輸入法取消
「第一次內定」指進入桌面環境後按 Ctrl+space 會出現的輸入法


4. 常用的功能:
4-1. 常用詞
當輸入時會跳出常用詞,可以用 Shift+選擇鍵 來選取

在此例中,按 Shift+f 就可以選到梳妝台

當然您也可以直接用滑鼠來點選

4-2. 自訂常用詞
如果您喜歡常用詞的功能
要自行加入常用詞,例如:
 
 我超喜歡這句的,打算當簽名檔常常用
我就用向左鍵(←)移動游標到開頭
 
 然後按 Shift+Enter ,就可以將這一句加到我的常用詞中
 
 下次就會跳出來用 Shift+key 來選擇
 

5. tips
5-1. 要使用原廠圖示,
 
請執行

# zypper in gcin-branding-upstream
正在載入套件庫資料...
讀取已安裝的套件...
正在解決套件相依性...

問題: gcin-branding-upstream-2.7.8-1.1.x86_64 與 namespace:otherproviders(gcin-branding) 衝突(由 gcin-branding-openSUSE-12.1-2.1.2.noarch 提供)
解決方案 1:反安裝 gcin-branding-openSUSE-12.1-2.1.2.noarch
解決方案 2:請勿安裝 gcin-branding-upstream-2.7.8-1.1.x86_64

使用'數字'選擇上列的解決方法,或取消(使用'c') [1/2/c] (c): 1
正在解析相依性...
正在解決套件相依性...

將會安裝下列新的套件:
  gcin-branding-upstream 

下列套件將會被移除:
  gcin-branding-openSUSE 

1  新套件將被安裝, 1  將移除.
全部下載大小: 47.1 KiB。 完成操作後,將釋出 35.5 KiB。
要繼續嗎? [y/n/?] (y): y
正在取出 套件 gcin-branding-upstream-2.7.8-1.1.x86_64               (1/1),  47.1 KiB (已解開  46.4 KiB)
正在取出: gcin-branding-upstream-2.7.8-1.1.x86_64.rpm ..........................................[完成]
正在移除 gcin-branding-openSUSE-12.1-2.1.2 ......................................................[完成]
正在安裝: gcin-branding-upstream-2.7.8-1.1 .....................................................[完成]

然後重新執行  gcin 或重新登入

5-2. 如果要用最新版的 gcin ,您可以從 home:swyear 來安裝,
目前的 2.7.8 是純用 gtk3 的介面,用在 gnome 3 環境中主題會比較搭
M17N 中的套件庫傾向使用穩定版本

...拖搞太久已經忘記要寫什麼了...

6. 好用連結 :
gcin 論壇
gcin 使用手冊
gcin 圖示
gcin 外觀設定簡要說明

2012年8月12日 星期日

openSUSE 12.2 RC2

openSUSE 12.2 已進入RC2 的階段
再過不久就要正式發佈(預計9月5日)
http://en.opensuse.org/openSUSE:Roadmap
這次發佈在繁體中文部份預設使用 gcin 輸入法(gcin-2.7.5)
http://hyperrate.com/dir.php?eid=67

如果您偏好使用 ibus 或 scim
您仍可以在 OSS 套件庫中找到
另,fcitx (簡體中文預設輸入法)也支援新酷音輸入模組
有興趣的可以試試看

更多介紹,請參考 http://zh.opensuse.org/Portal:12.2 (中文)