使用linux最沮丧的事情莫过于中文输入法切换不出来,甚至有人错误地认为,要使用中文输入法,必须把“区域和语言”(Region & Language)设置为中国-中文。输入法只是一个软件,和区域设置没有什么必然联系。如果你在初始化安装系统的时候,选择了中文,倒是会帮你把中文输 入法打包安装好。

所以和我一样使用en-us区域设置的朋友,如果输入法出了问题,怎么排查解决呢?

首选你必须安装一个中文输入法,推荐小企鹅

sudo yum install fcitx-pinyin

但是,安装完后,发现按 ctrl+space 却没有召唤出输入法。需要在终端中执行

im-chooser

选中当前输入法为FCITX,并进行基本的设置。 大部分情况下,至此你就可以正常地使用一个中文输入法了。

在早期的一些教程中,会强调在X环境变量(例如~/.xprofile,~/.xinitrc,~/.xinputrc )中声明环境变量来保证输入法正常启动。实际上没有必要。

export GTK_IM_MODULE=fcitx
export QT_IM_MODULE=fcitx
export XMODIFIERS=”@im=fcitx”

现在的发行版喜欢用软链接来管理设定,系统读取的位置不变(认准软链接),用户设定时改变软链接的实际指向,这是一个漂亮的解耦做法。如果你开发过跨平台跨环境的应用,就知道兼容适配有多麻烦,一个简单易行的方案有多宝贵。

来看看Fedora20里面是怎么做的。

所以当你用标准姿势安装并设定过输入法,最后是可以通过软链接指向正确关联。 反正 /etc/X11/xinit/xinitrc.d/50-xinput.sh 启动脚本认准了/etc/X11/xinit/xinputrc

如果你不顺利,在运行im-chooser的时候出现了错误。 内容大概是

GDBus.Error:org.gtk.GDBus.UnmappedGError.Quark._imsettings_2derror_2dquark.Code5: Current desktop isn’t targeted by IMSettings.

不要着急,Linux的易用性虽然还是有差距,但是一直保持有详细错误日志的优良传统。 在 ~/.cache/imsettings/log 看到关键错误日志如下:

[ 1406594712.769015]: IMSettings-Daemon[7165]: INFO: Attempting to
switch IM to FCITX [lang=en_US.utf8, update=true]
org.gnome.settings-daemon.plugins.keyboard.active is true. imsettings is
going to be disabled.

由于属性“org.gnome.settings-daemon.plugins.keyboard.active”当前的值是true,禁止了imsettings运行。 所以解决的方案很简单,在终端上将相关属性设置为false即可。

gsettings set org.gnome.settings-daemon.plugins.keyboard active false

类似的错误也可以通过同样的方法来解决,日志详尽,心中不慌。

如果不了解gsettings,可以参见gsettings简介及常用操作

转载自:http://atomato.me/blog/2014/08/fcitx-input-install-troubleshot/

