最近在新買的電腦上裝新的 Gentoo Linux, 結果又遇到了除了 Emacs 外其他程式都可以使用中文輸入法(ibus, fcitx, hime, gcin …) 的問題,因此重新來紀錄一次。
問題描述
在 X11 下面,已經確定了有設定以下環境變數 (這邊以 ibus 舉例), 可以設定在 ~/.xprofile
或是 ~/.bashrc
# -*- mode: sh -*- ############################################################ # Locales ############################################################ export LC_CTYPE="zh_TW.UTF-8" ############################################################ # Input Method ############################################################ # ibus export XMODIFIERS="@im=ibus" export GTK_IM_MODULE=ibus export QT_IM_MODULE=ibus
但是這樣設定完成後, 卻只有 Emacs 不能啟用中文輸入法
, 其他 GTK 程式皆可以正常輸入中文。
解決手段
我以前紀錄的解決方式是需要在 /etc/X11/xorg.conf 加入以下幾行然後重起 X11 來解決,但是這是 2012年的紀錄,目前已經不需要這樣做了
Section "Files" FontPath "built-ins" FontPath "/usr/share/fonts/TTF/" FontPath "/usr/share/fonts/100dpi/" FontPath "/usr/share/fonts/75dpi/" EndSection
真正的問題是在於缺少了以下幾個 X11
套件
[I] media-fonts/font-adobe-100dpi Available versions: 1.0.3-r1 {X nls} Installed versions: 1.0.3-r1(09:47:42 AM 02/08/2020)(X nls) Homepage: https://www.x.org/wiki/ https://gitlab.freedesktop.org/xorg/font/font-adobe-100dpi Description: X.Org Adobe bitmap fonts [I] media-fonts/font-adobe-75dpi Available versions: 1.0.3-r1 {X nls} Installed versions: 1.0.3-r1(09:47:55 AM 02/08/2020)(X nls) Homepage: https://www.x.org/wiki/ https://gitlab.freedesktop.org/xorg/font/font-adobe-75dpi Description: X.Org Adobe bitmap fonts [I] media-fonts/font-util Available versions: 1.3.2-r1 Installed versions: 1.3.2-r1(12:09:35 AM 02/04/2020) Homepage: https://www.x.org/wiki/ https://gitlab.freedesktop.org/xorg/font/font-util Description: X.Org font utilities
因此確定系統有裝安裝上這些套件後,重起 X11 就真的可以讓 Emacs 輸入中文了~