Zotero Duplicate Merge Manager 是一个用于识别并保守处理可能重复的 Zotero 顶层文献条目的独立插件。它面向大型文库中存在独立重复条目、同题目条目、导入来源不一致或元数据不完整的场景。
这个插件处理的是多个独立文献条目之间的疑似重复关系。它不同于 collection 位置管理插件,也不同于同一条目出现在多个文件夹中的“镜像位置”问题。
插件会在 Zotero 顶层文献条目的右键菜单中添加 查找可能重复条目...。你可以选中一个条目进行查询,也可以多选多个条目,让插件分别以每个选中条目作为查询种子查找候选重复项。
插件只扫描当前文库中的顶层普通文献条目,自动忽略附件、笔记、子条目和非文献对象。
识别逻辑主要基于标题。标题完全相同的条目会被强制加入候选,不依赖相似度预筛选;标题高度相似的条目也会进入评分流程。
标题比较会做全角/半角归一化、大小写归一化、重音符号处理,并忽略标题内部空格差异。这样可以提高对中英文标题、复制格式差异和轻微排版差异的容忍度。
DOI、年份、作者和条目类型不会取代标题判断,而是作为辅助证据参与评分。DOI 完全相同会增加置信度;年份一致、作者重合、条目类型一致也会加分。年份冲突或作者完全不重合会降低候选置信度。
这种策略避免仅凭 DOI 或单一字段贸然合并明显不同的条目。
查找结果会在独立弹窗中展示。窗口按查询种子分组,列出候选重复条目、分数、匹配原因、所在文件夹、附件数量、笔记数量和标签数量。
结果区域支持纵向滚动阅读。候选重复条目的标题、分数和匹配原因会使用红色字体标识,便于在大量结果中快速识别重点。
当多选条目中已经存在标题完全相同的一组条目时,插件会在结果顶部单独列出这些同题目组。它会根据资料完整度推荐一个保留项,并提供合并本组或回收非保留项的操作。
插件支持在确认后执行修改操作:
合并到查询:保留查询条目,把候选重复条目合并进去合并本组:对多选中标题完全相同的一组条目,自动推荐资料较完整的条目作为保留项保留并合并:手动指定同题目组中的某一条作为保留项回收:把候选条目移入 Zotero 回收站回收非保留项:把同题目组中非保留项移入 Zotero 回收站
合并前会检查同文库、同条目类型和可编辑状态。不满足条件时会拒绝合并,避免字段损失或跨文库错误。
单条目查找:
- 在 Zotero 条目列表中右键一个顶层文献条目
- 点击
查找可能重复条目... - 在结果窗口中查看候选重复条目
- 需要时点击
跳转、合并到查询或回收
多条目查找:
- 在 Zotero 条目列表中多选多个顶层文献条目
- 右键点击
查找可能重复条目... - 查看每个查询种子的候选重复项
- 如果顶部出现同题目组,可以选择
合并本组、保留并合并或回收非保留项
标题完全相同是最高优先级。标题高度相似、标题相似和标题部分相似会根据相似度进入候选列表。
默认标题相似度下限为 0.76,最终每个查询种子只展示分数不低于 68 的候选条目,最多展示 50 条。
辅助证据包括 DOI、年份、作者和条目类型:
- DOI 完全相同:增加置信度
- 年份相同:增加置信度
- 作者重合:增加置信度
- 条目类型相同:增加置信度
- 年份不同或作者不重合:降低置信度
扫描时插件会先为当前文库建立标题、紧凑标题、DOI、年份和作者索引,再对较小候选集评分。这比对整个文库做两两比较更快,适合较大的 Zotero 文库。
合并调用 Zotero 内置 Zotero.Items.merge()。保留项会接收被合并条目的附件、笔记、标签和文件夹位置等信息,被合并条目会进入 Zotero 回收站。
为降低风险,当前版本只允许合并同一文库、相同条目类型且可编辑的顶层文献条目。
回收操作调用 Zotero 回收站,只把条目移入回收站,不做永久删除。你仍然可以在 Zotero 回收站中恢复或清空。
点击 跳转 会定位到候选条目。如果候选条目位于某个 collection 中,插件会优先跳转到该文件夹并选中条目;否则会在文库根视图中选中条目。
- 只处理当前 Zotero 文库
- 只扫描顶层普通文献条目
- 不处理附件、笔记、子条目或非文献对象
- 支持多选批量查询,但每个分组独立展示结果
- 修改操作必须经过确认弹窗
- 合并会调用 Zotero 内置合并能力
- 回收只移入 Zotero 回收站,不永久删除
- 插件只识别“可能重复”,最终是否合并仍需要人工确认
当前版本没有单独设置页,核心配置在源码 duplicate-merge-manager-plugin.js 的 config 中:
menuLabel: "查找可能重复条目...":右键菜单名称scoreThreshold: 68:候选展示最低分数maxCandidatesPerItem: 50:每个查询种子最多展示候选数titleTokenMinLength: 3:标题索引词最小长度titleSimilarityFloor: 0.76:标题相似度下限mergeActionLabel: "合并":合并操作标签trashActionLabel: "回收":回收操作标签
插件内置一个“重复文献卡片 + 合并箭头 + 保留确认”的图标,用来表达识别可能重复条目、合并到保留条目以及确认式管理的功能。
- 在 Zotero 中打开
工具 -> 插件 - 点击右上角齿轮
- 选择
Install Add-on From File... - 选择构建好的
.xpi - 重启 Zotero
安装文件:
dist/zotero-duplicate-merge-manager-plugin-0.5.2.xpi
在插件目录运行:
bash build.sh构建产物会出现在:
dist/zotero-duplicate-merge-manager-plugin-0.5.2.xpi
- Zotero 7、8、9
当前 manifest 明确标记为兼容 Zotero 7.0 到 9.*。