全拼、简拼与六套双拼
支持全拼、声母简拼及混合输入,以及微软、小鹤、自然码、搜狗、紫光和拼音加加六套双拼。全拼兼容 lue/lve、nue/nve 和 jv/ju 等写法,显式隔音符严格保留音节边界。11 组常见模糊音可以按需开启。
言泉是一款开源、完全在本地运行的 Linux 中文拼音输入法,同时支持 IBus 和 Fcitx 5。全拼、简拼、六套双拼,搭配共享字符模型的选词与一键补全,让短词更贴合前文,长句更连贯。不需要登录,输入记录始终留在自己的电脑上。
v1.0.1 · 修复 Shift+数字行的中文标点输入
程序、词库来源和构建脚本都在 GitHub 上,可以查看,也可以自己编译。
候选查询、模型排序和用户学习都在本机完成,没有云端联想和遥测上报。
没有广告、弹窗和捆绑软件,也不会借安装输入法修改浏览器或其他无关设置。
该有的输入能力认真做好,不需要的东西尽量不加。Linux 版按照 Windows 版的词库、核心算法与模型行为移植,再接入 Linux 平台的 IBus 与 Fcitx 5;两个输入框架共用同一套本地引擎。
支持全拼、声母简拼及混合输入,以及微软、小鹤、自然码、搜狗、紫光和拼音加加六套双拼。全拼兼容 lue/lve、nue/nve 和 jv/ju 等写法,显式隔音符严格保留音节边界。11 组常见模糊音可以按需开启。
短词优先尊重完整匹配、用户词和词频;长句同时比较合理的切分与整句候选,再由共享字符模型结合上下文复核同音歧义。修正须与输入拼音对齐,证据不足时保留原结果。
共享字符模型结合已经上屏的前文,区分读音相同的不同用词,用户学过的选择仍然优先。当前文档中重复出现的术语和搭配提供临时参考,已经写过的表达也可用于补全;这些上下文只在当前会话使用,不保存文档内容。
输入几个音节后,词库先给出补全,共享字符模型再在后台结合前文,比较当前词的补齐、后续短语和下一个字建议。按 Tab 或反引号即可接受,不必输入剩余拼音。继续输入或切换应用后,过期结果不会覆盖当前提示。
经常选择的词会逐步靠前,全拼、简拼或分段确认出来的词组都可以学习。用户词随简繁模式转换显示,学习记录保持一致;个人数据随时可以删除或清空。
IBus 与 Fcitx 5 使用各自的原生适配层,但共享同一套输入引擎和用户词库。设置程序同时覆盖两种框架;常用快捷键可分别启用或禁用,关闭后仍保留原有按键绑定。
一个输入法应该把字打准,把数据留在本机,
然后安静地待在系统里。
词库先找候选,本地统计模型比较不同切分,共享字符模型再结合上下文判断哪种表达更合适。这套评分同时用于长句、上下文短词和一键补全;必要时,受拼音与词库约束的生成器补充完整候选。所有计算都在本机,判断依据不足时保留原有结果。
EXACT + CONTEXT
PATHS + LOCAL MODELS
用相同的完整语料,对比 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。旧版取自发布时的实测记录,未在当前环境重跑。期间虚拟机配置、模型、词库及部分推理时限有变化,不能将耗时变化全部归因于算法;两种架构也不是同条件的硬件对比。表中 - 表示旧版未按相应口径公布该项。
一次设置完整拼音,检查完整候选的准确率与引擎查询耗时。Top1 表示首选命中,Top2 表示前两个候选中包含正确结果。
| Linux 版本 | 架构 | Top1 | Top2 | 平均 (ms) | P50 (ms) | P95 (ms) | 最大 (ms) |
|---|---|---|---|---|---|---|---|
| v1.0.0 | amd64 | 12,940 / 16,300 79.39% | 13,534 / 16,300 83.03% | 114.695 | 114 | 178 | 486 |
| v1.0.0 | arm64 | 12,946 / 16,300 79.42% | 13,537 / 16,300 83.05% | 98.099 | 97 | 159 | 472 |
| v0.9.1 | amd64 | 11,998 / 16,300 73.61% | 12,970 / 16,300 79.57% | 173.661 | - | 320 | 912 |
| v0.9.1 | arm64 | 11,992 / 16,300 73.57% | 12,969 / 16,300 79.56% | 64.522 | - | 118 | 416 |
v1.0.0 的名次与耗时均来自生产设置;v0.9.1 沿用原公开值,其长句准确率与生产延迟分轨测量。
为每例短词提供规定的前文,评估同音选词效果。其中 11,728 例“竞争词”对应的拼音各有至少两个目标词。
| Linux 版本 | 架构 | Top1 | Top2 | 竞争词 Top1 | 竞争词 Top2 | 平均 (ms) | P50 (ms) | P95 (ms) | 最大 (ms) |
|---|---|---|---|---|---|---|---|---|---|
| v1.0.0 | amd64 | 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.286 | 8 | 20 | 42 |
| v1.0.0 | arm64 | 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.638 | 6 | 16 | 31 |
| v0.9.1 | amd64 | 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 | - | 38 | 91 |
| v0.9.1 | arm64 | 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 | - | 14 | 29 |
共享字符模型的前台推理预算为 100 ms,完成即返回,超时保留原候选;它不是固定等待,也不是整次查询的总耗时上限。无上下文短词结果另见完整基准测试文档。
逐音节输入拼音前缀,读取候选窗实际显示的唯一补全,评估命中率、按键节省,以及继续输入时的稳定性。
| Linux 版本 | 架构 | 补全命中率 | 平均节省按键 | 逐键稳定率 | 按键 P95 (ms) | 最终显示 P95 (ms) |
|---|---|---|---|---|---|---|
| v1.0.0 | amd64 | 10,336 / 12,831 80.55% | 2.638 | 2,123 / 2,185 97.16% | 1.441 | 16.180 |
| v1.0.0 | arm64 | 10,336 / 12,831 80.55% | 2.638 | 2,122 / 2,185 97.12% | 1.306 | 12.302 |
| v0.9.1 | amd64 | 9,420 / 12,831 73.42% | 2.548 | 1,691 / 1,749 96.68% | - | - |
| v0.9.1 | arm64 | 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 仅公布同步补全查询耗时,未按这两项分别计时,因此不填入直接对比。
每条长句保留末尾四个拼音音节不输入,评估界面显示的唯一续写。正确结果须扩展已输入的目标前缀,并仍是参考句的前缀。覆盖率只统计预测提示,不代表提示准确率。
| Linux 版本 | 架构 | 局部续写命中率 | 预测提示覆盖率 | 总节省按键 | 平均 (ms) | P50 (ms) | P95 (ms) | 最大 (ms) |
|---|---|---|---|---|---|---|---|---|
| v1.0.0 | amd64 | 3,514 / 16,300 21.56% | 15,814 / 16,300 97.02% | 7,479 | 111.048 | 112 | 196 | 416 |
| v1.0.0 | arm64 | 3,536 / 16,300 21.69% | 15,816 / 16,300 97.03% | 7,508 | 87.549 | 85 | 164 | 402 |
| v0.9.1 | amd64 | 421 / 16,300 2.58% | - | 977 | 101.776 | - | 277 | 640 |
| v0.9.1 | arm64 | 423 / 16,300 2.60% | - | 979 | 40.853 | - | 101 | 338 |
v1.0.0 起,长句补全评分将相同位置的“他/她”视为等价;v0.9.1 列出原始严格匹配结果,未按新口径重评。短词补全和逐键稳定性仍采用严格匹配。
长句补全生产结果预算分别为 v1.0.0 的 120 ms、v0.9.1 的 50 ms,不等于完整查询耗时上限。模型、评分口径和预算均有变化,不能将表中增量完全归因于其中单项。
以上四表的耗时来自引擎查询或补全过程,不含模型冷启动、输入框架通信、候选窗绘制及实际按键间隔,不能视为端到端输入延迟。
满足运行库依赖的 Debian、Ubuntu 及其衍生发行版可以直接安装 amd64 或 arm64 软件包。安装程序会处理依赖并接入当前桌面会话;旧版本可以直接安装新包完成升级,现有用户词库和个人设置会保留。SteamOS 等系统目录只读的环境,请使用下方的用户目录安装,不要执行系统级安装命令。
先用 dpkg --print-architecture 查看系统架构,再下载对应的 .deb 软件包。
使用 APT 安装即可,相关依赖会一并处理,不必手工复制程序文件。
GNOME/IBus 安装后通常会在输入源列表中出现,选择 Cassotis 即可使用;Fcitx 5 用户可在配置工具中添加 Cassotis。
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 可以同时安装,但同一个桌面会话应只使用其中一种框架。
切换到桌面模式,下载与 uname -m 输出相符的便携包;Steam Deck 使用 x86_64。在当前桌面用户的终端中解压、预检并安装,不要加 sudo 或 su,也不需要关闭系统只读保护。
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 就能解决。完整步骤见安装文档。
当前 v1.0.1 同时提供 amd64 和 arm64 软件包及便携包,核心引擎与本地模型对齐言泉输入法 Windows 版 v1.31.0,使用 Cassotis Lexicon v1.31.0 简繁词库。两个架构均完成原生构建、安装升级与 IBus/Fcitx 5 桌面输入验证。基准数据和 SteamOS 用户目录安装验证沿用 v1.0.0 的记录。实测成绩见基准测试;具体环境及验证范围如下。
GNOME · Wayland · x86_64 / aarch64
两个架构上的 IBus 与 Fcitx 5 均验证了 GTK 3/4 应用的原生 Wayland、Xwayland 输入及设置启动。KDE · X11 · IBus 1.5.32 · x86_64
用户目录安装、升级、卸载、设置和实际输入已验证,不需要写入系统目录。本次未验证游戏模式及 SteamOS 上的 Fcitx 5,不代表所有 SteamOS 版本均兼容。APT 安装
两种架构均提供 Debian 软件包,需满足运行库依赖;不同硬件、发行版和桌面环境组合仍需分别验证。便携包预检或源码构建
便携包仍依赖系统运行库,不是通用静态包。其他发行版可先运行安装预检;运行库不兼容时,应在对应系统中从源码构建。平台矩阵和测试范围见 兼容性文档;本次发行的验证范围与已知差异见 发布说明。Chromium/Electron、独立 GNOME X11 会话、混合 DPI 候选定位和 SteamOS 游戏模式不在本轮验证范围内;其他发行版的构建方法见项目仓库。
v1.0.1 现已发布,修复 Shift+数字行的中文标点输入,词库和模型沿用 v1.0.0。下载与设备架构相符的 Debian 安装包或便携包,可直接安装升级并保留个人设置和用户词库。SteamOS 等只读系统请选择便携包,并按用户目录安装说明操作。发布页提供 SHA256SUMS 供下载后校验。