Spyder无法使用搜狗输入中文的解决办法

Ubuntu 18.04 LTS系统下,spyder4编辑器无法使用搜狗输入中文。系统输入法为fcitx+搜狗拼音,chrome浏览器无此问题。网上答案: Spyder (以及其他PyQt程序) 无法使用 fcitx 输入法输入中文的解决办法

由于spyder4界面基于PyQt5,而本机上python的PyQT5安装包默认只提供ibus支持,fcitx的插件文件不存在:

ll ~/.pyenv/versions/3.7.4/envs/py37/lib/python3.7/site-packages/PyQt5/Qt/plugins/platforminputcontexts/

显示只有libcomposeplatforminputcontextplugin.so和libibusplatforminputcontextplugin.so文件,缺少libfcitxplatforminputcontextplugin.so文件,此处具体路径与python安装位置有关,搜索可找到相应路径:

locate libcomposeplatforminputcontextplugin.so | grep PyQt5

为支持搜狗,我们需要手动加入fcitx的插件文件到该路径(链接和拷贝都可以):在目录~/.pyenv/versions/3.7.4/envs/py37/lib/python3.7/site-packages/PyQt5/Qt/plugins/platforminputcontexts/下

sudo ln -s /usr/lib/x86_64-linux-gnu/qt5/plugins/platforminputcontexts/libfcitxplatforminputcontextplugin.so libfcitxplatforminputcontextplugin.so

再查看:

ll ~/.pyenv/versions/3.7.4/envs/py37/lib/python3.7/site-packages/PyQt5/Qt/plugins/platforminputcontexts/

应有如下链接:

libfcitxplatforminputcontextplugin.so -> /usr/lib/x86_64-linux-gnu/qt5/plugins/platforminputcontexts/libfcitxplatforminputcontextplugin.so

重启spyder,搜狗输入中文正常。


测试环境:
Ubuntu 18.04.1 LTS
kernel: 4.15.0-106-generic

posted @ 2020-06-26 10:57  daidau  阅读(886)  评论(0编辑  收藏  举报