Ubuntu 26.04 换输入法:fcitx5-rime + 雾凇拼音的安装、预热与配置取舍
Ubuntu 26.04 换输入法:fcitx5-rime + 雾凇拼音的安装、预热与配置取舍
乔阳fcitx5 自带的拼音对日常够用,但词库薄,长句和专业词差点意思。换成 fcitx5-rime 中州韵搭配雾凇拼音开源方案,词频和补词明显更好,而且不用换框架,Rime 作为引擎和现有拼音并存,想用哪个切哪个。
这篇记录在 Ubuntu 26.04 上装 fcitx5-rime、部署雾凇拼音方案、预编译词库、自定义配置的完整流程,以及几个容易踩的点。顺带把字体和候选框外观一起整理了:装 Maple Mono 编程字体,给 fcitx5 候选框换 catppuccin 主题和中文字体。
fcitx5 输入法框架是怎么工作的
理解框架和引擎的区别,能帮你定位大部分输入法问题。
fcitx5 是输入法框架,本身不提供具体输入逻辑。它通过环境变量挂接到应用:
GTK_IM_MODULE=fcitx让 GTK 程序把按键事件交给 fcitx5QT_IM_MODULE=fcitx对 Qt 程序同理XMODIFIERS=@im=fcitx是 X11 层的兜底
这几个变量都指向 fcitx,所以 GTK、Qt、X 应用都会走 fcitx5。如果某个程序输入法不生效,第一步就是查它们有没有设对。
引擎才是具体输入逻辑。拼音、双拼、Rime 都是 fcitx5 的引擎。装 fcitx5-rime 只是给 fcitx5 加了一个新引擎,和自带拼音并存,在 fcitx5 配置里切换。不需要改环境变量,不需要换框架。
环境变量写在哪。 Ubuntu 26.04 默认是 GNOME Wayland 会话,图形应用不读 .bashrc / .zshrc(那只对终端生效)。正确做法是用 im-config 工具选 fcitx5,它会自动写入会话级配置;或者手动写进 /etc/environment(系统级,所有会话生效)。改完注销重新登录才生效,重启终端或重启 fcitx5 都没用。不要写 ~/.pam_environment,那个在 Ubuntu 22.04 以后已经默认禁用。
装 fcitx5-rime
一条命令:
1 | sudo apt install fcitx5-rime librime-plugin-lua |
显式带上 librime-plugin-lua。雾凇拼音的中英混输、符号快捷输入、以词定字等功能依赖 Lua 插件,虽然 fcitx5-rime 通常会作为推荐依赖带上它,但显式装更稳妥,避免某些配置了 --no-install-recommends 的机器上静默缺失。
Ubuntu 26.04 仓库里是 fcitx5-rime 5.1.13-1,会连带装上 librime 1.16.1 和一套基础方案(rime-data-luna-pinyin 明月拼音等),放在 /usr/share/rime-data/。
装完 Rime 还不能用,词库是空的。Rime 默认的拼音词库很薄,直接切上去体验反而比 fcitx5 自带拼音差。必须导入社区方案才发挥价值。
部署雾凇拼音方案
雾凇拼音(rime-ice)不只是词库,是一套包含 schema、Lua 脚本、分层词库、预设开关的完整输入方案。词库更新勤、词频调得好,含 8105 通用字、41448 通用词、base 基础词、ext 扩展词、tencent 腾讯词库等。从 GitHub release 下载 nightly 版:
1 | RIME_DIR="$HOME/.local/share/fcitx5/rime" |
注意这个 RIME_DIR 路径是 fcitx5-rime 专用的(~/.local/share/fcitx5/rime/)。如果你查到的是 ibus-rime 的教程,它的目录是 ~/.config/ibus/rime/,两套完全隔离,别混用。
用户目录放方案而不是系统目录,升级系统不丢配置。解压后里面有 rime_ice.schema.yaml(主方案)、双拼和九键等附加方案、以及各个词库文件。default.yaml 已经把 rime_ice 设为首选方案。
更新雾凇时,解压会覆盖同名文件。如果你改过 *.custom.yaml,这些不会被覆盖(文件名不同),安全。但建议更新前备份一份用户目录,以防方案结构有大改动。
词库取舍。 full 包含全部词库,tencent 腾讯词库词条海量,部署耗时久、运行内存占用也明显上涨。日常开发用 8105 通用字加 base 基础词就够了,轻量且快。重度写作或古文生僻字场景再开 ext 扩展和 41448 大字库。按需选择,不必全装。
预编译词库:消除首次切换卡顿
这是最容易忽略的一步。
Rime 在首次切到引擎时,会把 YAML 词库编译成二进制 .table.bin 和 .prism.bin。雾凇拼音词库大,实时编译要等几秒到十几秒,首次切换会卡。
系统自带 rime_deployer 工具,可以提前编译成二进制缓存:
1 | RIME_DIR="$HOME/.local/share/fcitx5/rime" |
这条命令把用户目录的方案和系统共享数据一起编译,生成 29 个 .prism.bin 和 .table.bin 产物。核心的 rime_ice.table.bin 有 58M,含 8105/41448/base/ext/tencent 等词库合并编译。
预热完,首次切到 Rime 是秒开,不用等编译。产物在 ~/.local/share/fcitx5/rime/build/。如果部署报奇怪错误,可以先清掉编译缓存重来:rm -rf "$RIME_DIR/build",再跑一次 deployer。
fcitx5 添加 Rime 引擎并部署
词库就位后,在 fcitx5 里把 Rime 加进引擎列表。图形方式:
1 | fcitx5-configure |
在配置界面左侧添加 Rime,调整顺序。也可以直接编辑 ~/.config/fcitx5/profile。
然后重启 fcitx5 让配置生效:
1 | fcitx5 -r -d |
-r 替换正在运行的实例,-d 后台运行。进程卡死可以先 killall fcitx5 再启动。重启后 Rime 引擎注册,切到 Rime 就能用雾凇拼音了。默认切换键是 Ctrl+Space,也可以在配置里改。
自定义配置:用 custom.yaml,别改 schema
雾凇拼音的开关很多,简繁、模糊音、标点映射、中英混输都在 rime_ice.schema.yaml 里。但**不要直接改 .schema.yaml**。
原因:方案文件会随词库更新被覆盖,直接改的配置升级时就丢了。正确做法是建 *.custom.yaml 用 patch: 覆盖,升级雾凇方案不会丢失自定义。
比如开模糊音,建 ~/.local/share/fcitx5/rime/rime_ice.custom.yaml:
1 | patch: |
关键是 speller/algebra/+:末尾的 + 表示追加,只往原有规则后面加,不替换。如果写成 speller/algebra:,会把雾凇原有的拼写规则整个覆盖掉,输入法直接坏掉。模糊音规则必须走 speller/algebra,不存在 fuzz: 这个配置项。
改完要重新部署才生效。托盘菜单里选 Rime 的重新部署,或命令行再跑一次:
1 | rime_deployer --build "$RIME_DIR" /usr/share/rime-data |
patch 机制会把 custom 里的配置合并进 schema,升级词库时 custom 文件不动,配置不丢。这是 Rime 配置的核心约定,所有自定义都走这条路。
字库:装 Maple Mono 编程字体
换输入法顺带把字体也整理了。Maple Mono NF CN 是等宽编程字体,中英文对齐好,带 Nerd Font 图标,写代码舒服。
从 Maple Mono release 页面下载 NF CN 版本(带 Nerd Font 和中文),解压后装到系统字体目录:
1 | sudo mkdir -p /usr/share/fonts/truetype/maple-mono-nf-cn |
验证:
1 | fc-list | grep -i maple |
字体可以装到 /usr/share/fonts/(系统级,需要 sudo)或 ~/.local/share/fonts/(用户级,不需要 sudo)。装完一定要跑 fc-cache -fv,这是最常踩的点,文件放进去了但没刷缓存,程序就是看不到。
装完字体只是让字体可用,真正用起来还要在各处指定。终端在偏好设置里选字体,VSCode 在 settings.json 里设 editor.fontFamily,系统界面字体用 gsettings 或 GNOME Tweaks 改。字体名用 fc-list 查到的 family 名,Maple Mono 的就是 Maple Mono NF CN。
fcitx5 候选框:换主题和中文字体
Rime 装好后,候选框默认是 fcitx5 自带主题,中文用系统默认字体,观感一般。换主题和中文字体能明显改善。
先看系统有哪些中文字体:
1 | fc-list :lang=zh family | sort -u |
输出里常见的是 Noto Sans CJK SC(思源黑体简体)。如果没有,装一下:
1 | sudo apt install fonts-noto-cjk |
候选框主题用 catppuccin。从仓库克隆,把现成主题拷到 fcitx5 主题目录:
1 | THEMES_DIR="$HOME/.local/share/fcitx5/themes" |
catppuccin 的 mocha 系列适配深色系统。查系统深浅色决定用哪个系列:
1 | gsettings get org.gnome.desktop.interface color-scheme |
主题和字体写进 ~/.config/fcitx5/conf/classicui.conf:
1 | [ClassicUI] |
Theme=选主题。catppuccin 装了十几个 mocha 配色(teal、sky、pink、red、yellow 等),改这一行就换色,不用重新部署。Font=候选框字体。Noto Sans CJK SC 14是思源黑体 14 号。想用编程字体换Maple Mono NF CN 14。Vertical Candidate List=False横排候选,True是竖排,按习惯调。
改完重启 fcitx5 生效(主题改动不用重新部署 Rime):
1 | fcitx5 -r -d |
自带拼音 vs Rime:怎么选
fcitx5 自带的拼音并不差。如果你还装了 fcitx5-module-cloudpinyin(云拼音联网补词)、pinyinhelper(反查笔画)、lua 脚本模块,开箱就够日常用,零配置。
Rime 的价值在词库质量和可定制性。雾凇和万象这些社区方案词频调得好,长句和专业词强,模糊音、双拼、自定义标点都能调到很细。代价是配置学习成本,要懂 YAML、要部署。
想省心,自带拼音够用。愿意折腾配置,Rime 加雾凇上限更高。两者可以并存,先装上 Rime 试试,不行切回自带拼音,没什么成本。
几个容易踩的坑
切到 Rime 后词库很薄。 没导入社区方案就直接用,Rime 默认词库体验差。必须放雾凇或万象方案进用户目录再部署。
改了配置没生效。 Rime 配置改完要重新部署,托盘重新部署或 rime_deployer --build。而且改的应该是 *.custom.yaml 不是 schema 本身。区分两件事:改 Rime 配置或词库要重新部署,改 fcitx5 主题或候选框字体只要重启 fcitx5,不用部署 Rime。
首次切换卡很久。 没预编译,首次切到 Rime 要现编词库。用 rime_deployer --build 提前编译成 .table.bin。
输入法在某些程序不生效。 先查 GTK_IM_MODULE、QT_IM_MODULE、XMODIFIERS 三个环境变量是不是都指向 fcitx。某个没设,对应框架的程序就接不到输入法。Wayland 会话下这些要由 im-config 或 /etc/environment 设置,不是 .bashrc。
Snap 或 Flatpak 应用调不出中文。 Snap 沙箱隔离,默认访问不到 fcitx5。VSCode、Chrome 的 Snap 版极易中招。优先卸载 Snap 版改用 deb 包,或者给容器配置开放输入法权限。
装完字体程序找不到。 没跑 fc-cache -fv 刷新缓存。字体文件放进去了,但字体缓存没更新,程序看不到。
候选框改了主题没变。 classicui.conf 改完要重启 fcitx5(fcitx5 -r -d),不是重新部署 Rime。主题目录要放在 ~/.local/share/fcitx5/themes/ 下,Theme= 填的目录名要和主题目录一致。







