Rime + 坚果云跨平台同步配置(Mac / Windows)

记录时间:2026-09-01(Mac 侧已实操验证,Windows 侧为接入指南) 方案:鼠须管 Squirrel(Mac)+ 小狼毫 Weasel(Win)+ 雾凇拼音 rime-ice + 坚果云同步配置

一、架构总览

核心思路:配置文件(纯文本)放坚果云真实同步目录,各平台 Rime 工作目录里用「符号链接」指过去;运行时数据(用户词库、编译产物、机器标识)留在本地,绝不进网盘

坚果云「我的坚果云」/                 ☁️ 云端(自动同步)
├── RimeConfig/                      ← 全部配置:方案 yaml、词典、lua、opencc、皮肤
│   ├── default.yaml / rime_ice.schema.yaml / ...
│   ├── cn_dicts/ en_dicts/ lua/ opencc/
│   ├── squirrel.yaml                ← Mac 皮肤定义
│   ├── weasel.yaml                  ← Win 皮肤定义(两平台互不干扰)
│   └── *.custom.yaml                ← 个人定制补丁(上游更新不会覆盖)
└── RimeUserSync/                    ← Rime 自带「用户资料同步」的快照目录(词库走这里)

macOS: ~/Library/Rime/               💻 本地
├── *.userdb/                        ← 用户词库(二进制,禁止网盘直接同步)
├── build/                           ← 编译产物
├── installation.yaml                ← 本机标识 + sync_dir 配置
├── user.yaml
└── 31 个符号链接 → 云端 RimeConfig/ 对应文件

Windows: %APPDATA%\Rime\             💻 本地(结构同上,链接改为 junction/硬链接)

为什么词库不能直接同步*.userdb 是 leveldb 二进制库,网盘多端直接同步会互相覆盖损坏。Rime 自带的「用户资料同步」会把它导出为可合并的文本快照写入 sync_dir,专为多设备设计。每台设备 installation_id 必须不同(各机器本地生成,天然满足)。


二、Mac 首次搭建(已完成,留档)

# 1. 安装鼠须管(需要 sudo 密码)
brew install --cask squirrel
 
# 2. 获取雾凇拼音配置(首次搭建时;新机器不需要,直接从云端拿)
git clone --depth 1 https://github.com/iDvel/rime-ice.git ~/Library/Rime
 
# 3. 安装坚果云并登录
brew install --cask nutstore
# ⚠️ 坚果云 6.x 的真实同步目录是 CloudStorage 下的这个(不是 ~/Nutstore Files!):
#   ~/Library/CloudStorage/坚果云-<账号邮箱>/我的坚果云/
 
# 4. 迁移配置到云端,原位置留符号链接
CLOUD="$HOME/Library/CloudStorage/坚果云-<账号>/我的坚果云"
mkdir -p "$CLOUD/RimeConfig" "$CLOUD/RimeUserSync"
cd ~/Library/Rime
setopt null_glob   # zsh
for f in * .??*; do
  case "$f" in
    build|installation.yaml|user.yaml|.git|*.userdb) continue ;;  # 本地保留项
  esac
  mv "$f" "$CLOUD/RimeConfig/" && ln -s "$CLOUD/RimeConfig/$f" "$f"
done
 
# 5. 配置词库同步目录
# 在 ~/Library/Rime/installation.yaml 中加入(保留原有 installation_id!):
#   sync_dir: "<CLOUD>/RimeUserSync"
 
# 6. 重新部署验证
"/Library/Input Methods/Squirrel.app/Contents/MacOS/rime_deployer" --build ~/Library/Rime
 
# 7. 系统设置 → 键盘 → 输入法 → 添加「鼠须管」

Finder 中右键 RimeConfig「立即下载并始终保留在此设备」,防止 macOS 云盘文件按需回收导致离线部署失败。


三、Mac 新设备接入(配置已在云端时)

# 1. brew install --cask squirrel  (装完先启动一次系统,让输入法可用)
 
# 2. 安装坚果云并登录,等待「我的坚果云」内容同步落地
CLOUD="$HOME/Library/CloudStorage/坚果云-<账号>/我的坚果云"
 
# 3. 建工作目录 + 批量建符号链接
mkdir -p ~/Library/Rime && cd "$CLOUD/RimeConfig"
for f in * .??*; do
  [ -e "$f" ] || continue
  ln -s "$PWD/$f" ~/Library/Rime/
