threeyang3247 downloadsSync your Bangumi collections to notes with episode tracking, control panel, and batch editing.
插件只保留一个稳定的 SyncManager。设置页提交字段 patch,并在保存时合并到最新正式设置;控制面板刚保存的筛选、同步统计和路径状态不会被长期打开的设置页旧副本覆盖。配置 lease、串行持久化、manager 应用和依赖刷新全部成功后才替换正式设置;失败会恢复磁盘、内存、运行时配置和设置 UI。
事务在首次 Vault 修改前写入独立的 .bangumi-sync-recovery.json,记录原始内容、Subject ID、路径状态、创建路径、封面资源以及 rename 的 original/temporary/final 路径。已有封面更新前会保存原 binary、长度和 SHA-256;超过 16 MiB 时拒绝不可逆覆盖。内容使用原始 UTF-8 字节的标准 SHA-256;CRLF 与 LF 不等价。插件重载后会恢复门禁和 Recovery Center 上下文,journal 经过完整运行时结构校验,并且只在明确提交或完整诊断通过后删除。
损坏、不完整或不支持的 journal 会保留时间戳备份并阻止写入;Vault 任意目录中的孤立 .bangumi-sync-*.tmp.md 也会进入恢复状态,不会自动删除。不同原因只开放安全动作,corrupt/orphan/configuration blocker 不能用空 Retry 绕过。所有 manager 终态都会广播,控制面板在提交或回滚结束后恢复可操作。详细操作见 恢复指南。升级到 6.11.1 不需要迁移 Markdown。
一个用于 Obsidian 的插件,可以将你在 Bangumi(番组计划)上的收藏同步到 Obsidian 笔记中。
同步你在 Bangumi 上的所有个人数据到本地笔记:
| 模式 | 说明 |
|---|---|
| 手动同步 | 预览条目列表,勾选要导入的条目;同步前会按模板弹出本地自定义属性填写窗口 |
| 自动同步 | 直接导入所有待同步条目,无需确认;自定义属性按模板默认值写入或保持为空 |
| 增量同步 | 自动检测已同步条目,避免重复导入 |
| 智能数量限制 | 未同步数量不足时自动同步全部 |
为每种条目类型配置不同的笔记模板:
| 来源 | 说明 |
|---|---|
| 标准模板 | 只含 Bangumi 数据,适合普通用户 |
| 作者自用模板 | 含自定义变量,适合资源管理 |
| 从文件选择 | 从 Obsidian 库中选择 .md 文件作为模板 |
| 自定义内容 | 在弹窗中直接编辑模板内容 |
{{name}}、{{rating}}、{{my_rate}} 等{{#if my_rate}}评分: {{my_rate}}{{/if}}{{director|未知}}资源属性: []BDRip, 1080p, 外挂字幕
📖 详细模板设计文档:docs/TEMPLATE_GUIDE.md
生成的笔记包含美观的信息表格,配合 Dataview 插件实现动态显示:

本地修改可以同步回 Bangumi 云端:
统一同步评分、短评、标签、收藏状态、单集进度:
在正文集数框上右键可快速操作:
集数框支持悬浮显示标题和日期,已看集数高亮显示。
条目笔记改为按需创建,不再在同步时默认写入 笔记 属性:
笔记ID 多行列表属性记录条目 ID笔记 属性会写回到共享笔记内对应一级标题相关 属性链接图汇聚关联条目 ID适合把同一作品的多季动画、漫画、小说等记录收拢到同一份笔记中,减少重复文件

| 操作 | 说明 |
|---|---|
| 同步选中 | 同步选中的未同步条目,保留用户数据 |
| 强制同步 | 覆盖已存在的本地文件 |
| 删除选中 | 删除选中的本地文件(移动到回收站) |
| 批量编辑 | 修改已同步条目的 frontmatter 属性 |
通过命令或控制面板搜索 Bangumi 条目:
强制同步时保留用户自定义数据:
{{category}} 分组,支持分别选择导出用户属性、自定义属性、正文内容> [!abstract]+ **短评**同步时自动获取相关条目并建立双向链接:
如果你是使用者,只看 README 和模板文档通常就够了。
如果你是维护者或准备二次开发,建议按下面顺序阅读:
docs/ 目录文档导航与推荐阅读顺序本插件的模板使用了 Dataview 的内联查询语法 = this.属性,需要先安装 Dataview 插件。
安装方法:
作用:
= this.评分 会显示当前笔记的"评分"属性= this.观看状态 会显示"观看状态"属性⚠️ 如果不安装 Dataview,表格中会显示原始的
= this.属性文本,而非属性值。
选择以下任一方式安装:
方式一:从 GitHub Release 安装(推荐)
main.js、manifest.json 和 styles.css你的Vault/.obsidian/plugins/bangumi-sync/ 目录方式二:手动构建
git clone https://github.com/threeyang3/bangumi-sync.git
cd bangumi-sync
npm install
npm run build
ACGN/{{type}}/{{name_cn_with_type}}.md)如果插件已经进入社区插件市场,可直接:
main.js、manifest.json 和 styles.css你的Vault/.obsidian/plugins/bangumi-sync/ 目录git clone https://github.com/threeyang3/bangumi-sync.git
cd bangumi-sync
npm install
npm run build

配置时最关键的是四类设置:
Access Token:Bangumi API 访问令牌文件路径模板:本地条目文件写入位置图片路径模板 与 封面链接类型:控制封面落盘和引用方式其他设置主要分为:
更细的维护说明请看:

键盘导航:
↑/↓ - 上下移动选中行PageUp/PageDown - 翻页Enter/Space - 打开选中的已同步文件Escape - 关闭面板插件提供以下命令,可在命令面板中调用,也可在 Obsidian 设置中自定义快捷键:
| 命令 | 说明 |
|---|---|
| 同步 Bangumi 收藏 | 打开同步选项弹窗 |
| 快速同步(使用默认设置) | 使用默认设置直接同步 |
| 打开控制面板 | 打开收藏管理控制面板 |
| 检查并同步状态 | 打开控制面板并自动触发状态同步 |
| 创建或追加条目笔记 | 为当前已同步条目创建或追加共享笔记 |
| 导出用户数据 | 导出本地用户属性 / 自定义属性 / 正文备份 |
| 导入用户数据 | 从备份文件导入用户数据,支持属性管理与差异审查 |
| 搜索条目 | 搜索 Bangumi 条目 |
| 批量下载封面图片 | 将所有本地条目的网络封面下载到本地并替换链接 |
README 里只保留最常用的一小部分。完整变量表和模板规则请看 docs/TEMPLATE_GUIDE.md。
| 变量 | 说明 |
|---|---|
{{type}} |
条目类型 |
{{category}} |
细分类别 |
{{platform}} |
Bangumi API 平台字段(如"公式书"、"TV"、"电影") |
{{name_cn_with_type}} |
中文名带类型后缀 |
{{id}} |
条目 ID |
| 变量 | 说明 |
|---|---|
{{name}} / {{name_cn}} |
原名 / 中文名 |
{{rating}} / {{rank}} |
Bangumi 评分 / 排名 |
{{my_rate}} / {{my_status}} |
我的评分 / 收藏状态 |
{{my_comment}} |
我的短评 |
{{tags}} / {{my_tags}} |
标签 |
{{cover}} |
封面链接 |
{{related}} |
相关条目链接 |
{{episodes}} / {{volumes_display}} |
章节或卷数展示 |
推荐把需要用户补充的本地属性直接写成普通 frontmatter 字段,例如:
剧情评分:
资源属性: []
已购: false
补充说明:
[] 会被当成列表型属性,输入时使用英文逗号分隔true / false 会被当成布尔属性{{rating_story}}、{{rating_music}} 等写法仍兼容,但新模板更推荐普通属性写法{{name_cn}}{{#if my_rate}}评分: {{my_rate}}{{/if}}{{director|未知}}确保模板中包含 id: {{id}} 字段。插件通过 frontmatter 中的 id 字段识别已同步条目。
在设置面板中为每种条目类型选择:标准模板 / 作者自用模板 / 从文件选择 / 自定义内容。
检查图片路径模板是否正确,确保目标目录存在。
在模板设置区域底部,点击"导出全部模板"按钮,选择保存文件夹即可。
不会。插件会自动保护你的本地自定义属性,以及正文中的记录、感想,可在设置中配置保护选项。
不会弹出填写窗口。插件会直接使用模板里写好的默认值;如果模板字段本身为空,就保留为空。
可以。Bangumi ID 是唯一身份,文件名只是展示名称。保留有效 id 并让文件位于扫描目录内,普通同步、强制同步和状态同步都会继续更新重命名后的文件。
默认无冲突时使用简洁名称;发生实际规范化路径冲突时使用年份消歧,年份相同或缺失时追加 Bangumi ID。非法字符会优先转为全角,例如 乱马1/2 保存为 乱马1/2。碰撞比较按原始 ASCII / 切分路径,再逐段规范化,因此文件名中的全角 / 不会被误认为目录分隔符。
从 6.10.1 起,普通同步、控制面板同步、预览执行和搜索添加共用同一套路径规划与事务提交。内容生成失败不会提前移动旧文件;重命名后的写入失败会自动恢复路径和内容,并明确报告 rolled-back 或 rollback-failed。
不会。请先运行“检查本地 Bangumi 条目”,再使用“预览并应用当前路径模板”显式迁移。用户手动命名默认受到保护。
详细版本历史请看 docs/VERSION_HISTORY.md 或 GitHub Releases。
如果这个插件对你有帮助,欢迎赞助支持开发者:
MIT License
当批次只有部分条目成功时,插件会保留可回滚事务,并要求选择“保留成功结果”或“回滚本批次”。在作出选择前不能开始下一批同步,关闭结果窗口也会再次提示,避免把未确认的修改静默提交。
路径状态设置与 Markdown 文件属于同一个逻辑事务:设置保存失败会自动恢复新建文件、旧内容、重命名路径和旧路径状态。若恢复本身失败,结果窗口会显示严重诊断信息;请检查错误详情、Vault 回收站及残留的 .bangumi-sync-*.tmp.md 文件。
“保留”与“回滚”使用同一个原子决策:快速重复点击或两个按钮竞争时,只会执行先到达的选择。结果窗口会按最终磁盘状态重新统计;已撤销的创建、更新和重命名显示为 rolled back,不再计入成功数量。
恢复失败后,普通同步、预览同步、搜索同步、自动同步和路径迁移都会暂停。请先重试恢复;如果已手工处理文件,可执行恢复确认,本地扫描会检查临时文件、重复 ID、阻塞诊断与路径状态一致性,全部通过后才会解除阻断。
命令面板运行“打开 Bangumi Sync 恢复中心”可随时重新查看恢复上下文。关闭窗口不会清除上下文;可以重试自动回滚、重新扫描,或在手工修复后确认恢复。人工确认会逐项验证批次前“应存在/应不存在”预期,区分意外残留、文件缺失、路径不符和期望路径身份不符,并重新保存、核对批次前 subjectPathStates 后再次扫描。整个恢复流程只访问本地 Vault 与插件设置,不请求 Bangumi 网络 API。
存在 recovery-required 时,收藏/单条同步、路径迁移应用、封面下载、关联链接写回、状态同步、批量编辑与撤销、用户数据导入/导出、集数状态、吐槽和共享笔记写入均被统一阻止;本地诊断、恢复扫描和只读预览仍可使用。恢复重试与人工确认共用同一个互斥动作,不能并发改动磁盘。
6.11.1 会完整校验活动事务 journal。插件或 Obsidian 重载后仍保持写门禁,并按 recovery reason 只开放安全动作;journal 仅在完整诊断通过的明确终态后清理。损坏或结构错误的 journal 会备份原始内容,孤立 temporary file 不会被自动删除。完整说明见 docs/RECOVERY_GUIDE.md。