在 Ubuntu 安装配置 Fcitx 5 中文输入法
前言
书接上回,一时兴起将主力机的Ubuntu 20.04 LTS升级至了刚刚发布的22.04 LTS。从X切换到Wayland、GNOME从3.36升级至42、Python默认为3.10等等……使用太新的软件包反而暂时带来了麻烦,部分原有的软件和插件都不可用了。这其中就包括已经很久没有更新的百度输入法。故需要寻找新的中文拼音输入法。经简单浏览对比,选择了Fcitx 5。
本文适用于Ubuntu 22.04及以上版本,20.04可以参考Ubuntu20.04安装fcitx5输入法 - 纯白的小站。
1
2
3
4
安装
检查系统中文环境
在Ubuntu设置中打开「区域与语言」——「管理已安装的语言」,然后会自动检查已安装语言是否完整。若不完整,根据提示安装即可。
最小安装
为使用Fcitx 5,需要安装三部分基本内容:
- Fcitx 5主程序
- 中文输入法引擎
- 图形界面相关
按照这个思路,可以直接使用apt进行安装:
sudo apt install fcitx5 fcitx5-chinese-addons fcitx5-configtool
sudo apt install fcitx5 \
fcitx5-chinese-addons \
fcitx5-frontend-gtk4 fcitx5-frontend-gtk3 fcitx5-frontend-gtk2 \
fcitx5-frontend-qt5
1
2
3
4
5
6
安装中文词库
在GitHub打开维基百科中文拼音词库的Releases界面,下载最新版的.dict文件。按照README的指导,将其复制到~/.local/share/fcitx5/pinyin/dictionaries/
文件夹下即可。
# 下载词库文件
wget https://github.com/felixonmars/fcitx5-pinyin-zhwiki/releases/download/0.2.4/zhwiki-20220416.dict
# 创建存储目录
mkdir -p ~/.local/share/fcitx5/pinyin/dictionaries/
# 移动词库文件至该目录
mv zhwiki-20220416.dict ~/.local/share/fcitx5/pinyin/dictionaries/
1
im-config
1
2
3
配置
设置为默认输入法
使用im-config工具可以配置首选输入法,在任意命令行输入:
im-config
根据弹出窗口的提示,将首选输入法设置为Fcitx 5即可。
环境变量
需要为桌面会话设置环境变量,即将以下配置项写入某一配置文件中:
export GTK_IM_MODULE=fcitx
export QT_IM_MODULE=fcitx
export XMODIFIERS=@im=fcitx
如果使用Bash作为shell,则建议写入至~/.bash_profile
,这样只对当前用户生效,而不影响其他用户。另一个可以写入此配置的文件为系统级的/etc/profile
。
开机自启动
安装Fcitx 5后并没有自动添加到开机自启动中,每次开机后需要手动在应用程序中找到并启动,非常繁琐。
解决方案非常简单,在Tweaks(sudo apt install gnome-tweaks
)中将Fcitx 5添加到「开机启动程序」列表中即可。
Fcitx 配置
Fcitx 5提供了一个基于Qt的强大易用的GUI配置工具,可以对输入法功能进行配置。有多种启动该配置工具的方法:
- 在应用程序列表中打开「Fcitx 配置」
- 在Fcitx托盘上右键打开「设置」
- 命令行命令
fcitx5-configtool
根据个人偏好进行设置即可。需要注意的是「输入法」标签页下,应将「键盘 - 英语」放在首位,拼音(或其他中文输入法)放在后面的位置。
自定义主题
Fcitx 5默认的外观比较朴素,用户可以根据喜好使用自定义主题。
- 第一种方式为使用fcitx5-skin-material,可以在GitHub搜索主题,然后在Fcitx配置工具的「附加组件」——「经典用户界面」中设置即可。
- 第二种方式为使用Input Method Panel,一种基于DBus接口的用户界面。此处安装了Input Method Panel这个GNOME扩展,黑色的风格与正在使用的GNOME主题Orchis-dark非常搭配。
已知问题
修复JetBrains系IDE显示问题
在JetBrains系IDE(如PyCharm)中,输入法选择框的位置始终固定于屏幕左下角,而非随输入光标移动,在中文输入很不方便。该问题为IDE的JetBrainsRuntime缺陷所致。可尝试使用RikudouPatrickstar/JetBrainsRuntime-for-Linux-x64这个仓库发布的JBR文件解决。
卸载iBus影响Fcitx 5正常使用
出于精简空间和减少冲突干扰之考虑,使用sudo apt remove ibus
卸载了iBus,但重启(使生效)之后发现Fcitx 5受到了影响。具体表现为:除在终端中之外,其他输入场景无法切换至中文输入。使用apt装回iBus,再次重启即又恢复正常。
检查包依赖关系,卸载ibus包后会自动移除ibus-data、ibus-gtk4、python3-ibus-1.0三个包,似乎都只是与iBus紧密联系的。暂为不解之谜。
本文的知乎发布版评论区有关于此话题的讨论,其中有可能的解决方案,供参考。
参考
- 官方Wiki —— 安装Fcitx5
- 官方Wiki —— Setup Fcitx 5
- 官方Wiki —— 定制主题
- [Ubuntu20.04安装fc