装完 fcitx5 之后,记得要在系统设置里启用它。但这时我们万万没想到——居然切换不了输入法。
问题出在环境变量上。本文记录配置环境变量让 fcitx5 真正生效的完整过程。
需要让系统识别 fcitx 作为输入法模块,有两种常见做法。
更推荐方法1,WeChat等应用会出现无法切换输入法和输入中午的时候就使用方法1
在kubuntu Fedora Arch 测试均有效果
/etc/environment/etc/environment 是整个系统的环境变量,在所有进程启动时都会被读取。在文件中加入:
iniGTK_IM_MODULE=fcitx
QT_IM_MODULE=fcitx
XMODIFIERS=@im=fcitx
~/.profile~/.profile 是某用户的环境变量,启动过程中桌面会话期间由 DisplayManager 自动执行,从文本控制台登录时则由登录 shell 自动执行。如果这个文件不存在,自己新建一个即可。
bashexport GTK_IM_MODULE=fcitx
export QT_IM_MODULE=fcitx
export XMODIFIERS=@im=fcitx
注意:虽然 fcitx5 是新版本,但环境变量的值仍然写
fcitx,而不是fcitx5。这是 fcitx5 官方的兼容设计。
还可以写入其它配置文件(如 ~/.xprofile、~/.bash_profile 等),不一一举例了。要注意有些配置文件在某些登录场景下可能不会被加载,所以不一定起作用。
在终端运行:
bashexport
如果输出里没有以下变量,说明配置还未生效:
iniGTK_IM_MODULE=fcitx
QT_IM_MODULE=fcitx
XMODIFIERS=@im=fcitx
这是因为 /etc/environment 和 ~/.profile 都是在登录时由系统加载的,改完之后当前会话并不会立即应用。
注销重新登录,系统就会重新加载配置文件。之后再在终端执行 export,就能看到上面那三个变量了——说明配置生效。
此时回到任何文本输入框,就会发现可以正常切换中文输入法了。
如果有需要,可以在 fcitx5 配置里添加对应的输入法引擎(如拼音、五笔等),不过装好后通常已经自动添加了默认输入法。
本文作者:Casear
本文链接:
版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!