Zotero 可以在正文中保留作者—日期引文,同时让参考文献按首次引用顺序排列。在 Mac 版 Word 中,使用自定义 CSL 样式,保留作者—日期格式并移除参考文献表的排序规则。
此工作流程适用于正在准备一份 Word 文档、希望文中使用“(Vale, 2022)”这样的引文,同时让参考文献表按照每篇作品首次出现的位置排列的用户。关键在于将引文格式和参考文献排序视为两项独立要求。CSL 规范中的排序规则支持这种做法。
最终文档应是什么样子?
在更改样式之前,先用这个简短的虚构示例明确任务。以下所有姓名、标题和出版信息均为演示而编造。
| 正文中首次出现的位置 | 作者—日期引文示例 | 在参考文献表中的位置 |
|---|---|---|
| 某段引用 Morgan Vale 的 Shape arrangements(2022 年出版) | (Vale, 2022) | 第一 |
| 后面一段引用 Avery Alder 的 Grid patterns(2024 年出版) | (Alder, 2024) | 第二 |
| 另一段再次引用 Vale 的作品 | (Vale, 2022) | 仍为第一 |
| 最后一段引用 Riley Birch 的 Colour sequences(2021 年出版) | (Birch, 2021) | 第三 |
目标参考文献顺序是 Vale、Alder、Birch。这与按字母顺序和按出版年份排列都不同。这样可以方便地检验结果:按字母顺序排列时,Alder 会排在首位;按年份升序排列时,Birch 会排在首位。具体标点和排版取决于所选的基础样式。
CSL 为引文和参考文献表分别设置排序指令。如果参考文献表没有 sort 元素,条目就会按照引文顺序排列。因此,你可以保留作者—日期引文格式,同时移除参考文献表的排序规则。参见 CSL 排序规范。
准备 Zotero 并选择基础样式
使用 Zotero 桌面版和已安装 Zotero 插件的 Mac 版 Microsoft Word。在 Zotero 中,打开 Zotero → Settings,然后选择 Cite。Zotero 在 Zotero Settings 中说明了 Mac 上的设置路径。
如果 Word 中没有 Zotero 标签页,请检查 Zotero 设置中的 Cite → Word Processors。Zotero 在 Cite settings guide 中说明了插件的安装和重新安装方法。编辑引文样式之前,先确保 Word 与 Zotero 已正常连接。
选择一种作者—日期样式,其标点和参考文献信息已经符合你的需求。你只需更改一条排序规则,因此选择一个与目标输出接近的样式,可以让修改更容易处理。Zotero 在其样式编辑指南中建议从合适样式的最新版本开始。
要安装基础样式,请打开 Cite → Styles,选择 Get additional styles…,搜索样式名称并选择相应结果。这些步骤见 Zotero 的样式安装说明。
为了进行可重复的试验,请根据下表中的元数据创建三个虚构的 Book 条目。选择 New Item,选取条目类型,然后在右侧面板中输入信息。Zotero 在向 Zotero 添加条目中说明了手动创建条目和使用两个字段填写个人姓名的方法。
| 字段 | 作品 A | 作品 B | 作品 C |
|---|---|---|---|
Title |
Shape arrangements | Grid patterns | Colour sequences |
| 作者名 | Morgan | Avery | Riley |
| 作者姓 | Vale | Alder | Birch |
Date |
2022 | 2024 | 2021 |
Publisher |
Sample Press | Sample Press | Sample Press |
请将这些记录与真实来源分开。它们的作用是让排序测试一目了然,无需检查冗长的参考文献表。
编辑参考文献表的排序规则
在 Zotero 文库中选择这些测试条目。在 Cite 设置面板中打开 Style Editor,然后从编辑器的下拉菜单加载基础样式。编辑器会显示 CSL 代码,以及引文和参考文献的预览,详情见 Zotero Style Editor。
首先确认你拥有的是独立样式,其中包含实际的引文和参考文献指令。依赖型 CSL 样式只包含元数据,并指向一个独立的父样式;应在自定义副本中编辑该父样式的格式。这一区别见 CSL 文件类型。
找到开头的 bibliography 元素。在其中找到位于 layout 之前的完整 sort 区块。下面是一个用于说明的片段,应将其删除;它不是完整样式,也不应作为区块粘贴到 Zotero 中:
<sort>
<key variable="author"/>
<key variable="issued"/>
<key variable="title"/>
</sort>
你的基础样式可能使用不同的键或宏名称。删除整个参考文献表 sort 区块,包括起始和结束标签。保留参考文献表的 layout。除非你还打算更改包含多篇作品的单条引文内部排序,否则请保留独立的 citation 部分。相关边界见 CSL 排序章节。
安装之前,请为自定义样式设置独特的标题和 ID。例如,标题可以设为 Author–Date — First Citation Order,并使用根据原始 ID 创建的独特 ID。Zotero 说明样式 ID 不必能解析到网页。更改这两项可以避免原始样式更新时覆盖你的自定义修改。请按照更改样式标题和 ID中的说明操作。
将结果保存为 .csl 文件。如果使用 TextEdit,请在编辑前选择 Format → Make Plain Text。Zotero 的手动编辑样式说明介绍了纯文本编辑和保存更改的方法。
验证完整样式
安装前,请根据 CSL 架构检查整个编辑后的文件。CSL 项目的 Style Development 指南提供了验证工具,可接受文件、URL 或粘贴的代码。提交完整样式,包括元数据和未更改的格式指令。
预览成功很有帮助,但不能替代架构验证。Zotero 提醒,XML 有效并不代表 CSL 有效;切换样式或关闭编辑器也会丢失未保存的修改。离开 Style Editor前请保存工作。
在 Mac 版 Word 中应用自定义样式
通过 Zotero 的 Cite → Styles 面板安装保存的文件:选择 + 并找到 .csl 文件。Zotero 的引文样式文档支持从本地文件安装样式。
在一个空白 Word 测试文档中,按以下顺序操作。这些命令见使用 Zotero Word 插件。
- 打开 Word 的
Zotero标签页,然后选择Document Preferences。 - 按新标题选择自定义样式。
- 使用
Add/Edit Citation在第一段插入 Vale 的作品。 - 在第二段插入 Alder 的作品,在第三段再次插入 Vale 的作品,在第四段插入 Birch 的作品。
- 将光标放在正文末尾,然后选择
Add/Edit Bibliography。 - 做出更改后选择
Refresh。
预期顺序是 Vale、Alder、Birch,每篇作品各有一个条目。与上表对照。这是一项根据已说明的排序规则拟定的验收测试,并非本文实际执行 Word 操作后的结果报告。
现在将包含 Birch 引文的段落移到开头,然后刷新。目标顺序就变成 Birch、Vale、Alder。第二项测试很重要,因为它检查的是文档当前的阅读顺序,而不是最初插入引文的顺序。
两项检查都符合预期后,在你的工作文档中通过 Document Preferences 应用同一自定义样式。Zotero 的 Word 指南指出,该设置针对单个文档,因此仅安装样式文件并不会为现有文档选中该样式。使用 Zotero Word 插件。
如果两篇作品在同一条引文中首次出现,怎么办?
添加一个单独的测试段落,在同一条引文中包含两篇此前未引用的作品。Zotero 允许在引文对话框中连续添加多个条目,而且样式可能会自动排序。先检查它们显示的顺序,再判断参考文献顺序是否有误。Zotero 在包含多项引用作品的引文中对此作了说明。
如果你的要求还指定了同一对括号内的顺序,可以拖动引文气泡,或为该条引文关闭 Keep Sources Sorted。这控制的是引文簇,不能替代对参考文献表的编辑。为了让首次测试结果清晰明确,请使用分开的段落,然后再将引文簇作为补充情况进行测试。Zotero 关于多项引文的说明。
还要测试同一作者在同一年出版的两篇作品。启用年份后缀消歧时,CSL 会根据参考文献顺序分配后缀。因此,首次出现的位置变化可能会改变哪篇作品标为“a”或“b”。保留现有消歧设置并检查最终对应关系,按照 CSL 的消歧规则操作。
排查意外结果
根据遇到的问题选择下一步检查。以下步骤是依据已说明的工作流程整理出的实用诊断指南。
| 问题现象 | 下一步检查 |
|---|---|
| 参考文献仍按字母顺序排列 | 确认 Word 的 Document Preferences 中显示的是自定义标题;然后检查参考文献表中是否还留有 sort 区块。 |
| 样式编辑器停止更新 | 检查是否缺少结束标签,并验证完整文件。 |
| 引文变成数字格式 | 重新加载预期的作者—日期基础样式,然后只重复编辑参考文献表的步骤。 |
| 作者或年份不正确 | 在 Zotero 中更正条目元数据,然后刷新 Word。 |
| 手动调整顺序后又恢复原状 | 在 CSL 中更改排序,然后重新生成参考文献表。 |
请在文库中更正元数据,而不要在文档中试图弥补。Zotero 的编辑条目文档说明了如何编辑字段,并建议保持作者信息一致。
不要将手动调整生成的参考文献表作为长期解决办法:Zotero 说明,直接在 Word 中编辑参考文献表会在刷新时被覆盖。修订期间应保留由样式控制的参考文献表。Zotero 的参考文献表说明。
最终设置应通过三项可见检查:作者—日期引文仍然清晰易读;每篇作品都位于其首次出现的位置;移动某条作品的首次引文后,刷新会改变参考文献顺序。将小型测试文档与自定义样式文件放在一起,这样每次修订样式时都可以重复这些检查。
来源
- CSL 1.0.2 规范 — Citation Style Language
- Zotero 设置 — Zotero
- 引用 — Zotero
- 引文样式 — Zotero
- 向 Zotero 添加条目 — Zotero
- 编辑 CSL 样式——分步指南 — Zotero
- Zotero 样式编辑器 — Zotero
- CSL 样式开发 — Citation Style Language
- 使用 Zotero Word 插件 — Zotero