Ubuntu下Qt(Retex)无法输入中文
这个问题从我第一次在Ubuntu上使用Qt便困扰着我,奈何之前一直没认真去解决掉这个问题。今天作死想想,这个不可能解决不掉的。因为那么多人用Ubuntu,而且又那么多人用Qt的产品,比如Retext。不可能都不能用中文吧,按照这个思路,我决定把这个问题搞清除。
网上有一份教程(应该说是很多份相同的教程,严重怀疑事不经认证的copy),如:http://www.th7.cn/system/lin/201407/63590.shtml
我不清楚这份教程是适合那个版本的Ubuntu,但对我来说,那是一个不管用啊。坑的我来回卸载安装重启。最后还是不能用。
我的系统刚安装没多久,版本号:Ubuntu14.10,Qt5.3.1。按理说我没安装一些乱七八糟的东西,库应该不会有问题的啊,而且输入法是严格按照搜狗输入法官网的方法安装的,自动安装了fcitx。
检查一下系统安装的 fcitx系列包:
~$: dpkg -l fcitx*
结果显示如下:
https://images0.cnblogs.com/blog2015/502942/201504/111944169154983.png
其中,有一项:fcitx-frontend-qt5 是后来通过命令安装的。这个包也是Qt项目能在Ubuntu下输入中文的关键项目。
网上和Qt的QQ群里找了一下资料发现需要安装fcitx-frontend-qt5 ,所以手动安装了一下,但发现系统中已经有了,所以应该不是这个问题。(我之前参照安装ibus-qt4的方式安装了一下fcitx*qt*)shell命令如下:
~$: sudo apt-get install fcitx*qt*
但这种方式其实并没有解决问题,也不管用。
最后急了,想是后是因为Qt找不到库文件呢,在QQ群里也得到了印证,所以尝试将fcitx-frontend-qt5输入法部分复制到Qt中:(我的Qt安装目录是:/home/myname/Qt5.3.1/)
首先找到fcitx-frontend-qt5的库的安装位置:~$: dpkg -L fcitx-frontend-qt5

~$: sudo apt-get install fcitx-frontend-qt5
~$: sudo cp /usr/lib/x86_64-linux-gnu/qt5/plugins/platforminputcontexts/libfcitxplatforminputcontextplugin.so /home/myname/Qt5.3.1/5.3/gcc_64/plugins/platforminputcontexts
~$: sudo cp /usr/lib/x86_64-linux-gnu/qt5/plugins/platforminputcontexts/libfcitxplatforminputcontextplugin.so /home/myname/Qt5.3.1/Tools/QtCreator/bin/plugins/platforminputcontexts/
然后再次重启QtCreator,O,GOD !还是不可以用了~~~~~但发现状态栏输入法部分有问题,遂更改之:输入法选择:搜狗输入法,文本输入选择En或Zh,不是pinyin,再在QtCreator里测试了一下,呵呵,解决了~_~ 。
我装了markdown编辑器Retext,同样也是不能输入中文,由于Retext也是基于Qt库,所以我想能不能也用此种方法解决呢。先查看Retext安装目录(我是使用终端进行安装的~$: sudo apt-get install retext):
首先找Retext安装位置:~$: dpkg -l retext


可以看到,基本是在目录:/usr/share/retext/,而且没找到plugins这样的目录,那我们就先测试一下copy到根下能不能用吧:
~$: sudo cp /usr/lib/x86_64-linux-gnu/qt5/plugins/platforminputcontexts/libfcitxplatforminputcontextplugin.so /usr/share/retext
复制后,打开Retext测试一下,发现,呵呵,能用中文了~~~~OY !
此文档便是使用其进行编写的!
至此,猜想,以后如果再遇到这种不能输入中文的问题,就将fcitx-frontend-qt5copy到程序目录下看看~~~想来其他的应该也是这样。由于网上的关于这方面的教程本人实测后都没有效果,所以将此方法记录下来,给还没有解决的人一个参照。
最后,在QQ群里,有人向我推荐了一个博文:http://blog.csdn.net/crazyboy2009/article/details/38537099,后来看看,好吧,看来我得改进改进搜索方式了~~。看到有网友回复不能用,好像是因为:复制时要更改文件权限 shmod a+x。我的并没有出现这个问题,如果不能用,试一下改改权限。
附录
- GitHub-Blog
- 关注微信订阅号: LomperWay:

