MuiseDestiny/zotero-attanger · 上手攻略

  • 仓库:MuiseDestiny/zotero-attanger
  • 链接:https://github.com/MuiseDestiny/zotero-attanger
  • 分类:效率工具 · Zotero 插件 · 文献管理
  • 作者:Tom
  • 更新:2026-08-15

它是什么

Attanger(Attachment Manager)是 Zotero 的一个插件,专门解决文献 PDF/CAJ 附件管理的最后一公里问题:下载 → 自动归类 → 重命名 → 关联文献。它接管了 Zotero 内置附件管理的不足,让附件的存储结构、命名规则和更新同步变得完全可配置。

核心功能:把"手动拖拽附件到 Zotero 条目"这件事,变成一条自动化的流水线。

解决什么问题

  • Zotero 导入 PDF 后命名混乱,无法通过文件名判断内容
  • 不同来源的附件分散在"已存储"和"外部链接"两种模式之间,难以统一管理
  • Better BibTeX 生成 citation key 后,附件文件名不会跟着更新
  • 从下载文件夹批量导入附件需要手动一个一个拖拽
  • CAJ 文件(知网独家格式)无法被 Zotero 原生识别
  • 附件和文献条目的标题可能不一致,后续检索困难

快速安装

前提

  • Zotero 7 或 Zotero 10(当前支持的最新版本)
  • 下载的 .xpi 文件

