Linux · IBus / Fcitx 5 · 全拼 / 六套双拼 · GPL-3.0 开源

翩若惊鸿,
言如泉涌。

言泉是一款开源、完全在本地运行的 Linux 中文拼音输入法,同时支持 IBus 和 Fcitx 5。全拼、简拼、六套双拼,搭配共享字符模型的选词与一键补全,让短词更贴合前文,长句更连贯。不需要登录,输入记录始终留在自己的电脑上。

v1.0.1 · 修复 Shift+数字行的中文标点输入

言泉输入法在 Fcitx 5 与 IBus 中的候选和一键补全效果
Fcitx 5 与 IBus 共用同一套 Linux 输入引擎、词库和用户设置,提供一致的候选与补全交互。

它做了什么,没做什么

该有的输入能力认真做好,不需要的东西尽量不加。Linux 版按照 Windows 版的词库、核心算法与模型行为移植,再接入 Linux 平台的 IBus 与 Fcitx 5;两个输入框架共用同一套本地引擎。

01

全拼、简拼与六套双拼

支持全拼、声母简拼及混合输入,以及微软、小鹤、自然码、搜狗、紫光和拼音加加六套双拼。全拼兼容 lue/lve、nue/nve 和 jv/ju 等写法,显式隔音符严格保留音节边界。11 组常见模糊音可以按需开启。

02

短词稳,长句也能打

短词优先尊重完整匹配、用户词和词频;长句同时比较合理的切分与整句候选,再由共享字符模型结合上下文复核同音歧义。修正须与输入拼音对齐,证据不足时保留原结果。

03

候选会看前文

共享字符模型结合已经上屏的前文,区分读音相同的不同用词,用户学过的选择仍然优先。当前文档中重复出现的术语和搭配提供临时参考,已经写过的表达也可用于补全;这些上下文只在当前会话使用,不保存文档内容。

04

一键补全

输入几个音节后,词库先给出补全,共享字符模型再在后台结合前文,比较当前词的补齐、后续短语和下一个字建议。按 Tab 或反引号即可接受,不必输入剩余拼音。继续输入或切换应用后,过期结果不会覆盖当前提示。

05

越用越顺手

经常选择的词会逐步靠前,全拼、简拼或分段确认出来的词组都可以学习。用户词随简繁模式转换显示,学习记录保持一致;个人数据随时可以删除或清空。

06

原生接入 Linux 桌面

IBus 与 Fcitx 5 使用各自的原生适配层,但共享同一套输入引擎和用户词库。设置程序同时覆盖两种框架;常用快捷键可分别启用或禁用,关闭后仍保留原有按键绑定。

一个输入法应该把字打准,把数据留在本机,
然后安静地待在系统里。

短词和长句,分别认真处理

词库先找候选,本地统计模型比较不同切分,共享字符模型再结合上下文判断哪种表达更合适。这套评分同时用于长句、上下文短词和一键补全;必要时,受拼音与词库约束的生成器补充完整候选。所有计算都在本机,判断依据不足时保留原有结果。

A

短词先看词,再看前文

EXACT + CONTEXT

  • 没有前文时,优先尊重用户词、完整词和词库次序
  • 前缀排序兼顾词频和匹配长度,减少长预测词挤占常用候选
  • 共享字符模型结合已上屏前文,帮助区分读音相同的不同用词
  • 尊重用户已学习的选择,模型不可用或超时时保留原候选
  • 翻页中的候选和当前选择保持稳定,不因后台词库就绪而跳回
B

长句先找全,再排序

PATHS + LOCAL MODELS

  • 同时保留多种合理切分,必要时补充受拼音对齐和词库约束的完整候选
  • 统计模型先比较字词接续,共享字符模型再从完整表达中复核难分歧义
  • 学习式门控和融合决策只在证据充分时采用新顺序
  • 结合前后文共同复核长句中的同音片段,保护完整词和用户词,证据不足时不替换
  • 文学用语的修正仍须与拼音对齐,并与一键补全保持一致,不任意改写
  • 音节边界有歧义、后续输入未完成或只确认部分词语时,仍可选择完整前缀词和单字