Ubuntu下Qt(Retex)无法输入中文的更多相关文章
- 解决Ubuntu下sublime中不能输入中文的问题
解决Ubuntu下sublime中不能输入中文的问题 Ubuntu下安装sublime后,不能输入中文,而在其他软件中能正常输入,这是sublime的bug,解决方案是在通过shell在每次运行sub ...
- 解决 Ubuntu 下 Sublime Text 无法输入中文的问题
解决 Ubuntu 下 Sublime Text 无法输入中文的问题 1. 安装依赖库 sudo apt-get install build-essential sudo apt-get instal ...
- 解决qt5在ubuntu下无法调用fcitx输入中文的问题
如题,在以前安装qt5.2.1的时候就遇到了这个问题.当时上网搜了很多资料,结果都解决不了,发现都是复制来复制去. 这次因为要用qt5.3.0在ubuntu下写个程序,所以不解决这个问题不行了.就继续 ...
- Ubuntu下搜狗输入法突然无法输入中文
百度了很久的,后面看到这个帖子,找到解决办法.引用:http://blog.csdn.net/kiss_the_sky/article/details/62238529 删除配置文件,重启搜狗 ubu ...
- Ubuntu下搜狗拼音突然无法输入中文的解决办法
搜狗输入法前段时间还可以正常使用,突然今天无法输入中文了.这种情况在Ubuntu中非常常见,可能的原因有3个:1.可能依赖有问题.2.配置文件出错了.3运行出错,需要重新启动一下. 因为我的这个是突然 ...
- ubuntu下wps无法使用搜狗输入法输入中文
sudo vim /usr/bin/et sudo vim /usr/bin/wps sudo vim /usr/bin/wpp 以上三个文件,都加入如下内容后重新打开文档即可 export XMOD ...
- Ubuntu下QT控制台程序无法运行的解决方案以及XTerm的配置方法
Ubuntu下QT控制台程序无法运行的解决方案以及XTerm的配置方法 最近由于老师要求要在Ubuntu下QT上进程多线程服务器的开发,虽然只是单纯的调用qt的network模块,但是为了避免麻烦,我 ...
- Visual Studio下Qt编程中对中文的处理
Visual Studio下Qt编程中对中文的处理 本文为原创文章,原文地址http://www.cnblogs.com/c4isr/p/qt_develop_in_vs.html Visual St ...
- 基于Windows环境下cmd/编译器无法输入中文,显示中文乱码解决方案
基于Windows环境下cmd/编译器无法输入中文,显示中文乱码解决方案 两个月前做C++课设的时候,电脑编译器编译结果出现了中文乱码,寻求了百度和大神们,都没有解决这个问题,百度上一堆解释是对编译器 ...
- Ubuntu下 QT添加外部链接库(.so文件)示例
参考:https://blog.csdn.net/KKALL1314/article/details/81915354 https://forum.qt.io/topic/80301/file-not ...
随机推荐
- ndoejs创建多重文件夹
function mkdir(filepath){ var path=require("path") if(!fs.existsSync(path.dirname(filepath ...
- stream4
import java.util.Comparator; import java.util.function.BinaryOperator; public class BinaryOperatorTe ...
- 笔记_JSON
解析 JSON 步骤 如果没有自带 , 就添加 第三方包 (JavaScript编程语言本身自带解析JSON的能力) 一般是要手写 : 实体类 JSON -> 实体类 中间映射 Gson的话 ...
- Spring 和整个体系 @Value注解 配合属性文件.property
未来学习方向 重要思路 学的时候看官方文档,系统地学,比如学Spring Boot ,但真正使用的时候,有比自动化(条件化)配置,约定即配置 更好的方法(这个可读性不强,对电脑来说它执行的代码一样 ...
- (转) 来自: http://man.linuxde.net/tee
tee命令文件过滤分割与合并 tee命令用于将数据重定向到文件,另一方面还可以提供一份重定向数据的副本作为后续命令的stdin.简单的说就是把数据重定向到给定文件和屏幕上. 存在缓存机制,每1024个 ...
- Http编程之HttpClient
在Android开发中,Android SDK附带了Apache的HttpClient,它是一个完善的客户端.它提供了对HTTP协议的全面支持,可以使用HttpClient的对象来执行HTTP GET ...
- centOS使用.htaccess
首先,你要保证你的Aapche已经开启了.htaccess 可以参考:http://www.veryhuo.com/a/view/21259.html 以下是.htaccess文件中的内容: Rewr ...
- JQuery脚本-通过禁用按钮防止表单重复提交
<script type="text/javascript"> /* jquer 脚本,避免重复提交 隐藏点击的submit,后在他之后插入同名button伪装成被隐藏 ...
- Scala安装及开发环境搭建
最近想学习下scala,为后面转大数据做一些沉淀. 1. 首先保证jdk已经成功安装 2. 去官网下载scala安装程序 http://www.scala-lang.org/download/all. ...
- python 对列表去重,并保持列表原来顺序
mailto = ['cc', 'bbbb', 'afa', 'sss', 'bbbb', 'cc', 'shafa'] addr_to = list(set(mailto)) addr_to.sor ...