环境:ubuntu15.04/QT5.6.0
背景:最近开发用到QT5.6.0,在ubuntu中输入汉字使用的搜狗输入法,但是在QT中无法切换到搜狗输入法,手动能切换,但是切换后仍然无法打出汉字,在其他应用中都能使用。后来才知道原来QT不支持fcitx框架的输入法,只支持ibus框架的输入法。
解决办法:
1、做一些改变,让QT支持fcitx框架的输入法,这样就可以使用搜狗了。
这种方法我研究好几天,都没有研究好,因为直接使用别人编译好的那个支持fcitx的二进制文件不生效,最好是自己使用源码自己编译,使用cmake和make编译,但是我的机器安装cmake出现很多问题,就放弃了,选择第二种方法。这种方法网上有很多教程,可以自己搜索。
2、不使用搜狗,使用ibus框架的pinyin输入法。
使用这种思路我成功在QT中输入汉字了,本身用汉字的时候不多,使用pinyin输入法完全够了。
搜索如何安装ibus框架的pinyin输入法,去安装就行了。有一个问题可能会遇到,就是安装后还是用不了pinyin输入法,我就遇到这种情况,这样的情况是因为输入引擎没有相应的切换过来,使用下面的命令操作就可以了:
ibus list-engine
先使用上述命名查看输入法引擎有没有Chinese,里面有个pinyin,如果有,使用下面的命令切换:
ibus engine pinyin
这样切换过后就可以使用了。
完美解决,觉得实用的话就点赞吧。