13_FCITX输入法安装及问题排查解决的更多相关文章

  1. Win10 LTSC 2021 安装及相关bug解决

    Win10 LTSC 2021 安装及相关bug解决 目录 Win10 LTSC 2021 安装及相关bug解决 准备文件 系统安装 系统激活 修复CPU占用高和输入法显示bug 安装微软应用商店 推 ...

  2. Redis性能问题排查解决手册(七)

     阅读目录: 性能相关的数据指标 内存使用率used_memory 命令处理总数total_commands_processed 延迟时间 内存碎片率 回收key 总结 性能相关的数据指标 通过Red ...

  3. VS2003"无法启动调试 没有正确安装调试器"的解决办法

    VS2003"无法启动调试 没有正确安装调试器"的解决方法 在用VS2003做项目的时候,经常调试程序,但是有时候回出现如下问题“无法启动调试,没有正确安装调试器,请运行安装程序或 ...

  4. 【ubuntu】中文输入法安装二三事

    本来很愉快地刷着JS程序,很有感慨啊,想写篇博客记一下学习笔记,结果忘记了博客账号,后来通过邮箱找回了之后想要开始写..发现ubuntu的中文输入法不能用啊(其实不是不能用,就是小白没搞清楚状况,双系 ...

  5. windows 2008R2 无法安装操作系统补丁,或无法安装Sp1升级包的解决办法

    windows 2008R2 无法安装操作系统补丁,或无法安装Sp1升级包的解决办法 给 C:\ 加上users读取和执行,,列出文件夹内容,及读取的权限,不需要就用到子目录 将 C:\Windows ...

  6. Win7安装错误提示与解决办法大全

    Windows7安装时有许多提示错误,许多朋友不知道如何解决,那就看看这篇软媒整理的文章吧,或许有些帮助.本文出现的问题同样应用于其他版本的Windows 7,甚至是Vista,收藏一下本文,或者某天 ...

  7. centos 基本操作(输入法安装,adls宽带连接,查找文件,模拟终端)

    centos 基本操作之输入法安装输入法启动终端,切换到超级管理员yum install "@Chinese Support"安装成功后,退出System->Preferen ...

  8. Linux中oracle安装时候报ora-00119解决办法

    ORA-00119: invalid specification for system parameter LOCAL_LISTENER ORA-00130: invalid listener add ...

  9. Apache 2.4.7在CentOS6.4中安装配置反向代理解决单外网IP对应多个内网主机的方法实践

    欢迎转载,转载时请保留全文及出处. Apache 2.4.7在CentOS6.4中安装配置反向代理解决单外网IP对应多个内网主机的方法实践 Apache安装 下载源程序(http://httpd.ap ...

随机推荐

  1. weblogic服务器保存图片失败解决办法

    日志中报错如下: java.lang.NoClassFoundError: Could not initialize class sun.awt.X11GraphicsEnvironment 解决办法 ...

  2. 数学计数原理(Pólya,高精度):SGU 294 He's Circles

      He's Circles He wrote n letters "X" and "E" in a circle. He thought that there ...

  3. oracle 表查询(2)

    使用逻辑操作符号 问题:查询工资高于500 或者是岗位为MANAGER 的雇员,同时还要满足他们的姓名首字母为大写的J? or job = 'MANAGER') and ename LIKE 'J%' ...

  4. bzoj1251 序列终结者(Splay Tree+懒惰标记)

    Description 网上有许多题,就是给定一个序列,要你支持几种操作:A.B.C.D.一看另一道题,又是一个序列 要支持几种操作:D.C.B.A.尤其是我们这里的某人,出模拟试题,居然还出了一道这 ...

  5. trigger 触发器

    --trigger --在SC表上建了一个触发器,查看inserted和deleted表中内容. create trigger tri_1 on sc for insert,update,delete ...

  6. VK Cup 2015 - Round 1 -E. Rooks and Rectangles 线段树最值+扫描线

    题意: n * m的棋盘, k个位置有"rook"(车),q次询问,问是否询问的方块内是否每一行都有一个车或者每一列都有一个车? 满足一个即可 先考虑第一种情况, 第二种类似,sw ...

  7. hdu 4289 最小割,分拆点为边

    题目链接:http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemCode=2609 #include <cstdio> #incl ...

  8. Servlet的一些细节(2)

    1. Servlet的创建时间 Servlet是不能单独运行,调用它的叫做Servlet引擎,或者叫做web服务器 针对客户端的多长Servlet请求,通常情况下,服务器只会创建一个Servlet实例 ...

  9. drp用户管理完成后,asp.net与java的一个简单比较

    DRP视频断断续续看了有一个月的时间了,跟着视频进行,从需求到设计,到现在的编码实现,跟之前用asp.net做系统步调一致,都遵守软件设计的规范,一步步来进行.尤其是编码实现,越来越感觉java与as ...

  10. DCL双检查锁机制实现的线程安全的单例模式

    public class MyObject { private volatile static MyObject myObject; private MyObject(){} public stati ...