问题:miniconda 下安装的 spyder 和 retext 等基于 qt 的编辑器不能输入中文
原因:Qt的语言库,缺少支持中文输入的动态链接库。
排查:
1. 查看 miniconda 相关目录
cd miniconda3/
find | grep platforminputcontexts
显示:
./plugins/platforminputcontexts
./plugins/platforminputcontexts/libcomposeplatforminputcontextplugin.so
./plugins/platforminputcontexts/libibusplatforminputcontextplugin.so
./pkgs/qt-5.6.2-hf70d934_9/plugins/platforminputcontexts
./pkgs/qt-5.6.2-hf70d934_9/plugins/platforminputcontexts/libcomposeplatforminputcontextplugin.so
./pkgs/qt-5.6.2-hf70d934_9/plugins/platforminputcontexts/libibusplatforminputcontextplugin.so
2. 安装 ibus-qt 并在以上目录添加 ibus 的动态链接库
sudo yum install ibus-qt
rpm -qa | grep ibus-qt
显示:ibus-qt-1.3.2-4.el7.x86_64
rpm -ql ibus-qt-1.3.2-4.el7.x86_64
显示:/usr/lib64/qt4/plugins/inputmethods/libqtim-ibus.so
cp /usr/lib64/qt4/plugins/inputmethods/libqtim-ibus.so ./plugins/platforminputcontexts
cp /usr/lib64/qt4/plugins/inputmethods/libqtim-ibus.so ./pkgs/qt-5.6.2-hf70d934_9/plugins/platforminputcontexts
3. 修改配置文件
将
export XIM_PROGRAM=iBus
export XIM=iBus
export GTK_IM_MODULE=iBus
export QT_IM_MODULE=iBus
export XMODIFIERS="@im=iBus"
添加到 /etc/profile 最后一行
4. reboot