done
 
# 4. 写 installation.yaml(id 会自动生成,补一行 sync_dir 即可)
cat > ~/Library/Rime/installation.yaml <<'EOF'
sync_dir: "<CLOUD绝对路径>/RimeUserSync"
EOF
 
# 5. 部署 + 添加输入法
"/Library/Input Methods/Squirrel.app/Contents/MacOS/rime_deployer" --build ~/Library/Rime
 
# 6. 菜单栏鼠须管图标 → 同步用户数据(拉取云端词库快照)

四、Windows 接入

1. 装软件

  1. 小狼毫 Weasel:https://rime.im/ 下载安装
  2. 坚果云 Windows 客户端:登录同一账号。确认本地同步目录(客户端设置里可查,下文以 C:\Users\<你>\Nutstore\我的坚果云 为例),等待 RimeConfig 同步下来

2. 清理默认配置

小狼毫首次运行会在 %APPDATA%\Rime 生成默认文件。先退出小狼毫(托盘右键 → 退出),然后:

  • 删除 %APPDATA%\Rime 里的方案 yaml、词典目录等默认内容
  • installation.yamluser.yaml 可删(会重新生成),也可保留改用

3. 建链接(管理员 CMD 或开启开发者模式)

保存为 link-rime.bat 放到任意位置,右键管理员运行:

@echo off
setlocal
set "CLOUD=%USERPROFILE%\Nutstore\我的坚果云\RimeConfig"
set "RIME=%APPDATA%\Rime"
 
rem 目录用 junction(无需管理员)
for /d ~nxD" "F in ("%CLOUD%\*") do mklink /H "%RIME%\F"
 
echo 完成
pause

跨盘符时把 /H 换成 /D(符号链接,需管理员)。

4. 配置词库同步 + 部署

编辑 %APPDATA%\Rime\installation.yaml追加(保留它自己生成的 installation_id):

sync_dir: "C:/Users/<你>/Nutstore/我的坚果云/RimeUserSync"

Windows 路径建议写正斜杠 /,librime 兼容且省去转义麻烦。

然后:

  1. 托盘小狼毫图标 → 重新部署
  2. 托盘小狼毫图标 → 用户资料同步(拉取 Mac 侧词库快照)
  3. Win + 空格 切换到「小狼毫」即可使用

5. Windows 皮肤

云端 RimeConfig 里已有 weasel.yaml(雾凇自带的 Win 皮肤定义)。个性化请新建 weasel.custom.yamlRimeConfig,Mac 端的 squirrel.custom.yaml 会被小狼毫自动忽略,互不干扰。


五、日常操作速查

操作MacWindows
改配置后生效菜单栏图标 → 重新部署托盘图标 → 重新部署
同步词库菜单栏图标 → 同步用户数据托盘图标 → 用户资料同步
改皮肤squirrel.custom.yamlweasel.custom.yaml
全局设置(候选数等)default.custom.yaml同左(共用)
自定义短语custom_phrase.txt同左(共用)

更新雾凇词库(上游持续更新):任一台机器下载 https://github.com/iDvel/rime-ice 最新 zip,解压覆盖 RimeConfig 里的对应文件。*.custom.yamlcustom_phrase.txt 不在官方包里,不会被覆盖。


六、注意事项(踩过的坑)

  1. 坚果云 6.x Mac 端真实同步目录是 ~/Library/CloudStorage/坚果云-<账号>/我的坚果云/~/Nutstore Files~/NutstoreCloudBridge 都不是同步目录,放进去的东西不会上云(首次搭建时踩过)。
  2. *.userdbbuild/installation.yamluser.yaml 永远不进网盘——词库损坏、机器标识互相覆盖都源于此。
  3. 不要两台设备同时改配置:网盘没有合并能力,同时改会互相覆盖。词库不受此限(快照可合并)。
  4. 每台设备 installation_id 必须唯一(自动生成的 UUID 天然满足,别手抄别的机器的)。
  5. Mac 端记得给 RimeConfig 设置「始终保留在此设备」,避免离线时文件被按需回收。
  6. 改配置的实际落盘位置是云端 RimeConfig;编辑 ~/Library/Rime/ 下的链接文件即等于编辑云端原文件。