本地运行 词库和模型随安装包提供,输入内容不会发往云端,也不需要另装模型或 GPU 推理环境。

模型在后台加载和预热,就绪前仍可使用词库候选、选词上屏和词库补全,不必等待模型。多个输入上下文复用已加载的模型,通过文件映射、限制缓存大小和空闲回收减少常驻内存;用户词库刷新也不会重新加载基础模型。

Linux 版还会用固定测试集持续检查候选质量、响应速度和内存占用。测试方法和完整结果见 基准测试文档。

基准测试

用相同的完整语料,对比 Linux v1.0.0 与前一版 v0.9.1 的输入质量和响应速度。语料来自开发者自己的小说《永恒的舞动》,与模型训练数据隔离,不使用个人用户词库。完整方法、评分规则与结果见基准测试文档。

v1.0.0 于 2026 年 10 月 4 日在两台 Ubuntu 26.04.1 虚拟机上完成原生测试,均为 8 vCPU;amd64 配置 16 GiB 内存,arm64 配置 8 GiB。旧版取自发布时的实测记录,未在当前环境重跑。期间虚拟机配置、模型、词库及部分推理时限有变化,不能将耗时变化全部归因于算法;两种架构也不是同条件的硬件对比。表中 - 表示旧版未按相应口径公布该项。

长句 · 16,300 条

一次设置完整拼音,检查完整候选的准确率与引擎查询耗时。Top1 表示首选命中,Top2 表示前两个候选中包含正确结果。

Linux 版本 架构 Top1 Top2 平均 (ms) P50 (ms) P95 (ms) 最大 (ms)
v1.0.0amd64 12,940 / 16,300 79.39% 13,534 / 16,300 83.03% 114.695114178486
v1.0.0arm64 12,946 / 16,300 79.42% 13,537 / 16,300 83.05% 98.09997159472
v0.9.1amd64 11,998 / 16,300 73.61% 12,970 / 16,300 79.57% 173.661-320912
v0.9.1arm64 11,992 / 16,300 73.57% 12,969 / 16,300 79.56% 64.522-118416

v1.0.0 的名次与耗时均来自生产设置;v0.9.1 沿用原公开值,其长句准确率与生产延迟分轨测量。

短词上下文 · 65,000 条

为每例短词提供规定的前文,评估同音选词效果。其中 11,728 例“竞争词”对应的拼音各有至少两个目标词。

Linux 版本 架构 Top1 Top2 竞争词 Top1 竞争词 Top2 平均 (ms) P50 (ms) P95 (ms) 最大 (ms)
v1.0.0amd64 63,036 / 65,000 96.98% 64,104 / 65,000 98.62% 10,491 / 11,728 89.45% 11,196 / 11,728 95.46% 8.28682042
v1.0.0arm64 63,038 / 65,000 96.98% 64,104 / 65,000 98.62% 10,489 / 11,728 89.44% 11,197 / 11,728 95.47% 6.63861631
v0.9.1amd64 61,971 / 65,000 95.34% 63,568 / 65,000 97.80% 9,675 / 11,728 82.49% 10,776 / 11,728 91.88% 13.568-3891
v0.9.1arm64 61,975 / 65,000 95.35% 63,568 / 65,000 97.80% 9,677 / 11,728 82.51% 10,776 / 11,728 91.88% 5.405-1429

共享字符模型的前台推理预算为 100 ms,完成即返回,超时保留原候选;它不是固定等待,也不是整次查询的总耗时上限。无上下文短词结果另见完整基准测试文档。

短词一键补全 · 12,831 次机会

逐音节输入拼音前缀,读取候选窗实际显示的唯一补全,评估命中率、按键节省,以及继续输入时的稳定性。

