如何现在就在 Ubuntu 20.04 下用上 Fcitx 5.0.2
伟大的囧脸终于发布了 Fcitx 5 正式版,虽然他没有写什么正经的发布日志,只是在自己的邮件列表里发了一封信,我约莫着大部分人都不知道有这回事。
但这不重要!
Fcitx 5 正式版还是发布了,而且撸一管的功夫,都变成 Fcitx 5.0.2 了!
虽然高贵的 Arch 用户已经无缝用上了,但是对于比较惨的非 Arch 用户,用 Fcitx 5 就很惨了,要么你自己打包,要么你求那些傲慢的打包者去打包,要么你自己编译安装。
而且编译也不一定能安装,因为 Fcitx 要求 QT 版本大于等于 5.15,大部分 Ubutnu 20.04.1 的用户的 QT 版本还是 5.12 呢!
不过伟大的囧脸给了我们一个解决方案,使用 Flatpak 安装最新的 Fcitx 5.0.2,基本可以完美使用,而且还能保证和主线更新。
我也是第一次发现这他娘的输入法也可以用 Flatpak 装,果然还是囧脸牛逼啊。
这里是以 Ubuntu 20.04.1 为例子,其他发行版可以参考
1,首先是安装 Fcitx4/5
因为 Flatpak 版本的 Fcitx 5 还是需要本机的 im 模块,所以个人建议还是先在机器上安装一个老版本的 Fcitx ,不管是 4 还是 5 都可以。
我个人建议就是你机器上安装好 Fcitx 并且确保能用,就可以了。
当然你也需要确保你系统支持 Flatpak, Ubuntu 下使用 Flatpak 可以参考这里:
https://plumz.me/archives/11951/
2,安装 Flatpak 版本的 Fcitx 5
# 添加 flathub 到用户级
flatpak remote-add --user --if-not-exists flathub https://dl.flathub.org/repo/flathub.flatpakrepo
# 添加 fcitx5-unstable 到用户级配置
flatpak remote-add --user --if-not-exists fcitx5-unstable https://flatpak.fcitx-im.org/unstable-repo/fcitx5-unstable.flatpakrepo
flatpak install org.fcitx.Fcitx5
flatpak install org.fcitx.Fcitx5.Addon.ChineseAddons
# 例如需要 Rime: flatpak install org.fcitx.Fcitx5.Addon.Rime
# 可以用 flatpak remote-ls fcitx5-unstable 查看有哪些包
如果你需要日文输入法,也可以安装
flatpak install org.fcitx.Fcitx5.Addon.mozc
不过这个源的速度可是够慢的,一开始我觉得是科学上网的问题,但是后来发现我使用了 proxychains 还是那么慢……不过到凌晨时段就很快了。
如果你死活更新不了源或者下载速度太慢,两个建议:
- 找个速度快的科学上网方法
- 凌晨爬起来试试,没准有奇迹
3,设置使用输入法
安装完毕后我们就可以用这个输入法了,确保你现在的老版本 Fcitx 能用之后,我们只需要修改一下启动项就行了。
Ubuntu 20.04 下,修改
sudo vim /usr/share/im-config/data/22_fcitx.rc
注释掉:
/usr/bin/fcitx -d 2> /dev/null &
增加:
flatpak run org.fcitx.Fcitx5 -d 2> /dev/null&
(请忽略掉配图中的句子,那个是不完整的。)
重启电脑之后,应该你会发现输入法已经正常运转了,你已经用上了最新的 Fcitx 5.0.2 了
吐槽:
输入法用到现在,基本没有什么大问题,大部分场景都可以使用,但还是有一些小情况,这里列举一下:
- 我使用的是 Gnome-Shell,在用 Kimpanel 插件的时候,偶尔切换输入法会出现输入法提示“pinyin”“mozc”之类的框体显示不正常的情况,不过重新切换一次就消失了,目前还没找到重现的规律,找到了我再报 Bug
- 在 WPS 下无法启用输入法,尝试了 Flatpak 版本的 WPS 还是 deb 包的 WPS,都无法启用输入法,尝试在启动脚本里 export QT_IM_MODULE,无论是 fcitx 还是 fcitx5都依然无效,换回老的 Fcitx 4 则正常,看了下这是一个老问题了,不过这里有一个简单粗暴的修复方法。
- flatpak 版本的 fcitx 似乎是可以按照正常方式使用网上的词库的
- mozc 输入法的图标是破损的
- 输入拼音后自动出现 emoji 的功能我这里不正常,不知道是 flatpak 版本没有,还是这个功能本身有问题
- Telegram 下使用输入法,会发现跟随的目标不是最后的光标,而是“最后输入完成的句子尾部”
- 不使用 Gnome-shell 的 Kimpanel 插件的话,你可以使用各种皮肤,但是可能会让你觉得皮肤里的字体渲染很难看,你可以把 /etc/fonts/ 里的配置文件拷贝到 ~/.var/app/org.fcitx.Fcitx5/config/fontconfig 中,当然你做链接也可以,修复字体渲染问题。
总而言之,有问题的话欢迎大家去找囧脸报 Bug。
https://github.com/fcitx/flatpak-fcitx5/
囧脸官方通稿:
https://www.csslayer.info/wordpress/fcitx-dev/fcitx5-on-flatpak/