windingwind/zotero-actions-tags · 上手攻略

  • 仓库:windingwind/zotero-actions-tags
  • 链接:https://github.com/windingwind/zotero-actions-tags
  • 分类:academic-writing
  • 作者:Jay
  • 更新:2026-08-14

是什么

Zotero Actions & Tags(简称 AT)是 Zotero 的插件,赋予用户基于 Zotero 事件或自定义快捷键自动执行操作的能力。核心功能是"触发条件 → 自动动作":当你添加文献、打开条目、创建标注时,自动为条目打标签、复制链接、生成笔记、翻译标题摘要等。完全基于图形界面配置,无需写代码即可使用,也支持用户自定义 JavaScript 脚本实现高级自动化。

与 Zotero 内置标签功能不同,AT 强调动态自动化:标签随事件自动增减,而非手动维护。

解决什么问题

  • 手动打标签费时:论文库积累到数百篇后,手动给每篇加标签不现实
  • 工作流断裂:从 Zotero 获取文献到写笔记之间存在多个手动操作步骤(复制链接、生成笔记模板等)
  • 无法批量自动化:Zotero 原生不支持"打开条目时自动翻译标题/摘要"这类事件驱动的动作

快速安装

方法一:下载 .xpi 安装(推荐)

  1. 访问 Releases 页面,下载最新稳定版 .xpi 文件 - Firefox 用户:右键点击 .xpi → "另存为..."
  2. 打开 Zotero → 菜单栏点击 ToolsAddons
  3. 点击右上角齿轮图标 → Install Add-on from file
  4. 选择下载的 .xpi 文件
  5. 在扩展列表中找到插件,点击 Restart Now

⚠️ Firefox 直接点击 .xpi 会触发安装,但有时会报错;建议用"另存为"方式绕过。

方法二:开发者版本

git clone https://github.com/windingwind/zotero-actions-tags.git
cd zotero-actions-tags
# 参考 repo 内 docs/ 或 wiki 构建 xpi,再按上法安装

核心用法

内置示例:unread 标签自动化(1 分钟上手)

AT 预置了一个最简单的示例工作流:unread 动作——文献入库时自动打上 /unread! 标签,打开阅读后关闭条目时自动移除该标签。

步骤:

  1. 安装插件并确保 Zotero 已正常运行
  2. 从 Zotero Connector 或其他方式下载一篇 PDF 文献到 Zotero
  3. 该文献自动获得 /unread! 标签(在右侧面板 Tags 页签可见)
  4. 打开该条目,阅读内容
  5. 关闭条目,/unread! 标签自动消失

这展示了 AT 的核心工作模式:事件(event)→ 动作(action)

创建自定义动作(以"复制条目链接"为例)

  1. 打开 Zotero → EditPreferences(或 ToolsActions & Tags tab)
  2. 点击 "+" 新建动作
  3. 配置动作参数:
字段 填法
Label 复制条目链接(右键菜单中显示的名称)
Shortcut Ctrl+Shift+L(自定义快捷键)
Operation 选择 customScript
Data 粘贴社区分享的脚本代码(见下)

社区脚本示例(复制选中条目的 Zotero Web 地址链接):

// 来源:https://github.com/windingwind/zotero-actions-tags/discussions/115
const item = ...; // 当前条目对象(AT 自动注入)
const url = item.getField('url');
const title = item.getField('title');
const link = `[${title}](${url})`;
require('components/ClipboardHelper').copyString(link);
  1. 点击 Save
  2. 触发方式:在文献列表中右键选中条目 → Actions & Tags复制条目链接;或使用设置的快捷键

支持的事件(Trigger)

事件名 触发时机
createItem 新建/导入条目时
openFile 打开条目 PDF 时
closeTab 关闭条目面板时
createAnnotation 创建标注时
createNote 创建笔记时
appendAnnotation 添加标注到目标条目时
appendNote 添加笔记到目标条目时
programStartup Zotero(或插件)启动时
mainWindowLoad Zotero 主窗口加载完成时
mainWindowUnload Zotero 主窗口关闭时

支持的操作(Operation)

