使用fcitx5

背景

不知道等待了多少天,fcitx-qt5终于出来了,
搜狗拼音也发布了支持qt5的linux版本,可以在一些ubuntu20.04这样几乎没有qt4的新系统上使用了.
好处是:

  • 搜狗的皮肤再也不崩溃了

坏处是:

  • fcitx设置激活输入法按键为shift时,总会失效
  • 将输入法取消激活时,已经输入的内容不能再像以前一样上屏
  • 在emacs中,仅仅在使用搜狗输入法时,按下shift甚至ctrl+shift都会导致fcitx崩溃(搜狗自己反而没有),
    然后即使重启fcitx,emacs中也再不能切换输入法.

想起来以前配置rime输入法,sh绑定到E完全不成功的经历虽然心有余悸,
但现在实在是到了忍无可忍的地步.
这时好看到了fcitx5的安利,看到支持双拼,决定先尝试下.

安装

有非稳定版与稳定版区别的,只能装对应的版本

  • fcitx5(-git)
  • fcitx5-configtool(-git)
  • fcitx5-gtk(-git)
  • fcitx5-qt(fcitx5-qt5-git)
  • fcitx5-chinese-addons(-git)

与是否稳定无关的

  • fcitx5-material-color

目前仅仅非稳定版才有的

  • fcitx5-mozc-git

配置

环境变量

目前有关的是 ~/.xprofile ,里面的fcitx需要改成fcitx5
暂时不要制作 ~/.pam_environment 文件,会导致无法进入桌面,
后来按下Ctrl+Alt+F2才登陆成功,删除该文件后可以启动了.

自定义双拼方案

本人由于使用workman布局,需要使用自定义双拼方案.
但似乎fcitx5-chinese-addons-git的方案是内置的.
查看fcitx5-chinese-addons-git的代码才知道,当用户使用自定义方案时,
会读取 ~/.config/fcitx5/pinyin/sp.dat 的配置.
fcitx5并没有附带该文件的示例,
后来在fcitx项目的 src/im/pinyin/data/sp.dat 找到了.
自定义方案如下

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
#--------------------------------------------------------
[方案]
方案名称=Custom

[零声母标识]
=*

[声母]
#双拼编码就是它本身的声母不必列出
ch=I
sh=E
zh=U

[韵母]
#双拼编码就是它本身的韵母不必列出
ai=H
an=T
ang=G
ao=C
ei=W
en=N
eng=Y
er=R
ia=X
ian=L
iang=D
iao=K
ie=P
in=M
ing=F
iong=S
iu=Q
ong=S
ou=Z
ua=X
uai=F
uan=R
uang=D
ue=B
ui=V
un=J
uo=O

感想和注意

  • 搜狗支持双拼全拼混合输入,但fcitx5自带双拼似乎不支持,
    因此输入er只会出现 sh uan,栓.
    不过由于学习了小鹤双拼,单音节提示符可以任意,因此把R定义为er即可
  • 配置文件的字段是中文的.算了,反正外国人也不用双拼.
  • 方案名称要配合 ~/.config/fcitx5/conf/pinyin.conf 中的 ShuangpinProfile=Custom

开机自启

该责任一般归于桌面环境,
如果是KDE,可以在系统设置里搜索Autostart,然后添加程序即可,
然后会发现 ~/.config/autostart/ 下面添加了 fcitx5.desktop,
来自 /usr/share/applications/fcitx5.desktop.

如果是i3wm,可以在 ~/.config/i3/config 中配置一下.

皮肤

自带的皮肤很难看,默认配置项中没有选项.
安装 fcitx5-material-color 后就可以选择类似微软风格的皮肤了

剩余问题

  1. 不能全拼双拼混合
  2. 有时在emacs中还是不能切换输入法
  3. fcitx5-configtool-git虽然漂亮了,但需要先更改窗口大小才能滚轮找出全部设置项
  4. 虽然设置了LShift作为切换英语和中文的按键,
    但首次进入系统时,要想从英文状态切换成中文,必须按Ctrl+Shift,以后才能用LShift切换
  5. 自带双拼的词库还是不够,候选项不如搜狗

备注

fcitx原名gWubi,作者Yuking,使用五笔输入.
后支持其他输入法,也改名fcitx.
作者2007年暂时放弃开发,2009年重新和粉丝一起开发.
不过他把代码放在Google Code上有些不大方便.
由CS Slayer迁移到Github上.
CS Slayer后来开始了fcitx5项目.

真的想知道07年以前中国人都是怎么用linux发行版的.
无论如何,搜狗也一起提供linux版,堪称丰功伟绩了.

参考

  1. 官方页面
  2. CS Slayer的博客