Fcitx 实践

Table of Contents

1 安装

打开终端输入下面的命令:

sudo add-apt-repository ppa:Fcitx-team/nightly
sudo apt-get update
sudo apt-get install Fcitx Fcitx-googlepinyin
# 安装之后需要重启 Fcitx
Fcitx -r

修改为默认输入法:然后在终端中输入下面的命令打开输入法配置:

sudo apt-get install im-config
im-config

点击 OK 按钮,再点击 Yes 按钮,将 Fcitx 设为默认的输入法框架,最后点击 OK。

2 卸载

  1. 卸载相关程序
sudo apt-get purge fcitx
  1. 设置 ibus 为默认输入法

    im-switch -s ibus -z default
    
  2. 重启

3 故障排除

3.1 与 gdm3.16 冲突

gsettings set org.gnome.settings-daemon.plugins.xsettings overrides "{'Gtk/IMModule':<'Fcitx'>}"

3.2 gnome shell(未测试)

设置 dbus 启动前的 envvars

这些 envvars 须传给 dbus. 否则在 gnome-terminal 中无法呼起 Fcitx.我的配置在~/.xinitrc 就这么写的.(启动 dbus 时依赖这些 envvars).

#设置 im 的 envvars
export XMODIFIERS=@im=Fcitx
export GTK_IM_MODULE=Fcitx
export QT_IM_MODULE=Fcitx

if [ -d /etc/X11/xinit/xinitrc.d ]; then
  for f in /etc/X11/xinit/xinitrc.d/*; do #dbus 的启动脚本位于 xinitrc.d 中的 30-dbus
    [ -x "$f" ] && . "$f"
  done
  unset f
fi

exec gnome-session

3.3 Emacs 不能输入中文

更新到了 24+,切换 Fcitx 中文输入法的时候无效。原因是系统环境为英文,ubuntu 启动先加载 gonme-settings-daemon,后加载 Fcitx。

解决办法:

  1. 在终端启动, 亲测可用

        env LANG=zh_CN.utf-8 emacs
    
  2. 改变 gonme-settings-daemon 和 Fcitx 的启动顺序,网上看的,我没试。 先起动输入法 Fcitx,接着起动 gnome-settings-daemon。

Author: lsl

Created: 2016-08-07 Sun 19:48

Validate