操作类型 说明
addTag 为条目添加指定标签(支持 tagstorian 语法:自动标记颜色标签等)
customScript 执行自定义 JavaScript 脚本
其他操作 参考官方文档(Actions 列表页)

标签颜色与 tagstorian 语法

AT 支持为标签设置颜色,通过在标签名前加颜色前缀实现,如:

@red:important  →  红色重要标签
@yellow:review  →  黄色待审标签

常用于视觉区分文献优先级(如 read, important, to-read 等)。

社区动作脚本库

官方维护的 Discussions Action Scripts 分类下有大量用户贡献的实用脚本,包括但不限于:

  • 自动翻译条目标题/摘要(调用翻译 API)
  • 批量为条目添加特定标签
  • 自动生成阅读笔记模板
  • 将 Zotero 条目同步到 Notion/Obsidian
  • 批量导出 BibTeX

典型适用场景

  1. 文献阅读流程自动化:用 closeTab 事件自动移除 unread 标签,建立"已读/未读"自动追踪体系
  2. 论文分级管理:按项目/主题预设颜色标签(红色=核心文献,蓝色=方法参考,绿色=待细读),配合快捷键一键打标签
  3. 翻译标题摘要:新导入的英文文献,自动翻译标题和摘要为中文,便于快速浏览
  4. 笔记模板生成:打开特定类型条目(如 RCT)时,自动在笔记区域插入预设模板框架
  5. Zotero 到笔记工具同步:条目关闭时,自动将文献信息复制到 Obsidian/Notion 对应位置

坑与注意

⚠️ Firefox .xpi 安装注意:Firefox 直接点击 .xpi 链接可能无法正确触发安装器,务必右键"另存为"。

⚠️ 脚本安全性:自定义脚本运行在 Zotero 主进程,执行任意 JavaScript;来源不明的脚本建议查看代码后再运行,避免信息泄露。

⚠️ Zotero 版本兼容性:AT 基于 Zotero 插件接口开发,部分版本可能出现不兼容;遇问题先检查 GitHub Issues 和 Releases 中是否有针对你 Zotero 版本的说明。

⚠️ 标签前缀语法:tagstorian 颜色标签语法(如 @red:)是 AT 扩展支持,需确认所用版本已包含此功能。

⚠️ 事件触发时机:closeTab 触发的是"关闭条目面板"而非"关闭 PDF 阅读器",两者不同;如需监听 PDF 关闭,用 closeTab 更合适。

⚠️ 调试困难:AT 目前没有内置调试控制台,脚本出错时只能靠 Zotero.debug() 输出到 Zotero 控制台(或外接日志工具)排查。

⚠️ 中文社区资料较少:相比 Zotero 其他流行插件(如 ZotFile、Better BibTeX),AT 的中文文档和教程较少,建议直接阅读英文 README 和 Discussions。

与同类对比

工具 定位 核心优势 局限
Zotero Actions & Tags Zotero 插件/事件自动化 事件驱动、图形配置、无需写代码 调试困难,Zotero 版本绑定
ZotFile Zotero PDF 管理 PDF 自动重命名、移动、提取注释 无事件触发能力
Better BibTeX BibTeX 导出 精确引用key生成、Citation联动 非自动化工作流
Zotero MDNotes Zotero→Obsidian 桥接 一键生成 Obsidian 笔记模板 仅限笔记,不支持任意事件
Zotero Tag Bar 标签管理 可视化标签树,快速筛选 纯标签管理,无自动化
Notero Zotero→Notion 同步 Zotero 到 Notion 数据库自动同步 仅同步,无动作触发

AT 的独特价值在于事件驱动的条件动作——其他工具要么是手动操作,要么是定时同步,没有"打开条目→自动执行动作"这种事件响应机制。

一句话推荐结论

Zotero 重度用户想把自己从"手动打标签、复制链接、写笔记模板"的重复劳动中解放出来的首选插件——图形化配置,1 分钟上手 read/unread 自动化,JavaScript 脚本支持无限自定义;但调试工具薄弱,重要工作流建议先在测试库验证稳定性。