这篇记录我当前在 EndeavourOS、GNOME Wayland 上使用的配置:IBus Rime、雾凇拼音的小鹤双拼,以及 Octagram 语法模型。Octagram 在输入拼音时参考词语搭配,调整长句候选。它是统计语法模型,不是 ONNX 或大语言模型。

安装与配置目录

BASH
sudo pacman -S --needed ibus ibus-rime

Arch 的 librime 包已包含 librime-octagram.so,可用 pacman -Ql librime | grep librime-octagram 核对。Rime 用户目录是 ~/.config/ibus/rime/;IBus 不读取 Fcitx5 的配置目录。

先按雾凇拼音安装说明安装完整配置。本文后面的方案和词库文件均以雾凇拼音为基础;只有系统自带的 rime-double-pinyin 包不足以复现。更新雾凇时,保留自己的 *.custom.yaml、custom_phrase*.txt、*.userdb、installation.yaml 和 user.yaml,尤其不要用新包覆盖用户词频。

在 ~/.config/ibus/rime/default.custom.yaml 中选择小鹤双拼,并设置 Shift 切换行为:

YAML
patch:
  schema_list:
    - schema: double_pinyin_flypy
  ascii_composer/switch_key/Shift_L: commit_code
  ascii_composer/switch_key/Shift_R: commit_code

雾凇方案中的 traditionalization 开关默认输出简体;需要繁体时可按 Ctrl + Shift + 4 切换。旧版文章里的 simplification 开关和 luna_pinyin.extended 词典示例属于另一套方案,不适用于这里的雾凇配置。

部署 Octagram 语法模型

雾凇提供了万象语法模型配方,适用于 double_pinyin_flypy。系统已有 Octagram 插件,还需要下载模型文件。2026 年 9 月使用的 LTS 文件约 400 MB:

BASH
curl -fL https://github.com/amzxyz/RIME-LMDG/releases/download/LTS/wanxiang-lts-zh-hans.gram \
  -o ~/.config/ibus/rime/wanxiang-lts-zh-hans.gram

模型与 *.schema.yaml 放在同一个 Rime 用户目录。以下为我实际使用的完整 ~/.config/ibus/rime/double_pinyin_flypy.custom.yaml:

YAML
patch:
  grammar:
    language: wanxiang-lts-zh-hans
    collocation_max_length: 6
    collocation_min_length: 3
    collocation_penalty: -14
    non_collocation_penalty: -6
    weak_collocation_penalty: -100
    rear_penalty: -20
  translator/contextual_suggestions: false
  translator/max_homophones: 8

grammar 和两个 translator/… 参数来自雾凇配方;它们针对万象模型,不保证在其他词库上得到相同候选效果。已经有 .custom.yaml 时,应将这些键合并进现有 patch:,不要写第二个 patch: 或覆盖自己的设置。Octagram 没有在此配置单独的菜单开关。

部署与验证

BASH
rime_deployer --build ~/.config/ibus/rime /usr/share/rime-data ~/.config/ibus/rime/build
ibus restart
ibus engine

最后一条应显示 rime。编译后的方案中应包含 grammar 和模型名称:

BASH
grep -nE 'grammar:|wanxiang-lts-zh-hans' \
  ~/.config/ibus/rime/build/double_pinyin_flypy.schema.yaml

2026 年 9 月 23 日的本机 IBus Rime 进程日志显示 Octagram 加载了 wanxiang-lts-zh-hans。这只能确认模型已启用,不代表它对所有句子都能提高首选准确率;实际效果应以自己的常用句子对比。

GTK、Qt 与 XWayland 应用若无法调用 IBus,再检查登录环境中的 GTK_IM_MODULE=ibus、QT_IM_MODULE=ibus 和 XMODIFIERS=@im=ibus。GNOME 输入源中需启用 Rime。