# RimeSyncAssistant **Repository Path**: vicwjb/rime-sync-assistant ## Basic Information - **Project Name**: RimeSyncAssistant - **Description**: rime词库同步助手 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: main - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-09-01 - **Last Updated**: 2026-09-05 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 小狼毫同步助手 (RimeSyncAssistant) ## 项目简介 小狼毫同步助手是一款专为 Rime 输入法(Windows 版,小狼毫)设计的配置同步工具。通过 WebDAV 云存储实现用户配置文件的自动备份、跨设备同步与版本管理,确保您的输入法设置始终保持最新且安全可靠。 ## 功能特性 - **WebDAV 同步支持**:支持任意兼容 WebDAV 协议的云存储服务(如坚果云、群晖等) - **智能自动同步**:根据系统空闲状态和自定义策略自动执行同步操作 - **系统托盘运行**:最小化至托盘,不占用任务栏和桌面空间 - **一键手动同步**:随时通过托盘菜单或设置窗口手动触发同步 - **开机自启动**:支持 Windows 开机自启动配置 - **加密存储**:密码使用 AES 加密存储,保障账户安全 - **进程守护**:自动监控并重启小狼毫相关进程,确保同步稳定 - **详细日志记录**:完整记录同步过程,便于问题排查 - **安装检测**:自动检测小狼毫安装路径和用户数据目录 ## 系统要求 - **操作系统**:Windows 10/11 (64位) - **.NET 环境**:.NET 8.0 或更高版本运行时 - **依赖组件**: - 小狼毫输入法 (Weasel) 已安装 - WebDAV 存储账户(服务器地址、用户名、密码) ## 快速开始 ### 安装方式 1. **方法一:直接运行** - 下载最新发布的 Release 版本压缩包 - 解压至任意目录(如 `C:\Program Files\RimeSyncAssistant`) - 双击 `RimeSyncAssistant.exe` 启动 2. **方法二:源码编译** ```bash git clone https://gitee.com/vicwjb/rime-sync-assistant.git cd rime-sync-assistant dotnet build -c Release ``` ### 配置说明 首次运行后,点击系统托盘图标打开设置窗口,配置以下信息: #### WebDAV 配置 | 参数 | 说明 | 默认值 | |------|------|--------| | 服务器地址 | WebDAV 服务器完整 URL | - | | 用户名 | 访问 WebDAV 的用户名 | - | | 密码 | 访问 WebDAV 的密码(加密存储) | - | | 远程路径 | 服务器端同步目录 | `/rime_sync/` | #### 同步策略 | 参数 | 说明 | 默认值 | |------|------|--------| | 启动后静默时间 | 启动后等待同步的时间(分钟) | 3 | | 最小同步间隔 | 连续两次同步的最小间隔(小时) | 1 | | 系统空闲阈值 | 系统空闲多少分钟后可执行同步(分钟) | 5 | | 启用自动同步 | 是否开启自动同步功能 | 开启 | #### 自动启动 - 勾选「开机自启动」即可实现随系统启动 ## 使用指南 ### 托盘菜单功能 右键点击系统托盘图标,可访问以下功能: - **立即同步**:立即执行一次配置同步 - **设置**:打开设置窗口进行配置 - **查看日志**:打开日志文件夹 - **关于**:查看版本信息 - **退出**:退出应用程序 ### 同步流程 1. 同步引擎会扫描本地小狼毫用户数据目录 2. 对比本地与远程文件(根据文件名和修改时间) 3. 上传本地新文件或修改过的文件 4. 下载远程新文件或修改过的文件 5. 同步完成后自动触发小狼毫部署器刷新配置 6. 记录同步结果和统计信息 ### 状态指示 托盘图标会根据当前状态显示不同颜色: - 🟢 绿色:同步完成,一切正常 - 🔵 蓝色:正在同步中 - 🟡 黄色:配置不完整或待设置 - 🔴 红色:同步失败或发生错误 ## 配置存储 应用程序配置和日志存储于以下目录: ``` %APPDATA%\RimeSyncAssistant\ ├── config.json # 应用配置(JSON 格式) ├── config.backup # 配置备份 └── logs/ # 日志文件夹 └── RimeSyncAssistant_*.log ``` ## 常见问题 ### 1. 同步失败怎么办? - 检查 WebDAV 服务器地址、用户名和密码是否正确 - 确认远程目录存在且有写入权限 - 查看日志文件获取详细错误信息 - 尝试在设置窗口点击「测试连接」排查网络问题 ### 2. 如何重置配置? - 关闭应用程序 - 删除 `%APPDATA%\RimeSyncAssistant\config.json` - 重新启动应用程序 ### 3. 支持哪些 WebDAV 服务? 理论上支持所有兼容 WebDAV 协议的存储服务,已实测兼容: - 坚果云 - 群晖 Synology Drive - ownCloud / Nextcloud - 其他标准 WebDAV 服务器 ## 项目架构 ``` RimeSyncAssistant/ ├── Models/ # 数据模型 │ └── AppConfig.cs # 应用配置数据结构 ├── Services/ # 核心服务层 │ ├── AppHost.cs # 应用宿主,管理生命周期 │ ├── ConfigService.cs # 配置读写服务 │ ├── WebDavService.cs # WebDAV 客户端封装 │ ├── SyncEngine.cs # 同步引擎核心 │ ├── WeaselIntegration.cs # 小狼毫集成 │ ├── IdleMonitor.cs # 空闲检测 │ ├── SyncGuard.cs # 同步保护(频率控制) │ ├── ProcessGuardian.cs # 进程守护 │ ├── LogService.cs # 日志服务 │ ├── StartupManager.cs # 开机启动管理 │ ├── SecureConfig.cs # 配置加密 │ └── RetryPolicy.cs # 重试策略 └── UI/ # 用户界面 ├── SettingsWindow.cs # 设置窗口 ├── TrayController.cs # 系统托盘控制器 ├── AppState.cs # 应用状态 └── IconFactory.cs # 图标工厂 ``` ## 开发相关 ### 技术栈 - **语言**:C# 12 - **框架**:.NET 8.0 Windows Forms - **依赖库**: - `WebDavClient` - WebDAV 协议支持 - `Microsoft.Extensions.Logging` - 日志框架 - `System.Text.Json` - JSON 序列化 ### 构建命令 ```bash # Debug 构建 dotnet build -c Debug # Release 构建 dotnet build -c Release # 单文件发布 dotnet publish -c Release -r win-x64 --self-contained false -p:PublishSingleFile=true ``` ### 贡献指南 欢迎提交 Issue 和 Pull Request 贡献代码。 ## 许可证 本项目采用 [MIT License](LICENSE) 开源许可。 ## 致谢 感谢所有为开源社区做出贡献的开发者们。