前言
起因是为笔记本增添了一块硬盘后发现我对硬盘容量需求不是很高,于是就起了一个念头,双系统嘿嘿嘿。后边接触了百度输入法,用了一段时间后,在一个技术频道中看到一个大佬在推荐fictx5,就试着接触用了起来。在简单对比后选择了fictx5。
本文适用于ubuntu22.04及以上版本。
安装
在 Ubuntu 设置中打开「区域与语言」—— 「管理已安装的语言」,然后会自动检查已安装语言是否完整。若不完整,根据提示安装即可。
最小安装
为使用 Fcitx 5,需要安装三部分基本内容:
- Fcitx 5 主程序
- 中文输入法引擎
- 图形界面相关
按照这个思路,可以直接使用apt
进行安装:
sudo apt install fcitx5 \
fcitx5-chinese-addons \
fcitx5-frontend-gtk4 fcitx5-frontend-gtk3 fcitx5-frontend-gtk2 \
fcitx5-frontend-qt5
安装中文词库
在 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/
配置
设置为默认输入法
使用 im-config 工具可以配置首选输入法,在任意命令行输入:
im-config
根据弹出窗口的提示,将首选输入法设置为 Fcitx 5 即可。
环境变量
需要为桌面会话设置环境变量,即将以下配置项写入某一配置文件中:
sudo cat >> /etc/profile << EOF
export XMODIFIERS=@im=fcitx
export GTK_IM_MODULE=fcitx
export QT_IM_MODULE=fcitx
EOF
如果使用 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 默认的外观比较朴素,用户可以根据喜好使用自定义主题。
第一种方式为使用经典用户界面,可以在 GitHub 搜索主题,然后在 Fcitx5 configtool —— 「附加组件」 —— 「经典用户界面」中设置即可。
第二种方式为使用 Kim面板,一种基于 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 紧密联系的。暂为不解之谜。
本文的知乎发布版评论区有关于此话题的讨论,其中有可能的解决方案,供参考。