Fcitx5输入法相关环境变量#
这个页面介绍了以下环境变量的含义。你不需要理解他们来使用Fcitx,但是以下内容可能会在你遇到问题是帮助你检查哪里出了问题。
XMODIFIERS#
这个变量仅影响 XIM。格式为
XMODIFIERS=@im=<xim 服务器名称>当 XIM 服务器启动时,他会注册一个应当在这里使用的名称。这个名称不能和其他 XIM 服务器相同,因此你无法在同一个 X 服务器下运行两个 Fcitx。通常情况下,Fcitx 的 XIM 服务器名称为 fcitx。
因此对于 Fcitx 来说这个设置应当为
XMODIFIERS=@im=fcitx在非 CJK 语言环境中,如果这个环境变量没有设置,一些程序中 XIM 将无法工作,这意味这你最好总是设置了这个环境变量。并且 XIM 也需要你有正确的语言环境,这意味着你的语言必须在下面的命令的输出当中
locale -a你可以通过以下命令检查你当前的语言环境
locale为了使用 XIM,你的语言不能设置为 C 或者 POSIX。
GTK_IM_MODULE#
这会覆盖系统的gtk输入法模块的自动选择。在默认情况下,gtk按照语言选择对应的输入法模块。Fcitx声明它支持 “zh:ja:ko:*"。这些信息将被记录在一个文件当中,在大多数的 linux 系统中,这个文件为 /etc/gtk-2.0/gtk.immodules 和 /etc/gtk-3.0/gtk.immodules,有时会以 -32 或者 -64 结尾。
在 Debian 进行了多架构的迁移之后,将使用不同的文件。对应文件将为 /usr/lib/<架构>/gtk-{2,3}.0/gtk.immodules }} 你需要使用
gtk-query-immodules-2.0 > <gtk-2.0 的输入法模块文件>更新 gtk2 的文件,
或者如果你的 gtk2 版本新于 2.24.20,则应当使用
gtk-query-immodules-2.0 --update-cache就像 gtk3 一样。
以及
gtk-query-immodules-3.0 --update-cache更新 gtk3 的文件。
否则新的输入法模块将无法被识别。
如果由 GTK_IM_MODULE 指定的输入法模块没有被找到,gtk 将会回退到自动选择的方法。