[Ubuntu] 记一次解决fcitx5输入法不输入中文的问题
现象
系统是Ubuntu 22.04.5 LTS,输入框架是Fcitx 5。
有些窗口可以输入中文(chrome、微信),有些不能(terminal、gedit、Typora)
分析
查看Ubuntu的syslog(/var/log下),过滤fcitx关键字
16197:May 20 16:51:31 lk Typora[6564]: /usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-fcitx.so: cannot open shared object file: No such file or directory
16198:May 20 16:51:31 lk Typora[6564]: Loading IM context type 'fcitx' failed
16200:May 20 16:51:31 lk Typora[6564]: /usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-fcitx.so: cannot open shared object file: No such file or directory
16201:May 20 16:51:31 lk Typora[6564]: Loading IM context type 'fcitx' failed
16222:May 20 16:52:02 lk gedit[6721]: /usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-fcitx.so: cannot open shared object file: No such file or directory
16223:May 20 16:52:02 lk gedit[6721]: Loading IM context type 'fcitx' failed
16225:May 20 16:52:02 lk gedit[6721]: /usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-fcitx.so: cannot open shared object file: No such file or directory
16226:May 20 16:52:02 lk gedit[6721]: Loading IM context type 'fcitx' failed
并不麻烦可以找到上面的信息,log前面还有Typora、gedit的tag,所以猜测是这个问题。
这个问题其实出现好久了,中间不能解决,还切换到过ibus框架,但是ibus框架实在反应太慢了。
现在突然想到可以看看ubuntu的log,所以找到了上面的log,这样就好定位了。
看了/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-fcitx.so 这个文件果然没有。
解决
经过了一些尝试(这里省略),清空了/usr/lib/x86_64-linux-gnu/gtk-3.0/目录后,重新安装了:
sudo apt install fcitx5-frontend-gtk3
重启系统后解决了。
出现这个问题的原因,我分析是因为没有配置国内软件源的时候软件下载速度慢,没有下载 fcitx5-frontend-gtk3 成功。或是来来回回安装各个包之间出现了冲突。
其他
另外记录几个fcitx5的教程链接:
https://askubuntu.com/questions/1423704/cant-use-google-pinyin-on-ubuntu-22-04
按照上面这个配置了环境变量(改了其中的GTK_IM_MODULE)(我分析环境变量不是这个问题的解决办法)
# .bashrc
# fcitx5 input
export XMODIFIERS=’@im=fcitx5’
export XMODIFIER=’@im=fcitx5’
export GTK_IM_MODULE=fcitx
export QT_IM_MODULE=fcitx5
export DefaultIMModule=fcitx5
https://fcitx-im.org/wiki/Setup_Fcitx_5
这个应该是比较全的一个教程,没有仔细看。
浙公网安备 33010602011771号