Linux 版本 架构 补全命中率 平均节省按键 逐键稳定率 按键 P95 (ms) 最终显示 P95 (ms)
v1.0.0amd64 10,336 / 12,831 80.55% 2.638 2,123 / 2,185 97.16% 1.44116.180
v1.0.0arm64 10,336 / 12,831 80.55% 2.638 2,122 / 2,185 97.12% 1.30612.302
v0.9.1amd64 9,420 / 12,831 73.42% 2.548 1,691 / 1,749 96.68% --
v0.9.1arm64 9,420 / 12,831 73.42% 2.548 1,691 / 1,749 96.68% --

65,000 条短词输入产生 12,831 次补全机会。平均节省按键按每次正确补全计算,已扣除接受补全的一次按键;逐键稳定率只统计继续输入后原补全仍兼容的机会。v1.0.0 合计净节省 amd64 27,262 键、arm64 27,267 键,v0.9.1 两种架构均为 24,006 键。

v1.0.0 新增后台语言模型重排:按键 P95 不包含重排,最终显示 P95 包含提示改变时的后台重排耗时。v0.9.1 仅公布同步补全查询耗时,未按这两项分别计时,因此不填入直接对比。

长句一键补全 · 16,300 条

每条长句保留末尾四个拼音音节不输入,评估界面显示的唯一续写。正确结果须扩展已输入的目标前缀,并仍是参考句的前缀。覆盖率只统计预测提示,不代表提示准确率。

Linux 版本 架构 局部续写命中率 预测提示覆盖率 总节省按键 平均 (ms) P50 (ms) P95 (ms) 最大 (ms)
v1.0.0amd64 3,514 / 16,300 21.56% 15,814 / 16,300 97.02% 7,479111.048112196416
v1.0.0arm64 3,536 / 16,300 21.69% 15,816 / 16,300 97.03% 7,50887.54985164402
v0.9.1amd64 421 / 16,300 2.58% - 977101.776-277640
v0.9.1arm64 423 / 16,300 2.60% - 97940.853-101338

v1.0.0 起,长句补全评分将相同位置的“他/她”视为等价;v0.9.1 列出原始严格匹配结果,未按新口径重评。短词补全和逐键稳定性仍采用严格匹配。

长句补全生产结果预算分别为 v1.0.0 的 120 ms、v0.9.1 的 50 ms,不等于完整查询耗时上限。模型、评分口径和预算均有变化,不能将表中增量完全归因于其中单项。

以上四表的耗时来自引擎查询或补全过程,不含模型冷启动、输入框架通信、候选窗绘制及实际按键间隔,不能视为端到端输入延迟。

安装并启用

满足运行库依赖的 Debian、Ubuntu 及其衍生发行版可以直接安装 amd64 或 arm64 软件包。安装程序会处理依赖并接入当前桌面会话;旧版本可以直接安装新包完成升级,现有用户词库和个人设置会保留。SteamOS 等系统目录只读的环境,请使用下方的用户目录安装,不要执行系统级安装命令。

01

下载发布包

先用 dpkg --print-architecture 查看系统架构,再下载对应的 .deb 软件包。

02

运行安装命令

使用 APT 安装即可,相关依赖会一并处理,不必手工复制程序文件。

03

在系统中启用

GNOME/IBus 安装后通常会在输入源列表中出现,选择 Cassotis 即可使用;Fcitx 5 用户可在配置工具中添加 Cassotis。

Debian 系 · amd64 / arm64 v1.0.1
dpkg --print-architecture

# amd64
sudo apt install ./cassotis-ime_1.0.1_amd64.deb

# arm64
sudo apt install ./cassotis-ime_1.0.1_arm64.deb

IBus:在 GNOME 桌面中,安装程序会把 Cassotis 加入输入源列表,但不会擅自切换当前输入法。如果安装时没有图形会话,下次登录后即可发现。

