安裝 Fcitx
爲了在機器上安裝一個稱心如意的中文輸入法,費了不小功夫。之前用的是自帶的 ibus + rime,問題在於輸入法無法在 Emacs 內使 用,而且經常出現卡頓,看不到候選字的情況。看了一些攻略後安裝了 fcitx,另外一個輸入法引擎。同樣支持 rime。
$ sudo apt install fcitx
$ sudo apt install fcitx-rime
$ im-config
$ fcitx-config-gtk3
然後添加小鶴雙拼。添加配置文件 ~/.config/fcitx/rime/default.custom.yaml
patch:
schema_list:
- schema: luna_pinyin # 朙月拼音
- schema: double_pinyin_flypy # 小鶴雙拼
- schema: emoji # emoji 表情
2 Emacs 配置
因爲一個 bug 的緣故,Emacs 不能直接使用外部的輸入法,包括 fcitx。從論壇上看這個問題讓很多人非常頭疼。更神奇的時候,在 按照提議更改系統 locale 之後,Firefox 的字體變得非常難看…
最後選取的方案是更改 Emacs 的 desktop launcher。修改 .local/share/applications/emacs26.desktop
的 exec
項爲:
Exec=/usr/bin/env XLIB_SKIP_ARGB_VISUALS=1 LC_CTYPE=zh_CN.UTF-8 emacs26 %F
到這裏 Emacs 裏面應該可以基本正常使用 fcitx 了。但是不進一步配置, fcitx 會與 Emacs 的一些快捷鍵,包括 evil mode
衝突,非常不順手。所以我們添加 fcitx-mode,並在 Emacs 的i配置文件中增加如下設置:
; assume use-pckage is used and fcitx-mode has been installed
(use-package fcitx
:custom
(fcitx-aggressive-setup)
(fcitx-prefix-keys-add "C-x" "C-c" "C-h" "M-s" "M-o")
(fcitx-prefix-keys-turn-on))
值得注意的是,fictx-mode 關於 evil mode 的優化在當 fictx 中 只有 rime 一個輸入方案的時候無效的。經過一些試錯,我添加了英文鍵盤並將其設爲首選方案後,fictx-mode 才懂得在 NORMAL MODE
中自動關閉 rime。