Saturday, January 20, 2018

電腦裝 Lubuntu Linux + 新酷音 + Dvorak 完成

這兩天試著在電腦上安裝 Lubuntu , 原本卡在鍵盤配置, 輸入法間, 如果預設鍵盤配置為 Dvorak , 新酷音的注音就會出問題.

先稍微說明一下結構....

由於電腦鍵盤本身有自己的 key code , 而作業系統處理時, 就分成兩種方式:
一種是直接把 key code 轉送給軟體,
一種是先把 key code 轉成 ascii 碼或類似原理, 再轉給軟體.

在歐美國家不管哪種方式, 問題都不大, 因為拉丁字母數量不多, 大概只有鍵盤配置的差別.
但在亞洲文字(含中亞地區)就有問題了, 因為亞洲文字有許多不是拉丁文字, 除了需要不同的文字編碼(如 Unicode ), 還需要輸入法把使用者從字母鍵盤按的鍵, 轉譯成應用軟體能理解的文字.

因為多了這一層, 輸入法的處理就變得有點複雜, Windows 2000, XP, 7 跟 MacOS X 的輸入法, 都可以跟系統語系分開, 而 Linux 由於大多是開放軟體, 所以也有許多不同的輸入法平台, 目前常見的有: iBus, SCIM, Fcitx, 而 Lubuntu 17.10 預設是使用 Fcitx .

因為新酷音(支援注音輸入方式)是在 Fcitx 平台上運作, 所以使用者從鍵盤按的鍵, 會先經過 Fcitx 處理, 如果系統預設鍵盤為 Dvorak 時, Fcitx 就會以 Dvorak 排列的方式, 傳給新酷音, 反而打出來的是錯的.

所以要使用 Dvorak 當鍵盤配置時, 就需要修改新酷音的設定, 這次整個安裝過程大約是:
1. Lubuntu 17.10 隨身碟開機, 清空硬碟安裝, 語言選 中文(繁體) 鍵盤配置先選 英文(美國), 這樣會自動裝 Fcitx 及新酷音.
2. 在語言與文字把 漢語(台灣) 拉到底下, 這只是個人習慣, 系統顯示都是英文.
3. 了解 Fcitx 結構, Fcitx 把輸入法的第一項稱為"未啟用(inactive)", 其他的輸入法稱為"啟用".
4. 調整 Fcitx 設定, 主要有: a. 切換輸入法包含"未啟用"的輸入法 b. Share State Among Window 改為 PerProgram , 然後輸入法選 Dvorak 跟新酷音兩個.

5. 最後修改 ~/.config/fcitx/conf/fcitx-chewing.config , 增加 Layout=Dvorak Keyboard

6. 登出再登入, 就可以得到預設輸入法是 Dvorak , 而按 Ctrl-Space 或 Ctrl-Shift 都可以切換成新酷音了, 也就更接近原本 Windows 2000, XP, 7 或 MacOS X 的方式.

(Windows 8/8.1/10那種把語系跟輸入法綁得亂七八糟的就別管了....)