Fcitx 5:从 Fcitx 5 配置工具添加 Cassotis 即可。如果使用 Shift 在言泉内部切换中英文,请避免同时将 Shift 绑定为框架的输入法切换键。IBus 和 Fcitx 5 可以同时安装,但同一个桌面会话应只使用其中一种框架。

SteamOS 等只读系统:装到个人目录

切换到桌面模式,下载与 uname -m 输出相符的便携包;Steam Deck 使用 x86_64。在当前桌面用户的终端中解压、预检并安装,不要加 sudo 或 su,也不需要关闭系统只读保护。

用户目录安装 · 无需管理员权限 v1.0.1
arch="$(uname -m)"
archive="cassotis-ime-linux-1.0.1-${arch}.tar.gz"
# 与下载页的 SHA256 摘要核对后再解压
sha256sum "${archive}"
tar -xzf "${archive}"
cd "cassotis-ime-linux-1.0.1-${arch}"
./install.sh --user --check &&
./install.sh --user

依赖与启用:桌面需已启用兼容的 IBus 或 Fcitx 5。预检不修改文件,也不会自动安装依赖;通过后才安装。程序放在 ~/.local/libexec/cassotis-ime,词库默认放在 ~/.local/share/cassotis-ime,不写入 /usr。安装后在当前框架中选择 Cassotis;列表未刷新时可重启框架。

升级与卸载:升级时解压新版便携包,以同一用户再次预检并安装;卸载使用 ./uninstall.sh --user,同样不要加 sudo,用户词库和设置会保留。不要混用系统安装与用户目录安装。

两个框架都已安装时,可在预检和安装命令中同时加上 --framework ibus 或 --framework fcitx5,选择当前使用的框架。如果预检提示运行库不兼容,需要使用适配该发行版的构建,不是改用 root 就能解决。完整步骤见安装文档。

目前支持哪些 Linux 环境

当前 v1.0.1 同时提供 amd64 和 arm64 软件包及便携包,核心引擎与本地模型对齐言泉输入法 Windows 版 v1.31.0,使用 Cassotis Lexicon v1.31.0 简繁词库。两个架构均完成原生构建、安装升级与 IBus/Fcitx 5 桌面输入验证。基准数据和 SteamOS 用户目录安装验证沿用 v1.0.0 的记录。实测成绩见基准测试;具体环境及验证范围如下。

已验证

Ubuntu 26.04.1

GNOME · Wayland · x86_64 / aarch64

两个架构上的 IBus 与 Fcitx 5 均验证了 GTK 3/4 应用的原生 Wayland、Xwayland 输入及设置启动。
已验证桌面模式

SteamOS 3.8.14

KDE · X11 · IBus 1.5.32 · x86_64

用户目录安装、升级、卸载、设置和实际输入已验证,不需要写入系统目录。本次未验证游戏模式及 SteamOS 上的 Fcitx 5,不代表所有 SteamOS 版本均兼容。
可直接安装

Debian 系 amd64 / arm64

APT 安装

两种架构均提供 Debian 软件包,需满足运行库依赖;不同硬件、发行版和桌面环境组合仍需分别验证。
先检查兼容性

其他发行版

便携包预检或源码构建

便携包仍依赖系统运行库,不是通用静态包。其他发行版可先运行安装预检;运行库不兼容时,应在对应系统中从源码构建。

平台矩阵和测试范围见 兼容性文档;本次发行的验证范围与已知差异见 发布说明。Chromium/Electron、独立 GNOME X11 会话、混合 DPI 候选定位和 SteamOS 游戏模式不在本轮验证范围内;其他发行版的构建方法见项目仓库。

获取 Linux 版

v1.0.1 现已发布,修复 Shift+数字行的中文标点输入,词库和模型沿用 v1.0.0。下载与设备架构相符的 Debian 安装包或便携包,可直接安装升级并保留个人设置和用户词库。SteamOS 等只读系统请选择便携包,并按用户目录安装说明操作。发布页提供 SHA256SUMS 供下载后校验。