安装步骤

  1. 前往 Releases 页面 下载最新 .xpi 文件
  2. 打开 Zotero → ToolsPlugins(旧版 Zotero 是 ToolsAdd-ons
  3. 点击齿轮图标 → Install Add-on From File → 选择下载的 .xpi
  4. 重启 Zotero(若有提示)

安装后配置

打开 Zotero SettingsAttanger(设置页面),配置以下核心项:

Source Path(源路径)
  └── 浏览器下载文件夹或其他放置新文件的目录

Attach Type(附件类型)
  ├── Stored Copy(存储副本):使用 Zotero Storage 或 WebDAV 时选
  └── Link(外部链接):使用 OneDrive/Dropbox/坚果云等同步服务时选

Destination Path(目标路径,Link 模式必须)
  └── 外部链接文件存放的根目录

Subfolder Template(子文件夹模板)
  └── 默认 {{collection}},即按 Zotero 收藏夹层级构建子目录

Filename Format(文件名格式)
  └── 使用 Zotero 原生文件重命名模板,参考 Zotero 文档

Auto-process new files(自动处理)
  └── 开启后,新文件进入源路径后自动关联到对应的 Zotero 条目

核心用法

场景一:自动附加新下载文件(最常用)

  1. 把 PDF 或 CAJ 文件保存到配置好的 Source Path
  2. 在 Zotero 中选中对应文献条目
  3. 右键 → AttangerAttach New File,或按快捷键 Ctrl+I

Attanger 会自动选择 Source Path 中最新修改的非隐藏文件,关联到当前选中的条目。若未选中条目,则关联到当前选中的收藏夹。

⚠️ 除非开启了 Keep original files,源文件在导入后会从 Source Path 删除。

场景二:批量匹配已有附件(清理历史遗留)

  1. 把多个 PDF/CAJ 文件放入 Source Path
  2. 在 Zotero 中选中一个或多个文献条目
  3. 右键 → AttangerMatch Attachment

Attanger 会按标题相似度将文件分配给对应条目,每个文件只使用一次。支持从 PDF 内部提取真实标题做匹配(解决下载文件名和文献标题不一致的问题)。

场景三:重命名现有附件(同步 Better BibTeX citation key)

开启 Rename linked attachments after item metadata changes,此后当 Zotero 条目元数据(如 citation key)更新时,关联的链接附件会自动重命名。

Debounce(防抖)设置可避免元数据在导入初期频繁变化时产生多余的重命名操作——适合配合 Better BibTeX 使用。

场景四:将存储附件转换为链接附件(迁移)

想把 Zotero Storage 中的附件迁移到外部同步服务(如 OneDrive)?

  1. 选中附件对应的文献条目
  2. 右键 → AttangerConvert to Linked File
  3. 设置 Destination Path 和 Subfolder Template

Attanger 会自动:移动文件 → 创建链接 → 保留注解、高亮、全文索引、标签和附件备注。

场景五:用自定义规则重新整理附件

通过 Customize shortcuts, supported extensions, cleanup behavior, and regular expression rules,可以定义: - 例外文件类型(如 .annot 保留原样) - 正则表达式异常处理(如某些 DOI 格式文件名跳过重命名) - 不同文件夹使用不同模板

文件夹模板变量

Attanger 支持在 Subfolder Template 中使用 Zotero 变量:

变量 说明
{{collection}} 按收藏夹层级构建子目录(如 AI/RAG/Papers
{{itemType}} 文献类型(journalArticle、book 等)
{{year}} 发表年份
{{authors}} 作者姓氏
{{citationKey}} Better BibTeX citation key

示例:{{collection}}/{{year}}_{{authors}}AI/2024_Smith.pdf

典型适用场景

  1. 学术文献管理日常流:浏览器下载 PDF → 自动归类 → 文献条目关联,全程无需手动拖拽
  2. CAJ 文件党:知网 CAJ 文件无法被 Zotero 原生识别,Attanger 可以批量匹配和导入
  3. OneDrive/Zotero 双同步用户:将附件存 OneDrive(节省 Zotero 存储空间),链接模式由 Attanger 统一管理
  4. 文献整理历史清理:数百篇历史 PDF,需要与现有 Zotero 条目建立关联
  5. Better BibTeX 用户:citation key 更新后附件文件名自动同步,避免文件名和条目脱节
  6. 多语言 PDF 党:文件名自动去除重音字符(diacritics 和 ligatures),提高跨平台兼容性

坑与注意

  1. Zotero 7/10 专用:不兼容 Zotero 6,安装前确认 Zotero 版本。
  2. 链接附件需手动备份:链接模式下,文件不受 Zotero 同步保护(Zotero 同步只同步数据库,不同步链接文件)。必须单独备份 Destination Path,否则文件丢失后 Zotero 条目仍存在但无法打开附件。
  3. Source Path 选择要谨慎:建议专用于 Attanger,不与其他工具混用,避免误删非附件文件。
  4. Match Attachment 依赖标题相似度:对于标题变化大的 PDF(如 arXiv 预印本),匹配准确率可能下降,建议先用 PDF 内部标题提取功能。
  5. macOS 默认下载路径:Safari 和 Chrome 在 macOS 的默认下载路径不同,首次配置建议统一到一个专用文件夹。
  6. Debounce 在元数据未稳定时可能不够用:如使用 Zotero Beta + Better BibTeX,导入瞬间 citation key 可能尚未完全生成,此时自动重命名可能触发时机偏早,建议适度调高 Debounce 延迟。

与同类对比

工具 附件自动关联 批量匹配 重命名同步 CAJ 支持 链接模式
Attanger ✅ 自动 + 手动 ✅ 标题相似度 ✅ Better BibTeX 同步 ✅ 迁移工具
Zotero 原生 手动拖拽 基础
ZotFile 有限 部分
Papership

核心差异:Attanger 是目前 Zotero 插件中附件管理自动化程度最高的工具,尤其在"下载 → 关联 → 重命名 → 归类"全链路自动化上明显领先 ZotFile;CAJ 支持和 Better BibTeX 同步重命名是其独门能力。

一句话推荐

如果你每天处理大量文献 PDF,Attanger 能把附件管理从"手动拖拽"变成"一条命令搞定";使用外部同步服务(OneDrive/Nutstore)存附件的学术用户尤其值得安装,唯一要记住的是:Destination Path 必须单独备份。

来源

  • GitHub README(https://github.com/MuiseDestiny/zotero-attanger)
  • Releases 页面(https://github.com/MuiseDestiny/zotero-attanger/releases)
  • Zotero file renaming 文档(https://www.zotero.org/support/file_renaming)