--- url: /user-guidefaqsget-more-style-cannot-open.md --- # 「获取更多样式」打不开怎么办 近期许多同学在添加引文格式的时候,却发现 Zotero 内部 `获取更多样式` 点了但是却一直没有反应,可以通过尝试以下三种方法解决问题: ![点击「获取更多样式」没有反应](../../assets/images/获取更多样式没有反应.png) 1. 禁用插件 这种问题可能是由于安装的插件发生冲突所导致,点击 `工具-附件组件`后禁用第三方插件后,重启 Zotero 该问题即可解决。 `可以优先排查Zotero Style插件` ![禁用插件](../../assets/images/zotero-禁用插件.png) 2. 退出 Zotero 账户。 依次点击 `编辑-设置-同步` 下 `退出账户`,之后重启 Zotero 该问题可解决。 ![退出 Zotero 账户](../../assets/images/zotero-退出账户.png) 3. 手动安装 如果前两种方法都不能解决问题,可以手动安装引文样式的方法来实现引文样式的安装。 打开从[Zotero 样式库](https://www.zotero.org/styles)下载其他样式,搜索所需要的`期刊`(例如`Nature`) ![选择需要的引文格式下载](../../assets/images/zotero-引文格式下载.png) 此时,会进行引文格式的安装方式 ![引文格式安装方式](../../assets/images/zotero-引文格式安装方式.png) ① 选择`OK`时,Zotero 会将所选择的引文格式自动下载安装,完成后,网页右上角会有完成提醒。 ![引文格式安装完成](../../assets/images/zotero-引文格式安装完成.png) ② 选择`Cancel`时,浏览器会下载所选择的引文格式到本地,然后通过`Zotero-编辑-设置-引用-样式` 下 `+`安装安装刚刚所下载的引文格式 ![引文格式下载完成](../../assets/images/引文格式下载.png) ![安装本地引文格式](../../assets/images/zotero-安装本地引文格式.png) --- --- url: /AGENTS.md --- # AGENTS.md Zotero 中文社区文档站。全部内容为中文 Markdown,由 VitePress 构建,经 GitHub Actions 部署到 Netlify。协议:文档 CC BY-SA,代码 MIT。 ## 技术栈 * Node.js + pnpm(需自行安装并配置 pnpm,如 `npm i -g pnpm`)。 * VitePress 1.6 静态站点;脚本用 TypeScript + tsx(如 `scripts/compress-images.ts`)。 * 格式检查:Prettier(`@zotero-chinese/prettier-config`)、autocorrect(CJK 排版)、markdownlint-cli2(`@zotero-chinese/markdownlint-config`)。 * 图片压缩用 sharp,部署走 GitHub Actions → Netlify。 ## 常用命令(pnpm) ```bash pnpm i # 首次准备:安装依赖项 pnpm docs:dev # 本地预览(--open 自动打开浏览器) pnpm docs:build # 构建到 .vitepress/dist;图片路径/链接错误会导致构建失败 pnpm lint:fix # prettier --write + autocorrect --fix + markdownlint-cli2 --fix pnpm lint:check # 只检查不修改(CI 使用) pnpm compress-images # 压缩 assets/images 下的图片(jpg/jpeg/png/webp) pnpm compress-images --check # 检查模式,有可压缩图片时以退出码 1 结束(CI 使用) ``` CI 顺序:`lint:check` → `compress-images --check` → `docs:build`。husky 在 pre-commit 运行 lint-staged(prettier + autocorrect)。提交前务必运行 `pnpm lint:fix`。 ## 格式约束(CI 会拦截,需自动工具修复) * 中文与英文/数字之间必须有空格;标点用全角;中文使用直角引号 `「」` 和 `『』`,不使用弯引号 `“”`。 * 以上由 `autocorrect` 强制,配置在 `.autocorrectrc`;markdownlint 配置在 `.markdownlint-cli2.mjs`,prettier 配置引用 `@zotero-chinese/prettier-config`。 * 图片必须用标准 Markdown 语法,禁止 ``;图片资源放 `assets/images/`(通用图标在 `assets/icons/`)。 * 新增图片需运行 `pnpm compress-images`(会改写原图并更新 `assets/compressed-images.json` 缓存)。 * 详细排版规范见 `contributing/markdown.md`(文档风格指南)。 ## 内容结构 * `user-guide/` 用户文档、`plugin-dev-guide/` 插件开发、`csl-dev-guide/` CSL 规范、`translator-dev-guide/` 转换器、`contributing/` 贡献指南。 * 新增/删除页面后必须同步编辑 `.vitepress/sidebar.ts`(否则侧边栏不更新)。页面作者别名在 `.vitepress/contributors.ts` 中配置。 * 文件名小写、多个单词用连字符 `-` 连接、用全称不用缩写。 * FrontMatter 可选:`title`、`authors`、`date`。 * 构建/部署流程见 `contributing/build.md`。 ## 其他 * `main` 分支受保护,只能通过 PR 合并。 * 运行预览时会注入「非正式文档页面」警告块(见 `.vitepress/config.ts` 中的 vite 插件),属正常现象。 * `pnpm git:sync-force` 用于把 fork 的 main 强制同步到 upstream(会丢弃本地差异,谨慎使用)。 --- --- url: /user-guidepluginsai4paper.md --- # AI4Paper AI4Paper 是一款面向文献阅读与整理的 Zotero 插件,把 PDF 全文翻译、文库问答、文献检索和期刊分区显示等功能集成在 Zotero 内部,不需要在多个软件之间来回切换。 ::: warning 关于收费 AI4Paper 是一款商业插件,采用「基础功能免费 + AI 功能按量计费」的模式: * 期刊分区与影响因子显示、PDF 识别与整理等基础功能长期免费; * 全文翻译、文库问答、文献综述等需要调用大模型的功能会消耗额度,注册账号后赠送一定额度和为期 7 天的全功能试用,之后需要订阅套餐; * 也可以在插件设置中填入你自己的模型服务信息,此时不消耗插件方的额度。 ::: \[\[TOC]] ## 主要功能 ### PDF 全文翻译 对文库中的 PDF 一键发起全文翻译,输出保留原排版的双语对照文件,并作为附件回存到原条目下,便于后续检索和引用。也支持在阅读器中划词翻译,以及在阅读界面侧边栏中查看译文。 ### 与文献对话 在阅读器中就当前 PDF 提问,或让插件生成整篇论文的摘要与精读笔记,结果可以保存为 Zotero 笔记。 ### 文库知识库 将文库中的文献建立为可检索的知识库,跨多篇文献提问并给出出处,也可以据此整理综述提纲。 ### 文献检索与入库 在插件内检索外部文献数据源,检索结果可以直接保存到指定分类中,配合 Zotero Connector 使用可以覆盖大部分找文献的场景。 ### 期刊分区与影响因子 在条目列表中新增期刊分区、影响因子等列,可以按列排序和筛选,用于快速判断文献质量。 ## 安装 ::: tip 版本要求 AI4Paper 支持 Zotero 7 及以上版本,不支持 Zotero 6 及更早版本。 ::: 下载 `.xpi` 文件后,在 Zotero 中依次点击「工具」->「插件」,点击右上角的齿轮图标选择「Install Plugin From File...」,选中该文件并确认,然后重启 Zotero。 获取插件与安装的通用说明参见 [关于 Zotero 插件](./about-plugin.md)。 ## 登录账号 插件的 AI 功能需要登录后使用: 1. 在官网注册账号,注册时请设置邮箱和密码; 2. 在 Zotero 中依次点击「编辑」->「首选项」(macOS 为「Zotero」->「设置」); 3. 在左侧列表中选择「AI4Paper」,然后打开「账户与会员」; 4. 使用注册时的邮箱和密码登录。 ::: warning 使用微信注册的用户 插件端只支持邮箱与密码登录。如果你在官网使用微信扫码注册,请先在官网的账号页面补充绑定邮箱并设置密码,否则无法在插件中登录。 ::: ## 使用自己的模型服务 如果你已经有可用的模型服务,可以在插件设置的「配置 AI 服务」中填写服务地址、密钥和模型名称。填写后插件会优先使用你自己的服务,不再消耗插件方的额度。 ## 常见问题 ### 安装后看不到插件界面 请确认已经完全退出并重新启动 Zotero。插件需要重启后才会加载。 ### AI 功能提示未登录 请在「首选项」->「AI4Paper」->「账户与会员」中确认登录状态,以及所用账号是否处于试用期或订阅有效期内。 ### 全文翻译后找不到译文 译文会作为附件保存在原条目下,展开条目即可看到;如果条目下附件较多,可以按添加时间排序查找。 --- --- url: /user-guidepluginszotero-gpt.md --- # Awesome GPT for Zotero Awesome GPT for Zotero 是一个由 MuiseDestiny 创建的开源 Zotero 插件。这个插件使得用户能够通过命令标签使用 Meet API,进一步增强 Zotero 与 GPT 模型(包括 gpt-3.5-turbo 和 gpt-4)的集成。 视频教程:[Zotero GPT - 使用教程,配置免费密钥!!!](https://www.bilibili.com/video/BV17N4y1o7vx/) 主要特点包括: * ✅ **🔗 与 Zotero 集成**:您可以使用该插件,根据所选文本或 PDF 文件搜索和查询资料库中的项目。 * ✅ 🧠 使用 GPT 生成回复文本:支持 `gpt-3.5-turbo` 和 `gpt-4` * ✅ **🏷️ 命令标签**:**点击一次**,加速研究。 * ✅ 💬 就当前 **PDF 文件**(全文或选定文本)提出问题。 * ✅ 💬 就**所选论文**(摘要)提问。 * ✅ 📝 将所选论文**概括**成几个高度浓缩的句子。 * ✅ 🔍 根据所选文本**搜索**图书馆中的项目。 * ✅ ⚙️ **GPT 的高级设置**:可以设置 api 密钥、型号名称、api 网址、温度。 * ✅ **与 Better Notes 集成**:使用 [Better Notes](https://github.com/windingwind/zotero-better-notes) 时可直接打开此插件。 用户界面功能 * ✅ 🎨 **实时标记回复文本**:支持 LaTeX 和 MathJax。 * ✅ 🔍 **放大或缩小**回复文本或插件窗口的大小。 * ✅ 🖱️ **将插件窗口移动到屏幕上的任意位置**。 * ✅ 将回复文本**复制到剪贴板**。 * ✅ ⚠️ 当**请求失败**时,将显示详细的错误信息。 * ✅ 🔧 与 **Zotero 6 和 Zotero 7 兼容**。 ## 如何使用 Zotero GPT ### 基本操作 | 动作 | 快捷键 | | ------------------ | -------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | 打开 | `ctrl` + `/` | | 退出 | `ESC` | | 多行编辑 | `Shift` + `Enter` | | 放大/缩小/调整字号 | ![放大缩小](../../assets/images/zotero-plugin-gpt/zoterogpt-放大做小.png)在 回复区 按下`ctrl+滚轮`调整可以调整字体大小在 指令区 按下 `ctrl+滚轮`调整命令框大小 | 除了使用快捷键`ctrl` + `/`使用`Zotero GPT`,你也可以通过工具栏的图标来实现快速访问 ![图标](../../assets/images/zotero-plugin-gpt/zoterogpt-图标.png) ### 配置`Zotero GPT` 通过`ctrl + /`指令打开 Zotero GPT,然后输入`/secretKey sk-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx`(这里要换成你自己的密钥),进行密钥的设置。 (也可以通过 `编辑`-`设置`-`高级`-`编辑器`-`extensions.zotero.zoterogpt.secretKey`中 查看/设置 自己的密钥) ![设置 SecretKey](../../assets/images/zotero-plugin-gpt/zoterogpt-设置密钥.png) 如果你是用的是第三方所提供的 SecretKey,那么还需要输入`/api xxxxxxxxxxxxxxx`(具体的 api 通过查看第三方的网站获取。如果你是用的是 OpenAi 官方提供的密钥,那此时可以直接跳过设置。) Zotero GPT 默认的模型使用的是`gpt-3.5-turbo`,如果你想使用 GPT4 或其他模型,请查看[模型选择说明](#模型选择说明) 你也可以通过`/report`指令随时查看 Zotero GPT 的相关配置 注意:如果使用的官方密钥,那么您的`API`应该是`https://api.openai.com/` ![查看配置](../../assets/images/zotero-plugin-gpt/zoterogpt-report.png) 设置好`SecretKey`和`API`以后,你的 Zotero GPT 已经可以正常使用了。 ![提问](../../assets/images/zotero-plugin-gpt/zoterogpt-提问.png) ### 如何获取 SecretKey 密钥主要通过以下途径获取: | 序号 | 来源 | 推荐指数 | 国内直连 | API 地址 | 说明 | | ---- | ------------ | ---------- | ------------ | ------------------------ | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | 1 | 官方 | ⭐⭐⭐⭐⭐ | 科学上网 | `https://api.openai.com` | 秘钥:[创建 secret key](https://platform.openai.com/account/api-keys) 支持模型:`gpt-3.5-turbo`、`gpt-4`(需申请 [gpt-4-api](https://openai.com/waitlist/gpt-4-api) ) | | 2 | 自建代理 | ⭐⭐⭐⭐ | 国内直连 | 取决于自建后台的设置 | 原理就是反向代理,需技术能力 | | 3 | Azure OpenAI | ⭐⭐⭐⭐ | 国内直连 | 管理面板`EndPoint` | 价格与 OpenAI 一致 参考 [微软官方教程](https://learn.microsoft.com/zh-cn/azure/cognitive-services/openai/chatgpt-quickstart?tabs=command-line\&pivots=programming-language-studio) 、 [其他教程](https://www.sunpop.cn/chatgpt_in_china_with_azure_openai_api_free_1_year_odoo/) 、 [azure api 转 openai](https://github.com/diemus/azure-openai-proxy/blob/main/README.zh-cn.md) | | 4 | 第三方代理 | ⭐⭐ | 通常国内直连 | 商家提供 | 信誉和技术能力决定安全性和可靠性 秘钥:需商家提供 | | 5 | 免费 | ⭐ | 通常国内直连 | 不确定 | 不可靠、不稳定 可以从网上搜索热心人公开的秘钥 | 如果你没有密钥,并且不能访问 openai,那么推荐使用免费的[GPT-API-free](https://github.com/chatanywhere/GPT_API_free)项目 注意:使用该项目所获取的 SecretKey,api 应该更换成\*\*`https://api.chatanywhere.tech`**或者**`https://api.chatanywhere.com.cn`\*\* ### 模型选择说明 在使用 Zotero GPT 插件时,您可以通过`/model`命令来指定希望使用的 GPT 模型。 如果您使用的是 Openai 的 GPT 模型,要查询可用的模型名称,您可以访问 OpenAI 的官方文档页面:[OpenAI Models Documentation](https://platform.openai.com/docs/models)。 如果您使用的是第三方代理的服务,请访问第三方代理的网站查询模型名称。 ::: tip 💡GPT-4 的 API 需要单独订阅 GPT-4 的 API 和 ChatGPT plus 之间是相互独立的,**订阅了 ChatGPT plus 以后并不能直接使用 GPT-4 的 API**。想要使用 GPT-4 的 API,您必须对帐号进行充值。 如何开通 GPT-4 的 API:[点击查看教程](https://zhuanlan.zhihu.com/p/672598723) ::: Zotero GPT 默认的模型使用的是`gpt-3.5-turbo`,如果您希望使用特定的 GPT 模型,请按照以下步骤操作: 1. 通过`ctrl + /`指令打开 Zotero GPT 2. 输入`/model 模型名称`(例如`/model GPT-4o`),其中「模型名称」应替换为您在 [OpenAI 官方文档](https://platform.openai.com/docs/models)中找到的确切模型名称 3. 按下回车键来应用您的选择。 4. 确保您使用的 API 密钥和 API 地址与您选择的模型兼容。。 ### 使用`Zotero GPT` > 触发器是命令标签的一个属性,颜色和位置也是如此。长按任意标签可查看/修改其触发词。它支持纯文本和 JS 正则表达式。 ![如何运行命令标签](../../assets/images/zotero-plugin-gpt/zoterogpt-运行方式.png) 你可以通过以下四种方式与 GPT 进行交流 1. 问题 + 回车 在输入框内输入你的问题,按下回车,此时与 GPT 直接进行对话 2. 问题 + 命令标签 例如在输入框内输入`这篇文章的研究背景是什么`并点击`AskPDF`,此时 GPT 会对 PDF 进行阅读后回复你的问题。 ![问题命令标签提问](../../assets/images/zotero-plugin-gpt/zoterogpt-问题命令标签.png) 3. 关键词触发命令标签 命令标签也可以通过关键词进行触发 例如在输入框内输入`这篇论文写了什么`,此时命令标签`AskPDF`会被选中,这时可以直接按下回车,实现问题 + 命令标签快速提问。 该功能是通过命令标签中的`trigger`实现的,你可以对各个命令标签的`trigger`进行自定义 ![自定义 trigger](../../assets/images/zotero-plugin-gpt/zoterogpt-trigger.png) 4.`Ctrl + 回车` 会自动执行上一次的命令标签 ### 如何浏览历史聊天记录 > 按键盘上的上(↑)和下(↓)键切换。 ![查看历史聊天记录](../../assets/images/zotero-plugin-gpt/zoterogpt-历史聊天记录.png) ## 常见问题 ### The model does not exist 例如 ```json { "error": { "message": "The model: `gpt-4` does not exist", "type": "invalid_request_error", "param": null, "code": null } } ``` 解决方案 * 检查自己的`model`设置,确保属于为以下名字中的**某一个**:`gpt-4`, `gpt-4-0314`, `gpt-4-32k`, `gpt-4-32k-0314`, `gpt-3.5-turbo`, `gpt-3.5-turbo-0301` * 若使用了`gpt-4`相关的模型,你需要保证自己具备使用`gpt-4`的权限,否则也是这样报错 ### You exceeded your current quota 例如 ```json { "error": { "message": "You exceeded your current quota, please check your plan and billing details.", "type": "insufficient_quota", "param": null, "code": null } } ``` 这是因为你目前的 API 调用额度已经耗尽(或过期)了,参考官方回复[openai help articles](https://help.openai.com/en/articles/6891831-error-code-429-you-exceeded-your-current-quota-please-check-your-plan-and-billing-details) 解决方案 * 若你正在使用官方接口,请注册新账户,继续白嫖 5 美元免费额度。或者自己绑定付款方式 * 若使用其他来源的接口和秘钥,自己核对秘钥,或联系购买时的商家 ### Invalid URL 例如 ```json { "error": { "message": "Invalid URL (POST /chat/completions)", "type": "invalid_request_error", "param": null, "code": null } } ``` 解决方案 * 若你正在使用官方接口,确保 api 设置为`https://api.openai.com`,一字不差 * 若使用其他来源的接口和秘钥,自己核对 API 地址,或联系购买时的商家 ### Ask pdf 出错 例如 ``` 根据提供的上下文信息,Meet.Global.input 是一个变量或属性名。根据代码片段中的信息,我们可以确定以下几点: 首先,Meet.Global.views.messages 是Meet.Global 对象的一个属性,它被赋值为空数组[]。这个属性可能是用来存储消息或其他相关的数据。 其次,Meet.Zotero.getRelatedText() 是一个函数调用,它使用了Meet.Global.input作为参数。根据函数名和参数名,我们可以猜测这个函数的目的可能是获取一个与Meet.Global.input相关的文本信息。 然而,根据给定的上下文信息,我们无法准确确定Meet.Global.input的具体含义。它可能是一个用户输入的值、一个来自其他地方的数据,或者可能由其他代码定义并赋给了Meet.Global.input属性。 为了更好地回答这个问题,我们需要更多关于Meet.Global.input的上下文信息。如果您能提供更多代码或上下文信息,我将尽力帮助您解答问题。[1] ``` 解决方案 `Ask pdf` 是一个针对全文进行提问的快捷命令,必须在 `ZoteroGpt` 的输入框中输入一些内容(也就是必须有提问的问题),再点击下方的命令标签(例如`AskPDF`)。若输入框为空(相当于你没问任何问题,它自然不知道要干什么),则不会解析命令语句。 例如你可以输入`本文创新点`、`解决的问题`等等,然后再点击`Ask pdf`。 ## 命令标签的自定义 > 👻 按照下面的步骤操作,你将对命令标记有一个全新的认识。 | Step | 描述 | Supplementary Information | | ---- | ---------------------------------------------------- | ----------------------------------------------------------------------------- | | 1 | 打开 Zotero GPT | 参考基本操作 | | 2 | 请键入 `#Tag Name` 并按 `Enter` | ![tagName](../../assets/images/zotero-plugin-gpt/zoterogpt-tagname.png) | | 3 | 输入你的提示或代码 | ![提示或代码](../../assets/images/zotero-plugin-gpt/zoterogpt-提示或代码.png) | | 4 | 运行标签 | 按 `Ctrl + R` | | 5 | 保存标签 | 按 `Ctrl + S` | | 6 | 长按命令标签以访问编辑界面 | ![命令标签](../../assets/images/zotero-plugin-gpt/zoterogpt-命令标签.png) | | 7 | 修改标签的颜色、位置或触发器;记得用 `Ctrl + S` 保存 | ![标签的属性](../../assets/images/zotero-plugin-gpt/zoterogpt-标签的属性.png) | | 8 | 按 `ESC` 退出编辑界面 | 退出前记得用 `Ctrl + S` 保存更改 | | 9 | 长按鼠标右键删除标签 | 注意:内置标签不支持删除 | ## 如何编写代码块 你可以在[这里](https://github.com/MuiseDestiny/zotero-gpt/blob/bootstrap/src/modules/Meet/api.ts)找到一些内置的应用程序接口。 举个简单的例子: ``` Summarize the following paragraph for me: ${Meet.Zotero.getPDFSelection()} ``` 在这里, `Summarize the following paragraph for me:` 表示纯文本,而 `${your code}` 表示代码片段。毫无疑问,如果你熟悉 Zotero API,就可以开发自己的代码。代码片段将被执行,代码片段返回的文本将替换代码片段。最后,被替换的文本将被输入到 GPT 中。因此,理论上,您可以使用命令标签完成 Zotero 和 GPT 之间的所有交互。 --- --- url: /user-guidepluginsbetter-bibtex.md --- # Better BibTeX ::: info 关于插件 Better BibTeX (BBT) 插件可帮助管理参考文献数据,主要配合 [LaTeX](https://latex-project.org)、[Markdown](https://markdownguide.org) 等围绕文本文件的工具链。 * 项目主页:[Better BibTeX for Zotero](https://retorque.re/zotero-better-bibtex/) * 插件下载地址 * [GitHub Release](https://github.com/retorquere/zotero-better-bibtex/releases) * [国内镜像](/plugins/#search=Better+BibTeX+for+Zotero) ::: ## 导出`*.bib`时转换为标题大小写 {#title-case} 关于文献题名的大小写,历来有句子(Sentence case)、标题(Title Case)两种习惯。 由于 CSL 与 Bib(La)TeX 生成参考文献著录列表的原理不同,一般推荐[在 Zotero 中按「句子大小写」存储](../edit-items.md#标题的大小写),而在`*.bib`中按「标题大小写」存储。因此,从 Zotero 导出`*.bib`时,[Better BibTeX 插件默认会将题名转换为标题大小写](https://retorque.re/zotero-better-bibtex/support/faq/index.html#bbt-is-changing-the-capitalization-of-my-titles--why)。 国家推荐性标准 [GB/T 7714《信息与文献 参考文献著录规则》](https://std.samr.gov.cn/gb/search/gbDetailed?id=71F772D8055ED3A7E05397BE0A0AB82A)的示例常用句子大小写,但正文仅要求「著录西文文献时,大写字母的使用应符合信息资源本身文种的习惯用法」(2015 版国标 §6.6、2025 版国标 §5.6)。考虑到国标的示例仅为辅助理解而列出,并非需要遵守的条款([GB/T 1.1](https://std.samr.gov.cn/gb/search/gbDetailed?id=A24AF19F41445C2EE05397BE0A0A5E0D)),我们通常不必过分关注大小写,而只要保留默认设置,让 Bib(La)TeX 自动处理,再确认全篇一致即可。 如果实在有特殊需要,可前往「Zotero 设置 → Better BibTeX → 杂项」,取消勾选[「对标题应用标题大小写格式」](https://retorque.re/zotero-better-bibtex/preferences/export/index.html#apply-title-casing-to-titles)。 --- --- url: /user-guidepluginsbetter-notes.md --- # Better Notes Zotero Better Notes 是由 @windingwind 开发的,用于文献管理软件 Zotero 的笔记插件。它完全开源、免费,支持双链笔记,支持 Markdown 与标记语言,深度集成了文献管理与阅读功能。 从 [Better Notes 首页](https://github.com/windingwind/zotero-better-notes) 开始了解 Better Notes! --- --- url: /user-guidefaqscaj2pdf.md --- # CAJ 文件转为 PDF 文件 ## 各方式优缺点对比 | 方式 | 优点 | 缺点 | 推荐度 | | --------------------------------- | -------------------- | -------------------- | ---------- | | [全球学术快报](#全球学术快报) | 无损转换,最好的方式 | 需要软件 | ⭐⭐⭐⭐⭐ | | [caj2pdf 项目](#caj2pdf-项目) | 无损转换 | 部分文献转换失败 | ⭐⭐⭐⭐ | | [油猴脚本](#油猴脚本) | 方便 | 脚本更新可能不及时 | ⭐⭐⭐ | | [虚拟打印机转换](#虚拟打印机转换) | 通用 | 体积大,无法复制文字 | ⭐ | | [网页转换](#网页转换) | 通用 | 收费 | ⭐ | ## 全球学术快报 官网: 注册知网帐号: 进入 `资料库` - `打开更多`- 选择想要转换的 caj 文件 ![alt text](../../assets/images/caj2pdf-全球学术快报打开文献.jpg) 在文献界面 `右键` - `另存为`- 保存 pdf 至指定目录即可。 ![alt text](../../assets/images/caj2pdf-全球学术快报另存为.jpg) ## caj2pdf 项目 最初的[caj2pdf](https://github.com/caj2pdf/caj2pdf)项目由于长时间未更新以及没有可视化窗口,不推荐继续使用,更推荐使用[caj2pdf-qt](https://github.com/sainnhe/caj2pdf-qt)项目([镜像站](https://caj2pdf-qt.sainnhe.dev/)) 这是一个 GUI 版本的 CAJ 转 PDF 转换器,基于 [caj2pdf](https://github.com/caj2pdf/caj2pdf) 和 [mupdf](https://mupdf.com/) 实现。 特性: ✅ 支持 CAJ/KDH/NH 文件格式\ ✅ 跨平台 (Windows 7, 8, 10, 11; macOS; Linux)\ ✅ 支持 32 & 64 位 CPU 架构\ ✅ 批量转换\ ✅ 多线程转换\ ✅ 文件拖拽\ 🔲 闭源引擎 ([caj2pdf#63](https://github.com/caj2pdf/caj2pdf/issues/63)) ![alt text](../../assets/images/caj2pdf-caj2pdf.jpg) 软件的使用也非常简单,`输入文件` → 选择 `输出目录` → `开始转换`,等待数秒即可。部分 caj 文件会转换失败,失败的文件可尝试其他方法进行转换。 ## 油猴脚本 [中国知网 CNKI 硕博论文 PDF 下载](https://greasyfork.org/zh-CN/scripts/389343-%E4%B8%AD%E5%9B%BD%E7%9F%A5%E7%BD%91cnki%E7%A1%95%E5%8D%9A%E8%AE%BA%E6%96%87pdf%E4%B8%8B%E8%BD%BD) ::: info 提醒 该方法依赖于浏览器的 [Tampermonkey](https://www.tampermonkey.net/index.php?browser=chrome\&locale=zh) 插件,如果您未安装,请先安装 [Tampermonkey](https://www.tampermonkey.net/index.php?browser=chrome\&locale=zh) 插件。 ::: ![alt text](../../assets/images/caj2pdf-油猴脚本下载文献.jpg) 在搜索界面 点击 脚本的 `批量下载PDF` - `获取链接` - `PDF下载` - 下载对应的文章的 PDF 即可。 ## 虚拟打印机转换 该方法需要电脑安装有[CAJViewer](https://cajviewer.cnki.net/)(或其他 CAJ 阅读器)以及 PDF 阅读器。 ::: info 提醒 在测试过程中,发现 CAJViewer 9.0 无法保存 PDF 文件。可以尝试使用 CAJViewer 7.2 来解决此问题。 ::: 1.使用 CAJViewer 打开 CAJ 文件,然后点击 `文件` - `打印` ![alt text](../../assets/images/caj2pdf-cajviewer打印.jpg) 2.选择打印机。由于电脑上安装的 PDF 阅读器不同,虚拟打印机的名称也会有所不同。在此示例中,选择 `Microsoft Print to PDF` 。 ![alt text](../../assets/images/caj2pdf-cajviewer选择打印机.jpg) 3.选择保存位置后,等待转换完成即可。 ![alt text](../../assets/images/caj2pdf-cajviewer正在打印.jpg) ::: info 提醒 所有扫描版的 PDF 文件都可以使用 OCR 软件将图片中的文字转换为可编辑文本。例如,你可以使用 [Umi-OCR](https://github.com/hiroi-sora/Umi-OCR) 或其他常用的 PDF 阅读器(Adobe Acrobat、ABBYY、福昕阅读器等)来完成这一操作 ::: ## 网页转换 由于大部分在线转换功能的网页都需要付费使用,在此不做推荐。 --- --- url: /en/styles.md description: >- This page is for Chinese users only. Please visit CSL official for non-Chinese styles! --- --- --- url: /csl-dev-guidespecification.md --- # CSL 1.0.2 规范 主要作者:[Rintze M. Zelle, PhD](https://twitter.com/rintzezelle)、 [Brenton M. Wiernik](https://twitter.com/bmwiernik)、Frank G. Bennett, Jr.、 Bruce D’Arcus、Denis Maier 其他贡献者:Julien Gonzalez、Sebastian Karcher、Sylvester Keil、Cormac Relf、Lars Willighagen and other CSL contributors. 译者:[Mao Zhou](https://github.com/ZMAlt)、 [Northword](https://github.com/northword)、[jiaojiaodubai](https://github.com/jiaojiaodubai)。 此工作以  [Creative Commons Attribution-ShareAlike 4.0 International License](https://creativecommons.org/licenses/by-sa/4.0/) 授权。 ## 介绍 引注样式语言(Citation Style Language,CSL)是一种基于 [XML](./xml-basic.md) 的格式,用于描述引注、注释和参考文献表的格式,它带来了: * 一种开放(开源)的格式 * 紧凑、稳定的样式 * 对样式需求的广泛支持 * 样式的自动本地化 * 对样式发布和更新的基本支持 * 数千种免费提供的样式(CC BY-SA 授权) 更多文档,如 CSL 纲要、样式和本地化,请访问 [CSL 项目主页](https://citationstyles.org/)。 ## 术语 ::: info 译者注 本节是英文文档中对所用情态动词的说明,本文已经将这些单词翻译为中文,读者可以直接跳过这部分。 ::: 本文涉及的情态动词 MUST、MUST NOT、REQUIRED、SHALL、SHALL NOT、SHOULD、SHOULD NOT、RECOMMENDED、MAY 和 OPTIONAL 的含义按照 [IETF RFC 2119](http://tools.ietf.org/html/rfc2119) 中的描述来理解。 ::: info IETF RFC 2119 国际互联网工程任务组([The Internet Engineering Task Force](http://www.ietf.org/),IETF)是一个致力于推动互联网可持续发展的国际组织。意见征求稿([Request for Comments](https://www.ietf.org/standards/rfcs/),RFC)是由 IETF 发布的技术文档,其中许多互联网技术协议已在互联网技术领域得到广泛应用。 现对 RFC 2119 的内容摘录如下: **MUST**:必须。在规范中用于描述强制执行的规定。REQUIRED 和 SHALL 与它同义。 **MUST NOT**:不得。在规范中用于描述强制禁止的规定。SHALL NOT 与它同义。 **SHOULD**:建议。在特殊情况下,可能有合理的理由忽略所述事项,但在选择相悖的做法之前,必须充分认识其将造成的影响,并在采取行动前仔细权衡。RECOMMENDED 与它同义义。 **SHOULD NOT**:不建议。在特殊情况下,当特定行为可以接受、甚至只是有用的时候,可能有合理的理由去做所述事项,但在将本词组所述行为付诸实践之前,必须充分认识其将造成的影响,并在采取行动前仔细权衡。NOT RECOMMENDED 与它同义。 **MAY**:完全可选的事项,行为主体可以自行选择是否执行。OPTIONAL 与它同义。 ::: ## 命名空间 CSL XML 命名空间的 URI 是 。 ::: info URI 和 URL 统一资源标识符(Uniform Resource Identifier,URI),是标识资源的字符序列,所谓「资源」既可以是实际存在的物理资源,也可以是虚拟的互联网资源,一个特定的 URI 对应一个确定的资源。 统一资源定位符(Uniform Resource Locator,URL),是用于定位和访问互联网资源的地址。URL 常被称为「网址」或「链接」,但应对此予以区分。 * 网址:「网址」是「网站地址」的简称,通常指一个网站的域名,如 Zotero 中文小组的网址是:。 * URL:《Zotero 百科全书》是 Zotero 中文小组发布的资源,它首页的 URL 是 。 * 链接:链接是指向 URL 的东西,例如你点击本站左上角挂着中国结的[「Z」图标](/logo.png) 时,你就能跳转到 Zotero 中文小组的 [主页](https://zotero-chinese.com)(网址的主页也是以互联网资源的形式呈现的),此时这个图标就是联系你和主页的「链接」。 显然,URL 是 一种限定了资源类型并提供了访问方式的 URI。 ::: 当提及 CSL 元素时,本规范始终使用 `cs:` 作为命名空间前缀,但根元素 `cs:style` 或 `cs:locale` 则通常省略前缀,因为它们已经有(使用 `xlsns` 属性设置的)默认命名空间声明。 ## 空格处理 CSL 样式是有效的 XML,但是对于那些旨在输出文本的属性,CSL 处理器不会通过修剪这些属性值前后的空格来满足规范化: * after-collapse-delimiter * cite-group-delimiter * delimiter * initialize-with * name-delimiter * names-delimiter * prefix * range-delimiter * sort-separator * suffix * year-suffix-delimiter * value ::: info 属性值规范化 XML 是对格式要求较为严格的标记语言,万维网联盟(The World Wide Web Consortium,W3C)在 [XML 1.0 推荐标准](https://www.w3.org/TR/xml/#AVNormalize) 和 [XML 1.1 推荐标准](https://www.w3.org/TR/2006/REC-xml11-20060816/#AVNormalize) 中要求 XML 的属性值需要满足一系列规范,其中提到: > If the attribute type is not [CDATA](https://www.w3.org/TR/xml/#sec-cdata-sect), then the XML processor must further process the normalized attribute value by discarding any leading and trailing space (#x20) characters, and by replacing sequences of space (#x20) characters by a single space (#x20) character. 也就是说,对于不是 CDATA 类型的属性值(CSL 中的属性值就不属于 CDATA),W3C 的相关标准要求 XML 解析器必须进一步处理规范化后的属性值,包括去除属性值前后的空格、将连续的空格替换为一个空格。但上面列出的属性值有可能确实要输出前后带空格文本,因此 CSL 处理器将它们作为例外,不修剪它们前后的空格(但输出时仍会将多个连续空格规范化为一个空格)。 ::: ## 文件类型 有 3 种 CSL 文件:独立样式和从属样式(都使用 `.csl` 作为扩展名),以及本地化文件(名为 `locales-xx-XX.xml`,其中 `xx-XX` 表示语言及其方言,例如 `en-US` 表示美式英语)。 ::: info 译者注 这里的「方言」主要是依据世界各地区的词汇、字型和语法进行划分的。例如中国台湾地区使用繁体字,词汇习惯和大陆地区也有所不同,就划分为中文的一种方言(`zh-TW`);除特别行政区外,中国各省市的口音虽有差异,但正式的书面语使用相同的词汇、字型和语法(即普通话),因此划分为同一种「方言」(`zh-CN`)。 ::: ### 独立样式 独立样式包含了对引注、注释以及参考文献表的格式指令。虽然它们大多数都是自成一体的(即不依赖其他样式),但是区域化数据(默认)依赖于本地化文件。 ### 从属样式 从属样式是独立样式的别名(alias),其内容仅限于样式元数据,不包括任何格式指令(唯一的例外是:从属样式可以重新指定样式区域)。 ::: info 译者注 这里提到的「别名」并不意味着「从属样式就是独立样式的另一种叫法」。从属样式和独立样式是两个不同的概念,它们的代码结构也不同,但任何一个从属样式总是对应一个独立样式,并且采用那个独立样式的格式指令。因此从使用效果来看,某个从属样式就如同它所对应的那个独立样式。 ::: 一些期刊(例如《Nature Biotechnology》、《Nature Nanotechnology》)具有相同引用格式,通过将这些期刊的从属样式链接到一个单独的独立样式(例如《Nature Journals》),就无需再重复同样的格式指令。 ### 本地化文件 每个本地化文件包含一系列对某种特定方言的本地化数据(术语翻译、本地化日期格式以及语法选项)。 ::: info 译者注 本地化文件使同一个 CSL 样式适用不同的语言环境,比如在中文环境中使用,中文的本地化文件可以将英文中的 `et al.` 替换为 `等` 。 ::: ## XML 声明 每个样式或者本地化文件应该以 XML 声明开头,指定具体的 XML 版本以及字符编码。多数情况下,XML 声明可以是: ```xml ``` ::: info XML 声明的格式 XML 声明不属于 XML 元素,故其书写格式与元素有所不同,既不是 `` 这样成对的结构,也不是 `` 这样的自闭合结构。需要注意,XML 声明必须包含版本和编码属性,并且作为 XML 文件的第一个非空行出现。 ::: ## 样式的结构 ### 根元素—— `cs:style` 样式的根元素是 `cs:style`。在 [独立样式](#独立样式) 中,根元素有以下几种属性: #### `class` 决定样式的 [引注格式](./primer.md#csstyle-根元素) 是 in-text 风格(值 `in-text`)还是 note 风格(值 `note`)。 ::: info 译者注 in-text 表示引注在正文中,note 则表示引注不在正文中,可能是脚注等。 ::: #### `default-locale`(可选) 为样式的本地化设值默认的地区。取值必须是 [语言 - 地区代码](http://books.xmlschemata.org/relaxng/ch19-77191.html)。 ::: tip 常用语言 - 地区代码 en-US:美式英语 zh-CN:中文(中国大陆) zh-TW:中文(台湾) zh:中文 更多语言 - 地区代码可以参阅 [语言代码参考手册](https://www.runoob.com/tags/html-language-codes.html) 和 [国家/地区参考手册](https://www.runoob.com/tags/ref-country-codes.html)。 ::: #### `version` 样式的 CSL 版本。对于兼容 CSL 1.0 的样式,其值必须设置为 `1.0`。 此外,`cs:style` 可以携带任意的 [全局选项](#全局选项) 和 [可继承的名称选项](#可继承的名称选项) 。 在这些属性中,只有 `version` 对于 [从属样式](#从属样式) 内的 `cs:style` 是必须的,而 `default-locale` 属性则可以用来设置样式的地区。`cs:style` 还有其他属性可以设置,但此处先省略。 下面是一个 [独立样式](#独立样式) 的 `cs:style` 示例,其位于 XML 声明之后: ```xml ``` 任何来自外层元素的分隔符都不会应用到 `` 元素的输出内(见 [分隔符](#分隔符delimiter))。 ::: tip 什么时候使用宏? 宏的作用在于命名一段较长的代码,之后就可以使用这个名称来引用这段代码。利用好宏的特性,可以让你的样式文件更加简洁易读。可以考虑在两种情况下使用宏: * 当一段代码需要被重复使用时。例如,我们往往会为文献作者、标题、日期创建一个宏,这样在不同的文献类型的格式指令中就不需要再重复书写相同的代码。 * 当一段代码的逻辑比较复杂时。例如,为复杂的排序变量创建一个宏,这样我们就可以避免在排序变量中书写复杂的表达式而影响代码的可读性。 ::: #### 本地化(Locale) 默认来自本地化文件「locales-xx-XX.xml」的本地化数据可以通过 `cs:locale` 元素重新定义或者补充定义。`cs:locale` 元素应该直接放在 `cs:info` 元素之后。 `cs:locale` 元素的可选属性 `xml:lang` 必须设置为 [语言 - 地区代码](http://books.xmlschemata.org/relaxng/ch19-77191.html),用于确定样式受哪种语言或方言影响(见[地区回退](#地区回退))。 对于 `cs:locale` 元素的更多使用细节,另见 [术语](#术语)、[本地化日期格式](#本地化的日期格式) 和 [本地化选项](#本地化选项)。 下面是一个 `cs:locale` 元素的例子: ```xml ``` ::: info HTML 字符实体 在上面的例子中,你可能注意到 `&` 这段奇怪的文本,它其实是一个 [HTML 字符实体](https://developer.mozilla.org/zh-CN/docs/Glossary/Entity)。XML 和 HTML 等文件中使用一些字符(如 `<`、`>`等)来编写代码,但有时我们不得不显示这些字符,为了避免和正常的代码产生混淆,需要用 HTML 字符实体来代表这些字符,`&` 就是字符 `&`对应的 HTML 字符实体。如果你编写的 CSL 样式文件无法被正常解析,可以排查一下是不是没有正确使用 HTML 字符实体来转述特殊字符。 ::: #### 地区回退 本地化文件为语言方言提供了本地化数据(例如「en-US」代表美式英语),而样式中可选的 `cs:locale` 元素可以省略 `xml:lang` 属性,或者设置为某种语言(如「en」代表英语)或方言而具备这一属性。地区回退是一种用于确定从上述哪一个数据源(本地化文件或 `cs:locale`)中检索可本地化单元(日期格式、本地化选项或者术语的特定形式)的机制。 对于同一种语言的方言,其中一种被定义为主要方言,其他则都是次级方言。截至本文档编辑前,包含次级方言的本地化文件包括: | 主要方言 | 次级方言 | | ----------------- | ------------------------------ | | de-DE(德语) | de-AT(奥地利),de-CH(瑞士) | | en-US(英语) | en-GB(英国) | | es-ES(西班牙语) | es-CL(智利),es-MX(墨西哥) | | fr-FR(法语) | fr-CA(加拿大) | | pt-PT(葡萄牙语) | pt-BR(巴西) | | zh-CN(中文) | zh-TW(台湾) | 用一个例子来解释地区回退再好不过了。如果所选的使用地区为「de-AT」(奥地利),本地化单元分别来自下面的源(优先级逐渐降低): A. 样式内的 `cs:locale` 元素 * `xml:lang` 设置为所选的方言 `de-AT` * `xml:lang` 设置为对应的语言 `de`(德语) * `xml:lang` 不设置 B. 本地化文件 * `xml:lang` 设置为所选的方言 `de-AT` * `xml:lang` 设置为对应的主要方言 `de-DE` (标准德语)(仅在所选地区是次级语言时可以应用) * `xml:lang` 设置为 `en-US`(美式英语) 也就是说,如果已选择的输出地区是一种语言(例如「de」),则首先采用(主要)方言(例如「de-DE」)作为可本地化单元的输出源。 一旦某个可本地化单元被找到,回退就会停止。对于术语来说,当它们被设置为空字符串(例如 `` 或者 ``)的时候也满足这个规则。地区回退在术语形式的回退之前进行(见 [术语](#术语))。 ::: info Fallback Fallback(回退)是一种经常在编程中使用的机制,即准备一系列方案(A、B、C…),并预先设定方案的优先级,当 A 方案失效时就自动采用 B 方案……依此类推。 CSL 样式设计为可以兼容不同地区的语言表达习惯,本地化就是将日期或术语表达为当地的形式。在地区回退的各种方案中,越具体的方案优先级越高,如样式文件中 `xml:lang` 设置为方言 `de-AT` 的优先级是最高的,因为它的作用范围具体到当前样式,且目标语言具体到某个地区。 ::: ## 本地化文件的结构 尽管本地化数据可以放在样式中 (见 [Locale](#本地化locale)),但本地化文件方便地提供了包括术语、日期格式以及语法选项在内的一整套默认本地化数据。 每个本地化文件包含一种语言方言的本地化数据。这种方言的 [语言 - 地区代码](http://books.xmlschemata.org/relaxng/ch19-77191.html) 设置在根元素 `cs:locale` 的必要属性 `xml:lang` 之上。还必须把同样的 [语言 - 地区代码](http://books.xmlschemata.org/relaxng/ch19-77191.html) 用作本地化文件的文件名(代码 `xx-XX` 对应的文件名为 `locales-xx-XX.xml`)。此外,根元素必须携带 `version` 属性,以表明本地化文件的 CSL 版本(对 CSL 1.0 兼容的本地化文件,其值必须设为 `1.0`)。本地化文件和样式一样需要 [命名空间](#命名空间)。`cs:locale` 元素可能包含 `cs:info` 作为其第一个子元素,同时还需要 `cs:terms`、`cs:date` 和 `cs:style-options` 子元素。下面是一个本地化文件的部分示例: ```xml n.d. et al. page pages p. pp. ``` ### 文件信息(Info) `cs:info` 元素可以用来给出本地化文件的元数据。它具有以下子元素: #### `cs:translator`(可选) ​ `cs:translator` 用来向本地化文件的翻译者致谢,可以使用多次。在这个元素中,子元素 `cs:name` 必须出现一次,而 `cs:email` 和 `cs:uri` 可能各出现一次。这些子元素应该分别包括翻译者的名字、邮箱地址和 URI。 #### `cs:rights`(可选) 可能出现一次。`cs:rights` 的内容指定了本地化文件在哪一个版权协议下发布。该元素可能会携带一个 `license` 属性来指定上述协议的 URI,`xml:lang` 属性则用来指定元素内容的语言(其值必须是 [语言 - 地区代码](http://books.xmlschemata.org/relaxng/ch19-77191.html))。 #### `cs:updates`(可选) 可能出现一次。​`cs:updated` 的内容必须是一个用来指定本地化文件最后一次更新时间的[时间戳](http://books.xmlschemata.org/relaxng/ch19-77049.html)。 ### 术语容器(Terms) 术语是本地化的字符串(比如,通过使用 `and` 术语,当样式的使用地区从英语切换至德语时,`Doe and Smith` 会自动变为 `Doe und Smith`)。术语使用 `cs:terms` 元素的子元素 `cs:term` 元素定义。每个 `cs:term` 元素必须携带一个 `name` 属性,其属性值可以设置为 [附录 II 术语](#附录-ii-术语) 列表中的值。 术语可以直接在 `cs:term` 的内容中定义,或者在需要单数和复数形式(例如「page」和「pages」)的情况下可以分别在子元素 `cs:single` 和 `cs:multiple` 中定义。 术语可以使用带有可选属性 `form` 的 `cs:term` 来设置特定形式,`form` 属性可以设置为: * `long` - (默认),例如「editors」和「editor」相对于术语 `editor` * `short` - 例如「ed.」和「eds.」相对于术语 `editor` * `verb` - 例如「edited by」相对于术语 `editor` * `verb-short` - 例如「ed.」相对于术语 `editor` * `symbol` - 例如「§」和「§§」相对于术语 `section` 如果样式使用了未定义的术语形式(即使经过 [地区回退](#地区回退) 仍未发现定义),则这个术语会回退到其他形式,比如 `werb-short` 会回退到 `verb`,`symbol` 会回退到 `short`,`verb` 和 `short` 都会回退到 `long`。此外,术语 `long-ordinal-01` 到 `long-ordinal-10` 回退到序数后缀术语。如果没有可用的地区回退或者词形回退,则术语渲染为空字符串。 可以在 `cs:term` 中使用 `match`,`gender` 和 `gender-form` 属性来设置数字变量渲染为序数(比如,`first`,`2nd`)时的格式。具体见下面的 [序数后缀](#序数后缀) 和 [性别决定的序数](#性别决定的序数)。 术语的内容不应包含类似 Latex 或 HTML 这样的标记。[Unicode 上标字符](http://unicode.org/reports/tr30/datafiles/SuperscriptFolding.txt) 可以作为上标使用。 #### 序数后缀 数字变量可以随 `cs:number` 以 `ordinal` 形式(即序数形式)渲染,比如:`2nd`(见 [数字](#数字number))。序数后缀(对 `2nd` 而言是 `nd`)通过术语来定义。 `ordinal` 术语定义了默认的序数后缀,但这些默认的后缀可以被下面的术语对某些数字进行覆盖: * `ordinal-00` 到 `ordinal-09` - 默认地,当术语名称的最后一位数字与要渲染的数字的最后一位相同时,将使用在这个范围内的后缀术语。比如:`ordinal-00` 能够匹配数字 0、10、20 等等。通过设置属性 `match` 为 `ast-two-digits`(默认为 `last-digit`),匹配范围将为变为两位,例如:0、100、200 等。当 `match` 术语设置为 `whole-number` 时,只有术语与要渲染的数字完全相同时,才会适用这个范围内的后缀。 * `ordinal-10` 到 `ordinal-99`- 默认地,当要渲染的数字的最后两位和术语中相同时,使用这个范围的后缀术语。当 `match` 属性设置为 `whole-number` 时(默认为 `last-two-digits`),只有术语与要渲染的数字完全相同时,才会适用这个范围内的后缀。 当要渲染的数字与上面的两组术语都匹配时(比如:`13` 可以同时匹配 `ordinal-03` 和 `ordinal-13`),则采用 `ordinal-10` 到 `ordinal-99` 分组内的术语。 序数术语在 CSL 1.0 中的表现和 CSL 1.0.1 及之后的版本中的有所不同。当样式和本地化文件中都没有定义 `ordinal` 术语,但是定义了 `ordinal-00` 到 `ordinal-04`,CSL 1.0 采用的方案是:`orginal-01` 用于以 `1` 结尾的数字(以 `11` 结尾的数字除外),`ordinal-02` 用于以 `2` 结尾的数字(以 `12` 结尾的数字除外),`ordinal -03` 表示以 `3` 结尾(以 `13` 结尾的数字除外),`ordinal-04` 表示所有其他数字。 当进行到 [地区回退](#地区回退),`ordinal` 术语、`ordinal-00` 到 `ordinal-99` 的术语的表现和其他术语有所不同。其他术语可以被单独地(重新)定义,但通过 `cs:locale` (重新)定义的任何序数术语都将替换先前已经定义过的序数术语。 ::: info 译者注 以上关于序数后缀的特性主要是考虑到了英语中序数「1st, 2nd, 3rd, nth…」的表达方式。英语的数字 - 序数转换已经内置在 CSL 的本地化文件中,但中文的序数采用「第」作为前缀,因而无法用本节特性来实现,制作中文样式的读者可以不必细究以上内容。 ::: #### 长序数 数字变量可以随 `cs:number` 以 `long-ordinal` 形式渲染,比如「second」(见 [数字](#数字number))。长序数术语(对「2」而言是「second」)通过 `long-ordinal-01` 到 `long-ordinal-10` 的术语来定义。 长序数形式仅适用于数字 1 到 10。其他数字的 `long-ordinal` 形式会回退到 `ordinal`。 对于数字 1 到 10 的 `long-ordinal` 形式,`match` 属性始终被视为 `whole-nameber`。对于其他使用 `long-ordinal` 形式渲染的数字,可选的 `match` 属性的行为和 [序数后缀](#序数后缀) 中描述的一样(默认值为 `last-two-digits`)。 #### 性别决定的序数 一些语言使用性别决定的序数。例如,如果目标名词是阳性的,英语中的「1st」和「first」在法语中就翻译为「1er」和「premier」,如果目标名词是阴性的,就翻译为「1re」和「première」。 序数术语(见 [序数](#ordinals-序数))中的阳性和阴性可以通过设置 `gender-form` 属性为 `feminine` 或 `masculine` 来指定(不含 `gender-form` 的术语表示中性)。这里涉及到两类目标名词: 1. [数字变量](#数字变量) 中附带的术语 2. 月份术语(见 [Months 月](#months-月) 这些名词的阴阳性可以通过在术语的 `long`(默认)形式上使用 `gender` 属性(设置为 `feminine` 或 `masculine`)来指定。当数字变量随 `cs:number` 渲染为 `ordinal` 或者 `long-ordinal` 形式时,序数词将使用原来的阴阳性,如果没有定义阳性或阴性变体,则回退到中性变体。当 `day` 日期成分以 `ordinal` 形式呈现时,日期序数的阴阳性和月份术语的阴阳性相匹配。 下面给出「1re éd.」(「1st ed.」)、「1er janvier」(「January 1st」)和「3e édition」(「3rd edition」)的示例: ```xml édition éditions éd. janvier e re er ``` ### 本地化的日期格式 可以在 `cs:date` 中定义两种本地化的日期格式:一种是 `numeric`(例如「12-15-2005」),另一种是 `text`(例如「December 15, 2005」)。这些格式在带有必要属性 `form` 的 `cs:date` 元素中设置。 日期格式使用 `cs:date-part` 子元素来构造(见 [日期成分](#日期成分date-part))。当 `cs:date-part` 的 `name` 属性设置为 `day`、`month` 或 `year` 时,这些元素的顺序会反映到对应的日、月和年的显示顺序上。可以在 `cs:date` 和 `cs:date-part` 元素上设置 [格式化](#格式化formatting) 和 [文本大小写](#文本大小写text-case) 属性来将日期格式化。可以在 `cs:date` 元素上设置 `delimiter` 属性以指定 `cs:date-part` 元素之间的分隔符,并且 [词缀](#词缀affixes) 也可以应用于 `cs:date-part` 元素。 **注意**:定义本地化日期格式时,不允许在 `cs:date` 上使用词缀。此限制是为了将语言环境决定的词缀(设置在 `cs:date-part` 元素上)与样式决定的词缀(设置在调用 `cs:date` 元素的元素上,例如括号)区分开。在宏中调用本地化日期格式的例子如下: ```xml ``` ### 本地化的选项 本地化选项有两个,即 `limit-day-ordinals-to-day-1` 和 `punctuation-in-quote` (详见 [本地化选项](#本地化选项))。这些全局选项(同时影响引注和参考文献表)在 `cs:style-options` 中被设置为可选属性。 ## 渲染元素 渲染元素指定了在引注或参考文献表中需要包含哪些参考文献条目元数据,以及以何种方式排序,并对其格式进行控制。 ### 布局(Layout) `cs:layout` 渲染元素是 `cs:citation` 和 `cs:bibliography` 的必要子元素。`cs:layout` 必须包含一个或者多个渲染元素,并且可能携带 [词缀](#词缀affixes) 和 [格式化](#格式化formatting) 属性。在使用 `cs:citation` 时,[delimiter](#分隔符delimiter) 属性可以用来指定一个引注内不同引用的分隔符。例如:一个类似「(1, 2)」的引注可以使用下面的代码实现: ```xml ``` ### 文本(Text) `cs:text` 渲染元素用来输出文本。其必须携带下列属性中的一个来确定渲染什么内容: * `variable`- 渲染一个变量的文本内容。属性值必须是 [标准变量](#标准变量)。可以与 `form` 属性一起选择变量的 `long`(默认)或 `short` 形式(例如:设置标题或者短标题)。如果选择了 `short` 形式,但数据源却没有提供短标题,则以 `long` 形式渲染。 * `macro` - 渲染一个宏的输出文本。属性值必须和 `cs:macro` 元素(见 [宏](#宏macro))的 `name` 属性值相匹配。 * `term` - 渲染一个术语。属性值必须是 [附录 II 术语](#附录-ii-术语) 的其中之一。可以连同 `pural` 属性来选择单数(默认为 `false`)或复数(默认为 `true`)形式的术语变量。还可以连同 `form` 属性来选择变量的 `long`(默认)、`short`、`verb`、`verb-shor` 或 `symbol` 形式(见 [术语](#术语))。 * `value` - 渲染属性值本身。 一个 `cs:text` 渲染 `title` 变量的例子: ```xml ``` `cs:text` 可以携带 [词缀](#词缀affixes)、[显示](#显示display)、[格式化](#格式化formatting)、[引述](#引述quotes)、[剥除句点](#剥除句点strip-periods) 和 [文本大小写](#文本大小写text-case) 属性。 ### 日期(Date) `cs:date` 渲染元素随必要属性 `variable` 输出选自 [日期变量](#日期变量) 中的日期。日期可以渲染为本地化或者非本地化格式。 [本地化的日期格式](#本地化的日期格式) 通过可选的 `form` 属性进行选择,其值必须设置为 `numeric`(完全以数字表示的格式,例如「12-15-2005」)或者 `text`(含有非数字的月份格式,例如「December 15, 2005」)。本地化日期格式可以用两种方式进行自定义。第一种方式,可以使用 `date-parts` 属性来显示几个日期成分。其值可以设置为: * `year-month-day` - (默认)渲染年、月、日 * `year-month` - 渲染年月 * `year` - 只渲染年 第二种方式,`cs:date` 可以含有一个或者多个 `cs:date-part` 子元素(见 [日期成分](#日期成分date-part))。设置在这些元素之上的属性会覆盖那些本地化日期格式指定过的属性(例如:要对所有语言地区都输出缩写的月份,可以将月份 `cs:date-part` 元素的 `form` 属性设置为 `short`)。对于本地化日期格式而言,这些 `cs:date-part` 子元素并不能决定对应的日期成分是否会被渲染,也不决定该日期成分的渲染顺序。[词缀](#词缀affixes) 非常具有地区特色,因此不允许出现在 `cs:date-part` 元素中。 未设置属性 `form` 时,`cs:date` 则显示一个完备的非本地化日期格式。在这种情况下,其日期格式使用 `cs:date-part` 子元素来创建。在必要属性 `name` 属性设置为 `day`、`month` 或 `year` 时,这些元素的顺序对应地反应了日、月和年的显示顺序。可以通过在 `cs:date-part` 元素中使用 [格式化](#格式化formatting) 属性和若干个 `cs:date-part` 的特定属性(见 [日期成分](#日期成分date-part))来将日期格式化。可以在 `cs:date` 上设置 [分隔符](#分隔符delimiter) 属性以设置 `cs:date-part` 元素不同日期成分的分隔符。此外,还可以在 `cs:date-part` 元素上应用 [词缀](#词缀affixes)。 对于本地化或非本地化的日期,`cs:date` 都可能携带 [词缀](#词缀affixes)、[显示](#显示display)、[格式化](#格式化formatting) 和 [文本大小写](#文本大小写text-case) 属性。 #### 日期成分(Date-part) `cs:date-part` 元素控制日期的各个部分如何渲染。除非其父元素 `cs:date` 调用了本地化的日期格式,否则它们还能决定哪一个日期成分以何种顺序显示。`cs:date-part` 元素描述了必要属性 `name` 所选择的日期成分,可选的属性值为: `day` ​ 对于 `day` 来说,`cs:date-part` 可以携带取以下值的 `form` 属性: * `numeric` - (默认)即数字,例如「1」 * `numeric-leading-zeros` - 即前面带有零的数字,例如「01」 * `ordinal` - 即序数,例如,`1st` 有的语言,比如法语,只在月份的第一天使用 `oridinal` 形式(「1er janvier」、"「2 janvier」、「3 janvier」等)。这种输出可以通过使用 `oridinal` 形式和 `limit-day-oridinals-to-day-1` 属性来实现(见[本地化选项](#本地化选项))。 `month` ​ 对于 `month` 来说,`cs:date-part` 可以携带 [`strip-periods`](#剥除句点strip-periods) 和 `form` 属性。在本地化文件中,如果符合使用习惯的话,月份缩写应该随句点一同定义(例如: 「Jan.」、「Feb.」)。这些句点可以通过设置 `strip-periods` 为 `true` (默认为 `false`)来去除掉。`form` 属性可以设置为: * `long` - (默认)即完整的名场,例如:「January」 * `short` - 即缩写,例如「Jan.」 * `numeric` - 即数字,例如「1」 * `numeric-leading-zeros` - 即前面带有零的数字,例如「01」 `year` ​ 对 `year` 来说,`cs:date-part` 可以携带取以下值的 `form` 属性: * `long` - (默认)即完整的年份数字,例如「2020」 * `short` - 即不含世纪的年份数字,例如「20」 `cs:date-part` 还可能携带 [格式化](#格式化formatting)、[文本大小写](#文本大小写text-case) 和 `range-delimiter`(见[日期范围](#日期范围date-ranges))属性。除非 `cs:date` 调用了本地化的日期格式,否则 `cs:date-part` 可以使用 [词缀](#词缀affixes)属性。 #### 日期范围(Date Ranges) 日期范围中的分隔符默认为短横线(例如「May–July 2008」)。可以设置 `cs:date-part` 元素的可选属性 `range-delimiter` 来自定义范围分隔符。当日期范围被渲染时,范围分隔符来自两个日期之间有差别且单位最大的日期成分的 `cs:date-part` 元素(`year`、`month` 或 `day`)。例如 ```xml ``` 将会渲染出「1-4 May 2008」、「May–July 2008」和「May 2008/June 2009」。 #### 公元后(AD)和公元前(BC) `ad` 术语(Anno Domini)自动附加到小于四位数的正数年份(例如,「79」变为「79AD」)。`bc` 术语(Before Christ)自动附加到负数年份(例如,「-2500」变为「2500BC」)。 #### 季节(Seasons) 如果日期中包含了季节而不是月份,季节术语 (`season-01` 到 `season-04`, 分别代表春夏秋冬) 将取代月份术语。比如: ```xml ``` 将会输出「May 2008」和「Winter 2009」。 #### 近似日期(Approximate Dates) 在 `is-uncertain-date` 条件(见 [选择语句](#选择语句choose))为 `true` 时表示为近似日期。例如, ```xml ``` 将输出「2005」(正常日期)和「ca.2003」(近似日期)。 ### 数字(Number) `cs:number` 渲染元素输出必要属性 `variable` 所选的数字变量。[数字变量](#数字变量) 是 [标准变量](#标准变量) 的子集。 使用 `cs:number` 元素来渲染数字变量时,如果该变量只包含数字内容(由 `is-numeric` 的规则来决定,见 [选择语句](#选择语句choose)),数字会被提取出来。当变量内容包含非数字内容(例如「特别版」)时,变量内容将被渲染为原样。 在提取的过程中,用连字符分隔的数字将被去除中间的空格(「2 - 4」变为「2-4」)。对于用逗号分隔的数字,在逗号后保留一个空格(「2,3」和「2 , 3」变为「2, 3」)。而对于使用「&」字符分隔的数字,在「&」符号前后应用一个空格(「2&3」变为「2 & 3」)。 提取出来的数字可以通过可选的 `form` 属性行进格式化,其值可以设置为: * `numeric` - (默认),例如:「1」、「2」、「3」 * `ordinal` - 即序数,例如「1st」、「2nd」、「3rd」。序数后缀可以使用术语定义(见 [序数后缀](#序数后缀)). * `long-ordinal` - 即长序数,例如「first」、「second」、「third」。长序数使用术语 `long-ordinal-01` 至 `long-ordinal-10` 定义,用来给数字 1 到 10 使用。对于其他数字,`long-ordinal` 回退至 `ordinal`。 * `roman` - 即罗马数字,例如「i」、「ii」、「iii」 带有前缀或者后缀的数字不能序数化或者以罗马数字渲染(例如:「2E」仍然渲染为「2E」)。不带词缀的数字会被独立地转换(「2, 3」可以转换为「2nd, 3rd」、「second, third」、或者「ii, iii」)。 `cs:number` 可能会携带 [词缀](#词缀affixes)、[显示](#显示display)、[格式化](#格式化formatting) 和 [文本大小写](#文本大小写text-case) 属性。 ### 名称容器(Names) `cs:names` 渲染元素输出一个或多个 [名称变量](#名称变量)(通过必选属性 `variable` 来选择)的内容,其中每一个变量可以包含一个或者多个名称(例如,`author` 变量包含被引条目的作者)。如果选择了多个变量(使用单个空格分隔,见下面的例子),每个变量将会按指定的顺序单独渲染,但是有一个例外:当选择的变量中包括 `editor` 和 `translator`,且这两个名称变量的内容相同,则只有一个名称变量会被渲染。在此基础上,如果 `cs:names` 元素中包含一个 `cs:label` 元素,则 `editortranslator` 术语将替换掉默认的 `editor` 和 `translator` 术语(例如输出结果为「Doe(editor & tranlator)」)。设置在 `cs:names` 上的 [`delimiter`](#分隔符delimiter) 属性可以用来分隔不同的名称变量(例如,「Doe, Smith (editors); Johnson (translator)」中间使用了分号隔开)。 ```xml ``` `cs:names` 有四个子元素(下面将讨论):`cs:name`、`cs:et-al`、`cs:substitute` 和 `cs:label`。 `cs:names` 元素可能会携带 [词缀](#词缀affixes)、[显示](#显示display) 和 [格式化](#格式化formatting) 属性。 ::: info 译者注 考虑到文献的创建者并不一定是有名有姓的个人,还有可能是组织,此处将「name」译为「名称」而非「名字」。 ::: #### 名称(Name) `cs:name` 元素的,`cs:names` 元素的可选子元素,可以用来描述单个名称的格式以及带有名称变量的名称中的分隔符。`cs:name` 可以携带以下属性: ##### `and` 指定名称变量中倒数第二个名称和倒数第一个名称的分隔符。可选的值为 `text`(选用 `and` 术语,例如「Doe, Johnson and Smith」)或者 `symbol`(例如「Doe, Johnson & Smith」)。 ##### `delimiter` 指定用于分隔名称变量中的名称的文本字符串。默认为 `, `(例如「Doe, Smith」)。 ##### `delimiter-precedes-et-al` 在使用 `et-al` 缩写的情况下,指定在截断的名称列表和 `et-al` 术语之间何时使用分隔符或者空格。允许的值有: * `contextual` - (默认), 在名称列表中有 2 个及以上的名称时使用 * 1 个名称:「J. Doe et al.」 * 2 个名称:「J. Doe, S. Smith, et al.」 * `after-inverted-name` - 在 `name-as-sort-order` 属性使当前的名称发生了颠倒时使用。例如:当 `name-as-sort-order` 属性设置为 `first` 时,第一个名字的前后部分 Doe 和 J 发生了反转,因此在第一个名字后面使用了分隔符 `, ` * 「1Doe, J., et al.」 * 「Doe, J., S. Smith et al.」 * `always` - 始终使用名称分隔符 * 1 个名称:「J. Doe, et al.」 * 2 个名称:「J. Doe, S. Smith, et al.」 * `never` - 永不使用名称分隔符 * 1 个名称:「J. Doe et al.」 * 2 个名称:「J. Doe, S. Smith et al.」 ##### `delimiter-precedes-last` 确定何时使用分隔符来分割名称列表中的倒数第二个名称和最后一个名称(如果没有设置 `and`,则不论 `delimiter-precedes-last` 属性的值如何,名称分隔符总是使用)。 * `contextual` - (默认),当名称列表中的名称有 3 个或以上时使用。 * 2 个名称:「J. Doe and T. Williams」 * 3 个名称:「J. Doe, S. Smith, and T. Williams」 * `after-inverted-name` - 在 `name-as-sort-order` 属性使上一个名字发生了颠倒时使用。例如:当 `name-as-sort-order` 属性设置为 `first` 时 * 「Doe, J., and T. Williams」 * 「Doe, J., S. Smith and T. Williams」 * `always` - 始终使用分隔符 * 2 个名称:「J. Doe, and T. Williams」 * 3 个名称:「J. Doe, S. Smith, and T. Williams」 * `never` - 永不使用名称分隔符 * 2 个名称:「J. Doe and T. Williams」 * 3 个名称:「J. Doe, S. Smith and T. Williams」 ##### `et-al-min`/`et-al-use-first` 通过设置这两个属性,可以启用 et-al 式的缩写。如果名称变量中的名称的数目超过了 `et-al-min` 属性设置的值,则达到 `et-al-use-first` 设置的名称数量后,渲染的名称列表将被截断。`et-al`(或者 `and others`)术语用来添加到截断列表的后面(见 [et-al](#等et-al))。默认地,当名称列表被截断到单个名称,则名称和 `et-al` 术语之间使用空格分隔(例如:Doe et al.)。当一个名称列表被截断为两个及以上的名称,则使用名称分隔符(例如:Doe, Smith, et al.)。这些行为可以使用 `delimiter-precedes-et-al` 属性来设置。 ##### `et-al-subsequent-min`/`et-al-subsequent-use-first` 如果使用了这两个属性,则在二次引注时用这两个属性的值分别代替 `et-al-min` 和 `et-al-use-first` 的值。 ::: info 二次引注 为了便于表述,如果一个引注引用了之前已经被引用过的条目,本文就称这个引注为「二次引注」。 ::: ##### `et-al-use-last` 当该属性设置为 `true`(默认为 `false`)时,et-al 缩写所截断的名称列表后将跟着名称分隔符、省略号以及原先名称列表中的最后一个名称。这个属性只能在初始名称列表比截断后的名称列表至少多两个名称时才会起效。例如: ``` A. Goffeau, B. G. Barrell, H. Bussey, R. W. Davis, B. Dujon, H. Feldmann, … S. G. Oliver ``` *** 下面所讨论的这些剩下的属性,只对人名有影响。这里先给出名字的组成部分。人名需要一个「姓(family)」姓名成分,还可能包含「名(given)」、「后缀(suffix)」、「不可省略小品词(non-droping-particle)」和「可省略小品词(dropping-particle)」姓名成分。这些姓名成分定义如下: * 「family」 - 去掉所有小品词和后缀的姓 * 「given」 - 可以使全名「John Edward」或者缩写「J. E.」 * 「suffix」 - 名字后缀,比如「John Smith Jr.」中的「Jr」或者「Bill Gates III」的「III」 * 「non-dropping-particle」 - 显示姓氏的时不能省略的小品词(例如德国人名「van Gogh」中的「van」),但也可以独立于姓氏来看待,例如排序姓名时 * "dropping-particle" - 当只显示姓时,可省略的小品词(例如「Ludwig van Beethoven」中的「van」,这个名字在只显示姓氏时变成「Beethoven」;又如「Alexander von Humboldt」中的「von」,这个名字在只显示姓氏时变成「Humboldt」) ::: info 小品词 > 小品词是句法上不能独立,要依附于其他句法成分,词汇意义上比较虚,但是具有语法意义或特定语气表达功能的词。——[《中国大百科全书》](https://www.zgbk.com/ecph/words?SiteID=1\&ID=518031\&Type=bkzyb\&SubID=224216) ::: ::: info 译者注 上面例子中: 1. 「John Smith Jr.」中的「Jr」是「Junior」的缩写,表示此人与另一位较年长的家庭成员同名,可译为「小约翰·史密斯」 2. 「Bill Gates III」中的「III」是「IIIrd」的缩写,表示此人是家族中第三个使用此名称的人,可译为「比尔·盖茨三世」。 ::: 影响人名的属性有: ##### `form` 指定是否显示名字的所有部分(默认值 `long`),或者只显示姓氏和不可省略小品词(值 `short`)。第三个可能的值 `count`,则会返回使用 `cs:names` 元素所渲染的名称总数(考虑 `et-al` 缩写和编者/译者折叠的影响)。 ##### `initialize` 设置了 `initialize-with` 属性时,如果该属性设置为 `false`(默认的结果为 `true`),则名不会被缩写。但是,`initialize-with` 的值依然会添加到名的首字母后(例如:当 `initialize` 设置为 `false`,并且`initialize-with` 设置为 `.` 时,「James T kirk」将会变为「James T. Kirk」)。 ::: info 首字母 在和姓名有关的语境里,「首字母」(initial)即名的第一个字母,往往特指全名中每一个单词的第一个字母。 ::: ##### `initialize-with` 当该属性被设置时,名将会使用缩写。属性值添加在每个首字母后(属性值 `.` 将得到「J. J. Dne」这样的结果)。对于合成的名(例如「Jean-Luc」),可以使用全局的带有连字符的 `initialize-with-hyphen` 属性来设置其缩写形式(见 [缩写名中的连字符](#缩写名中的连字符))。 ##### `name-as-sort-order` 指定名字的显示顺序为先姓后名(例如「John Doe」会变成「Doe, John」)。这个属性有两个可能的值: * `first` - 属性只影响名称变量中的第一个名字 * `all` - 属性将会影响所有的名字 注意:即使 `name-as-sort-order` 改变了姓名成分的顺序,最终显示的顺序不一定与包含小品词和后缀的姓名中的顺序相同(见 [姓名成分顺序](#姓名成分顺序))。而且,`name-as-sort-order` 只影响那些名通常在姓前面的书写系统,例如拉丁文、希腊文、西里尔文和阿拉伯文。相反,亚洲书写系统中的姓名总是按照先姓后名的顺序显示。 ::: info 译者注 `name-as-sort-order` 可以直译为「按照排序顺序显示姓名」。即使在先名后姓的书写系统中,正式文档中也往往按姓氏来对人名进行排序,因此先姓后名的顺序就是所谓「排序顺序」。 ::: ##### `sort-separator` 为那些被 `name-as-sort-order` 属性交换了位置的姓名成分设置分隔符,默认值为 `, `(Doe, John)。和 `name-as-sort-order` 属性的情况一样,该属性只影响那些「先名后姓」书写系统中的姓名。 `cs:name` 元素还可以携带 [词缀](#词缀affixes) 和 [格式化](#格式化formatting) 属性。 #### 姓名成分顺序 姓名成分的顺序取决于 `cs:name` 元素中 `form` 和 `name-as-sort-order` 属性的值、 `cs:style` 元素中的 `demote-non-droping-particle` 属性(一个 [全局选项](#全局选项) )的值,以及单个名字所在的书写系统。注意,姓名成分的显示和排序顺序通常是不同的,可能的顺序概述如下: **「先名后姓」书写系统(拉丁文等)中的姓名显示顺序** *** 1. 条件:`form` 属性设置为 `long` * 顺序:1. 名 2. 可省略小品词 3. 不可省略小品词 4. 姓 5. 后缀 * 示例:\[Vincent] \[] \[van] \[Gogh] \[III] * 示例:\[Alexander] \[von] \[] \[Humboldt] \[Jr.] *** 2. 条件:`form` 属性设置为 `long`,`name-as-sort-order` 属性激活,`demote-non-dropping-particle` 属性设置为 `never` 或者 `sort-only` * 顺序:1. 不可省略小品词 2. 姓 3. 名 4. 可省略小品词 5. 后缀 * 示例:\[van] \[Gogh], \[Vincent] \[], \[III] *** 3. 条件:`form` 属性设置为 `long`,`name-as-sort-order` 属性激活,`demote-non-dropping-particle` 属性设置为 `display-and-sort` * 顺序:1. 姓 2. 名 3. 可省略小品词 4. 不可省略小品词 5. 后缀 * 示例:\[Gogh], \[Vincent] \[] \[van], \[III] *** 4. 条件:`form` 属性设置为 `short` * 顺序:1. 不可省略小品词 2. 姓 * 示例:\[van] \[Gogh] *** **「先名后姓」书写系统(拉丁文等)中的姓名排序顺序** *** 1. 条件:`demote-non-dropping-particle` 属性设置为 `never` * 顺序:1. 不可省略小品词 + 姓 2. 可省略小品词 3. 名 4. 后缀 * 示例:\[van Gogh] \[] \[Vincent] \[III] *** 2. 条件:`demote-non-dropping-particle` 属性设置为 `sort-only` 或者 `display-and-sort` * 顺序:1. 姓 2. 可省略小品词 + 不可省略小品词 3. 名 4. 后缀 * 示例:\[Gogh] \[van] \[Vincent] \[III] *** **「先姓后名」书写系统(中文等)中的姓名显示和排序顺序** *** 1. 条件:`form` 属性设置为 `long` * 顺序:1. 姓 2. 名 * 示例:张三 *** 条件:`form` 属性设置为 `short` 顺序:1. 姓 示例:张 *** 没有姓名成分的非人名按原样排序,但前面的英语冠词(「a」、「an」、「the」)会被去掉。例如「The New York Times」会被当作「New York Times」来排序。 #### 名字格式化 `cs:name` 元素可能会携带一个或者两个 `cs:name-part` 子元素来针对特定姓名成分进行格式化。`cs:name-part` 必须携带 `name` 属性,设置为 `given` 或者 `family`。 如果设置为 `given`,`cs:name-part` 元素的 [格式化](#格式化formatting) 和 [文字大小写](#文本大小写text-case) 属性会影响 `given` 和 `dropping-particle` 姓名成分。[词缀](#词缀affixes) 包围 `given` 成分,包括反转姓名中所有后续的姓名小品词。 如果设置为 `family`,`cs:name-part` 元素的 [格式化](#格式化formatting) 和 [文字大小写](#文本大小写text-case) 属性会影响 `family` 和 `non-dropping-particle` 部分。[词缀](#词缀affixes) 包围在 `family` 成分,包括未反转姓名中所有前置的小品词和「suffix」成分。 姓名成分格式化不适用于 `suffix` 成分。`cs:name-part` 元素的使用不影响哪一个姓名成分以何种顺序渲染。下面的代码,将产生类似「Jane DOE」的效果: ```xml ``` #### 等(Et-al) Et-al 缩写通过 `et-al-…` 属性来控制(见[名称](#名称name)),它可以进一步使用可选的 `cs:et-al` 元素来自定义,该元素必须放在 `cs:name` 元素后面(如果存在的话)。 [格式化](#格式化formatting)属性可以用在 `cs:et-al` 元素上,例如将 `at-al` 术语斜体化: ```xml ``` `term` 属性还可以被设置为 `et-al`(默认)或者 `and others`,以便使用另一个术语: ```xml ``` #### 替补(Substitute) 可选的 `cs:substitute` 元素,必须当作 `cs:name` 的最后一个子元素来使用,如果父元素 `cs:names` 中指定的 [名称变量](#名称变量) 为空则加以取代。用于取代的内容通过 `cs:substitute` 的子元素来确定,并且必须包含一个或者多个渲染元素(除了 `cs:layout`)。可以用一个没有子元素的简洁版 `cs:names` 作为子元素,它继承了最初那个 `cs:names` 元素在子元素 `cs:name` 和 `cs:et-al` 上设置的属性值。如果 `cs:substitute` 元素包含多个子元素,并且第一个元素返回了非空的结果用于替换,则其他替代变量会在剩下的输出中被抑制以避免重复。替代变量还会被视为空值以便决定是否抑制封闭的 `cs:group`。下面的例子中:`author` 名称变量为空时,就被 `editor` 名称变量替换,当没有编者时,则使用 `title` 宏替换。 ```xml ``` ::: info 译者注 此处的「替代变量」泛指 `cs:substitute` 内部的子元素,而非附录中提到的 CSL 标准变量。`cs:substitute` 默认为空,且只输出首个非空子元素。 ::: #### `cs:names` 中的标签 `cs:names` 里可以放一个 `cs:label` 元素(见 [Label](#标签label))。它必须出现在 `cs:substitute` 元素之前。`cs:label` 相对于 `cs:name`的位置决定了输出文本中名称和标签的顺序。当 `cs:label` 作为 `cs:names` 元素的子元素时,`cs:label` 不能携带 `variable` 属性,而是使用父元素 `cs:names` 中的变量。和在别处使用 `cs:label` 的第二个区别是:`form` 属性可以设置为 `verb` 或者 `verb-short`,因此所有允许的值为: * `long` - (默认), 例如,对于「editor」术语,渲染为「editor」和「editors」 * `short` - 例如,对于「editor」术语,渲染为「ed.」「eds」 * `verb` - 例如,对于「editor」术语,渲染为「edited by」 * `verb-short` - 例如,对于「editor」术语,渲染为「ed.」 * `symbol` - 例如,对于「section」术语,渲染为「§」和「§§」 ### 标签(Label) `cs:label` 渲染元素输出与其必要属性 `variable` 所选变量相匹配的术语,该属性必须设为 `locator`、`page` 或 [数字变量](#数字变量) 之一。只有当选择的变量是非空的时候,术语才会渲染。例如: ```xml ``` 可以输出 `page 3` 或者 `pages 5-7`。`cs:label` 可能会携带下面的属性: #### `form` ​ 选择术语的形式,允许的值为: * `long` - (默认),例如:对于「page」术语,渲染为「page」或「pages」 * `short` - 例如:对于「page」术语,渲染为「p.」者「pp.」 * `symbol` - 例如:对于「section」术语,渲染为「§」者「§§」 #### `plural` 设置术语的复数形式,允许的值为: * `contextual` - (默认),术语的复数形式和变量内容相匹配。当内容中包含多个数字时,使用复数形式。如下面的渲染结果:「page 1」、「pages 1-3」、「volume 2」、「volumes 2 & 4」。或者在使用 `number-of-pages` 和 `number-of-volumes` 变量时,数字大于 1(「1 volume」和「3 volumes」)。 * `always` - 永远使用复数形式,例如:「pages 1」和「pages 1-3」 * `never` - 永远使用单数形式,例如”page 1”和「page 1-3」 `cs:label` 也可能携带 [词缀](#词缀affixes)、[格式化](#格式化formatting)、[文本大小写](#文本大小写text-case) 和 [剥除句点](#剥除句点strip-periods) 属性。 ### 编组(Group) `cs:group` 元素必须包含一个或者多个渲染元素(除了 `cs:layout`)。`cs:group` 可以携带 `delimiter` 属性来分隔子元素,此外还能携带 [词缀](#词缀affixes)、[显示](#显示display) 和 [格式化](#格式化formatting) 属性(作用于整个组的输出)。`cs:group` 隐式地表现为一个有条件的元素,当以下情况同时出现时,`cs:group` 及其子元素将会被抑制:a) 在 `cs:group` 中至少一个渲染元素调用了变量(直接或者通过宏调用),b) 所有被调用的变量都为空。例如, ```xml ``` 输出「retrieved from 」,但是当 URL 为空候,不生成结果。 ### 选择语句(Choose) `cs:choose` 元素允许有条件的渲染 [渲染元素](#渲染元素)。下面的例子在 `issud` 日期变量存在时就渲染它,否则渲染 `no date` 术语: ```xml ``` `cs:choose` 元素中必须有一个 `cs:if` 子元素,它后面还可以跟一个或者多个 `cs:else-if` 子元素,以及一个可选的 `cs:else` 结束元素。`cs:if` 和 `cs:else-if` 元素可以包含任意个 [渲染元素](#渲染元素)(除了 `cs:layout`)。由于空的 `cs:else` 元素是多余的,所以 `cs:else` 元素必须至少包含一个渲染元素。`cs:if` 和 `cs:else-if` 元素必须含有一个或多个判断条件,这些条件可以使用下面的属性设置: #### `disambiguate` 当该属性设置为 `true`(唯一允许的值)时,只有当它消除了两个相同的引注时才会渲染元素的内容。只有其他消歧方法都未能使目标源能被唯一识别时,才进行 [消除歧义](#消除歧义) 中所述的这种尝试。 #### `is-numeric` 测试给定的变量([附录 IV 变量](#附录-iv-变量))是否包含数字内容。如果内容仅由数字构成,则识别为数字。数字可以带有前缀和后缀(「D2」、「2b」、「L2d」),并且可能被逗号、连字符或「&」符号分隔(「2, 3」、「2-4」、「2 & 4」)。例如,「2nd」被识别为「true」,但「second」「2nd edition」识别为「false」 #### `is-uncertain-date` 判断给定的 [日期变量](#日期变量) 是否包含 [近似日期](#近似日期approximate-dates)。 #### `locator` 判断定位词是否和给定的定位词类型相匹配(见 [定位词](#定位词locators))。比如,使用「sub-verbo」判断是不是「sub-verbo」类型的定位符 #### `position` 判断引用的位置是否和给定的位置匹配(术语:引注由一个或多个指向单独条目的引用组成)。当在 `cs:bibliography` 范围内调用时,`position` 的结果为「false」。位置可以使用下面的选项测试: * `first`: 第一次引用某个条目的引注所在位置 * `ibid`/`ibid-with-locator`/`subsequent`: 引注在引用了先前引用过的条目时具有 `subsequen` 位置。当处于以下情况时,这样的引注还可能具有 `ibid` 或者 `ibid-with-locator` 位置: 1. 在同一个引注中,当前引用紧跟在另一个指向相同条目的引用之后 2. 当前的引用是引注中的第一个引用,而且上一个引注包含一个指向相同条目的单独引用 如果满足上面任何一种情况,定位词的出现决定了这个引注会被指定为哪种位置: * **前一个引用没有定位词**:如果当前引用有定位词,则当前引用的位置是 `ibid-with-locator`,否则是 `ibid` 。 * **前一个引用有定位词**: 如果当前引用具有相同的定位词,则当前引用的位置是 `ibid`。如果二者的定位词不同,则当前引用的位置是 `ibid-with-locator`。如果当前引用缺少定位词,则当前引用的位置是 `subsequent`。 * `near-note`:一个引用跟在另一个指向相同条目的引用后。两个引用都必须在脚注或尾注中,并且两个引用的距离没有超过 `near-note-distance` 选项(见 [注释距离](#注释距离))中定义的最大距离(使用脚注或尾注的数量计算)。 当 `position="ibid-with-locator"` 检测为真时,`position="ibid"` 也会检测为真。而且当 `position="ibid"` 或者 `position="near-note"` 检测为真时,`position="subsequent"` 也会检测为真。 ::: info 译者注 「ibid.」是拉丁语「ibidem」的缩写,意思是「出处同上」,用于在重复引用时简化引注内容。`subsequent` 是指「二次引用」,只要本次引用中包含已经引用过的条目就可归为此类。从语义上讲,「同上」不宜用在相距过远的引用之间,否则难以找出上文。因此规定只有两个引用之间没有其他引用的时候才是 `ibid`,即「相邻且相同」。特别地,如果这两个引用不在同一个引注中,要求前一个引用单独成注,如此才能指代明确。`near-note` 则对使用位置作了限定,但只要求彼此不超过某个预设的距离,而不要求它们直接相邻,即「相近且相同」。 ::: #### `type` ​测试条目是否和给定的类型匹配([附录 III 条目类型](#附录-iii-条目类型))。 #### `variable` ​测试给定变量([附录 IV 变量](#附录-iv-变量))的默认的形式(`long`)是否为空。 *** 除了 `disambiguate` 外,所有的条件都允许有多个测试值(使用空格分隔,例如`book thesis`)。 `cs:if` 元素和 `cs:else-if` 元素可能会携带 `match` 属性用来控制判断的逻辑,`match` 可设置的值为: * `all` - (默认),仅当所有给定测试值都为 `true` 的时候,结果才为 `true` * `any` - 当任意一个值为 `true` 的时候,结果就为 `true` * `none` - 当没有值测试为 `true` 的时候,结果为 `true` ## 样式的行为 ### 选项 被作为属性设置在 `cs:citation` 上的 [引注选项](#引注选项) 、设置在 `cs:bibliography` 上的 [参考文献表选项](#参考文献表选项) 和设置在 `cs:style` 上的 [全局选项](#全局选项)(同时影响引注和参考文献表)可以用来配置样式。[可继承的名称选项](#可继承的名称选项) 可以设置在 `cs:style`、`cs:style` 和 `cs:bibliography` 之上。最后,[本地化选项](#本地化选项) 可以在 `cs:locale` 元素上设置。 #### 引注选项 ##### 消除歧义 当一个引用对应多个参考文献表题注的时候会产生歧义。有四种可行的方法来消除这样的歧义,这些方法按下面的顺序被依次尝试: 1. 扩展姓名(添加首字母或者名) 2. 显示更多姓名 3. 渲染 `cs:choose` 条件语句上 `disambiguate` 属性测试为 `true` 的引注。 4. 添加年份后缀 ::: info 译者注 简便起见,套用计算机语言学的概念,下文会将「消除歧义」简称为「消歧」。相应地,「消除歧义的方法」简称为「消歧方法」,「消除了歧义的引用」则称之为「已消歧引用」。 ::: 方法 1 还可以出于全局 *姓名消歧* 的目的来使用,把整个文档中混淆的和未混淆的引注都进行转换。 这四种消歧方法可以通过下面的选项属性来单独激活: ##### `disambiguate-add-givenname` \[方法 1] 如果设置为 `true`(默认为 `false`),产生歧义的名字(它们在 `short` 形式或首字母缩写的 `long` 形式时相同,但加上首字母或显示全名后不同)将被扩展。名字扩展可以使用 `givenname-disambiguation-rule` 设置。下面是一个例子。 | 含有歧义的引用 | 消除歧义的引用 | | ---------------------------- | ---------------------------------- | | (Simpson 2005; Simpson 2005) | (H. Simpson 2005; B. Simpson 2005) | | (Doe 1950; Doe 1950) | (John Doe 1950; Jane Doe 1950) | `givenname-disambiguation-rule` 用来指定 a) 名字扩展的目的是仅限于消除引用歧义,还是额外包括消除姓名歧义(只有在后面的情况中,才会在未混淆的引用中扩展有歧义的名字,例如:从 (Doe 1950; Doe 2000) 扩展到 (Jane Doe 1950; John Doe 2000))b) 名字扩展是针对所有名字启用,还是只对每个引用的第一个名字启用 c) 扩展每一个名字的方法。 ::: info 译者注 「引用歧义」是指同一个 author-date 引注中,两条引用的作者名和年份都相同,但实际指代的文献不同,此时无法分辨引注所对应的题注。 「姓名歧义」则是指同一个 autho-date 引注中,两条引用的作者名相同、年份不同,可以通过对照年份来判断该引用所对应的题注。 ::: **扩展单个名字** ​ 扩展单个名字的步骤是: 1. 如果设置了 `initialize-with`,并且 `initialize` 具有默认值 `true`: (a) 通过将名字显然为 `long` 而非 `short` 来显示首字母(例如「Doe」变为「J. Doe」)。 (b) 当 `initialize` 被设为 `flase`,渲染完整的名而非首字母(例如「J. Doe」变为「John Doe」)。 2. 如果没有设置 `initialize-with`,使用 `long` 形式渲染完整的姓名(「Doe」变为「John Doe」)。 **消除歧义法则** ​ `givenname-disambiguation-rule` 允许的值为: ​ `all-names` ​名字扩展具有消除引用歧义和消除姓名歧义的双重目的。在混淆和未混淆的引用中,所有渲染后有歧义的名字都需要消除歧义。所有姓名都逐步转换,直到不再有歧义。无法消除歧义的名字将保持不变。 `​all-names-with-initials` ​和 `all-names` 一样,但是名字扩展的手段仅限于显示首字母(见前文步骤 1(a))。`initialize-with` 没有被设置或者 `initialize` 被设置为 `false` 时,不会进行消除歧义的尝试。 `primary-name` ​和 `all-names` 一样,但是仅对每个引用的第一个名字消除歧义。 `primary-name-with-initials` ​和 `all-names-with-initials` 一样,但是仅对每个引用的第一个名字消除歧义。 `by-cite` ​默认值。和 `all-names` 一样,但是名字扩展的目的仅限于消除引用的歧义,只有处在混淆引用中有歧义的名字才会受影响,并且消歧行为中止于消除了引用歧义的名字后。 ##### `disambiguate-add-names` \[方法 2] 如果设置为 `true`(默认为 `false`),原本会因 et-al 缩写而隐藏的名字将会被逐一添加到混淆的引用中,直到不再有引用可以通过添加名称来消除歧义为止。 如果 `disambiguate-add-names` 和 `disambiguate-add-names` 同时被设为 `true`,则首先采用姓名扩展来渲染姓名。如果引用无法通过扩展所渲染的名字来(完全)消除歧义,则由于 et-al 缩写而隐藏的姓名将被逐个添加到混淆的引注中。如果有助于消除混淆的引用,则被添加的名字也会被扩展。这个流程将会持续到不再有引用可以通过添加扩展的姓名来消除歧义。 在上面对消歧方法 (1) 和 方法 (2) 的描述中,我们假设每一个(消除了歧义的)引注都有明确的关联指向其参考文献表题录。为了确保每一个引用都确实唯一地标识其在参考文献表中的题注,这些用于区分引用的详细信息(例如姓名、首字母和全名)必须显示在对应的参考文献表题注中。如果没有满足这个要求,消歧方法 (1) 和方法 (2) 还会应用于所有混淆引用的参考文献表题录,直到不再有可通过添加(扩展)姓名来消除歧义的题录。每种方法只在已经被用于消除引用歧义后才会对所涉及的参考文献表题录生效。 ##### `disambiguate` 条件 \[方法 3] 还可以通过渲染 `disambiguate` 条件测试为 `true` 的引用来尝试消除歧义(见 [选择语句](#选择语句choose))。 ##### `disambiguate-add-year-suffix` \[方法 4] 如果设置为 `true`(默认为 `false`),以字母表为序列的年份后缀会被添加到混淆的引用(例如「Doe 2007, Doe 2007」变成「Doe 2007a, Doe 2007b」)及其对应的参考文献表条目中。这个最终消歧方法总能成功。年份后缀的添加顺序遵从参考文献表中的题注顺序,一旦用到了「z」,则将继续添加额外的字母(「z」、「aa」、「ab」、...、「az」、「ba」、...)。默认情况下,年份后缀追加到引用或题注中由 `cs:date` 渲染的第一个年份后,但它的位置还可以通过使用 `cs:text` 明确渲染「year-suffix」变量来进行控制。如果「year-suffix」是通过 `cs:citation` 范围内的 `cs:text` 渲染得到的,则它在 `cs:bibliography` 中被抑制,除非它也被 `cs:bibliography` 范围内的 `cs:text` 所渲染,反之亦然。 ::: info 译者注 `cs:citations` 中使用 `cs:text` 渲染的「year-suffix」处于自定义位置,CSL 引擎无法判断这个位置对应 `cs:bibliography` 题注的哪一部分,因此需要我们手动指定。 ::: ##### 引用分组 通过引用分组,可以将相同名称的文本引用放在一起,比如:(Doe 1999; Smith 2002; Doe 2006; Doe et al. 2007) 将会变为 (Doe 1999; Doe 2006; Smith 2002; Doe et al. 2007)。引用分组在引用排序和消除歧义后执行。分组后的引用保持其相对顺序,并移到第一个改组中引用出现的第一个位置。 引用分组可以在 `cs:citation` 元素中通过设置 `cite-group-delimiter` 属性或者 `collapse` 属性(见 [cite collapsing](#引用折叠))激活。 `cite-group-delimiter` 激活引用分组并为引用组中的引用指定分隔符,默认为 `, `。例如,当 `cs:citation` 元素中的 `cs:layout` 中的 `delimiter` 设置为 `;` 时,`collapse` 设置为 `year`,`cite-group-delimiter` 设置为 `, `,将生成类似 "(Doe 1999,2001; Jones 2000)" 的引用。 ##### 引用折叠 author 或者 author-date 类型的引用格式中的引用分组和数字格式中的引用范围可以通过 `collapse` 属性来折叠。折叠引用组中分隔符可以是使用 `year-suffix-delimiter` 和 `after-collapse-delimiter` 属性来设置: `collapse` 激活引用分组和折叠。允许的值为: * "citation-number" - 当使用数字样式的时候,折叠引用数字的范围(通过 `citation-number` 变量来渲染) ,例如:`[1, 2, 3, 5]` 变为 `[1–3, 5]`。只有升序的引用才可以折叠,比如: `[3, 2, 1]` 将不会折叠。 * "year" - 通过压缩相同的名字来折叠引用分组,例如: "(Doe 2000, Doe 2001)" 变为 "(Doe 2000, 2001)"。 * "year-suffix" - 对名字相同的折叠项,折叠相同的年份,例如: "(Doe 2000a, 2000b)" 变为 "(Doe 2000a, b)"。 * "year-suffix-ranged" - 对名字相同的折叠项,折叠年份范围,例如: "(Doe 2000a, b, c, e)" 变为 "(Doe 2000a–c,e)"。 当 `disambiguate-add-year-suffix` 设置为 `false` 时,或者引用中包含位置(例如:「(Doe 2000a-c, 2000d, p. 5, 2000e,f)」,"Doe 2000d" 有一个页码位置),"year-suffix" 和 "year-suffix-ranged" 回退到 "year"。 `year-suffix-delimiter` ​ 设置年份后缀的分隔符。默认在 `cs:citation` 元素的 `cs:layout` 中设置。例如:当 `collapse` 设置为 `year-suffix`,`cs:citation` 中的 `cs:layout` 的 `delimiter` 元素设置为 `;`,并且 `year-suffix-delimiter` 设置为 `, ` 时,渲染结果将类似于 "(Doe 1999a,b; Jones 2000)"。 `after-collapse-delimiter` ​ 设置折叠后的引用组要使用的分隔符。默认在 `cs:citation` 元素的 `cs:layout` 中设置。例如:当 `collapse` 设置为 `year`,`cs:citation` 中的 `cs:layout` 的 `delimiter` 元素设置为 `, `,并且 `after-collapse-delimiter` 设置为 `;` 时,渲染结果将类似于 "(Doe 1999, 2001; Jones 2000, Brown 2001)"。 ##### 注释距离 `near-note-distance` 当有一个预先的标注时,`near-note` 位置是我引用被判断为真,这种预先的标注可以为 a) 指向同一个项目 b) 当前注视以前的脚注或尾注。(译注:不知道讲了什么) #### 参考文献表选项 ##### 空白 `hanging-indent` ​ 如果设置为 `true`(默认为 `false`),参考文献列表将采用悬挂缩进渲染。 `second-field-align` ​ 如果该属性被设置,则书目条目的后续行沿第二字段对齐。使用 "flush" 时,第一个字段与边距齐平。对于 "margin",第一个字段放在 margin 中,随后的行与 margin 对齐。例如,当第一个字段设置为 `` ``` 9. Adams, D. (2002). The Ultimate Hitchhiker's Guide to the Galaxy (1st ed.). 10. Asimov, I. (1951). Foundation. ``` `line-spacing` ​ 指定垂直方向的行距。默认值为 `1`,即单倍行距。可以被设置为任意正整数,用来表示对应倍数的行距。 `entry-spacing` ​ 指定不同条目垂直方向的距离,默认值为 `1`,即一倍距离,可以被设置为任意正整数,用来表示对应倍数的距离。 ##### 参考文献分组 `subsequent-author-substitute` ​ 如果该属性被设置,则此属性将用上一条条目中的名称替换参考文献条目中的名字。具体的代替方案取决于 `subsequent-author-substitute-rule` 属性的值。替换仅限于 `cs:names` 元素中渲染的第一个名字。 `subsequent-author-substitute-rule` ​ 用来指定 `subsequent-author-substitute` 的结果怎么替换。允许的值为: * "complete-all" - 默认值,当名称变量中的所有渲染的名字和上一个参考文献条目相同时,`subsequent-author-substitute` 属性的值将代替整个名字列表(包括标点和术语,比如 et-al 和 and 等术语),但 `cs:names` 元素中设置的后缀将不会被代替。 * "complete-each" - 和 "complete-all" 一样,需要完整的匹配,但是 `subsequent-author-substitute` 属性的值将会代替所有被渲染的名字。 * "partial-each" - 当有一个或者多个名称变量中的渲染名字和上一个条目中相同时,使用 `subsequent-author-substitute` 属性代替对应的值。匹配从第一个名字开始,直到不匹配的名字为止。 * "partial-first" - 和 "partial-each" 相同,但是替换仅限于第一个名字。 对下面的例子: ```xml Doe. 1999. Doe. 2000. Doe, Johnson & Williams. 2001. Doe & Smith. 2002. Doe, Stevens & Miller. 2003. Doe, Stevens & Miller. 2004. Doe, Williams et al. 2005. Doe, Williams et al. 2006. ``` 当 `subsequent-author-substitute` 设置为 `-`,并且 `subsequent-author-substitute-rule` 设置为 `complete-all`,渲染结果将变为: ```xml Doe. 1999. ---. 2000. Doe, Johnson & Williams. 2001. Doe & Smith. 2002. Doe, Stevens & Miller. 2003. ---. 2004. Doe, Williams et al. 2005. ---. 2005. ``` 当 `subsequent-author-substitute-rule` 设置为 `complete-each` 时,渲染的结果为: ```xml Doe. 1999. ---. 2000. Doe, Johnson & Williams. 2001. Doe & Smith. 2002. Doe, Stevens & Miller. 2003. ---, --- & ---. 2004. Doe, Williams et al. 2005. ---, --- et al. 2006. ``` 当 `subsequent-author-substitute-rule` 设置为 `partial-each` 时,渲染的结果为: ```xml Doe. 1999. ---. 2000. Doe, Johnson & Williams. 2001. --- & Smith. 2002. Doe, Stevens & Miller. 2003. ---, --- & ---. 2004. Doe, Williams et al. 2005. ---, --- et al. 2005. ``` 当 `subsequent-author-substitute-rule` 设置为 `partial-first` 时,渲染的结果为: ```xml Doe. 1999. ---. 2000. Doe, Johnson & Williams. 2001. --- & Smith. 2002. Doe, Stevens & Miller. 2003. ---, Stevens & Miller. 2004. Doe, Williams et al. 2005. ---, Williams et al. 2005. ``` #### 全局选项 ##### 缩写名中的连字符 `initialize-with-hyphen` ​ 该属性用来制定合成名字中间是不是使用连字符。例如,`Jean-Luc` 是一个合成名字,如果该属性设置为 `true`(默认),渲染结果为 `J.-L.`,如果设置为 `false`,渲染结果为 `J.L.`。 ##### 页码范围 `page-range-format` ​ 用来设置页码范围的格式,是不是使用简写来压缩。其可选的值有:`chicago` ("321–28"), `expanded` ( "321–328"), `minimal` ("321–8"),或者 `minimal-two` ("321–28")。每一组值前面表示可选的属性值,后面是渲染结果的例子。也可见 [附录 V 页码范围格式](#附录-v-页码范围格式)。使用 `page-range-delimiter` 属性可以用来设置页面范围分割的符号,该属性在 CSL 1.0.1 中引入,默认是一个破折号。如果改属性没有设置,就默认使用破折号。 ##### 姓名小品词 ​ 西方人的名字中经常包括一个或者多个小部分,例如,`de` 在荷兰人的名字中 `W. de Koning`。在仅显示姓氏时,这些小部分可以分为必须保留和可删除(或译为不可省略和可省略)两种类型:这两种类型分别称为 `non-dropping` 部分和 `dropping` 部分。一个单个的名字可以同时包括这两种类型(不能删除的类型始终位于可删除类型的后面)。例如,`W. de Koning` 和法国名字 `Jean de la Fontaine` 可以被解构为: ```json { "author": [ { "given": "W.", "non-dropping-particle": "de", "family": "Koning" }, { "given": "Jean", "dropping-particle": "de", "non-dropping-particle": "La", "family": "Fontaine" } ] } ``` 在仅显示姓氏的时候,只保留不能删除的部分,`De koning` 和 `La Fontaine`。 在名字倒写的情况下,即姓氏在名字之前,在姓氏后面始终添加 `dropping particle`,但是 `non-dropping` 部分可以前置(例如,`de Koning, W.`)或者后置(`Koning, W. de`)。在名字倒写,不可省略粒子前置时,可以使用下面的方式对名字进行排序:排序 A:将不可省略粒子和姓一起保留作为主排序键值的一部分;排序 B:通过将不可省略粒子和姓分开,并使其成为二级排序键值,并加入可省略粒子(如果有): **Sort order A: 不可省略粒子不降级** * 主排序键值 "La Fontaine" * 次排序键值 "de" * 第三排序键值:"Jean" **Sort order B: 不可省略粒子降级** * 主排序键值 "Fontaine" * 次排序键值 "de La" * 第三排序键值 "Jean" 对不可省略粒子的设置可以使用 `demote-non-dropping-particle` 选项: `demote-non-dropping-particle` ​ 用来设置在倒写的名字中不可省略粒子的显示和排序方式(例如 Koning W. de)。可设置的值为: * "never": 不可省略粒子被作为姓中的一部分对待,并附加可省略粒子("de Koning, W." "La Fontaine, Jean de")。不可省略粒子作为主排序键值的一部分 (排序 A,例如。"de Koning, W." 将出现在首字母 "D" 的区域). * "sort-only": 显示的方式和 "never" 相同,但是不可省略粒子降级作为二级排序键值。(排序 B, "de Koning, W." 出现在首字母 "K" 的区域). * "display-and-sort" (默认),可省略粒子和不可省略粒子在最后( "Koning, W. de" 和 "Fontaine, Jean de La")。对名字排序,所有的粒子都是二级排序键值的一部分。(排序 B,"Koning, W. de" 出现在首字母 "K" 的区域). 某些名字中包含的粒子禁止被降级。在这些情况中,粒子将和姓合并到一起,比如,对于法国名字 Charles de Gaulle ```json { "author": [ { "family": "de Gaulle", "given": "Charles" } ] } ``` #### 可继承的名称选项 ​ `cs:names` 和 `cs:name` 元素的属性也可以在 `cs:style`、`cs:citation` 和 `cs:bibliography` 元素中设置。这样就不需要每次在 `cs:names` 和 `cs:name` 出现的时候赋值。 ​ 可以在 `cs:name` 元素中继承的属性有 `and`, `delimiter-precedes-et-al`, `delimiter-precedes-last`, `et-al-min`, `et-al-use-first`, `et-al-use-last`, `et-al-subsequent-min`, `et-al-subsequent-use-first`, `initialize`, `initialize-with`, `name-as-sort-order` 和 `sort-separator`。`name-form` 属性和 `name-delimiter` 属性对英语 `cs:name` 元素中的 `form` 和 `delimiter` 属性。同样地,`names-delimiter` 属性对应 `cs:names` 元素中的 `delimiter` 属性。 ​ 当一个可继承的名称属性在 `cs:style`,`cs:citation` 和 `cs:bibliography` 中设置时,其值将作用于改元素包含的所有的 `cs:names` 元素。如果一个属性在多个可继承的层次设置,最底层的值发挥作用。 #### 本地化选项 `limit-day-ordinals-to-day-1` ​ 日期格式在 `cs:date` 和 `cs:date-part` 元素中定义。默认地,当 `cs:date-part` 元素中的 `name` 设置为 `day`,`form` 属性设置为 `ordinal` 时,所有的天(1 到 31)将会以序数形式渲染,例如:"January 1st","January 2nd" 等等。通过将 `limit-day-ordinals-to-day-1` 属性设置为 `true`(默认值为 `false`),序数格式将仅限于每个月的第一天,其他的天将不使用序数格式。这在某些语言中出现,比如法语,"1er janvier","2 janvier","3 janvier"。 `punctuation-in-quote` ​ 当 `cs:text` 元素渲染时,如果 `quotes` 属性设置为 `true`(见 [格式化](#格式化formatting)),并且在输出后有逗号或者句号,`punctuation-in-quote` 属性可以控制标点放在括号的内还是外,`false` 为外(默认),`true` 为内。 ### 排序 ​ `cs:citation` 和 `cs:bibliography` 元素可以在 `cs:layout` 元素之前携带一个 `cs:sort` 子元素,来实现对引文或者参考文献条目的排序。在缺失 `cs:sort` 元素时,引文和文献条目将会使用他们在文章中出现的顺序来排序。 ​ `cs:sort` 元素必须包含一个或者多个 `cs:key` 子元素,可以在该元素中设置变量(\[附录 IV 变量]\(#附录 IV 变量))或者宏名来实现排序。对于每个 `cs:key` 元素,排序的顺序可以通过设置 `sort` 属性来设置为升序(`ascending`,默认)或者降序(`descending`)。属性 `names-min`、`names-use-first`、`names-use-last` 可以用来覆盖 `et-al-min`/`et-al-subsequent-min`, `et-al-use-first`/`et-al-subsequent-use-first` 和 `et-al-use-last` 属性的值,并且可以通过 `cs:key` 影响所有的名字。 ​ 排序的键值是按顺序求值的,也就是说:首先,使用第一个排序键值对所有的项目进行排序。然后使用第二个键值对第一个键值排序后的结果进行排序,直到所有的键值都完成排序为止。如果键值为空,就放到最后。 ​ 这里给出一个例子:其中首先引用 `author` 宏进行排序,并且使用 `et al.` 来对较长的作者序列进行代替。然后,使用 `issued` 变量来进行第二次排序,使用降序: ```xml ``` ​ 变量或者宏的排序键值可以与 `normal` 渲染的输出不同,具体要依赖下面的细节: #### 排序变量 ​ `cs:key` 元素通过 `variable` 变量属性调用变量的排序键值。名称变量、日期变量和数字变量除外: **名称**: [名称变量](#名称变量) 通过变量属性被调用,例如 ``,当 `form` 属性设置为 `long`,`name-as-sort-order` 属性设置为 `all`,返回名字列表字符串。 **日期**:[日期变量](#日期变量) 通过 `variable` 属性被调用,返回 `YYYYMMDD` 格式。使用 0 代替缺失的日期成分,例如:`December 2000` 渲染为 `20001200`。因此,简略的日期在升序排列的时候更加靠前,例如:2000, May 2000, May 1st 2000。负数的年份(即公元前)将被反向排序,比如:100BC, 50BC, 50AD, 100AD。排序过程中,季节将被忽略,因为南北半球的季节顺序不同。在日期范围中,开始的日期用于主要排序,结束日期用于次要排序,例如:2000–2001, 2000–2005, 2002–2003, 2002–2009。在具有相同的开始日期时,日期范围将放在单独的日期后,例如:2000, 2000–2002。 **数字**:[数字变量](#数字变量) 通过 `variable` 属性来调用,返回整数(`form` 设置为 `numeric`)如果原始的变量值仅由非数字文本组成,则将该值作为文本字符串返回。 #### 排序宏 ​ 变量排序的键值是由字符串值组成,没有富文本标记。通过宏属性中的键值 `cs:key` 来调用。下面为一些特殊情况。 ​ 对于名字排序,使用相同的宏而不是直接使用名称变量来渲染和排序有 4 个好处。第一,可以使用替换,例如:可以使用 `editor` 变量代替空的 `author` 变量。第二,可以使用 et-al 缩写,在宏里使用 `et-al-min`/`et-al-subsequent-min`, `et-al-use-first`/`et-al-subsequent-use-first` 和 `et-al-use-last` 可选属性,或者覆盖 `cs:key` 元素中的 `names-min`, `names-use-first` 和 `names-use-last` 。当 et-al 缩写出现的时候,`et-al` 和 `and others` 术语不会包括在排序键值中。第三,名字可以只使用姓来排序,即使用宏,其中的 `cs:name` 扽 `form` 属性设置为 `short`。最后,通过调用宏,将 `cs:name` 中的 `form` 属性设置为 `count`,可以按姓名列表中姓名的数目进行排序。至于使用 `variable` 属性对姓名进行排序,将 `cs:name` 中的 `name-as-sort-order` 属性设置为 `all`,返回值为排序后的名称列表。 在宏中带有 `cs:number` 的 [数字变量](#数字变量) 的和日期变量的渲染方法和通过变量的调用相同。唯一的区别是:如果通过 `variable` 属性调用日期变量,将返回完整的日期。相反地,宏调用则只返回原本要渲染的日期成分。例如: ### 范围分隔符 ​ "citation-number" 和 "year-suffix" 变量的折叠范围以短划线分隔,例如 "(1-3,5)" 和 "(Doe 2000a-c,e)"。 ​ "locator" 变量总是使用一个短划线代替任意的连字符。对 "page" 变量来说,只有 `cs:style` 中的 `page-ran ge-format` 属性被设置时,替换才会执行(见 [页码范围](#范围分隔符))。 ### 格式化(formatting) ​ 下面的属性可以在 `cs:date`, `cs:date-part`, `cs:et-al`, `cs:group`, `cs:label`, `cs:layout`, `cs:name`, `cs:name-part`, `cs:names`, `cs:number` 和 `cs:text` 中设置: `font-style` 用来设置字体,可能的值为: * "normal" 默认 * "italic" 设置文字的斜体 * "oblique" 设置没有斜体的文字倾斜 `font-variant` Allows for the use of small capitals, 值可以设置为: * "normal" 默认 * "small-caps" `font-weight` 设置字宽,值可以为: * "normal" 默认 * "bold" * "light" `text-decoration` 设置下划线,值可以为: * "none" 默认 * "underline" `vertical-align` 设置垂直对齐,值可以为: * "baseline" 默认 * "sup" 上标 * "sub" 下标 ### 词缀(affixes) ​ 前缀属性 `prefix` 和后缀属性 `suffix` 可以在 `cs:date`(使用 `cs:date` 定义本地化格式除外),`cs:date-part`(`cs:date` 调用本地化格式除外)、`cs:group`、`cs:label`、`cs:layout`、`cs:name`、`cs:names`、`cs:number` 以及 `cs:text` 中设置。属性值用来在输出的前面或者后面添加东西,但是只有输出的时候才会渲染。除在 `cs:layout` 中设置外,词缀将出现在同一个元素的 [格式化](#格式化formatting)、[引用](#引述quotes)、[strip-periods](#剥除句点strip-periods) 和 [text-case](#文本大小写text-case) 的影响范围的外面,也就是这些属性的设置对前缀和后缀没有影响。作为一种解决方法,在父元素 `cs:group` 中设置上述属性,会产生影响。 ### 分隔符(delimiter) ​ `delimiter` 属性可以在 `cs:date`(用来分隔日期的各部分,如年和月;在 `cs:date` 调用本地化格日期格式时,分隔符将被禁用)、`cs:name`(分隔名称变量中不同的名字列表)、`cs:name`(分隔名字列表中的名字)、`cs:group` 以及 `cs;layout`(分隔子元素的输出)中设置分隔符。 ### 显示(display) `display` 属性可用于将各个参考文献条目构成一个或者多个文本块。如果使用该属性,所有的渲染元素都在该属性的控制下。(译注:是用来设置对齐效果的)属性可能的值为: * "block" - 两边对其 * "left-margin" - 左对齐。 * "right-inline" - 右对齐 * "indent" - 缩进。 **例** A. 除使用 `second-field-align` 外,使用 `left-margin` 和 `roght-inline` 可以实现相同的渲染效果。这种操作方式潜在的好处是,可以在最终的输出中进一步控制块的格式,例如,在 HTML 的 CSS 或者 Word 的样式中。 ```xml ``` B. 每个作者的出版物列表。当 `subsequent-author-substitute` 设置为空字符串时,具有相同作者的条目的作者名字只渲染一次。 ```xml ``` 渲染结果将类似下面: | Author1 | | | ----------------- | ------------------ | | year-publication1 | title-publication1 | | year-publication2 | title-publication2 | | Author2 | | | year-publication3 | title-publication3 | | year-publication4 | title-publication4 | C. 带有注释的条目,注释显示在参下方的缩进块中。 ```xml ``` ### 引述(quotes) ​ `quotes` 属性可以在 `cs:text` 中设置。当设置为 `true` 时(默认为 `false`),渲染文本将会被包含在引用中。本地化的 `punctuation-in-quote` 选项控制用来连接的逗号或者句号是出现在引号的内部还是外部(默认外部),见 [Locale options](#本地化选项)。 ### 剥除句点(Strip-periods) ​ `strip-periods` 属性可以在 `cs:label` 或者 `cd:text` 中设置,此外,当 `name` 被设置为 `month` 时,也可以在 `cs:date-part` 中设置。当该属性被设置为 `true` 的时候(默认的是 `false`),所有文本中的句号(英文中为点)将会被删除。 ### 文本大小写(text-case) ​ `text-case` 属性可以在 `cs:date`、`cs:date-part`、`cs:label`、`cs:name-part`、`cs:number` 和 `cs:text` 中设置,可设置的值为: * "lowercase": 使用小写字母渲染文本 * "uppercase": 使用大写字母渲染文本 * "capitalize-first": 如果第一个词是小写的,将首字母设置为大写 * "capitalize-all": 将每个小写词的首字母设置为大写 * "sentence": renders text in sentence case(以句子的格式设置?) * "title": renders text in title case(以标题的格式来设置?) #### 句子大小写转换 句子大小写转换 (在 "Text-case" 中设置为 "sentence"), 1. 对于大写字符串,字符串的第一个字符保持为大写。其它字母表示为小写 2. 对于大小写混合的字符串,如果单词是小写,第一个单词的首字符大写,其它所有单词的大小写保持不变。 CSL 处理器不能识别专有名词。因此,可以将句子大小写的字符转缺的转换为标题大小写,反之亦然。因此,通常最好在句子大小写的情况下存储注入标题之类的字符串,并且仅在样式需要其它大小写的情况下菜使用文本大小写。 #### 标题大小写转换 标题大小写转换 (在 "Text-case" 中设置为 "title") 对英语来说: 1. 对大写的字符串,每个单词的第一个字母保持大写,其它的字母保持小写。 2. 对于小写或者是混合的字符串,每个小写字符串的首字母大写。大写的字符串或者是混合的字符串保持原样。 两种情况下,`stop words` 必须是小写的,除非他们是第一个或者对后一个单词,或者跟在冒号后面。`stop words` 包括:`a", "an", "and", "as", "at", "but", "by", "down", "for", "from", "in", "into", "nor", "of", "on", "onto", "or", "over", "so", "the", "till", "to", "up", "via", "with", "yet`. **非英语项目** ​ 由于许多语言不使用标题大小写,标题大小写转换 (在 "Text-case" 中设置为 "title") 仅影响英语项目。 ​ 如果 `cs:style` 中的 `default-locale` 属性没有设置,或者设置为 `en` 开头的单词,则假定为英语环境。如果某项的元数据包含一个语言字段,而且该字段不是以 `en` 开头的,才被视为是非英语环境。 ​ 同样的,`default-locale` 被这是为除 `en` 开头的字段,就假定为非英语。如果项目是以 `en` 开头的字段,就被视为是英语。 ## 附录 I 学科分类 ::: info WIP 此小节正在施工中 ::: * anthropology 人类学 * astronomy 天文学 * biology 生物学 * botany 植物学 * chemistry 化学 * communications 通讯 * engineering 工程学 * generic-base - used for generic styles like Harvard and APA 通用基础 - 用于通用样式,像哈弗和 `APA` * geography 地理学 * geology 地质学 * history 历史 * humanities 人文学科 * law 法学 * linguistics 语言学 * literature 文学 * math 数学 * medicine 药物学 * philosophy 哲学 * physics 物理学 * political\_science 政治科学 * psychology 心理学 * science 科学 * social\_science 社会科学 * sociology 社会学 * theology 神学 * zoology 动物学 ## 附录 II 术语 ::: info WIP 此小节正在施工中 ::: 术语在本地化文件中使用 ### 定位词(Locators) * book 书 * chapter 章 * column * figure 图 * folio 作品集 * issue 议题/问题 * line 行 * note 笔记/注记 * opus 作品(音乐作品) * page 页 * paragraph 段 * part 部分 * section 节 * sub verbo 词条 * verse 诗 * volume 卷 ### Months 月 * month-01 * month-02 * month-03 * month-04 * month-05 * month-06 * month-07 * month-08 * month-09 * month-10 * month-11 * month-12 ### Ordinals 序数 * ordinal * ordinal-00 through ordinal-99 * long-ordinal-01 * long-ordinal-02 * long-ordinal-03 * long-ordinal-04 * long-ordinal-05 * long-ordinal-06 * long-ordinal-07 * long-ordinal-08 * long-ordinal-09 * long-ordinal-10 ### Quotation marks 引号 * open-quote * close-quote * open-inner-quote * close-inner-quote ### Roles 角色 * author 作者 * collection-editor 文集编辑 * composer 作曲者 * container-author 文章作者 * director 主任/导演 * editor 编辑 * editorial-director 编辑部主任 * editortranslator * illustrator 插画者 * interviewer 采访者 * original-author 原作者 * recipient 收件人 * reviewed-author 复查作者 * translator 译者 ### Seasons 季节 * season-01 * season-02 * season-03 * season-04 ### Miscellaneous 其他 * accessed * ad * and * and others * anonymous * at * available at * bc * by * circa * cited * edition * et-al * forthcoming * from * ibid * in * in press * internet * interview * letter * no date * online * presented at * reference * retrieved * scale * version ## 附录 III 条目类型 ::: info WIP 此小节正在施工中 ::: * article 文章 * article-magazine 杂志文章 * article-newspaper 新闻文章 * article-journal 期刊文章 * bill * book 书 * broadcast * chapter 章节 * dataset 数据集 * entry * entry-dictionary * entry-encyclopedia * figure 图 * graphic * interview 采访 * legislation * legal\_case * manuscript * map 地图 * motion\_picture * musical\_score * pamphlet * paper-conference * patent * post 海报 * post-weblog * personal\_communication 私人交流 * report 报告 * review * review-book * song 歌曲 * speech 演讲 * thesis 学位论文 * treaty * webpage 网页 ## 附录 IV 变量 ::: info WIP 此小节正在施工中 ::: ### 标准变量 * abstract 项目的摘要(例:期刊文章的摘要) * annote 读者关于项目内容的笔记 * archive 保存项目的存档 * archive\_location 存档的位置 * archive-place 存档的地理位置 * authority * call-number call number (to locate the item in a library) * citation-label label identifying the item in in-text citations of label styles (e.g. "Ferr78"). May be assigned by the CSL processor based on item metadata. * citation-number index (starting at 1) of the cited reference in the bibliography (generated by the CSL processor) * collection-title title of the collection holding the item (e.g. the series title for a book) * container-title title of the container holding the item (e.g. the book title for a book chapter, the journal title for a journal article) * container-title-short short/abbreviated form of "container-title" (also accessible through the "short" form of the "container-title" variable) * dimensions physical (e.g. size) or temporal (e.g. running time) dimensions of the item * DOI Digital Object Identifier (e.g. "10.1128/AEM.02591-07") * event name of the related event (e.g. the conference name when citing a conference paper) * event-place geographic location of the related event (e.g. "Amsterdam, the Netherlands") * first-reference-note-number number of a preceding note containing the first reference to the item. Assigned by the CSL processor. The variable holds no value for non-note-based styles, or when the item hasn’t been cited in any preceding notes. * genre class, type or genre of the item (e.g. "adventure" for an adventure movie, "PhD dissertation" for a PhD thesis) * ISBN International Standard Book Number * ISSN International Standard Serial Number * jurisdiction geographic scope of relevance (e.g. "US" for a US patent) * keyword 关键字 * locator a cite-specific pinpointer within the item (e.g. a page number within a book, or a volume in a multi-volume work). Must be accompanied in the input data by a label indicating the locator type (see the [Locators](https://docs.citationstyles.org/en/stable/specification.html#locators) term list), which determines which term is rendered by `cs:label` when the "locator" variable is selected. * medium medium description (e.g. "CD", "DVD", etc.) * note (short) inline note giving additional item details (e.g. a concise summary or commentary) * original-publisher original publisher, for items that have been republished by a different publisher * original-publisher-place geographic location of the original publisher (e.g. "London, UK") * original-title 最初版本的题目 * page 项目的页码范围 * page-first 页码范围的第一个页码 * PMCID PubMed Central reference number * PMID PubMed reference number * publisher 出版商/出版社 * publisher-place 出版社的地理位置 * references resources related to the procedural history of a legal case * reviewed-title title of the item reviewed by the current item * scale scale of e.g. a map * section container section holding the item (e.g. "politics" for a newspaper article) * source from whence the item originates (e.g. a library catalog or database) * status (publication) status of the item (e.g. "forthcoming") * title primary title of the item * title-short short/abbreviated form of "title" (also accessible through the "short" form of the "title" variable) * URL 链接 * version 版本 * year-suffix disambiguating year suffix in author-date styles (e.g. "a" in "Doe, 1999a") ### 数字变量 Number variables are a subset of the [Standard Variables](https://docs.citationstyles.org/en/stable/specification.html#standard-variables). * chapter-number 章序号 * collection-number number identifying the collection holding the item (e.g. the series number for a book) * edition 版本序号(注意和 version 的区别) * issue (container) issue holding the item (e.g. "5" when citing a journal article from journal volume 2, issue 5) * number number identifying the item (e.g. a report number) * number-of-pages 引用项目的总的页数 * number-of-volumes total number of volumes, usable for citing multi-volume books and such * volume (container) volume holding the item (e.g. "2" when citing a chapter from book volume 2) ### 日期变量 * accessed date the item has been accessed * container ? * event-date date the related event took place * issued date the item was issued/published * original-date (issue) date of the original version * submitted date the item (e.g. a manuscript) has been submitted for publication ### 名称变量 * author * collection-editor editor of the collection holding the item (e.g. the series editor for a book) * composer composer (e.g. of a musical score) * container-author author of the container holding the item (e.g. the book author for a book chapter) * director director (e.g. of a film) * editor * editorial-director managing editor ("Directeur de la Publication" in French) * illustrator illustrator (e.g. of a children’s book) * interviewer interviewer (e.g. of an interview) * original-author * recipient recipient (e.g. of a letter) * reviewed-author author of the item reviewed by the current item * translator ## 附录 V 页码范围格式 ::: info WIP 此小节正在施工中 ::: `cs:style` 元素中的 `page-range-format` 表示了页码的缩写规则,其取值可能是: `chicago` | 第一个数字 | 第二个数字 | 例 | | --------------------------------------- | -------------------------------------------------- | ------------------------------------ | | 小于 100 | 使用所有的位数 | 3–10; 71–72 | | 100 或者 100 的整数 | 使用所有的位数 | 100–104; 600–613; 1100–1123 | | 100 到 109(包括对应 100 的倍数的范围) | 仅使用有变化的部分,忽略不需要的 0 | 107–8; 505–17; 1002–6 | | 110 到 199(包括对应 100 的倍数的范围) | 根据需要使用两位数或者更多 | 321–25; 415–532; 11564–68; 13792–803 | | 4 位数 | 如果数字是 4 位并且其中有 3 位不同,使用所有的位数 | 1496–1504; 2787–2816 | `expanded` ​ 扩展模式,不适用缩写。eg. 「42–45」、「321–328」、「2787–2816」 `minimal` ​ 第二个数字中重复的所有数字都被省略:「42–5」,「321–8」,「2787–816」 `minimal-two` ​ 和 `minimal` 类似,但当第二个数字有两个或者两个以上的数字时,第二个数字至少保留两位。 ## 附录 VI 链接 ::: info WIP 此小节正在施工中 ::: The CSL syntax does not have support for configuration of links. However, processors should include links on bibliographic references, using the following rules: If the bibliography entry for an item renders any of the following identifiers, the identifier should be anchored as a link, with the target of the link as follows: 1. `url`: output as is 2. `doi`: prepend with `https://doi.org/` 3. `pmid`: prepend with `https://www.ncbi.nlm.nih.gov/pubmed/` 4. `pmcid`: prepend with `https://www.ncbi.nlm.nih.gov/pmc/articles/` If the identifier is rendered as a URI, include rendered URI components (e.g. `https://doi.org/`) in the link anchor. Do not include any other affix text in the link anchor (e.g. 「Available from: 」, 「doi: 」, 「PMID: 」). Citation processors should include an option flag for calling applications to disable bibliography linking behavior. --- --- url: /csl-dev-guideindex.md --- # CSL 中文文档 此文档是对 [CSL 英文文档](https://docs.citationstyles.org/en/stable/primer.html) 的翻译。它最初由 [ZMAlt](https://github.com/ZMAlt) 维护并发布于 [CSL-chinese documentation](https://csl-chinese.readthedocs.io/en/latest/),后来 [Zotero Chinese](https://github.com/zotero-chinese) 社区接管了维护工作。 出版物对参考文献的一系列引注规则构成了其引注样式,CSL 旨在提供一种计算机可读的语言来描述这些规则,从而在文献管理软件(如 [Zotero](https://www.zotero.org/)、[Mendeley](https://www.mendeley.com/)、[Papers](https://www.papersapp.com/))中自动生成引注。虽然 CSL 已经涵盖多个语言地区的数千种样式,但现实的需求是多样的,如果你没能在 CSL 样式仓库([官方仓库](https://www.zotero.org/styles) 或 [中文社区仓库](/styles/))中找到合适的样式,而且 [申请新样式](/user-guide/citation-styles#%E8%AF%B7%E6%B1%82%E6%96%B0%E6%A0%B7%E5%BC%8F) 的周期太长,那么你可以参考本文档着手修改或创建自己的样式。 --- --- url: /csl-dev-guideprimer.md --- # CSL 介绍 ## 前言 本节是对 [Citation Style Language](http://citationstyles.org/)(CSL)的简单介绍,CSL 是一种基于 XML 的开放 (开源) 语言,用于描述引注和参考文献表的格式。对 CSL 更技术性、更深入的说明见 [CSL 规范](specification.md)。 ## 什么是 CSL 如果你写过论文的话,你很可能在其中引用了别人的工作。参考文献在学术交流中至关重要,它可以交代缘由,并且把已发表的研究联系到一起。但是,手动设置引注格式和参考文献表非常耗时,尤其是当你面对的期刊都有他们自己的引用格式的时候。 好在参考文献管理软件可以解决这样的问题。像 Zotero、Mendeley、Papers 等软件不仅能帮助你管理研究资料,而且可以自动生成引注和参考文献表。但要想设置特定的引用格式,这些程序需要使用一种可被计算机理解的语言来描述各种引用格式,也许你已经猜到,这种语言就是 Citation Style Language(CSL)。 ## 引用格式 世界上有成百上千种不同的引用格式。 ::: tip (GB/T 7714-2015) 在中国,最常见的引用格式是国家标准《[信息与文献 参考文献著录规则](https://std.samr.gov.cn/gb/search/gbDetailed?id=71F772D8055ED3A7E05397BE0A0AB82A)》,最新的标准号是 `(GB/T 7714-2015)`。 ::: 可幸的是,绝大多数引用格式都属于几个基本类别,CSL 将引用格式分为以下类型: ### In-text 风格 引用格式可以分为两个主要的类型。第一种类型就是 `in-text` 风格,在这种风格中,一个引注直接指向参考文献表中的一个或者多个条目。CSL 继续将这种风格细分为 `author-date`、`author`、`numeric` 和 `label` 风格。 每个引注都指向一个或者多个参考文献条目。在 CSL 中,每个独立的指向关系称为一个引用。例如,引注 `(Doe et al. 2002, Smith 1997)` 包含两个引用:一个是 `Doe et al.` 在 2002 年发表的文献,另一个是 `Smith` 于 1997 年发表的文献。在 CSL 的语境中,参考文献表中的条目有时也称为参考文献。 #### author-date 和 author 风格 `author-date` 风格的引用会显示作者名字和发表的日期,例如:`(Van der Klei et al. 1991; Zwart et al. 1983)`。而 `author` 风格的引用只显示作者名字,例如:`(Gidijala et al.)`。参考文献条目一般使用字母表顺序对作者进行排序。 ::: tip 著者 - 出版年制 国标中的「著者 - 出版年制」就属于 `author-date` 风格。 ::: 应该注意的是,即使这些风格中的大多数与哈佛大学并没有联系,许多风格指南仍使用了令人疑惑的术语「Harvard」来指代”`author-date` 格式。而且,并不存在一个所谓的官方 Harvard 格式。 ::: info 参考文献条目实例 Gidijala L, Bovenberg RA, Klaassen P, van der Klei IJ, Veenhuis M, et al. (2008) Production of functionally active *Penicillium chrysogenum* isopenicillin N synthase in the yeast *Hansenula polymorpha*. BMC Biotechnol 8: 29. van der Klei IJ, Harder W, Veenhuis M (1991) Methanol metabolism in a peroxisome-deficient mutant of *Hansenula polymorpha*: a physiological study. Arch Microbiol 156: 15-23. Zwart KB, Veenhuis M, Harder W (1983) Significance of yeast peroxisomes in the metabolism of choline and ethanolamine. Antonie van Leeuwenhoek 49: 369-385. ::: #### numeric 风格 `numeric` 风格的引用由数字组成,比如 `[1,2]` 和 `[3]`。参考文献条目一般按照作者首字母或者首次引用的次序来进行排序。 ::: tip 顺序编码制 国标中的「顺序编码制」就属于 `numeric` 风格。 ::: ::: info 参考文献条目实例 1. Gidijala L, Bovenberg RA, Klaassen P, van der Klei IJ, Veenhuis M, et al. (2008) Production of functionally active *Penicillium chrysogenum* isopenicillin N synthase in the yeast *Hansenula polymorpha*. BMC Biotechnol 8: 29. 2. Zwart KB, Veenhuis M, Harder W (1983) Significance of yeast peroxisomes in the metabolism of choline and ethanolamine. Antonie van Leeuwenhoek 49: 369-385. 3. van der Klei IJ, Harder W, Veenhuis M (1991) Methanol metabolism in a peroxisome-deficient mutant of *Hansenula polymorpha*: a physiological study. Arch Microbiol 156: 15-23. ::: #### numeric 复合风格 复合风格是 `numeric` 风格的变体。这种风格在化学领域很流行,参考文献条目可能会包含多个参考文献。一旦某个引注定义了一个这样的参考文献条目(如 `[2]`),就可以单独引用条目中的项目(如 `[2b]`)。 ::: warning CSL 尚未支持这种格式。 ::: ::: info 参考文献条目实例 1. Gidijala L, et al. (2008) BMC Biotechnol 8: 29. 2. a) Zwart KB, et al. (1983) Antonie van Leeuwenhoek 49: 369-385, b) van der Klei IJ, et al. (1991) Arch Microbiol 156: 15-23. ::: #### Label 风格 `Label` 风格的引注由简短的**键**构成,例如 `[GBKv2008]` 和 `[ZwVH1983; vaHV1991]`。这些键也出现在参考文献条目中。因为目前不支持(特定风格的)自定义键格式,CSL 对这种格式支持有限。 ::: tip 键(key) 「键」在计算机领域具有丰富的含义,在这里,它是指一串代表被引文献的字符。 ::: ::: info 参考文献条目实例 \[GBKv2008] Gidijala L, Bovenberg RA, Klaassen P, van der Klei IJ, Veenhuis M, et al. (2008) Production of functionally active *Penicillium chrysogenum* isopenicillin N synthase in the yeast *Hansenula polymorpha*. BMC Biotechnol 8: 29. \[vaHV1991] van der Klei IJ, Harder W, Veenhuis M (1991) Methanol metabolism in a peroxisome-deficient mutant of *Hansenula polymorpha*: a physiological study. Arch Microbiol 156: 15-23. \[ZwVH1983] Zwart KB, Veenhuis M, Harder W (1983) Significance of yeast peroxisomes in the metabolism of choline and ethanolamine. Antonie van Leeuwenhoek 49: 369-385. ::: ### Note 风格 引用格式的第二类为 `note` 风格。这种风格中,引用文献时会在句子中插入一个标记,这个标记可以是数字或者符号,例如 `[*]` 和 `[†]`。每个标记都指向脚注或者尾注。CSL 不限制采用哪些数字格式或者符号作为标记,这些应该留交文字处理软件来完成。与前面的 `in-text` 风格的引注不同,尾注或脚注通常包含辨识引用文献所需的所有信息。有些 `note` 风格还包含一个参考文献表以显示所有被引文献的概貌,并对文献作更详细的描述。 :::tip 文字处理软件 文字处理软件,即用于将文字格式化和排版的办公软件,如 Microsoft Word,国内常见的 WPS 就是「文字处理软件(Word Process Software)」的英文缩写。 ::: ::: info 参考文献条目实例 \[\*] Voyage to St. Kilda’ (3rd edit. 1753), p. 37. \[†] Sir J. E. Tennent, ‘Ceylon,’ vol. ii. 1859, p. 107. ::: ## CSL 生态 要明白 CSL 是怎么运作的,首先来看看 CSL 生态系统的各个部分。 ![csl-infrastructure](https://docs.citationstyles.org/en/stable/_images/csl-infrastructure.png) :::tip 图注 「Style」指的是 CSL 样式,「Item Metadata」指的是每篇参考文献的作者,题目等信息,「Locale Files」是为实现与语言无关(指英语、汉语等)的格式的本地化文件,「Citation Details」指的是影响引注信息或参考文献表表现的细节,比如顺序、位置等。 ::: ### 独立样式和从属样式 CSL 世界中的一切都是围绕样式展开的,但是并不是所有的样式都是相似的。主要包括两种样式:独立样式(independent styles)和从属样式(dependent styles)。 独立样式有 2 个职责,首先,需要先定义一种引用格式。具体格式是什么样的,是 `author-date` 风格还是 `note` 风格?引用是按字母排序还是按日期排序?参考文献条目中是不是包含 DOI?使用什么标点符号以及大小写?文献发表年限在文献标题之前还是之后?等等。其次,CSL 样式必须描述它本身,我们称这个自我描述的信息为**样式元数据**。元数据中可以包括该 CSL 样式对应的期刊标题,以及该期刊的网站,该 CSL 样式的创建者等。 从属样式则仅包括样式元数据。从属样式仅需引用一个独立样式 (其「父样式」),且应用父样式的引用格式,而无需提供对引用格式的定义。 当多个 CSL 样式共享相同的引用格式时,从属格式非常有用。以一个出版社旗下的不同期刊为例,如果限制只能使用独立样式,则虽然他们的引用格式都是相同的,但每个期刊的 CSL 样式都要包含对引用格式的完整定义。这会产生大量难以维护的 CSL 样式。如果出版社对它的引用格式作了一点小改动,我们将不得不更新每一个独立样式。 从属样式正是用来解决这些问题的。例如,《Nature》、《Nature Biotechnology》和《Nature Chemistry》期刊都使用同样的引用格式。那么,只需为《Nature Biotechnology》和《Nature Chemistry》都创建指向《Nature》的从属样式即可。这样一来,如果 Nature 出版集团想修改《Nature》及其关联期刊的引用格式,只需更改《Nature》CSL 样式中的引用格式,而无需触及其从属样式。 ### 本地化文件 事实上,大多数独立格式并不是完全独立的。 以下面的参考文献为例: > Hartman, P., Bezos, J. P., Kaphan, S., & Spiegel, J. (1999, September 28). Method and system for placing a purchase order via a communications network. Retrieved from 你可以在独立样式中将各种特定语言的信息强行编码到样式中来描述这个引用格式。例如,在最后的链接前加上 `Retrieved from` 这段文本,或者采用 `YYYY, Month DD` 作为日期的格式。但是这样的样式只能在美式英语中使用,如果使你想要这个引用格式的德语版,就必须修改样式中所有对应的翻译和日期格式。 幸运的是,独立样式可以依据 CSL locale file(以下也翻译为「本地化文件」)来实现通用术语的翻译以及日期格式和语法的转换。例如:我们可以重写 CSL 样式以便使用 `retrieved` 和 `from` 的 CSL 术语,并使用本地化的日期格式。如果我们将 CSL 样式的区域设置为美式英语,该样式将从美式英语的本地化文件检索术语的译文和本地化的日期格式,并生成上述引用。但如果将样式区域从英语切换至德语,就会使用德语对应的本地化文件,生成的引用如下: > Hartman, P., Bezos, J. P., Kaphan, S., & Spiegel, J. (28. September 1999). Method and system for placing a purchase order via a communications network. Abgerufen von 因此,通过本地化文件,可以编写与语言无关的 CSL 样式。正如上面所展示的那样,这样的样式可以在不同的语言中轻松切换。但是语言是很复杂的,对于那些已经有本地化文件的语言,CSL 的自动本地化并不能支持所有语言的特性。不过,如果你要自己修改一个 CSL 样式使其满足你所选的语言,语言无关的样式仍然是有意义的。 本地化文件还带来一个好处,我们只需要为每种语言定义一次通用的翻译、日期格式和语法。这样可以保证样式紧凑,并使本地化文件更易于维护。由于给定语言的引用格式并不总是采用某种翻译和日期格式,CSL 样式也可以选择性的重写任何在本地化文件中定义过的数据。 ### 条目元数据 接下来就是你所要引用的条目在参考文献表中的具体内容:条目元数据。 例如,一篇期刊文章的参考文献条目可能会显示作者的名字、发表的年份、文章标题、期刊名称、卷和期、出现的页码范围以及 DOI,所有这些信息都有助于读者识别和查找这篇文章。 参考文献管理软件使创建条目的文库变得简单。虽然许多参考文献管理软件都有它们自己存储条目元数据的方式,但大多数都支持例如 BibTeX 和 RIS 这样通用的参考文献数据交换格式。citeproc-js CSL 处理器引入了一种基于 JSON 的格式,这种格式以 citeproc-js 可以理解的方式来存储元数据。一些其他的 CSL 处理器也已经开始采用这种 CSL JSON 格式(又名 citeproc JSON)。 ### 引用细节 对于一种给定的引用格式,引注和参考文献表的展现方式不仅取决于被引用条目的元数据,还取决于这些条目被引用处的上下文。我们将这类特定于上下文的信息称为**引用细节**。 例如,条目的引用顺序会影响他们在参考文献表中的位置。在 `Note` 风格中,之前已被引用的条目在被继续引用时会写为更紧凑的形式。另一个例子是定位词,其引导读者到被引工作的特定位置,比方说章节中某个参数被提出的页码,例如 `(Doe 2000, pp.43-44)`。 ### CSL 处理器 有了 CSL 样式、locale file、元数据和引用细节,我们现在需要一个软件来解析这些信息,并以正确的格式生成引注和参考文献表条目,那就是 CSL 处理器。 大多数的参考文献管理软件使用的是像 `citeproc-js` 这样免费开源的 CSL 处理器。 ## 理解 CSL 样式 到现在为止,我们已经了解了什么是 CSL、怎么使用它、以及它是如何运作的。接下来我们将深入到 CSL 样式文件内部,分析它的 XML 代码。 《XML 基础》一章中简单介绍了 XML,看完后可以读懂并编辑简单的 XML 文件。如果想深入了解 XML,可以在网上查找 XML 教程。 ### 从属样式解析 正如前文所述,从属样式比相对的独立样式更紧凑,因为它们并未真正地定义一个引用格式。此外,从属样式还非常常见,并且它们的样式元数据和独立样式中的相似,因此对学习 CSL 而言是一个好的出发点。我们将进一步逐行观察下面这个 CSL 从属样式文件: ```xml ``` ```xml ``` XML 格式声明。 ```xml ``` `cs:style` 根元素的起始标签和结束标签。`xmlns` 属性指定 `style` 中的所有元素都是 CSL 的一部分,而 `version` 则表明了 CSL 版本的兼容性。`defaults-locale` 告诉样式才有特定的语言来生成引注和参考文献表(美式英语)。 :::tip `xmlns` 是 XML name space 的缩写,「name space」一般译为**命名空间**,即一些名称的集合。XML 标记语言允许创建者自定义各种标签和属性的名称,同一个名称在不同场合可能有不同的含义,因此有必要向读者交代这些名称的定义。虽然可以通过在 XML 中书写注释来阐述这些名称,但为了方便起见,一般在一个网页给出这一系列名称的定义和说明,并通过 `xmlns` 属性链接到 XML 文件中,基于 XML 的 `CSL Style` 也不例外。 本文用 `cs:style` 特指 CSL 命名空间中的 `style` 元素(因为我们可能会引入其他命名空间),实际书写代码时并不需要写成 `...`。 ::: ```xml ``` 大多数从属格式都是电子表格自动生成的。这个 XML 注释明确地指出这个样式已经被生成,并包含了一个指向电子表格的链接。 ```xml ... ``` `cs:info` 小节用于存储样式的大部分元数据。 ```xml Applied and Environmental Microbiology ``` 样式的标题(通常也是该样式所适用的期刊的名称)。 ```xml http://www.zotero.org/styles/applied-and-environmental-microbiology ``` 样式的 ID,是文献管理软件用来区分不同样式的标志。 ```xml ``` 样式自身的链接。该链接指向了网上的副本。简便起见,对于我们代码仓库中的样式,我们采用相同的 URL 作为样式 ID 和自身链接。 ```xml ``` 从属样式需要链接到一个独立的父样式,父样式为的引用格式将会应用到这个从属样式中。此处,我们使用 American Society for Microbiology 的样式作为父样式。 ```xml ``` 如果每一个样式的意图都是清晰的,那维护起一大堆 CSL 样式将更方便。因此我们要求我们的代码仓库中的样式都必须至少包含一个「说明文档」的链接。在本例中,该链接指向期刊主页。 ```xml ``` 为了便于对我们的样式进行分类,我们用 `cs:category` 元素的 `citation-format` 属性中指定引用格式。出于同样的目的,我们使用 `field` 属性为每个样式文件分配一个或多个研究领域。 ```xml 0099-2240 1098-5336 ``` 当为某个期刊创建样式时,可以在 `cs:issn` 元素和 `cs:eissn` 元素中保存其印刷品的 `ISSN`(国际标准连续出版物号)和电子版的 `ESSIN`(电子国际标准连续出版物号)。 ```xml 2014-04-30T03:45:36+00:00 ``` `updated` 的内容是一个时间戳,指明样式最后一次更新的时间。 ```xml This work is licensed under a Creative Commons Attribution-ShareAlike 3.0 License ``` 本文最后一个介绍,但不一定是样式的 `cs:info` 中的最后一个元素,表示这个样式在哪一个版权协议下发布。 ### 独立样式解析 最后是一个真正的独立样式,它确切地定义了引用格式(虽然并不是一个实用的样式)。我们代码仓库中的大多数独立样式都比下面这个简化过的例子还要大很多。但我们下面这个 `author-date` 样式仍然是一个有效的样式,并且具有与其他独立样式相同的整体结构。 ```xml ``` #### 样式结构 要理解上面的样式,首先看一下根元素 `cs:style` 的子元素。 ```xml ``` 相比于只有 `cs:info` 一个子元素的从属样式,可以看到这里还有其他几个元素。除了 `cs:info` 以外,还有 `cs:locale`、`cs:macro`、`cs:citation` 和 `cs:bibliography`。 这些元素的作用是什么呢? * 必需的 `cs:info` 元素在在独立样式中的作用和其在从属格式中的相同,都是用来保存样式元数据。 * 可选的 `cs:locale` 元素可以用来**重写**本地化文件中定义过的数据。 * 可选的 `cs:macro` 用来存储 CSL 代码,这些代码可能应用在 `cs:citation`、`cs:bibliography` 或者其他 `cs:macro` 元素中。 * 必需的 `cs:citation` 元素定义引注的格式。 * 可选的 `cs:bibliography` 元素定义参考文献表的格式。 ::: tip 重写 "重写"(override)原本是 OOP(一种编程思想)中的概念,指的是重新定义一个已有的方法(即函数)。本文原文写为「overwrite」,即重新定义本地化文件中已有的任何翻译、日期格式,严格来说与译为「重写」的 override 并不是同一个意思。 ::: 有了以上简单的认识,下面从 `cs:style` 根元素开始分析。 #### cs:style 根元素 ```xml ``` 我们已经在从属样式的 `cs:style` 元素中见到过 `xmlns` 和 `version` 属性,这个 `class` 是新出现的属性。CSL 处理器通过 `class` 属性区分本样式是 `in-text` 风格还是 `note` 风格。 #### info 元素 独立样式的元数据通常比从属样式的元数据更加全面: ```xml Example Style http://www.zotero.org/styles/example John Doe JohnDoe@example.com Jane Doe Bill Johnson 2014-10-15T18:17:09+00:00 This work is licensed under a Creative Commons Attribution-ShareAlike 3.0 License ``` `title`、样式 `ID`、`self` 链接、`category`、时间戳和 `license`,其作用与先前介绍的一致,但还是有些许差别。首先,独立样式不依赖父样式。相反,我们通常是提供一个 `template` (模板)链接,以表明当前的独立样式是基于哪一个样式来创建的(CSL 样式很少从头写起,因为改写已有的样式往往比较快速)。本例中,所链接的模板是 APA 样式。此外,我们还倾向于放一个或多个 `documentation` 链接,其指向有关引用格式的在线描述。 为向 CSL 格式的创建者致以谢意,也可以把他们的名字和联系方式添加到样式文件中。在当前的例子中,有一个作者和两个贡献者。通常来说,作者完成了创建样式的大部分工作,而贡献者只对此作了一些小的改进。 #### cs:citation 元素和 cs:macro 元素 接下来分析 `cs:macros` 和 `cs:citation` 元素。`cs:citation` 元素旨在描述引注的格式(对于 `note` 风格而言,就是脚注或者尾注的格式)。 ```xml ``` 上面的代码生成类似 `(A.C. Smith et al., 2002; W. Wallace, J. Snow, 1999)` 这样的引注。要理解这种引注格式在 CSL 中是如何编码的,我们首先着眼于 `cs:citation` 元素中的 `cs:layout` 元素。`cs:layout` 元素中的 `prefix` 和 `suffix` 属性定义了引注周围的圆括号,而 `delimiter` 属性的值(`;`)将相邻的引用分开。每个单独的引用都是由 `cs:layout` 的内容来决定的,引用由 `author` 和 `issue-year` 宏的输出组成,并以`cs:group` 元素上的 `delimiter` 属性(`,`)分隔。 ::: tip 宏(macro) 在英语中,macro 一词的本义是「巨大的、大量的」,与之对应的是 micro「微小的」。在计算机领域,macro 来源于 macro-instruction(宏命令),与之对应的是 micro-instruction(微命令)。micro-instruction 可以理解为基本的、小段的、零碎的代码,而 macro-instruction 就是**一系列需要反复使用的小段代码**的总称——一大段代码。对于支持 macro 的编程语言,当某段代码需要反复使用时,只需将这段代码定义为 macro,随后的代码中就可以用这个 macro 的名称来代表这一大段代码。之后,这些 macro 会被计算机替换为它所代表的小段代码,这一过程称为**宏展开**。 在 CSL 中,我们使用 `cs:macro` 元素来定义 macro,`name` 属性的值就是这个 macro 的名字,这个名字一般由短横杠连接的小写单词(因为空格用于分隔属性或属性值)组成,`cs:macro` 的子元素就是它所代表的代码。在这里,我们把 `cs:macro` 元素显示的结果称为它的**输出**。 ::: `author` 宏输出那些存储于所引条目的名称变量 `author` 的名字。`cs:name` 的 `initialize-with` 属性指定**名**应当以缩写显示,并且每个缩写后面附带属性值(`.`)。 ::: tip 名称变量(name variable) 名称变量是 CSL 众多变量类型中的一种,即那些代表了某个事物的名称的变量。有关 CSL 的变量类型,详见附录 Ⅳ。 ::: `issued-year` 元素以一个`cs:choose` 元素定义的分支语句开始。如果被引条目具有保存在日期变量 `issued` 的日期,则输出这个日期的年份,否则输出 `no date` 术语的值。 `layout` 元素中的 `group` 元素的 `author` 用来印出在 `author` 元素中存储的值,`issued-year` 则用来印出 `issued-year` 元素储存的值。 你可能会感到奇怪,为什么不直接把上面两个宏中的 CSL 代码放在 `cs:citation` 元素中呢?使用宏有什么好处呢?在上面的例子中,宏的使用简化了 `cs:citation` 元素的结构,使其更易于拓展。此外,上述的两个宏总共被调用了 4 次(两次在 `cs:citation` 元素中,两次在 `cs:bibliography` 元素中),如果不使用宏,必须多次重复这些 CSL 代码。因此宏的使用带来了更紧凑的样式。 还没完,再看 `cs:citation` 元素,它含有两个属性,即 `et-al-min` 和 `et-al-use-first`。这两个属性共同决定了当条目的`author` 名字大于等于 `3` 个的时候,只有第一个名字会被输出,并尾随 `et al` 术语。 最后,`cs:citation` 元素中还包含了 `cs:sort` 元素,`cs:sort` 又包含了两个 `cs:key` 元素。这一部分用来决定一个带有引注的引用如何排序。第一个用来排序的**键**由 `author` 宏的输出组成(CSL 足够智能,可以先根据姓、再根据名进行排序)第一个键具有相同输出的引用将继续根据第二个键进行排序,即 `issued-year` 宏的输出。 ::: tip 键(key) 到了这里,「键」是指被引注献中那些用于排序的信息。 ::: #### cs:bibliography 元素 `cs:citation` 负责输出引注和协调引用,`cs:bibliography` 则用于定义参考文献条目的格式。 ```xml ... ``` 上述的例子中的 `cs:bibliography` 小节实际上只适用于一种类型:期刊文章。它生成的参考文献条目格式为: > A.C. Smith, D. Williams, T. Johnson. 2002. Story of my life. Journal of Biographies, 12(2), 24—27. W. Wallace, J. Snow. 1999. Winter is coming. Journal of Climate Dynamics, 6(9), 97—102. 我们是如何定义这种格式的呢?首先,`cs:bibliography` 元素和 `cs:citation` 元素的结构很相似,但这里的 `cs:layout` 元素用来定义每一个独立的参考文献条目的格式。除了 `author` 宏和 `issued-year` 宏,参考文献条目还显示每个条目的 `title` 和 `container-title`(对期刊文章来说,就是期刊的名称),以及这篇文章见刊的 `volume`、`issue`,还有文章所在的页码(`page`)。样式使用 `prefix` 和 `suffix` 属性来将期刊期号括到圆括号里,并依据 `cs:layout` 和 `cs:group` 元素的 `suffix`和 `delimiter` 属性放置了其它的标点。 `cs:bibliography` 也含有一个 `cs:sort` 元素,它有三个键:`author` 和 `issued-year` 宏,以及第三个键——条目的 `title`。 #### cs:locale 元素 我们这个样式的最后一节是 `cs:loacle`。正如我们前面提到的那样,CSL 的本地化文件可以将 CSL 样式快速转换为不同的语言。但是,有时需要重写默认的翻译。 ```xml without date ``` 不出所料,在美式英语的本地化文件中,对 `no date` 术语的输出就是 `no date`。但是在我们的示例样式中,我们想使用 `without date` 来代替它。为了重写默认的翻译,我们可以使用上面所示的 `cs:locale` 元素。对一个没有发行日期的条目,这种重写会导致引注变成这样: `(D. Williams, without date)` 。 `cs:locale` 的 `xml:lang` 属性被设置为 `en`,当样式被用于英语写作的时候,这个属性使 CSL 样式重写 `no date`。如果我们在德语环境中使用这个样式,它将会依据德语的本地化文件输出翻译 (`ohne Datum`)。 ## 更进一步 这里只对 CSL 进行了简单的介绍,有关 CSL 的更多知识可以查看 CSL 标准文档或者其他参考文档。 --- --- url: /user-guidepluginstranslatedeepl.md --- # DeepL 接口申请及配置 DeepL api 免费版包括: ✅ 访问 DeepL REST API ✅ 创建和管理多达 2 个 API 密钥 ✅ 500,000 个字符限制/月 ✅ 1,000 个术语表(特定语言可用) ::: warning Deepl api 的申请需要准备**国外信用卡**,或者**国外的虚拟信用卡** 如果你没有国外信用卡,可以尝试使用 [DeepLx](/user-guide/plugins/translate/deeplx) 或者 第三方服务商购买 ::: ## 1. 接口申请 进入 DeepL [申请 api](https://www.deepl.com/zh/pro-api?aid=segment_0004#api-pricing) 的页面,选择适合您的 API 套餐服务,点击免费注册/立即订阅。 ![选择套餐](../../../assets/images/zotero-plugin-translate/deepl-套餐选择.png) 详细教程略过。 ## 2. 翻译插件配置 打开翻译插件的设置,根据申请的套餐选择接口「免费/pro」 ![Deepl 插件设置](../../../assets/images/zotero-plugin-translate/deepl-接口选择.png) DeepL 的 API 验证密钥,在 DeepL 官网的账户信息页面可以看到。格式类似 `xxx-xxx-xxx:fx`。 --- --- url: /user-guidepluginstranslatedeeplx.md --- # DeepLx 项目 由于各种原因,在国内注册 DeepL 的免费计划都十分困难。于是出现了 [DeepLX](https://github.com/OwO-Network/DeepLX/?tab=readme-ov-file) 项目,该项目可让用户在不注册账号的前提下,使用 DeepL 作为翻译服务。 DeepLX 是一款基于 DeepL 翻译引擎的开源工具,旨在为用户提供免费、高质量的翻译服务。它通过调用 DeepL 的 API 接口,实现文本、文档等多种内容的翻译功能。DeepLX 的优势在于其翻译质量高,支持多种语言,且操作简单易用。 ::: warning DeepLX 的使用需要进行部署,涉及 Docker 或服务器相关知识。如果您对此不太熟悉,建议选择其他翻译引擎。 ::: 主要特点: * 高质量翻译:基于 DeepL 引擎,翻译结果准确、自然。 * 多语言支持:支持包括英语、中文、日语、法语、德语等在内的多种语言互译。 * 免费使用:相较于 DeepL 官方服务的收费模式,DeepLX 提供免费翻译服务。 * 开源项目:代码公开,用户可自行部署或修改,满足个性化需求。 * 跨平台支持:可在 Windows、macOS、Linux 等系统上运行。 使用教程见:[DeepLX](https://deeplx.owo.network/) 一些衍生项目: * 本地部署 DeepLX:[deeplx-local](https://github.com/ycvk/deeplx-local) * 使用 FreeBSD (Serv00) 环境中使用部署[deeplx-freeAPI-serv00Public](https://github.com/aigem/deeplx-freeAPI-serv00),[点击查看视频教程](https://www.bilibili.com/video/BV1e9bceoECw/) ::: details 如何申请免费的 Serv00 访问 [Serv00 官网](https://www.serv00.com/),注意看是否有名额注册,点击「注册账户」进入注册页面。 ![Serv00](../../../assets/images/zotero-plugin-translate/deepl-serv00.png) 1.输入用户名、邮箱、验证码等信息,托管费用填写 0,然后点击「创建账户」。 2.注意,官方要求至少每隔 3 个月登录一次,否则账号可能被删除。 3.如果遇到「Maintenance time. Try again later」的提示,是由于 IP 不够纯净的问题。 通过以上步骤,您可以顺利申请 Serv00 服务。 ::: --- --- url: /user-guidepluginseasier-citation.md --- # Easier Citation for Zotero ::: info Todo ::: --- --- url: /user-guidefaqsmonochrome-emoji.md --- # Emoji 变成黑白该怎么办 近期许多同学在系统更新后发现 Zotero 中 emoji 变成黑白了,初步判断这是由于系统更新出现的问题。 ![emoji 变成黑白](../../assets/images/emoji变成黑白.jpg) 该问题目前有两个解决方案,由于方法二会造成 emoji 图案发生改变,推荐先尝试方法一,如果方法一没有效果再尝试方法二 ## 一、安装 seguiemj 字体 1. 首先在网盘中下载字体文件: 2. 将下载的字体文件(seguiemj.ttf)复制到`C:\Windows\Fonts`,即可安装完成 3. 重启 Zotero 即可完成修复。 ## 二、通过修改 `Zotero 设置` 来解决 具体操作步骤如下: 1. 在菜单编辑选择「设置」: ![编辑器](../../assets/images/zotero-编辑器.png) 2. 弹出如下图所示的对话框。 点击「I accept the risk」 ![同意承担风险](../../assets/images/zotero-我同意承担风险.png) 3. 在搜索框中输入 emoji,双击搜索到的 `font.name-list.emoji`,由 `Segoe UI Emoji, Twemoji Mozilla` 修改为 `EmojiOne Mozilla`。 ![修改为"EmojiOne Mozilla"](../../assets/images/zotero-修改font.name-list.emoji.png) 4. 然后重新启动 Zotero,Emoji 成功变回彩色,问题解决 ![emoji 由黑白变成彩色](../../assets/images/emoji由黑白变成彩色.jpg) --- --- url: /user-guidepluginsstyle.md --- # Ethereal Style for Zotero 这是一个多彩的插件,用于增强 Zotero 的界面功能,让您享受阅读文献的乐趣! 首先需要明确的是,本插件`适用人群`:想美化自己的 Zotero,有一定学习插件的时间。 💡 强烈建议先**按照文章顺序**将整个教程**完整的阅读一遍**,了解插件的各个功能,再根据兴趣了解某个功能的详细设置/使用方法。 该插件有很多提升效率的功能,也有很多美化的功能,但也可能导致 Zotero 卡顿,在使用时应该根据自己的情况进行调整。 ## 开始之前 在使用插件之前,你需要知道 `Style` 的设置方式主要有两种。 ### 列设置 第一种,右键任意一个列的名字,会弹出一个右键菜单,并且在最后有两个按钮,一个是`列设置`,一个是[`视图组`](#视图组)。前者是对应列的设置选项,后者是一个将列分组快速切换的功能,后续会提到。 例如:如果你想设置标签,你可以在`标签`上右键,然后点击**列设置**,这是一切设置的起点,你在不同列名上右键,对应的列设置功能不同。 ![列设置的设置过程](../../assets/images/zotero-plugin-style/zoterostyle-标题栏列设置操作过程.gif) ### 命令框 第二种,通过命令框修改设置。Style 命令框的快捷键是`Shift + P`,有时候也可能是`Shift + Tab + P`,许多功能通过此快捷键进行使用,如果显示不全时,可通过暂时禁用其他插件解决。 ![按下Shift + P](../../assets/images/zotero-plugin-style/zoterostyle-shiftp菜单.png) ::: info 如果你的 Emoji 变成黑白了,可以通过这个教程来解决问题 👉[Emoji 变成黑白该如何解决](../faqs/monochrome-emoji.md) ::: ::: tip 在 GitHub 上,你可以留下你的颜色搭配,也可以学习其他人的颜色搭配 👉[颜色搭配征集](https://github.com/MuiseDestiny/zotero-style/issues/48) ::: ## 列 ### 标题(阅读进度条) 阅读进度直观地反映了您对某个项目下的 PDF 各页的阅读时间分布情况,颜色越深阅读时间越长。 阅读进度条显示在两个地方,其一是作为`标题列`的背景: ![阅读进度条](../../assets/images/zotero-plugin-style/zoterostyle-阅读进度条.png) 其二是在[命令框](#命令框)。用选中要查看的这条文献,按 `Shift + P`,一个的命令窗口出现了。你可以点击「高能阅读进度条」,以查看你阅读的详细时间。鼠标点击进度条,还可以快速跳转到 PDF 对应页面。 ![按下Shift + P](../../assets/images/zotero-plugin-style/zoterostyle-阅读进度条shiftp.png) ![查看每一篇文章的阅读进度条](../../assets/images/zotero-plugin-style/zoterostyle-阅读进度条shiftp具体显示.png) ::: details 点击此处了解 阅读进度条 的详细设置 右键点击 `标题` 列,选择 `列设置(标题)` 进入列设置后可以对阅读进度条进行相关的设置 * `Tags` :勾选后,Zotero 的标签会在标题前显示;或者使用[标签列](#标签) *Z6* * `Color` :阅读进度条的颜色 * `Opacity`:透明度;如果你想关闭标题进度条,可以把它拉到开头,也就是 opacity=0 * `Odd Color` :奇数行条目背景色 *Z6* * `Even Color` :偶数行条目背景色 *Z6* * `Selected Color` :选中行条目背景色 *Z6* * `Translate`:在标题上显示翻译 *Z7* ::: ### 标注(原进度) 它可以直观地表示某个项目对应的 PDF 每页的注释字数。 ![进度栏](../../assets/images/zotero-plugin-style/zoterostyle-进度栏.png) ::: details 点击此处了解 标注列 的详细设置 在`标注`列上右击,选择`列设置(标注)`,进入标注列的设置窗口。 * Zotero 7 * `Opacity`:调整 标注列 的透明度 * Zotero 6 * `Style`:显示方式 * `Color`: 颜色 * `Opacity`: 透明度 * `Circle`: ::: ### 标签 ![标签列](../../assets/images/zotero-plugin-style/zoterostyle-标签.png) 在 Zotero 6 上,Style 插件为标题列提供了一个选项,允许将标签在标题前显示,但 Style 十分鼓励打开本列显示标签,因为这种圆圆的标签十分好看,并且这一列经过像素级优化使得圆形和 Emoji 对齐(下图是对比)。 ![两种方式对比](../../assets/images/zotero-plugin-style/zoterostyle-与官方标签的对比.png) ::: details 点击此处了解 标签列 的详细设置 右键点击 `标签` 列,选择`列设置(标签)`后可以对`标签列`进行相关的设置 * `Align` 标签左对齐,还是右对齐; * `Margin` 相邻标签的间距大小; **你可能会疑问,为什么我设置了标签,但不在这里显示?** 在 Zotero 中有`普通标签`和`颜色标签`之分,只有`颜色标签`才可以在这里显示。 如果想让你的标签显示在标签列中,需要先对标签进行分配颜色,请参考 [为标签分配颜色和顺序](../organize-library.md#设置彩色标签设置星级)。 ![添加标签](../../assets/images/添加标签-添加颜色.png) ![选择标签颜色及位置](../../assets/images/选择标签颜色及位置.png) ::: ### `#标签` ![标签](../../assets/images/zotero-plugin-style/zoterostyle-标签1.png) 它的功能很简单,标签列会渲染 Emoji,但一旦涉及到文字,就会渲染成一个圆。 \#标签会显示你所输入的所有内容。但考虑到你的 Zotero 里已有海量标签,为了不让它显示所有标签,这里只会显示`#`开头的标签。 ::: details 点击此处了解 #标签 的详细设置 * `Match` :如果你会正则表达式,你可以在此尽情发挥,你也可以参考 [`getTagMatch` 源码](https://github.com/MuiseDestiny/zotero-style/blob/master/src/modules/tags.ts#L245);如果你不会,那么只需要知道: | 输入 | 含义 | | ---------- | ----------------------------------------------------------------------------------- | | `#` | 显示所有以 `#` 开头的标签,但在显示时会删除 `#`。 | | `~~/` | 显示除了以 `/` 开头的所有标签 | | `/^#(.+)/` | 使用输入的正则表达式匹配标签,`(.+)` 是实际显示的标签内容。多个 `(.+)` 将自动连接。 | * `Text` :文本颜色。如果你使用 Zotero 6 且使用 Night 或 Theme 插件提供的黑暗模式,建议设置文本颜色为白色; * `BackgroundColor`:与标签列不同,这里无论有没有身份,只要它过了 Match 这一关,都可以登上 `#标签` 的舞台,但为了美观,会分配默认背景颜色; * 其它设置可以自己尝试~ ::: ### 期刊标签 和一篇文献一样,一个期刊也是可以有很多标签来描述它的,比如 JCR 分区、中科院分区、影响因子等,这些都可以通过期刊标签实现。 ![期刊标签](../../assets/images/zotero-plugin-style/zoterostyle-期刊标签.png) ::: info 该功能的数据来源于 easyScholar,因此需要配置 easyScholar 密钥。 ::: ::: details 点击此处了解 期刊标签 的详细设置 ![期刊标签列设置](../../assets/images/zotero-plugin-style/zoterostyle-期刊标签列设置.png){width=67%} * `Secret Key`: easyScholar 密钥,见下文 * `Field`:要显示哪些期刊标签字段,见下文 * `Map`:映射,用于精简标签,支持正则。比如你想把 SCIIF(5) 显示为 IF(5),填写 SCIIF(5)=IF(5) 即可,多个映射用逗号隔开,详见下文 * `Rank Colors` :五个等级对应的颜色; * `Sort By` :超纲了,用默认就可以了,不需要深入了解; #### easyScholar 密钥 1. 密钥申请:在 easyScholar 官网首页登录后,点击右上角用户名进入后台,点击「开放接口」,即可看见[密钥](https://www.easyscholar.cc/console/user/open)。 ⚠️ 请保护好你的密钥,不要以任何方式透漏给任何人。⚠️ 2. 密钥填写:直接填写到上方 `Secret Key` 里。 如果你没有看到`Secret Key`这一项(Zotero 6 用户),那么你进入[`高级编辑器`](../misc/preference.md),在弹出的窗口中输入`easyscholar`,并搜索,双击搜索结果后,填写 easyScholar 密钥,并点击 OK。 ![密钥填写](../../assets/images/zotero-plugin-style/zoterostyle-期刊标签密钥填写.png) #### Fileds 你可以直接填写`sciif,sciBase,sci,ssci,pku,sciwarn,eii`。 这些代码分别为`JCR-影响因子-2022(2022.6.28)`、`中科院基础版`、`JCR-分区2022(2022.6.28)`、`JCR-分区2022(2022.6.28)`、`中文核心`、`中科院预警`、`EI` **当然我们更推荐根据下面链接 Publication Tags 部分介绍自行填写** | Field | Name | 来源 | | ----------------- | -------------------- | ------------------------------------------------------------------------------------------------------------------------------------------- | | ccf | | 《中国计算机学会推荐国际学术会议和期刊、中文科技期刊目录 -2019、计算领域高质量科技期刊分级目录》,数据集从高到低分为:A(T1), B(T2), C(T3)。 | | swufe | | 《西南财经大学学术期刊目录 2018》,数据集从高到低分为:A+, A, B, C。 | | cufe | | 《中央财经大学期刊目录(2019 版)》,数据集从高到低分为:AAA, AA, A。 | | ssci | | 《JCR-分区 - 影响因子 -2022(2022.6.28).pdf》,数据集从高到低分为:Q1, Q2, Q3, Q4。 | | sci | | 《JCR-分区 - 影响因子 -2022(2022.6.28).pdf》,数据集从高到低分为:Q1, Q2, Q3, Q4。 | | sciif | | 《JCR-分区 - 影响因子 -2022(2022.6.28).pdf》,easyScholar 将影响因子从 10, 4, 2, 1, 0 分为 5 个等级。 | | jci | | 《JCR-分区 - 影响因子 -2022(2022.6.28).pdf》,easyScholar 将 JCI 指数从 3, 1, 0.5, 0 分为 4 个等级。 | | sciif5 | | 由于还未收集到最新 5 年影响因子数据,所以仍沿用 2021 年的数据。easyScholar 将 5 年影响因子从 10, 4, 2, 1, 0 分为 5 个等级。 | | ahci | | 《JCR-分区 - 影响因子 -2022(2022.6.28).pdf》。该数据集只有一个等级。 | | fdu | | 《复旦大学学位与研究生教育国内期刊指导目录(2018 年 1 月修订)》,数据集从高到低分为:A, B。 | | sjtu | | 《上海交通大学 SCISCIE 论文 A 档 B 档期刊分类目录及其他刊物等级参考 (2018.5)》,数据集从高到低分为:A, B。 | | xmu | | 《厦门大学人文社科核心学术期刊目录(2017)》,该数据集只有一个等级:一类。 | | cssci | | 《CSSCI 来源期刊、扩展版目录 2021-2022》。数据集从高到低分为:CSSCI,CSSCI 扩展版。 | | ruc | | 《中国人民大学核心期刊目录 2017》,数据集从高到低分为:A+, A, A-, B。 | | cscd | | 《中国科学引文数据库来源期刊列表(2021-2022 年度)》,数据集从高到低分为:核心库,扩展库。 | | swjtu | | 《西南交通大学学术期刊分级目录(2017 年修订版)》,数据集从高到低分为:A++, A+, A, B+, B。 | | uibe | | 《对外经济贸易大学科研奖励外文核心期刊专题分类目录》,数据集从高到低分为:A, A-, B。 | | pku | | 《中文核心期刊要目总览》(2020 年版)》,该数据集只有一个等级。 | | xdu | | 《关于发布《西安电子科技大学高水平期刊目录(2021 年)》的通知》,数据集从高到低分为:一类贡献度,二类贡献度。 | | sdufe | | 《山东财经大学学术期刊分类目录》,数据集从高到低分为:特类期刊,A1, A2, B, C。 | | eii | EI 检索 | 《CPXSourceList062022.xlsx》,该数据集只有一个等级。 | | nju | | 《南京大学超一流、学科群一流、SCI A 区和 B 区期刊目录.xlsx》,数据集从高到低分为:超一流期刊(学科群一流期刊), A, B。 | | zhongguokejihexin | 中国科技核心期刊目录 | 《2021 年版中国科技核心期刊目录.pdf》, 该数据集只有一个等级。 | | cqu | | 《重庆大学人文社会科学类、自然科学类期刊分级目录》,数据集从高到低分为:A(权威期刊),B(重要期刊),C。 | | hhu | | 《河海大学高质量论文期刊及学术会议目录(自然科学类,不含计算机科学与技术、软件工程学科)》,数据集从高到低分为:A 类,B 类,C 类。 | | ajg | | 《ABS-2021.pdf》英文约 1700 种。数据集从高到低分为:4\*, 4, 3, 2, 1 | | xju | | 《新疆大学 2020 版自然科学、人文社科学术期刊目录,2021 年人文社科学术期刊调整目录》。数据集从高到低分为:一区,二区,三区,四区,五区。 | | cug | | 《中国地质大学科技类、人文社科类期刊分区总汇》。数据集从高到低分为:T1, T2, T3, T4, T5。 | | fms | | FMS 管理科学高质量期刊推荐列表 (2022) 。数据集从高到低分为:A(T1), B(T2), C, D。 | | scu | | 《四川大学 - 高质量科技期刊及学术会议分级参考方案(暂行)-2021 年 4 月.xlsx》。数据集从高到低分为:A, A-, B, C, D, E。 | | utd24 | | 《互联网公开收集》,该数据集只有一个等级。 | | ft50 | | 《互联网公开收集》 ,该数据集只有一个等级。 | | sciUp | 中科院升级版 | 微信小程序:《中科院文献情报分区中心表 2022 年 12 月最新》数据集从高到低分为 1 区,2 区,3 区,4 区。 | | sciBase | 中科院基础版 | 微信小程序:《中科院文献情报分区中心表 2021 年 12 月最新》数据集从高到低分为 1 区,2 区,3 区,4 区。 | | sciwarn | 中科院预警 | 《国际期刊预警名单 (试行)-2021.12.31》 ,该数据集只有一个等级。 | | cju | | 《长江大学自然科学高质量期刊(中国期刊)分级目录(2021 版).pdf》数据集从高到低分为 T1, T2, T3。 | | zju | | 《浙江大学国内学术期刊分级目录指南·2020 版.pdf》数据集从高到低分为国内一级学术期刊,国内一级核心期刊。 | 如果您使用的是自定义数据集,则必须找到数据集的自定义字段定义,并将其填入`Fields`部分。 #### Map 您可以通过编辑 `列设置` 中的 `Map` 字段自定义标签的显示,使用字符串或 regex 将标签替换为您所需的格式。有关 regex 语法,请参阅 [正则表达式语法](https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Guide/Regular_Expressions) 或其他教程。 每个标记都保持以下格式:`field=value`,其中,`field` 是上面才讲过的标签的字段,`value` 是要将 `field` 映射为的值,键和值之间用 `=` 隔开,每一对标记之间用半角逗号(输入法英文状态下输入) `,` 分隔。 下面是一个典型示例(可以直接抄作业): ``` SCI=, /SCIIF/=IF, EI检索=EI, /^(\d+)\.(\d{1})\d*$/=$1.$2, 北大中文核心=北核, SCIWARN=🚫, /医学(\d+)区/=医$1, /生物学(\d+)区/=生$1, /农林科学(\d+)区/=农$1, /环境科学与生态学(\d+)区/=环$1, /化学(\d+)区/=化$1, /工程技术(\d+)区/=工$1, /数学(\d+)区/=数$1, /物理与天体物理(\d+)区/=物$1, /地球科学(\d+)区/=地$1, /材料科学(\d+)区/=材$1, /计算机科学(\d+)区/=计$1, /经济学(\d+)区/=经$1, /法学(\d+)区/=法$1, /管理学(\d+)区/=管$1, /心理学(\d+)区/=心$1, /人文科学(\d+)区/=人$1, /教育学(\d+)区/=教$1, /综合性期刊(\d+)区/=综$1 ``` 也可以根据示例进行自定义: SCI: ``` SCI=, /SCIIF/=IF, ``` EI: ``` EI检索=EI, ``` Decrease decimal: ``` /^(\d+)\.(\d{1})\d*$/=$1.$2, ``` Chinese 中文检索: ``` 北大中文核心=北核, ``` Chinese Academy of Sciences (CAS) warnings 中科院预警: ``` SCIWARN=🚫, ``` CAS quartiles 中科院分区升级版: ``` /医学(\d+)区/=医$1, /生物学(\d+)区/=生$1, /农林科学(\d+)区/=农$1, /环境科学与生态学(\d+)区/=环$1, /化学(\d+)区/=化$1, /工程技术(\d+)区/=工$1, /数学(\d+)区/=数$1, /物理与天体物理(\d+)区/=物$1, /地球科学(\d+)区/=地$1, /材料科学(\d+)区/=材$1, /计算机科学(\d+)区/=计$1, /经济学(\d+)区/=经$1, /法学(\d+)区/=法$1, /管理学(\d+)区/=管$1, /心理学(\d+)区/=心$1, /人文科学(\d+)区/=人$1, /教育学(\d+)区/=教$1, /综合性期刊(\d+)区/=综$1, ``` ::: ### 评级 当您选择一个项目时,项目的评级会转换为等待状态,例如 5 分。然后您可以单击来快速完成您的评分。 该功能比 Endnote 更灵活、易用且支持自定义。支持滑动,点击一次即可完成评级,非常方便。 ![评级](../../assets/images/zotero-plugin-style/zoterostyle-评级.png){width=50%} ::: details 点击此处了解 评级列 的详细设置 右键点击 `评级签` 列,进入列设置后可以对`评级列`进行相关的设置 * `Selected Star`:达到等级时所使用图标。 * `UnSelected Star`:未达到等级时的图标 * `Padding`:图标的间隔距离 你可以在任意 emoji 网站上复制你喜欢的 emoji 表情到这里来,DIY 你的个性评价列。 以上图为例,`Selected Star` 为 `⭐`,`UnSelected Star` 为 `🌙`,图中所选的评级为 3 级,则显示 `⭐⭐⭐🌙🌙`。 在旧的插件版本上(Zotero 6),设置项有些不同: * `Mark`:同 `Selected Star` * `Option`:同 `UnSelected Star` * `Color`:可以设置文本的颜色 * `Size`: Emoji 的大小 ::: ### 创建者 Zotero 支持显示创建者列,但仅能显示第一作者,如「Polygon et al.」,「张三 等」。 通过 Style 你可以自定义作者的显示,使其显示末尾作者(很多情况下,末尾作者是我们较为关注的通讯作者)。 ::: details 点击此处了解 创建者列 的详细设置 右键点击 `创建者签` 列,进入列设置后可以对`创建者列`进行相关的设置 * `Format`:显示的格式,支持的变量包括`lastName`、`firstName`和`firstCreator` 你需要注意的是,使用这些变量要用`${变量}` 的形式使用 * `Slices` JS 的切片,多个用`,` 隔开,不理解没关系,请看下面的示例 `Join` 多个作者如何链接; 假设一篇文献的作者是:老大,老二,老三,老四,老五,老六 \*\*示例 1:\*\*只显示前两个作者,如:老大、老二 ![创建者示例](../../assets/images/zotero-plugin-style/zoterostyle-创建者示例1.png){width=50%} 这里的 slices 填写了`0:2`,意思是所有作者里,我只显示第 0 个,第 1 个。因为 JS 里索引从 0 开始,翻译过来就是只显示第 1、2 个作者。 并用 Join 里的逗号隔开。 示例 2:只显示第二个作者,如:老二 ![创建者示例](../../assets/images/zotero-plugin-style/zoterostyle-创建者示例2.png){width=50%} 这里的 slices 填写了 1:2,表示显示第 1 个和…没了(因为是左闭右开的区间),只显示第一个。翻译过来就是只显示第 2 个作者。 示例 3:只显示第一个和最后一个作者,如:老大、老六 ![创建者示例](../../assets/images/zotero-plugin-style/zoterostyle-创建者示例3.png){width=50%} 可以发现,slices 是支持多个索引的。 在内部多次索引的结果用`concat`函数连接。 ::: ### 简记 * 在这里,你可以对这篇文章做一个粗略的标记,以方便下次对文献进行查找定位 * 你也可以使用 GPT 插件实现 快速 AI 生成简记(重要:使用该功能需要 GPT 插件>=0.5.0) ![GPT 自动生成简记](../../assets/images/zotero-plugin-style/zoterostyle-AI简记.png) ![GPT 指令](../../assets/images/zotero-plugin-style/zoterostyle-AI简记命令.png) ### 阅读时间/阅读时间列 单位:`分钟` ![阅读时间](../../assets/images/zotero-plugin-style/zoterostyle-阅读时间.png) ### 已读/未读状态 Style 提供了单独的阅读状态列来方便对文献的阅读状态进行区分,未读的论文以粗体显示,已读的论文不加粗。这与 RSS 中的阅读按钮相同。 如何标记? | 场景 | 示例 | | --------------------------- | ----------------------------------------------------------------------------- | | Zotero 项目面板(插件功能) | ![image](../../assets/images/zotero-plugin-style/zoterostyle-阅读标记.png) | | Zotero RSS (Zotero 功能) | ![image](../../assets/images/zotero-plugin-style/zoterostyle-rss阅读标记.png) | ### 状态 Zotero 里经常需要标记文献阅读状态,比如`在读`,`已读`等。并且每个人标记的状态描述不一样。 借助 Zotero 的标签系统,`#开头的标签`视为`嵌套标签`,在`状态功能`之前就有很多人用`/read`,`/unread`作为阅读状态标记。所以 `状态`功能 设定斜杠`/`为标记开头。 所以你只需要为 Zotero 里一篇文献打上一个以`/`开头的标签,然后在 Zotero 整个软件的左下角标签里右键这个斜杠`/`开头标签指派颜色即可。 你也可以选中刚刚添加斜杠/标签的文献按 `shit+p` 然后点击标签,进去输入颜色代码即可,比如#03764。重复创建多个这样的标签,并指派颜色。 点击文献的状态标签,还在多个状态之间自由切换。 ![状态](../../assets/images/zotero-plugin-style/zoterostyle-状态.jpg) ## 视图组 由于许多插件可能会扩展 Zotero 的列,但由于屏幕尺寸的原因常常受到限制,这时我们经常需要频繁地显示/隐藏列,通过`视图组`可以更方便快捷的切换不同的 列组。 比如,有时候,你只想看`标题`和`标签`,那么你可以先将其它列取消勾选,然后点击新增视图(例如,命名`视图1`),填写一些基本信息即可完成创建一个视图。类似的,如果你想看`进度`,你可以勾选进度,再创建一个视图。当你切换到`视图1`的时候,你的列会自动切换成`标题`和`标签`列。灵活使用`视图组`功能,可以大大提高你的效率。 ![视图组](../../assets/images/zotero-plugin-style/zoterostyle-视图组.png) 此时,在这里会出现几个点点,通过点击,你可以快速切换不同的识图。 ![视图组切换](../../assets/images/zotero-plugin-style/zoterostyle-视图组切换.png) ::: details 点击此处了解 视图组 的详细设置和使用方法 ![添加视图组](../../assets/images/zotero-plugin-style/zoterostyle-添加视图组.png){width=50%} 当你添加`视图组`的时候,可以通过`Name`来命名你的视图,同时你可以在`Content`内写下各种内容,还可以通过`Position`对`视图组(圆点)`的顺序进行调整(圆点顺序依次是 默认视图 → 1 → 2 → .....) ![视图组切换](../../assets/images/zotero-plugin-style/zoterostyle-视图组切换.png) 此时,在这里会出现几个点点,这里点点的颜色,是唯一没有提供颜色定义的。使用鼠标可以进行一系列操作。 | 操作 | 目标 | 执行 | | -------- | --------------- | ---------------- | | 左键单击 | 一个视图 | 切换至指定视图 | | 左键长按 | 一个视图 | 升级指定视图数据 | | 右键单击 | 一个视图 | 删除指定视图 | | 右键长按 | `添加视图` 按钮 | 保存当前视图 | ::: ## 标注 通过 Style 你可以 自定义`标注`的`颜色`和`名字` ![文献标注](../../assets/images/zotero-plugin-style/zoterostyle-文献标注1.png) ::: details 点击此处了解 标注 的详细设置 你可以通过`Shift+P`,点`标注`进入标注的自定义列表。 * `左键单击`:切换不同的标注方案 * `左键单击方案名称`:修改方案名称 * `长按`:修改已有标注。 * 点击`+`:添加新的标注方案。 * `长按颜色区域`:删除标注方案 ![添加标注方案](../../assets/images/zotero-plugin-style/zoterostyle-添加标注方案.png) 通过`长按`你可以进入方案详情,在这个界面你可以修改 标注 的`颜色`和`名称`,同时你可以添加新的颜色来 DIY 你的个性标注。 ![自定义标注](../../assets/images/zotero-plugin-style/zoterostyle-自定义标注.png) 修改好标注,回到文献阅读界面,你就可以看到修改后的`标注颜色`以及`颜色名称`。 ![文献标注 1](../../assets/images/zotero-plugin-style/zoterostyle-文献标注.png) ![文献标注 2](../../assets/images/zotero-plugin-style/zoterostyle-文献标注1.png) ![文献标注 3](../../assets/images/zotero-plugin-style/zoterostyle-文献标注2.png) ::: ## 嵌套标签 嵌套标签可以重新分类您的 Zotero 项目。它可以在某种程度上取代 Zotero 的收藏。 ![嵌套标签](../../assets/images/zotero-plugin-style/zoterostyle-嵌套标签.png){width=50%} 你可以在插件提供的`嵌套标签视图`和 Zotero 本身提供的`标签视图`之间轻松切换。 | 嵌套标签 | Zotero 标签 | | ------------------------------------------------------------------------------- | --------------------------------------------------------------------------- | | ![嵌套标签](../../assets/images/zotero-plugin-style/zoterostyle-nestedtags.png) | ![标签](../../assets/images/zotero-plugin-style/zoterostyle-zoterotags.png) | 和 Zotero 自带的标签视图一样,它可以定位,不仅是定位条目,甚至可以定位 PDF 里某一页的某一段落的某一句话的标注。 你可以通过`嵌套标签`索引 Zotero 里的任何的东西,包括但不仅限于条目 PDF 段落,笔记,附件等各种。 ![条目添加嵌套标签](../../assets/images/zotero-plugin-style/zoterostyle-嵌套标签条目.png){width=50%} ![注释添加嵌套标签](../../assets/images/zotero-plugin-style/zoterostyle-嵌套标签注释.png){width=50%} 它是配合`#标签列`使用的,它所显示的标签与`#标签的列`设置的 Match 息息相关。 ::: details 删除标签 ⚠️ 注意:**删除标签**操作无法撤销!!!在进行此操作前,请认真考虑!!!!⚠️ ![删除标签](../../assets/images/zotero-plugin-style/zoterostyle-deletetag.png) ::: ::: details 点击此处了解 嵌套标签 的详细使用方法 | 操作 | 目标 | 执行 | | -------- | -------- | ---------------------------------------------------------------------------- | | 左键单击 | 操作图标 | ![image](../../assets/images/zotero-plugin-style/zoterostyle-leftclick.png) | | 左键单击 | 标签 | ![image](../../assets/images/zotero-plugin-style/zoterostyle-leftclick1.png) | | 右键单击 | 标签 | ![image](../../assets/images/zotero-plugin-style/zoterostyle-rightclick.png) | ::: ## 全文翻译(仅支持 Zotero 7) 通过 Style 可以实现英文文献的全文翻译,提高学习效率。 ![全文翻译](../../assets/images/zotero-plugin-style/zoterostyle-全文翻译.png) 需要注意的是 `全文翻译` 只有文字部分,你可以搭配[Zotero Figure](https://github.com/MuiseDestiny/zotero-figure)来使用 ::: details 点击此处了解 全文翻译 的详细使用方法 选中一篇英文翻译后,你可以通过`Shift+P`,点`全文翻译`来对一篇文献进行翻译。 ![选中即可进行全文翻译](../../assets/images/zotero-plugin-style/zoterostyle-进行全文翻译.png) ![全文翻译 ing](../../assets/images/zotero-plugin-style/zoterostyle-全文翻译ing.png) ![全文翻译存储在条目下](../../assets/images/zotero-plugin-style/zoterostyle-全文翻译的存储.png) 在全文翻译界面,你可以通过`Shift+P`,点`全文翻译`来实现 `原文的显示/隐藏`。 ![显示隐藏全文](../../assets/images/zotero-plugin-style/zoterostyle-显示隐藏全文.png) ::: ## 关系图谱 由 Obsidian 源代码渲染的 Obsidian 非交互图。它可以直观地显示项目的相关项目。你可以从关系图谱(`点击`)定位 Zotero 项目,也可以从 Zotero 项目(`ctrl+点击`)定位关系图谱节点。 ![关系图谱的使用](../../assets/images/zotero-plugin-style/zoterostyle-关系图谱的使用.gif) 在文库中,你可以选择多个条目快速将他们关联起来。 ![关联快速建立](../../assets/images/zotero-plugin-style/zoterostyle-关联快速建立.png) ::: details 点击此处了解 关系图谱 的详细设置和使用方法 ![关系图片的设置](../../assets/images/zotero-plugin-style/zoterostyle-关系图谱.png) ::: ## PDF 背景色 在 PDF 阅读时,你可以通过切换 PDF 背景色 来让你的阅读更加舒适。 在 PDF 阅读界面`单击🎨`可以添加 新的 PDF 样式。 `长按`可编辑 已经保存 PDF 样式。 ![PDF 背景色](../../assets/images/zotero-plugin-style/zoterostyle-pdf背景色.png) ::: details 点击此处了解 PDF 背景色 的详细设置和使用方法 ![pdf 背景色 1](../../assets/images/zotero-plugin-style/zoterostyle-pdf背景色1.png) ![背景色自定义](../../assets/images/zotero-plugin-style/zoterostyle-pdf背景色自定义.png) 如果你不喜欢背景色,你也可以在 首选项 中关闭这个功能 ![背景色功能开关](../../assets/images/zotero-plugin-style/zoterostyle-pdf背景色功能开启.png){width=67%} ::: ## 插件配置导入/导出 通过这个功能你可以快速导入/导出 Zotero 中所有插件的相关配置。 ![插件配置的导入导出](../../assets/images/zotero-plugin-style/zoterostyle-插件配置的导入导出.png) ## 文献信息面板 Zotero 本身的文献信息,包含所有字段,并非所有字段都很重要,看起来非常混乱。 Style 参考 ResearchGate、SemanticScholar、Readpaper 的排版,为 Zotero 设计了一个全新的文献信息面板。 ![文献信息面板](../../assets/images/zotero-plugin-style/zoterostyle-文献信息面板预览.png) **特色功能** 1. 摘要标题,`Ctrl+点击`翻译为中文(需要安装 translate 插件) 2. 摘要更易读 3. 通过`Open in`可以快速查看大型数据库对文献的展示,比如 ResearchGate 会展示文献的参考文献和引用文献的文献,以及引用时的上下文。这对某一研究领域探索性研究很有帮助 4. 展示笔记预览,展示 PDF 标签预览 5. 显示期刊标签、被引数标签和#标签 ::: details 点击此处了解 文献信息面板 的更多使用方法 ![文献信息面板](../../assets/images/zotero-plugin-style/zoterostyle-文献信息面板.png) ![文献信息面板](../../assets/images/zotero-plugin-style/zoterostyle-文献信息面板2.png) ![文献信息面板](../../assets/images/zotero-plugin-style/zoterostyle-文献信息面板1.png) 如果你不喜欢 文献信息面板,你也可以在 首选项 中关闭这个功能 ![文献信息面板开启](../../assets/images/zotero-plugin-style/zoterostyle-文献信息面板开启方法.png){width=67%} ::: ## 阅读记录 ![阅读记录](../../assets/images/zotero-plugin-style/zoterostyle-阅读记录.png) ::: details 点击此处了解 阅读记录 的详细设置和使用方法 首选项将`Read Status`取消勾选以关闭该 UI ![alt text](../../assets/images/zotero-plugin-style/zoterostyle-阅读记录1.png) ::: ## 笔记预览(仅支持 Zotero 6) 你不需要展开一个文献条目,点里面的笔记,然后查看笔记内容了 预览笔记不可编辑,点击进入编辑模式 笔记预览功能需要配合 Better Notes 插件 ![笔记预览](../../assets/images/zotero-plugin-style/zoterostyle-笔记预览1.png) ![笔记预览](../../assets/images/zotero-plugin-style/zoterostyle-笔记预览2.png) Zotero 的标注储存在 PDF 条目,可以不打开直接读取,这一特性提供了基于标注的无限可能。 单击复制,双击打开 PDF 并定位到标注 **Ctrl + 鼠标滚轮放大缩小** ![放大笔记](../../assets/images/zotero-plugin-style/zoterostyle-笔记预览放大缩小.png) ## 快速过滤(仅支持 Zotero 6) 通过点击代表物品类型的图标,可以完成物品类型的快速过滤。并重复上述过程即可退出过滤。请注意,此过滤对所有集合都有效。但当你切换到类别过滤项为空时它会自动退出。 ## 记录时间间隔设置 Style 之所以可以可视化阅读时间,是因为内置了一套记录阅读时间的功能。 然而这个记录很影响计算机浏览一个 PDF 的刷新度,包括 Zotero 的刷新度,在设置的时候建议不低于 5s。 当然你也可以设置一个小于 0 的数字,这也意味着你不需要阅读时间可视化功能,也就是关闭记录功能,。 ## Tab Manager(Pro 高级版功能) 1. 当你打开很多选项卡的时候,要求需要一个竖向已打开文献视图; 2. 当你研究某个领域、背景、方法时,经常打开多篇文献对比阅读,这些已被打开的文献是值得被记忆的; 3. 从已打开的 PDF 里快速切换,您可以看到标题、作者、年份等更多信息 ![选项卡管理](../../assets/images/zotero-plugin-style/zoterostyle-tabmanager1.png){width=67%} ![选项卡管理](../../assets/images/zotero-plugin-style/zoterostyle-tabmanager2.png){width=67%} ![选项卡管理](../../assets/images/zotero-plugin-style/zoterostyle-tabmanager开启方法.png){width=67%} --- --- url: /user-guidefeed.md --- # Feed RSS Feed 是发现新研究的好方法。通过 Feed,您可以订阅来自期刊、网站、出版商、机构、研究小组或其他来源的更新,并快速查找新文章或作品。如果您在出版物的提要中找到想要保存并进一步阅读的项目,只需单击按钮即可将其添加到您的 Zotero 库中。 * 追踪期刊目录更新 * 追踪数据库中某些「关键词」相关的文献更新情况 * 订阅任意网站的内容更新,例如 b 站 up 主的视频更新... ## Zotero 订阅设置 ### 新建订阅 #### Zotero 7 在 Zotero 主界面,左上角工具栏选择 文件 - 新建文献库 - 新建订阅 - 从网址... ![Zotero 7 新建订阅](../assets/images/feed-新建订阅-z7.png) #### Zotero 6 在 Zotero 主界面,左上角工具栏选择 ![群组 icon](../assets/images/feed-1.png) - 新建订阅 - 从网址... ![Zotero 6 新建订阅](../assets/images/feed-2.png) 之后会弹出以下窗口 ![输入网址](../assets/images/feed-3.png) 在网址栏填入订阅网址(如何获取请往下拉),Zotero 识别成功之后会自动填入标题(可以自己手动更改,**Zotero 不会根据期刊订阅先后给订阅的期刊排序,可以手动在期刊名前面加上 1234 或者字母来排序**)并且进行高级选项设置,保存之后即可在主界面左侧`订阅`处看到订阅的内容及更新。 ![订阅条目列表](../assets/images/feed-5.png) ### 订阅来源 **从网址订阅:**"从网址订阅"是最直接、最方便的添加 RSS 订阅的方式,只需要提供订阅源的链接即可,是我们用 Zotero 追踪期刊更新时最常用的方式,**以下涉及的实例也将基于此方式进行。** **OPML 订阅**:"来自 OPML"主要用于之前有使用其它 RSS 阅读器,从其它阅读器中导入已经订阅的内容至 Zotero 中,**一般用户很少涉及此方式,故不过多介绍。** ### 高级选项 ![高级选项](../assets/images/feed-6.png) 「更新订阅每 N 小时」:即设定订阅间隔,每 N 个小时从订阅 URL 爬取期刊目录,加载在该「订阅」界面。如果 N 设置为 24,则每 24 小时会刷新一遍订阅,订阅界面会 24 小时加载一次期刊目录,如果有内容更新,就会加载出现在 Zotero 订阅界面。 「删除**已读**提要题目于之后 N 天」:即点击了该条目查看右侧的条目详细信息(Zotero 会自动设置为"已读"状态)N 天后在期刊订阅界面删除该条目,如果不想删除已读条目,则将 N 设置为一个较大的数值,例如 1000000。 「删除**未读**提要条目于之后 N 天」:即该条目一直处于未点击查看该条目的具体信息,N 天后在期刊订阅界面删除该条目。如果不想删除未读条目,则将 N 设置为一个较大的数值,例如 1000000。 以上三项订阅参数的默认设置入口(Zotero7): Win:编辑 - 设置 - 高级 - 订阅 Mac:Zotero - 设置 - 高级 - 订阅 在此设置页面中,可以设置对订阅的条目按"最早条目在先" / "最新条目在先"的排序。 ![订阅设置](../assets/images/feed-7.png) ### 从"订阅"添加文献条目到"我的文库"/"群组文库" Zotero 的订阅内容并不会保存在个人文库中,也不可以直接引用"订阅"中的条目,因此需要引用则需要将其添加到"我的文库"(也可以共享到群组文库) ![添加到文库](../assets/images/feed-8.png) 点开 Zotero 某一期刊/RSS 订阅内容,点击具体条目,看到右侧信息栏,点击![添加到文库 icon](../assets/images/feed-9.png) 中的 ▽ 倒三角图标,选择你想要保存到的本地文库文件夹 📂/在线群组文件夹 📂,再点击"添加到 XXXX",即可从订阅中添加到自己的文献库/某个群组文库中(可以同时添加到若干个文库)。 ### 订阅界面右键功能介绍 > 在订阅界面点击某个具体的订阅期刊,右键即可出现以下菜单选项 ![订阅右键菜单](../assets/images/feed-10.png) > **更新订阅**:除了 Zotero 自动按照订阅某期刊时"高级选项"的更新选项去更新订阅外,手动更新订阅,如有最新内容则自动加载到右侧具体条目面板中 > > **标记订阅为已读**:Zotero 订阅界面中未读的期刊/具体文献条目将会**加粗**显示,点击该选项将会**设置该期刊所有内容为已读状态,取消加粗显示。** > > **编辑订阅**:回到"**2、高级选项**"中的设置界面,可以更改某一个期刊的高级选项,便于进行个性化订阅设置。 > > **退订订阅**:即从订阅面板删除该订阅期刊,会有确认取消窗口避免误删,请慎重选择! ## 订阅网址(RSS 链接)获取 ### 中文期刊订阅------以知网、万方数据库为例 #### 知网 进入 [知网期刊导航界面](https://navi.cnki.net/knavi/journals/index?uniplatform=NZKPT),在「搜索框 🔍」输入想要订阅的「中文期刊全称」,并点击「出版来源检索」> ![知网搜索期刊](../assets/images/feed-11.png) 在搜索结果界面,点击进入期刊页面 ![知网搜索期刊](../assets/images/feed-12.png) 在期刊主页左上角找到并点击「RSS 订阅」 ![知网创建 rss](../assets/images/feed-13.png) 复制浏览器地址栏中的网址 ![知网复制地址](../assets/images/feed-14.png) 在复制网址后,你会得到类似 `https://navi.cnki.net/knavi/rss/SHXJ` 的链接。由于 Zotero 无法识别该链接,需要将网址中的 `navi.cnki.net` 修改为 `rss.cnki.net`,即修改为`https://rss.cnki.net/knavi/rss/SHXJ` 。修改完成后,按照[新建订阅](./feed.md#新建订阅)步骤填入并设置即可。 ![Zotero 订阅知网](../assets/images/feed-订阅知网.png) #### 万方数据库 进入[万方智搜](https://c.wanfangdata.com.cn/periodical)()界面,在「搜索框 🔍」输入想要订阅的「中文期刊全称」,并点击「搜期刊」 ![万方搜期刊](../assets/images/feed-15.png) 进入搜索结果界面点击期刊名称 ![万方](../assets/images/feed-16.png) 进入期刊主页后,找到页面中部的「feed 订阅」选项,点击「rss 订阅」 ![万方](../assets/images/feed-17.png) 跳转如下页面后,浏览器地址栏的网址即 RSS 订阅链接,复制浏览器地址栏中的网址,进入 Zotero,按照"一、Zotero 订阅设置"步骤填入并设置即可。 ![万方](../assets/images/feed-18.png) ### 英文期刊订阅 一般而言英文期刊/数据库都在期刊页面提供了 RSS 订阅选项,只需要找 RSS 图标![RSS 图标](../assets/images/feed-19.png) ,即可获取订阅网址(RSS 地址) 打开 Annual Review of Psychology 网页,找到右上角的 RSS feed ![RSS 图标](../assets/images/feed-19.png) 符号,点击打开 ![Annual Review of Psychology](../assets/images/feed-20.png) 打开之后如下图示,复制浏览器地址栏的网址,即 RSS 地址,进入 Zotero,按照"./feed.md#如何订阅"步骤填入并设置即可。 ![复制链接](../assets/images/feed-21.png) ### 关键词订阅(PubMed 为例) 打开 [PubMed](https://pubmed.ncbi.nlm.nih.gov/) 官网,在搜索栏输入你想追踪的文献关键词,例如"heat wave",点击搜索 ![PubMed](../assets/images/feed-22.png) 如下图示,点击搜索框下面的"Create RSS",进入该关键词订阅的设置界面 ![PubMed 订阅](../assets/images/feed-23.png) 在设置界面,修改为合适"Number of items displayed"(追踪的文献条目数量),点击"Create RSS",生成"RSS Feed link"后点击 copy,将其按照"一、Zotero 订阅设置"的方法填入 Zotero,即可订阅追踪该关键词的相关文献进展。 ![PubMed 修改数量](../assets/images/feed-24.png) ### 配合 RSSHub Radar 订阅任意网站内容 RSSHub Radar 是 [RSSHub](https://www.appinn.com/rssbud-with-rsshub-for-ios/) 的衍生项目,用来快速发现当前网页的 RSS 地址,如果支持 RSSHub 则显示 RSSHub 地址,支持包括**Zotero**、 [Tiny Tiny RSS](https://www.appinn.com/tiny-tiny-rss/)、[Follow](https://follow.is/)、[FreshRSS](https://www.freshrss.org/)、[Feedly](https://feedly.com/)、[Inoreader](https://www.inoreader.com/) 在内的 11 款阅读器一键订阅。 主要功能: * 快速发现和订阅当前页面自带的 RSS * 快速发现和订阅当前页面支持的 RSSHub * 快速发现当前网站支持的 RSSHub * 支持一键订阅 RSS 到 Tiny Tiny RSS、Miniflux、FreshRSS、Feedly、Inoreader、Feedbin、The Old Reader、Feeds.Pub、本地阅读器一旦检测出 RSS 地址,RSSHub Radar 就会在角标上显示出数量。 RSSHub Radar 浏览器扩展下载与安装(含教程):GitHub 主页、Gitee 镜像主页、RSSHub Radar 与 Zotero 联动。 ![bili 为例](../assets/images/feed-25.png) 打开你想关注的 UP 主(以 sharestuff 为例),点击浏览器右上角的 RSSHub Radar 插件图标 ![RSSHUB 订阅 bili](../assets/images/feed-26.png) 选择所需要订阅的内容,点击"复制",进入 Zotero 进行 URL 订阅即可。 ::: tip 有些网站的规则可能不支持 RSSHub Radar,如果 Radar 没有识别到适合当前页面的规则,可以在 [RSSHub 文档](https://docs.rsshub.app/zh/guide/) 查找相关的订阅规则。 ::: ## 订阅功能常见问题及解决方法(更新中) 1、**填入网址后不能自动识别与保存的解决方法**:检查或更换网络,重启 Zotero 后第一时间进入订阅填入网址,能够自动识别并填充标题即可成功订阅;部分网址需要在科学网络的情况下才能识别成功,如遇外网期刊订阅无法保存时,需要保证自己的网络足够科学。 2、**订阅间隔设置不当导致的条目重复问题**:在 Zotero6 中该问题较为常见,尚未完美的解决方案,只能根据期刊更新周期设定订阅间隔。例如《社会学研究》为双月刊,建议从其发刊日时添加订阅,N 设定为 2X30X24 小时。某些 Zotero 版本,如果高级选项的「更新订阅每 N 小时」中 N 设置为 24,则每 24 小时会刷新一遍订阅,订阅界面会 24 小时加载一次期刊目录,导致期刊「订阅」界面出现重复文献条目。 --- --- url: /plugin-dev-guidereferencelocalization.md --- # i18n `locales/` ::: info Todo Zotero 7 已全面使用 Fluent 作为本地化系统,请参考以下几个文档: * [Zotero 7 for developers](https://www.zotero.org/support/dev/zotero_7_for_developers#localization) * [Fluent for Firefox Developers](https://firefox-source-docs.mozilla.org/l10n/fluent/tutorial.html#markup-localization) * [Fluent 文档](https://projectfluent.org/) ::: --- --- url: /user-guidepluginslinter.md --- # Linter for Zotero 这个插件用来规范条目的字段数据,以在引用参考文献的时候可以生成正确的、规范的参考文献表。 ## 重复条目检查 当新增条目时,插件自动检查该条目是否与库中已有条目重复,若有重复,则提示用户确认。 ## 快速设置上下标、粗体和斜体 Zotero 的参考文献表中的富文本内容需要手动插入 HTML 标签来实现(详见 [^rich\_text\_bibliography][^rich_text_bibliography]),这对于不爱折腾的人来说非常麻烦,虽然 Zotero 的文档上提及将在后续版本支持富文本可视化编辑,然而数年过去了,该议题没有任何进展,故本插件提供了快捷插入这些 HTML 标签的途径。 [^rich_text_bibliography]: https://www.zotero.org/support/kb/rich_text_bibliography ### 快捷键 选中文本后,按下以下快捷键快速应用相应样式: * 上标:`Ctrl` + `Shift` + `+` * 下标:`Ctrl` + `=` * 粗体:`Ctrl` + `B` * 斜体:`Ctrl` + `I` * 阻止大写:设置 `class="nocase"` 阻止某些专有名词在 CSL title case 时被大写 注:这些快捷键与 Word 中相应快捷键一致。 ### 工具条 编辑「标题」字段时,弹出工具条,编辑完成后单击空白处可以自动关闭工具条。该工具条可以在首选项中彻底关闭。 ## 将标题转为「句首大写」 Zotero 文档建议将标题存储为「句子式大写」的格式,这将有利于 CSL 对其执行「title case」变换 [^sentenceCase]。Zotero 7 内置了将标题转为「句子式大写」的功能,预置了一些特例识别,本插件在其基础上,增加了针对化学式等的专有名词识别。 [^sentenceCase]: https://www.zotero.org/support/kb/sentence_casing 注意本插件只修改 Zotero 库中的大小写,而后续输出的大小写还取决于 CSL、[Better BibTeX](./better-bibtex.md#title-case) 等。 ## 期刊及其期刊缩写 对于期刊标题,插件将使相同的期刊统一。 插件内置了一个包含约 10 万条期刊缩写的数据集(来自 JabRef 和 Woodward Library),插件将首先在本地数据集里查询期刊缩写; 若无则根据 [ISSN List of Title Word Abbreviations](https://www.issn.org/services/online-services/access-to-the-ltwa/) 推断其缩写(可在首选项中关闭此行为); 若仍没有找到缩写,则以期刊全称代替(可在首选项中关闭此行为)。 ## 根据高校名称填写高校所在地 插件内置了国内高校的名单及其所在地,对于学位论文条目,根据论文的高校填写其所在地,这有利于满足 GB/T 7714-2015 中需要显示出版地的要求 [^gb7714]。 [^gb7714]: http://www.cessp.org.cn/a258.html ## 根据标识符补全条目的期、卷、页等信息 部分条目在添加时可能因为转换器未获取到、录入时未正式见刊等原因,导致期卷页等信息不完整,插件提供了根据 DOI 补全这些字段的功能。 对于书籍,可通过 ISBN 更新数据。预印本支持转为期刊文章(若有)。 ## 自动填写条目语言 插件根据条目的标题判断其语言,并将识别结果填入「语言字段」,这对于 CSL 完成参考文献表双语排版(如 et al 与 等 混排)非常重要。[^csl-etal]。 默认的,插件被限制仅识别简体中文和英文,你可以在首选项中关闭语言限制或添加其他常用语言的 [ISO 639-1 代码]。 [^csl-etal]: https://github.com/redleafnew/Chinese-STD-GB-T-7714-related-csl#%E5%A6%82%E4%BD%95%E4%BD%BF%E7%94%A8 [ISO 639-1 代码]: https://github.com/komodojp/tinyld/blob/develop/docs/langs.md --- --- url: /csl-dev-guidetranslating-locale-files.md --- # Locale File > \[!warning] > 此页面正在施工中。 ## 前言 ​ 这篇文档描述了如何帮助改进 CSL 样式的语言支持,主要是将 CSL locale file 翻译为需要的语言。 ​ 用户总是会选择一个特定的语言环境或者 CSL 语言环境,例如:"British Psychological Society" 的 CSL 样式将会生成英式英语的引文和参考文献目录,中国使用的国标将会生成中文的引文和参考文献目录(可以有英文条目)。在使用的语言环境不是 CSL 定义的语言环境时,使用 Locale file 就会实现自动的本地化。 ​ 所有的 CSL 样式,都依赖于 locale file,这些本地化文件中包含了本地化数据,用来指定引文和参考文献目录中的术语,日期格式和语法规则怎么本地化。在单独的本地化文件保存这些数据,而不是在 CSL 样式文件中(尽管 CSL 样式文件中可以使用 `cs:locale` 元素对本地化文件中的设置进行覆盖),有很多好处:1. 本地化更加容易维护;2. 样式文件更加的紧凑; 3. 样式可以是语言无关的。 ​ 下面,我们将描述本地化文件的结构,给出如何转换所有部分的指示,并且解释如何提交这些转换。如果想获得更多的有关本地化的信息,可以查看 [CSL 规范](./specification.md)。 ## 开始 ​ CSL 本地化文件在 GitHub 的仓库地址为。 ​ 每个本地化文件都包含一种对应语言的本地化数据。本地化文件的名字为 "locales-xx-XX.xml",这里的 "xx-XX" 是 [BCP 47 langues code 语言代码](http://people.w3.org/rishida/utils/subtags/) 中的一种。这个 [GitHub wiki 仓库](https://github.com/citation-style-language/locales/wiki) 列出了本地化 code,对应的语言和该仓库中储存的所有语言环境的软换状态(是否完成,或在制作中)。 ## 转换 Locale Files > todo --- --- url: /user-guidepluginsmagic.md --- # Magic for Zotero Magic for Zotero 是一款付费的全文翻译插件,不过你可以免费七天[全功能试用](https://magiczotero.feishu.cn/wiki/T45PwelQai7e1wkvGMNcXMIZnFe?fromScene=spaceOverview)。 ## 视频资料 ### 简单介绍 ### 详细视频说明 以上视频转载自 B 站 UP 主:[想给星星取名字](https://space.bilibili.com/36192808)。 ## 使用文档 详细使用文档请参考:[Magic for Zotero 文档](https://magiczotero.feishu.cn/wiki/X1hbwUoWtiI9Ybk7zIpcmgnHnIe?fromScene=spaceOverview)。 --- --- url: /blog/posts/english-version-for-plugin-market.md --- # The Plugin Store is Now Available in English Hi everyone, We are thrilled to see that the Zotero Plugin Store, maintained by our Chinese community, has become a valuable resource for so many users—including many from non-Chinese speaking regions. Since the official Zotero plugin gallery is still under development, we wanted to bridge the gap and make it easier for international users to discover and download plugins. To that end, we have officially launched an **English version** of the Plugin Store. **Key Details:** * **Scope:** Scope & Availability: Currently, English support is limited to the **store’s homepage** and **core index pages**.\ Please be aware that since we have not finished translating the entire site, accessing untranslated pages may result in a 404 error. * **Language Switcher:** You can manually toggle between languages using the **"文/A"** icon located in the top-right corner of the page. * **Auto-Detection:** The site will now automatically detect your browser’s language settings and suggest the appropriate version. *** In Chinese Zotero 插件商店英文版正式上线 大家好! 很高兴看到由中文社区维护的「Zotero 插件商店」为众多同学提供了便利。我们注意到,除了中文用户,许多来自非中文母语国家的同学也在使用我们的服务。 鉴于 Zotero 官方插件商店仍处于开发阶段,为了在过渡期间更好地帮助全球用户发现和下载插件,我们正式推出了**插件商店的英文版本**。 **说明:** * 目前仅**插件商店主页**及相关**索引页**提供英文支持,其他页面暂无多语言计划。请注意:由于我们尚未完成全站翻译,访问部分未翻译页面可能会显示 404 错误。 * **语言切换:** 您可以点击页面右上角的 **「文/A」** 图标手动切换。 * **自动识别:** 网站现在支持检测浏览器语言,并会根据您的设置引导至相应的语言页面。 --- --- url: /user-guidepluginszotero-scihub.md --- # SciHub ## 插件介绍 这是 Zotero 的一个插件,会自动从 Sci-Hub 上为带有 DOI 的条目自动下载 PDF 格式的论文文件。 对于您在安装此插件后添加的任何新论文,将会在后台从 Sci-Hub 上自动下载对应的论文,并附加到 Zotero 中对应的条目下。 * Zotero SciHub 插件的 GitHub 地址: * 适配 Zotero 6: * 适配 Zotero 7: * 插件下载:[Zotero 插件中文镜像](/plugins/#search=sci-hub) * Sci-Hub 镜像地址:`https://www.sci-hub.wf/`、`https://www.sci-hub.ee/`、`https://www.sci-hub.ren/`、`https://www.sci-hub.yt/`、`https://www.sci-hub.ru/`、`https://www.sci-hub.st/`、`https://www.wellesu.com`、`https://www.tesble.com`、`https://www.et-fine.com` ::: tip 由于不同地区的网络运营商可能存在访问限制,建议自行测试以确定可用的 Sci-Hub 镜像地址 ::: ::: warning 请注意,提供的镜像地址仅用于下载学术论文。在使用过程中,不要轻信其中的捐款请求。 ::: ::: warning Sci-Hub 的文献访问限制 自 2021 年以来,Sci-Hub 遇到了一些法律问题,导致它停止了对部分年份文献的支持,尤其是**2021 年及以后文献**的文献,这意味着无法通过 Sci-Hub 下载 2021 年及以后的出版的文献。 ::: ## 插件使用方法 ### Zotero-scipdf ::: tip 该插件只适用于 Zotero 7,Zotero 6 请使用 [Zotero-scihub](#zotero-scihub). ::: Zotero-scipdf 插件利用了 Zotero 内自带的 [PDF resolvers](https://www.zotero.org/support/kb/custom_pdf_resolvers)方案,将 Sci-Hub 的 `resolver` 自动填入 `extensions.Zotero.findPDFs.resolvers` 字段,以实现在 Zotero 内从 Sci-Hub 下载 PDF。 #### 插件设置 首次安装时插件会内置部分常用的 Sci-Hub 站点,若需要添加其他 Sci-Hub 站点,或删除已有 Sci-Hub 站点的,可以在插件的设置界面内编辑,不同的站点以`,`或`,`分割。最新的 Sci-Hub 镜像地址详见 [插件介绍](#插件介绍)。 ![插件设置](../../assets/images/zotero-scipdf.png) #### 插件使用 对于安装插件前已经缺失附件的 item,右键该 item,点击查找全文即可 ![查找全文](../../assets/images/查找全文.png) 对于新增的带有 DOI 的条目,如果在首选项内勾选了自动下载 PDF 选项,则 Zotero 会自动尝试下载附件 #### 常见问题 * 缺失 DOI 的条目没有查找全文选项,也无法通过 Sci-Hub 下载 * 已经关联了附件的条目没有查找全文选项 ::: tip 使用该插件在下载 PDF 被 Sci-Hub 拒绝时不会出现任何提示。 ::: ### Zotero-scihub #### 插件设置及使用 ::: tip 该插件只适用于 Zotero 6,Zotero 7 请使用 [Zotero-scipdf](#zotero-scipdf). ::: ![插件设置](../../assets/images/zotero-plugin-scihub/zotero-scihub.png) `Automatic PDF Download`:勾选后,在添加条目以后会自动为带有 DOI 的条目下载 PDF 格式的论文。 `Scihub URL`:这里可自定义 Sci-Hub 镜像的网站的地址。 一旦你安装该插件,右键单击你收藏中的任何项目。现在将有一个名为`Update Scihub PDF`的菜单选项。点击后,将从 Sci-Hub 下载 PDF 格式的文件,并附加到 Zotero 中对应的条目下。 #### 常见问题 部分用户在使用过程中经常会碰到以下弹窗错误: ![插件报错](../../assets/images/zotero-plugin-scihub/scihub报错.png) ![插件报错](../../assets/images/zotero-plugin-scihub/scihub报错_1.png) 这种情况通常是访问次数过多以后,Sci-Hub 服务器识别到了机器人抓取从而出现了验证码验证,您需要访问 Sci-Hub 页面 输入出现的验证码信息。 建议在知网抓取文献的时候,建议关闭插件中的 `Automatic PDF Download`。部分中文文献带有 DOI 字段,在抓取这部分中文文献时,插件会访问 Sci-Hub 进行下载,但由于 Sci-Hub 网站基本上没有收录中文文献,所以插件也不会下载到 PDF 文件。对 Sci-Hub 网站过于频繁的访问会触发网站的验证机制。 ![连接至服务器时发生错误](../../assets/images/zotero-plugin-scihub/scihub报错_2.png) 自 2024 年 1 月 23 日起,Sci-Hub 的部分域名被劫持到了 0.0.0.0,导致国内用户暂时无法直接搜索。请在插件设置中更新至最新的 Sci-Hub 镜像地址,镜像地址详见 [插件介绍](#插件介绍)。 ::: warning 请勿在任何网站上使用批量抓取,严重时可能会使您的 IP 地址遭到封禁。 ::: ## 自定义 PDF Resolvers [PDF Resolvers](https://www.zotero.org/support/kb/custom_pdf_resolvers)可以通过修改配置中的 `extensions.zotero.findPDFs.resolvers` (首选项 - 配置编辑器)进行配置。该值应为一个包含配置对象数组的 JSON 字符串,支持 HTM L 和 JSON 格式的来源。 ::: warning 谨慎使用此方法 此方法涉及修改隐藏首选项,请谨慎使用。 ::: ### 操作步骤 1. 在 Zotero 依次点击`编辑`-`首选项`-`高级`-`常规`-`高级设置`-`编辑器` ![编辑器](../../assets/images/zotero-编辑器.png) 2. 弹出如下图所示的对话框。点击`I accept the risk` ![同意承担风险](../../assets/images/zotero-我同意承担风险.png) 3. 在搜索框中输入 `extensions.zotero.findPDFs.resolvers`,双击搜索到的 `extensions.zotero.findPDFs.resolvers` ![同意承担风险](../../assets/images/zotero-findPDFs_resolvers.png) 4. 将下列代码粘贴进去直接替换原有内容 ```json [ { "name": "Sci-Hub", "method": "GET", "url": "https://sci-hub.se/{doi}", "mode": "html", "selector": "#pdf", "attribute": "src", "automatic": true } ] ``` 其中`"url":"https://sci-hub.se/{doi}"`, 可以替换为其他的 Sci-Hub 镜像地址。\ 如果想要从多个 Sci-Hub 地址抓取,按照如下格式添加 ```json [ { "name": "Sci-Hub", "method": "GET", "url": "https://sci-hub.se/{doi}", "mode": "html", "selector": "#pdf", "attribute": "src", "automatic": true }, { "name": "Sci-Hub", "method": "GET", "url": "https://sci-hub.ru/{doi}", "mode": "html", "selector": "#pdf", "attribute": "src", "automatic": true } ] ``` 5. 添加上述配置后 * 对于新增的项目,Zotero 会自动增加 Sci-Hub 的源抓取 PDF。 * 对于已存在的但缺失 PDF 的项目,可以右键点击`查找可用PDF`选项尝试重新抓取。 --- --- url: /user-guidepluginstranslateindex.md --- # Translate for Zotero Zotero PDF Translate 是由 @windingwind 开发的,用于文献管理软件 Zotero 的翻译插件。它完全开源、免费,主要功能有: * 划词翻译(自动/手动) * 标题、摘要翻译与源文本/翻译结果显示切换 * 批注翻译(自动/手动) * 支持 15+ 种翻译服务与 4+ 种字典服务 * 自定义翻译侧栏 UI,支持同时使用多种翻译引擎 插件深度集成了 Zotero 文献阅读功能。 ## 国内常用翻译引擎 我们收集整理了一些国内常用的翻译引擎,这些带密钥的翻译引擎,同知网,海词等相比,更加稳定,大批量和频繁使用时不容易出错。 | 引擎名称 | 免费额度 | 参考文档 | 备注 | | ------------ | ----------------------------------------------------- | ----------------------------------------------------------------------------------- | --------------------------------------------------------------------- | | 小牛翻译 | 首次注册赠送 500 积分,每日赠送 100 积分 | [小牛翻译接口申请及配置](/user-guide/plugins/translate/niutrans) | 1 积分/2000 字符;QPS=5,字段长度最大为 5000 | | 百度翻译 | 每月免费 100W | [百度翻译接口申请和配置](/user-guide/plugins/translate/baidu) | QPS=10,超出部分 49 元/百万字符 | | 百度垂直领域 | 每月免费 50W | [百度翻译接口申请和配置](/user-guide/plugins/translate/baidu) | 对生物医药领域有优化 QPS=10 | | 腾讯翻译 | 每月免费 500W | [腾讯翻译接口申请和配置](/user-guide/plugins/translate/tencent) | 每月免费额度非常多 QPS=5,翻译太快,容易报错,超出部分 58 元/百万字符 | | 彩云小译 | 新用户注册会获得 100 万字的免费翻译额度,有效期一个月 | | 39 元/百万字符 | | 火山翻译 | 每月免费 200 万字符流量 | [火山翻译接口申请及配置](/user-guide/plugins/translate/volcengine) | QPS=10,超出部分 49 元/百万字符 | | 阿里翻译 | 每月免费 100 万字符流量 | [阿里翻译接口申请及配置](/user-guide/plugins/translate/aliyun) | QPS=50,超出部分 50 元/百万字符 | | 微软翻译 | 每月免费 200W 流量(新用户前 12 个月才有) | [微软翻译接口申请及配置](/user-guide/plugins/translate/microsoft) | 超出部分 10 美元/百万字符 | | Gemini | 免费 | [申请教程](https://explinks.com/blog/how-to-get-gemini-api-key-step-by-step-guide/) | 需要科学上网或使用代理服务器 | ::: tip 如果你使用科学上网,可以试试直接使用谷歌(Google)翻译服务。 ::: --- --- url: /csl-dev-guidexml-basic.md --- # XML 基础 CSL 是基于 XML 的,如果你不熟悉 XML,本章将带你了解编辑 CSL 样式及其本地化文件所需的 XML 基础知识。 ## 标记语言 「标记语言」是计算机领域中的概念,抛开晦涩的概念定义,我们的书面语言其实就是使用标记的语言。我们会用逗号、句号、感叹号等标点符号来标记句子的停顿和结束,用括号来标记补充信息,用引号来标记句子中引用的内容。在标点符号的帮助下,连续的信息变得富有层次,无声的字符也能表示丰富的语气。 在其他场景中,学生们使用不同颜色的荧光笔来标记文本的不同内容,语言学家们使用成分符号来标记句子的语法成分(如主语、谓语、宾语等),编辑们使用校对符号来标记对文本的修订行为(如删除、添加、替换等)…… 标记语言将信息记录为结构化的文本,从而使得计算机能够识别和处理这些信息。 ## XML XML(eXtensible Markup Language)是一种广泛使用的标记语言,结合下面的例子来看看 XML 的基本结构。 ```xml ``` 下面,我们将逐行介绍这段代码。 1. 第一行称为声明,或者称为序言,总是在文档的最前面。包括了 XML 的版本、编码信息以及是否依赖外部文档等。实际编写 CSL 样式时,我们遵从的是同一套规则,只需从现有的样式文件中原封不动抄写这一行即可。 2. 第二行是 XML 文档的注释,格式为 ``。注释的位置比较自由,但需要单独成行。你可以在某一段代码上方概括下一段代码的主要作用。 3. 剩下的代码为 XML 文件的主体部分,它由根元素及内部若干个子元素构成。 上面的代码中,最明显的是像「 ``」这样的内容,它就是 XML 的「标签」。作为一种通用的标记语言,XML 中要表示许许多多的成分,标签就像注明了名称的括号,一方面像括号一样选定一段内容,另一方面又通过它的名称来指示这是一段什么内容。相比上一节 [XML 基础](#xml-基础) 中的例子,读者在不知道标签具体定义的情况下仅凭标签名就能大致推测该标记的含义,而且使用命名来区分标记也使标记不再局限于有限的标点符号,提高了标记的可读性和拓展性。 元素就是被标签标记起来的一块内容,一个 XML 文档必需有一个唯一的根元素(如例子中的 `root` 元素),根元素包含其他所有元素。当然,其他元素内也可以有子元素。例子第一个 `child-one` 元素内有其他元素,因此它是一个「开放」的元素,以开始标签`` 和 结束标签 ``标记范围(正如括号那样需要成对使用);而第二个 `child-tone` 元素没有子元素,因此它是一个「闭合」的元素,在同一个标签上开始和结束(正如逗号那样单独使用)。 属性写在标签名后,是对元素及其内容的描述,属性名和属性值之间用 `=` 隔开,属性值使用双引号 `"` 包裹。每个元素中,一个属性最多出现一次,一个属性只能有一个值。 值得注意的是,标签已经使用空格作为标签名和属性之间的分隔符,标签名和属性名中不允许使用空格(否则会引起歧义)。我们通常使用「[烤串命名法](https://developer.mozilla.org/zh-CN/docs/Glossary/Kebab_case)」(kebab case)来命名标签名和属性名,即使用 `-` 来分隔一系列小写单词,如 `child-one`、`attribute-one`。 ## 实体 在上一节我们了解到,XML 文档是由声明、元素和注释组成的,大量使用了 `<` 和 `>` 等字符,为了避免歧义,在确实需要表达类似这样的字符时,需用名为「实体」的代码来代替。 | 所定义的实体 | 所代表的字符 | | ------------ | ------------ | | `<` | `<` | | `>` | `>` | | `"` | `"` | | `'` | `'` | | `&` | `&` | ```xml John asked "What's your name?" 中间的结果: John asked "What's your name? " ``` --- --- url: /plugin-dev-guidereferencezotero.md --- # Zotero --- --- url: /user-guidefaqszotero-7-beta-versions.md --- # Zotero 7 与 Zotero Beta Zotero 7 正式版已经发布,我们强烈建议绝大部分用户使用稳定的正式版 Zotero,而不是 Beta 版本。安装或升级 Zotero 7 正式版请阅读:[你好,Zotero 7](/blog/posts/hello-zotero-7)。 ## Zotero Beta 下载 Zotero 的 Beta 版本是测试版,包含正在测试的新特性和新功能。Beta 版可能存在 Bug,运行可能不稳定,部分插件也没有及时适配最新的 Beta 版。 如果您确定要使用 Beta 版本,且具有较强的解决问题能力,能够接受可能出现的故障,我们建议您使用最新版本的 Zotero 7 Beta,以确保获得最佳体验和最新功能。下载最新的 Beta 版本请访问:[Zotero Beta 下载页面](https://www.zotero.org/support/beta_builds)。 ::: details Zotero 7 Beta 部分早期历史版本列表 | 版本号 | 提交哈希 | 便携版 | 安装版 | | :----: | :-------: | ------------------------------------------------------------------------------------------------------------------------ | -------------------------------------------------------------------------------------------------------------------------- | | 2 | 39b8a3316 | [下载](https://download.zotero.org/client/beta/7.0.0-beta.2%2B39b8a3316/Zotero-7.0.0-beta.2%2B39b8a3316_win-x64.zip) | [下载](https://download.zotero.org/client/beta/7.0.0-beta.2%2B39b8a3316/Zotero-7.0.0-beta.2%2B39b8a3316_x64_setup.exe) | | 16 | 1766f8bb5 | [下载](https://download.zotero.org/client/beta/7.0.0-beta.16%2B1766f8bb5/Zotero-7.0.0-beta.16%2B1766f8bb5_win-x64.zip) | [下载](https://download.zotero.org/client/beta/7.0.0-beta.16%2B1766f8bb5/Zotero-7.0.0-beta.16%2B1766f8bb5_x64_setup.exe) | | 25 | 8a7f3645b | [下载](https://download.zotero.org/client/beta/7.0.0-beta.25%2B8a7f3645b/Zotero-7.0.0-beta.25%2B8a7f3645b_win-x64.zip) | [下载](https://download.zotero.org/client/beta/7.0.0-beta.25%2B8a7f3645b/Zotero-7.0.0-beta.25%2B8a7f3645b_x64_setup.exe) | | 29 | f0e1da23b | [下载](https://download.zotero.org/client/beta/7.0.0-beta.29%2Bf0e1da23b/Zotero-7.0.0-beta.29%2Bf0e1da23b_win-x64.zip) | [下载](https://download.zotero.org/client/beta/7.0.0-beta.29%2Bf0e1da23b/Zotero-7.0.0-beta.29%2Bf0e1da23b_x64_setup.exe) | | 32 | 5e27a7501 | [下载](https://download.zotero.org/client/beta/7.0.0-beta.32%2B5e27a7501/Zotero-7.0.0-beta.32%2B5e27a7501_win-x64.zip) | [下载](https://download.zotero.org/client/beta/7.0.0-beta.32%2B5e27a7501/Zotero-7.0.0-beta.32%2B5e27a7501_x64_setup.exe) | | 36 | 3ef1f0992 | [下载](https://download.zotero.org/client/beta/7.0.0-beta.36%2B3ef1f0992/Zotero-7.0.0-beta.36%2B3ef1f0992_win-x64.zip) | [下载](https://download.zotero.org/client/beta/7.0.0-beta.36%2B3ef1f0992/Zotero-7.0.0-beta.36%2B3ef1f0992_x64_setup.exe) | | 38 | b79e0b3d7 | [下载](https://download.zotero.org/client/beta/7.0.0-beta.38%2Bb79e0b3d7/Zotero-7.0.0-beta.38%2Bb79e0b3d7_win-x64.zip) | [下载](https://download.zotero.org/client/beta/7.0.0-beta.38%2Bb79e0b3d7/Zotero-7.0.0-beta.38%2Bb79e0b3d7_x64_setup.exe) | | 39 | ecba25be0 | [下载](https://download.zotero.org/client/beta/7.0.0-beta.39%2Becba25be0/Zotero-7.0.0-beta.39%2Becba25be0_win-x64.zip) | [下载](https://download.zotero.org/client/beta/7.0.0-beta.39%2Becba25be0/Zotero-7.0.0-beta.39%2Becba25be0_x64_setup.exe) | | 44 | 64a78412c | [下载](https://download.zotero.org/client/beta/7.0.0-beta.44%2B64a78412c/Zotero-7.0.0-beta.44%2B64a78412c_win-x64.zip) | [下载](https://download.zotero.org/client/beta/7.0.0-beta.44%2B64a78412c/Zotero-7.0.0-beta.44%2B64a78412c_x64_setup.exe) | | 46 | c27bac2ad | [下载](https://download.zotero.org/client/beta/7.0.0-beta.46%2Bc27bac2ad/Zotero-7.0.0-beta.46%2Bc27bac2ad_win-x64.zip) | [下载](https://download.zotero.org/client/beta/7.0.0-beta.46%2Bc27bac2ad/Zotero-7.0.0-beta.46%2Bc27bac2ad_x64_setup.exe) | | 51 | 7c5600913 | [下载](https://download.zotero.org/client/beta/7.0.0-beta.51%2B7c5600913/Zotero-7.0.0-beta.51%2B7c5600913_win-x64.zip) | [下载](https://download.zotero.org/client/beta/7.0.0-beta.51%2B7c5600913/Zotero-7.0.0-beta.51%2B7c5600913_x64_setup.exe) | | 53 | 969031a37 | [下载](https://download.zotero.org/client/beta/7.0.0-beta.53%2B969031a37/Zotero-7.0.0-beta.53%2B969031a37_win-x64.zip) | [下载](https://download.zotero.org/client/beta/7.0.0-beta.53%2B969031a37/Zotero-7.0.0-beta.53%2B969031a37_x64_setup.exe) | | 54 | 6b996d4f9 | [下载](https://download.zotero.org/client/beta/7.0.0-beta.54%2B6b996d4f9/Zotero-7.0.0-beta.54%2B6b996d4f9_win-x64.zip) | [下载](https://download.zotero.org/client/beta/7.0.0-beta.54%2B6b996d4f9/Zotero-7.0.0-beta.54%2B6b996d4f9_x64_setup.exe) | | 55 | 9151fb355 | [下载](https://download.zotero.org/client/beta/7.0.0-beta.55%2B9151fb355/Zotero-7.0.0-beta.55%2B9151fb355_win-x64.zip) | [下载](https://download.zotero.org/client/beta/7.0.0-beta.55%2B9151fb355/Zotero-7.0.0-beta.55%2B9151fb355_x64_setup.exe) | | 56 | 9edfcba9a | [下载](https://download.zotero.org/client/beta/7.0.0-beta.56%2B9edfcba9a/Zotero-7.0.0-beta.56%2B9edfcba9a_win-x64.zip) | [下载](https://download.zotero.org/client/beta/7.0.0-beta.56%2B9edfcba9a/Zotero-7.0.0-beta.56%2B9edfcba9a_x64_setup.exe) | | 57 | 3acef799f | [下载](https://download.zotero.org/client/beta/7.0.0-beta.57%2B3acef799f/Zotero-7.0.0-beta.57%2B3acef799f_win-x64.zip) | [下载](https://download.zotero.org/client/beta/7.0.0-beta.57%2B3acef799f/Zotero-7.0.0-beta.57%2B3acef799f_x64_setup.exe) | | 58 | 2665090aa | [下载](https://download.zotero.org/client/beta/7.0.0-beta.58%2B2665090aa/Zotero-7.0.0-beta.58%2B2665090aa_win-x64.zip) | [下载](https://download.zotero.org/client/beta/7.0.0-beta.58%2B2665090aa/Zotero-7.0.0-beta.58%2B2665090aa_x64_setup.exe) | | 60 | 91e1c6ca3 | [下载](https://download.zotero.org/client/beta/7.0.0-beta.60%2B91e1c6ca3/Zotero-7.0.0-beta.60%2B91e1c6ca3_win-x64.zip) | [下载](https://download.zotero.org/client/beta/7.0.0-beta.60%2B91e1c6ca3/Zotero-7.0.0-beta.60%2B91e1c6ca3_x64_setup.exe) | | 63 | 52856ae69 | [下载](https://download.zotero.org/client/beta/7.0.0-beta.63%2B52856ae69/Zotero-7.0.0-beta.63%2B52856ae69_win-x64.zip) | [下载](https://download.zotero.org/client/beta/7.0.0-beta.63%2B52856ae69/Zotero-7.0.0-beta.63%2B52856ae69_x64_setup.exe) | | 65 | b047f3d90 | [下载](https://download.zotero.org/client/beta/7.0.0-beta.65%2Bb047f3d90/Zotero-7.0.0-beta.65%2Bb047f3d90_win-x64.zip) | [下载](https://download.zotero.org/client/beta/7.0.0-beta.65%2Bb047f3d90/Zotero-7.0.0-beta.65%2Bb047f3d90_x64_setup.exe) | | 66 | d0299a1ac | [下载](https://download.zotero.org/client/beta/7.0.0-beta.66%2Bd0299a1ac/Zotero-7.0.0-beta.66%2Bd0299a1ac_win-x64.zip) | [下载](https://download.zotero.org/client/beta/7.0.0-beta.66%2Bd0299a1ac/Zotero-7.0.0-beta.66%2Bd0299a1ac_x64_setup.exe) | | 67 | 92a04fcff | [下载](https://download.zotero.org/client/beta/7.0.0-beta.67%2B92a04fcff/Zotero-7.0.0-beta.67%2B92a04fcff_win-x64.zip) | [下载](https://download.zotero.org/client/beta/7.0.0-beta.67%2B92a04fcff/Zotero-7.0.0-beta.67%2B92a04fcff_x64_setup.exe) | | 68 | c31a40c74 | [下载](https://download.zotero.org/client/beta/7.0.0-beta.68%2Bc31a40c74/Zotero-7.0.0-beta.68%2Bc31a40c74_win-x64.zip) | [下载](https://download.zotero.org/client/beta/7.0.0-beta.68%2Bc31a40c74/Zotero-7.0.0-beta.68%2Bc31a40c74_x64_setup.exe) | | 71 | 03d0ea436 | [下载](https://download.zotero.org/client/beta/7.0.0-beta.71%2B03d0ea436/Zotero-7.0.0-beta.71%2B03d0ea436_win-x64.zip) | [下载](https://download.zotero.org/client/beta/7.0.0-beta.71%2B03d0ea436/Zotero-7.0.0-beta.71%2B03d0ea436_x64_setup.exe) | | 72 | 128a540af | [下载](https://download.zotero.org/client/beta/7.0.0-beta.72%2B128a540af/Zotero-7.0.0-beta.72%2B128a540af_win-x64.zip) | [下载](https://download.zotero.org/client/beta/7.0.0-beta.72%2B128a540af/Zotero-7.0.0-beta.72%2B128a540af_x64_setup.exe) | | 73 | 398454f85 | [下载](https://download.zotero.org/client/beta/7.0.0-beta.73%2B398454f85/Zotero-7.0.0-beta.73%2B398454f85_win-x64.zip) | [下载](https://download.zotero.org/client/beta/7.0.0-beta.73%2B398454f85/Zotero-7.0.0-beta.73%2B398454f85_x64_setup.exe) | | 74 | 2e8073ab9 | [下载](https://download.zotero.org/client/beta/7.0.0-beta.74%2B2e8073ab9/Zotero-7.0.0-beta.74%2B2e8073ab9_win-x64.zip) | [下载](https://download.zotero.org/client/beta/7.0.0-beta.74%2B2e8073ab9/Zotero-7.0.0-beta.74%2B2e8073ab9_x64_setup.exe) | | 76 | 91054acfe | [下载](https://download.zotero.org/client/beta/7.0.0-beta.76%2B91054acfe/Zotero-7.0.0-beta.76%2B91054acfe_win-x64.zip) | [下载](https://download.zotero.org/client/beta/7.0.0-beta.76%2B91054acfe/Zotero-7.0.0-beta.76%2B91054acfe_x64_setup.exe) | | 77 | adaa61f2c | [下载](https://download.zotero.org/client/beta/7.0.0-beta.77%2Badaa61f2c/Zotero-7.0.0-beta.77%2Badaa61f2c_win-x64.zip) | [下载](https://download.zotero.org/client/beta/7.0.0-beta.77%2Badaa61f2c/Zotero-7.0.0-beta.77%2Badaa61f2c_x64_setup.exe) | | 79 | 95d5a5417 | [下载](https://download.zotero.org/client/beta/7.0.0-beta.79%2B95d5a5417/Zotero-7.0.0-beta.79%2B95d5a5417_win-x64.zip) | [下载](https://download.zotero.org/client/beta/7.0.0-beta.79%2B95d5a5417/Zotero-7.0.0-beta.79%2B95d5a5417_x64_setup.exe) | | 81 | 721f54fe4 | [下载](https://download.zotero.org/client/beta/7.0.0-beta.81%2B721f54fe4/Zotero-7.0.0-beta.81%2B721f54fe4_win-x64.zip) | [下载](https://download.zotero.org/client/beta/7.0.0-beta.81%2B721f54fe4/Zotero-7.0.0-beta.81%2B721f54fe4_x64_setup.exe) | | 83 | 066eda731 | [下载](https://download.zotero.org/client/beta/7.0.0-beta.83%2B066eda731/Zotero-7.0.0-beta.83%2B066eda731_win-x64.zip) | [下载](https://download.zotero.org/client/beta/7.0.0-beta.83%2B066eda731/Zotero-7.0.0-beta.83%2B066eda731_x64_setup.exe) | | 84 | 71f83c0a3 | [下载](https://download.zotero.org/client/beta/7.0.0-beta.84%2B71f83c0a3/Zotero-7.0.0-beta.84%2B71f83c0a3_win-x64.zip) | [下载](https://download.zotero.org/client/beta/7.0.0-beta.84%2B71f83c0a3/Zotero-7.0.0-beta.84%2B71f83c0a3_x64_setup.exe) | | 87 | f59a4da7f | [下载](https://download.zotero.org/client/beta/7.0.0-beta.87%2Bf59a4da7f/Zotero-7.0.0-beta.87%2Bf59a4da7f_win-x64.zip) | [下载](https://download.zotero.org/client/beta/7.0.0-beta.87%2Bf59a4da7f/Zotero-7.0.0-beta.87%2Bf59a4da7f_x64_setup.exe) | | 90 | f829d7c43 | [下载](https://download.zotero.org/client/beta/7.0.0-beta.90%2Bf829d7c43/Zotero-7.0.0-beta.90%2Bf829d7c43_win-x64.zip) | [下载](https://download.zotero.org/client/beta/7.0.0-beta.90%2Bf829d7c43/Zotero-7.0.0-beta.90%2Bf829d7c43_x64_setup.exe) | | 91 | 3c6625f3c | [下载](https://download.zotero.org/client/beta/7.0.0-beta.91%2B3c6625f3c/Zotero-7.0.0-beta.91%2B3c6625f3c_win-x64.zip) | [下载](https://download.zotero.org/client/beta/7.0.0-beta.91%2B3c6625f3c/Zotero-7.0.0-beta.91%2B3c6625f3c_x64_setup.exe) | | 92 | d5bb667fb | [下载](https://download.zotero.org/client/beta/7.0.0-beta.92%2Bd5bb667fb/Zotero-7.0.0-beta.92%2Bd5bb667fb_win-x64.zip) | [下载](https://download.zotero.org/client/beta/7.0.0-beta.92%2Bd5bb667fb/Zotero-7.0.0-beta.92%2Bd5bb667fb_x64_setup.exe) | | 95 | 694ccecf4 | [下载](https://download.zotero.org/client/beta/7.0.0-beta.95%2B694ccecf4/Zotero-7.0.0-beta.95%2B694ccecf4_win-x64.zip) | [下载](https://download.zotero.org/client/beta/7.0.0-beta.95%2B694ccecf4/Zotero-7.0.0-beta.95%2B694ccecf4_x64_setup.exe) | | 96 | 4f780424e | [下载](https://download.zotero.org/client/beta/7.0.0-beta.96%2B4f780424e/Zotero-7.0.0-beta.96%2B4f780424e_win-x64.zip) | [下载](https://download.zotero.org/client/beta/7.0.0-beta.96%2B4f780424e/Zotero-7.0.0-beta.96%2B4f780424e_x64_setup.exe) | | 98 | 0b3eda5d8 | [下载](https://download.zotero.org/client/beta/7.0.0-beta.98%2B0b3eda5d8/Zotero-7.0.0-beta.98%2B0b3eda5d8_win-x64.zip) | [下载](https://download.zotero.org/client/beta/7.0.0-beta.98%2B0b3eda5d8/Zotero-7.0.0-beta.98%2B0b3eda5d8_x64_setup.exe) | | 99 | 174bde745 | [下载](https://download.zotero.org/client/beta/7.0.0-beta.99%2B174bde745/Zotero-7.0.0-beta.99%2B174bde745_win-x64.zip) | [下载](https://download.zotero.org/client/beta/7.0.0-beta.99%2B174bde745/Zotero-7.0.0-beta.99%2B174bde745_x64_setup.exe) | | 101 | 220bb4383 | [下载](https://download.zotero.org/client/beta/7.0.0-beta.101%2B220bb4383/Zotero-7.0.0-beta.101%2B220bb4383_win-x64.zip) | [下载](https://download.zotero.org/client/beta/7.0.0-beta.101%2B220bb4383/Zotero-7.0.0-beta.101%2B220bb4383_x64_setup.exe) | | 104 | 7e01a7d0e | [下载](https://download.zotero.org/client/beta/7.0.0-beta.104%2B7e01a7d0e/Zotero-7.0.0-beta.104%2B7e01a7d0e_win-x64.zip) | [下载](https://download.zotero.org/client/beta/7.0.0-beta.104%2B7e01a7d0e/Zotero-7.0.0-beta.104%2B7e01a7d0e_x64_setup.exe) | | 107 | 2917f41cb | [下载](https://download.zotero.org/client/beta/7.0.0-beta.107%2B2917f41cb/Zotero-7.0.0-beta.107%2B2917f41cb_win-x64.zip) | [下载](https://download.zotero.org/client/beta/7.0.0-beta.107%2B2917f41cb/Zotero-7.0.0-beta.107%2B2917f41cb_x64_setup.exe) | ::: --- --- url: /blog/posts/zotero-8.md --- # Zotero 8 正式发布 ::: tip 该博文翻译和改编自 Zotero 官方博客,原始链接为:[Zotero 8 - Zotero blog](https://www.zotero.org/blog/zotero-8/) ::: 各位 Zotero 用户,好消息!在 Zotero 7 带来视觉革新之后,备受期待的 **Zotero 8** 现已正式发布。本次更新不仅延续了新一代的设计语言,更在引用工作流、阅读体验和文件管理等核心功能上带来了重磅升级。 ## 全新统一引用对话框:告别繁琐切换 Zotero 8 彻底重构了引用交互体验。全新的统一引用对话框整合了以往的「红框(快捷引用)」、「经典对话框」以及「添加笔记(黄框)」,实现了一体化操作。 ![Redesigned Citation Dialog](https://www.zotero.org/static/images/blog/8.0/citation-dialog-list.png) * **双模式切换:** 提供 **列表模式(List mode)** 实现全库秒搜,以及 **库模式(Library mode)** 方便在特定分类中点选,两者可一键无缝切换。 * **定位符快捷输入:** 选中条目后,现在直接在搜索栏输入 `line 10` 或 `l. 10`(其他定位符也可以)即可快速添加定位符。 * **笔记与引用联动:** 在对话框左下角即可快速切换添加引用或笔记。 ![库模式](https://www.zotero.org/static/images/blog/8.0/citation-dialog-library.png) (对于习惯经典对话框的用户请注意:新界面没有用于手动编辑引用的文本字段。多年来,直接在文档中编辑引用一直是可行的,这也是为什么「红框」对话框没有包含此类文本框的原因。更重要的是,在几乎所有情况下都应避免此类手动编辑。相反,应通过引用对话框 [自定义引用](https://www.zotero.org/support/word_processor_plugin_usage#customizing_cites),这样 Zotero 才能在按需继续自动更新引用。) ## 条目列表直显注释:文献阅读一目了然 现在,你在 PDF、EPUB 或网页快照中添加的所有注释,都会直接显示在条目列表中对应附件的下方。 ![Annotations in the Items List](https://www.zotero.org/static/images/blog/8.0/annotations-in-the-items-list.png) * **注释级搜索:** 你可以通过「高级搜索」搜索特定的注释内容或标签,甚至可以直接将选中的注释拖拽生成笔记,或者通过「快速复制」粘贴到外部编辑器。 * **管理更高效:** 支持直接给注释打标签,并在右侧条目面板中按层级预览。 ## 护眼模式与自定义主题:打造你的专属阅读器 阅读器新增了独立的外观面板,终于支持了大家呼吁已久的阅读主题功能。 ![Reader Appearance Panel](https://www.zotero.org/static/images/blog/8.0/appearance-panel.png) * **内置与自定义主题:** 除了自带的深色(Dark)、雪白(Snow)、羊皮纸(Sepia)主题,你还可以通过自定义前/背景色创建专属配色。 * **更智能的深色模式:** 告别过去生硬的图片反色。新版深色主题会智能微调图像亮度和扫描件背景,保护视力的同时保留图片原貌。 * **更广泛的文件支持:** 现在 Zotero 8 也将尝试对扫描件(整页图像的 PDF)应用主题 视图设置是针对单个文档的。主题则是全局应用于所有文档(包括条目面板中的附件预览),并适用于 PDF、EPUB 和网页快照。 > \[!NOTE] > Zotero Style 插件先前提供了这个功能,随着 Zotero 8 的发布,Style 插件将逐步移除该功能。 ## 笔记标签页:沉浸式记笔记体验 现在除了在独立窗口中打开笔记外,还可以将其在标签页中打开。笔记标签页填满整个窗口,拥有更宽的页边距以提高可读性,并为记笔记提供简洁、无干扰的空间。 默认情况下,双击条目列表中的笔记将在标签页中打开。你可以通过右键菜单选择在其他空间打开,也可以在设置的「常规」面板中更改默认行为(「在窗口而非标签页中打开笔记」)。 标签页中的笔记在「查看」菜单中有独立的字体大小设置。 > \[!NOTE] > Zotero Better Notes 插件先前提供了这个功能,现在 Zotero 8 已经官方支持该功能了! ## 网页快照「阅读模式」:网页从此变清爽 网页快照功能现在支持**阅读模式(Reading Mode)**。它可以自动剔除网页上的无关广告和干扰元素,重新排版文字,并允许你调节行高和字体,让网页文献读起来像电子书一样舒服。 | 原始网页 | 启用阅读模式 | | ------------------------------------ | ------------------------------------ | | ![阅读模式前](assets/阅读模式前.png) | ![阅读模式后](assets/阅读模式后.png) | ## 标签页管理大升级:键盘党福音 Zotero 8 重新设计了标签页菜单,使其通过键盘交互变得更快。 你现在可以随时按 `Ctrl/Cmd-;` 调出该菜单。 菜单打开后,它可以同时接受搜索输入、上下导航和行选择,无需在菜单的不同部分之间切换。你只需开始输入已打开标签页的名称,缩小列表范围后按回车键即可切换。 还可以通过上下移动到行关闭按钮并按空格键来快速关闭多个标签页。 ## 持续文件重命名:告别手动同步和 ZotFile 插件 这是一个非常实用的改进:Zotero 现在支持**持续自动重命名**。每当你修改条目的元数据(如标题、年份)时,附件的文件名会自动随之更新。再也不用频繁右键点击「根据父条目元数据重命名」了。 > \[!NOTE] > 升级后,旧有文件不会被强制修改,你可以在「设置」中选择是否一键重命名现有文件。 你可以在 Zotero 设置的「常规」选项卡中配置重命名适用于哪些文件类型。 「根据父条目元数据重命名文件」已从条目右键菜单中移除。如果文件名与配置的格式不匹配(例如因为禁用了自动重命名,或者你更改了格式但未选择重命名所有文件),你可以点击附件条目面板中文件名旁边的「重命名文件以匹配父条目」按钮来重命名。 ### 附件命名逻辑大重构:告别冗余,回归简洁 很多用户反馈,为什么附件在列表中显示为「Full Text PDF」或「Preprint PDF」,而不是长长的文件名?Zotero 8 进一步明确并优化了这一逻辑: * **标题与文件名的解耦:** Zotero 将「附件标题(显示在列表里)」与「磁盘文件名」分开处理。由于父条目已经显示了标题、作者等信息,附件标题若再重复一遍文件名会显得列表非常臃肿。因此,Zotero 现在会默认使用「PDF」、「Ebook」等简洁标题,而将完整的元数据保留在磁盘文件名中。 * **附件标题规范化(Normalize Titles):** 如果你的库里有很多早期版本遗留下的、标题和文件名一样长的「乱码」附件,Zotero 8 在 `工具` → `管理附件` 中新增了\*\*「规范化附件标题」\*\*功能,可以一键将它们改回清爽的「PDF」等简洁形式。 * **支持显示文件名:** 这是一个重要的妥协与进步。如果你确实习惯在列表中直接看到完整的文件名(类似旧版 ZotFile 的效果),现在可以在「设置」->「常规」面板中勾选「在条目列表中显示附件文件名」,将控制权交还给你。 * **智能识别附件类型:** 对于从网页抓取的文献,它会智能命名为「ScienceDirect Full Text PDF」等;而对于你手动拖入的补充材料(如实验数据),它仍会保留原始文件名作为标题,方便你区分。 > \[!TIP] > 过去很多用户习惯手动执行「根据父条目重命名文件」,其实是为了让列表里的标题变好看。在 Zotero 8 中,重命名是**全自动且持续**的,而标题则保持简洁。我们建议大家尝试一下这种「新逻辑」,它能让你的文献库看起来整洁得多! ## ARM Linux 支持 Zotero 8 增加了适用于 ARM64 设备运行的 Linux 版本。这包括基于 ARM 的 Chromebook、运行 Linux 的 Apple Silicon Mac(Linux 虚拟机、Asahi Linux)以及树莓派(Raspberry Pi)。 如果你之前无法在 ARM 设备上运行 Zotero,或者一直在模拟运行 x86\_64 版本,不妨尝试一下。 ## 用户界面改进 我们针对常用需求对界面进行了多项改进: * 库选项卡中的新按钮允许你快速关闭条目面板,无需拖动边缘或使用菜单。 * 你可以通过在侧边导航栏中拖动图标来重新排序条目面板的部分。 * 可以将条目、分类和搜索结果拖入回收站。 * 可以从条目面板中拖动附件、笔记和关联条目(例如将文件复制到文件系统或使用快速复制)。 * 拖动到分类上方时,分类会自动展开,更方便将分类或条目放入子分类。 * 可以从条目面板删除附件。 * 标签页在关闭时会保持大小,以便快速连续关闭多个标签页。 ## Zotero Connector 标签自动补全和笔记字段 配合 Zotero 8,Zotero Connector 的保存弹窗可以自动补全 Zotero 库中的标签,并允许你在保存条目时添加笔记。 ## 新增条目字段 Zotero 8 添加了大量新的字段和创作者类型,如: * 每种条目类型均包含 DOI,例如「图书」,「学位论文」等 * 期刊文章包含 PMID 和 PMCID * 书籍包含 Original Place、Original Publisher 和 Original Date * 网页和期刊/报纸/杂志文章包含 Publisher 和 Place * 多种类型包含 Place 字段 * 多种类型包含 Creator(等同于 Author)字段 先前存储在「额外 Extra」字段里的相关字段会被自动迁移到新的内置字段上。 请参阅:[New item fields](https://forums.zotero.org/discussion/121656/coming-soon-new-item-fields/p1) ## 更多内容 Zotero 8 包含的内容远不止这里列出的这些。详情请参阅 [更新日志](https://www.zotero.org/support/8.0_changelog)。 ## 系统要求 Zotero 8 需要 macOS 10.15 或更高版本、Windows 10 或更高版本,或 [兼容 Firefox 140](https://www.firefox.com/en-US/firefox/140.0/system-requirements/#gnulinux) 的 Linux 系统。 ## Zotero 迈入「小步快跑」时代:版本发布全面加速 以往 Zotero 的重大更新(如 Zotero 6 到 Zotero 7)往往需要一年多的开发与等待。从现在起,官方将正式改变版本管理策略,进入**快速迭代周期**: * **每 6-10 周发布一个新版本:** 以后不再需要等待数月甚至一年才能见到新功能。官方计划每 1.5 到 2.5 个月就推出一个新版本(如 Zotero 9、Zotero 10 等),只要功能开发成熟,就会立刻推送到稳定版。 * **更快的反馈速度:** 这意味着新功能将更早普及,而 Bug 修复也将不再受限于「重大版本更新」,修复响应将更加迅速。 * **Beta 用户建议:** 官方建议,如果你之前是为了提前体验新功能而被迫使用 Beta 版(内测版),现在可以考虑切换回**稳定版**了。因为随着发布频率的提高,稳定版很快就会跟上最新的功能。 * **日常维护不中断:** 在两个功能版本(如 Zotero 8 和 9)之间,官方仍会持续发布类似 Zotero 8.0.1 这样的维护更新,专门用于修复 Bug 和细节微调。 Zotero 正在变得越来越像现代主流浏览器,通过更短、更可预测的更新周期,让每一位研究者都能第一时间享受到技术进步带来的便利。 了解 [Zotero 的新发布周期](https://www.zotero.org/blog/a-faster-release-cycle-for-zotero/) ## 获取 Zotero 8 如果你正在运行 Zotero,可以通过「帮助」 → 「检查更新…」进行升级。 还没有 Zotero?[立即下载 Zotero 8](https://www.zotero.org/download/)。 ## 中文社区更新情况 目前,中文社区的的插件商店还没有完全核实插件是否适配了 Zotero 8,同学们查找插件时候,可以按 Zotero 7 版本的先下载,没有适配的话会提示「不兼容」。 使用手册部分也有待更新的板块,尤其是「在 Word 中插入参考文献」小节和「阅读」小节,我们欢迎热心同学帮忙完善更新百科全书! ## 插件适配情况 Zotero 8 beta 版本发布至今已经接近一年了,截止到目前,主流插件如翻译、Better Notes、茉莉花、Better BibTex、Linter、Style 等插件都已经完成了适配。仍为完成适配的插件有一定概率其作者已经不再积极维护,我们建议同学们根据自身情况选择放弃一些插件的能力。 ## 已知问题 ### Edge 浏览器上的 Zotero Connector 无法工作 有用户报告 Edge 浏览器上的 Zotero Connector 无法抓取条目,经过 Zotero 官方调查,这是 Edge 更新导致的,Zotero 团队已经提交了更新,此问题已经修复,请参阅:[Zotero extension not working after Edge update](https://forums.zotero.org/discussion/129161/zotero-extension-not-working-after-edge-update#latest)。 --- --- url: /user-guidepluginszotero-attanger.md --- # Zotero Attanger 插件使用指南 Zotero Attanger 是一款专为 Zotero 7 设计的附件管理插件,旨在替代不再支持 Zotero 7 的 ZotFile 插件。它提供了更强大的附件管理功能,支持多设备同步和自定义规则,适合需要定制化管理文献附件的用户。 \[\[TOC]] *** ## 一、插件简介 Zotero Attanger 的主要功能包括: * **便捷的添加附件方式**:为条目一键附加本地已经下载好的附件。 * **附件重命名增强**:在重命名附件时,同时将该附件在 Zotero 中的标题改为与附件的文件名一致。 * **附件外部存储增强**:借助 Zotero 的「链接的文件」功能,将附件按照自定义规则移动至 Zotero 数据文件夹之外的其他目录。 * **基于同步盘的多设备同步**:通过第三方云盘(如 iCloud、OneDrive、百度云盘同步空间、阿里云盘备份盘)实现附件跨设备同步。 * 项目主页:[GitHub](https://github.com/MuiseDestiny/zotero-attanger) ::: warning 警告 如果您的主要用途是云同步,请注意: * 使用 Attanger + 同步盘的同步方案并非首选,我们优先推荐使用支持 WebDAV 的网盘来进行同步(请参阅 [通过 WebDAV 同步附件](../sync#通过-webdav-同步附件) 文档章节);推荐仅当拟使用的同步服务不支持 WebDAV 时,再使用这种方式。 * 这种方式不支持同步到 Zotero 官方 iOS 和 Android 客户端。 * 不正确的配置可能导致附件丢失。 ::: ## 二、安装步骤 ### 2.1. 下载插件 插件下载教程:[获取插件教程](about-plugin#获取插件) 插件下载地址: * [国内镜像](/plugins/#search=Zotero+Attanger) * [GitHub Release](https://github.com/MuiseDestiny/zotero-attanger/releases) ### 2.2. 安装插件 插件安装教程:[安装插件教程](about-plugin#安装插件) ## 三、基础配置指南 Zotero Attanger 中较为简单的基础功能有: * **匹配附件**:为条目补充附件 * **附加新文件**:为条目补充附件 * **重命名附件**:重命名附件、在文献列表中的附件标题上直接看到附件文件名 如果您只需要使用这些基础功能,请参考以下步骤进行配置。 ### 3.1. 基础配置 1. 打开 Zotero,点击 `编辑` → `设置` → `Attanger`。 ![Zotero Attanger 基础配置](../../assets/images/zotero-attanger-basic-setup.png) 2. 将「源路径」的「根目录」设置为浏览器的默认下载目录(如 `C:\Users\你的系统用户名\Downloads`)。 3. 在「附加类型」中选择「副本」。 4. 勾选「其他设置」中的「自动重命名添加的附件」选项,取消勾选「自动移动添加的附件」选项。 5. 在「重命名/移动的附件类型」中添加需要处理的更多文件格式的后缀名(如 `.caj` 等)。 6. 在 Zotero 设置中按需设置重命名规则。 :::: details Zotero 文件重命名规则设置教程 1. 打开 Zotero 设置中「常规」选项卡 →「文件重命名」中点击「自定义文件名格式...」按钮,打开 Zotero 的文件名格式设置窗口。 ![Zotero 文件重命名规则设置](../../assets/images/zotero-file-renaming-setup.png) 2. 在文件名格式设置窗口中,您可以根据需要自定义文件名模板。您可以访问以下链接,了解更多关于文件名模板的编写方法: * [Zotero 文件重命名规则生成器](https://www.wieke.cn/tools/rename-rule-generator.html) * [Zotero 官方文档:File Renaming](https://www.zotero.org/support/file_renaming) 这里提供几个文件名模板案例供尝试,您可以直接点击规则框中右侧的「复制」按钮复制这一规则,然后在 Zotero 的文件名格式设置窗口中粘贴到「文件名模板」文本框中。 ::: details 案例 1:「发表年份*标题*作者\_文献类型」,支持中文和外文文献姓名的不同处理,不显示「等」或「et al.」等字样。 ``` {{ year suffix="_" }}{{ title truncate="50" suffix="_" }}{{ if language =="zh" }}{{ authors name="family-given" name-part-separator="" join=" " max="2" }}{{ elseif language =="zh-CN" }}{{ authors name="family-given" name-part-separator="" join=" " max="2" }}{{ elseif language =="zh_CN" }}{{ authors name="family-given" name-part-separator="" join=" " max="2" }}{{ else }}{{ authors name="given-family" initialize="given" join=" and " max="2" }}{{ endif }}{{ itemType localize="true" prefix="_" }} ``` 使用效果: * `2023_供需适配视角下消费帮扶的长效机制研究_王瑞_学位论文.pdf` * `2023_计及用户意愿的电动汽车聚合商主从博弈优化调度策略_房宇轩 胡俊杰_期刊文章.pdf` * `2009_Zotero A Product Review_J. Trinoskey and F. Brahmi_期刊文章.pdf` * `2014_数值分析_SauerTimothy_图书.pdf` ::: ::: details 案例 2:「发表年份*标题*作者\_文献类型」,支持中文和外文文献姓名的不同处理,不显示「等」或「et al.」等字样。当条目类型是期刊文章时,文献类型不显示。 ``` {{ year suffix="_" }}{{ title truncate="50" suffix="_" }}{{ if language =="zh" }}{{ authors name="family-given" name-part-separator="" join=" " max="2" }}{{ elseif language =="zh-CN" }}{{ authors name="family-given" name-part-separator="" join=" " max="2" }}{{ elseif language =="zh_CN" }}{{ authors name="family-given" name-part-separator="" join=" " max="2" }}{{ else }}{{ authors name="given-family" initialize="given" join=" and " max="2" }}{{ endif }}{{ if itemType != "journalArticle" }}{{ itemType localize="true" prefix="_" }}{{ endif }} ``` 使用效果: * `2023_供需适配视角下消费帮扶的长效机制研究_王瑞_学位论文.pdf` * `2023_计及用户意愿的电动汽车聚合商主从博弈优化调度策略_房宇轩 胡俊杰.pdf` * `2009_Zotero A Product Review_J. Trinoskey and F. Brahmi.pdf` * `2014_数值分析_SauerTimothy_图书.pdf` ::: ::: details 案例 3:「发表年份*标题*作者\_文献类型」,支持中文和外文文献姓名的不同处理,不显示「等」或「et al.」等字样。当条目类型是期刊文章时,文献类型不显示。对于书籍类型的条目,将文献类型写在最前,发表年份写在最后。 ``` {{ if itemType == "book" }}{{ itemType localize="true" suffix="_" }}{{ else }}{{ year suffix="_" }}{{ endif }}{{ title truncate="50" suffix="_" }}{{ if language =="zh" }}{{ authors name="family-given" name-part-separator="" join=" " max="2" }}{{ elseif language =="zh-CN" }}{{ authors name="family-given" name-part-separator="" join=" " max="2" }}{{ elseif language =="zh_CN" }}{{ authors name="family-given" name-part-separator="" join=" " max="2" }}{{ else }}{{ authors name="given-family" initialize="given" join=" and " max="2" }}{{ endif }}{{ if itemType != "journalArticle" }}{{ if itemType == "book" }}{{ year prefix="_" }}{{ else }}{{ itemType localize="true" prefix="_" }}{{ endif }}{{ endif }} ``` 使用效果: * `2023_供需适配视角下消费帮扶的长效机制研究_王瑞_学位论文.pdf` * `2023_计及用户意愿的电动汽车聚合商主从博弈优化调度策略_房宇轩 胡俊杰.pdf` * `2009_Zotero A Product Review_J. Trinoskey and F. Brahmi.pdf` * `图书_数值分析_SauerTimothy_2014.pdf` ::: 3. 当您在文库中选择了一个条目时,窗口中的「预览」部分会显示当前条目的文件名格式。 ![Zotero 文件重命名规则预览](../../assets/images/zotero-file-renaming-preview.png) :::: 7. 如果您需要同步附件文件,请阅读:[WebDAV 附件同步教程](../sync#通过-webdav-同步附件)。 ### 3.2. 使用基础功能 1. 在 Zotero 中选中一个条目,点击右键,选择「匹配附件」,即可从源路径中根据标题自动匹配附件并添加到该条目中。 ![Zotero Attanger 匹配附件和附加新文件](../../assets/images/zotero-attanger-add-attachment.png) 2. 在 Zotero 中选中一个条目,点击右键,选择「附加新文件」,即可从源路径中自动匹配最新的附件并添加到该条目中。 3. 在 Zotero 中选中一个条目,点击右键,选择「附件管理」→ 「重命名附件」,即可将该条目的附件重命名为文件名格式设置中的规则,并将该条目中的附件标题改为与附件的文件名一致。 ![Zotero Attanger 重命名附件](../../assets/images/zotero-attanger-rename-attachment.png) ## 四、进阶配置指南 如果您需要使用 Attanger 的高级功能,或者需要使用第三方同步盘来实现附件的多设备同步,请务必仔细阅读下面的进阶配置文档: ::::: details 进阶配置文档 ## J1. 进阶配置 Zotero Attanger 各项功能需要的配置项不同,具体如下: | 功能名 | 用途 | 具体功能说明 | 需要的配置项 | | ------------------------------------------- | --------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------- | | 匹配附件 | 为条目补充附件 | 本功能将源路径中与条目信息匹配的文件添加到 Zotero 中。在「源路径」目录下(不包括子目录)搜索所有的`.pdf`和`.caj`文件,然后对于所有选中的文献条目,使用匹配文件名和标题的方法,匹配并添加某个文件作为该条目的附件。 | 源路径 | | 匹配 Attanger 附件 | 仅用作特殊用途 | 相比于「匹配附件」,本功能的匹配规则更加严格,具体请阅读表格下方的详细功能说明。 | 源路径、靶路径、重命名规则、重命名/移动的附件类型、已链接附件的根目录 | | 附加新文件 | 为条目补充附件 | 将源路径中最新的文件添加到 Zotero 中。相比于「匹配附件」,本功能既不会检查文件名和标题是否匹配,也不检查附件的类型,而是直接将「源路径」目录下(不包括子目录)最新的文件添加到 Zotero 中作为该条目的附件。 | 源路径 | | 重命名并移动附件 | 同时进行「重命名附件」和「移动附件」两项操作 | 具体功能请参考「重命名附件」和「移动附件」。 | 重命名规则、重命名/移动的附件类型 | | 重命名附件 | 重命名附件、在文献列表中的附件标题上直接看到附件文件名 | 将附件的文件名按照 Zotero 的文件名格式(重命名规则)进行重命名,同时将该附件在 Zotero 中的标题改为与附件的文件名一致,从而确保在文献列表中看到的附件标题与实际文件名一致。 | 重命名规则、重命名/移动的附件类型 | | 移动附件 | 第三方同步盘同步附件、自定义规则整理附件 | 将附件按照「靶路径」的设定移动到指定的靶路径中,并将附件作为链接的文件存储,不再由 Zotero 直接管理。这一功能仅在选择了「作为链接」的方式来存储附件时才会生效。 | 源路径、靶路径、重命名规则、重命名/移动的附件类型、已链接附件的根目录 | | 撤销移动附件 | 从第三方同步盘方案切换回 Zotero 官方/ WebDAV 文件同步方案 | 将链接的文件重新作为副本存储在 Zotero 数据目录中,重新由 Zotero 管理。此功能不仅对靶目录中的附件有效,也对其他任意链接的文件有效。这个功能与 Zotero 菜单栏中的「工具」→「管理附件」→「转换已链接文件为已存储文件...」功能相同。 | 无 | :::: details 关于「匹配 Attanger 附件」的功能说明 ::: warning 提醒 这个功能所需的配置复杂,对双方的操作都有较高的要求,使用中存在较多的人工操作,我们强烈不建议一般用户使用这种方式来为群组文库同步附件。 ::: 在选中了一个文献条目,并点击了「匹配 Attanger 附件」时,Attanger 会到`源路径(设为与靶路径根目录相同)\靶路径子目录`中匹配符合文件「重命名规则」, 且文件类型是「重命名/移动的附件类型」中任意一种的文件。如果存在这个文件,且这个文件还没有作为被选中条目的附件,则将其作为链接的附件添加到这个条目中。这里需要注意的是,只有在靶路径中符合设定的子目录下的文件才会被匹配到。如果附件在靶路径中的其他子目录内,则不会匹配到。 这个功能在设计之初是为了给群组文库提供一种不使用 Zotero 官方文件同步的附件同步方式,详见[原作者的说明](https://github.com/MuiseDestiny/zotero-attanger/pull/206)。主体思想是通过第三方同步盘来实现附件的同步,通过群组文库仅同步文献条目元数据,手动将需要分享的条目在本地文库和群组文库之间复制,并借助这一功能快速为没有附件的条目匹配到同步盘中的附件。主要步骤如下: 1. 分享者借助第三方同步盘在电脑上设置一个同步文件夹,并在 Attanger 中配置好「靶路径根目录」和「已链接附件的根目录」,规定好「靶路径子目录」的结构和文件「重命名规则」。 2. 接收者也使用分享者的同步盘在自己的电脑上设置好一个同步文件夹,并在 Attanger 中配置好自己的「靶路径根目录」和「已链接附件的根目录」,并确定「靶路径子目录」和文件「重命名规则」的设定与分享者的完全一致。 3. 新建一个群组文库,在群组文库中创建好需要分享的文献分类(和子分类)。分享者和接收者也都在自己的本地 Zotero 我的文库中创建同名的分类(和子分类),确保各个文库中用于同步的分类具有完全相同的结构和层级。 4. 分享者在本地 Zotero 我的文库中将需要分享的条目(含附件)添加到我的文库中用于分享的分类里,并借助 Attanger 将附件重命名并移动到靶路径(同步盘)中。 5. 分享者在本地 Zotero 我的文库中将需要分享的文献条目复制到群组文库中对应的的分类(子分类)里。 6. 接收者将群组文库中的文献条目复制到自己的本地 Zotero 我的文库中对应的的分类(子分类)里。 7. 接收者使用 Attanger 的「匹配 Attanger 附件」功能,为本地 Zotero 我的文库中刚刚复制的条目匹配并以链接的文件添加附件。 这种方案有以下局限和注意事项: 1. 分享者和接收者的文件重命名规则必须完全一致,否则会因文件名不同无法匹配。 2. 分享者和接收者的靶路径子目录的设定必须完全一致。如果子目录是以分类建立的,那么分享者和接收者的分类(子分类)必须完全一致,否则会因附件所在的子目录不同无法匹配。 3. 分享者在将条目添加到本地 Zotero 我的文库中用于分享的分类时,应执行一次「重命名并移动附件」操作,确保附件已经被重命名并移动到这一分类对应的靶路径子目录中。如果这个文献条目同时还被添加到了其他本地分类中,此时必须确保附件实际存放的子目录只能是用于同步的这个分类对应的子目录,而不是其他分类对应的子目录。 4. 由于接收者的条目是从群组文库中复制的,双方本地文库中的两个条目可以看作是内容完全相同的重复条目。在遇到协作创作文档时,双方都只能使用群组文库中的条目进行引用,而不是使用本地文库中的条目,否则可能会因为重复条目而出现重复的书目。 5. Zotero 目前会将附件的各种批注存在 Zotero 数据库中,而不是直接写入附件文件中。因此,这种方式只能分同步附件,而不能同步使用 Zotero 内置阅读器做的批注。接收者收到的只是没有批注的原始 PDF 文件。如果有同步批注的需求,可能只能使用第三方阅读器进行批注,否则将会需要大量的额外操作来导出批注。 6. 由于源路径须设置与靶路径相同,使用这一方案后无法再方便地用 Attanger 的匹配附件、匹配新附件等功能来为条目添加附件。 :::: ### J1.1. 附加类型设置 这一设置项用于配置 Attanger 处理附件的方式,默认选择作为「副本」存储附件,由 Zotero 管理附件。您可以根据需要选择「作为链接」存储附件。 打开 Zotero,点击 **编辑 → 设置 → Attanger**。根据需求选择附件存储方式: * **作为「副本」** : 此时附件在 Zotero 中也被称之为「已存储文件」或「存储的附件」,文献列表中的附件图标上**没有链条符号**。此时附件存储在 Zotero 数据目录中 `storage` 文件夹下的随机字符文件夹内,此时附件直接由 Zotero 管理,适合使用 Zotero 官方同步或 WebDAV 同步。这种方案简单易用,不需要复杂的配置和操作,且不容易出问题。 * **作为「链接」** : 此时附件在 Zotero 中也被称之为「已链接文件」或「链接的附件」,文献列表中的附件图标上**有链条符号**。此时附件会被移动至自定义的靶目录中,Zotero 仅保留附件的链接(类似于 Windows 中的快捷方式),不再由 Zotero 直接管理,也无法使用 Zotero 官方的文件同步和 WebDAV 同步。此选项必须配合「靶路径」设置使用,同时建议正确配置「已链接附件的根目录」方便多设备同步。 对于「副本」和「链接」的详细说明,请阅读这篇文档:[存储的附件和链接的附件](../add-attachments.md#存储的附件和链接的附件)。 ::: warning 重要提醒 我们强烈建议使用 **作为「副本」** 的方式来存储附件,此方式由 Zotero 管理附件,更简单易用,不需要复杂的配置和操作,且不容易出问题。 选择 **作为「链接」** 的方式来存储附件时,附件将被转换为「链接的附件」,不再由 Zotero 直接管理。如果配置不当或操作不当,可能会导致 Zotero 无法打开附件,或者附件无法在其他设备上访问。 如果您确定要使用 **「链接」** 的方式来存储附件,请务必确保您仔细阅读了本文档,完全理解各项设置的含义以及使用的注意事项,并且正确配置 Zotero Attanger 插件设置中的「靶路径」和 Zotero 高级设置中的「已链接附件的根目录」。 ::: ### J1.2. 路径配置 Zotero Attanger 在使用时涉及到多个路径配置项,主要包括: | 设置所在位置 | 路径名称 | 用途 | 设置建议 | | ------------------------ | ------------------ | -------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------- | | Zotero 高级设置 | 数据文件夹 | Zotero 数据库所在的文件夹,存储 Zotero 除程序文件和配置设置外的所有数据 | 由 Zotero 自动设置,一般不建议修改。可设为其他本地目录,但**切勿设为任何云盘的同步目录,切勿使用任何工具同步这一目录**。使用 Attanger 不需要修改这一目录。 | | Zotero 高级设置 | 已链接附件的根目录 | 配置后可将这一根目录下的文件使用相对路径进行存储,方便在使用第三方同步盘方案时进行多设备同步 | 可设置为云盘的同步目录,需与 Attanger 插件设置中的靶路径根目录一致。作为「副本」存储文件时无需设置这一目录。 | | Zotero Attanger 插件设置 | 源路径 | 利用 Attanger 匹配/附加文件时,搜索的源目录 | 可设置为浏览器的默认下载目录。 | | Zotero Attanger 插件设置 | 靶路径 | Attanger 移动附件时,附件存放的目标目录 | 可设置为云盘的同步目录,需与 Zotero 高级设置中的「已链接附件的根目录」一致。作为「副本」存储文件时无需设置这一目录。 | ::: danger 无论你选择何种同步方案,也无论基于何种原因,切勿将 Zotero 的 `数据存储位置/Data Directory` 自定义为任何网盘的同步文件夹中(包括 iCloud),也切勿使用任何网盘/同步盘的备份功能直接同步/备份这一目录!(包括但不限于直接使用坚果云的官方客户端直接同步备份这一文件夹) 这样做在某些情况下可能会导致你的 Zotero 数据库损坏,带来严重的问题!官方对于这一问题的说明见这两篇文章: * [How can I access my library from multiple computers?](https://www.zotero.org/support/sync#alternative_syncing_solutions) * [Can I store my Zotero data directory in a cloud storage folder?](https://www.zotero.org/support/kb/data_directory_in_cloud_storage_folder) 如果您已经将 Zotero 数据文件夹直接同步到网盘中,请您做好[备份](../backup#手动备份),根据 [自定义数据文件夹](../faqs/custom-data-directory) 的教程将数据文件夹迁移到本地的其他位置,且确保未使用任何工具直接同步这一数据文件夹。 ::: #### J1.2.1 Zotero Attanger 插件的「源路径」设置 在不使用插件时,如果想为文献条目添加附件,通常需要手动将文件拖拽到 Zotero 中的条目上,或者使用 Zotero 的「添加附件」功能来选择文件。使用 Attanger 插件后,可以通过「匹配附件」和「附加新文件」功能来自动为条目添加附件。「匹配附件」功能会在指定的源路径中搜索符合条件的文件,并将其添加到 Zotero 中的条目下;「附加新文件」功能会将源路径中最新的文件添加到 Zotero 中的条目下。这两个功能的最终效果等同于将文件拖拽到 Zotero 中的条目上。 ::: tip 提示 在 Attanger 匹配/附加文件时,会在指定的源路径中搜索符合条件的文件。这一设置项仅与「匹配附件」和「附加新文件」功能相关。因此,无论您将附加类型设置为「副本」还是「链接」,都建议您设置这一项。 ::: 一般来说,您可以将源路径设置为浏览器的默认下载目录(如 `C:\Users\你的系统用户名\Downloads`),这样在使用「匹配附件」时,Attanger 会自动在下载目录下匹配符合条件的文件,或使用「附加新文件」功能自动将刚下载的文件添加到条目中。如果您有其他文件夹需要搜索,也可以将源路径设置为该文件夹。需要注意的是,「匹配附件」和「附加新文件」功能仅会在源路径的根目录下搜索文件,不会搜索该路径下其他子目录中的文件。 #### J1.2.2 Zotero Attanger 插件的「靶路径」设置 如果在「附加类型」中选择将文件作为「链接」附加到条目下,Attanger 在「移动附件」时,会将附件重命名并移动到指定的靶路径中。文件的最终路径为`根目录/子目录/文件名.扩展名`。 在作为「链接」存储文件时,您需要设置以下两项「靶路径」的设置: * **根目录**:根目录在作为「链接」存储时必填,可以设置为云盘同步目录(如 `D:\OneDrive\ZoteroAttachment`),如果没有同步需求也可以设为普通本地目录。如果您有多个设备,请在每一个设备上根据实际情况选择相应的目录。这一项需要与 Zotero 高级设置中的「已链接附件的根目录」一致。 * **子目录**:子目录结构支持自定义,可以留空。如果这一项留空,则所有附件都将存放在根目录下。这一项默认设置为 `{{collection}}` ,即自动创建与 Zotero 中的分类结构一致的子目录。并将附件存放在对应的子目录中。您也可以根据需要设置为其他值(如设置为 `{{year}}` 时按照文献的发表年份整理附件),也可以用正斜杠作为子文件夹分隔符,设置多级子目录(如设置为 `{{collection}}/{{year}}` 时会在分类目录下创建年份二级子目录来整理附件)。这里可用的变量详见:[\[Zotero 官方文档\] File Renaming](https://www.zotero.org/support/file_renaming) #### J1.2.3 Zotero 高级设置中的「已链接附件的根目录」设置 为方便多设备同步,您需要在 Zotero 高级设置中配置「已链接附件的根目录」。这一项需要与 Attanger 插件设置中的靶路径根目录一致。 * **已链接附件的根目录**:在 Zotero 高级设置中,将「已链接附件的根目录」设置为与靶路径相同的目录(如 `D:\OneDrive\ZoteroAttachment`)。 ::: details 关于「已链接附件的根目录」的详细说明 「已链接附件的根目录」不是必填项。如果不设置这一项,各个附件的链接路径将会是绝对路径。如果您在其他设备上使用不同的靶路径,则无法访问附件,因为绝对路径在不同设备上是不同的。在设置了这一项后,各个附件的在 Zotero 存储的链接路径将会是相对路径。这样在同步时,各个设备可根据当前设备的实际情况设置相应的靶路径根目录,Zotero 会自动将相对路径与当前设备的根目录路径拼接为绝对路径,而不会因为根路径不同而导致附件无法访问。 这里举例说明一下「已链接附件的根目录」的作用: * 假设在当前设备 A 将「靶路径根目录」设置为 `D:\OneDrive\ZoteroAttachment`,子目录设置为 `{{collection}}`,那么对于 `文献综述` 分类中的附件 `2025最新权威文献综述.pdf` ,且未设置「已链接附件的根目录」,Zotero 会将其链接路径存储为绝对路径: `D:\OneDrive\ZoteroAttachment\文献综述\2025最新权威文献综述.pdf`。如果在另一个设备 B 上的靶路径根目录(同步文件夹路径)是 `C:\Users\PC2\OneDrive\ZoteroAttachment`),则无法访问该附件,因为在这一电脑上的 `D:\OneDrive\ZoteroAttachment\文献综述\2025最新权威文献综述.pdf` 路径上没有这一文件。 * 如果在当前设备 A 将「已链接附件的根目录」设置为 `D:\OneDrive\ZoteroAttachment`,其他设置与前文所述保持一致,那么对于当前设备 A 上的附件 `D:\OneDrive\ZoteroAttachment\文献综述\2025最新权威文献综述.pdf` ,Zotero 会将其链接路径存储为相对路径: `文献综述/2025最新权威文献综述.pdf`。此时,只需要将另一个设备 B 上的「已链接附件的根目录」设置为 `C:\Users\PC2\OneDrive\ZoteroAttachment`(与该设备的靶路径根目录、同步文件夹路径一致),Zotero 就会自动将另一个设备 B 的根目录路径拼接为适合该设备的绝对路径: `C:\Users\PC2\OneDrive\ZoteroAttachment\文献综述\2025最新权威文献综述.pdf`,从而保证了「靶路径根目录」不同时附件的正常同步。 这一项仅对「链接的附件」有效,作为「副本」存储的文件完全由 Zotero 管理,不受这一选项的影响。 ::: ### J1.3. 其他设置 Zotero Attanger 提供了一些其他设置选项,包括添加附件时自动移动、自动重命名等。这里主要对「重命名规则」和「重命名/移动的附件类型」进行说明。 #### J1.3.1. 重命名规则 Zotero Attanger 目前直接使用 Zotero 本身的文件重命名规则。无论将文件作为「副本」还是「链接」存储,均可使用该规则进行重命名。 * 您可以点击「靶路径」设置中的「设置重命名规则...」按钮,打开 Zotero 的文件名格式设置窗口。 * 您也可以直接在 Zotero 设置中「常规」选项卡 →「文件重命名」中点击「自定义文件名格式...」按钮,打开 Zotero 的文件名格式设置窗口。 您可以阅读下面的文件重命名规则设置教程,了解如何设置文件名格式。 :::: details Zotero 文件重命名规则设置教程 在文件名格式设置窗口中,您可以根据需要自定义文件名模板。当您在文库中选择了一个条目时,窗口中的「预览」部分会显示当前条目的文件名格式。如果需要定制自己的文件名模板,您可以访问以下链接,了解更多关于文件名格式的设置方法: * [Zotero 文件重命名规则生成器](https://www.wieke.cn/tools/rename-rule-generator.html) * [Zotero 官方文档:File Renaming](https://www.zotero.org/support/file_renaming)。 这里提供几个文件名模板案例供尝试,您可以直接点击规则框中右侧的「复制」按钮复制这一规则,然后在 Zotero 的文件名格式设置窗口中粘贴到「文件名模板」文本框中。 ::: details 案例 1:「发表年份*标题*作者\_文献类型」,支持中文和外文文献姓名的不同处理,不显示「等」或「et al.」等字样。 ``` {{ year suffix="_" }}{{ title truncate="50" suffix="_" }}{{ if language =="zh" }}{{ authors name="family-given" name-part-separator="" join=" " max="2" }}{{ elseif language =="zh-CN" }}{{ authors name="family-given" name-part-separator="" join=" " max="2" }}{{ elseif language =="zh_CN" }}{{ authors name="family-given" name-part-separator="" join=" " max="2" }}{{ else }}{{ authors name="given-family" initialize="given" join=" and " max="2" }}{{ endif }}{{ itemType localize="true" prefix="_" }} ``` 使用效果: * `2023_供需适配视角下消费帮扶的长效机制研究_王瑞_学位论文.pdf` * `2023_计及用户意愿的电动汽车聚合商主从博弈优化调度策略_房宇轩 胡俊杰_期刊文章.pdf` * `2009_Zotero A Product Review_J. Trinoskey and F. Brahmi_期刊文章.pdf` * `2014_数值分析_SauerTimothy_图书.pdf` ::: ::: details 案例 2:「发表年份*标题*作者\_文献类型」,支持中文和外文文献姓名的不同处理,不显示「等」或「et al.」等字样。当条目类型是期刊文章时,文献类型不显示。 ``` {{ year suffix="_" }}{{ title truncate="50" suffix="_" }}{{ if language =="zh" }}{{ authors name="family-given" name-part-separator="" join=" " max="2" }}{{ elseif language =="zh-CN" }}{{ authors name="family-given" name-part-separator="" join=" " max="2" }}{{ elseif language =="zh_CN" }}{{ authors name="family-given" name-part-separator="" join=" " max="2" }}{{ else }}{{ authors name="given-family" initialize="given" join=" and " max="2" }}{{ endif }}{{ if itemType != "journalArticle" }}{{ itemType localize="true" prefix="_" }}{{ endif }} ``` 使用效果: * `2023_供需适配视角下消费帮扶的长效机制研究_王瑞_学位论文.pdf` * `2023_计及用户意愿的电动汽车聚合商主从博弈优化调度策略_房宇轩 胡俊杰.pdf` * `2009_Zotero A Product Review_J. Trinoskey and F. Brahmi.pdf` * `2014_数值分析_SauerTimothy_图书.pdf` ::: ::: details 案例 3:「发表年份*标题*作者\_文献类型」,支持中文和外文文献姓名的不同处理,不显示「等」或「et al.」等字样。当条目类型是期刊文章时,文献类型不显示。对于书籍类型的条目,将文献类型写在最前,发表年份写在最后。 ``` {{ if itemType == "book" }}{{ itemType localize="true" suffix="_" }}{{ else }}{{ year suffix="_" }}{{ endif }}{{ title truncate="50" suffix="_" }}{{ if language =="zh" }}{{ authors name="family-given" name-part-separator="" join=" " max="2" }}{{ elseif language =="zh-CN" }}{{ authors name="family-given" name-part-separator="" join=" " max="2" }}{{ elseif language =="zh_CN" }}{{ authors name="family-given" name-part-separator="" join=" " max="2" }}{{ else }}{{ authors name="given-family" initialize="given" join=" and " max="2" }}{{ endif }}{{ if itemType != "journalArticle" }}{{ if itemType == "book" }}{{ year prefix="_" }}{{ else }}{{ itemType localize="true" prefix="_" }}{{ endif }}{{ endif }} ``` 使用效果: * `2023_供需适配视角下消费帮扶的长效机制研究_王瑞_学位论文.pdf` * `2023_计及用户意愿的电动汽车聚合商主从博弈优化调度策略_房宇轩 胡俊杰.pdf` * `2009_Zotero A Product Review_J. Trinoskey and F. Brahmi.pdf` * `图书_数值分析_SauerTimothy_2014.pdf` ::: 当您在文库中选择了一个条目时,窗口中的「预览」部分会显示当前条目的文件名格式。 ![Zotero 文件重命名规则预览](../../assets/images/zotero-file-renaming-preview.png) :::: #### J1.3.2. 重命名/移动的附件类型 Zotero Attanger 支持多种文件类型的附件重命名和移动。您可以根据需要选择要处理的文件类型。默认支持 PDF、docx、txt 等格式。 如果您需要 Attanger 移动更多其他类型的文件,您可以在「重命名/移动的附件类型」中添加新的扩展名(如要使用 Attanger 移动 CAJ 文件,则在类型最后加上 `,caj` 即可)。 ## J2. 基于同步盘的多设备同步实现 ### J2.1. 同步逻辑 * Zotero Attanger 将附件重命名并移动到云盘目录,Zotero 仅保留附件链接。 * 云盘自动同步文件,其他设备通过附件链接打开本地同步好的附件。 ### J2.2. 操作步骤 1. **首次同步** * 根据[配置指南](#三基础配置指南)将[附加类型](#j11-附加类型设置)设为「链接」,并设置好[靶路径](#j122-zotero-attanger-插件的靶路径设置)和[已链接附件的根目录](#j123-zotero-高级设置中的已链接附件的根目录设置)。 * 在「我的文库」中选中所有文献条目(键盘快捷键 `Ctrl` + `a`),右点击任意条目,然后点击 `附件管理` → `重命名并移动附件`(如无需重命名,可点击 `移动附件` ),将附件迁移至云盘。 * 在「其他设置」中勾选「自动移动添加的附件」(并按需勾选「附加新文件快捷键」),未来新下载的附件会自动处理。 2. **新设备配置**: * 在其他设备上安装 Zotero Attanger,在做好文件夹同步后,将[附加类型](#j11-附加类型设置)设为「链接」,根据该设备的实际情况正确设置[靶路径](#j122-zotero-attanger-插件的靶路径设置)和[已链接附件的根目录](#j123-zotero-高级设置中的已链接附件的根目录设置)。 * 各个设备上的「靶路径子目录」、「重命名规则」以及「重命名/移动的附件类型」设置最好保持一致。 * 在「其他设置」中勾选「自动移动添加的附件」(并按需勾选「附加新文件快捷键」),未来新下载的附件会自动处理。 ::: tip 提示 「坚果云」不是一种同步方式。坚果云既支持 Zotero 自带的 WebDAV 同步(不需要安装坚果云官方的客户端),也支持使用本文档「Attanger + 同步盘」的方式来同步附件(需要安装坚果云官方的客户端)。通常来说,我们更建议您使用 WebDAV 同步的方式来同步附件,这样可以避免一些不必要的问题。如果您希望使用 WebDAV 同步,请参考这篇文章:[通过 WebDAV 同步附件教程](../sync.md#通过-webdav-同步附件)。 ::: ## J3、进阶配置的常见问题 ### J3.1. Zotero 中删除附件时,系统中的文件无法同步删除 这是 Zotero 链接的附件的特性。详细说明和解决方案见:[删除 Zotero 中链接的附件时,同时删除系统中的文件](../faqs/sync#教程删除-zotero-中链接的附件时同时删除系统中的文件)。 ### J3.2. 附件无法打开 如果遇到附件无法打开,通常是路径配置问题。请按照以下步骤检查: 1. 在添加这一附件的电脑上检查这一附件能否正常打开。如果所有设备都无法打开,可能说明这一附件已丢失,请重新下载。 2. 根据[路径配置](#j12-路径配置),检查「靶路径」和「已链接附件的根目录」设置是否正确。 3. 直接访问报错里提示找不到附件的路径,检查在该路径下是否存在该附件文件,以及该文件能否正常打开。如果不存在,清检查同步设置和路径设置。 ### J3.3. 插件工作不正常 如果插件工作不正常,通常是插件和 Zotero 版本不匹配,或者插件插件版本过低。请按照以下步骤处理: 1. 更新 Zotero 版本:将 Zotero 更新到最新的正式版。可从 Zotero 官网下载最新的正式版覆盖安装。 2. 更新插件版本:按照[插件安装步骤](#二安装步骤)下载最新的插件安装包并覆盖安装。 ### J3.4. 点击「移动附件」后,附件没有被移动 这种问题通常是由于「重命名/移动的附件类型」设置中没有您当前文件的后缀名,请在该设置中补充: * 点击 `Zotero` → `编辑` → `设置` → `Zotero Attanger`,在「重命名/移动的附件类型」中添加文件后缀名(如 `,caj`),然后再尝试。 此外,只有拥有所属上级文献条目的附件才能被移动。如果您选中的附件是一个独立的顶级条目,则无法被移动。请先为该附件创建上级条目,完善条目信息,然后再尝试移动。 ### J3.5. 更多常见问题 更多常见问题,请阅读:[Attanger/ZotMoov + 同步盘同步问题](../faqs/sync#attangerzotmoov--同步盘同步问题)。 ::::: ## 五、由链接的附件转换为存储的附件 如果您希望从 Zotero Attanger + 同步盘 的同步方案切换到 Zotero 官方的 WebDAV 同步方案,您可以将链接的附件转换回存储的附件。操作教程见:[迁移到 WebDAV 同步方案](../faqs/sync#教程迁移到-webdav-同步方案)。 ## 六、其他注意事项 * **Zotero Attanger 仅支持 Zotero 7**:Zotero 6 用户需使用 ZotFile 插件。 * **请勿直接在系统移动文件或编辑文件名**:会导致 Zotero 无法打开附件。 ## 七、提交反馈 如遇插件故障,可在 [GitHub Issues](https://github.com/MuiseDestiny/zotero-attanger/issues) 提交反馈。请配合截图清晰描述问题,并提供你的 Zotero 和 Attanger 插件的具体版本号。 --- --- url: /en.md --- --- --- url: /en/translators.md description: >- This page is for Chinese users only. Zotero already provides excellent support for retrieving non-Chinese literature! --- --- --- url: /en/plugins.md --- --- --- url: /blog/posts/new-beginning.md --- # Zotero 中文社区 - 新的征程 在过去的一段时间,我们在众多志愿者地帮助下,购买了域名 `zotero-chinese.com`,构建了网站,整合了很多 Zotero 相关的文档、资源,我们非常高兴地宣布,Zotero 中文社区进入了一个全新的阶段! ## 过去 过去一年,Zotero 中文社区在大家的支持下,取得了许多令人振奋的成果。 根据不完全统计,中文社区网站日均访问近万人次,其中大陆同学占比约 80%,港澳台同学占比约 10%。 ### 🇨🇳 Zotero 的汉化 ![Zotero 本地化](assets/zotero-transifex.png) Zotero 中文社区一直积极参与 Zotero 的本地化翻译工作,通过 Transifex 平台,我们和其他翻译员共同为 Zotero 提供了完整的中文翻译,确保中文用户能够无障碍地使用和理解 Zotero 的各项功能。 ### 📖 Zotero 百科全书 ![Zotero 百科全书](assets/zotero-wiki.png) 我们对中文用户手册进行了全面更新,涵盖了 Zotero 的基础操作、插件使用,以及常见问题的解决方案,帮助了众多中文用户顺利上手并解决了使用中的困惑。 在此,感谢所有为文档编辑做出贡献的同学! ![Zotero wiki 仓库贡献者](https://cdn.jsdelivr.net/gh/zotero-chinese/.github@main/.github-contributors/zotero-chinese_wiki.svg) ### 🛠️ 插件商店页面 ![Zotero 插件商店](assets/zotero-plugins-market.png) 我们全新推出了插件商店页面,收录了大部分实用的 Zotero 插件,并且支持按功能、兼容性等多维度进行搜索、筛选和排序。页面还提供了多个下载镜像,方便国内用户快捷获取所需插件。 从去年九月起,到目前为止,插件商店页面已经服务近 73 万次,平均每天有两千余位同学使用插件商店页面,且在稳步上涨。 插件商店页面由 [@northword](https://northword.cn) 创建,感谢 [@l0o0](https://github.com/l0o0) 创建的表格格式的插件商店页面。 特别感谢 [@volatile-static](https://github.com/volatile-static) 维护的「插件排行榜」。 ### 🔄 转换器列表页面 ![Zotero 转换器页面](assets/zotero-translators.png) 为了提方便同学们查询 Zotero 可以抓取哪些中文网站,我们推出了转换器列表页面。 这个页面列出了由中文社区维护的 Zotero 转换器,帮助用户了解 Zotero 支持抓取哪些中文网站,并极大地提高了文献管理的效率。 特别感谢 [@jiaojiaodubai](https://github.com/jiaojiaodubai) 和 [@l0o0](https://github.com/l0o0) 对转换器维护做出的贡献! 感谢 [@jiaojiaodubai](https://github.com/jiaojiaodubai) 对转换器页面的重大优化。 ### 📑 中文 CSL 页面 ![中文 CSL 页面](assets/zotero-csl.png) 我们还推出了支持中英双语排版的 CSL 样式页面,包含了包括国标及其变种样式在内的多种格式,并涵盖部分国内高校硕博论文、学术期刊的参考文献格式,为广大中文用户提供了更丰富的样式选择。 特别感谢 [@zepinglee](https://github.com/zepinglee) 和 [@redleafnew](https://github.com/redleafnew) 对中文 CSL 维护做出的贡献! ## 未来 感谢每一位社区成员的支持与贡献! Zotero 中文社区是我们共同努力的成果,期待在未来的日子里,继续与大家一起探索和推动 Zotero 在中文用户中的发展。让我们一同迎接 Zotero 带来的全新体验!🎉🚀 --- --- url: /plugin-dev-guidereferencenotify.md --- # Zotero 事件机制 Notify 事件是 Zotero 内部的一种事件机制,在包括条目创建修改删除,文件打开关闭,标签页打开选中关闭,同步触发等情况下将发送 Notify 事件。 大部分插件都会用到 Notify 事件,可通过 `Zotero.Notifier.registerObserver` 添加事件,`Zotero.Notifier.unregisterObserver` 移除事件。 Notifier 支持的事件类型包括(可能不全): ```typescript type Event = | "add" | "modify" | "delete" | "move" | "remove" | "refresh" | "redraw" | "trash" | "unreadCountUpdated" | "index" | "open" | "close" | "select"; ``` 支持的事件对象包括: ```typescript type Type = | "collection" | "search" | "share" | "share-items" | "item" | "file" | "collection-item" | "item-tag" | "tag" | "setting" | "group" | "trash" | "bucket" | "relation" | "feed" | "feedItem" | "sync" | "api-key" | "tab"; ``` 源码位置:[chrome\content\Zotero\xpcom\notifier.js](https://github.com/zotero/zotero/blob/master/chrome/content/zotero/xpcom/notifier.js) ## 注册监听器 ```typescript declare namespace _ZoteroTypes { interface Notifier { /** * @param {Object} [ref] signature {notify: function(event, type, ids, extraData) {}} * @param {Array} [types] a list of types of events observer should be triggered on * @param {String} [id] an id of the observer used in debug output * @param {Integer} [priority] lower numbers correspond to higher priority of observer execution * @returns {string} */ registerObserver( ref: { notify: Notifier.Notify }, types?: Notifier.Type[], id?: string, priority?: number, ): string; } } ``` 为 types 事件设置回调 ref,返回监听器 id。 例: ```typescript notifierCallback = { notify: async ( event: string, type: string, ids: Array, extraData: object, ) => { // You can add your code to the corresponding notify type if ( event == "select" && type == "tab" && extraData[ids[0]].type == "reader" ) { // Select a reader tab } if (event == "add" && type == "item") { // Add an item } }, }; let notifierID = Zotero.Notifier.registerObserver(notifierCallback, [ "tab", "item", "file", ]); ``` ## 注销监听器 ```typescript declare namespace _ZoteroTypes { interface Notifier { unregisterObserver(id: String): void; } } ``` 取消对应 id 的监听器 例: ```typescript Zotero.Notifier.unregisterObserver(notifierID); ``` ## 触发 Notify 事件 一般情况下,不需要手动触发。 ### 单个触发 ```typescript /** * Trigger a notification to the appropriate observers * * Possible values: * * event: 'add', 'modify', 'delete', 'move' ('c', for changing parent), * 'remove' (ci, it), 'refresh', 'redraw', 'trash', 'unreadCountUpdated', 'index' * type - 'collection', 'search', 'item', 'collection-item', 'item-tag', 'tag', * 'group', 'relation', 'feed', 'feedItem' * ids - single id or array of ids * * Notes: * * - If event queuing is on, events will not fire until commit() is called * unless _force_ is true. * * - New events and types should be added to the order arrays in commit() **/ declare Zotero.Notifier.trigger(event: String, type: String, ids: Number | Number[], extraData?: any, force?: Boolean); /** * Queue an event until the end of the current notifier transaction * * Takes the same parameters as trigger() * * @throws If a notifier transaction isn't currently open */ declare Zotero.Notifier.queue(event: String, type: String, ids: Number | Number[], extraData?: any, force?: Boolean); ``` 例: ```typescript Zotero.Notifier.trigger("add", "tab", [id], { [id]: data }, true); ``` ### 队列触发 ```typescript Zotero.Notifier.commit(queues, (transactionID = true)); ``` 例: ```typescript const notifierQueue = new Zotero.Notifier.Queue(); // Initialize a notifier queue // Do something await Zotero.Notifier.commit(notifierQueue); // Trigger the queued notifies ``` --- --- url: /user-guidepluginszotero-addons.md --- # Zotero 插件市场插件 这是一个用于在 Zotero 内浏览和安装插件的插件,简化插件管理和安装过程。用户可以通过该插件可以方便地查找、安装和更新 Zotero 插件。 ## 使用方法 安装完成后,您可以通过以下两种方式访问插件市场。 ### 打开插件市场 #### 1. 通过工具栏按钮 点击 Zotero 工具栏中的插件按钮![icon](../../assets/images/zotero_addons_icon.png)。 ![通过工具栏访问](../../assets/images/zotero_addons_工具栏.png) #### 2. 通过菜单 在 Zotero「工具」菜单中选择「插件市场」进入。 ![通过菜单访问](../../assets/images/zotero_addons——菜单访问.png) ### 管理插件 在「插件市场」中可以快速实现插件的安装、更新、卸载、禁用等功能 ![管理插件](../../assets/images/zotero_addons_管理插件.png) ### 自动更新插件 勾选右下键的 `自动更新插件` 后,Zotero 插件市场插件会在后台自动实现插件的更新。 ![自动更新](../../assets/images/zotero_addons_自动更新.png) ## 插件数据源 插件市场提供多个数据源供用户选择,确保用户能够顺畅浏览和下载插件。 ![更换数据源](../../assets/images/zotero_addons_更换数据源.png) 当 **插件列表无法刷新** 或者 **插件无法下载** 时,说明可能遇到了网络问题,此时可通过更换数据源来尝试解决。 ### 默认数据源 #### Zotero 中文社区(`zotero-chinese/zotero-plugins`) 插件的主要数据源来自 Zotero 中文社区。若您是国内用户,推荐选择此数据源,以获取优化的插件列表。 在插件市场界面选择 `(zotero中文社区)` 即可使用该数据源。 #### 插件爬虫(syt2/Zotero-addons-scraper) 插件市场还提供另一数据源,通过插件爬虫从多个外部源抓取插件。选择 `(插件爬虫)` 数据源可以访问这些插件。 ### 自定义源 本插件支持自定义数据源。如果您有自己的插件源,或想使用其他符合 `zotero-chinese/zotero-plugins` 格式的数据源,可以在插件设置中添加自定义源并提供数据源的 URL。 ## 常见问题 ### 1. **如何选择不同的数据源?** 在插件市场界面,您可以轻松切换不同的数据源,选择适合您需求的源来浏览插件。 ![alt text](../../assets/images/zotero_addons_更换数据源.png) ### 2. **插件无法加载或显示空白怎么办?** 如果您遇到插件页面加载不出插件,建议尝试切换不同的数据源,特别是选择 `zotero中文社区` 数据源,这通常能解决问题。 ### 3. **如何更新插件?** 安装的插件会定期检查更新,您也可以在插件市场界面中查看是否有更新,并根据需要进行更新。 --- --- url: /plugin-dev-guidereferenceitem.md --- # Zotero 条目 Item(条目)是 Zotero 中的基础数据元素。条目根据类型又可分为普通条目 (regular item),附件 (attachment item),笔记 (note item) 和注释 (annotation item)。Zotero 中,小到一个 PDF 附件中的一条高亮,大到一个集合(collection),都可以抽象为一个条目(Item)。 大多数插件的最终目的就是修改这些条目,例如,添加标签,修改信息,等等。 ## 创建条目 ```javascript new Zotero.Item(itemType); ``` ## 获取条目 ```typescript declare Zotero.Items.get: (ids: Number | Number[]) => ZoteroItem | ZoteroItem[]; declare Zotero.Items.getByLibraryAndKeyAsync: ( libraryID: Number, itemKey: String ) => Promise; declare ZoteroPane.getSelectedItems: () => ZoteroItem[]; ``` 通过 `Zotero.Items.get` / `getByLibraryAndKeyAsync` 来从 ID 获取条目; 通过 `ZoteroPane.getSelectedItems` 获取当前选中的条目。 ```javascript ZoteroPane.itemsView.getRow(2).ref; ``` ## 修改条目 对条目内容进行修改后,请使用 `item.save` / `item.saveTx()`来保存。 ```javascript var item = new Zotero.Item("computerProgram"); item.setType(Zotero.ItemTypes.getID("note")); ``` ## PDF 批注 > Zotero 中的批注也是 Item 类型! ```javascript Zotero.Items.getAll(1).then((i) => i.filter((t) => t.isAnnotation())); ``` 注释的属性: * annotationText:高亮注释的内容 * parentItem:获得 pdf 条目 ```javascript const annotations = Zotero.Items.get(reader.itemID).getAnnotations(); reader.navigate({ annotationKey: annotations[0].key }); ``` ## 从对话框选择条目 ```javascript let io = { dataIn: null, dataOut: null, deferred: Zotero.Promise.defer() }; window.openDialog( "chrome://zotero/content/selectItemsDialog.xhtml", "", "chrome,dialog=no,centerscreen,resizable=yes", io, ); io.deferred.promise.then(() => console.debug(io)); ``` --- --- url: /user-guideindex.md --- # Zotero 百科全书 ::: info 在 Zotero 使用过程中遇到问题,先上 Zotero 百科全书搜索一下! 本文档由 [Zotero Chinese](https://github.com/zotero-chinese) 团队维护。有任何问题,欢迎在文档下方留言! 本文档地址:[`zotero-chinese.com`](/) ::: ## ⛳️ Zotero 百科全书简介 本文档分为以下几个部分: * **为什么使用 Zotero**:关于 Zotero 的优势,与其他同类软件的对比 * **安装**:安装 Zotero 桌面端、浏览器扩展、移动端的步骤 * **Zotero 使用教程** * **基础使用**:包括导入条目 、编辑条目 、导入文件 、添加分类和标签 、阅读和笔记 等 * **创建参考文献**:主要包括在 Word 中插入参考文献相关的内容 * **同步、备份和协作**:包括同步数据 、备份数据 、创建群组 *高级*等 * **插件**:关于如何安装插件、优秀插件推荐等 * **Zotero 常见问题**:导入条目的问题合集、插入引用的问题合集等,非常规用法等 * **Zotero 资源合集**:施工中 ::: tip 内容分级 文档内容会有标记 、 和 ,读者初次了解 Zotero 时,仅需要掌握「初级」内容,随着了解和使用的深入,再探究更高难度的用法。 ::: 由于内容较多,建议当作字典使用,在遇到问题时通过**顶部搜索栏搜索关键字**,例如遇到同步问题,则搜索「同步」。 ## ⭐️ 常用文档和链接 * Zotero 官方 * [Zotero 官网](https://www.zotero.org/) * [Zotero 官方手册](https://www.zotero.org/support/) * [Zotero 论坛](https://forums.zotero.org/discussions) * Zotero 资源 * [Zotero 常用插件下载国内镜像](/plugins/) * [中文 CSL 样式](/styles/) * Zotero 开发者 * [Zotero 插件开发中文文档](../plugin-dev-guide/index.md) * [CSL 中文文档](../csl-dev-guide/index.md) * 更多 Zotero 相关文档 * Zotero Better Notes 笔记插件中文文档:[Zotero Better Notes:基于知识的笔记插件](https://zotero.yuque.com/books/share/f3fe159f-956c-4f10-ade3-c87559cacb60?view=doc_embed) ## 🎯 创建 Zotero 百科全书的目的 以往的 Zotero 社区存在两大问题: * 网络资料不便搜索且良莠不齐\ 网上有许多关于 Zotero 的使用帖子或教程,但分散在各处,不方便搜索。许多内容过时或错误,使用者按照错误的教程操作带来更多问题。 * 答疑效率低下\ 以往 Zotero 使用中遇到问题,往往在群里提问,或者在相关教程/视频下留言,消息容易被刷掉或遗漏,效率低下。 为了解决上述问题,我们创建了这个 Zotero 百科全书文档,权威、准确、一站式解决 Zotero 使用问题。 ## 💡 本文档与官方文档的差异 本文的整体结构与官方文档保持一致,但合并了一些值得注意的隐藏点,加入了针对中文生态的描述。 ## ❤️ 参与到我们中 ::: tip 我如何参与到文档维护中? 当然,你可以通过多种方式支持我们,包括但不限于分享我们、参与讨论、修改文档等,请参阅:[参与指南](../contributing/index.md) 了解详情。 ::: --- --- url: /translator-dev-guidetranslators.md --- # Zotero 转换器概述 ::: tip todo see ::: --- --- url: /plugin-dev-guidereferencepreference.md --- # Zotero 首选项 Preference 是 Zotero 插件的一种持久化设置能力。与其他代码运行环境相同,变量在 Zotero 重启后会被重置,因此对于用户的设置等需要持久存储的变量,通过 Preference 来存取。 Preference 存储于 [Zotero 配置文件目录](https://www.zotero.org/support/kb/profile_directory) 下的 `prefs.js`。除特殊情况,请勿引导用户修改该文件。 💡 注意:Preference 的值有长度限制,请勿设置太长的字符串。 ## 默认设置 在插件根目录新建 `prefs.js`,并填入如下示例的内容,可以初始化的 Preference 的键和值。键为字符串,值为布尔、数字或字符串其一。 ```javascript pref("extensions.zotero.Knowledge4Zotero.syncNoteIds", ""); pref("extensions.zotero.Knowledge4Zotero.syncPeriod", 10000); pref("extensions.zotero.Knowledge4Zotero.autoAnnotation", false); ``` ::: warning 请注意,该文件中每一行的 pref 请勿换行。换行可能导致失效,并不会有明显的错误提示,可能导致新用户的默认配置为空。 ::: ## 首选项窗格 ### 注册首选项窗格 Zotero 现在包含一个用于注册首选项窗格的内置接口。在插件的 `startup` 中: ```js Zotero.PreferencePanes.register({ pluginID: "make-it-red@zotero.org", src: "prefs.xhtml", scripts: ["prefs.js"], stylesheets: ["prefs.css"], }); ``` 更多设置项请参考源码:[preferencePanes.js](https://github.com/zotero/zotero/blob/main/chrome/content/zotero/xpcom/preferencePanes.js#L123)。 窗格的 `src` 应指向包含 XUL/XHTML 片段的文件。片段不能有 ` ``` 要使用 Fluent 进行本地化,请在 XUL `` 中包含一个或多个 HTML `` 元素: ```xml ``` 首选项窗格文本的本地化详情请参考:[本地化](./localization.md)。 ::: warning 设置命名空间以避免冲突 请注意,首选项窗格中的所有 `class` 、`id` 和 `data-l10n-id` 都应命名空间以避免插件之间发生冲突。 ::: ### 绑定首选项 通过将标签的 `preference` 属性设置为首选项的键,即可绑定首选项,例如: ```xml ``` ## 增删改查设置项 源码位置:[chrome\content\Zotero\xpcom\prefs.js](https://github.com/zotero/zotero/blob/master/chrome/content/zotero/xpcom/prefs.js) ```typescript declare namespace Zotero { interface Prefs { /** * Retrieve a preference */ get(pref: string, global?: boolean): boolean | string | number | undefined; /** * Set a preference */ set(pref: string, value: boolean | string | number, global?: boolean): any; clear(pref: string, global?: boolean): void; } } ``` ### Zotero.Prefs.get 读取名称为 `pref` 的 Preference。 `pref` 为 Preference 的键,`global` 为是否是全局命名域,默认否。 注意,对于 `extensions.zotero.addonRef.key`,在页面绑定以及设置编辑器中,Preference 的键名为 `extensions.zotero.addonRef.key`,而在 API 中调用时只需要 `addonRef.key`,否则则需要启用全局命名域。 例:首选项键 `extensions.zotero.formatmetadata.abbr` 的值为 `true`。 ```typescript Zotero.Prefs.get("pdfpreview.enable"); // true Zotero.Prefs.get("extensions.zotero.formatmetadata.abbr"); // undefined Zotero.Prefs.get("extensions.zotero.formatmetadata.abbr", true); // true Zotero.Prefs.get("formatmetadata.abbr", true); // undefined ``` ### Zotero.Prefs.set 设置名称为 `pref` 的 Preference 为 `value`。 `pref` 为 Preference 的键,`value` 为 Preference 的值,`global` 为是否是全局命名域,默认否。 例:首选项键 `extensions.zotero.pdfpreview.enable` 的当前值为 `true`,需要将其修改为 `false`。 ```typescript Zotero.Prefs.set("pdfpreview.enable", false); Zotero.Prefs.get("pdfpreview.enable"); // false ``` ### Zotero.Prefs.clear ::: info Todo ::: ### 辅助函数 在插件模板中,提供了一个简便的工具函数,来见避免我们每次都要输入 `Zotero.Prefs.`: ```ts // src/utils/prefs.ts import { config } from "../../package.json"; /** * Get preference value. * Wrapper of `Zotero.Prefs.get`. * @param key */ export function getPref(key: string) { return Zotero.Prefs.get(`${config.prefsPrefix}.${key}`, true); } /** * Set preference value. * Wrapper of `Zotero.Prefs.set`. * @param key * @param value */ export function setPref(key: string, value: string | number | boolean) { return Zotero.Prefs.set(`${config.prefsPrefix}.${key}`, value, true); } /** * Clear preference value. * Wrapper of `Zotero.Prefs.clear`. * @param key */ export function clearPref(key: string) { return Zotero.Prefs.clear(`${config.prefsPrefix}.${key}`, true); } ``` 有了工具函数,我们就可以通过 `getPref("enable")` 来简写 `Zotero.Prefs.get("pdfpreview.enable");`。 ## 参考资料 * [Zotero 7 for developers](https://www.zotero.org/support/dev/zotero_7_for_developers) * [Zotero types](https://github.com/windingwind/zotero-types/blob/master/types/xpcom/prefs.d.ts) --- --- url: /public/readme.md --- # zotero-chinese.com ![GitHub repo size](https://img.shields.io/github/repo-size/zotero-chinese/zotero-chinese.github.io) 本仓库 (`zotero-chinese/zotero-chinese.github.io`) 存放了 Zotero 中文社区官方网站的构建结果,是 GitHub Pages 兼容仓库,仅包含构建结果,不包含文档源文件,你可以直接 [访问网站](https://zotero-chinese.com)。贡献文档请访问 [zotero-chinese/wiki](https://github.com/zotero-chinese/wiki) 仓库。 --- --- url: /user-guidepluginszotmoov.md --- # ZotMoov ::: tip 简介 用于管理 Zotero 7 的文献附件,它支持以下功能: * 自动/手动将附件移动/复制到指定目录 * 在 Zotero 中删除附件时,自动将其从计算机中删除 * 轻松将指定目录中最后修改的文件添加进 Zotero 条目 ::: ## 为什么要用 ZotMoov ### 搭配云同步 ::: warning 警告 如果您的主要用途是云同步,请注意: * 这种同步方案并非首选,我们优先推荐使用支持 WebDAV 的网盘来进行同步(请参阅 [通过 WebDAV 同步附件](../sync#通过-webdav-同步附件) 文档章节);推荐仅当拟使用的同步服务不支持 WebDAV 时,再使用这种方式。 * 这种方式不支持同步到 Zotero 官方 iOS 和 Android 客户端。 * 不正确的配置可能导致附件丢失。 ::: 如果想在多台设备上看文献,云同步必不可少。然而,Zotero 提供的 300MB 免费空间捉襟见肘;虽然 Zotero 也兼容 WebDAV 协议,但是很多云存储服务(如 OneDrive、百度网盘等)并不提供稳定的 WebDAV 服务;如果想使用 Syncthing 等 P2P 同步更是无从谈起。 ZotMoov 可以将所有附件聚合在指定文件夹下,从而方便地使用各种云同步软件。 ### 更清晰的文件目录结构 原版 Zotero 是将文件存储在一串数字与字母组成的文件夹中,想在 Zotero 以外打开附件的话,完全无法手动找到,往往需要打开 Zotero 再显示文件位置。 而使用 ZotMoov 后,附件的组织方式将更加具有人类可读性。 ## 使用方法 安装插件后, 1. 打开「设置」->「ZotMoov」,将「移动附件到以下目录」选项设置为你想要的目录。 2. 如果需要在多台设备之间同步,打开「设置」 -> 「高级」,将「文件和文件夹」 -> 「已链接附件的根目录」选项也设置为这个目录。 3. ZotMoov 默认只作用于新增的附件,旧有的附件并不会自动更新,你可以按 `Ctrl + A` 全选所有文献后,点击右键菜单的「ZotMoov:移动附件到预设目录」来更新所有文件。 其他选项请根据自己的需求设置。 ## 从 Zotero 6 的 ZotFile 插件迁移 在 Zotero 6 时代,我们常用的类似功能的插件是 [ZotFile](https://github.com/jlegewie/zotfile),然而,[作者已明确表示暂无计划适配 Zotero 7](https://github.com/jlegewie/zotfile/issues/655#issuecomment-1595364307),因此原来的 ZotFile 用户可能会考虑迁移到 ZotMoov。 (以下内容译自 [ZotMoov 官方 README](https://github.com/wileyyugioh/zotmoov#migrating-from-zotfile)) ZotMoov 按理说应该不会破坏 ZotFile 现有的链接文件。但为了确保安全,在更新到 Zotero 7 之前,请 [对 Zotero 数据进行备份](https://www.zotero.org/support/zotero_data#backing_up_your_zotero_data),并对 ZotFile 文件夹进行备份。 如果你不介意新旧文件混在一起,ZotMoov 的数据目录可以就是之前的 ZotFile 目录;或者,如果你想将文件分开存放,可以选择一个新的数据目录。 而对于 ZotFile 的 tablet 文件,你可以使用官方的 [ZotFile Recovery 插件](https://github.com/jlegewie/ZotFile-Recovery) 来恢复。 有一个可能会出现的问题是 [已链接附件的根目录](https://www.zotero.org/support/preferences/advanced#linked_attachment_base_directory)功能。如果你之前使用了这个功能(请检查「设置」->「高级」->「文件和文件夹」->「已链接附件的根目录」),你可能需要修改根目录,改成一个既包含 ZotFile 文件又包含 ZotMoov 文件的文件夹。 最简单的方法是直接复用 ZotFile 文件夹,或者将 ZotMoov 文件夹放在之前的 ZotFile 文件夹内。例如,ZotMoov 数据文件夹可以是 `ZotFile/` 或 `ZotFile/ZotMoov/`。 ## 常见问题 如果您在使用 ZotMoov + 同步盘同步时遇到问题,请阅读:[Attanger/ZotMoov + 同步盘同步问题](../faqs/sync#attanger-zotmoov-同步盘同步问题)。 --- --- url: /user-guidewhy-use-zotero.md --- # 为什么使用 Zotero ::: info 本页部分内容翻译自 [Zotero 官方首页](https://www.zotero.org/) 和 [Why Zotero](https://www.zotero.org/why)。 ::: ## Zotero 是你的科研助理 ![Zotero 主界面](https://www.zotero.org/static/images/home/screenshot-7.0@2x.png) Zotero 是一款免费、易于使用的工具,可以帮助您收集、管理、阅读、批注、引用和共享文献。使用 Zotero 将使你的学术生产效率大增。 ## 为什么选择 Zotero 我们希望创建最好的研究软件,我们认为这不仅意味着生产出色、强大的工具,而且还提供最好的支持并做出让您掌控数据的决策。 ### 一键抓取文献,保存一切 当您浏览网页时,Zotero 会自动探测文献。 需要 JSTOR 的文章或 arXiv.org 的预印本?亦或者是《纽约时报》的新闻报道还是图书馆的书籍?Zotero 随时随地为您服务。 ![浏览器快速抓取文献至 Zotero](../assets/images/zotero官方-渲染图-connector.png) ### 按你想要的方式管理文献 Zotero 可以帮助您以您想要的方式管理您的文献。您可以将条目分类到集合中并使用关键字标记它们。或者创建保存的搜索,在您工作时自动填充相关材料。 ![清晰明了的分层管理及标签分类](../assets/images/zotero官方-渲染图-管理条目.png) ### 用正确的样式引用文献 Zotero 可立即为任何文本编辑器创建引注和参考文献表,并内建对 Word、LibreOffice 和 Google Docs 的支持。 Zotero 支持 10,000 多种引用样式,您可以以任何样式指南或出版物格式化您的参考文献。 ![写作时方便快速的插入引文](../assets/images/zotero官方-插入引文.png) ### 保持同步 Zotero 可以跨设备同步您的数据,使您的文件、笔记和题录无缝保持最新。 如果您开启同步,您还可以随时从任何浏览器访问您的文库。 ![保持同步](https://www.zotero.org/static/images/home/sync-xl.svg) ### 自由协作 Zotero 可让您与同事共同撰写论文、向学生分发课程材料或构建协作参考书目。您可以与任意数量的人免费共享 Zotero 库。 ![自由协作](https://www.zotero.org/static/images/home/collaborate.svg) ### 隐私安全 Zotero 由独立的非营利组织开发,对您的数据没有经济利益,我们在做出的每个决定中都会考虑隐私。 Zotero 是一个本地程序,将您的数据存储在您自己的计算机上,并且无需与我们共享任何数据即可使用它 - 您甚至不需要创建 Zotero 帐户即可使用它。\[^2] 如果您确实选择共享您的数据(例如通过使用 Zotero 同步),您可以放心,我们使用它只是为了为您提供最佳体验,并且我们不会将其视为潜在收入流。 我们易于阅读的 [隐私政策](https://www.zotero.org/support/privacy) 解释了我们收集的每一条数据、我们如何处理这些数据以及如何避免共享这些数据。 ![隐私安全](https://www.zotero.org/static/images/home/privacy.svg) ### 优秀的社区支持 Zotero 社区的有力支持。当使用 Zotero 遇到问题时,你可以收到 Zotero 开发人员或者专家社区人员的回复,并且 Zotero 的插件编写者与使用爱好者遍布各地,你可以非常方便的通过你的社交媒体联系到他们。 ### 持续改进 Zotero 自 2006 年问世以来,我们每天都在努力使其变得更好。我们定期添加新功能,如果您发现错误,我们通常会在一两天内为您提供修复程序。\[^1] 我们会努力支持新版本的操作系统、浏览器和文字处理器。Zotero 开发人员公开工作,因此您可以在 GitHub 上关注随时查看正在开发的内容,并且可以通过参与 Zotero 论坛的讨论来直接影响软件的方向。 ### 开源和免费 作为一个开源工具,Zotero 在两种意义上是免费的:您无需付费即可使用它,并且您可以自由地更改其代码以使其执行您想要的操作。第一个的好处是显而易见的,但第二个对于您委托研究数据的程序至关重要。Zotero 始终保证用户完全访问自己的数据,但开源意味着您无需相信我们的话。如果明天运行 Zotero 的组织就消失了,或者如果我们做出了一个没有把用户利益放在第一位的决定,那么其他人就可以自由地获取 Zotero 的源代码并继续维护和改进它。\[^3] 作为更广泛的开源社区的一部分,我们致力于支持开放软件和开放标准。我们帮助创建了现在大多数参考软件中使用的引文风格语言,并且我们目前正在为开放科学工具联合路线图做出贡献。我们构建的工具供维基百科编辑使用 Zotero 强大的网络保存功能来引用来源。我们创建的所有软件都可以免费供其他人使用和修改。\[^4] ### 高级功能 如果 Zotero 不是一个强大、专业的工具,那么最好的策略也毫无意义。Zotero 具有无与伦比的能力,可以[保存来自网站、期刊文章、报纸等的高质量出版物数据](https://www.zotero.org/support/adding_items_to_zotero#via_your_web_browser),或者[检索您拖入的 PDF 的出版物数据](https://www.zotero.org/support/retrieve_pdf_metadata)。Word、LibreOffice 和 Google Docs 的[文字处理器集成](https://www.zotero.org/support/word_processor_integration)使其易于管理您撰写时的引文和参考书目。[内置 PDF 阅读器](https://www.zotero.org/blog/zotero-6)可让您标记 PDF,然后将引用的引文和评论直接提取到笔记或文字处理文档中。Zotero 可以通过 [DOI 或 ISBN 自动添加出版物数据](https://www.zotero.org/support/adding_items_to_zotero#add_item_by_identifier),并在您无法访问论文时[查找开放获取的 PDF](https://www.zotero.org/blog/improved-pdf-retrieval-with-unpaywall-integration/)。您可以创建[高级搜索](https://www.zotero.org/support/searching) - 例如,提及上个月添加的某个关键字的所有文章 - 并将它们保存为自动更新集合。当您在浏览器中打开付费页面时,Zotero 可以通过您机构的代理自动重定向您,以便您可以访问 PDF。如果您试图引用一篇被撤回的论文,Zotero 甚至[可以警告您](https://www.zotero.org/blog/retracted-item-notifications/)。 除了 Zotero 自身的功能之外,插件系统还允许外部开发人员向 Zotero 添加[高级功能](https://www.zotero.org/support/plugins),例如[更灵活的文件管理](http://zotfile.com/)和[改进的 BibTeX 支持](https://retorque.re/zotero-better-bibtex/)。 ## 为什么不选择 Zotero Zotero 被设计为一款功能强大、灵活的工具,几乎可以适应任何工作流程,但没有任何工具能够完美适合所有人。以下是人们选择使用其他工具的一些原因: ### 太复杂了 人们以各种方式使用 Zotero,虽然我们努力使其尽可能易于使用,但它包含许多一开始可能会令人生畏的高级功能。 如果您在使用 Zotero 时遇到问题,我们强烈建议您在 Zotero 论坛上发帖,Zotero 开发人员和社区专家可以在其中引导您解决遇到的任何问题,并帮助您找出最佳工作流程。 最后,如果您仍然发现 Zotero 超出您的需要,请查看 Zotero Bib,我们免费、简单、基于网络的工具,用于创建参考书目,基于 Zotero 中相同的高级保存和引用功能。 ### 不完全基于网络 Zotero 主要是一个在您自己的计算机上运行的程序。如果您选择创建帐户并同步数据,您还可以访问 `zotero.org` 上的网络图书馆。然而,虽然网络库允许您查看和编辑数据以及访问同步文件,但要获得完整功能,您需要在每台同步计算机上安装 Zotero。 如果您无法安装软件而只需要创建参考书目,请尝试 ZoteroBib。 ### 没有私人支持 几乎所有 Zotero 支持都是公开的,我们认为这使我们能够提供比大多数软件提供的更好的支持。请注意,「公开」并不意味着您受到大众的摆布:当您在 Zotero 论坛中提出问题时,您将获得来自构建该软件的 Zotero 开发人员以及值得信赖的快速、直接支持社区专家,他们带来了 Zotero 和相关学术科目的令人难以置信的深度知识。 如果您不想以自己的名义公开发布信息,您可以从帐户设置中为论坛选择不同的用户名,并且无需公开发布身份信息。 有关更多信息,请参阅 [Zotero 支持的工作原理](https://www.zotero.org/support/zotero_support)。 如果您需要面对面的帮助,大多数大学图书馆都提供 Zotero 指导和支持。甚至可以要求有技术背景的朋友或同事阅读我们提供的有关许多主题的[详细文档](https://www.zotero.org/support)。 但如果您仍然致力于基于电话或电子邮件的支持,则需要寻找其他方法。 ## 其他同类软件 ### EndNote EndNote 只支持二级目录,而 Zotero 支持多级分类。 EndNote 标签功能较简单(仅支持条目标签,且必须选定颜色),而在 Zotero 中你可以轻松的通过标签对条目、附件、笔记、注释进行查找、分类和管理。 Endnote 是一款收费软件:标准版官网售价 1818RMB,教育版官网售价 1218RMB。 ### Mendeley Mendeley 免费但不开源。 Mendeley 的数据迁移到新的电脑比较麻烦,这可能会耗费你大量的时间精力。 Mendeley 的使用并不能够完全离线,在国内的网络环境下,你可能偶尔会面临无法登录 Mendeley 网站以致于无法使用软件的情况。 ### NoteExpress NoteExpress 是一款国产文献管理软件,对中文文献和中文数据库的支持较为优秀,但是他同样是一款付费软件,永久授权标准版 1980RMB。 NoteExpress 只支持 Windows 系统,Mac 和 Linux 系统则被拒之门外。 ### 知网研学 知网研学支持的数据库较少,在 Mac 上甚至只支持 CNKI 学术总库。 知网研学的订阅费用,高校版 198RMB/年,标准版 998RMB/年,尊享版 3298RMB/年,还请自行体会。 \[^1]: 其他参考文献管理器经历了很长一段时间几乎没有发展,这会破坏生产力,甚至阻碍对研究数据的访问。例如,EndNote [直到发布 7 个月后才支持 Word 2016 for Mac](https://twitter.com/EndNoteNews/status/694563436408143872)。Mendeley 花了数年时间来[支持最新版本的 macOS](https://www.mendeley.com/release-notes/v1_18) ,并花了[两个月的时间](https://blog.mendeley.com/2018/07/18/how-to-recover-your-files-and-annotations-in-mendeley-desktop-july-2018/)来解决有关 PDF 从用户库中消失的报告。 \[^2]: Mendeley、RefWorks、EndNote Web 和 Paperpile 都要求您登录,因此如果它们的所有者[决定停止支持他们的软件](https://blog.mendeley.com/2021/03/11/mendeley-refocusing-announcement-mobile-app-retirement/),或者即使他们的服务暂时关闭,您也将无法打开您的图书馆。 \[^3]: [Mendeley 会加密您的数据库](https://www.zotero.org/support/kb/mendeley_import),防止您将数据完整导出到其他工具,甚至在您无法打开程序时根本无法访问您的数据。 [EndNote 声称](https://en.wikipedia.org/wiki/EndNote#Legal_dispute_with_Zotero)没有人可以在没有他们的软件的情况下打开 EndNote 文件。 \[^4]: Mendeley、RefWorks、Papers 和 Paperpile 都是专有且闭源的,但它们依赖于 Zotero 社区创建的开源软件。所有这些都使用为增强 Zotero 的引用能力而开发的[引文处理器](https://github.com/Juris-M/citeproc-js)。他们提供的[数千种引文样式](https://github.com/citation-style-language/styles)中的大多数都是由 Zotero 用户请求或创建的。Mendeley 文字处理插件基于 [Zotero 插件的早期版本](https://www.mendeley.com/release-notes/v1_19_2)。 RefWorks [使用 Zotero 的站点翻译器](https://knowledge.exlibrisgroup.com/RefWorks/Product_Documentation/RefWorks_User_Guide/Appendix%3A_Supported_Save_to_RefWorks_Sites_\(Translators\))来保存浏览器中的书目数据。通过使用 Zotero,您将获得更好的支持和更早的更新,以及影响这些工具开发的机会。 --- --- url: /user-guideimport-from-other-software.md --- # 从其他软件导入条目 ## 从 Endnote 导入 ### 导出 EndNote 库 Zotero 无法直接导入 `.enl` 格式的 EndNote 库,因此第一步是从 EndNote 导出您的库为 XML 格式。 对于较旧的 EndNote 库,可能需要在导出之前将图形转换为附件。步骤为:「References」菜单 -> 「Figure」 -> 「Convert Figures to File Attachments…」。 1. 如果您想要导出 EndNote 库的子集,请先选择您想要导出的条目 2. 转到「File」菜单 → 「Export」。将弹出一个对话框,询问您导出文件的保存位置 3. 在上一步弹出的对话框中导航到您的 EndNote 数据目录(通常为 `我的文档/endnote.data`)。该目录包含一个「PDF」文件夹,但您应确保选择数据目录而不是任何子文件夹(例如 PDF 文件夹)内 ::: warning 这个很重要!Zotero 将在相对于导出的 XML 文件位置的目录中查找文件附件。如果您将此文件保存在错误的位置,则当您导入 Zotero 时,文件附件将不会包含在内。 ::: ::: details 找不到库存储在了哪里? 有两种方法,一种方法为搜索 enl 文件。 另一种方法为复制要导出的文献到新库(New library): 打开 Endnote 软件,点击左上角工具栏「Referrence」->「Copy Reference To」->「New Library...」 ![Endnote 菜单](../assets/images/endnote-menu.png) 如下图示,在弹出来的文件浏览器页面选择一个容易找到的文件夹(以桌面为例,图中步骤 ①),接着自定义库的名称(后续导入 Zotero 内成为一个新文件夹默认使用该名称,图中步骤 ② 以**test**为例),点击「Save」 ![Endnote 输出目录](../assets/images/endnote-save.png) Endnote 内打开保存的新库,点击左上角工具栏「File」->「Export」 ![Endnote 导出](../assets/images/endnote-export.png) ::: 4. 选择「保存类型」为「XML」 5. 如果您只想导出库的子集,请选中「Export Selected References」框,否则,请确保未选中它 6. 点击「Save」 7. 退出 EndNote ### 导入 Zotero 如果您不导入到空库中,我们强烈建议您 [备份 Zotero 数据目录](./backup.md)。备份后,如果你对这次导入不满意,只需从备份中恢复您的库即可。 您还应该在 Zotero 的 [同步](./sync.md) 首选项中暂时禁用自动同步。导入库并检查确保您对导入的数据满意后,您可以重新启用自动同步。 打开 Zotero,在左上角工具栏选择「文件」->「导入...」 ![Zotero 菜单](../assets/images/endnote-zotero-import.png) 如下图示,在弹出的 import 窗口界面选择「A file(BibTex,RIS,Zotero RDF,etc.)」,点击继续 ![Zotero 导入选项](../assets/images/endnote-zotero-import-option.png) 在弹出的文件浏览器界面选择从 EndNote 中导出的 xml 文件,点击「Open」 ![选择文件](../assets/images/endnote-xml-open.png) 在弹出的 import 窗口中,有两类选项,第一类是导入的题录信息的位置:是否将题录信息导入到一个新的分类。 第二类是文件的位置:我们推荐选择「Copy files to the Zotero storage folder」,这将条目的 PDF 等附件也导入到 Zotero 的存储文件夹中,便于 Zotero 同步(否则只是存储文件链接,在其他设备打不开附件),最后点击「继续」。 ![Zotero 导入向导第二步](../assets/images/endnote-zotero-import-option2.png) 如下图所示,Endnote 的题录和附件则导入成功。 ![Zotero 导入完成](../assets/images/endnote-zotero-succ.png) 请注意,如下图示,如果 Zotero 在 EndNote XML 数据中遇到它不支持的任何字段(例如,自定义字段、作者地址、作者隶属关系),它会将这些数据添加到附加到导入项目的注释笔记中。这些注释将标记为「\_EndnoteXML 导入」。如果导入增加了许多这些注释笔记,Zotero 的性能可能会受到负面影响。您应该查看其中每个注释,以确定是否需要保留数据并删除任何不必要的注释笔记。此外,还应检查这些注释笔记,以确定是否可以将任何数据迁移到正确的 Zotero 字段(如果以非标准方式使用 EndNote 字段,这一点尤其重要)。 ![Zotero 导入非标字段](../assets/images/endnote-zotero-caution.png) ## 从 Microsoft Word 导入 **1、下载 bibtex.xsl 文件** 下载地址: **2、Word 软件添加 bibtex 样式** 目录如下(详细步骤以 Mac 为例) Mac 目录: `/Applications/Microsoft Word.app/Contents/Resources/Style` Windows 目录 Word 2010 for Windows: `C:\Program Files\Microsoft Office\\Bibliography\Style` Word 2016/2019/Office 365 for Windows: `C:\Users\\AppData\Roaming\Microsoft\Bibliography\Style` 打开访达,左上角工具栏点击「前往」->「前往文件夹」 ![Word 导出](../assets/images/word-export-folder.png) 在弹出的窗口粘贴上面提到的 Mac 路径,按 Enter 键 ![选择路径](../assets/images/word-finder-path.png) 将下载好的 bibtex.xsl 文件复制到该文件夹下。 ![复制 bib](../assets/images/word-copy-bib.png) **3、Word 引文导出** 打开 Word 文件,如下图中 ① 所示,在选项卡中点击「引用」,紧接着点击图中 ② 所示,切换引文格式 ![Word 切换引文格式](../assets/images/word-export-reference.png) 选择「Bibtex Export」 ![选择 bibtex export](../assets/images/word-export-reference-format.png) 即可看到文末参考文献列表的引文格式发生了变化,复制下图所示区域的代码到剪切板。 ![复制代码](../assets/images/word-export-reference-copy.png) **4、导入 Zotero** 打开 Zotero,在「我的文库」中选择(或新建后选中)一个文件夹,用于存放要导入的文献条目,在左上角工具栏点击「文件」->「从剪切板导入」 ![导入 Zotero 菜单](../assets/images/word-zotero-import.png) 即可如下图所示,成功导入 Word 文档中引用的文献。 ![导入完成](../assets/images/word-zotero-succ.png) ## 其他工具软件 详细信息请见官方链接:。 * Mendeley: * Citavi: * Plain text reference lists: * Bib(La)TeX: * JabRef: ## Zotero 支持导入的文件格式 * Zotero RDF * CSL JSON * BibTeX * BibLaTeX * RIS(Can be convenient for quick edits between export & import because of its simple structure) * Bibliontology RDF * MODS (Metadata Object Description Schema) * Endnote XML(Best format for exporting from Endnote) * Citavi XML(Best format for exporting from Citavi) * MAB2 * MARC * MARCXML * MEDLINE/nbib * OVID Tagged(使用教程参考 * PubMed XML * RefWorks Tagged(Best format for exporting from RefWorks) * Web of Science Tagged * Refer/BibIX(Generally avoid if any other option is available) * XML ContextObject * Unqualified Dublin Core RDF 您还可以通过支持「导出上述文件格式的网站或软件」中导入题录到 Zotero,例如 Reference Manager、RefWorks、Papers、Google Scholar Library、ReadCube 等,方法是下载好以上的标准化的参考格式文件,例如 RIS、BibTeX 或 CSL JSON,然后通过单击「文件」→「导入...」导入 Zotero,然后选择「文件」,即可导入 Zotero。 --- --- url: /user-guidefaqsrestore-data-from-backup.md --- # 从备份中恢复 Zotero 数据 本教程将指导您如何从各种备份中恢复 Zotero 数据,包括同步备份、手动备份、自动备份等多种情况。 \[\[TOC]] ::: warning 在进行任何恢复操作前,请确保 Zotero 已经关闭。在 Zotero 运行时修改数据文件可能会导致数据损坏。 ::: ::: tip 提醒 在对数据文件夹进行任何操作之前,都建议您先对数据文件夹进行备份,以备不时之需。备份的步骤详见:[Zotero 备份教程](../backup)。 ::: ::: danger 无论你选择何种同步方案,也无论基于何种原因,切勿将 Zotero 的 `数据存储位置/Data Directory` 自定义为任何网盘的同步文件夹中(包括 iCloud),也切勿使用任何网盘/同步盘的备份功能直接同步/备份这一目录!(包括但不限于直接使用坚果云的官方客户端直接同步备份这一文件夹) 这样做在某些情况下可能会导致你的 Zotero 数据库损坏,带来严重的问题!官方对于这一问题的说明见这两篇文章: * [How can I access my library from multiple computers?](https://www.zotero.org/support/sync#alternative_syncing_solutions) * [Can I store my Zotero data directory in a cloud storage folder?](https://www.zotero.org/support/kb/data_directory_in_cloud_storage_folder) 如果您已经将 Zotero 数据文件夹直接同步到网盘中,请您做好[备份](../backup#手动备份),根据 [自定义数据文件夹](../faqs/custom-data-directory) 的教程将数据文件夹迁移到本地的其他位置,且确保未使用任何工具直接同步这一数据文件夹。 ::: ## 使用 Zotero 同步恢复数据 如果您更换了新设备,或重新安装了系统(本地库为空),且之前正确配置了 [Zotero 数据和文件同步](../sync) 功能并进行了完整的同步,您可以通过同步从在线库恢复您的数据。 1. **验证在线库数据完整性** 首先访问 [Zotero 官网](https://www.zotero.org/user/login) 登录您的账户,然后点击页面顶部的 `Web Library` 进入在线文献库,确认在线库中的数据是否完整且正确。 ::: details 如果您使用「WebDAV 同步」或「Attanger/ZotMoov + 同步盘」方案同步附件... 如果您使用了「WebDAV 同步」或「Attanger/ZotMoov + 同步盘」方案同步附件,由于附件未同步在 Zotero 官方存储空间,您会在在线库中看到附件的文件名,但无法下载和查看附件,这是正常的。 您可能需要前往 WebDAV 网盘或同步盘服务商的网页端检查附件是否完整。一般来说,您可以通过网盘中附件存储文件夹占用的空间大小来粗略判断附件同步是否完整。 * **如果您使用的是 WebDAV 同步**: 你可以检查 WebDAV 网盘中 `zotero` 文件夹中 `zip` 压缩包的数量,每个 `zip` 中会存放一个附件文件。通常来说,`zip` 应与 Zotero 中存储的各类附件的总数一致。 您还可以将比较 WebDAV 网盘中 `zotero` 文件夹的大小与 Zotero 数据目录中 `storage` 文件夹的大小进行比较,来判断附件同步是否完整。由于 WebDAV 同步时会将附件压缩成 `zip` 压缩包,实际占用空间可能略小于 Zotero 数据目录中 `storage` 文件夹的大小。 * **如果您使用的是 Attanger/Zotmoov + 同步盘**: 您可以直接检查个文件夹中文件的数量,来判断附件是否齐全。 ::: 2. **设置同步** 设置 Zotero 的 [数据同步](../sync#数据的同步) 和 [文件同步](../sync#文件的同步),操作步骤详见:[Zotero 同步](../sync)。 3. **开始同步** 点击 Zotero 界面上的「同步」按钮,Zotero 将从服务器下载您的库。 ::: info Zotero 只同步明确的删除操作,因此仅同步一个空库不会覆盖服务器数据,除非您手动删除了条目。 ::: ::: details 如果您电脑上的本地 Zotero 数据库中有内容... 如果您的本地 Zotero 库有内容,但想用在线库中的数据覆盖它: 1. 关闭 Zotero。 2. 将旧的数据库复制到其他地方备份,以备不时之需。 3. 删除旧 Zotero 数据目录中的所有文件和文件夹,只保留一个空的数据目录文件夹。(如果您已将旧数据目录文件夹剪切到其他地方,您也可以在原位置新建一个同名文件夹)。 4. 重新打开 Zotero 并设置同步。操作步骤详见:[Zotero 同步](../sync)。 5. 开始同步。 ::: ## 从本地备份中恢复数据 ### 从完整手动备份恢复数据 如果您有 Zotero 数据目录的手动 [备份](../backup),可以用它替换当前的数据目录来恢复您的库。 1. **暂时禁用同步** 如果您之前设置了同步,请在 Zotero 的 `编辑` → `设置` → `同步` 中,取消选中 `自动同步` 选项。这样可以防止 Zotero 在操作过程中自动同步。 2. **查看当前数据目录位置** 打开 Zotero 的 `编辑` → `设置` → `高级` → `文件和文件夹` ,记下 `数据存储位置` 的路径(默认是您的用户文件夹中的 `Zotero` 目录)。 3. **打开数据目录** 点击 `打开数据文件夹` 按钮,打开当前数据目录(目录中包含 `zotero.sqlite` 等文件和 `storage` 等子目录)。 4. **备份当前数据目录** 关闭 Zotero,进入数据目录的上级文件夹,将当前数据目录重命名为 `Zotero-Old`。 5. **替换为备份数据** 将您的备份数据目录复制到原来的位置(例如,复制到重命名前的 `Zotero` 位置,并将新复制过来的目录重命名为 `Zotero`)。 6. **重启 Zotero 并处理同步** 重新启动 Zotero,您应该能看到备份版本的库。如果不需要的更改已经同步,请参照下面 [从备份恢复并覆盖已同步的更改](#从备份恢复并覆盖已同步的更改) 中的方法处理。 7. **重新启用同步** 确认恢复成功后,在 Zotero 的 `编辑` → `设置` → `同步` 中,重新选中 `自动同步` 选项,启用自动同步。恢复成功后,您可以删除 `Zotero-Old` 文件夹,直到确认恢复的数据无误。 ### 从数据库自动备份恢复数据 如果您在使用 Zotero 时犯了错误(例如,意外删除大量条目),可以尝试恢复到最近的自动备份。 ::: info 自动备份只包含数据库(文献条目信息、笔记、附件、标签、分类),不包含附件文件。 ::: 1. **暂时禁用同步** 如果您之前设置了同步,请在 Zotero 的 `编辑` → `设置` → `同步` 中,取消选中 `自动同步` 选项。这样可以防止 Zotero 在操作过程中自动同步。 2. **查找自动备份文件** 打开您的 Zotero 数据目录,找到里面所有文件名开头为 `zotero.sqlite` 且后缀名为 `.bak` 的文件(如:`zotero.sqlite.bak`)。这些文件是 Zotero 的自动备份文君,文件的修改时间可能有助于确定哪个文件包含您要恢复的数据。建议先将这些 `.bak` 文件复制到其他位置备份一下,以备不时之需。 3. **替换数据库文件** 关闭 Zotero。在数据目录中,将 `zotero.sqlite` 重命名为 `zotero.sqlite.old`,然后将选定的 `.bak` 文件之一重命名为 `zotero.sqlite`。 4. **重启 Zotero 并处理同步** 重新启动 Zotero,您应该能看到备份版本的库。如果不需要的更改已经同步,请参照下面 [从备份恢复并覆盖已同步的更改](#从备份恢复并覆盖已同步的更改) 中的方法处理。 5. **重新启用同步** 确认恢复成功后,在 Zotero 的 `编辑` → `设置` → `同步` 中,重新选中 `自动同步` 选项,启用自动同步。保留 `zotero.sqlite.old` 和您的 `.bak` 文件备份,直到确认所有数据都完好无损。 ## 从备份恢复并覆盖已同步的更改 如果您不小心在 Zotero 库中进行了不需要的更改并已同步到在线库,您可以使用本地备份恢复数据并覆盖在线更改。 1. **暂时禁用自动同步** 在 Zotero 的 `编辑` → `设置` → `同步` 中,取消选中 `自动同步` 选项。这样可以防止 Zotero 在操作过程中自动同步。 2. **从备份恢复数据** 按照前文 [从本地备份中恢复数据](#从本地备份中恢复数据) 中的步骤恢复本地数据库。 3. **处理潜在的同步冲突** 恢复数据后,如果直接同步,在线库中的更新数据会替换您刚恢复的数据。根据情况选择以下方法之一: * **恢复少量删除的条目或笔记**:右键点击并选择「创建条目副本」创建副本,这样同步后新副本会保留。 * **恢复删除的分类**:重复创建一个新的分类,并将条目从旧分类拖到新分类。同步时,旧分类将被删除,但新分类会保留。 * **恢复大量更改**:使用「替换在线库」功能强制 Zotero 上传本地库版本,覆盖之前同步的更改。这需要在 Zotero 中点击 `编辑` → `设置` → `同步`,然后在 `重置` 中点击 `显示重置选项` 按钮,然后在「重置」界面中选中 `替换在线文献库`,最后点击 `重置...` 按钮。请注意,这将使用本地数据强制覆盖在线库中的所有数据。 4. **恢复自动同步** 确认恢复成功后,重新启用「自动同步」选项。 ## 降级 Zotero 时从升级备份恢复数据 当您升级到新版本的 Zotero 时,系统会自动备份您的数据库。如果需要降级到低版本 Zotero,可以使用这些备份。 :::: details 如何降级 Zotero 并恢复数据 1. **查找升级备份文件** 打开您的 Zotero 数据目录,升级备份通常是数据目录中编号最高的 `zotero.sqlite.[数字].bak` 文件。 2. **备份当前数据目录** 在进行任何更改前,建议备份整个 Zotero 数据目录。备份教程详见:[Zotero 备份教程](../backup)。 3. **替换数据库文件** 安装旧版 Zotero,关闭程序,用 `zotero.sqlite.[最高编号].bak` 替换数据目录中的 `zotero.sqlite`,然后重启 Zotero。 ::: warning 如果您尝试在旧版 Zotero 中打开升级后的数据库,Zotero 会显示错误。请关闭 Zotero 并按上述方法替换 `.sqlite` 文件。 ::: 4. **同步更新** 如果您使用了同步功能,Zotero 将从在线库中同步自上次使用旧数据库以来的所有更改。 ::: tip 如果您没有使用同步功能,可能需要将数据库升级后添加的条目导出为 Zotero RDF 格式,然后再导入到早期版本中。按「添加日期」排序您的库可能有助于找到这些条目。 ::: :::: ## 找不到 Zotero 数据的解决方案 如果打开 Zotero 发现库为空或缺少大量数据,可能有几种原因: 1. **数据库文件损坏或丢失** 可能是 `zotero.sqlite` 文件被意外删除或损坏。检查数据目录中是否有较大的 `zotero.sqlite.bak` 文件或其他备份。 2. **Zotero 查找数据的位置错误** Zotero 可能在错误的位置查找数据。检查「编辑」→「设置」→「高级」→「文件和文件夹」中的数据目录路径是否正确。 如果尝试以上方法后仍无法找到您的数据,可能需要:搜索计算机上的其他位置,寻找包含 `zotero.sqlite` 的其他文件夹。在找到合适的备份文件后,参照 [从本地备份中恢复数据](#从本地备份中恢复数据) 的步骤进行恢复。 ## 仍然无法解决? 如果上面的步骤均无法解决您的问题,您可以阅读官方文档:[Restoring Your Zotero Data From a Backup - Zotero Documentation](https://www.zotero.org/support/zotero_data#restoring_your_zotero_data_from_a_backup),了解更多细节和解决方案。 如果您确实无法成功恢复数据,您可以前往 [Zotero 官方论坛](https://forums.zotero.org/) 发帖提问寻求帮助。 --- --- url: /blog/posts/hello-zotero-7.md --- # 你好,Zotero 7 我们非常高兴 Zotero 官方团队终于正式推送了近年来最大的更新:Zotero 7! 从 [第 1 个测试版发布](https://forums.zotero.org/discussion/105094/announcing-the-zotero-7-beta/p1) 开始,历时 446 天,117 个测试版本,Zotero 7.0 终于问世了。 这一全新版本不仅提升了用户体验,还引入了一系列强大的新功能,包括更快速的性能、更灵活的 PDF 注释工具以及对插件系统的重大改进。 \[\[toc]] ## Zotero 7 的亮点功能 ### 全新的界面 好看的!现代化的! ![全新界面](https://www.zotero.org/static/images/blog/7.0/library.png) #### 原生支持深色模式 ![深色模式](https://www.zotero.org/static/images/blog/7.0/dark-mode.png) #### 新的 APP 图标 #### 内建附件预览 是的!你不需要再使用 Zotero PDF Preview 插件了,Zotero 现在原生支持附件预览,包括但不限于 PDF、EPUB、网页等。 ### 性能提升 由于底层从 Zotero 6 时代的 FireFox 60 更新到了现在的 FireFox 115,Zotero 7 在大型数据库处理和启动速度上有显著提升,让研究更为流畅。 ### 阅读器增强 #### 更好用的注释工具 现在,你可以直接在 Zotero 中对 PDF 进行高亮、下划线和添加便签,还可以画图! 所有注释内容都能轻松导出,方便后续整理和引用。 ![注释工具](https://www.zotero.org/static/images/blog/7.0/lassie-760.png) #### 更多支持的格式 除了 PDF,现在 Zotero 也支持打开 EPUB 和网页了! 注:DOCX、XLSX、PPTX 等 Office 文档仍不支持 ![阅读器增强](https://www.zotero.org/static/images/blog/7.0/epub.png) #### 链接预览 现在可以在弹窗中预览参考文献和图表(好用!) ![参考文献浮窗](https://www.zotero.org/static/images/blog/7.0/reference-popup.png) ### 更智能的引用过程 现在引用正在阅读的文献更快、更直观。 引文对话框会自动建议您在条目列表中选中的项目或在阅读器中打开的项目。现在,引用正在查看的内容之需要「添加/编辑引文」并按 Enter/Return。 ![引用](https://www.zotero.org/static/images/blog/7.0/smarter-citing.png) ### 更多特性 * 分类搜索 * 标签页 * 附件预览 * 更高级的附件重命名 * 无障碍优化 * 插件架构优化 * 还有很多! ::: tip 详细的变更请阅读 Zotero 的官方博文:[Zotero 7: Zotero, redesigned](https://www.zotero.org/blog/zotero-7/)。 ::: ## 如何更新到 Zotero 7 ### 如果你正在使用 Zotero 6 点击 Zotero 菜单栏的「帮助」-「检查更新」,即可自动更新到 7.0 正式版。 注意:建议 Windows 用户前往 [Zotero 官网](https://zotero.org/download) 下载新的安装包覆盖安装,因为自动更新后的仍是 32 位版本的 Zotero,而 Zotero 7 现在已经支持 64 位系统了,使用 64 位的 Zotero 性能更好! ### 如果你正在使用 Zotero 7 beta 我们推荐你尽快切换到 Zotero 7 正式版。 现在还不能自动从 beta 版切换回正式版,需要前往 [Zotero 官网](https://zotero.org/download) 下载最新正式版覆盖安装。 关于安装请阅读 [安装 Zotero](/user-guide/install)。 ::: info 想继续停留在 beta 版本? 如果想留在 beta 版,则无需任何操作。 ::: ## 常见问题 ### 更新后会影响文献等数据吗 不会,可以放心更新。 ### 正式版会更加稳定吗 当然! 我们推荐普通用户尽快切换到正式版,beta 版本是用于开发者测试的,会比正式版更新更加频繁,但更不稳定,不适合作为生产用途。 ### 更新后插件可以适配吗 绝大部分插件都已经适配了 Zotero 7,到现在了还没适配的有很大概率也不会再适配了。 更新 Zotero 后,大部分插件应该都可以自动更新到适配 Zotero 7 的版本,如果你的插件没有自动更新成功,请前往 [中文社区插件商店](/plugins/) 下载兼容 Zotero 7 的插件版本。 喜欢使用 ZotFile 插件的同学,因为该插件已经停止对 Zotero 7 的支持,你可以在 Zotero 7 上使用 [Attanger 插件](https://github.com/MuiseDestiny/zotero-attanger) 替代。 安装插件请阅读 [关于插件](/user-guide/plugins/about-plugin) 和 [关于安装插件中常见的问题](/user-guide/faqs/plugins)。 注意:由于插件商店是定时更新的,因此可能存在滞后,如果你发现你下载的插件版本不能正常安装于 Zotero 7,请在下方评论区留言或到 [`zotero-chinese/zotero-plugins`](https://github.com/zotero-chinese/zotero-plugins) 仓库发布一个帖子告诉我们。 ### XXX 系统可以更新吗 本次更新是全平台更新,包括:macOS、Windows (64 bit, 32bit, & ARM 版本)、Linux、iOS。安卓版尚在内测。 ## 未来 随着 Zotero 7 的发布,Zotero 中文社区将继续致力于为用户提供优质的资源与支持: * **持续维护百科全书**:我们将定期更新百科全书内容,移除已过时的介绍,并增加对新功能的详尽解析,确保用户能够及时获取到最新的使用指南。 * **更新插件商店**:插件商店页面现已默认显示支持 Zotero 7 的插件,我们计划在秋季学期开学前移除不再兼容 Zotero 7 的插件,确保用户能够无缝过渡到新版本。 * 更多更新敬请期待... 感谢每一位社区成员的支持与贡献! Zotero 中文社区是我们共同努力的成果,期待在未来的日子里,继续与大家一起探索和推动 Zotero 在中文用户中的发展。让我们一同迎接 Zotero 带来的全新体验!🎉🚀 *** ::: info Copyright 本文部分图文来自 [Zotero 官方团队博客](https://www.zotero.org/blog/zotero-7/)。 Some of the pictures in this post are from the [Zotero official team blog](https://www.zotero.org/blog/zotero-7/). ::: --- --- url: /contributinggithub-codespace.md --- # 使用 GitHub Codespace 修改文档 GitHub 代码空间是托管在云上的开发环境,这使得我们无需再安装 VS Code, Node.js 和 Git 等开发软件,就可以对文档进行维护编辑。 从名称很明显可以看出,「代码空间」是由 GitHub 运营的,因此使用此方法显然需要一个 GitHub 账号。 ## 1 进入代码空间 点击下面的按钮/链接,进入创建/选择代码空间的页面: [![在 GitHub Codespaces 中打开](https://github.com/codespaces/badge.svg)](https://codespaces.new/zotero-chinese/wiki?quickstart=1) (仓库主页的按钮与这里的按钮作用一致) ### 初次贡献 如果这是你第一次贡献文档,或是你有相当长一段时间没有打开过 CodeSpace 了,你将会看到下面的界面: ![创建代码空间](../assets/images/contributing/贡献指南-创建codespace.png) 选择绿色按钮「Create new codespace」以创建一个新的代码空间,然后等待页面加载完成,创建进度条完成: ![创建 codespace 进度条](../assets/images/contributing/贡献指南-创建codespace进度条.png) 随后,你将进入到如下页面,代码空间配置完成。 ![创建 codespace 完成](../assets/images/contributing/贡献指南-vsc首页.png) ### 非初次贡献 如果你曾在近期创建过 CodeSpace,点击上述按钮时,你将在列表中看到一个已存在的 CodeSpace。 可以通过点击 CodeSpace 的名称(下图为「potential halibut」,但每个人创建的名称可能略有差异)进入这个 CodeSpace; 也可以通过点击绿色按钮「Resume this codespace」进入这个 CodeSpace。 ![复用 CodeSpace](../assets/images/contributing/贡献指南-复用codespace.png) 你也可以通过点击「Create a new one」来继续创建一个新的 CodeSpace,但通常我们可以直接复用已有的。 ## 2 修改和提交 ### 2.1 创建新分支 切换到 `源代码管理`窗格,依次选择`···` 按钮——`分支`。 如果你是第一次贡献,则选择`创建新分支`, ![新建分支](../assets/images/contributing/contribute-vscode-new-branch.png) 否则,选择 `创建新分支依据...`,然后选择 `upstream/main`, ![新建分支基于](../assets/images/contributing/贡献指南-新建分支基于.png) ![依据上游分支](../assets/images/contributing/贡献指南-新分支依据上游.png) 输入分支名,并按回车确认。创建完成后根据提示切换到新分支。 ![输入新分支的名字](../assets/images/contributing/contribution-new-branch-name.png) ![切换到新分支](../assets/images/contributing/contribution-switch-to-new-branch.png) ::: info 什么是分支?为什么要创建新分支? 分支是一个 Git 术语,你可以简单地理解为:在主版本的基础上复制了一份出来修改。 始终在新分支上修改内容,有利于 Git 的管理。具体的,如果要同时修改多个内容,某一部分内容被合并,但另一部分内容仍在修改,这时候只在主分支修改显然是不够用的。 此外,主仓库对 PR 采取 `splash and merge` 策略,这会把某一分支的所有提交压缩为一个提交然后合入主分支,这有利于保持仓库提交历史的简洁和线性关系,fork 仓库全部在主分支修改时,将无法自动保持与主仓库的提交历史同步,而使用新分支修改就没有这些烦恼。 ::: 当然,如果你忘记了创建新分支,也没有关系,在提交的时候,编辑器还会提醒一次。 ### 2.2 修改内容 你可以在左侧「资源管理器」中选择你想要修改的文件,在中间部分编辑文件,进行修改。 ![进行对应的修改](../assets/images/contributing/贡献指南-进行对应的更改.png) ::: tip 文档风格和语法 文档使用 MarkDown 语法,这是一种非常简单的标记式语法,如果你还不了解,请参阅 [文档风格指南 #Markdown 语法](markdown.md#文档语法风格)。 ::: ::: info 上传文件 图片可以通过在 `src/assets/images/` 文件夹右击,点击 `上传` 来上传到仓库。 也可以直接 `ctrl+v` 粘贴图片。 粘贴的图片会自动保存到 `src/assets/images/` 目录,你可以通过在图片路径上右击,选择「重命名符号」来快速重命名图片文件。 ![重命名图片](../assets/images/contributing/贡献指南-重命名图片.png) ::: ### 2.3 预览修改 你可以在下图所示 `NPM 脚本` 窗格运行 `docs:dev` 脚本,来启动一个开发服务器。 如果你没有找到 `NPM 脚本` 窗格,可以在下图「资源管理器」后方的菜单中勾选「NPM Scripts」来显示这个窗格。 ![启动开发服务器](../assets/images/contributing/贡献指南-启动开发服务器.png) 运行脚本后,会自动打开一个浏览器窗口,这个网页会实时更新你在编辑器中所做出的修改。 如果你意外关闭了这个网页,可以在上图右下角所示「终端」中,按住 `Ctrl` + 单击 `https://localhost:5137`,再次打开这个网页。 ![预览页面](../assets/images/contributing/贡献指南-文档预览页面.png) ### 2.4 提交并推送修改 你可以简单地把「提交」理解为「保存」。如果你已经完成修改,或是想要临时存储一下,可以按照下述流程。 切换到 `源代码管理` 窗格,在输入框中输入一个简短的修改描述,然后点击按钮 `提交 / Commit`。 ![提交](../assets/images/contributing/贡献指南-提交.png) 如果你在 [2.1 创建新分支](#21-创建新分支) 完成了创建分支的操作,那么点击「提交」后,将会出现下面的界面: ![发布分支](../assets/images/contributing/贡献指南-发布分支.png) 点击「发布分支」。如果你是第一次贡献,你将收到一个弹窗提示你是否需要创建一个分支仓库(fork),点击「创建分支 / Create fork」: ![发布分支-创建 fork](../assets/images/contributing/贡献指南-发布分支-创建fork.png) 创建完成后,编辑器右下角将出现两个弹窗,提示已完成。 ### 2.5 发起 Pull Request 前一步的提交只是提交到了自己的仓库,维护者很难注意到,当你认为你修改的差不多了的时候,就可以把修改提交到文档仓库让大家审核,也就是发起 Pull Request。 点击上面弹窗的蓝色按钮「创建拉取请求 / Create Pull Request」, ![创建 pr](../assets/images/contributing/贡献指南-创建pr.png) 在左侧新出现的界面里,为拉取请求写一个简单明了的标题,简单写一个描述,然后点击蓝色按钮「Create / 创建」。 ![完善 pr 信息](../assets/images/contributing/贡献指南-完善pr信息.png) ![pr 详情](../assets/images/contributing/贡献指南-pr详情.png) ### 2.6 PR 修改 文档维护者收到 PR 后,会对代码进行审核、评论以及修改,并决定是否接受(merge)或结束该 PR。 1. 维护者审核后,可能会请求你作出一些修改,希望读者对审稿人/维护者的评论和意见保持开放的心态,并努力改进代码或文档。 新的 PR 不一定会及时审核,取决于审稿人/维护者的当时的工作时间。 ::: tip 如何更新 PR? 已经发起的 PR,可以直接在这个 PR 对应的分支上继续提交新的内容以更新这个 PR。 ::: 2. PR 创建后,机器人会自动检查格式是否规范,并为这次修改创建一个预览链接。 如果你是第一次贡献,需要管理员审核后机器人才能运行,这是保障安全需要的。 ![netlify 预览 pr](../assets/images/contributing/build-pr预览-1.png) ::: tip 哪些情况会导致检查错误? 仓库的自动检查包含格式检查和构建检查。格式上,仓库使用 Markdown Lint 作为规范,如果你使用 VS Code 且安装了推荐的插件,那么通常 Lint 检查是可以通过的。 构建检查失败最可能的原因就是图片、链接等错误,如图片等目录级别错误、大小写错误、相对链接不存在等。 ::: 3. PR 被接受并合并至官方 main 分支后,则可以更新 main 分支,并删除 pr-workflow 分支 ![更新 main 分支](../assets/images/contributing/build-更新main分支-1.png) ## 3 关闭 CodeSpace 点击左下角蓝色按钮「Codespaces: xxxxxx」,在上方弹出的菜单中选择「Stop Current Codespace」,就可以关闭代码空间了,然后你可以安全的关闭浏览器。 ![关闭 codespace](../assets/images/contributing/贡献指南-关闭codespace.png) 当然,你也可以直接关闭浏览器,默认情况下,代码空间在 30 分支无活动后会自动关闭。 ## 其他问题 ### 我忘记新建分支了 不影响。 ### 我提交的 PR 总有冲突 在新建分支是,请选择「从 upstream/main 新建分支」,以确保始终是基于最新的文档修改。 如果还有问题,可以在每一次修改前都运行 `git:force-sync` 脚本。 ### 我的 PR 检查没有通过 可以根据 PR 评论里的日志链接,观察是哪里出现了问题。 如果感觉无法解决的,可以等仓库维护人员解决。 --- --- url: /user-guidecreate-bibliographies-via-zbib.md --- # 使用 Zotero bib 生成参考文献表 Zotero bib 是 Zotero 官方维护的一个引文生成器,使用它,你可以不下载 Zotero,或不将条目导入 Zotero 库,即可生成对应的引用格式。 地址: ::: warning 这种方法生成的引文是纯文本,无法更新,仅适用于临时使用的场景。例如某文档确定只需要引几篇文档,且不想导入这几篇文档到自己的库。 ::: 使用: 1. 打开 2. 在下图输入框中输入需要引用的条目链接/识别符等,然后点击「Cite」 ![zbib 首页](../assets/images/bib-首页.png) 3. 该条条目将会显示如下引用信息,你可以在下图红框处选择样式。 ![zbib 选择样式](../assets/images/bib-选择样式.png) 4. 继续重复第 2 步可以添加多个条目 5. 已添加的条目将会存储在浏览器,下次打开网页仍然可以看到,直到你清除浏览器 Cookie 或手动删除。 6. 点击「Copy to Clipboard」可以将结果复制到粘贴板。 ![zbib 复制结果](../assets/images/bib-复制结果.png) --- --- url: /plugin-dev-guideuse-templateindex.md --- # 使用社区模板 ::: info Todo 社区模板地址: 考虑到 Zotero 7 后续仍会有一次比较大的底层架构变更,因此该部分内容暂时挂起,开发者可参考仓库的自述文档来配置模板。 ::: ## 为什么使用该模板 * 事件驱动、函数式编程的可扩展框架; * 简单易用,开箱即用; * ⭐\[新特性!]自动热重载!当修改源码时,都会自动编译并重新加载插件; * `src/modules/examples.ts` 中有丰富的示例,涵盖了插件中常用的大部分 API 使用的插件工具包 [Zotero-plugin-toolkit](https://github.com/windingwind/zotero-plugin-toolkit); * TypeScript 支持: * 为使用 JavaScript 编写的 Zotero 源码提供全面的类型定义支持(使用类型定义包 [Zotero-types](https://github.com/windingwind/zotero-types)) * 全局变量和环境设置; * 插件开发/构建/发布工作流: * 自动生成/更新插件 id 和版本、更新配置和设置环境变量 (`development`/`production`); * 自动在 Zotero 中构建和重新加载代码; * 自动发布到 GitHub (使用 [release-it](https://github.com/release-it/release-it)); * 集成 Prettier 和 ES Lint; --- --- url: /plugin-dev-guidedevelopmentsideloading.md --- # 侧载插件 Zotero 基于 Firefox,与其相同的,Zotero 侧载插件也有两种方式,分别是通过代理文件在启动时加载插件,和通过远程调试以临时插件的形式载入插件。 ::: tip 使用社区模板的开发者,无需配置这些环境,只需要按照模板要求配置 Zotero 可执行文件路径和配置文件地址即可。模板中的启动脚本将为你自动侧载插件。 ::: ## 通过代理文件载入插件 ::: info Todo 此节说明如何通过代理文件将插件侧载入 Zotero,待完善,请参阅:[Setting Up a Plugin Development Environment](https://www.zotero.org/support/dev/client_coding/plugin_development#setting_up_a_plugin_development_environment)。 ::: ## 通过安装临时插件载入 ::: info Todo Zotero 官方尚未提供此种方式的文档,但此种方式是 Firefox 较为推荐的方式,社区维护的框架等也正在逐步迁移至此种方式,在迁移完成之前,可以参考 [web-ext](https://github.com/mozilla/web-ext/) 包来实现。 ::: --- --- url: /user-guidefaqsword-addon.md --- # 关于 Word 引用的各种问题 本页面整理了一些使用字处理插件常遇到的一些问题,你可以在右侧大纲栏(部分窄屏设备也可能在顶部「页面导航」)快速定位到你需要的内容。 如果没有在本页面找到你需要的问题,可以参考官方文档 [Zotero 文字处理插件报告的一些问题以及可能的解决方案](https://www.zotero.org/support/word_processor_plugin_troubleshooting)。 如果仍没有找到你需要的问题,可以考虑在 Zotero 中文社区提问咨询或前往 Zotero 官方论坛发帖求助。 ## 目录 \[\[TOC]] ## 插入参考文献的基础教程 在开始排查问题之前,请务必先了解 Zotero 的 Word 加载项中各个按钮的功能和用法。 在 Word 中插入参考文献的基本操作请阅读:[在 Word 中插入参考文献的基础教程](../ms-word-plugin.md)。 :::: details 视频教程 此外,关于 Zotero 参考文献插入及排版的基本教程您还可以观看这个视频: [Zotero 文献在 Word 中的引用](https://www.bilibili.com/video/BV1ma4y1f7yg/) ::: info 视频教程主要内容 视频教程包括以下问题的解答: 1. 如何安装/重新安装 Word 中的 Zotero 工具条(Word 加载项)。 2. 如何从 Zotero 官方下载参考文献格式。 3. 如何在 Word 中插入参考文献。 4. 如何在 Word 中设置引用样式。 ::: 在观看视频教程后,仍然建议您阅读[在 Word 中插入参考文献的基础教程](../ms-word-plugin.md),以便更好地理解一些操作技巧和注意事项。 :::: ::: warning 在继续阅读本文档之前,请务必先仔细阅读[在 Word 中插入参考文献的基础教程](../ms-word-plugin.md),熟悉 Zotero 的 Word 加载项各个功能的用法。基础教程中涉及到的基础操作,本文档将不再赘述。 ::: ## Word 参考文献排版教程 在 Word 中配合 Zotero 插入参考文献时,您可以阅读《Zotero 参考文献排版指南》解决参考文献排版的问题。 下载地址 1:[点击跳转下载页面](https://wwp.lanzoum.com/b02lwj8cf) 提取码:ghfw 下载地址 2:[点击跳转下载页面](https://www.123pan.com/s/3eJyjv-FD6Ch.html) 提取码:3Sk7 ::: info Zotero 参考文献排版指南主要内容 《Zotero 参考文献排版指南》包括以下问题的解答: 1. 防止顺序编码的引注断行不良 2. 修改尾注的字体和段落格式 3. 修改脚注的字体和段落格式 4. 将个别字符设为上标、下标或斜体 5. 脚注有多余的空行 6. 引注或脚注带有虚下划线 7. 脚注设置带圈序号、10 以上序号不带圈问题 8. 设置带方括号的脚注序号 9. 引注字体大小不一致 10. 尾注序号后的间隔问题 11. 尾注词间距问题 12. 分章节插入尾注 13. 「交叉引用」或「书签跳转」 ::: ::: warning 关于 Word 排版的各类问题(如参考文献列表的各种「空格」和对齐问题),请务必仔细阅读上面的《Zotero 参考文献排版指南》。 本页面后续的文档更多关注 Zotero 的 Word 加载项的使用问题。 ::: ## Zotero Word 加载项的使用技巧 在实际使用中,有一些操作上的小技巧,在这里略作整理: ::: warning 在插入文献之前, **请务必先将 Zotero 里英文论文详细信息中的 `语言/Language` 字段改为** `en` 或 `en-US` 等与文献语言一致的信息,否则在中英文混排时可能会遇到错误。具体方法见后文里 **[中英文混排](#中英文混排)** 部分的内容。 ::: 1. **Zotero 插入文献的对话框有两种模式,一种是列表模式,另一种是文库模式:** ![引文对话框](../../assets/images/word-引文对话框.png) 如果你在使用新式搜索框,推荐采用`年份 作者姓名`进行检索(两个关键词中间敲一个空格)。 2. 如果你使用搜索框, **输入中文关键词后没有候选项目** ,请 **按一下键盘的空格键** ,然后就有候选项了。 3. 如果你 **在插入完成后想重新修改引用的更多信息** ,请使用 [编辑引注](../ms-word-plugin.md#自定义引注) 功能。 4. 如果你已经在一处引注中引用了多个文献,想要 **删除其中的某篇文献** ,请使用 [编辑引注](../ms-word-plugin.md#在已经添加引注的地方增删引注) 的方式进行删除。 **请不要直接在 Word 中删除角标中的数字中文字** ,这样会导致 Zotero 后续无法更新。 如果你已经直接编辑了角标文字,可以参照 [使 Zotero 恢复对引文的更新](#使-zotero-恢复对引文的更新) 的方法来恢复,或者删除这一整个引注角标,重新插入这几篇文献。 5. 在 `插入/编辑引注` 过程中,请务必在选择文献过程中 **不要转到其他窗口去翻看查阅** 。如果边翻看边插入,很有可能导致插入失败并报错。如果插入过程中希望查阅信息,你可以先按回车键确认本次插入,待查阅完成后再用第 4 点提醒中的方法编辑/补充引用。 6. Zotero 在插入文献时更新角标的速度非常缓慢, **建议关闭自动更新引用** 。这一设置在 Word 中的 Zotero 选项卡内: ![文档设置](../../assets/images/word-document-preferences.png){width=60%} 在关闭之后,你 **需要在增删引用项目后手动点 `刷新`![刷新](../../assets/icons/integration/icon-word-刷新.png) 按钮更新引用信息及编号** 。这个更新可能非常缓慢,你需要多一点耐心。 ## Word 段落格式问题 ### 调整缩进、行距等格式 **Word 中参考文献书目列表的排版问题是 Word 段落样式控制的。** 其中包括:是否首行缩进,是否悬挂缩进,编号和后续文字之间的制表位空白大小,字体及文字大小,是否全部加粗,行间距大小…… 这部分样式你需要 **在 Word 中修改「书目」样式** 。具体方法详见这一教程: [如何设置 Zotero 生成的参考文献格式,刷新后不变?](https://zhuanlan.zhihu.com/p/58969571) ### 为何 `[100]` 和 `[99]` 后的空隙不一样 例如下面这种情况: ```plain [99] X. Fang, Y. Liu, L. Chen, Y. Cheng, Influence of surface active groups on SO2 resistance of birnessite for low-temperature NH3-SCR, Chem. Eng. J. 399 (2020) 125798. . [100] X. Fang, Y. Liu, L. Chen, Y. Cheng, Influence of surface active groups on SO2 resistance of birnessite for low-temperature NH3-SCR, Chem. Eng. J. 399 (2020) 125798. . ``` 这是 Zotero 的一个陈年 Bug,当编号进位时,制表符宽度没有自动调整,需要在「[文档首选项](../ms-word-plugin.md#文档首选项)」中把样式切换为其他任意的,再切换回来,以重新计算制表符宽度。 当然,你也可以通过在 Word 中调整制表符宽度来修复这个问题。 ## CSL 样式问题 ### 设置斜体及上下标等 一些论文的题目中包含上标、下标或者斜体:如 CO2,H+,这该如何实现呢? 方式一:~~插入参考文献后在 Word 中手动修改,但是这种方法每次刷新后需要重新设置非常麻烦。~~(这是不正确的方式,不推荐) 方式二:在 Zotero 中修改该文献的条目信息,通过在题目中添加以下代码来实现上标、下标、斜体、加粗的效果,添加完后返回 Word 刷新引文: ```html 上标 下标 斜体 加粗 ``` :::: details 示例 ::: info 标题 ```diff -- Influence of surface active groups on SO2 resistance of birnessite for low-temperature NH3-SCR ++ Influence of surface active groups on SO2 resistance of birnessite for low-temperature NH3-SCR ``` ::: ::: info 参考文献表 \[1] X. Fang, Y. Liu, L. Chen, Y. Cheng, Influence of surface active groups on ==SO2== resistance of birnessite for low-temperature ==NH3-SCR==, Chem. Eng. J. 399 (2020) 125798. . \[1] X. Fang, Y. Liu, L. Chen, Y. Cheng, Influence of surface active groups on ==SO2== resistance of birnessite for low-temperature ==NH3-SCR==, Chem. Eng. J. 399 (2020) 125798. . ::: 如上示例在 Zotero 条目信息中对需要为下标的单词两侧分别加上 ``和``,回到在 Word 中点击 `Refresh` 刷新条目信息即可看到下标效果已经成功实现。 ![点击 Refresh 刷新条目信息](../../assets/images/word-刷新.png) :::: ::: tip 使用 Linter 插件快捷插入 插件 [Linter for Zotero](../plugins/linter.md) 提供了辅助输入这些富文本标签的功能,可前往 [插件商店](/plugins/)下载安装。 ::: ::: tip 使用 Quicker 快捷插入 使用 quicker 动作可以也可以方便的实现同样的效果: * [添加斜体标识](https://getquicker.net/Sharedaction?code=98c3d460-22b5-49ab-99c2-08d9c6b06ad1) * [添加加粗标识](https://getquicker.net/Sharedaction?code=dc815b9a-f463-4233-99c5-08d9c6b06ad1) * [添加上标标识](https://getquicker.net/Sharedaction?code=dee60abc-d1f5-40ad-99c3-08d9c6b06ad1) * [添加下标标识](https://getquicker.net/Sharedaction?code=b44c0592-89fa-41c2-99c4-08d9c6b06ad1) ::: ### 中英文混排 Zotero 官方样式对于中英文混排支持得十分差劲,尤其是在 `等` 和 `et al.` 的处理上。幸运地是,有很多热心的大佬在这方面进行了许多探索,社区维护了一份支持中英文混排的 CSL 样式文件。 你需要: 1. 安装支持双语排版的 CSL 样式文件,见 [安装支持双语排版的参考文献样式](../citation-styles.md); 你也可以根据你自己的需要修改属于自己的样式文件,可以看一下这个视频教程自行定制样式:[style csl 文件简单编辑](https://zhuanlan.zhihu.com/p/336009544) 2. 在 Word 中指定当前文档使用的样式 ::: warning 请务必注意, **样式的选择是在 Word 里进行的** ,不是在 Zotero 设置里!Zotero 设置里的列表仅用来安装新样式,不能用作选择默认样式! ::: 3. 在 Zotero 中为每一个条目添加语言,中文条目填写 `zh` 或 `zh-CN`,英文条目填写 `en` 或 `en-US`。 中英文混排的各个样式文件通常是依靠 Zotero 文献条目信息中的 `语言/Language`,你需要在插入参考文献之前 **预先将英文和中文文献的语言设定为相应要求的内容** 。 一般来说,常见的中英混排 csl 样式文件通常要求将英文文献 `信息/Info` 中 `语言/language` 字段修改为`en`,而中文文献设置成`zh` 或 `zh-CN`。 ::: warning 请务必注意,英文文献的语言需要设置为 `en` ,而不是其他任何内容!(即便设置成 `english` 也不行!) 如果你的文献语言设定不规范,可以通过标题或作者字段对所有文献进行排序,然后分别选中英文文献,将其 \[语言] 字段的信息统一为 `en`;取消选中后再选中中文文献,将其 `语言` 字段的信息统一为`zh`或者样式文件要求的样子。 ::: ::: info 使用插件快速设置「语言」字段 插件 [Linter for Zotero](../plugins/linter.md) 提供了自动识别条目语言并设定语言字段的功能,可前往 [插件商店](/plugins/)下载安装。 ![Linter 自动识别条目语言](../../assets/images/auto-edit-language.jpg){width=60%} ::: ### 为何期刊论文会有多余的「/OL」、引用日期、URL 和 DOI ::: info 待办 [为何期刊论文会有多余的「/OL」、引用日期、URL 和 DOI?](https://github.com/zotero-chinese/styles/wiki/FAQ#%E4%B8%BA%E4%BD%95%E6%9C%9F%E5%88%8A%E8%AE%BA%E6%96%87%E4%BC%9A%E6%9C%89%E5%A4%9A%E4%BD%99%E7%9A%84ol%E5%BC%95%E7%94%A8%E6%97%A5%E6%9C%9Furl-%E5%92%8C-doi) ::: ### 为何学位论文类型显示 `[博士]` 而不是 `[博士学位论文]` ::: info 待办 [为何学位论文类型显示「\[博士\]」而不是「\[博士学位论文\]」?](https://github.com/zotero-chinese/styles/wiki/FAQ#%E4%B8%BA%E4%BD%95%E5%AD%A6%E4%BD%8D%E8%AE%BA%E6%96%87%E7%B1%BB%E5%9E%8B%E6%98%BE%E7%A4%BA%E5%8D%9A%E5%A3%AB%E8%80%8C%E4%B8%8D%E6%98%AF%E5%8D%9A%E5%A3%AB%E5%AD%A6%E4%BD%8D%E8%AE%BA%E6%96%87) ::: ### 为何著者出版年制会显示多余的名,例如「Wang Y et al.」 ::: info 待办 [为何著者出版年制会显示多余的名,例如「Wang Y et al.」?](https://github.com/zotero-chinese/styles/wiki/FAQ#%E4%B8%BA%E4%BD%95%E8%91%97%E8%80%85%E5%87%BA%E7%89%88%E5%B9%B4%E5%88%B6%E4%BC%9A%E6%98%BE%E7%A4%BA%E5%A4%9A%E4%BD%99%E7%9A%84%E5%90%8D%E4%BE%8B%E5%A6%82wang-y-et-al) ::: ### 为何顺序编码制后会显示多余的 a, b ::: info 待办 同上 ::: ## 用户操作相关 ### 为何我在同一地方引用多篇文献显示 `[1][2]` 而不是 `[1, 2]` 如果你 **在一处位置想同时引用多个文献** ,请在插入引用时 **一次性插入每一个文献** ,不要分成两次分开插。 **在使用搜索窗时** ,先加入第一个文献,然后不要急着按回车确认插入,而是改为 **按一下空格然后继续搜下一个文献** 。直到所有文献都完成插入之后再按回车确认本次插入。 **在使用经典选择窗时** ,点击左下角的 `多重来源/Multiple Sources` 来实现同时插入多个文献。具体操作请参见 [在 Word 中插入参考文献的基础教程](../ms-word-plugin.md)。 ::: info 注:这个窗口内可以多选,可以在左边窗口一次性选择多个条目,然后统一点向右的箭头加到右边。待全部文献添加完成后,再点击确认完成插入。 ::: ### 为何引注中有多余的页码 如果你设置的样式全都正确,却发现有的正文角标里的内容多了点东西(页码),可以编辑一下这一处引用,把不必要的信息删掉: ![编辑引文](../../assets/images/word-引文对话框-编辑引注.png) ### 没有监测到引用 ::: tip 待办 ::: ### 为何我在 Zotero 里修改了题录信息,但文档里没有更新 1. 确认已经 refresh 2. 确认不是孤立条目,若为孤立条目,删除重插。阅读:[判断孤立条目](../ms-word-plugin.md#孤立的条目)。 ### 为何文档末尾没有参考文献表 通过「添加/编辑引注」按钮添加引注不会自动添加参考文献表,你需要点「添加/编辑参考文献表」来添加参考文献表,请阅读 [在 Word 中添加参考文献表](../ms-word-plugin.md#添加参考文献表)。 ## Word 加载项错误相关 ### Word 中没有 Zotero 选项卡 一些朋友在 Word 中的 Zotero 选项卡突然消失了,或者使用的时候报错要求重装/升级该加载项。 **这一加载项需要在 Zotero 首选项 中安装** 。具体步骤如下: 1. 保存好正在编辑的 Word 文档,并**彻底退出 Word**。 2. 在 Zotero 中,「编辑」 -> 「设置」 -> 「引用」 -> 「重新安装加载项 Microsoft Word」 ![重新安装加载项](../../assets/images/zotero-addon-重新安装加载项.jpg) :::info 如果退出 Word 后重新安装这一加载项仍然报错,建议重启电脑后再尝试。 ::: ### 报错「无法与 Zotero 通讯」 ![无法与 Zotero 通讯](../../assets/images/zotero-addon-无法与Zotero通讯.jpg) 遇到该问题时,请确保你的 Zotero 程序处于运行状态 如果你的 Zotero 在运行状态,依然遇到该问题,可以通过重新安装加载项来解决:依次打开「编辑」 -> 「设置」 -> 「引用」 -> 「重新安装加载项 Microsoft Word」,然后重新打开 Word。 ![重新安装加载项](../../assets/images/zotero-addon-重新安装加载项.jpg) ### Zotero 在更新文档时出错 ::: info 本小节在翻译 [官方文档](https://www.zotero.org/support/kb/debugging_broken_documents) 的基础上,进行了再次整合,以 Microsoft Word 为例进行操作。如果您使用的是 Google Docs 或者 LibreOffice,可访问 [官方文档 | 排除文字处理器文档中的错误](https://www.zotero.org/support/kb/debugging_broken_documents) 获取帮助。 ::: ![更新文档时出错](../../assets/images/更新文档时出错.png) 如果您在尝试在一个**新的空文档**中使用 Zotero 时出错,请参阅 [文字处理器插件故障排除](https://www.zotero.org/support/word_processor_plugin_troubleshooting)。 如果您可以在新的空 Word 文档中插入引文,但在**现有文档**中使用 Zotero 时出现错误,可以按照以下步骤进行问题排查: 1. 检查 Word 设置 在`文件-选项-高级`,勾选 `键入内容替换所选文字`,问题即可得到解决。 如问题未得到解决,请按照后续步骤逐步进行排查。 ![键入内容替换所选文字](../../assets/images/键入内容替换所选文字.png) 2. 重启 Zotero 和 Word。 3. 确保您使用的是最新版本的 Zotero 和 Word。 4. 排除故障时,禁用 Word 中的修订功能,因为它在使用 Zotero 时会产生复杂的效果。 如果在插入或修改 Zotero 引文时启用了修订功能,它可能会将文档中的许多或所有 Zotero 引文标记为已更改。如果您以前启用了修订功能,请尝试接受所有更改,看看这是否能解决问题。 5. 检查图片标题中的引用。Zotero 不会让你插入它们,但如果你将引用复制到标题中,这很可能是问题的根源。删除这部分引用。 6. 尝试将文档内容复制并粘贴到新文档中,以查看问题是否消失。您可能需要点击 `Document Preferences` 按钮,您的旧引用才会被识别。 7. 通过复制文件本身,而不是通过复制和粘贴内容,制作文档的副本,用于调试。 8. 如果在 Windows 上使用 OneDrive,请将文档的副本保存到本地硬盘,或者尝试删除文件名中的任何空格。OneDrive 会干扰插件的使用,请在使用 Zotero 过程中避免与 Onedrive 同时使用。 9. 打开复制的文件,检查切换到不同的参考书目样式后是否出现错误。 10. 如果文档有参考书目(bibliography,),请删除它后检查是否仍然出现错误。 11. 调试时,如果您在 Word 插件中使用字段模式,显示字段代码而不是格式化文本可能会有所帮助。为此,请在 Word 中按 Alt/Option-F9(或 Alt/Option-Fn-F9)。 12. **隔离有问题的引用。** 在文档副本中,每次删除一半内容,看看错误是否仍然发生。如果没有,使用 "撤消" 恢复已删除的部分,然后尝试删除另一半。对出现错误的部分重复删除一半的过程,如果两个部分都出现错误,则随机选取一个。继续这样做,直到找到出现问题时必须存在的最小部分(最好只有一个引文)。从原始文档中删除孤立的引文,问题就会消失(除非有多个断开的引文,在这种情况下您需要重复该过程)。 ## 域代码相关问题 ### 您已经修改该引文,是否保留更改? ![image.png](../../assets/images/word-确认保存修改.png) 该弹窗通常是用户手动修改了引文或参考文献表,比如该弹窗即为某文献在文中编码为「\[1]」,用户手动把它修改为了「\[111]」,Zotero 再次刷新时会询问用户是否保留这些修改? 如果用户需要保留自己的修改,则点击「是 yes」,如果用户需要抛弃自己的修改,使用 Zotero 生成的内容,则需要选择「否 No」。 ::: danger 注意:请谨慎选择「是 Yes」,该操作会让 Zotero 不再更新此处! ::: ::: warning 所有的引注顺序更改都应在 Word「引文编辑对话框」中进行,而不是手动修改! 所有的引注/参考文献表的样式修改都应在 CSL 文件中进行,而不是手动修改! 所有的条目信息,如作者、标题、期刊、期卷页等,都应在 Zotero 中更新条目,而不是手动在域代码上修改! ::: 如果已经点了「是 yes」,Zotero 不再对这一处引文进行更新,而后续又想要 Zotero 对其更新,可以参照下一节。 #### 使 Zotero 恢复对引文的更新 首先分析一下 Word 加载项 在 Word 留下的域代码结构,以 为例,其正常插入 Word 后产生的域代码为: ::: details Zotero 引文在 Word 中产生的域代码截图 ![image.png](../../assets/images/word-域代码.png) ::: 其中标黄部分是标识这是一个 Word 域代码块的声明,可以不去管,重点在包含在其中的 json 内容,为了方便理解,将其格式化后显示如下: ::: details 上述可以正常更新的域代码格式化后的代码 ```json { "citationID": "gr3uElq7", "properties": { "formattedCitation": "\\super [1]\\nosupersub{}", "plainCitation": "[1]", "noteIndex": 0 }, "citationItems": [ { "id": 2220, "uris": ["http://zotero.org/users/7424907/items/SUW7JYI9"], "itemData": { "id": 2220, "type": "article-journal", "abstract": "To explore effective way for the complete catalytic degradation of toluene at low temperature, catalysts with diverse activity of adsorbed oxygen (Oads) and lattice oxygen (Olatt) are synthesized by introducing Sr2+ into the birnessite structure. Sr modification highly improved low-temperature catalytic activity and CO2 selectivity of toluene oxidation under moist condition, especially on the BS-7.5 (Sr:Mn = 0.075) catalyst. A series of physiochemical characterizations and DFT calculations identified abundant Olatt with higher activity in Sr-doped birnessite and higher activity of Oads in pure birnessite. In situ DRIFTS analysis further confirmed that activation of Olatt introduced by Sr replacement of Mn governed the reaction process towards continuous deep oxidation of toluene. These findings provide a deeper understanding of the mechanism of toluene degradation and strongly pave a way for improving the complete catalytic oxidation performance of VOCs at low temperature over MnO2 catalysts from the aspect of regulating active oxygen-related properties.", "archive": "Q1", "archive_location": "工程技术 1 区 Top", "call-number": "8.04", "collection-title": "无", "container-title": "Fuel", "DOI": "10.1016/j.fuel.2022.124116", "ISSN": "0016-2361", "journalAbbreviation": "Fuel", "language": "en", "license": "8.04", "note": "JCR 分区:Q1\n中科院分区升级版:工程技术 1 区\n中科院分区基础版:工程技术 2 区\n影响因子:8.04\n5 年影响因子:6.63\nEI: 是", "page": "124116", "source": "能源与燃料 2 区 工程:化工 1 区", "title": "Regulating oxygen species for promoted deep oxidation of toluene: A comparative study of adsorbed oxygen and lattice oxygen", "title-short": "Regulating oxygen species for promoted deep oxidation of toluene", "volume": "321", "author": [ { "family": "Zhang", "given": "Luyue" }, { "family": "Liu", "given": "Yongjun" }, { "family": "Fang", "given": "Xue" }, { "family": "Cheng", "given": "Yan" } ], "issued": { "date-parts": [["2022", 8, 1]] } } } ], "schema": "https://github.com/citation-style-language/schema/raw/master/csl-citation.json" } ``` ::: 其被修改后,域代码则会变为: ::: details 不能正常更新的域代码 ```json {6} { "citationID": "gr3uElq7", "properties": { "formattedCitation": "\\super [1]\\nosupersub{}", "plainCitation": "[1]", "dontUpdate": true, "noteIndex": 0 }, "citationItems": [ { "id": 2220, "uris": ["http://zotero.org/users/7424907/items/SUW7JYI9"], "itemData": { "id": 2220, "type": "article-journal", "abstract": "To explore effective way for the complete catalytic degradation of toluene at low temperature, catalysts with diverse activity of adsorbed oxygen (Oads) and lattice oxygen (Olatt) are synthesized by introducing Sr2+ into the birnessite structure. Sr modification highly improved low-temperature catalytic activity and CO2 selectivity of toluene oxidation under moist condition, especially on the BS-7.5 (Sr:Mn = 0.075) catalyst. A series of physiochemical characterizations and DFT calculations identified abundant Olatt with higher activity in Sr-doped birnessite and higher activity of Oads in pure birnessite. In situ DRIFTS analysis further confirmed that activation of Olatt introduced by Sr replacement of Mn governed the reaction process towards continuous deep oxidation of toluene. These findings provide a deeper understanding of the mechanism of toluene degradation and strongly pave a way for improving the complete catalytic oxidation performance of VOCs at low temperature over MnO2 catalysts from the aspect of regulating active oxygen-related properties.", "archive": "Q1", "archive_location": "工程技术 1 区 Top", "call-number": "8.04", "collection-title": "无", "container-title": "Fuel", "DOI": "10.1016/j.fuel.2022.124116", "ISSN": "0016-2361", "journalAbbreviation": "Fuel", "language": "en", "license": "8.04", "note": "JCR 分区:Q1\n中科院分区升级版:工程技术 1 区\n中科院分区基础版:工程技术 2 区\n影响因子:8.04\n5 年影响因子:6.63\nEI: 是", "page": "124116", "source": "能源与燃料 2 区 工程:化工 1 区", "title": "Regulating oxygen species for promoted deep oxidation of toluene: A comparative study of adsorbed oxygen and lattice oxygen", "title-short": "Regulating oxygen species for promoted deep oxidation of toluene", "volume": "321", "author": [ { "family": "Zhang", "given": "Luyue" }, { "family": "Liu", "given": "Yongjun" }, { "family": "Fang", "given": "Xue" }, { "family": "Cheng", "given": "Yan" } ], "issued": { "date-parts": [["2022", 8, 1]] } } } ], "schema": "https://github.com/citation-style-language/schema/raw/master/csl-citation.json" } ``` ::: 可以看到,多了第六行 `"dontUpdate": true,`,我们将这一行去掉,再更新域代码,即可恢复 Zotero 对该处的更新。 #### 字段是代码而不是引注/参考文献表文本 ::: tip 待办 ::: #### 引注或参考文献表的背景总是灰色的 ::: tip 待办 ::: ## 将引注链接到参考文献表 参阅:[将引注链接到参考文献表](../misc/link-citation-to-bibliography.md) 。 ## 更多教程 Johnmy 老师也制作了非常多的关于 Zotero 的教程,如果有疑问也请务必在这里多找找多看看: [GB/T 7714 相关的 csl 以及 Zotero 使用技巧及教程](https://gitee.com/redleafnew00/Chinese-STD-GB-T-7714-related-csl) [一些软件使用过程中的技巧,如 Endnote, Zotero 等](https://zhuanlan.zhihu.com/c_1071081428967743488) --- --- url: /user-guidepluginsabout-plugin.md --- # 关于 Zotero 插件 ## 什么是插件?插件可以做什么? 谈到 Zotero 插件,可能指的有三种东西: * 安装在 Zotero 里的,用于增强 Zotero 的功能,一般大家提起 `Zotero 插件` 都指的是这一类。本文档中提到的 Zotero 插件都指这一种。 * (不是 Zotero 插件,是浏览器扩展)安装在浏览器里的 Zotero Connecter,用于从网页上抓取文献元数据并存到 Zotero 里。 * (不是 Zotero 插件,是 Word 加载项)在 Microsoft Word 中的,正确称呼是 Word 加载项,用来插入引用和参考文献信息。 ## 获取插件 * 官方插件收录链接: * Zotero 中文社区插件商店:[https://zotero-chinese.com/plugins/](/plugins/) * 插件的 GitHub 主页 ::: details 点击此处了解 如何在 GitHub 上下载 Zotero 插件 1. 访问插件的 GitHub 页面 搜索你要的 Zotero 插件。例如你可以直接搜索「Zotero Style」。 2. 查找插件的 Release 页面 进入插件的 GitHub 仓库页面后,点击页面右下角的「Releases」标签。 如果没有看到 Release 标签,可以直接在页面 URL 后加上 `/releases`,例如: ![Releases](../../assets/images/about-plugin-github-releases.png) 3. 下载插件文件 在 Releases 页面,你会看到插件的发布版本列表。每个版本可能会有不同的文件,例如 `.xpi` 文件(这是 Zotero 插件的安装文件)。 找到需要的版本,点击 Assets 下的可下载文件。通常是 `.xpi` 文件,点击即可下载。 ![下载插件](../../assets/images/about-plugin-github-download-xpi.jpg) ::: ::: tip 火狐浏览器用户请选择另存为 插件的后缀名为 `.xpi` ,如果下载到后缀为 `.xpi` 的文件,不要解压,解压后会导致插件无法安装。 `.xpi` 也是火狐浏览器的插件后缀,因此火狐浏览器无法直接通过点击链接进行下载,需要右击链接,选择另存为,才可将插件保存至本地。 ::: ::: tip Zotero 6 与 Zotero 7 的插件互不兼容 Zotero 6(上一版本)和 Zotero 7(最新版本)的插件互不兼容,请在下载插件安装包时下载与你 Zotero 版本适配的版本。[中文插件商店](/plugins/) 中有注明兼容的目标 Zotero 版本,下载时请务必注意。 ::: ::: tip 你可以通过 [插件市场(Add-on Market for Zotero)](./zotero-addons.md) 更便捷地安装、更新和卸载插件。不过,您仍需根据以下教程完成该插件的安装步骤。 ::: ## 安装插件 依次点击「Zotero 菜单栏」->「工具(Tools)」->「插件(Plugins)」,然后将下载的 xpi 文件拖入插件窗口,即可完成安装。 或者点击「右上角的齿轮」->「Install plugin From File...」->「选择刚刚下载的 xpi 文件」,即可安装成功。 ![安装插件](../../assets/images/zotero-plugin-install.png) ::: tip 对于部分老版本的插件,可能需要点击 `Restart now` 或者手动重启 Zotero 才可生效。 ::: ## 更新插件 ![升级插件](../../assets/images/zotero-plugin-update.png) 依次点击「Zotero 菜单栏」->「工具(Tools)」->「插件(Plugins)」->「右上角的齿轮」->「Check for Updates」后 Zotero 会对插件的版本进行检查,并自动对插件进行更新。 ::: tip 由于大部分插件的更新页面在 GitHub,国内部分地区可能无法直接访问,从而无法通过以上方式实现对插件的更新。如果无法直接访问插件的更新,可在此处下载最新版: 下载后,无需卸载原插件,按照安装插件的流程直接覆盖安装即可实现对插件的更新。 ::: ## 常见问题 请见 [插件安装的常见问题](../faqs/plugins.md)。 --- --- url: /about.md --- # 关于我们 Zotero 是一个强大、好用的文献管理软件,但其官方文档和支持主要以英文为主。且由于很多中文科研生态不与通用标准接轨,导致中文用户使用复杂、查找资料不便。 Zotero 中文小组的成立旨在满足中文用户对文献管理工具 Zotero 的需求。为了更好地服务中文用户,我们创建了这个中文社区,以便提供更详细、更易于理解的中文文档和指导。 ## 社区大事记 | 时间 | 范围 | 发起人 | 描述 | | ---------- | --------- | ----------------------- | -------------------------------------------------------------------------------------------------------------------------- | | 2024-06-15 | CSL | @redleafnew, @zepinglee | 仓库 `redleafnew/Chinese-std-GB-T-7714-related-csl` 更名为 `zotero-chinese/styles`,上线 `zotero-chinese.com/styles` 页面 | | 2024-04-21 | 转换器 | @jiaojiaodubai | 上线中文转换器页面 | | 2024-04-18 | 社区建设 | @northword | 创建 `zotero-chinese/website` 仓库,废弃 plugins 子域名 | | 2024-03-11 | 插件 | @northword | 使用 Vue 重写插件商店页面 | | 2023-09-06 | 社区建设 | @l0o0 | 购买域名:`zotero-chinese.com`,为期 5 年 | | 2023-09-03 | 插件 | @northword | 创建 `zotero-plugins` 仓库,`l0o0/ZoteroPlugins` 停止维护,废弃托管于 Gitee Pages 的插件商店页面 | | 2023-04-20 | 文档 | @northword | 文档迁移至 GitHub 仓库 `zotero-chinese/wiki`,并自建网站发布 | | 2023-04-20 | 社区建设 | @northword | GitHub 组织重命名为 `zotero-chinese` | | 2022-08-27 | 文档 | @windingwind | 文档由飞书迁移至 [语雀](https://zotero.yuque.com/books/share/93bfca90-00d8-4228-8d3a-305863c70f50) | | 2022-08-18 | 文档 | @windingwind | 编写中文开发文档 | | 2022-08-18 | 文档 | @windingwind | 发起中文用户文档建设,发布在 [飞书](https://zotero-chinese.feishu.cn/wiki/wikcnzXqIoGVxAIIUF5Bz3yq3RA),原文档仓库停止维护 | | 2022-08-02 | CSL | @northword | 建立 `zotero-cn/styles` 仓库,上线 `zotero-cn.github.io/styles` | | 2022-08-02 | 文档 | @northword | 仓库 `northword/zotero-intro-md` 迁移到 GitHub 组织下,`ZMAlt/CSL-Chinese` 停止维护 | | 2022-08-01 | CSL,文档 | @northword | CSL 规范译文迁移至 `zotero-cn/csl-doc-chinese` 仓库 | | 2022-08-01 | 社区建设 | @northword | 建立 GitHub 组织 `zotero-cn` | | 2022-04-15 | 插件 | @l0o0 | 建立 `l0o0/ZoteroPlugins` 仓库,上线 `zotero-chinese.gitee.io/zotero-plugins` 页面 | | 2022-03-24 | 社区建设 | @l0o0 | 建立 [Gitee 组织](https://gitee.com/zotero-chinese) | | 2020-12-16 | CSL | @redleafnew | 建立 `redleafnew/Chinese-std-GB-T-7714-related-csl` 仓库 | | 2020-08-22 | CSL,文档 | @ZMAlt | 建立 `ZMAlt/CSL-Chinese` 仓库,翻译 CSL 规范中文译文 | | 2019-11-22 | 社群 | @l0o0 | 建立 QQ 群“Zotero 中文插件”,群号 913637964 | | 2019-11-21 | 转换器 | @l0o0 | 建立 `l0o0/translators_CN` 仓库 | ## 商标 Zotero® 是 Corporation for Digital Scholarship 的注册商标。本社区与 Corporation for Digital Scholarship 无从属关系,亦非其官方社区。 --- --- url: /contributingindex.md --- # 参与指南 Zotero 中文社区是一个由志愿者组成的开源项目,它依赖于其用户和开发者社区的支持。您的帮助将对 Zotero 中文生态的现在和未来发挥着重要作用。 Zotero 中文社区接受多种形式的贡献,请阅读这一份指南,以更快、更有效地参与到社区中。 ## 分享我们 ::: info 评价 难度:⭐ 需要技能:无 ::: 如果你觉得 Zotero 中文社区还可以,请分享给你的同学 / 同门 / 师兄弟姐妹 / 老师 / 好友! 我们网站的地址是:`zotero-chinese.com`,你也可以在百度、必应或谷歌上搜索「Zotero 中文社区」找到我们。(目前,百度的搜索效果较必应要差一些,我们正在努力改进) 我们欢迎大家在微信、小红书、B 站等平台上分享我们的网址,以帮助更多的同学! 如果可能,也可以把 Zotero 以及我们分享给学校图书馆等机构,促进 Zotero 生态的发展。 ## 参与讨论 ::: info 评价 难度:⭐ 需要技能:无 ::: 读者可以多种途径参与讨论。 1. 在 GitHub 上的文档源码仓库下 [提交 ISSUE](https://github.com/zotero-chinese/wiki/issues); 2. 在 GitHub Zotero Chinese 组织的 [Discussions 上讨论](https://github.com/orgs/zotero-chinese/discussions)(也可以直接点击文档网页底部的「参与讨论」); 3. 在网页底部评论区留言; ::: info 以上几种途径,读者需要一个 GitHub 账户才能提交发起或参与讨论。 ::: 4. 加入 QQ 群:[913637964](https://qm.qq.com/q/joBSs1HIFa),[617148016](https://qm.qq.com/q/a3fnR5YLGo),[893963769](https://qm.qq.com/q/rFk6CayJRC),[666489129](https://qm.qq.com/q/n3PZ1aRWnI),[145248977](https://qm.qq.com/q/i7GVnNwD0k),[317995116](https://qm.qq.com/q/V8KzSdZo42),962963257; 5. 加入 QQ 频道:[点击加入 QQ 频道「Zotero 中文频道」](https://pd.qq.com/s/88fhhl9bv); 6. 在各自途径回复讨论,解答问题; ## 维护文档 ::: info 评价 难度:⭐⭐ 需要技能:Markdown ::: 文档的维护与更新主要包括几个方面: * 修正错别字、语句不通等 * 修正文档中的错误或不清晰的描述 * 调整章节结构,使文档条理更清晰 * 增加示例、专题或入门教程 * 等 请参阅 [文档贡献指南](./wiki.md) 了解详情。 ## 提交插件 ::: info 评价 难度:⭐⭐ 需要技能:TypeScript (OR not) ::: 你可以将已有的插件提交到插件商店,以使插件商店更完善,请参阅 [插件商店仓库的自述文件](https://github.com/zotero-chinese/zotero-plugins#readme)。 如果你想开发一个插件,可以阅读 [插件开发指南](../plugin-dev-guide/index.md)。 ## 提交样式 ::: info 评价 难度:⭐⭐⭐ 需要技能:Citation Style Language ::: 请参阅 [样式仓库的自述文件](https://github.com/zotero-chinese/styles)。 如果你需要修改 CSL 样式,可以阅读 [CSL 开发指南](../csl-dev-guide/index.md) ## 提交转换器 ::: info 评价 难度:⭐⭐⭐ 需要技能:JavaScript,HTML,CSS ::: 编写一个转换器,让 Zotero 导入中文文献更方便。 请参阅 [转换器仓库的自述文件](https://github.com/l0o0/translators_CN#readme)。 ## 提交搜索引擎文件 ::: info 待办 (该仓库尚未建立) ::: 请参阅搜索引擎仓库的自述文件。 ## 优化网站 ::: info 评价 难度:⭐⭐⭐⭐⭐ 需要技能:Vue,Vite ::: 请参阅 [网站仓库的自述文件](https://github.com/zotero-chinese/website#readme)。 ## 参与 Zotero 社区的建设 Zotero 是一个全球化的社区,它由各个国家的学者共同组成,在参与 Zotero 中文社区建设之外,您也可以参与 Zotero 官方社区的建设,请阅读 [Get Involved With Zotero](https://www.zotero.org/getinvolved/) 了解详情。 特别地,如果你完善 Zotero 客户端的「中文」语言,可以加入 Zotero 官方在 Transifex 的翻译团队,请阅读 [Localization - Zotero Documentation](https://www.zotero.org/support/dev/localization) 以了解详情。 --- --- url: /plugin-dev-guidereferenceindex.md --- # 参考 此节记录了一些 Zotero 插件相关的文件规范和 API,请在左侧菜单中选择需要浏览的内容。 --- --- url: /user-guidefaqssync.md --- # 同步问题的常见问题 本页面整理了一些 Zotero 同步相关的问题及解决方法,你可以在右侧大纲栏(部分窄屏设备也可能在顶部「页面导航」)或下面的目录快速定位到你需要的内容。 如果仍没有找到你需要的问题,可以考虑在 Zotero 中文社区提问咨询或前往 Zotero 官方论坛发帖求助。 \[\[TOC]] :::: tip 关于同步方案的提示 我们推荐使用 WebDAV 同步方案,结合坚果云、InfiniCLOUD 等网盘的 WebDAV 服务进行附件的同步。WebDAV 同步方案简单易用,支持 Zotero 移动端 App,不需要额外安装插件,且不容易出问题。 文件同步方案的详细对比和配置教程见:[Zotero 同步方案对比](../sync#文件的同步)。 ::: info 提醒 「坚果云」不是一种同步方案,而是一个网盘服务提供商。它既提供了可用于「WebDAV 同步」的 WebDAV 服务,也提供了可用于「Attanger + 同步盘」中同步本地文件夹的坚果云官方客户端。您需要根据具体使用了哪项功能来确定当前使用的同步方案,而不是仅仅依靠「坚果云」这个服务商名称。其他网盘服务商也同理。 ::: ::: danger 无论你选择何种同步方案,也无论基于何种原因,切勿将 Zotero 的 `数据存储位置/Data Directory` 自定义为任何网盘的同步文件夹中(包括 iCloud),也切勿使用任何网盘/同步盘的备份功能直接同步/备份这一目录!(包括但不限于直接使用坚果云的官方客户端直接同步备份这一文件夹) 这样做在某些情况下可能会导致你的 Zotero 数据库损坏,带来严重的问题!官方对于这一问题的说明见这两篇文章: 如果您已经将 Zotero 数据文件夹直接同步到网盘中,请您做好[备份](../backup#手动备份),根据 [自定义数据文件夹](../faqs/custom-data-directory) 的教程将数据文件夹迁移到本地的其他位置,且确保未使用任何工具直接同步这一数据文件夹。 ::: :::: ## 准备工作:确定附件的存储类型 最直接的判断方法是根据文库中的附件图标判断附件的类型。根据附件的类型,可以判断当前使用的同步方案是否存在问题。 * **存储的附件** ![icon-pdf](../../assets/icons/item-type/attachment-pdf.svg) ![icon-epub](../../assets/icons/item-type/attachment-epub.svg) 图标上没有小链条,表示该附件是存储的附件,由 Zotero 直接管理。需采用「WebDAV 同步方案」或「Zotero 官方存储空间」进行同步。 * **链接的附件** ![icon-pdf-link](../../assets/icons/item-type/attachment-pdf-link.svg) ![icon-epub](../../assets/icons/item-type/attachment-epub-link.svg) 图标上有小链条,表示该附件是链接的附件,Zotero 仅保存了一个指向该文件的链接,文件本身存储在其他位置。需采用「Attanger + 同步盘」方案进行同步。 * 如果您在使用 Attanger/ZotMoov + 同步盘方案时,发现 Zotero 中的附件图标上没有小链条,表示该附件不是链接的附件,未被移动到同步目录,无法被同步。请按照教程:[迁移到 Attanger + 同步盘方案](#教程迁移到-webdav-同步方案) 处理。 ## 问题排查 请根据您使用的同步方案,在下面对应的章节排查常见问题。 *** ### WebDAV 同步常见问题 #### 问题 1:附件丢失 检查附件在添加时的设备上能否正常打开。如果在所有设备上都无法打开,您可能需要重新下载这一附件并重新添加至 Zotero。 #### 问题 2:附件的类型与同步方案不匹配 附件的类型应与同步方案相匹配,否则会导致附件无法打开。如果您发现 Zotero 中的附件图标上有小链条,表示该附件是链接的附件,Zotero 仅保存了一个指向该文件的链接,文件本身无法被同步。请按照教程:[迁移到 WebDAV 同步方案](#教程迁移到-webdav-同步方案) 处理。 #### 问题 3:同步设置有误 请参照 [WebDAV 同步方案的配置教程](../sync#通过-webdav-同步附件),检查 **每一个设备上** 的 WebDAV 同步设置是否正确(移动端 Zotero 应用也需要设置 WebDAV 同步,详见:[移动端配置教程](../mobile)),点击「验证服务器」按钮,确保验证成功。 常见的错误有: * **WebDAV 网址错误**:请检查 WebDAV 网址是否正确,`http` 或 `https` 选择应正确,链接结尾不应有 `/` 符号。 * **误用登录密码**:WebDAV 同步的密码通常是网盘服务商提供的随机应用密码,而不是在网页上登录网盘官网时自己设定的密码。 * **移动端未设置 WebDAV 同步**:如果您在移动端使用 Zotero App,除了登录 Zotero 账号之外,也需要设置 WebDAV 同步,详见:[移动端配置教程](../mobile)。 #### 问题 4:Zotero 联网异常 点击 Zotero 界面右上角的同步按钮,等到同步按钮不在转圈后,查看左边是否有红的的警告图标(圆圈内有一个感叹号),如果有,点击图标查看弹出的错误信息。如果报错显示 `Request timed out...`,请检查您的网络连接是否正常,或尝试更换网络环境。如果您电脑里安装有访问国外网站的工具,请先打开,再关闭,然后重新再尝试同步。 ![Zotero 联网异常](../../assets/images/zotero-network-error.png) ::: details WebDAV 同步常见报错速查 ##### 401 错误:验证错误 * **原因**:账号或密码错误。 * **解决方法**: * 确保使用的是官网生成的应用密码,而非登录密码。 * 每个设备单独申请应用密码,不建议混用。 ##### 403 错误:禁止访问 * **原因**: * 访问频率过高,IP 被封。 * 其他原因导致账号被封。 * **解决方法**: * 检查是否触发坚果云的访问限制: * 免费用户:每 30 分钟不超过 600 次请求。 * 付费用户:每 30 分钟不超过 1500 次请求。 * 如果触发限制,稍等一段时间后重试。 * 若问题持续,联系坚果云官方客服排查。 ##### 404 错误:路径不存在 * **原因**:访问的文件或路径不存在。 * **解决方法**: * 确保 WebDAV 地址正确(如 `dav.jianguoyun.com/dav`)。 * 检查云端是否生成了 `zotero` 文件夹,里面是否有后缀名为 `.prop` 和 `.zip` 的文件。 * 若地址无误但问题仍存在,可参考相关文档进行进一步排查。 ##### 413 错误:文件过大 * **原因**:上传的文件体积超出限制。 * **解决方法**: * 虽然坚果云官方客户端支持单文件最大 5GB,但 Zotero 的 WebDAV 上传限制通常为 500MB。 * 对过大的 PDF 文件进行拆分或压缩后重新同步。 * 将过大的文件转为链接的附件,使用其他同步盘软件进行同步。 * 直接手动发送该附件,不使用同步方式。 ::: #### 问题 5:网盘空间/流量不足 请检查网盘的存储空间是否已满,或流量是否已用完。如果已达到网盘的存储上限或流量上限,Zotero 将无法上传新的附件,请升级网盘套餐。 ::: details 坚果云免费用户的流量限制说明 坚果云免费用户具有以下限制: * 流量与空间限制:每月上传流量 1GB/月、下载流量 3GB/月,空间受限于上传流量。请注意,每个账号的流量重置时间不同,通常不是每个月的 1 号,具体以坚果云网页上的显示为准。 * 文件上传大小限制:当前 WebDAV 客户端和网页端上传大小的限制是一致的,默认为 500MB(私有云可以通过相关设置调整)。 * 访问频率限制:由于 WebDAV 协议比较占用系统资源,免费版用户限制访问频率为每 30 分钟不超过 600 次请求。付费用户限制访问频率为每 30 分钟不超过 1500 次请求。 当然对于大部分用户免费账户是完全够用的(虽然每个月只有 1GB 上传流量,但是好处是每个月都可以有 1GB,一年最多可以拥有 12GB)。如果您对容量(流量)的需求很高,可付费[购买坚果云专业版](https://www.jianguoyun.com/s/pricing),或者使用其他支持 WebDAV 同步的网盘。 ::: #### 问题 6:文件同步历史异常 如果上面的步骤都没有解决问题,通常是本地的文件同步历史异常,导致部分附件未被同步。您可以在每一个电脑上重置文件同步历史。步骤详见:[重置文件同步历史](#教程重置文件同步历史)。 *** ### Attanger/ZotMoov + 同步盘同步问题 #### 问题 1:附件丢失 检查附件在添加时的设备上能否正常打开。如果在所有设备上都无法打开,您可能需要重新下载这一附件并重新添加至 Zotero。 #### 问题 2:附件的类型与同步方案不匹配 附件的类型应与同步方案相匹配,否则会导致附件无法打开。如果您发现 Zotero 中的附件图标上没有小链条,表示该附件不是链接的附件,未被移动到同步目录,无法被同步。请按照教程:[迁移到 Attanger + 同步盘方案](#教程迁移到-attanger--同步盘方案) 处理。 #### 问题 3:同步设置有误 同步设置有误通常会导致附件无法打开。请参照 [Attanger + 同步盘方案的配置教程](../sync#通过第三方网盘同步附件),检查 **每一个设备上** 的 Attanger/ZotMoov 同步设置是否正确,确保设置的目标目录是正确的。 常见的错误有: * **目标目录错误**:请检查目标目录(靶目录)是否正确设置为同步盘的目录。 * **已链接附件的根目录错误**:请检查已链接附件的根目录是否正确设置为与目标目录相同(同步盘的目录)。请注意,不同的电脑上应根据当前电脑的实际情况,设为这台电脑的同步盘目录。 #### 问题 4:同步盘故障 请检查同步盘客户端是否正常运行,是否处于在线状态。请确保同步盘的客户端在后台运行,并且没有出现错误提示。 #### 问题 5:部分附件无法被移动 如果部分附件始终无法被移动并转换为链接的附件,常见原因有: * **附件没有所属的文献条目**:如果附件是一个独立的顶级条目,没有所属的文献条目,插件可能无法移动这一个附件。请为该附件创建一个文献条目后再尝试。详见:[添加条目教程](../add-items#通过附件添加条目推荐)。 * **「重命名/移动的附件类型」中不包含这一附件类型的后缀名**:默认情况下,Attanger 不会移动`CAJ` 文件、`PPT` 文件、`HTML` 网页快照等类型的文件。请在插件设置「重命名/移动的附件类型」中补充需要被移动的文件的后缀名。 #### 问题 6:插件版本和 Zotero 版本不匹配 建议将 Zotero 和插件都更新到最新的正式版。 1. 更新 Zotero 版本:将 Zotero 更新到最新的正式版。可从 Zotero 官网下载最新的正式版覆盖安装。 2. 更新插件版本:按照[插件安装步骤](../plugins/about-plugin#更新插件)下载最新的插件安装包并覆盖安装。 #### 问题 7:Zotero 中删除附件时,系统中的文件无法同步删除 这是 Zotero 链接的附件的特性。详细说明和解决方案见:[删除 Zotero 中链接的附件时,同时删除系统中的文件](#教程删除-zotero-中链接的附件时同时删除系统中的文件)。 *** ### Zotero 移动端同步问题 #### 问题 1:未正确设置 WebDAV 同步 目前,Zotero 官方的移动端 App 仅支持 WebDAV 同步方案。请确保您在移动端的 Zotero App 中设置了 WebDAV 同步,且设置正确。配置方法见:[移动端配置教程](../mobile)。 移动端的 WebDAV 同步的注意事项与电脑端基本相同,请按照 [WebDAV 同步常见问题](#webdav-同步常见问题) 中的步骤进行排查。 ::: warning 对于自建 WebDAV 服务的提醒 如果你在使用 iPhone/iPad 的 Zotero App,受限于 iOS/iPadOS 的安全限制,可能无法使用 `http` 协议进行同步,也无法使用自签证书的 `https` 协议进行同步。如果您是自建的 WebDAV 服务(如使用了 NAS 提供的 WebDAV 服务),请使用 `https` 协议,并确保是由受信任的 CA 签发的证书。您可能需要注册一个自己的域名。 ::: #### 问题 2:电脑上使用了移动端不支持的同步方案 如果您在电脑上使用了「Attanger/ZotMoov + 同步盘」的同步方案,一定会导致附件无法在移动端打开。请按照教程:[迁移到 WebDAV 同步方案](#教程迁移到-webdav-同步方案) 处理。 #### 问题 3:附件无法打开的问题 如果您在正确处理了上面的问题后,仍然无法打开附件,建议您在电脑上重新下载该附件,并重新添加至 Zotero,重新同步后再尝试打开。 ## 附录:同步常见问题处理教程 ### 教程:迁移到 WebDAV 同步方案 如果您在使用 WebDAV 同步方案时遇到了链接的附件,或希望迁移到 WebDAV 同步方案,您可以按照下面的步骤处理: 1. **在 Zotero 中全选文献**:在分类中选择「我的文库」,然后在右侧文献列表任意点击一篇文献条目,按下 `Ctrl + A` 全选所有条目。 2. **转换链接的附件为存储的附件**:请根据下面的教程,将链接的附件转换为存储的附件。 :::: details 如果您安装了 Attanger 插件... 1. 选中需要转换的文献条目或附件。如果您需要转换所有附件,可以在分类中选择 `我的文库`,然后在右侧文献列表任意点击一篇文献条目,按下 `Ctrl`+ `A` 即可全选所有条目。 2. 右键点击选中了的任意一个条目,点击 `附件管理` → `撤销移动附件`,将链接的附件转换为存储的附件。在「转换为存储文件」窗口中,可以按需勾「存储后删除原始文件」,删除靶目录中的原始文件,删除后附件只存在于 Zotero 数据目录中。 3. 完成操作后,附件会作为副本存储在 Zotero 数据目录中,重新由 Zotero 管理。 ::: tip 提示 如果您使用 WebDAV 同步方案或 Zotero 官方存储空间,请将 Attanger 插件中的 `附加类型` 设置为 `副本` 并关闭 `自动移动添加到附件` 功能,者直接禁用或卸载 Attanger 插件。 * **将附加类型设为副本**:请在 Zotero 的 `编辑` → `设置` → `Attanger` 设置中,在 `附加类型` 中选择 `副本`。 * **禁止自动移动附件**:请在 Zotero 的 `编辑` → `设置` → `Attanger` 设置中,取消勾选`自动移动添加的附件`。 * **禁用插件**:请在 Zotero 的 `工具` → `插件` 中,找到 Attanger 插件,关闭右边的开关禁用插件。 * **卸载插件**:请在 Zotero 的 `工具` → `插件` 中,找到 Attanger 插件,点旁边的 `···` 按钮,点击 `Remove` 卸载插件。 ::: :::: :::: details 如果您没有安装 Attanger 插件... 1. 选中需要转换的文献条目或附件。如果您需要转换所有附件,可以在分类中选择 `我的文库`,然后在右侧文献列表任意点击一篇文献条目,按下 `Ctrl`+ `A` 即可全选所有条目。 2. 右键点击选中了的任意一个条目,点击 Zotero 的 `工具` → `管理附件` → `转换已链接文件为已存储文件...`,将链接的附件转换为存储的附件。「转换为存储文件」窗口中,可以按需勾选 `存储后删除原始文件`,删除靶目录中的原始文件,删除后附件只存在于 Zotero 数据目录中。 3. 完成操作后,附件会作为副本存储在 Zotero 数据目录中,重新由 Zotero 管理。 ::: tip 提示 如果您使用 WebDAV 同步方案或 Zotero 官方存储空间,请在完成转换后禁用各附件管理插件中移动附件的功能,或直接卸载该插件。 * **禁用插件**:请在 Zotero 的 `工具` → `插件` 中,找到 Attanger 插件,关闭右边的开关禁用插件。 * **卸载插件**:请在 Zotero 的 `工具` → `插件` 中,找到 Attanger 插件,点旁边的 `···` 按钮,点击 `Remove` 卸载插件。 ::: :::: 3. **设置 WebDAV 同步**:按照 [WebDAV 同步方案的配置教程](../sync#通过-webdav-同步附件) 设置 WebDAV 同步。 ### 教程:迁移到 Attanger + 同步盘方案 如果您在使用 Attanger + 同步盘方案时遇到了存储的附件,或希望迁移到 Attanger + 同步盘方案,您可以按照下面的步骤处理: 1. **重新设置 Attanger + 同步盘同步**:按照 [Attanger + 同步盘方案的配置教程](../sync#通过第三方网盘同步附件) 设置 Attanger/ZotMoov + 同步盘同步。请仔细检查各项设置是否正确。 2. **移动所有附件**:在 Zotero 中全选文献,右键点击选中的任意一个条目,然后使用插件的功能将所有附件移动到指定的同步盘目标目录。具体操作详见 [Attanger + 同步盘方案的配置教程](../sync#通过第三方网盘同步附件)。 ### 教程:重置文件同步历史 如果您在使用 WebDAV 同步方案时遇到了存储的附件无法打开的问题,您可以在每一个电脑上重置文件同步历史。步骤如下: 1. 打开 Zotero 的设置,点击 `同步` 选项卡。 2. 点击 `重置` 中的 `显示重置选项` 按钮。 ![重置选项](../../assets/images/zotero-sync-reset.png) 3. 在 `Library` 中选择 `我的文库`,选中 `重置文件同步历史`,点击 `重置...` 按钮。 ![重置文件同步历史](../../assets/images/zotero-sync-reset-file-sync-history.png) 4. 点击 Zotero 界面右上角的同步按钮,耐心等待同步完成后再在其他设备上重新尝试同步。 ### 教程:删除 Zotero 中链接的附件时,同时删除系统中的文件 当您使用 Zotero 的「删除条目...」功能删除一个链接的附件时,Zotero 仅删除数据库中的链接,而不会删除链接指向的文件本身。 针对这一问题,您可以下载并安装 [Del Item With Attachment 插件](/plugins/#search=Del+Item+With+Attachment),然后在文库中选中需要删除的条目(或条目中的附件),右键点击,选择「删除附件」→「删除条目和附件」,即可删除 Zotero 中的链接和系统中的文件。 ::: tip 提示 请注意,使用 Del Item With Attachment 插件的功能删除附件时,即便条目只是被删除到回收站中,系统中的文件也会在点击时直接被删除,**无法被恢复**。如果条目从回收站中恢复,附件链接会无法打开,只能新下载一个附件,然后将失效的附件链接定位到新下载的附件上。 如果你选中的只是条目中的附件,您仍然可以使用 Del Item With Attachment 插件的「删除条目和附件」功能来删除附件。此操作不会导致附件所述的上级文献信息条目被误删除,也不会导致其他未被选中的附件被删除。对于 Zotero 来说,此时删除的条目即为这个附件。 ::: --- --- url: /user-guidemisclink-citation-to-bibliography.md --- # 在 Word 中把引注链接到参考文献表 ## 描述 建立引注(citation)与参考文献表(bibliography)之间的单向超链接,类似于 endnotes 的「Link in-text citations to references in the bibliography」。 [Zotero 官方已为该功能立项](https://github.com/zotero/zotero/issues/4263),但最终实现可能还需要较长时间。以下提供两种方法来实现为 citation 添加超链接的功能。 ::: danger 确保备份数据 请在使用前,认真了解注意事项,并确保已经备份文档! ::: ## Word 宏 通过 Word 宏代码来实现此功能最初是由网友 @antikorpo、@cjac1、@freim86 等人在 [Zotero 论坛](https://forums.zotero.org/discussion/comment/324312/#Comment_324312) 中提出的。@altairwei 重构了这些代码并发布到了 [GitHub](https://github.com/altairwei/ZoteroLinkCitation)。 ### 配置及使用 #### 0. 前置条件 * Microsoft Word(推荐使用 2016 或更高版本以确保兼容性)。 * [下载 `ZoteroLinkCitation.bas` 文件](https://raw.githubusercontent.com/altairwei/ZoteroLinkCitation/master/ZoteroLinkCitation.bas)。 #### 1. 打开 VBA 编辑器 1. 打开 Microsoft Word。 2. 按下 `Alt` + `F11` 打开 VBA 编辑器。 #### 2. 导入 VB 脚本 1. 在 VBA 编辑器中,找到左侧的 `Normal` 项,右键点击它并选择 `导入文件(Import File...)`。 2. 找到并选择您的 `ZoteroLinkCitation.bas` 文件,然后点击 `打开` 进行导入。 #### 3. 保存宏启用文档 1. 退出 VBA 编辑器,返回 Word 文档。 2. 将文档保存为启用宏的文档(`.docm`): 1. 点击 `文件` > `另存为`。 2. 选择保存位置。 3. 在「保存类型」下拉菜单中选择 `启用宏的 Word 文档(*.docm)`。 4. 点击 `保存`。 #### 4. 调整宏安全设置 1. 转到 `文件` > `选项` > `信任中心` > `信任中心设置...` > `宏设置`。 2. 选择 `禁用所有宏但通知`,以便在保证安全的同时允许宏运行。 3. 点击 `确定`。 #### 5. 运行 `ZoteroLinkCitationAll` 宏 ##### 方法一:使用「开发工具」选项卡 1. 如「开发工具」选项卡未显示: 1. 前往 `文件` > `选项` > `自定义功能区`。 2. 在右侧勾选 `开发工具`,点击 `确定`。 2. 点击「开发工具」选项卡中的 `宏` 按钮。 3. 从列表中找到并选择 `ZoteroLinkCitationAll`,点击 `运行`。 ##### 方法二:快捷键方式 按 `Alt` + `F8`,找到并选择 `ZoteroLinkCitationAll`,点击 `运行`。 ##### 方法三:添加快捷按钮 1. 点击 `文件` > `选项` > `快速访问工具栏`。 2. 在「从下列位置选择命令」中选择 `宏`。 3. 选择 `ZoteroLinkCitationAll` 宏。 4. 点击 `添加` 将其添加到快速访问工具栏。 #### 6. 选择一个已有的 Word 文本样式(可选) `ZoteroLinkCitationAll` 宏运行时会弹出对话框,允许你设置新建超链接所使用的统一 Word 文本样式,方便统一修改链接的颜色、字体、字号等。 ### 注意事项 * **宏安全**:仅运行来自可信来源的宏,宏可能包含恶意代码。 * **测试使用**:建议先在非重要文档上测试运行宏,熟悉其效果后再正式使用。 * 手动更新引注时会出现引注已被修改的弹窗。 * 无法实现从参考文献表跳转到引注。 * 同一引注内包含多个引文时,可能链接到错误的参考文献表。 ### 已知问题 #### 手动修改引文链接或删除引号可能导致「下标超出范围(Subscript out of range)」错误 如果您手动在引文中添加超链接,或去除了方括号/圆括号,可能会触发「下标超出范围」错误。`ZoteroLinkCitation` 依赖 `[]` 或 `()` 来识别 Zotero 引文的边界,并通过文本解析匹配引文与 CSL 数据。因此,请确保使用该宏前文档处于 Zotero 原始状态。 #### 同一字段中多个引文链接错误到错误的参考文献 该错误通常发生在同一个引文字段中包含多个引文,且文档在「作者 - 日期」期「数字」字”样式之间切换过。 解决方法是定位所有错误匹配的字段,并使用 Zotero Word 插件逐个编辑这些字段。在 Zotero 插件弹出的对话框中,反复勾选/取消勾选「保持来源排序(Keep Sources Sorted)」,以更新引文对象的顺序,使其与 Word 文档中实际引文文本的顺序一致。更新完所有问题字段后,重新运行 `ZoteroLinkCitationAll` 宏。 出现该问题的原因在于,`ZoteroLinkCitation` 依赖引文字段中的顺序,从字段中的 CSL JSON 数据中提取引文标题,并建立与参考文献的链接。 此问题几乎无法通过 VBA 脚本自动解决,目前也没有办法强制 Zotero 在所有字段中更新 CSL JSON 数据中引文对象的顺序。 ### 支持的引文样式 #### 作者 - 年份样式 * [美国政治学会 (APSA)](http://www.zotero.org/styles/american-political-science-association) **†** * [美国心理学会 APA 第七版](http://www.zotero.org/styles/apa) **†** * [美国社会学会第六/七版](http://www.zotero.org/styles/american-sociological-association) **†** * [芝加哥手册第 17 版(作者 - 年份)](http://www.zotero.org/styles/chicago-author-date) * [中国国家标准 GB/T 7714-2015(作者 - 年份)](http://www.zotero.org/styles/china-national-standard-gb-t-7714-2015-author-date) **†** * [Harvard Cite Them Right 第十二版](http://www.zotero.org/styles/harvard-cite-them-right) **†** * [Elsevier - Harvard(含标题)](http://www.zotero.org/styles/elsevier-harvard) * [Molecular Plant](http://www.zotero.org/styles/molecular-plant) **†** 对于这些样式,默认情况下只有年份部分会链接至参考文献。你可以通过手动修改脚本中的 [参数](https://github.com/altairwei/ZoteroLinkCitation/blob/v0.1.1/ZoteroLinkCitation.bas#L578) `onlyYear` 来更改此默认行为。 #### 数字样式 * [美国化学会 (ACS)](http://www.zotero.org/styles/american-chemical-society) * [美国医学会 AMA 第十一版](http://www.zotero.org/styles/american-medical-association) * [中国国家标准 GB/T 7714-2015(数字型)](http://www.zotero.org/styles/china-national-standard-gb-t-7714-2015-numeric) * [IEEE](http://www.zotero.org/styles/ieee) * [Nature](http://www.zotero.org/styles/nature) * [Vancouver](http://www.zotero.org/styles/vancouver) #### 作者名称样式 * [现代语言协会第九版 (MLA)](http://www.zotero.org/styles/modern-language-association) ## Python 脚本 Python 包 [noterools](https://github.com/Syize/noterools) 提供了可以 Zotero 的引用添加超链接的函数。更多关于该 Python 包的信息请查看 [GitHub 仓库](https://github.com/Syize/noterools)。 * **仅支持 Windows 环境**:由于依赖包限制,该方法仅支持 Windows。 * 为引注创建到参考文献表的链接,支持「顺序编码制」和「作者 - 年份」两种格式。 * 修正参考文献表中没有被正确设置为斜体的刊物名称或出版商名称,仅支持「作者 - 年份」格式,不支持「顺序编码制」。 ### 使用方法 1. 使用 pip 安装 `noterools` ```bash pip install -U noterools ``` 2. 创建一个简单的 Python 脚本调用其中的函数,以下是一个简单的示例: ```python from noterools import Word, add_citation_cross_ref_hook, add_cross_ref_style_hook if __name__ == '__main__': # 你想要添加超链接的 Word 文档路径 word_file_path = r"E:\Documents\Word\test.docx" # 新文档的保存路径 new_file_path = r"E:\Documents\Word\test_new.docx" with Word(word_file_path, save_path=new_file_path) as word: # 为顺序引用格式添加超链接 add_citation_cross_ref_hook(word, is_numbered=True) # 为 (作者,年份) 引用格式添加超链接,设置引用为蓝色。 # 默认会将参考文献表中没有被正确设置为斜体的刊物名称或出版商设置为斜体 # 默认情况下,只有年份部分会添加超链接,设置 full_citation_hyperlink=True 可以让整个引用 (作者 + 年份) 都添加超链接 # add_citation_cross_ref_hook(word, is_numbered=False, full_citation_hyperlink=True) ``` ### 缺陷和注意事项 * 手动更新引注时会出现引注已被修改的弹窗,更新引注后你需要重新运行脚本来添加超链接。 * 暂时无法实现从参考文献表跳转到引注。 * 当你选择 Unlink Citations 时,添加的所有超链接会失效,这是由于 Word 的机制导致的。 --- --- url: /user-guidems-word-plugin.md --- # 在 Word 中插入参考文献 这些是使用 Zotero for MS Office Word 插件的说明。 要在 WPS 中使用插件,请参见 [在 WPS 中使用 Zotero Word 插件](./wps-plugin.md)。 ## Zotero Word 插件选项卡 ![Zotero Word 插件选项卡](../assets/images/word-zotero窗格.png) 一般情况下,Zotero 安装时会安装 Zotero Word 插件,其会在 Microsoft Word 里添加一个 Zotero 选项卡。如果你的 Word 里没有 Zotero 选项卡,请参见 [故障排除 | 安装 Zotero 的 Word 插件](./faqs/word-addon.md#word-中没有-zotero-选项卡) 。 Zotero 选项卡包含以下图标: | 名称 | 图标 | 描述 | | ------------------- | ---------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------- | | 添加/编辑引注 | ![插入引文](../assets/icons/integration/icon-word-插入引文-large.png) | 在光标位置添加新引注或编辑光标位置现有的现有引注。 | | 添加/编辑参考文献表 | ![添加参考文献表](../assets/icons/integration/icon-word-添加参考文献表-larger.png) | 在光标位置插入参考文献表或编辑现有书目。 | | 添加笔记 | | 在光标当前位置插入笔记。请注意,此功能不常用,点击后会出现黄色插入框。如果不小心点开了,可以用键盘上的 `Esc` 键关闭黄色插入框。 | | 文档首选项 | ![文档首选项](../assets/icons/integration/icon-word-文档首选项.png) | 打开「文档首选项」窗口,例如更改引文样式。 | | 刷新 | ![刷新](../assets/icons/integration/icon-word-刷新.png) | 立即刷新所有引注和参考文献表,如当前文档所引用的 Zotero 文库条目题录信息发生变动,则本文档的数据也会更新到最新状态。 | | 取消链接引注 | ![unlink](../assets/icons/integration/icon-word-unlink.png) | 通过删除域代码来取消文档与 Zotero 文库的链接,之后引注和参考文献表将不再会更新。请注意,此操作不可逆,建议仅在定稿时进行。 | ## 文档首选项 ![Word 文档首选项窗格](../assets/images/word文档首选项窗格.png) 「文档首选项」窗口允许您设置以下针对该文档的设置: 1. **「参考文献样式」**:一般情况下,你只需要修改这一项,其余设置均保持默认即可。 2. 「语言」:设置引注和参考文献表的格式的语言。 3. 「引注显示为」:对于基于注释的样式,例如「China National Standard GB/T 7714-2015(note,Chinese)」,引文是插入为脚注还或尾注。 脚注和尾注的样式和格式由 Word(而不是 Zotero)控制。 4. **「自动更新引注」** 一般情况下开启即可。当文档中引文非常多,每次更新都会卡顿时,可以关闭此功能,添加一部分或最终手动进行更新。 由于在 macOS 上更新引注通常较慢,故 mac 用户可以选择关闭此选项。 5. 「高级选项」 1. 「将引文存储为书签」 默认为存储为「字段」。除非您需要使用 LibreOffice 与同事协作,否则应始终选择「字段」。 2. 「使用 MEDLINE 期刊缩写」 仅对于缩写期刊标题的样式包含此选项。如果勾选此选项(默认值),则 Zotero 中「期刊缩写」字段的内容将被忽略。 ## 添加引注 您可以通过单击「![插入引文](../assets/icons/integration/icon-word-插入引文.png) 添加/编辑引注」在当前光标位置插入或编辑引注。 > \[!TIP] > 此按钮只是插入引注,不会在文末自动生成参考文献表。要插入参考文献表,请点击「插入/编辑参考文献表」按钮。 在一个未添加过引文的文档中,按下按钮将先弹出一个「文档首选项」窗口以让你选择一个 CSL 样式,之后再点「添加/编辑引注」将直接显示「引注对话框」,这个对话框可以从 Zotero 库中选择条目,并创建引注。 打开该对话框后,对话框会默认展示出你在 Zotero 文库列表中已经选中的条目和正在阅读的条目。如果这些条目正是你想要选择的,可以直接单击以选择。 ![未搜索关键词的引文对话框](../assets/images/word-引文对话框.png) 你也可以在搜索框中键入标题的一部分、一个或多个作者的姓氏和/或年份。匹配项将立即显示在对话框下方。 ![键入关键词的引文对话框](../assets/images/word-引文对话框2.png) 单击某条目可以选择这个条目,也可以用键盘「↑↓」+「Enter」键来选择条目。选中的条目以气泡形状显示在对话框中。 ![添加了引注的引文对话框](../assets/images/word-引文对话框3.png) 要在同一位置引用多篇文献(例如,数字样式为`[2,4-6]`,作者日期样式为`(Smith 1776, Schumpeter 1962)`),请在「添加引注」框中一个接一个地添加它们。选择第一个项目后,不要按 Enter/Return 键,而是继续选择下一个条目。 完成选择后,再次按「Enter/Return」键以插入引注并关闭引注对话框。 ### 文库模式 「添加引注」对话框有「列表模式」和「文库模式」两种。前者主要通过关键词检索文献,后者可以通过合集来查找文献。 你可以在对话框右下角切换两种模式,Zotero 默认使用上次使用过的模式,但也可以在设置中指定默认模式。 ![引文对话框 - 文库模式](../assets/images/word-引文对话框-文库模式.png) ### 引注顺序 某些引文样式要求一个位置内文献按字母顺序排序(例如,`(Doe 2000,Grey 1994,Smith 2008)`)或按时间顺序排序(`(Grey 1994,Doe 2000,Smith 2008)`)。Zotero 将自动遵循这些排序规则。 ::: details 禁用文献自动排序? 若要禁用引文中引文的自动排序,请拖动引文以在「添加引文」框中重新排列引文。您也可以单击「添加引文」框右下角的「引用设置」图标,然后取消选中「保持文献自动排序」选项。*此选项仅对指定引文排序顺序的引文样式显示。* 要恢复自动排序,请重新选中「保持源已排序」选项。 ![引文对话框禁用自动排序](../assets/images/word-引文对话框-禁用自动排序.png) ::: ### 孤立的条目 孤立的条目是指存在于 Word 文档中但不存在于 Zotero 文库的参考文献条目。 ::: details 在「添加引注」对话框中,您可以单击被引用条目的气泡,然后单击「在我的库中打开(或组库的名称)」以在 Zotero 中查看该条目。 孤立的条目(未连接到 Zotero 数据库中的任何条目)将没有「在我的库中打开」按钮。 ![编辑引文](../assets/images/word-引文对话框-编辑引注.png) 孤立条目通常是以下原因导致的: * 协作者从 TA 自己的文库或您无权访问的群组中插入的 * 您已从 Zotero 文库中删除了这些条目 * 你曾经有个一样的重复条目 A 和 B,你在文档里插入了 A,然后在 Zotero 里删除了 A 留下了 B(而不是合并) ::: Zotero 可以正常为孤立条目排序,但由于你的 Zotero 库中没有这个条目,因此你无法修改它的题录信息。若要更新,请将这些文献重新导入您自己的文库,并重新插入。 ### 在已经添加引注的地方增删引注 如果您想在之前插入的引注中增加/删除条目,或者修改引注的信息,可以将光标定位在引注内(在 Word 中插好的编号角标中间点一下,使输入光标在角标内,此时引注区域会出现灰色阴影),然后再单击「![插入引文](../assets/icons/integration/icon-word-插入引文.png) 添加/编辑引注」按钮开始编辑引注。 ![编辑引注](../assets/images/word-编辑引注.png) 在「添加/编辑引注」对话框中,您可以将光标定位在引用条目的气泡之间,然后继续键入新文献的相关信息来添加新的引用条目,或使用键盘 `Backspace` 或 `Delete` 键删除不再需要的引用条目。 ![编辑引注](../assets/images/word-引文对话框-增删引注.png) > \[!WARNING] 警告 > 请勿直接修改 Word 中的引注文字(编号等域代码内容)。对引用项的任何修改,都需要在「添加/编辑引注」对话框中进行。手动修改域代码字段将阻止 Zotero 自动更新引注以反映文档中的其他更改(例如,无法自动更新引用角标的编号)。在您进行手动编辑文字后,Zotero 将要求您确认是否要保留编辑并防止引注自动更新。如果您在手动编辑后希望恢复由 Zotero 更新引注内容,可以参照 [使 Zotero 恢复对引文的更新](./faqs/word-addon#使-zotero-恢复对引文的更新) 的方法来恢复,或者删除这一整个引注角标,重新插入这几篇文献。 ### 自定义引注 在「添加引注」对话框中,您还可以单击被引用条目的气泡,然后编辑该引用条目的更多信息,如页码等定位符、前后缀、省略作者等。请参考 [自定义引注](#自定义引注)。 ![编辑引注](../assets/images/word-引文对话框-编辑引注.png) #### 页码和其他定位符(图、表等) ::: details 在某些情况下,您希望引用条目的某个部分,例如某个页面,页码范围或卷(例如,引注 `Doe et al., 2001,page 4-7` 中的 `page 4-7`),这种额外的引文特定信息被称为「定位符」。 引注选项窗口的「page」处有个下拉列表,里面是不同的定位符类型,后面的输入框里输入这个定位符的值。 要使用其他的定位符,例如「表」,请使用「后缀」。 您还可以在插入引注时添加页码。搜索条目,在选择条目之前或之后,但在按 Enter 将引注插入到文档中之前,输入 `p.34`、`p34`,甚至 `34`,都可以将页码添加到引注中。 ::: #### 前缀和后缀 ::: details 有时候,你需要 `cf. Tribe 1999, see also see……` ,而不只是 `Tribe 1999`,你就需要「前缀」和「后缀」。 前缀和后缀字段中的任何文本都可以使用 HTML 标记 `斜体`、`粗体`、`下标` 和 `上标` 进行格式设置。 前缀和后缀可以应用于引注中的每个条目,以创建复杂的引注。例如: ```plain (参见 Smith 1776 的经典例子; 马克思 1867 年提出和另一种观点) ``` 通过在「前缀」和「后缀」修改引注始终比直接在 Word 域代码字段中输入内容更可取。手动修改域代码字段将阻止 Zotero 自动更新引注。 ::: #### 省略作者:在文本中使用作者 ::: details 使用作者日期样式,作者经常被移到文本中,并从以下括号括起来的引文中省略,例如: ```plain ……根据 Smith(1776)的说法,劳动分工至关重要…… ``` 这种需要从引注中省略作者,请选中「省略作者」框(产生的引注变成 `(1776)` 而不是原来的 `(Smith,1776)`),并将作者的姓名「Smith」作为文档中常规文本的一部分。 ::: #### 其他更改 > \[!INFO] > 如果是文献的元数据有误,建议在 Zotero 中更正条目元数据,然后刷新 Word 文档。Zotero 会自动更新文档中的引注和参考文献表。 如果您的引注仍未按所需方式显示,您可以直接在文档中编辑引注,但请注意,这样做会阻止 Zotero 自动更新引注以反映文档中的其他更改(例如,对于「同上」或给定名称消除歧义)。在您进行手动编辑后,Zotero 将要求您确认是否要保留编辑并防止引注自动更新。 最好是在要进行的更改的文本中做注释,等到准备好提交文档,然后在使用「取消链接引文」后的文档副本中进行更改。 如果您认为 CSL 样式中存在错误,请发布到 Zotero 论坛,并在必要时更正样式。如果样式已更新,则文档将自动更新。 ## 添加参考文献表 单击「![添加参考文献表](../assets/icons/integration/icon-word-添加参考文献表.png) 添加/编辑参考文献表」按钮会在光标位置插入参考文献表。 > \[!INFO] > 一般情况下,在文末写一个 `参考文献` 标题,然后按回车另起一行,再点击这个按钮插入参考文献表。 Zotero 将根据文档中的引文自动更新参考书目。 在极少数情况下,如果要将未在文档中引用的条目添加到书目中,可以再次单击「添加/编辑参考文献表」按钮,这将打开 [参考文献表编辑器](#编辑参考文献表)。 > \[!WARNING] > 不要在 Word 中手动编辑参考文献表,这些编辑将在下次 Zotero 刷新文档时被覆盖。 ### 参考文献表段落格式 参考文献表的缩进、悬挂、字体字号、行间距、编号与条目之间的距离等,都是在 Word「书目」样式中修改,请阅读 [关于引用文献的一揽子问题](./faqs/word-addon.md) 中的 Word 样式小节。 ## 添加笔记 在光标当前位置插入笔记。 > \[!WARNING] > 此功能不常用,点击后会出现黄色插入框。如果不小心点开了,可以用键盘上的 `Esc` 键关闭黄色插入框。 ## 编辑参考文献表 当您在文档中添加和删除引注时,Zotero 将自动更新参考文献表。一般来说,这已经足够了。 ::: details 但是,在极少数情况下,您可能希望将未引用的文献添加到参考文献表中(例如,综述中包含的项目,但论文中未引用的项目)或删除文本中引用但不应包含在参考书目中的项目(例如,个人通信)。 为此,请再次单击「添加/编辑书目」(![添加参考文献表](../assets/icons/integration/icon-word-添加参考文献表.png))按钮以打开「编辑书目」窗口: ![编辑参考文献表](../assets/images/word-编辑参考文献表.png) 然后,您可以使用箭头添加或删除项目。 虽然也可以在此窗口中编辑书目参考文献的文本或格式,但不鼓励这样做。如果您更改了库中的数据,Zotero 不会自动更新此处编辑的引用。在这里编辑参考文献也有些不可靠; 一些用户报告说,当 Zotero 引用时,此处所做的修改有时不会持续存在,以及其他问题。 如果您需要编辑书目中的项目,最好在提交文档之前将其作为最后一步。首先,保存文档的备份副本。然后,单击「取消链接引文」按钮(![icon-Word-unlink](../assets/icons/integration/icon-word-unlink.png))以断开文档与 Zotero 的连接,并将所有引文和书目转换为常规文本。最后,对参考书目文本进行调整。 此过程可用于对参考书目进行各种细微的修改,包括: * 在综述或荟萃分析中包含的参考文献之前添加星号 `*` * 以粗体、斜体或全大写设置特定作者的姓名 * 添加有关项目的批注或注释 * 为书目子部分添加标题(例如,主要来源与次要来源) ::: ## 定稿:取消链接 删除所有 Zotero 域代码且断开与 Zotero 文库链接。点击后所有的引注和文末的参考文献表都会变成纯文本。 ::: warning 该操作不可逆,一旦断开连接,所有的引注信息都会变成纯文本,无法再自动更新编号和参考文献表,也无法恢复到以前带有链接的状态。 因此强烈建议在断开连接之前将文档另存一份备用,仅将用于提交/共享的副本断开连接。 正常地,Zotero 会在取消链接时自动新建一个文档,但如果文档保存在 OneDrive 上,这种自动机制无法生效,Zotero 会弹窗要求你手动新建一个文档。 ::: ## 注意事项与常见问题 ::: warning * 所有的引注/参考文献表的样式修改都应在 [CSL 引文样式](./citation-styles.md) 中进行,而不是直接在 Word 里手动修改! * 对引注顺序更改应在 Word「引注编辑对话框」中进行,而不是直接在 Word 里手动修改! * 所有的条目信息,如作者、标题、期刊、期卷页等,都应在 Zotero 中更新条目信息,而不是直接在 Word 里手动修改! ::: ::: tip 常见问题 插入引文中遇到的一些常见问题,请参见 [关于 Word 引用的各种问题](./faqs/word-addon.md) 。 ::: --- --- url: /user-guidewps-plugin.md --- # 在 WPS 中插入参考文献 在 WPS 中使用插件参考文献,目前有两种方法: * 使用普通版本的 WPS,通过 Zotero WPSJS 项目完成参考文献插入 * 使用带有 VBA 的 WPS,运行为 Word 适配的加载项 ## 通过 Zotero WPS JS 项目 Zotero WPSJS 项目是一个「WPS 文字」的加载项,该加载项利用 WPS 提供的 JavaScript API 从 Zotero 获取引文信息,并写入到 WPS 文档中。 它最初是由 [@tankwyn](https://github.com/tankwyn) 开发并发布在 [tankwyn/WPS-Zotero](https://github.com/tankwyn/WPS-Zotero) 的,随后 [@初心不忘](https://gitee.com/wangrui5015) 接手了其维护,将修改版本发布在 [wangrui5015/Zotero-WPSJS](https://gitee.com/wangrui5015/Zotero-WPSJS)。 ### 安装 作者初心不忘已经录制了安装视频,请观看视频教程了解安装步骤: * [macOS](https://www.bilibili.com/video/BV12SFXeJEJV) * [Windows](https://www.bilibili.com/video/BV12SFXeJEJV?p=2) * [Linux](https://www.bilibili.com/video/BV12SFXeJEJV?p=3) ### 使用 WPS 插件的按钮与 Word 插件类似,具体的操作过程,请参考 [在 Word 中插入参考文献](./ms-word-plugin.md)。 ## 常见问题 ### 1. Zotero 不会自动出现 使用中可能点击按钮后,Zotero 的窗口不会自动出现,可以手动点击一下任务栏中的 Zotero 图标,让 Zotero 的窗口跳到最前。 ### 2. 插件安装后 WPS 内不显示 Zotero 选项卡 该部分教程来自与[官方文档](https://p.kdocs.cn/s/ZPIJCBAABE) 若安装 Zotero 插件后,打开 WPS 不显示,请按照以下步骤操作: 1. **关闭 WPS Office 的所有程序**(如文字、表格、演示)。 2. **找到 Zotero.dotm 文件并复制它:** * **对于 Zotero 7 及更新版本:** * 路径通常为: `[Zotero安装盘符]:\Program Files\Zotero\integration\word-for-windows\` * 例如,如果您 Zotero 安装在 D 盘,路径则为 `D:\Program Files\Zotero\integration\word-for-windows\Zotero.dotm` * 如果您 Zotero 安装在 C 盘,路径则为 `C:\Program Files\Zotero\integration\word-for-windows\Zotero.dotm` * **注意:** `Program Files` 也可能是 `Program Files (x86)`,取决于您的 Zotero 安装版本(32 位或 64 位)和系统。请检查您的实际安装目录。 * **对于 Zotero 6 及更早版本:** * 路径通常为: `[Zotero安装盘符]:\Program Files (x86)\Zotero\extensions\zoteroWinWordIntegration@zotero.org\install\` * 例如:`C:\Program Files (x86)\Zotero\extensions\zoteroWinWordIntegration@zotero.org\install\Zotero.dotm` * **如何找到 Zotero 安装目录?** * 如果您不确定 Zotero 安装在哪里,可以尝试右键点击 Zotero 桌面快捷方式,选择「打开文件所在位置」来找到 Zotero 的主安装目录,然后根据您的 Zotero 版本进入上述相应的子文件夹。 * 在上述路径中找到 `Zotero.dotm` 文件后,选中它并按 `Ctrl+C` 复制。 ![image](../assets/images/WPS_Problems.png) 3. **将 Zotero.dotm 文件粘贴到 WPS 的启动 (startup) 文件夹:** * 打开文件资源管理器,在地址栏输入以下路径并按回车键: `%APPDATA%\kingsoft\wps\startup` 或者,您也可以手动导航到这个路径,它通常是: `C:\Users\[您的用户名]\AppData\Roaming\kingsoft\wps\startup` (请将 `[您的用户名]` 替换为您实际的 Windows 用户名,例如 `Administrator`, `YourName` 等。) * **注意:** `AppData` 文件夹默认是隐藏的。如果您在 `C:\Users\[您的用户名]\` 目录下看不到 `AppData` 文件夹,请在文件资源管理器的菜单栏中点击「查看」(或类似选项卡),然后在「显示/隐藏」区域勾选「隐藏的项目」(或类似选项)即可使其显示出来。 ![image](../assets/images/WPS_Problems-1.png) * 在打开的 `startup` 文件夹内,按 `Ctrl+V` 粘贴刚刚复制的 `Zotero.dotm` 文件。 4. * 重启 WPS,即可看到 Zotero 插件 ![image](../assets/images/WPS_Problems-2.png) ### 3. 有多个 Zotero 选项卡 如果你之前安装把 Word 里的 Zotero 插件强行安装到 WPS,那样出现多个的 Zotero 选项 ![多个 Zotero 选择](../assets/images/wps/wps-plugin-ui.png) 先打开 `C:\Users\你的用户名\AppData\Roaming\kingsoft\wps` 目录 (注意用户名换成你自己的),找到 `startup` 目录,删掉里面的 `zotero.dotm` 文件,这个文件是直接从 Zotero 的 Word 插件里复制到 WPS 里,需要 WPS 有 VBA 环境,现在已经不需要了,可以删掉。 ![WPS 插件安装路径](../assets/images/wps/wps-vba-plugin-install-path.png) ## 通过 VBA 使用 使用 WPS 的 VBA 插件插入参考这篇:[完美在 WPS 中使用 Zotero 的方法](https://zhuanlan.zhihu.com/p/579975093),该方法这个方法需要依赖 WPS 的 VBA 环境,需要升级到某些付费版本才行(当然也有破解版)。 --- --- url: /user-guidebackup.md --- # 备份 我们强烈建议您定期备份 Zotero 数据目录。虽然同步是确保您可以在计算机发生问题时恢复库的好方法,但它并不能完全替代正确的备份:Zotero 服务器仅存储库的最新版本,并且只需要一个(可能是自动)同步以更改服务器副本(尽管可以从 Zotero 的自动备份恢复一些无意的更改)。 在本页中,我们首先介绍 Zotero 运行所需的三类文件,然后介绍若干种备份这些文件的方式。 ## 概述 我们将构成 Zotero 正常运行的文件分为三部分: * Zotero 程序文件 (Program Files) * Zotero 数据文件 (Zotero Data Folder) * Zotero 用户配置文件 (Zotero Profile Directory) ### 程序文件 这些文件构成 Zotero 程序的主体,包含了 Zotero 程序的二进制文件(例如 `zotero.exe` 等)和相关的库文件,不包括您的数据和个性化设置。 这些文件由安装包释放,通常无需额外备份。 ### 数据文件 这个目录包含了 Zotero 存储的所有数据,包括您的文献条目信息、笔记、附件、标签、文件夹结构、转换器和引文样式等。这是最重要的部分,因为它包含了您的研究资料。备份数据文件可确保您不会失去已收集的所有信息。 #### 数据文件位置 除非您在 Zotero 设置的高级窗格中选择了自定义数据目录,否则您的 Zotero 数据将存储在以下与操作系统相关的目录中: | 系统类型 | 默认位置 | | --------------------- | ----------------------------- | | macOS | `/Users//Zotero` | | Windows (Windows 7 +) | `C:\Users\\Zotero` | | Linux | `~/Zotero` | ::: tip 查找 Zotero 数据的最简单、最可靠的方法是单击 `Zotero 设置` 的 `高级` 选项卡中的 `显示数据目录` 按钮。这将始终显示当前正在使用的数据目录,并且是查找数据目录的推荐方法。 如果您无法访问 Zotero 设置,搜索文件名`zotero.sqlite`也可以帮助您找到 Zotero 数据目录。 ::: #### 数据文件内容 ```bash northword@Yoga-Northword MINGW64 /d/Northword/Documents/Zotero $ tree -L 1 . |-- about config.xul |-- cache |-- locate |-- logs |-- storage |-- styles |-- translators |-- zotero.sqlite `-- zotero.sqlite.bak ``` 数据目录中最重要的文件是 `zotero.sqlite` 文件,它是包含大部分数据的数据库:项目元数据、注释、标签等。当 Zotero 启动时,它会读取 `zotero.sqlite` 文件。 该目录还包含一个 `storage` 文件夹,其中包含 8 个字符的子文件夹(例如`N7SMB24A`),其中包含所有文件附件,例如 PDF、网页快照、音频文件或您导入的任何其他文件。 (链接的文件不会复制到此子文件夹中。) 您的数据目录可能包含其他几个文件和文件夹。其中可以包括 `zotero.sqlite.bak` ( `zotero.sqlite` 的自动备份,如果现有 `zotero.sqlite.bak` 文件在过去 12 小时内未更新,则定期更新)和 `zotero.sqlite.[number].bak` 文件(在某些 Zotero 更新期间创建的 `zotero.sqlite` 自动备份),以及诸如 `locate` 、 `logs` 等文件夹, `pipes` 、 `styles` 和 `translators` 在 Zotero 启动时自动创建。 ::: warning 在复制、删除或移动任何这些文件之前,请确保 Zotero 已关闭。如果在移动这些文件之前不这样做可能会损坏您的数据。 ::: ### 用户配置文件 用户配置文件包括您的个性化设置、插件及其配置、数据库位置等。备份用户配置文件可确保您可以轻松地还原您的个性化 Zotero 设置和工作环境。 #### 用户配置文件位置 | 系统类型 | 默认位置 | | --------------------- | ------------------------------------------------------------------------------------- | | macOS | `/Users//Library/Application Support/Zotero/Profiles/<8位随机字符>.default` | | Windows (Windows 7 +) | `C:\Users\<用户名>\AppData\Roaming\Zotero\Zotero\Profiles\<8位随机字符>.default` | | Linux | `~/.zotero/zotero/<8位随机字符>.default` | ::: tip macOS 默认情况下,`/Users/<用户名>/Library` 文件夹是隐藏的。要访问它,请单击桌面,按住 `Option` 键,单击 Finder 的 `转到` 菜单,然后从菜单中选择 `资源库`。 ::: ::: tip Windows 默认情况下, `AppData` 是隐藏的,可以在资源管理器搜索栏键入 `%appdata%`,然后按回车,即可进入 `AppData\Roaming` 目录。 ::: #### 用户配置文件内容 这个目录包含 Zotero 的配置、插件信息及插件配置等。下面列出了部分目录文件: ```bash northword@Yoga-Northword MINGW64 ~/AppData/Roaming/Zotero/Zotero/Profiles/1y2hj8ud.default $ tree -L 1 . |-- bookmarkbackups |-- browser-extension-data |-- extensions |-- extensions.json |-- prefs.js |-- times.json |-- treePrefs.json |-- webappsstore.sqlite `-- xulstore.json ``` 其中 `prefs.js` 包含 Zotero 的所有设置,`extensions/` 目录 和 `extensions.json` 包含 Zotero 插件的安装包和安装、启用等信息。 ::: warning 如无必要,不要修改这个目录里的任何文件,不当的修改可能导致 Zotero 无法正常启动。 ::: ## 手动备份 手动备份可以实现数据的完整备份,包括但不仅限于账户、插件、设置、文献、附件等数据。 如果您需要手动备份完整的 Zotero 数据,可以按照以下步骤进行: 1. **关闭 Zotero**:在备份之前,请确保 Zotero 已关闭,以避免数据损坏。 2. **备份数据目录**:复制 Zotero 数据目录 到备份位置。请确保备份位置安全可靠。 3. **备份存放所有用户配置的目录**:复制 Zotero 存放所有用户配置文件夹的目录 到备份位置。请确保备份位置安全可靠。 ::: info 数据目录和存放所有用户配置的目录的位置 * **数据目录**:在 Zotero 中点击 `设置` → `高级` → `文件和文件夹` → `数据存储位置` 中显示的数据目录路径,直接复制整个数据目录进行备份。您也可以点击 `打开数据目录` 按钮直接打开数据目录,然后返回上一级复制整个数据目录进行备份。 * **存放所有用户配置的目录**:通常,用户配置文件都会存放在默认位置。您可以直接复制整个用于存放用户配置文件夹的目录进行备份。以下是默认位置: * Windows:`C:\Users\<用户名>\AppData\Roaming\Zotero\Zotero\Profiles` * macOS:`/Users/<用户名>/Library/Application Support/Zotero/Profiles` * Linux:`~/.zotero/zotero` ::: :::: details 使用蒲公英插件备份配置 您可以使用蒲公英 `Tara` 插件进行用户配置数据的备份和恢复。详细操作请参阅 [使用 Tara 备份数据](./plugins/tara.md)。 使用蒲公英插件备份和恢复的数据可能不完整,恢复后建议您仔细检查核对。同时,仍然建议您手动备份一份配置文件备用。 ::: warning 蒲公英无法备份 Zotero 数据文件 蒲公英 `Tara` 插件只有配置文件的备份和恢复功能,无法备份 Zotero 数据文件(文献条目信息、笔记、附件、标签、分类等)。请您 [手动备份数据目录](#手动备份)。 ::: :::: ## 从备份中恢复 您可以从手动备份中恢复 Zotero 的数据和配置。请注意,恢复操作会覆盖当前的 Zotero 数据和配置,因此在执行恢复之前,建议您再次 [备份当前的数据和配置](#手动备份),以备不时之需。 ### 从备份恢复数据(文献信息、笔记、标签、分类、附件等) 如果您在使用 Zotero 时犯了错误(例如,意外删除大量条目,或数据库损坏),或者需要在一台新的电脑恢复数据,可以从备份中恢复数据。详见:[从备份中恢复 Zotero 数据](./faqs/restore-data-from-backup)。 ### 从备份中恢复配置(设置、插件等) 如果您希望从备份中恢复之前的设置和插件,可以按照以下步骤进行: 1. **关闭 Zotero**:在恢复之前,请确保 Zotero 已关闭,以避免数据损坏。 2. **备份当前配置**:在恢复之前,建议您备份当前的用户配置文件目录,以防止数据丢失。 3. **恢复配置**:在备份中找到需要恢复的用户配置文件目录(名为 `<8位随机字符>.default` 的目录),将其中的所有内容(包含 `prefs.js` 文件、`extensions` 目录等)拷贝到当前的用户配置文件目录中,替换掉当前的配置文件。 4. **重新打开 Zotero**:重新打开 Zotero,检查设置和插件是否恢复成功。请仔细检查各项设置和路径是否正确。 ### 在新电脑上恢复 如果您在旧电脑上进行了完整的[数据和文件同步](./sync),您只需要在新电脑上正确配置同步,即可恢复数据和文件。详见:[使用 Zotero 同步恢复数据](./faqs/restore-data-from-backup#使用-zotero-同步恢复数据)。 建议您在新电脑上重新手动配置 Zotero 的设置和插件,而不是直接使用旧电脑的配置文件备份进行恢复。新旧电脑的配置路径可能存在差异,直接使用旧电脑的配置文件进行恢复可能会导致 Zotero 无法正常工作。 ::: info 从手动备份中恢复数据 如果您旧电脑中的文库较大,或者希望节约 WebDAV 同步的流量,您可以选择从手动备份和恢复数据。手动恢复数据的步骤详见:[从手动备份恢复数据](./faqs/restore-data-from-backup#从完整手动备份恢复数据)。 ::: :::: details 使用完整的手动备份恢复数据和配置 ::: warning 注意 我们不建议您直接使用旧电脑的配置文件进行恢复,因为新旧电脑的配置路径可能存在差异,直接使用旧电脑的配置文件进行恢复可能会导致 Zotero 无法正常工作。建议 [从手动备份恢复数据](./faqs/restore-data-from-backup#从完整手动备份恢复数据),然后对照着老电脑手动配置 Zotero 的设置和插件。 ::: 如果您希望在新电脑上使用完整的手动备份恢复数据和配置,首先您需要在新电脑上安装 Zotero,然后将下列表格中旧电脑的数据文件拷贝到新电脑的同一位置。 | 旧电脑 | 新电脑 | | --------------------------------------------------------------------------- | ----------------------------------------------------------------------- | | `C:\Users\<用户名>\AppData\Roaming\Zotero\Zotero\Profiles\*.default` 中文件 | `C:\Users\<用户名>\AppData\Roaming\Zotero\Zotero\Profiles\*.default` 中 | | Zotero-`设置`-`高级`-`文件和文件夹`-`数据储存位置`中的文件 | 同一路径 | ::: info 操作示例 例如:新旧电脑的用户名均为`zotero-chinese`,旧电脑将 Zotero 安装在 `D:\Program Files\Zotero` 目录下,数据储存位置设置为 `C:\Users\zotero-chinese\Zotero`。 在新电脑中,应该要做的是: 1. 安装 Zotero,并确保 Zotero 处于关闭状态。 2. 将 **旧电脑** `****.default` 中的所有内容拷贝至 **新电脑** `****.default` 中(注意不是复制文件夹本身,而是替换该文件夹中的所有文件和子文件夹) 3. 将 **旧电脑** `C:\Users\zotero-chinese\Zotero` 中的所有内容拷贝至 **新电脑** `C:\Users\zotero-chinese\Zotero`中 4. 打开 Zotero,即可。 ::: warning 注意 如果您两台电脑的用户名不同,或者数据目录位置不同,您需要在新电脑上恢复了配置文件后重新手动设置数据目录位置。 恢复完成后,请仔细检查 Zotero 设置中每一项与路径有关的设置是否已经正确指向新电脑中的相应位置。 ::: :::: --- --- url: /user-guidefaqspdf-black-mask.md --- # 如何解决 Zotero 中 pdf 文件图片上有黑色遮挡的问题 部分同学在使用 Zotero 官方阅读器阅读 pdf 的时候,可能会碰到图片出现黑色遮挡的情况。 ![黑色遮挡](../../assets/images/zotero-黑色遮挡.png) 根据 [Zotero 官方答复](https://forums.zotero.org/discussion/97306/black-shade-on-the-figures-when-opening-pdf-by-zotero-report-id-942401037) ,这个问题可能是由显卡不兼容导致,可以尝试通过更新显卡驱动来解决,或者通过修改 Zotero 设置,以降低部分图形性能为代价,解决这个问题。 具体操作步骤如下: 1. 在菜单编辑选择「设置」: ![编辑器](../../assets/images/zotero-编辑器.png) 2. 弹出如下图所示的对话框。 点击「I accept the risk」 ![同意承担风险](../../assets/images/zotero-我同意承担风险.png) 3. 在搜索框中输入 acceleration,双击搜索到的 layers.acceleration.disabled,Value 将变为 true。然后重新启动 Zotero,即可解决问题。 ![将 layers.acceleration.disabled 设置为 true](../../assets/images/zotero-layers.acceleration.disabled.png) --- --- url: /user-guideinstall.md --- # 安装 ## 主程序(PC) 请在 [Zotero 官网](https://www.zotero.org/download/) ,在页面左边下载对应自己操作系统的 Zotero 安装包。 ![下载 Zotero](../assets/images/下载Zotero.png) ### 测试版本的 Zotero 我们始终推荐大部分用户使用正式版本的 Zotero 而非测试版本,测试版本将面临包括但不限于崩溃、数据丢失等问题。 ::: details 获取 Zotero beta 版本 你可以在 [Zotero Beta Builds - Zotero Documentation](https://www.zotero.org/support/beta_builds) 里下载测试版本的 Zotero。 注意:测试版本的 Zotero 将强制保持最新构建版本,如果你需要旧版本的 beta 版本,可以前往 [Zotero 7 beta 历史版本](./faqs/zotero-7-beta-versions.md) 获取。 ::: ## 浏览器扩展 Zotero Connector Zotero 相较于其他文献管理软件的一大优势就是可以直接从网页中抓取元数据并存入数据库,这个过程通过浏览器扩展 Zotero Connector 实现。 请在主程序安装完成后,打开常用的浏览器,访问 [Zotero 官网](https://www.zotero.org/download/) ,点击页面右边 Zotero Connector 的 `Install Connector` 按钮进行安装。 ![下载 Zotero](../assets/images/下载Zotero.png) 支持常用浏览器:Chrome(谷歌浏览器),Firefox(火狐浏览器),Edge(微软自带浏览器),Safari(macOS 自带浏览器,无需手动安装 Zotero Connector)。 此外,360(极速)浏览器、搜狗浏览器、QQ 浏览器等基于 Chromium 的浏览器也适用 Chrome 的扩展。 :::: details 如果您无法打开 Zotero Connector 的下载页面... 由于网络环境问题,Google Chrome Store 在国内无法正常访问。使用 Google Chrome 以及部分国内浏览器时,可能需要借助一些访问国外网站的工具才能直接从商店安装 Zotero Connector。 如果您在国内无法打开 Zotero Connector 的下载页面,建议使用 Microsoft Edge 作为替代品。Microsoft Edge 与 Chrome 具备几乎相同的网络兼容性,且可以享受在国内完全可用的同步与扩展服务。 ::: details 推荐方案:安装其他浏览器 如果您在国内无法打开 Zotero Connector 的下载页面,您可以访问以下链接下载其他浏览器: * [Google Chrome](https://www.google.com/chrome/) * [Microsoft Edge](https://www.microsoft.com/zh-cn/edge/) * [Mozilla Firefox(国际官网)](https://www.mozilla.org/zh-CN/firefox/new/) * [Firefox 火狐浏览器(中国官网)](https://www.firefox.com.cn/) ::: ::: details 其他方案:从镜像站下载插件离线安装包 如果你使用谷歌浏览器且无法打开扩展下载页面,可在其他镜像站下载。例如: * 不建议从镜像站下载插件离线安装包来安装。镜像站提供的安装包可能不可靠,且版本可能落后于官方版本,使用时请谨慎。 ::: :::: 下载安装完毕后,在浏览器右上角可看到扩展图标 ![Zotero](../assets/icons/z.svg)。此时,浏览器扩展已经安装成功了。 :::: details 如果您无法在浏览器中看到 Zotero Connector 图标... 如果您在浏览器中无法看到 Zotero Connector 图标,可能是因为扩展未启用或被隐藏。 ::: details 如果您使用的是 Chrome、Edge 或其他 Chromium 内核的浏览器... 1. 点击浏览器右上角的扩展图标(拼图形状)。 2. 在下拉菜单中找到 Zotero Connector 图标,点击右侧的钉子图标将其固定到浏览器工具栏上。 ![显示 Zotero Connector 图标](../assets/images/zotero-connector-show-icon-chrome.png) ::: ::: details 如果您使用的是 Firefox 浏览器... 1. 点击浏览器右上角的扩展图标(拼图形状)。 2. 在下拉菜单中找到 Zotero Connector 图标,点击右侧的齿轮图标,选择「固定到工具栏」。 ![显示 Zotero Connector 图标](../assets/images/zotero-connector-show-icon-firefox.png) ::: ::: details 如果您使用的是 Safari 浏览器... 1. 点击屏幕左上角的「Safari 浏览器」菜单,选择「设置」。 2. 在弹出的窗口中,选择「扩展」选项卡。 3. 在左侧的扩展列表中找到 Zotero Connector,确保前面的勾选框处于已勾选状态。 ![显示 Zotero Connector 图标](../assets/images/zotero-connector-show-icon-safari.png) ::: :::: 当你打开一个可抓取文献的网页时,扩展图标会显示为![icon-connector-document](../assets/icons/treeitem-journalArticle@2x.png),![thesis](../assets/icons/treeitem-thesis@2x.png) 或 ![webpage](../assets/icons/treeitem-webpage@2x.png) 等。稍后当我们设置完成,点击扩展图标即可抓取文献。具体使用方法将在 [将条目添加进文献库](./add-items.md) 小节中展开。 :::: details 如果 Zotero Connector 图标显示为灰色的「Z」... 这可能是您第一次使用 Zotero Connector,或者您在浏览器中没有打开任何可抓取文献的特殊网页。 请先打开一个可抓取文献的网页。如果图标仍显示为灰色的「Z」,您只需要点击一下灰色的「Z」图标,在接下来的弹窗中点击「明白」之后,图标就会变成正常的文献类型图标,即可正常使用。 ![Zotero Connector 图标显示为灰色的「Z」](../assets/images/zotero-connector-gray-z.png) ::: details 如果您使用的是 Safari 浏览器... 如果您使用的是 Safari 浏览器,您在点击灰色的「Z」图标后,可能会弹出一个提示框,询问您是否允许 Zotero Connector 访问当前网站。 1. 请在弹窗中点击「在每个网站上始终允许...」按钮。 ![Zotero Connector 图标显示为灰色的「Z」](../assets/images/zotero-connector-gray-z-safari.png) 2. 请在下一个弹窗中继续点击「在每个网站上始终允许」按钮。 ![Zotero Connector 图标显示为灰色的「Z」](../assets/images/zotero-connector-gray-z-safari-2.png){width=40%} ::: :::: ## 其他平台客户端 ### iOS Zotero 官方目前已开发有 iOS 客户端,在 App store 搜索下载 Zotero 即可,APP 首页:[Zotero for iOS](https://apps.apple.com/cn/app/zotero/id1513554812)。 ::: warning 要使用 iOS 客户端,需要使用官方同步或 WebDAV 同步二者之一,才能顺利同步附件。其他使用 ZotFile 等链接文件的同步方式不支持,未来也不会支持。 ::: ### Android Zotero 官方现已正式发布发布 [Zotero for Android](https://forums.zotero.org/discussion/124672/now-available-zotero-for-android),请自行尝试以下可用的下载链接。 * [Google Play](https://play.google.com/store/apps/details?id=org.zotero.android),你可能需要科学上网才能访问此链接 * Google Play 镜像,你可能需要在对应链接里安装这些镜像站点自己的 APP,然后在他们的 APP 里再安装 Zotero,具体请参考各自的安装指引: * [APK Combo](https://apkcombo.com/zh/zotero/org.zotero.android/) * [Up to down](https://zotero.en.uptodown.com/android/download) 我们也创建了一个仓库提供从源码编译的 Zotero Android 版本,见 [`northword/zotero-android-nightly-build`](https://github.com/northword/zotero-android-nightly-build) 仓库,但需注意,这个仓库发布的不是正式版本,仅供测试使用! --- --- url: /user-guidepluginstranslateniutrans.md --- # 小牛翻译接口申请及配置 小牛翻译团队源自东北大学 NLP 实验室,深耕自然语言处理领域数十年,支持 454 种语言互译,拥有极速响应、高并发、高精度的翻译特性,可满足论文、文献等科研场景以及各类行业的翻译需求,面向科研用户提供稳定的翻译 API 服务。 ## 免费额度说明 新用户注册即可领取 500 积分(100 万字符);平台每日额外发放 100 积分(20 万字符)免费额度。 小牛翻译专为 Zotero 中文社区用户提供专属福利:通过社区专属链接注册,可额外再领取 500 积分。 社区用户注册总计可获得 1000 积分(等价 200 万字符),具体注册操作详见下文账号注册说明。 ## 计费规则 免费额度使用完毕后,可选购通用积分包或字符流量包来调用翻译 API: * 通用积分包:30 元可购买 300 积分,90 元可购买 900 积分;1 积分可完成 2000 字符翻译。 * 字符流量包:500 元可购买 1000 万字符额度,按照实际翻译消耗的字符数量扣费。 ## 账号使用提示 小牛翻译云平台与 Zotero 翻译插件账号互通。注册账号后,可通过账号密码在 Zotero 翻译插件中登录;APIKEY 可在开放平台个人中心查看。 ## 1. 账号注册 访问[小牛翻译开放平台专属注册链接](https://niutrans.com/login?active=3\&userSource=zotero),输入相应注册信息,点击「注册」。 ![小牛翻译开放平台注册入口](../../../assets/images/zotero-plugin-translate/niutrans-register.png) ## 2. 完善账号信息 注册完成后,进入「控制台」→「个人中心」,完成基础信息填写并领取 500 积分礼包。 ![小牛翻译个人中心](../../../assets/images/zotero-plugin-translate/niutrans-profile.png) ## 3. Zotero 翻译插件小牛翻译服务设置 打开 Zotero 客户端,并打开设置,在翻译服务下拉菜单中选择「小牛」,点击右侧「配置」按钮。 ![Zotero 翻译插件小牛服务](../../../assets/images/zotero-plugin-translate/zotero-niutrans-service.png) 在输入框中填写刚刚注册的账号和密码。填写完成后保存设置即可生效。 ![Zotero 翻译插件小牛翻译服务设置](../../../assets/images/zotero-plugin-translate/niutrans-settings.png) ## 4. 接口测试 全部配置完成后,可进行接口可用性测试。在 Zotero 中打开任意外文 PDF 文献,选中段落或专业词汇进行划词翻译或右键翻译。 若页面正常输出通顺、准确的中文译文,且无报错、无空白内容,即代表小牛翻译接口配置成功,可以正常使用。 ## 5. 查询数据使用情况 进入「[控制台](https://niutrans.com/cloud/overview)」→「数据统计」,即可查看翻译接口的用量情况。 ![小牛翻译数据统计](../../../assets/images/zotero-plugin-translate/niutrans-statistics.png) ## 6. 购买字符流量或通用积分 登录小牛翻译云平台,进入「[充值中心](https://niutrans.com/price?type=integral)」,可购买所需的字符流量或通用积分。 ![小牛翻译充值中心](../../../assets/images/zotero-plugin-translate/niutrans-recharge.png) --- --- url: /user-guidepluginstranslatequestions.md --- # 常见问题 ::: tip 施工中 [翻译错误](https://zotero.yuque.com/staff-gkhviy/pdf-trans/age09f) ::: --- --- url: /plugin-dev-guidereferencebootstrap.md --- # 引导脚本 引导脚本即 `bootstrap.js`,这是 Zotero 插件的入口脚本文件,此文件必须存在,否则插件将无法被安装。 ## 内容 这个文件里必须包含以下几个钩子,Zotero 将在对应动作发生时调用对应的钩子。 ### 生命周期钩子 ```js // 插件被安装时调用 function install(data, reason) {} // 插件启动时调用 function startup(data, reason) {} // 插件被禁用时或 Zotero 被关闭时调用 function shutdown(data, reason) {} // 插件被卸载时调用 function uninstall(data, reason) {} ``` 插件生命周期挂钩传递两个参数: * `data`: 具有以下属性的对象: * `id` ,插件 ID * `version` ,插件版本 * `rootURI` ,指向插件文件的字符串 URL。对于 XPI,这将是 `jar:file:///` URL。该值始终以斜杠结尾,因此您可以附加相对路径来获取与插件捆绑的文件的 URL(例如 `rootURI + 'style.css'` )。 * `reason`: 表示事件原因的数字,可以根据以下常量进行检查: `APP_STARTUP` 、 `APP_SHUTDOWN` 、 `ADDON_ENABLE` 、 `ADDON_DISABLE` 、 `ADDON_INSTALL` 、 `ADDON_UNINSTALL` 、 `ADDON_UPGRADE` 、 `ADDON_DOWNGRADE` 任何与特定窗口无关的初始化都应由 `startup` 触发,删除应由 `shutdown` 触发。 ### 窗口钩子 ```js // Zotero 主窗口加载完毕时调用 function onMainWindowLoad({ window }) {} // Zotero 主窗口被关闭时调用 function onMainWindowUnload({ window }) {} ``` 窗口钩子传递一个参数: * 具有包含目标窗口的 window 属性的对象 在某些平台上,主窗口可以在 Zotero 会话期间多次打开和关闭,因此任何与窗口相关的活动,例如修改主 UI、添加菜单或绑定快捷方式都必须由 `onMainWindowLoad` 执行以便新的主窗口包含您的更改。 然后,当调用 `onMainWindowUnload` 时,您必须删除对窗口或其中的对象的所有引用,取消任何计时器等,否则每次关闭窗口时都会有造成内存泄漏的风险。添加到窗口的 DOM 元素会在窗口关闭时自动销毁,因此只需删除 `shutdown()` 中的元素即可,可以通过循环遍历所有窗口来完成: ```js function shutdown() { var windows = Zotero.getMainWindows(); for (let win of windows) { win.document.getElementById("make-it-red-stylesheet")?.remove(); } } ``` (目前仅支持一个主窗口,但有些用户可能会找到打开多个主窗口的方法,这将在未来版本中正式支持。) ::: tip 通常地,在 `startup` 中初始化插件地本地化系统、设置、兼容性等,在 `onMainWindowLoad` 中初始化与 Zotero UI 有关的组件,如菜单、侧边栏、自定义列等。 ::: ## 样例 关于 `bootstrap.js` 的样例,可参考前章提到的插件框架。它将插件的根对象注册到全局变量 `Zotero` 中,在任何引入了 Zotero 的位置均可使用。或参考 Zutilo 插件。它将插件的根对象注册为一个全局变量。缺陷是在非主窗口内引入插件代码将较为复杂。 * [Zotero-addon-template/bootstrap.js at bootstrap · windingwind/Zotero-addon-template](https://github.com/windingwind/zotero-addon-template/blob/main/addon/bootstrap.js) * [Zutilo/bootstrap.js at master · wshanks/Zutilo](https://github.com/wshanks/Zutilo/blob/master/addon/bootstrap.js) 下面是以官方示例 `Make It Red` 的 `bootstrap.js`,它在 `startup()` 中通过 `Services.scriptloader.loadSubScript(rootURI + "make-it-red.js");` 将插件脚本载入,在 `make-it-red.js` 中,在 `Zotero` 下定义了一个对象 `MakeItRed`。在 `make-it-red.js` 加载完成后,调用 `MakeItRed` 对象下的方法完成插件初始化。 ```js var MakeItRed; function log(msg) { Zotero.debug("Make It Red: " + msg); } function install() { log("Installed 2.0"); } async function startup({ id, version, rootURI }) { log("Starting 2.0"); Services.scriptloader.loadSubScript(rootURI + "make-it-red.js"); MakeItRed.init({ id, version, rootURI }); MakeItRed.addToAllWindows(); await MakeItRed.main(); } function onMainWindowLoad({ window }) { MakeItRed.addToWindow(window); } function onMainWindowUnload({ window }) { MakeItRed.removeFromWindow(window); } function shutdown() { log("Shutting down 2.0"); MakeItRed.removeFromAllWindows(); MakeItRed = undefined; } function uninstall() { log("Uninstalled 2.0"); } ``` ## 参考资料 * [Zotero 7 for developers](https://www.zotero.org/support/dev/zotero_7_for_developers) * [bootstrapped-extension framework](https://www.devdoc.net/web/developer.mozilla.org/en-US/docs/Mozilla/Add-ons/Bootstrapped_Extensions.html#Bootstrap_entry_points) --- --- url: /user-guidecitation-styles.md --- # 引文的格式 Zotero 使用 Citation Style Language 来生成引文格式,Zotero 官方提供了一组 CSL 样式,可以在 Zotero 内下载安装。 但是官方的 CSL 样式对国内期刊支持不全,且目前(CSL 1.0.2)仍未支持双语排版(「et al」与「等」混排),所以国内有热心开发者维护了一份第三方 CSL 样式,读者可以按需下载使用。 ## 安装样式:从官方存储库 ::: tip 适用于外文期刊、SCI 期刊等。 不支持双语排版。 ::: 1. 打开 Zotero 软件,选择「编辑」->「设置」,在弹出窗口中选择「引用」。 2. 若样式管理器中无符合的样式,可以通过「获取更多样式」,搜索期刊名,点击符合要求的样式名,即可导入样式。 ![获取更多引文格式](../assets/images/zotero-获取更多引文格式.png) ![官方引文格式下载](../assets/images/zotero-官方引文格式.png) ## 安装样式:从第三方存储库 ::: tip 适用于中文期刊、国内学位论文等。 支持双语排版。 ::: 如果上述 CSL 样式不符合你的要求,可到 [中文 CSL 样式](/styles/) 下载更多 CSL 样式。 ### 1. 查找样式 首先你需要在 [中文 CSL 样式](/styles/) 页面上找到合适的 CSL 样式。 * 通过搜索和筛选快速找到你需要的样式 * 把鼠标放在样式的名称上可以预览其引注和参考文献表 * 点击样式名称进入详情页可以查看更多条目的显示效果 如果没有你想要的样式,可以点击页首的「请求新样式 / 报告 CSL 样式问题」来获取社区帮助。 ### 2. 安装样式 单击样式名进入样式详情页,然后下滑找到「下载链接」小节,你可以看到很多安装链接。根据「下载链接」小节的描述,我们有两类安装样式的方法: ::: tip 自行选择可用链接 网站为每一个样式提供了多个下载链接,请自行选择可用的链接。 ::: #### 2.1 通过 Zotero Connector 直接安装样式 有的链接已经被 Zotero Connector 适配,因此可以直接安装,对于这类链接: 在确保 **Zotero 处于启动状态**时,**直接点击链接**,浏览器打开了一个新的网页,Zotero Connector 会在新的网页中显示一个「确认安装」的弹窗,直接点击「OK」即可: ![确认安装引文格式](../assets/images/zotero-从connector添加csl样式.png) ::: warning 确保 Zotero 启动 ::: 有小概率情况无法弹出这个「确认安装」的弹窗,可以尝试关闭页面重新打开。如果仍然不行,请尝试下面的「先下载文件后安装」。 #### 2.2 先下载文件后安装 根据「下载链接」部分里的提示,有的链接直接单击就可以下载文件,有的链接需要你手动「右击」-「另存为」,按照提示的方法,将其保存为 `.csl` 文件: ![另存为 csl 文件](../assets/images/另存为csl文件.png) 然后双击打开 CSL 文件,在弹出窗口中选择「安装」。 ![从文件安装 csl 样式](../assets/images/zotero-从文件安装csl样式.png) #### 注意 由于这些 CSL 样式使用了 `citeproc-js` 提供了 CSL-M 扩展功能,因此安装时会出现「xxx.csl 不是一个有效的 CSL 1.0.2 样式文件,可能不能和 Zotero 一起正常工作」的警告,**属于正常现象,选择「OK」即可**。 ![安装引文格式 不是有效 csl 警告](../assets/images/安装引文格式-不是有效csl警告.png) 随后,你就可以在字处理软件中将样式切换为刚刚安装的,请参阅 [在 Word 中使用](./ms-word-plugin.md) 了解详情。 ## 管理和编辑样式 您可以通过单击 Zotero 样式管理器中的「-」按钮来删除已安装的样式。在此选项卡中,您还可以预览 Zotero 中所选项目的样式输出并编辑已安装的样式。 ## 报告样式错误 如果 CSL 样式未提供预期输出,请首先确保您正在运行最新(稳定)版本的 Zotero,并从安装最新版本的样式。 一旦您确定样式偏离了样式指南、作者说明或已发布的示例,请报告该错误: * 对于从官方存储库安装的样式 请向 [Zotero 论坛](https://www.zotero.org/forum) 报告错误。您的帖子应使用标题 `Style Error: [Name of style]`,并提供样式指南的链接或摘录。 * 对于从中文存储库安装的样式 请向 [中文 CSL 样式存储库](https://github.com/zotero-chinese/styles) 报告错误。 此外,您也可以尝试自己编辑样式。 ## 请求新样式 * 对于外文期刊或样式,请参阅:[Requesting New Styles - Zotero Documentation](https://www.zotero.org/support/styles#requesting_new_styles)。 * 对于中文期刊或高校等的样式,请参阅:[Zotero 中文样式仓库](https://github.com/zotero-chinese/styles?tab=readme-ov-file#没有找到符合需要的样式)。 ## 常见问题 ::: warning 无论是何种方式请求社区的帮助,响应时间都取决于社区贡献者的时间安排。Zotero 官方支持和我们(中文社区)均不对响应时间作出承诺,请耐心等待志愿者的更新。 如有条件,欢迎自行修改并将成果贡献到上游仓库。 ::: 对于 CSL 样式方面的问题,可以参阅:[Questions - Styles - Zotero Documentation](https://www.zotero.org/support/styles#questions)。 --- --- url: /user-guidepluginstranslatemicrosoft.md --- # 微软翻译接口申请及配置 ## 1. 接口申请 打开 [微软的接口平台](https://azure.microsoft.com/zh-cn/pricing/purchase-options/azure-account/?icid=ai-services) 点击「免费试用 Azure」,会提示你登录微软账号,如果你没有账号,可以申请一个后再登录。 ![开通页面](../../../assets/images/zotero-plugin-translate/microsoft-1.png) 跳转到登录页面,并使用账号登录。 ![登录页面](../../../assets/images/zotero-plugin-translate/microsoft-2.png) 弹出开通服务的窗口,勾选第一个同意,点击「下一步」: ![开通步骤](../../../assets/images/zotero-plugin-translate/microsoft-3.png) 进行短信验证: ![验证](../../../assets/images/zotero-plugin-translate/microsoft-4.png) 可能需要绑定信用卡: ![绑定信用卡](../../../assets/images/zotero-plugin-translate/microsoft-5.png) 然后直接下一步,可能会遇到邮箱或其他验证方式,直接按照操作说明进行验证。 打开 [微软翻译设置](https://portal.azure.com/#create/Microsoft.CognitiveServicesTextTranslation) 申请翻译服务: ![新建翻译服务](../../../assets/images/zotero-plugin-translate/microsoft-6.png) ![创建服务窗口](../../../assets/images/zotero-plugin-translate/microsoft-7.png) 注意上面请选择「East Asia」,后面密钥设置时需要用到这个参数。 点击审阅并创建: ![点击创建](../../../assets/images/zotero-plugin-translate/microsoft-8.png) 等待服务创建完成,你可以在 Azure 主页中看到你的新翻译服务,点击下面的链接 。 ![查看翻译服务](../../../assets/images/zotero-plugin-translate/microsoft-9.png) ![翻译服务详情](../../../assets/images/zotero-plugin-translate/microsoft-10.png) 如果上面第 4 个 位置/区域 是全球,可不必复制。 ## 2. 翻译插件配置 打开翻译插件的设置: ![翻译插件设置](../../../assets/images/zotero-plugin-translate/microsoft-11.png) 上图第三步,复制密钥时,请按照 `secretKey#region` 的格式进行。`scretKey` 是下图的第三步,`region` 是下图第四步。注意如果 `region` 是`全球 global`,可以不必填 `region`,只复制 `scretKey` 即可。 ![配置参数信息](../../../assets/images/zotero-plugin-translate/microsoft-12.png) --- --- url: /plugin-dev-guidequick-startindex.md --- # 快速开始 此节以官方插件示例 [Make It Red](https://github.com/zotero/make-it-red/tree/main/src-2.0) 为例,说明 Zotero 插件的工作过程。 ::: info Todo 待完善,请参阅插件仓库:[Make It Red](https://github.com/zotero/make-it-red/tree/main/src-2.0) ::: ## Zotero 插件的经典目录结构 ```bash northword@Yoga-Northword MINGW64 /d/Code/Zotero/make-it-red-main/src-2.0 $ tree . |-- bootstrap.js |-- locale | `-- en-US | `-- make-it-red.ftl |-- make-it-red.js |-- manifest.json |-- prefs.js `-- style.css 2 directories, 6 files ``` 其中,`manifest.json` 和 `bootstrap.js` 两个文件是一个 Zotero 插件必须包含的文件。前者是插件的清单文件,用来描述插件的名称、ID 等信息,后者是插件的引导文件,告诉 Zotero 应如何启动和关闭插件。 `locale/` 目录存放了 Zotero 的本地化文件,这个目录下,每种语言都有一个单独的文件夹,在每种语言的子目录下,存放了包含本地化后的字符串。 `prefs.js` 包含了插件的默认设置。 `make-it-red.js` 包含了插件的主要逻辑代码。 `style.css` 是插件的样式文件。 对于每种文件详细的说明可以在 [参考](../reference/index) 中了解。在本节,我们仅关注 `manifest.json`, `bootstrap.js` 和 `make-it-red.js` 三个文件。 ## 基本逻辑解析 ### 插件清单 在 `manifest.json` 中, ```json { "manifest_version": 2, "name": "Make It Red", "version": "2.0", "description": "Makes everything red", "homepage_url": "https://github.com/zotero/make-it-red", "applications": { "zotero": { "id": "make-it-red@example.com", "update_url": "https://zotero-download.s3.amazonaws.com/tmp/make-it-red/updates-2.0.json", "strict_min_version": "6.999", "strict_max_version": "7.0.*" } } } ``` `name` 规定了插件名为 `Make It Red`,`version` 规定插件的版本号为 `2.0`,`applications.zotero.id` 定义插件的 ID \[^id] 为 `make-it-red@example.com`。其他字段的含义暂不深究,读者可在 [清单文件](../reference/manifest.md) 中了解。 \[^id]: ID 是插件的身份证号码,是 Zotero 识别插件的唯一代码。 ### 逻辑代码 在 `bootstrap.js` 中,有这样几个钩子: ```js async function startup({ id, version, rootURI }) { log("Starting 2.0"); Services.scriptloader.loadSubScript(rootURI + "make-it-red.js"); MakeItRed.init({ id, version, rootURI }); MakeItRed.addToAllWindows(); await MakeItRed.main(); } ``` 将在插件被启用时调用,在这个钩子中,加载了 `make-it-red.js` 脚本(这个脚本中定义了 `MakeItRed` 对象,见后文)。然后依次调用了 `MakeItRed` 对象的 `init`, `addToAllWindows` 和 `main` 三个方法。 在 `make-it-red.js` 中,定义了对象 `MakeItRed` ,其中 ```js var MakeItRed = { addToWindow(window) { let doc = window.document; // Add a stylesheet to the main Zotero pane let link1 = doc.createElement("link"); link1.id = "make-it-red-stylesheet"; link1.type = "text/css"; link1.rel = "stylesheet"; link1.href = this.rootURI + "style.css"; doc.documentElement.appendChild(link1); this.storeAddedElement(link1); // ... }, }; ``` 创建了一个 `` 元素,如下, ```html ``` 并将其附加到了 `window.document` 上。 --- --- url: /user-guidequick-start.md --- # 快速开始 ::: tip 本节是 [quick start guide \[Zotero Documentation\]](https://www.zotero.org/support/quick_start_guide) 的翻译。您也可以参阅其他内部章节以获得更多详细步骤指导。 ::: ## 基础知识 ### 如何安装 Zotero? 阅读 [安装 Zotero](install.md) ### 如何打开 Zotero? ![image](../assets/images/quick-start/快速上手-打开zotero.png) 从操作系统的任务栏/程序面板打开 Zotero。 ### Zotero 是做什么的? ![image](../assets/images/quick-start/快速上手-zotero可以做什么.png) Zotero 是一个文献管理软件。它旨在存储、管理和引用参考书目,例如书籍和文章。在 Zotero 中,这些引用中的每一个都构成一个条目。更广泛地说,Zotero 是收集和组织研究信息和资源的强大工具。 ### 有何种类型的条目? ![image](../assets/images/quick-start/快速上手-条目类型.png) 每个条目都包含不同的元数据,具体取决于它的类型。条目可以是从书籍、文章和报告到网页、艺术品、电影、信件、手稿、录音、账单、案例或法规等的所有内容。 ### 关于条目信息 ![image](../assets/images/quick-start/快速上手-条目字段.png) 条目出现在 Zotero 的中间区域。当前选中条目的元数据显示在右侧窗格,包括标题、创作者、出版商、日期、页码以及引用该条目所需的任何其他数据。 ## 管理文献 ### 文献分类 [![image](../assets/images/quick-start/快速上手-分类.png)](https://www.zotero.org/support/collections_and_tags#collections) 左侧窗格的 `我的文库` 中包含个人账户下的的所有条目。右键单击 `我的文库` 或单击 新建分类 按钮(![image](../assets/icons/toolbar-collection-add.png) 在左窗格上方)创建一个新分类,即一个用于收纳文献条目的文件夹,其中可以放置特定主题相关的条目。将分类想象为音乐播放器中的播放列表:分类中的条目是文库中条目的一个「链接」。同一条目可以同时属于多个分类。 ### 标签 [![image](../assets/images/quick-start/快速上手-标签.png)](https://www.zotero.org/support/collections_and_tags#tags) 可以为条目分配 [标签](https://www.zotero.org/support/collections_and_tags#tags)。标签由用户命名。可以根据需要为条目分配任意数量的标签。使用左侧窗格底部的标签选择器或通过右侧窗格中任何条目的标签选项卡添加或删除标签。最多可以为 9 个标签分配**颜色**。彩色标签在条目列表中显示,并且可以使用键盘上的数字键快速添加或删除。 ### 搜索 [![image](../assets/images/quick-start/快速上手-搜索.png)](https://www.zotero.org/support/searching) [快速搜索](https://www.zotero.org/support/searching) 显示元数据、标签或全文内容与搜索词匹配的条目。单击搜索框左侧的放大镜图标将打开「高级搜索」窗口,允许进行更复杂或更具体的搜索。 ### 保存的搜索 [![image](../assets/images/quick-start/快速上手-保存搜索结果.png)](https://www.zotero.org/support/searching) [高级搜索](https://www.zotero.org/support/searching) 可以保存在左窗格中。看起来类似于上面所说的分类,但其中的条目会根据搜索条件自动更新。 ## 收集文献 ### 附件 [![image](../assets/images/quick-start/快速上手-附件.png)](https://www.zotero.org/support/attaching_files) 每个条目可以附有笔记、文件和链接。这些 [附件](https://www.zotero.org/support/attaching_files) 显示在其父项下方。通过单击其父项旁边的箭头,可以显示或隐藏附件。要全部显示或隐藏,快捷键为 + 与 -。 ### 笔记 [![image](../assets/images/quick-start/快速上手-笔记.png)](https://www.zotero.org/support/notes) 富文本 [笔记](https://www.zotero.org/support/notes) 可以附加到任何条目。可以在右侧窗格或独立窗口中进行编辑。单击工具栏中的新建笔记按钮 ![image](../assets/icons/toolbar-note-add.png)以创建笔记。 ### 文件 [![image](../assets/images/quick-start/快速上手-文件.png)](https://www.zotero.org/support/attaching_files) 任何类型的文件都可以 [附加](https://www.zotero.org/support/attaching_files) 到条目上。使用 Zotero 工具栏中的添加附件(回形针)按钮,通过右键单击现有条目或拖放来附加文件。或者,文件不需要附加到现有条目。它们可以直接添加到您的库中。[当您使用浏览器中](https://www.zotero.org/support/quick_start_guide#capturing_items) 的 Zotero 连接器导入条目时,也可以自动下载文件。 ### 链接和快照 [![image](../assets/images/quick-start/快速上手-链接和快照.png)](https://www.zotero.org/support/attaching_files#web_snapshots) [网页](https://www.zotero.org/support/attaching_files#web_snapshots) 可以作为链接或快照附加到任何条目。Zotero 可以保存网页的快照,快照是网页的本地存储副本,其状态与保存时相同。无需互联网连接即可使用快照。 ### 抓取条目 [![image](../assets/images/quick-start/快速上手-抓取条目.png)](https://www.zotero.org/support/getting_stuff_into_your_library) 使用适用于 Chrome、Firefox 或 Safari 的 Zotero 连接器,可以轻松地从 Internet 上的可用信息 [创建新条目](https://www.zotero.org/support/getting_stuff_into_your_library)。通过单击按钮,Zotero 可以自动创建适当类型的条目并填充元数据字段,下载全文 PDF(如果可用),并附加有用的链接(例如,到 PubMed 条目)或补充数据文件。 ### 单个或多个抓取 [![image](../assets/images/quick-start/快速上手-抓取多个结果.png)](https://www.zotero.org/support/getting_stuff_into_your_library) 如果 [保存图标](https://www.zotero.org/support/adding_items_to_zotero) 是书籍、文章、图像或其他单个条目,单击它将将该条目添加到 Zotero 中的当前收藏。如果保存图标是文件夹,则网页包含多个条目。单击它将打开一个对话框,从中可以选择条目并将其保存到 Zotero。 ### 转换器 Translator(旧称翻译器) [![image](../assets/images/quick-start/快速上手-捕获网页.png)](https://www.zotero.org/translators) Zotero 使用称为 [转换器](https://www.zotero.org/translators) 的代码来识别网页上的信息。如果您使用的网站没有支持,请随时在 [Zotero 论坛](https://www.zotero.org/forum) 上请求。 ### 保存网页 [![image](../assets/images/quick-start/快速上手-保存网页.png)](https://www.zotero.org/support/attaching_files#web_snapshots) 如果 Zotero 连接器无法识别页面上的数据,您仍然可以单击浏览器工具栏中的保存按钮将页面保存为带有附加快照的 [网页条目。](https://www.zotero.org/support/attaching_files#web_snapshots) 虽然这将保存基本元数据(标题、URL、访问日期),但您可能需要从页面手动填写其他元数据。 ### 通过标识符添加条目 [![image](../assets/images/quick-start/快速上手-通过标识符添加条目.png)](https://www.zotero.org/support/getting_stuff_into_your_library#add_item_by_identifier) Zotero 可以使用 ISBN 号、数字对象标识符 (DOI) 或 PubMed ID [自动添加条目](https://www.zotero.org/support/adding_items_to_zotero#add_item_by_identifier) 这可以通过单击 Zotero 工具栏中的按标识符添加条目按钮 (![image](../assets/icons/toolbar-lookup.png)),输入标识符,然后单击确定来完成。您甚至可以一次粘贴或输入(按 Shift+Enter 以获得更大的框)此类标识符的列表。 ### 订阅 [![image](../assets/images/quick-start/快速上手-rss.png)](https://www.zotero.org/support/feeds) 从您最喜欢的期刊或网站订阅 [RSS 提要](https://www.zotero.org/support/feeds),以了解最新研究。转到文章网页或单击按钮将条目保存到您的图书馆。 ### 手动添加条目 [![image](../assets/images/quick-start/快速上手-新建条目.png)](https://www.zotero.org/support/adding_items_to_zotero#manually_adding_items) 可以通过单击 Zotero 工具栏中的新条目绿色按钮 ![image](../assets/icons/toolbar-item-add.png) 并选择适当的条目类型来 [手动添加条目。](https://www.zotero.org/support/adding_items_to_zotero#manually_adding_items) 然后可以在右侧窗格中手动添加元数据。虽然您通常不应该手动添加条目,但它对于添加在线不可用的文档很有用。 ## 引用 ### 引用条目 [![image](../assets/images/quick-start/快速上手-csl样式.png)](https://www.zotero.org/styles) Zotero 使用引文样式语言 (CSL) 来正确格式化许多不同书目 [样式](https://www.zotero.org/styles) 的引文。Zotero 支持所有主要风格(Chicago, MLA, APA, Vancouver 等)以及超过 8,000 种期刊和出版商的特定风格。 ### Word 集成 [![image](../assets/images/quick-start/快速上手-word引用.png)](https://www.zotero.org/support/word_processor_integration) Zotero 的 Word、LibreOffice 和 Google Docs 插件允许用户直接从他们的文字处理软件 [插入引文。](https://www.zotero.org/support/word_processor_integration) 这使得引用多个页面或来源或以其他方式自定义引用变得轻而易举。支持文本内引用、脚注和尾注。借助 [社区开发的插件](https://www.zotero.org/support/plugins#latex_tex_and_plain_text_editors),Zotero 还可以与 LaTeX、Scrivener 和许多其他写作程序一起使用。 ### 自动参考书目 [![image](../assets/images/quick-start/快速上手-自动生成参考文献表.png)](https://www.zotero.org/support/word_processor_plugin_usage) 使用 [文字处理器插件](https://www.zotero.org/support/word_processor_plugin_usage) 可以从引用的条目自动生成参考书目,并通过单击按钮切换整个文档的引用样式。 ### 手动引文 [![image](../assets/images/quick-start/快速上手-手动创建参考文献表.png)](https://www.zotero.org/support/creating_bibliographies) Zotero 还可以将 [引文和参考书目](https://www.zotero.org/support/creating_bibliographies) 插入到任何文本字段或程序中。只需拖放条目,使用快速复制将引文发送到剪贴板,或将它们直接导出到文件。 ## 合作 ### 同步 [![image](../assets/images/quick-start/快速上手-同步.png)](https://www.zotero.org/support/sync) 通过 [Zotero 同步](https://www.zotero.org/support/sync) 在多台计算机上使用 Zotero。图书馆条目和笔记通过 Zotero 服务器同步(无限存储),而附件同步可以使用 Zotero 服务器或您自己的 WebDAV 服务来同步文件,例如 PDF、图像或音频/视频。 ### Zotero Servers [![image](../assets/images/quick-start/快速上手-zotero服务.png)](https://www.zotero.org/support/sync) 同步到 Zotero 服务器的条目可以通过您的 [Zotero.org](https://www.zotero.org/) 帐户在线访问。与他人共享您的图书馆或从选定的条目创建自定义简历。 [使用 My Publications](https://www.zotero.org/support/my_publications) 为读者、公众和其他研究人员在 [Zotero.org](https://www.zotero.org/) 上随时提供您的研究副本。 ### 团队 [![image](../assets/images/quick-start/快速上手-群组.png)](https://www.zotero.org/support/groups) Zotero 用户可以创建协作或 [组](https://www.zotero.org/support/groups)。共享组库使在线和通过 Zotero 客户端协作管理研究资源和材料成为可能。[Zotero.org](https://www.zotero.org/) 可以成为您所有条目组的研究、交流和组织的中心。 --- --- url: /user-guidefaqsupdate-translators.md --- # 抓取文献条目信息的常见问题 本页面整理了一些抓取文献条目信息相关问题,你可以在右侧大纲栏(部分窄屏设备也可能在顶部「页面导航」)或下面的目录快速定位到你需要的内容。 如果仍没有找到你需要的问题,可以考虑在 Zotero 中文社区提问咨询或前往 Zotero 官方论坛发帖求助。 \[\[TOC]] ## 基础知识:如何判断抓取是否成功? Zotero 文库中主要有三类内容: **文献条目,附件文件,笔记** 。其中,附件文件和笔记既可以附属于一篇文献的条目,也可以自己作为顶级项目独立存储在文库中。常见的条目类型以及常用的添加条目方法请阅读 [添加条目教程](../add-items.md) 。 ::: info 一点说明 以下是文库中常见的几种情况: ![文库中常见的几种情况](../../assets/images/item-in-zotero.png) * **绿色**的情况最完美,可以正常阅读文献也可以正常引用; * **橙色**的情况有正确的文献信息,可以正常引用,在[手动补充附件](../add-attachments.md#为条目添加附件)后也可以在 Zotero 中阅读论文全文; * **红色**的情况只有一个顶级附件,无法正常引用,必须为其[抓取](../add-items.md#通过附件添加条目-推荐)/[创建](../add-items.md#手动创建条目-万能方法)一个条目后才能正常引用。 ::: ## 使用 Zotero Connector 浏览器扩展在网页上抓取文献时遇到问题 Zotero Connector 浏览器扩展在网页上抓取文献时通常可以得到两类内容: **文献信息(文献条目的元数据)** ,以及相应的 **附件(如 PDF 全文、网页截图等)** 。 * 一般来说,只要你在 Zotero 里 **能够正确地识别出文献类型** ([条目图标](../add-items.md#条目-item) 与该文献的类型相对应),就已经意味着你的文献信息/元数据 **抓取是成功的** 。如果希望抓取的是「学位论文」,条目左边的图标却是「网页」或「期刊文章」,这通常意味着抓取失败或抓取到的部分信息不准确。 * 通过网页自动抓取 PDF 附件的功能在实际使用中比较玄学,可能会因为各种各样的限制无法自动抓到附件。 **如果条目抓取正常,只是抓不到附件,通常是无解的。** 正因如此, **只要你能够正确抓取到文献信息,就不建议继续折腾下去了。如果抓不到 PDF 附件,建议直接手动下载后 [添加到 Zotero 中抓取好的条目](../add-attachments.md#为条目添加附件)** 。 ::: danger 避免批量抓取文献 无论何时,请避免进行大量的批量抓取操作,严重时可能导致封禁! ::: :::: info 尽量在文献详情页抓取 Zotero Connector 在「文献搜索」界面或「全文阅读」界面进行条目抓取时非常容易失败,建议您在文献的详情页(如下)进行条目的抓取。 ::: details 典型的详情页示例 ![文献详情页](../../assets/images/update-translators-文献详情页1.png) ![文献详情页](../../assets/images/update-translators-文献详情页2.png) ::: :::: ::: tip 关于校外访问页面中抓取文献的提醒 如果您需要在非校园网环境下抓取文献,请阅读:[校外访问抓取的问题](./off-campus-access) ::: ::: tip ScienceDirect 需要手动完成反爬虫验证 ScienceDirect 增强了反爬虫机制,这限制了 Zotero 的抓取功能,Zotero 7 中针对该措施推出了一项新功能。当你尝试抓取 ScienceDirect 上的文章时,Zotero 会显示 ScienceDirect 的验证码页面。如果你完成了验证码,Zotero 则会完成 PDF 的下载。 如果 Zotero 的弹窗中一直循环要求进行人机验证,始终无法成功抓取到 PDF,不建议再继续尝试。请在 ScienceDirect 的网页中手动下载 PDF 附件,然后[将其添加到 Zotero 中](../add-attachments#为条目添加附件)。 ::: 如果你不能正确地抓取文献信息,或者抓取后的条目里文献信息缺失,那么下面的内容会对你有所帮助。 ### 更新抓取文献信息的转换器 在使用 Zotero 的过程中,我们经常需要更新 `转换器` 来实现从网页快速抓取文献信息。通常,我们可以借助 Zotero 本身的功能以及 茉莉花 插件快速完成该操作。但当 Zotero 或 茉莉花 插件出现故障无法完成一键自动更新时,我们也可以手动下载新版的转换器文件,并进行手动更新。 ::: info 提醒 这里的「转换器」指的是 Zotero 从浏览器网页抓取文献信息时所需的转换器,在 Zotero 中有时也被称作是「翻译器」或「translator」。如果你遇到的是语言翻译问题(如标题翻译、摘要翻译、文献阅读中的句段翻译等),通常与本文讲的转换器(translator)无关,请参照 Translate for Zotero 插件的教程进行排查。 ::: #### 方法 1:一键自动更新 ##### 步骤 1. 更新官方转换器 在 `Zotero 设置` 中,进入 `高级` 设置,点击下方「自动检查转换器和样式的更新」后面的 `立即更新` 按钮。更新完成后,按钮上的文字会变成 `已更新`。如果按钮上显示 `错误`,请稍等片刻再重新点击按钮尝试更新。 ![更新官方转换器](../../assets/images/update-official-translators.jpg) ::: tip 推荐保持自动更新 我们推荐保持勾选「自动检查转换器和样式的更新」以获得最新的官方转换器。 ::: ::: warning 注意「更新转换器」和「重置转换器」是不同的! 注意:正常情况下,更新转换器时不需要点设置页下面的「数据库维护」→「重置转换器 (Reset Translators)」按钮,这会删除整个 translators 文件夹。 ::: ##### 步骤 2. 更新中文转换器 1. 安装/更新茉莉花插件 茉莉花插件是一个 Zotero 中文生态增强插件,提供了中文转换器的更新服务,请确保你安装了最新版本的茉莉花插件,浏览 [茉莉花](../plugins/jasminum.md) 了解详情。 2. 进入茉莉花插件的设置,转到「中文转换器设置」部分,然后点击「立即更新」按钮。这一按钮点一下即可,请不要快速连续点多次,以免出现意外错误。 ![更新「中文转换器」](../../assets/images/update-unofficial-translators.png) 请耐心等待更新完成,更新结束后会有「转换器更新完成」的弹窗提示。如果更新长时间没有反应,您也可以开启一些访问国际互联网的工具后再尝试更新。更新可能会持续几分钟,取决于您的网络环境,请耐心等待。 ![「中文转换器」更新成功](../../assets/images/update-unofficial-translators-success.png){width=50%} ::: tip 提示 「转换器更新完成」的提示仅表示茉莉花已经结束了转换器的更新,但仍可能有部分中文转换器更新失败。建议您在更新后点击转换器详情旁边的「点击查看」按钮,确认您的转换器版本是否为最新版本。特别是在遇到中文文献无法抓取的时候,通常意味着这里有部分转换器更新失败。 如果有部分转换器更新失败,您可以尝试点击「更新全部」按钮重新进行更新,或者按照[手动更新转换器教程](#方法-2手动替换转换器文件更新)进行更新。 ::: ::: info 对于 Zotero 6 用户 如果您使用的是 Zotero 6,茉莉花插件的设置界面会有所不同。请在茉莉花插件的设置界面中找到「非官方维护中文转换器(翻译器)」部分,然后点击「更新全部」按钮。如果您的转换器列表为空,或点击「更新全部」后本地版本的日期和最新版本的日期仍然不一致,通常意味着您的茉莉花插件版本过老,请务必确保安装了最新版本的茉莉花插件后再重试。 Zotero 7 的正式版已经发布,由于 Zotero 6 的插件已经基本停止维护,可能会遇到兼容性问题,建议您在做好[备份](../backup.md)后,尽快升级到 Zotero 7。 升级 Zotero 7 正式版的步骤和常见问题的解答请阅读:[你好,Zotero 7](/blog/posts/hello-zotero-7)。 ::: ::: info 提醒 建议勾选「自动更新转换器」,保持转换器为最新版本。 如果自动更新失败,您也可以手动点击「立即更新转换」按钮进行更新,并在转换器详情页面确认更新成功。 ::: ##### 步骤 3. 更新 Zotero Connecter 的缓存 1. 更新 **每一个浏览器** 中 Zotero Connector 扩展里的转换器(translators)。 ::: tip 从 Zotero Connector v5.0.124 开始,官方移除了 Zotero Connector 设置里「Advanced」->「Translators」中的 `Update Translaors` 按钮,如果你的浏览器扩展中仍然保留 `Update Translaors` 按钮,请务必先[升级 Zotero Connector 浏览器扩展](../install.md#浏览器扩展-zotero-connector)再进行后续操作。 ::: 请根据您使用的浏览器点开下面相应的说明,并按照说明中的步骤操作。(360(极速)浏览器、搜狗浏览器、QQ 浏览器等基于 Chromium 等国内厂商推出的浏览器请参照 Google Chrome 的步骤操作) ::: details Google Chrome、Microsoft Edge 和 Mozilla Firefox 1. 右键点击 Zotero Connector 按钮,然后点击「选项/Preference」 ![打开 Zotero Connector 的选项](../../assets/images/update-translator-chrome-1.jpg) 2. 点击「Advanced」中的「Reset Translators」按钮 ![更新 Zotero Connector 中的 translators](../../assets/images/update-translator-ResetTranslators.jpg) ::: ::: details Apple Safari 虽然 Zotero 目前已经支持在 Safari 中使用,但实际使用中在 Safari 中抓取失败的案例比较多。 \*\*建议使用 Microsoft Edge、Google Chrome 或 Mozilla Firefox 浏览器进行抓取。 1. 在网页空白处点鼠标右键,然后点击「Zotero Preference」 ![打开 Zotero Connector 的选项](../../assets/images/update-translator-safari-1.jpg) 2. 点击「Advanced」中的「Reset Translators」按钮 ![更新 Zotero Connector 中的 translators](../../assets/images/update-translator-ResetTranslators.jpg) ::: ::: warning **这一步骤非常关键!** 请务必确保为 **每一个浏览器** 中的 Zotero Connector 扩展更新转换器! 点击 Reset Translators 按钮时,你也可以通过检查日志的方式确保转换器成功更新: ![通过日志确保转换器成功更新](../../assets/images/update-translator-如何确保更新成功.jpg) 如果日志「Translators: Saved xxx translators.」中显示的数量少于 500 个,转换器更新很可能出现了问题。请先[重置 Zotero 转换器](#重置-zotero-的转换器),建议[重装 Zotero Connector 浏览器扩展](#卸载并重装-zotero-connector-浏览器扩展),然后再尝试重新更新。 ::: 2. 重启浏览器。 3. 此时你已经完成了转换器的更新。此时如果你的浏览器仍然不能完成对文献的识别,在确保步骤 1-2 正确的前提下,可重复几次步骤 3。 #### 方法 2:手动替换转换器文件更新 ::: warning 不推荐这种方法 我们推荐使用「方法 1:一键自动更新」完成转换器更新。手动更新下载转换器的步骤比较繁琐,且从 GitHub 下载文件时对网络环境要求较高,可能会导致下载失败。如果您因为特殊原因无法完成自动更新,才需要考虑手动更新转换器。 ::: :::: details 手动更新转换器的步骤 1. 在 Zotero →「编辑」→「设置」→「高级」→「文件和文件夹」找到自己的「数据储存位置」。点击「打开数据文件夹」快速打开你的数据文件夹。 例如,下图中的数据储存位置就是 `D:\ZoteroDataDirectory`。 ![数据储存位置](../../assets/images/zotero-数据储存位置.png) 2. 找到数据文件夹中的 translators 文件夹(对上图而言就是 `D:\ZoteroDataDirectory\translators`),这里是 Zotero 转换器 的存放位置。 ![转换器的存放位置](../../assets/images/数据储存位置translators文件夹.png) 3. 首先,在 [Zotero 官方转换器仓库](https://github.com/zotero/translators) 下载最新的官方转换器。 ![手动在 GitHub 上下载转换器](../../assets/images/手动在github下载官方translators.png) 4. 将下载的 zip 文件解压后选择其中所有的转换器文件(.js 文件),并复制。 ![选择所有的转换器文件](../../assets/images/官方translators文件.png) 5. 将所有的转换器文件粘贴到第 2 步中 translators 文件夹并替换,此时已经完成 Zotero 的官方转换器文件的更新。 ![替换旧的转换器](../../assets/images/手动更新官方translators.png) 6. 然后,在 [Zotero translators 中文维护小组](https://github.com/l0o0/translators_CN) 下载最新的中文转换器。 ![手动在 GitHub 上下载转换器](../../assets/images/手动在github下载translators.png) 10. 将下载的 zip 文件解压后选择其中所有的转换器文件(.js 文件),并复制。 ![选择所有的转换器文件](../../assets/images/translators文件.png) ![选择所有的转换器文件](../../assets/images/translators文件2.png) 11. 将所有的转换器文件粘贴到第 2 步中 translators 文件夹并替换,此时已经完成 Zotero 的中文转换器文件的更新。 ![替换旧的转换器](../../assets/images/手动更新translators.png) 12. 更新 **每一个浏览器** 中 Zotero Connector 扩展里的转换器(translators)。 ::: tip 从 Zotero Connector v5.0.124 开始,官方移除了 Zotero Connector 设置里「Advanced」->「Translators」中的 `Update Translaors` 按钮,如果你的浏览器扩展中仍然保留 `Update Translaors` 按钮,请务必先[升级 Zotero Connector 浏览器扩展](../install.md#浏览器扩展-zotero-connector)再进行后续操作。 ::: 请根据您使用的浏览器点开下面相应的说明,并按照说明中的步骤操作。(360(极速)浏览器、搜狗浏览器、QQ 浏览器等基于 Chromium 等国内厂商推出的浏览器请参照 Google Chrome 的步骤操作) ::: details Google Chrome、Microsoft Edge 和 Mozilla Firefox 1. 右键点击 Zotero Connector 按钮,然后点击「选项/Preference」 ![打开 Zotero Connector 的选项](../../assets/images/update-translator-chrome-1.jpg) 2. 点击「Advanced」中的「Reset Translators」按钮 ![更新 Zotero Connector 中的 translators](../../assets/images/update-translator-ResetTranslators.jpg) ::: ::: details Apple Safari 虽然 Zotero 目前已经支持在 Safari 中使用,但实际使用中在 Safari 中抓取失败的案例比较多。 \*\*建议使用 Microsoft Edge、Google Chrome 或 Mozilla Firefox 浏览器进行抓取。 1. 在网页空白处点鼠标右键,然后点击「Zotero Preference」 ![打开 Zotero Connector 的选项](../../assets/images/update-translator-safari-1.jpg) 2. 点击「Advanced」中的「Reset Translators」按钮 ![更新 Zotero Connector 中的 translators](../../assets/images/update-translator-ResetTranslators.jpg) ::: ::: warning **这一步骤非常关键!** 请务必确保为 **每一个浏览器** 中的 Zotero Connector 扩展更新转换器! 点击 Reset Translators 按钮时,你也可以通过检查日志的方式确保转换器成功更新: ![通过日志确保转换器成功更新](../../assets/images/update-translator-如何确保更新成功.jpg) 如果日志「Translators: Saved xxx translators.」中显示的数量少于 500 个,转换器更新很可能出现了问题。请先[重置 Zotero 转换器](#重置-zotero-的转换器),建议[重装 Zotero Connector 浏览器扩展](#卸载并重装-zotero-connector-浏览器扩展),然后再尝试重新更新。 ::: 此时你已经完成了转换器的更新,此时如果你的浏览器仍然不能完成对文献的识别,请再次更新 **每一个浏览器** 中 Zotero Connector 扩展里的转换器(translators),或继续尝试下面的其他方法。 :::: ### 更新网页浏览器的版本 如果您的网页浏览器版本过低,有可能导致 Zotero Connector 无法正常工作(详见 [官方的说明](https://forums.zotero.org/discussion/123456/zotero-connector-no-longer-works-in-old-version-of-chrome#latest))。请务必确保您的浏览器版本已经更新到最新。 浏览器更新完成后,建议您重新更新 Zotero Connector 的转换器,具体操作请参考: [更新抓取文献信息的转换器](#更新抓取文献信息的转换器)。 :::: info 提醒 由于网络问题,国内网络环境下可能无法直接在更新 Google Chrome。您可以尝试在国外网络环境下尝试更新。或改用 Microsoft Edge、Mozilla Firefox 等其他浏览器,并更新到最新版本。 如果您无法在浏览器中直接自动更新,您也可以前往浏览器官方网站,直接下载最新版本的安装包覆盖安装。 ::: details 常见浏览器的官网 * [Google Chrome](https://www.google.com/chrome/) * [Microsoft Edge](https://www.microsoft.com/zh-cn/edge/) * [Mozilla Firefox(国际官网)](https://www.mozilla.org/zh-CN/firefox/new/) * [Firefox 火狐浏览器(中国官网)](https://www.firefox.com.cn/) ::: :::: ### 卸载并重装 Zotero Connector 浏览器扩展 如果按照上面的步骤更新后仍然无法正常抓取,建议卸载并重装最新版本的 Zotero Connector 浏览器扩展。 请根据您使用的浏览器点开下面相应的说明,并按照说明中的步骤操作。(360(极速)浏览器、搜狗浏览器、QQ 浏览器等基于 Chromium 等国内厂商推出的浏览器请参照 Google Chrome 的步骤操作) ::: details Google Chrome、Microsoft Edge 和 Mozilla Firefox 1. 进入浏览器的管理扩展程序页面 Google Chrome:点击浏览器界面右上角的 `三个点` 按钮,然后点击「扩展程序」->「管理扩展程序」。 Microsoft Edge:点击浏览器界面右上角的 `三个点` 按钮,然后点击「扩展」->「管理扩展」。 Mozilla Firefox:点击浏览器界面右上角的 `三横线` 按钮,然后点击 `扩展和主题`。 ![在 Chrome 中打开管理扩展程序](../../assets/images/uninstall-connector-chrome.jpg) 2. 找到 Zotero Connector,点击 `移除` / `删除` / `三个点` 按钮里的 `移除`。 ![在扩展中移除 Zotero Connector](../../assets/images/uninstall-connector-chrome2.jpg) 3. 按照下面教程中的说明重新安装最新版的 Zotero Connector 浏览器扩展。 [Zotero Connector 浏览器扩展安装说明](../install.md#浏览器扩展-zotero-connector) ::: ::: details Apple Safari 虽然 Zotero 目前已经支持在 Safari 中使用,但实际使用中在 Safari 中抓取失败的案例比较多。 \*\*建议使用 Microsoft Edge、Google Chrome 或 Mozilla Firefox 浏览器进行抓取。 Safari 的浏览器扩展是跟随 Zotero 客户端一同安装的,重装 Zotero Connector 时通常需要卸载并重装 Zotero 客户端本体。 通常来说,仅删除 Zotero 客户端本体的执行文件不会影响到你的文库文献、设置、插件等数据,重新安装 Zotero 后所有内容都会保持以前的状态。如果不放心,你也可以先查看这一篇文档先备份一下 Zotero 数据文件和用户配置文件:[备份 Zotero 数据](../backup.md) 1. 打开 Safari,点击系统菜单栏左上角的 `Safari 浏览器`,然后点击 `设置`。 ![打开 Safari 设置](../../assets/images/uninstall-connector-safari.jpg) 2. 在弹出的窗口中点击顶部的 `扩展` 选项卡,在左边栏找到 Zotero Connector,然后点击右边界面里的 `卸载`。 ![在扩展中点击卸载](../../assets/images/uninstall-connector-safari1.jpg) 3. 点击弹窗中的 `在访达中显示`。 ![在访达中显示](../../assets/images/uninstall-connector-safari2.jpg) 4. 完全退出 Safari 浏览器,然后回到上一步的访达界面中,将 Zotero 程序文件删除(如果不小心关闭了刚刚弹出的访达窗口,你也可以重新开启一个访达窗口,然后在左边栏中点击 `应用程序`,然后删除里面的 Zotero 程序文件)。 ![删除 Zotero 程序文件](../../assets/images/uninstall-connector-safari3.jpg) 5. 重新从 Zotero 官网下载新的 Zotero 安装包并完成安装。[获取 Zotero 下载链接](../install.md) 6. 运行一次 Zotero,此时 Safari 的 Zotero Connector 扩展会自动安装。 7. 重新运行 Safari 浏览器,如果没有看到 Zotero Connector 扩展图标,你可以在第 2 步的 `扩展` 选项卡中找到左边栏里的 Zotero Connector,确保它前面的复选框已经勾选。 8. 如果 Zotero Connector 图标仍未出现,你可以在 Safari 窗口顶部的按钮区域空白处点鼠标右键,然后点击 `自定义工具栏...`,然后将下方的 Zotero Connector 图标拖到上方按钮区域里你希望放置的位置上。 ![自定义工具栏](../../assets/images/connector-safari-button.jpg) ![将 Zotero Connector 按钮拖至合适位置](../../assets/images/connector-safari-button2.jpg) ::: ### 重置 Zotero 的转换器 如果您已尝试上述所有方法仍无法解决问题,可尝试重置 Zotero 的转换器。此操作将重置 Zotero 数据文件夹内所有转换器。 1. 在 `Zotero 设置` 中,点击「高级」-> 「文件和文件夹」->「数据库维护」中的「重置转换器…」按钮。 ![重置转换器](../../assets/images/zotero-reset-translator.png) 2. 重新更新所有转换器,具体操作请参考 [更新抓取文献信息的转换器](#更新抓取文献信息的转换器)。 ### 检查数据文件夹状态是否正常 如果上述的方法都无法解决问题,请阅读下面的说明,检查您是否属于这种特殊情况: :::: details 关于数据文件夹的重要提醒 ::: danger 无论你选择何种同步方案,也无论基于何种原因,切勿将 Zotero 的 `数据存储位置/Data Directory` 自定义为任何网盘的同步文件夹中(包括 iCloud),也切勿使用任何网盘/同步盘的备份功能直接同步/备份这一目录!(包括但不限于直接使用坚果云的官方客户端直接同步备份这一文件夹) 这样做在某些情况下可能会导致你的 Zotero 数据库损坏,带来严重的问题!这样做也可能导致转换器更新失败,影响文献信息的抓取! ::: 如果您将 Zotero 的 `数据存储位置/Data Directory` 自定义为网盘的同步文件夹中,可能在某些情况下出现转换器文件被同步盘锁定,无法更新的情况。考虑到直接同步 Zotero 数据文件夹的各种风险,请您做好[备份](../backup#手动备份),根据 [自定义数据文件夹](../faqs/custom-data-directory) 的教程将数据文件夹迁移到本地的其他位置,且确保未使用任何工具直接同步这一数据文件夹。 :::: ### 前往其他网站进行抓取 在成功更新转换器后,若当前网站仍无法完整、准确地抓取文献信息,您可以尝试前往其他站点进行抓取: * 对于外文文献,除了 Google Scholar、Web of Science、PubMed 等文献检索网站,直接访问论文出版商的详情信息页通常能获取最完整的信息。 * 对于中文文献,建议访问「[Zotero 中文转换器](/translators/)」,查看支持的网站列表,选择其他网站进行搜索和抓取。特别注意,对于图书专著,需核实 Zotero 抓取的信息是否完整准确。 ## 为 Zotero 中的 PDF 附件检索元数据时遇到问题 通常,Zotero 能自动为直接添加的 PDF 附件检索元数据,并自动创建对应条目。英文文献的元数据直接从 PDF 文件获取后进行检索,而中文文献则需要借助[茉莉花](../plugins/jasminum.md)插件通过文件名识别。具体步骤请参考:[通过附件添加条目教程](../add-items.md#通过附件添加条目推荐)。 ::: tip 小提示 如果您通过附件添加条目信息,建议添加后逐一检查条目的元数据。自动匹配的元数据可能有误,使用前请人工核对。 ::: ::: info 对于 Zotero 6 用户 由于 Zotero 6 上的茉莉花插件已经基本停止维护,在 Zotero 6 上使用茉莉花插件的「抓取知网元数据」功能为中文 PDF 检索元数据时很可能会失败。建议您在做好[备份](../backup.md)后,尽快升级到 Zotero 7,然后安装最新版的[茉莉花](../plugins/jasminum.md)插件为中文 PDF 抓取期刊元数据。 升级 Zotero 7 正式版的步骤和常见问题的解答请阅读:[你好,Zotero 7](/blog/posts/hello-zotero-7)。 ::: 为 PDF 附件检索元数据时,可能遇到的问题有: 1. **网络问题**:如果检索持续停滞,可能是网络连接问题。建议尝试更换网络环境,或稍后重试。对于外文文献,您可以开启一些访问国际互联网的工具后再尝试检索元数据。 2. **附件不是独立的顶级条目**:如果这一附件已经有了附属条目了,是无法重新触发抓取元数据的,此时右键菜单里不会出现「检索元数据」和「抓取期刊元数据」按钮。请将附件从条目中拖出到文献列表空白区域或任意两个条目之间的间隙,使其成为独立的顶级条目,然后再尝试检索元数据。 3. **中文文献使用错功能**:中文文献的元数据检索依赖茉莉花插件,需使用茉莉花插件的「抓取期刊元数据」功能。如果您使用的是 Zotero 自带的「检索元数据」功能,检索大概率会失败,或识别出一个英文条目。详见:[中文文献附件自动识别](../add-items.md#中文文献附件自动识别)。 4. **茉莉花插件版本过旧**:如果您使用的茉莉花插件版本过旧,可能会导致中文文献的元数据抓取失败。请确保您安装了最新版本的茉莉花插件,详见插件文档:[茉莉花](../plugins/jasminum.md)。 5. **中文文献文件名不规范**:中文文献的元数据检索依赖文件名,文件名不规范可能导致检索失败。建议将文件名改为文献标题,或根据文件名特点修改文件名识别模板,然后再重新尝试检索元数据。详见:[中文文献附件自动识别](../add-items.md#中文文献附件自动识别)。 6. **转换器故障或版本过低**:请根据[更新转换器教程](#更新抓取文献信息的转换器)中的步骤更新转换器,特别关注[在浏览器里更新 Zotero Connecter 的缓存](#步骤-3-更新-zotero-connecter-的缓存)时的日志,确保更新成功。如果更新失败,请按照文档中的指引进行处理。 7. **不支持抓取或其他问题**:不管是中文文献还是英文文献,都有可能会遇到检索失败的情况(特别是对于图书专著)。如果检索失败,建议采用其他方式获得文献条目,然后将 PDF 文件以附件的形式添加到该条目上(将附件拖到该条目上即可,但不要拖到条目之间的间隙里)。 更多注意事项,请阅读:[通过附件添加条目教程](../add-items.md#通过附件添加条目-推荐)。 ## 使用其他添加条目的方式 如果以上所有操作都未能解决你遇到的抓取问题,可能你访问的网页目前无法通过 Zotero Connector 抓取文献信息。你可以尝试换其他网站进行抓取,或者使用 [通过附件添加条目](../add-items.md#通过附件添加条目-推荐)、[由通用格式的引用信息导入](../add-items.md#由通用格式的引用信息导入-通用方法) 以及 [手动创建条目](../add-items.md#手动创建条目-万能方法) 等添加条目方式。详细操作步骤请阅读 [添加条目教程](../add-items.md) 。 --- --- url: /user-guidefaqsplugins.md --- # 插件安装的常见问题 关于插件的安装方法与常用插件介绍,请参见 [插件与功能扩展](../plugins/about-plugin.md)。 ## 无法打开插件页面 **如果你能看到 `插件 / Plugins` 选项,点击这一按钮的时候却没反应:** 请先完全退出 Zotero(Windows 用户关闭窗口后可能需要再任务管理器中结束 Zotero 相关的进程,macOS 用户建议使用 Command+Q 快捷键完全退出),然后再重新尝试。如果退出重开后依然没有,请重启电脑,然后再尝试。这是 Zotero 的一个 Bug。 ## 插件页面显示过大超出屏幕 **如果你能打开窗口,却发现窗口顶部捅破了天际,看不到上面的内容:** 请先把窗口左右方向拉窄,这样顶部就回自己跳出来了;然后再把上下方向拉矮,把窗口调整到合适的位置,一段时间之内应该就会都是正常的了。这大概也是 Zotero 的一个祖传 Bug。如果是 Windows 系统,选中该窗口,使用快捷键 `WIN + 左或右方向键` 调整窗口。 ## 插件安装包格式特殊 **如果你下载到的插件安装包格式比较特殊** (如 .zoteroplugin 文件或 .zip 文件),这些文件可能不能在手动安装的文件选择窗口中选中。对于这些特殊格式的安装包,你 **只需要把安装包文件拖至前文中提到的插件列表页即可安装** 。 ## 无法安装插件「%S」。他可能无法与该版本的 Zotero 兼容 **如果安装的时候提示** `无法安装插件“%S”。他可能无法与该版本的 Zotero 兼容。`: ![插件安装失败](../../assets/images/zotero-插件安装失败.png) 1. 请检查下载的插件格式。如果从 GitHub 下载,安装包在右侧的 Release 中的 xpi 文件。请不要下载源码。 2. 请检查插件安装包是否损坏。重新下载一遍。 3. 检查插件适配的 Zotero 版本 首先需要确定自己 Zotero 的版本,依次点击「帮助」->「关于 Zotero」,即可看到自己 Zotero 的版本(如图则是 Zotero 6)。 ![确定自己的版本号](../../assets/images/zotero-about-zotero.png) 在[国内镜像](/plugins/)下载插件时,查看页面中`目标 Zotero 版本`找到适合自己的插件版本,点击后面的下载链接就可以下载到适合自己的插件。 ![目标 Zotero 版本](../../assets/images/目标zotero版本.png) ## 安装插件后,无任何弹窗错误,但没有插件设置项或菜单项 Zotero 7.0.5 以来的几个版本,在安装插件后,虽然没有任何错误弹窗,但是插件实质上没有安装成功,表现为「应有设置窗口」的插件没有显示「设置项」、「应有菜单项」的插件没有显示「菜单项」等。 可能会由以下方式触发: * 同时安装多个插件:一次性拖入多个插件的 xpi 安装包进入 Zotero 的插件管理界面;或是在「Install Plugin From File」中同时选择多个插件的 xpi 安装包。 * Zotero 退出时选项卡处于阅读器页面而不是条目列表页面。 如果你遇到这种问题,请尝试: 1. 确保使用的是最新版本的 Zotero 和插件 2. 重启 Zotero 3. 卸载所有插件,重启 Zotero,然后逐个安装(一次只安装一个)这些插件 4. 退出 Zotero 时回到条目列表页面 ## 插件检查更新时提示未找到更新 可能是确实没有更新,也可能是无法链接到 GitHub。请在插件商店寻找你需要的安装包:[https://zotero-chinese.com/plugins/](/plugins/) 即使你能够打开 GitHub 页面,也并不代表 Zotero 能够顺利下载到插件更新。这取决于网络情况。 --- --- url: /plugin-dev-guideindex.md --- # 插件开发指南 ::: tip 待完善,前托管于语雀的开发者文档主要针对 Zotero 6,鉴于插件在 Zotero 7 相对 Zotero 6 变动较大,因此插件开发者文档需要重写。 ::: 本文档所述内容仅适用于 Zotero 7 插件开发,Zotero 6 插件开发文档请参阅 [Zotero 6 插件开发文档](https://zotero.yuque.com/staff-gkhviy/developer/)。 ## 前置基础知识 Zotero 插件遵循 Firefox 插件的要求。此处列举了编写插件的基础知识。并非所有知识都需要掌握,只需要在遇到问题时能通过查阅文档找到解决方法即可。 ### Firefox 插件 [Introduction: Welcome to Software Development the Mozilla Way](http://mb.eschew.org/intro) [Web 浏览器扩展](https://developer.mozilla.org/zh-CN/docs/Mozilla/Add-ons/WebExtensions) ### HTML / XUL 关于 HTML,可参考网上的任意教程,只需理解基本的树结构,大致清楚元素类型与通用属性即可。 参考文档:[HTML 教程 | 菜鸟教程](https://www.runoob.com/html/html-tutorial.html) 关于 XUL,在了解 HTML 的基础上只需大概浏览文档即可。在使用时可随时查阅文档。 参考文档:[Huihoo - XML User Interface Language (XUL)](https://docs.huihoo.com/xul/),[XUL School Tutorial - Archive of obsolete content](https://udn.realityripple.com/docs/Archive/Add-ons/Overlay_Extensions/XUL_School) ### JavaScript / TypeScript 如果对其他编程语言有了解,上手 JavaScript 很快,看一下基本语法即可。 参考文档:[JavaScript 教程](https://www.w3school.com.cn/js/index.asp) (非必需)也可以直接学习 TypeScript,它是 JS 的超集,提供了更多特性,并对习惯于 C++/JAVA 等强类型语言的开发者而言更加熟悉。第二章将要介绍的的 Zotero 插件框架支持 TS。 参考文档:[TypeScript 中文网 · TypeScript——JavaScript 的超集](https://www.tslang.cn/) ### Git Git 是版本管理的常用工具。 参考文档:[Git 教程 | 菜鸟教程](https://www.runoob.com/git/git-tutorial.html) ### Zotero 官方资料 Zoero 文档(部分过时或不全):[start \[Zotero Documentation\]](https://www.zotero.org/support/) Zotero 社区:[Recent Discussions](https://forums.zotero.org/discussions) Zotero 贡献文档:[Zotero | Get Involved](https://www.zotero.org/getinvolved/) Zotero 开发者群组: 社区维护的 Zotero Types 接口类型定义包:[windingwind / Zotero-types](https://github.com/windingwind/zotero-types) [Zotero-types](https://www.npmjs.com/package/zotero-types) ## 本文档的结构 > todo --- --- url: /plugin-dev-guidereferencemanifest.md --- # 插件清单 `manifest.json` 是插件的清单文件,它是一个允许使用 `//` 撰写单行注释的、特殊的 JSON 文件。此文件必须存在,否则插件无效。 在这个文件中定义了插件的名称、ID、描述、图标、更新地址、兼容版本等信息。 此文件与 [Web Extension 的 manifest.json](https://developer.mozilla.org/zh-CN/docs/Mozilla/Add-ons/WebExtensions/manifest.json) 基本一致,只是减少了一些字段。 ## 示例 下面是一个典型的 `manifest.json` 文件,内容来源于官方插件示例 `Make It Red`。 ```json { "manifest_version": 2, "name": "Make It Red", "version": "2.0", "description": "Makes everything red", "homepage_url": "https://github.com/zotero/make-it-red", "applications": { "zotero": { "id": "make-it-red@example.com", "update_url": "https://zotero-download.s3.amazonaws.com/tmp/make-it-red/updates-2.0.json", "strict_min_version": "6.999", "strict_max_version": "7.0.*" } } } ``` ## 属性参考 ### `manifest_version` * 类型:`number` * 强制性:强制 此键指定扩展使用的 `manifest.json` 的版本。 值须是且仅能是 `2`。 ### `name` * 类型:`string` * 强制性:强制 插件的名称,本地化可参考 [manifest 的本地化](#manifest-的本地化)。 ### `version` * 类型:`string` * 强制性:强制 插件的版本,一般格式为由点分隔的数字组成的 ASCII 字符串。 #### 版本格式 版本字符串由 1 到 4 个数字组成,数字之间用点分隔,例如 `1.2.3.4` 。非零数字不得包含前导零。例如,不允许使用 `2.01` ;但是, `0.2` 、 `2.0.1` 和 `2.10` 是允许的。 #### 版本比较 为了确定两个扩展版本中哪一个是最新的,需要从左到右比较版本字符串号。缺少版本字符串元素相当于 `0` 。例如,`1.0` 相当于 `1.0.0.0`。第一个版本字符串的编号大于另一个版本字符串中对应编号的版本字符串是最新的。例如,`1.10` 是比 `1.9` 更新的版本。 ### `applications` 类型:`object` 强制性:强制 此项必须包含属性 `zotero`。 #### `zotero` ##### `id` `id` 即扩展 ID。必填项。通常的,大家都使用邮箱格式来命名插件 ID ##### `strict_min_version` 插件所能支持的 Zotero 的最小版本号。不允许使用 `*` 来定义版本号。默认值为 "42a1"。 ##### `strict_max_version` 插件所能支持的 Zotero 的最大版本号。如果安装或运行插件的 Firefox 版本号高于这个最大版本号,插件将不能运行或不允许被安装。默认值为 `*`,意思为不对最大版本号做检查。 ##### `update_url` 链接到插件 [更新清单](./update.md) 的链接。注意链接必须以「https」开头。这是为了使你自己就能够管理插件的更新。 ### `author` * 类型:`string` * 强制性:非强制 插件的作者,用于在浏览器用户界面上显示,这样别人下载安装使用该插件的时候,就能看见你的大名了。 ### `description` * 类型:`string` * 强制性:非强制 用于在用户下载安装使用界面中显示的一段简短的关于该插件的描述。 这是一个可本地化的键。 ### `homepage_url` * 类型:`string` * 强制性:非强制 如果 developer 键存在且包含 `url` 属性,它将会覆盖 `homepage_url` 键。 这是一个可本地化的键。 ## manifest 的本地化 ::: tip Todo 参考: ::: ## 参考资料 * [Web Extension 的 manifest.json](https://developer.mozilla.org/zh-CN/docs/Mozilla/Add-ons/WebExtensions/manifest.json) * [Zotero 7 for developers](https://www.zotero.org/support/dev/zotero_7_for_developers) --- --- url: /user-guidesync.md --- # 数据与文件的同步 我们在这里把同步分为「数据的同步」和「文件的同步」。 数据的同步指 `条目字段信息`、`批注`、`笔记` 的同步,这些数据仅能通过 Zotero 官方提供的服务同步。 文件的同步指 `PDF 附件`、`网页附件`、`Word 文档`、`EPub 文件` 等所有附件的同步。这些文件既可以通过 Zotero 官方服务同步,也可以通过 WebDAV 网盘来同步。 ::: danger 无论你选择何种同步方案,切勿将 Zotero 的 `数据存储位置/Data Directory` 自定义为任何网盘的同步文件夹中(包括 iCloud),也切勿使用任何网盘/同步盘的备份功能直接同步/备份这一目录!(包括但不限于直接使用坚果云的官方客户端直接同步备份这一文件夹) 这样做在某些情况下可能会导致你的 Zotero 数据库损坏,带来严重的问题!官方对于这一问题的说明见这两篇文章: * [How can I access my library from multiple computers?](https://www.zotero.org/support/sync#alternative_syncing_solutions) * [Can I store my Zotero data directory in a cloud storage folder?](https://www.zotero.org/support/kb/data_directory_in_cloud_storage_folder) 如果您已经将 Zotero 数据文件夹直接同步到网盘中,请您做好[备份](./backup#手动备份),根据 [自定义数据文件夹](./faqs/custom-data-directory) 的教程将数据文件夹迁移到本地的其他位置,且确保未使用任何工具直接同步这一数据文件夹。 ::: ## 数据的同步 ::: tip 无论如何,您都需要注册一个 Zotero 的官方账户,用于同步条目信息、批注以及笔记。如果您没有注册,可 [快速创建一个 Zotero 账户](https://www.zotero.org/user/register)。 ::: 您可以在「Zotero」→「编辑」→「设置」→「同步」→「数据同步」中输入您的 Zotero 账户的用户名和密码,然后点击「启用同步」进行登录。 ![账号登录](../assets/images/zotero-帐号登录.png) ::: tip 无论附件采用何种方式同步,条目信息、批注、笔记始终是通过 Zotero 官方的服务同步的。 条目信息、批注、笔记都是不占用 Zotero 官方的免费存储空间的,目前也没有总量的限制。 ::: ## 文件的同步 常用的文件同步方式有: * **Zotero 官方存储空间**:Zotero 官方提供的存储空间,300 MB 免费。 * **WebDAV 同步**:坚果云网盘、InfiniCLOUD 等支持 WebDAV 的网盘,部分服务商有免费的使用额度。 * **第三方同步盘**:如 OneDrive、百度网盘、iCloud 等,结合 Attanger 等插件进行同步。 其中,Zotero 官方存储空间和 WebDAV 同步是官方推荐的同步方式,附件直接由 Zotero 进行管理,使用起来最为简单。第三方同步盘的方式则是通过 Attanger 等插件将附件转换为链接的附件进行同步,使用起来较为复杂,容易出现问题,且不支持 Zotero 官方的移动客户端。我们始终建议通过官方服务或 WebDAV 网盘进行附件同步。 :::: details 同步方案对比 以下是各种方式的对比: | 对比项 | Zotero 官方存储空间 / WebDAV 同步 | Attanger + 同步盘 方案 | | :----------------------------------------: | :-------------------------------: | :--------------------: | | 配置难度 | 简单 | 复杂 | | 多台电脑上同步附件 | 是 | 是 | | 更改附件存储位置/自定义存放附件的文件夹名 | 否 | 是 | | 支持的网盘种类 | 很少 | 较多 | | 是否可以在移动端 Zotero/Papership 打开附件 | 是 | 否 | * 简单来说,如果你只是需要在两个电脑之间同步数据,在设置正确的前提下,两者个方案都可以实现同步,但在文件的管理方式上存在区别。 * 移动端则在应用的支持和使用体验上都有明显区别,主要体现在:「WebDAV 方案」可以选择的是官方的 Zotero 应用;「Attanger + 同步盘 方案」则更适合用 PDF Expert 或 Drawboard PDF 这一类的第三方 PDF 阅读器搭配 iCloud 或 OneDrive 直接从(整理好的)文件目录里打开 PDF 并批注和编辑。 ::: warning 我们始终建议通过官方服务或 WebDAV 网盘进行附件同步。网上流传较广的 ZotFile/Attanger + 同步盘 方案已经过时,且无法在移动端 Zotero 应用上进行同步,不再被官方所推荐。 目前 Zotero 已经内置了较为完善 PDF 批注功能,且由 Zotero 内置阅读器标记的批注会直接存储在 Zotero 的数据库中,不会直接写入到 PDF 文件中。即便您使用 Attanger + 同步盘 方案,在用第三方阅读器直接打开 PDF 文件时,仍然是无法看到由 Zotero 内置阅读器标记的批注的。正因如此,我们不再建议使用 Attanger + 同步盘 方案。 ::: :::: ### Zotero 官方存储空间 Zotero 官方提供了存储空间用于存储文件附件,您可以在 `Zotero`-`编辑`-`设置`-`同步`-`文件同步`中选择 `Zotero` 作为附件的同步方式。 每个 Zotero 用户都可以获得 300 MB 的免费 Zotero 存储空间,用于存储附加文件,并可 [购买更大的存储空间](https://www.zotero.org/settings/storage?ref=sib)。如果您拥有钞能力,这是最简单的备份方法,在登录您的 Zotero 账户并完成购买后无需其他任何设置。 ::: details 购买 Zotero 官方存储空间的费用 | 存储空间 | 费用 (USD) | | :------------: | :---------------------------------: | | 300 MB | Free | | 2 GB | $20/year (equal to $1.67 per month) | | 6 GB | $60/year (equal to $5 per month) | | Unlimited 无限 | $120/year (equal to $10 per month) | ::: 如果您想免费进行进行文件的同步,那么您具有两种网盘同步方式:**支持 WebDAV 的网盘(推荐)**和**第三方同步盘**。对于大多数用户,我们建议使用 WebDAV 网盘同步。 ::: tip 提示 不要担心,条目信息、批注、笔记都是不占用 Zotero 官方 300 MB 的免费存储空间的。只有文件附件同步才会占用空间,因此只要不使用 Zotero 官方的存储空间同步附件,就完全不用关心这一限制。 ::: ### 通过 WebDAV 同步附件 ::: info 什么是 WebDAV WebDAV 是一组基于超文本传输协议的技术集合,有利于用户间协同编辑和管理存储在万维网服务器文档。 通俗一点儿来说,WebDAV 就是一种互联网技术,应用此方法可以在服务器上划出一块存储空间,可以使用用户名和密码来控制访问,让用户可以直接存储、下载、编辑文件。 ::: 目前常用的支持 WebDAV 同步的网盘包括[坚果云网盘(有免费额度)](https://www.jianguoyun.com/)、[123 云盘(需购买会员)](https://www.123pan.com/)、[阿里云盘(需购买三方权益包)](https://www.alipan.com/)、[InfiniCLOUD(有免费额度)](https://infini-cloud.net/en/index.html)。常见的如百度网盘、iCloud、OneDrive 等均不支持 WebDAV 同步。 :::: tip 提示 我们只推荐使用**坚果云网盘**,后续教程也将以坚果云网盘为例。 如果您没有坚果云网盘的账户,请先 [注册坚果云](https://www.jianguoyun.com/d/signup)。 ::: details 坚果云免费用户的流量限制说明 坚果云免费用户具有以下限制: * 流量与空间限制:每月上传流量 1GB/月、下载流量 3GB/月,空间受限于上传流量, * 文件上传大小限制:当前 WebDAV 客户端和网页端上传大小的限制是一致的,默认为 500MB(私有云可以通过相关设置调整)。 * 访问频率限制:由于 WebDAV 协议比较占用系统资源,免费版用户限制访问频率为每 30 分钟不超过 600 次请求。付费用户限制访问频率为每 30 分钟不超过 1500 次请求。 当然对于大部分用户免费账户是完全够用的(虽然每个月只有 1GB 上传流量,但是好处是每个月都可以有 1GB,一年最多可以拥有 12GB)。如果您对容量(流量)的需求很高,可付费[购买坚果云专业版](https://www.jianguoyun.com/s/pricing),或者使用其他支持 WebDAV 同步的网盘。 ::: :::: #### PC 端 ::: tip 目前坚果云官方团队已经开发了 Zotero 的坚果云官方 Zotero 同步插件 [Nutstore SSO](/plugins/#search=Nutstore%20SSO),可以直接通过插件登录坚果云账户并自动配置好 WebDAV。坚果云官方同步插件的使用方法请阅读: [坚果云官方 Zotero 同步插件使用教程](https://mp.weixin.qq.com/s/w9pzcuikfJ7hC9t3yVa-qw)。 如果您不希望使用插件进行配置,您仍然可以参照下面的手动配置步骤进行配置。 ::: ::: info 提示 如果您使用了 WebDAV 同步,则不需要下载坚果云官方的电脑客户端,也不需要下载其他用于同步的第三方软件或插件。您只需在各个电脑/移动设备上都参照本文档的教程,在 Zotero 同步设置中填写相应的同步设置即可。 ::: 这里以坚果云网盘为例,介绍如何在 PC 端配置 WebDAV 同步。 1. **获取 WebDAV 文件同步的登录信息** 使用 WebDAV 同步时,您需要提供 WebDAV 服务器地址、用户名和应用密码。通常来说,如果您使用的网盘支持 WebDAV,这三个信息均可在网盘的设置中找到。 ::: details 获取坚果云的 WebDAV 登录信息和应用密码 1. 在[坚果云官网登录](https://www.jianguoyun.com/d/login)您的坚果云账户。 2. 登录后点击 右侧用户名->账户信息 ![账户信息](../assets/images/坚果云-账户信息.png) 3. 选择安全选项,下滑到底,点击添加应用。 ![添加应用](../assets/images/坚果云-添加应用.png) 4. 完成后,记录下生成的密码。 ![生成应用密码](../assets/images/坚果云-生成密码.png) ![复制应用密码](../assets/images/坚果云-密码.png) ::: 2. **在 Zotero 中配置 WebDAV 同步** 打开 `Zotero`,`编辑` → `设置` → `同步` → `文件同步`,将 `「我的文库」附件同步方式` 由 `Zotero` 改成 `WebDAV`,并填写你的 WebDAV 服务器地址(坚果云需填写:`dav.jianguoyun.com/dav`)。 用户名是坚果云账号,密码是生成的应用密码(非坚果云账号的登录密码),设置好后点击 `Verify Server` 即可。 ![登录 WebDAV 账户](../assets/images/zotero-登录webdav账户.png) ::: warning 注意 请注意,这里使用的密码是网站上生成的应用密码,而不是直接在网页上登录时的密码。大多数云盘的 WebDAV 同步都需要使用专门的应用密码进行登录,您可以在云盘的设置中找到相关选项。 ::: 3. 到此处,电脑上关于 WebDAV 的同步设置就完成了。 4. 回到首页,点击界面右上角的同步按钮就可以进行同步。如果是第一次设置,会提示在 WebDAV 网盘里自动创建一个名叫 `zotero` 的文件夹,用于存放同步更新的文件。 ![同步图标](../assets/images/zotero-同步图标.png) ::: details 自定义存放路径 如果在坚果云里新建了一个文件夹,想将文件放在那个文件夹里的话,那么在填写服务器地址时,需要添加对应的文件夹名字(建议文件夹用英文或数字命名),例如 work,那么服务器地址填写如下: ![WebDAV 网址设置](../assets/images/zotero-webdav网址设置.png) 此时,你的 Zotero 的同步文件将会放在 `根目录/work/Zotero` 中。 ::: #### iOS Zotero 的 iOS/iPadOS 官方客户端的配置教程见:[移动端配置教程](./mobile.md#ios)。 #### Android Zotero 的 Android 官方客户端和第三方客户端的配置教程见:[移动端配置教程](./mobile.md#android)。 ### 通过第三方网盘同步附件 ::: danger **我们不建议使用第三方网盘结合 Attanger 等插件的方式进行同步**。这会导致很多问题。除非你具备较强的问题排查能力,且对 Attanger 所提供的功能有刚性需求,否则**请不要使用这种方法**! ::: 如果您希望通过第三方同步盘来进行附件的同步,您可以使用 Zotero Attanger、ZotMoov 等插件来实现。 :::: details 如何配置 Attanger/ZotMoov + 同步盘 同步方案 Zotero Attanger 这一类插件会将 Zotero 的 PDF 附件转换为链接的附件,并将其存储在指定的文件夹中。您可以直接将存储附件的目标文件夹放置在 百度网盘同步盘、阿里云盘备份盘、iCloud、OneDrive 等云盘目录中,也可以使用坚果云官方客户端等工具在不同设备之间同步这一文件夹。不过,**请务必注意,请不要将存储附件的目标文件夹选为 Zotero 的数据目录,更不要将 Zotero 的数据目录用任何手段进行同步。** 在使用这一方案时,附件会由「存储的附件」转换为「链接的附件」,这样会导致无法直接通过 Zotero 本身的「删除条目」功能来删除附件。您需要使用 Zotero 的「显示文件位置」功能,手动删除文件夹中的文件。此时,您可能需要借助 [Del Item With Attachment 插件](/plugins/#search=Del+Item+With+Attachment)提供的「删除条目和附件」功能进行删除。详见:[删除 Zotero 中链接的附件时,同时删除系统中的文件](./faqs/sync#教程-删除-zotero-中链接的附件时-同时删除系统中的文件) 如果您确定要使用第三方网盘同步附件,您可以参考下面的教程: * [Zotero Attanger 插件教程](./plugins/zotero-attanger) 您也可以使用 [ZotMoov 插件](./plugins/zotmoov) 作为替代来实现附件的同步。但我们仍然建议您先阅读 [Zotero Attanger 插件教程](./plugins/zotero-attanger),完全理解每一项设置的含义后再进行使用。 ::: warning 提醒 选用这一同步方式时,我们强烈建议您仔细地阅读 [Zotero Attanger 插件教程](./plugins/zotero-attanger),详细了解各项设置的含义和使用方法,以及文档中提到的各个注意事项。错误的设置可能会导致附件丢失或无法同步。 ::: :::: ### 问题排查及同步方案之间的切换 如果您在同步中遇到报错、文件无法打开、文件无法删除等问题,请参照这篇文档处理:[Zotero 同步问题排查](./faqs/sync)。 如果您希望从其他同步方案切换到 WebDAV 同步,请阅读这个教程:[迁移到 WebDAV 同步方案](./faqs/sync#教程-迁移到-webdav-同步方案)。 如果您希望其他同步方案切换到 Attanger + 同步盘方案,请阅读这个教程:[迁移到 Attanger + 同步盘方案](./faqs/sync#教程-迁移到-attanger-同步盘方案)。 --- --- url: /contributingwiki.md --- # 文档修改指南 ## 项目概述 本文档使用 Markdown 语法编写,Markdown 文件存储在 GitHub 上,使用 VitePress 作为静态页面生成器,通过 GitHub Actions 自动构建网站,并托管在 Netlify 上。 当然,您实际上不需要知道上面的名词代表的是什么,您只需要根据后续小节提供的 [修改方法](#修改方法),并参阅 [文档风格和语法指南](./markdown.md) ,就可以完成文档的贡献。 目前仓库地址为 。 ::: info 需要 GitHub 账号 文档源码开源托管在 [GitHub](https://github.com/) 上,因此读者需要一个 GitHub 账户才能提交 PR。 ::: ## 文档维护范围 文档的维护与更新主要包括几个方面: * 修正错别字、语句不通等 * 修正文档中的错误或不清晰的描述 * 文档里出现「TODO」、「施工中」、「待办」等字样的内容 * 我们在文档仓库里列出的 [待办项](https://github.com/zotero-chinese/wiki/issues) * 调整章节结构,使文档条理更清晰 * 增加示例、专题或入门教程 * 其他任何你认为有必要修改的地方 如果您期望调整章节结构或对文档进行较大规模的修改重构,希望您可以先在文档仓库的 ISSUE 里发布一个帖子,与我们讨论后再进行。 ## 修改方法 ::: tip 请根据实际需要选择修改方法 为了降低上手门槛,我们根据需要修改的量和难易程度提供了以下几种修改方法。 ::: ### 方法 1:在 GitHub 上在线修改 ::: info 评价 难度:⭐ 适用于修改简单的别字、语句不通或不清晰的描述等。 ::: 1. 在线修改 打开需要修改的文档网页,点击末尾左下角的「在 GitHub 上编辑此页」,网页会自动跳转到 GitHub 编辑文档源码的页面。 ![点击编辑此页](../assets/images/contributing/贡献指南-点击编辑此页.png) 如果你是第一次贡献,则会提示需要 fork 才能继续,请点击「Fork this repositiry」继续即可。 ![fork 仓库](../assets/images/contributing/贡献指南-fork仓库.png) 编辑需要修改的地方,文档风格和 Markdown 语法请参阅 [文档风格指南 #Markdown 语法](markdown.md#文档语法风格)。 2. 提交修改 修改完后,点击右上角的 `Commit Changes...`, ![修改内容](../assets/images/contributing/贡献指南-修改内容.png) 在弹窗中在下方的「Commit changes」中输入有关此次修改的标题和具体描述。然后点击「Propose changes」。 ![输入提交信息](../assets/images/contributing/贡献指南-输入提交信息.png) 3. 提交 PR 在「Comparing changes」页面中,,点击「Create Pull request」。 ![创建 PR](../assets/images/contributing/贡献指南-创建pr2.png) 输入此 PR 的标题和具体描述。点击「Create pull request」即可。 ![创建 pr 详情](../assets/images/contributing/贡献指南-创建pr3.png) PR 提交后,CI 工具会自动对提交的 PR 生成一个预览链接并评论在 PR 中,可以在此预览修改的结果。 维护者将尽快审核这些修改。 ### 方法 2:通过代码空间在线修改 ::: info 评价 难度:⭐⭐ 适用于一般修改。 ::: 例如你需要添加一篇文章,上传一些图片等,且对 Git 不甚了解,那么可以使用这种方式在线修改,这可以避免你下载很多软件。 请参考 [使用 `GitHub 代码空间` 修改文档](./github-codespace.md)。 ### 方法 3:离线修改 ::: info 评价 难度:⭐⭐⭐ 适用于维护者。 ::: 如果你需要做较大量修改,例如增加几篇文章,或长期贡献/维护仓库,且对 Git 有一些了解,可以采用这种方式:完全本地修改,可以在本地预览修改的效果,修改后再推送到 GitHub。 请参考 [完全构建指南](build.md)。 ## 注意事项 * Commit 的注释信息应该是描述性的 * 希望读者对审稿人/维护者的评论和意见保持开放的心态,并努力改进代码或文档 * 新的 PR 不一定会及时审核,取决于审稿人/维护者的当时的工作时间 --- --- url: /contributingmarkdown.md --- # 文档风格指南 本文档旨在对于 Zotero 中文社区上发表文档的语言、版式、内容元素等方面提出可执行的要求,以便维持和改进文档的整体水平与可读性。 本文档未涉及的风格问题,应参考中文互联网一般实践,以及中文出版物的行业标准和国家标准;仍然不能得出结论的,可依兼顾严谨与开明的方针自行判断。 \[\[TOC]] ## 文件命名 文档网站根据每个 Markdown 源文件的路径确定每个页面的路由。因而,确定文件名时应慎重,一旦确定,尽量不要再改动。 由于 Windows 不区分文件名大小写,故而 `option-B.md` 和 `option-b.md` 在 Windows 下会出现冲突。 我们使用的文件的命名规则是: * 文件名一律采用小写字母 * 文件名应尽量使用单词全称,避免使用各种形式的简写 * 若文件名中含多个单词,应使用连字符 (hyphen) `-` 连接 ## 文档 FrontMatter 规范 通过 FrontMatter 为每个 Markdown 页面引入配置。 一般情况下,不需要手动配置 FrontMatter。 :::: details Frontmatter 必须在 Markdown 文件的顶部,并且被包裹在一对三短划线中间。下面是一个基本的示例: ```md --- title: 页面的标题 authors: - 作者 1 - 作者 2 - 作者 3 date: 2023-07-20 23:46:54 --- ... ``` 下面是一些常用的 Frontmatter 键: | 键 | 类型 | 必填 | 默认值 | 描述 | | ------ | -------- | ---- | -------------- | ----------------------------------------------------------------------------------------------------------------- | | title | string | 否 | 第一个一级标题 | 页面的标题。如果你不在 Frontmatter 中设置 title,那么页面中第一个一级标题(即 `# title`)的内容会被当作标题使用。 | | author | string\[] | 否 | - | 当前文档的作者增补,默认情况下会从 Git 记录获取作者。 | | data | string | 否 | 文件的创建日期 | 文档的创建日期 | :::: ## 文档语法风格 所有教程均采用 Markdown 语言编写,下面列出了一些本文档中可能用到的语法和注意事项。 ### 标题 ```md # 一级标题 ## 二级标题 ### 三级标题 #### 四级标题 ``` ::: tip 一级标题是文档名,对应页面标题,一篇文档应有且只有一个一级标题。 ::: * 文档内容从二级标题开始 * 文档中标题级别应逐级递增,例如:二级标题内应跟随三级标题,而不能越过三级标题直接使用四级标题 * 标题不应含有特殊字符:如 latex 公式,代码块,数字编号等,不应以标点符号结尾 * 标题前后空一行 * 不应仅出于放大字体、突出重点或强调的目的而使用标题样式 ### 正文文本 ```md 正文段落 1 (空行) 正文段落 2 ``` #### 中英文字符间的空格 汉字与英文字母、数字间应手动追加一个空格。但是,如英文部分之前或之后有中文标点符号,则英文部分与中文标点之间不设空格。 如「中文 ABC 中文」而非「中文 ABC 中文」,「中文 123 中文」而非「中文 123 中文」 ::: details 为什么鼓励在中英文之间添加空格? 依通说,中英文之间加入空隙,是为了实现视觉上的区隔,更加美观和易读。理想情况下,这种「空隙」应由排版引擎自动加入,宽度宜为 ¼ 个全角空格(em)。但由于数字排版环境复杂多变,在大多数时候(包括最常见的网页环境)不能指望排版引擎有这种能力,因此只能退而求其次,手动插入一个半角空格(因其宽度通常接近于 ¼ em),达到类似效果。 关于本规定的进一步讨论,参见知乎讨论「[中英文混排时中文与英文之间是否要有空格?](https://www.zhihu.com/question/19587406)」,W3C 标准草案《中文排版需求》[§ 3.2.2](https://www.w3.org/TR/clreq/#mixed_text_composition_in_horizontal_writing_mode),以及《字谈字畅》播客 [第 14 期](https://www.thetype.com/typechat/ep-014/)。 仓库已经配置了工具自动在中英文之间添加空格,在安装了仓库需要的依赖项和 VS Code 的插件后,在保存时,会自动添加空格。 ::: #### 标点符号 标点符号采用全角,如 `,`、`。`、`:`、`、`、`?` 等,标点符号与中文字符、英文字符以及数字之间不需加空格。 其他标点符号的使用参考《少数派风格指南》[§ 标点符号的形态](https://manual.sspai.com/rules/style/index.html#_7) 和 中国国家标准 GB/T 15834—2011《[标点符号用法](http://openstd.samr.gov.cn/bzgk/gb/newGbInfo?hcno=22EA6D162E4110E752259661E1A0D0A8)》。 特别的,我们期望对中文使用「直角引号」而不是“弯引号”: 使用单直角引号 `「`(U+300C)和 `」`(U+300D)。引号中再次使用引号时,用双直角引号 `『`(U+300E)和 `』`(U+300F)。 ::: info 推荐使用直角引号 鼓励使用直角引号,是因为在中英文混排的场合,弯引号常常套用英文字体而显示为半角宽度,与汉字和其他中文标点差异很大,从而对排版效果产生不利影响。我们承认并尊重就此存在的不同审美判断,仅出于统一风格目的对文章做此要求。 ::: ::: tip 你可以放心输入弯引号 由于直角引号确实不方便输入,所以仓库已经配置了自动化工具,如果你安装了仓库推荐的 `vscode-markdownlint` 插件,那么你输入的 `“ ”` 将被自动转换为 `「 」`。 要输入中文直角引号: * macOS 自带中文输入法:按 `Shift` + `[` / `]`。 * iOS 自带中文输入法:长按引号键,在弹出的浮条中选择直角引号。 * Windows 自带中文输入法:\ (旧版本)按 `Win` + `.`,切换到「Ω」标签页,选择直角引号。\ (新版本)或是按 `Win` + `.`,切换到「🔣 符号」标签页,选择「语言符号」标签页,然后选择直角引号。 * 其他中文输入法:在设置中开启「使用直角引号」或类似选项(如提供);或配置用户词典。 ::: #### 文字样式 ```md 这是一段文本, **用两对星号包裹的内容会被加粗**, 而*只用一对星号(或下划线)包裹的内容会显示为斜体*, 用~~两对波浪线包裹的内容会显示为删除~~, 你可以标记 ==重要的内容== 。 ``` 预览: 这是一段文本, **用两对星号包裹的内容会被加粗**, 而*只用一对星号(或下划线)包裹的内容会显示为斜体*, 用~~两对波浪线包裹的内容会显示为删除~~, 你可以标记 ==重要的内容== 。 ::: tip 快捷键 * 粗体:`Ctrl` + `B` * 斜体:`Ctrl` + `I` ::: 不应以下列方式使用粗体样式: * 频繁、连续、大面积地设置粗体 * 以粗体样式代替标题样式 #### 专有名词 大小写应正确,如:`Zotero` 不是 `zotero`,`GitHub` 不是 `github`。 仓库配置了一些专有名词的正确格式,如果安装了仓库推荐的插件,保存文档时可以自动替换,名词列表见 [Markdownlint 配置文件](https://github.com/zotero-chinese/wiki/blob/main/.markdownlint-cli2.jsonc)。 #### 用户界面 ##### 按键 按键名称应当只大写第一个字母(sentence case);除非会与上下文混淆,宜省略「键」字。 除方向键、空格键、菜单键外,按键名称不应翻译为中文。 组合键的各按键之间应以加号(`+`)连接,加号前后添加空格。 描述键盘输入的标准 HTML 元素为 ``,但由于我们目前未对 `` 标签提供专门样式和功能支持,我们期望使用[行内代码样式](#行内代码)作为替代。 ##### 界面元素 除非容易产生混淆,宜在描述界面元素时省略其类型名称,直接以文本标签称呼。 将界面元素名称放入直角引号内。 如果有连续的步骤,使用大于号 `>`、连接号 `-` 或其组合 `->` 来连接各步骤页面元素。 如:操作步骤:「编辑」->「设置」->「引用」。 ### 链接 ```md [相对路径访问主页](../README.md) [相对路径访问贡献指南](./contributing.md) ``` 引用文档内的内容,可以使用相对链接:`./` 表示当前目录,`../` 表示上一级目录,`../../` 表示上两级目录。 引用社区网站的内容,使用完整链接: * 插件商店:`https://zotero-chinese.com/plugins/` * CSL 商店:`https://zotero-chinese.com/styles/` * 转换器列表:`https://zotero-chinese.com/translators/` 引用外部网站链接,也使用完整的绝对链接,例如 `https://baidu.com/`。 链接部分结尾的逗号、句号等点号,不宜纳入链接文本,但整句作为链接文本的情况除外。链接部分系引文、书名、篇名时,两端的引号、书名号不宜纳入链接文本。 链接左右应空一格。 ### 图片 ```md ![图片描述](../public/logo.png) ``` ::: tip 所有的图片资源都应放入 `assets/images/` 内,尽量以通俗的方式描述图片内容。 如果新增的图片是专用的(例如某个插件的界面),且数量较多,可以为其单独创建一个文件夹来存放。 ::: ::: warning 我们不使用 HTML 语法 `` 标签来引入图片,请使用标准的 Markdown 语法。 ::: ::: tip Zotero 的图标资源 我们从 Zotero 源代码中拷贝了一部分常用的图标资源,存放在 `assets/icons/` 目录中,使用语法与常规图片相同。 图标较多,可以阅读 `assets/icons/README.md` 快速找到图标目录的含义。 例如:`![Zotero Logo](../assets/icons/z.svg)` ![Zotero Logo](../assets/icons/z.svg) ::: ### 无序列表和有序列表 ```md #### 无序列表 - item 1 - 更多的列表项 - 更多的列表项 - 更多的列表项 - item 2 - item 3 #### 有序列表 1. item 1 2. item 2 3. item 3 ``` ### 表格 使用 GitHub 风格表格: ```md | 居中 | 右对齐 | 左对齐 | | :-----------: | -------------: | :------------- | | 居中使用`:-:` | 右对齐使用`-:` | 左对齐使用`:-` | | b | aaaaaaaaa | aaaa | | c | aaaa | a | ``` ::: tip 第二行表示对齐方式的 `:` 不是必须的,当没有时,会默认为居左。 ::: ### 代码 #### 行内代码 ```md 行内代码效果:`code` ``` 行内代码效果:`code` 下列内容应设置为行内代码样式: * 终端命令的名称或简短片段; * 软件包的名称; * 文件名、扩展名和文件路径; * URL(如用于程序输入和输出)、IP 地址和端口,HTTP 协议的状态码、动词; * 上下文讨论程序语言或标记语言时,句子中的属性、元素、类、数据类型、常量、变量、关键词、方法、函数、名称空间的名称及其值(如有)。 行内代码左右应空一格。 #### 块级代码 ````md ```js var foo = function (bar) { return bar++; }; console.log(foo(5)); ``` ```` 三个反引号后跟随代码块语言:`md`、`js`、`plain`(纯文本)等。 预览: ```js var foo = function (bar) { return bar++; }; console.log(foo(5)); ``` ::: tip 代码块的高级应用 块级代码允许设置行高亮、聚焦、diff 差异等,请参考 [Markdown 扩展 - VitePress](https://vitepress.dev/zh/guide/markdown#line-highlighting-in-code-blocks) ::: ### 徽章 可以通过徽章来标记文档阅读难度、推荐等。语法如下,可以在正文和标题中使用,但是不能在一级标题(页面标题)中使用。 ```md 通过 DOI 更新元数据 。 ``` 通过 DOI 更新元数据 。 在标题中使用时,需要注意 `` 前尽量不要有空格,否则标题的锚点末尾会产生多余的空格,而 VitePress、VS Code、MarkdownLint 对这个空格的处理各不相同,会导致 Lint 错误。即: ```md ## 标题 ``` 而不是 ```md ## 标题 ``` ### 告示块 #### 信息 ```md ::: info 这是一个备注 ::: ``` ::: info 这是一个备注 ::: #### 提示 ```md ::: tip 这是一个提示 ::: ``` ::: tip 这是一个提示 ::: #### 警告 ```md ::: warning 这是一个警告 ::: ``` ::: warning 这是一个警告 ::: #### 危险 ```md ::: danger 这是一个危险 ::: ``` ::: danger 这是一个危险 ::: #### 详情 ```md ::: details 这是一个折叠可见内容 ::: ``` ::: details 这是一个折叠可见内容 ::: #### 自定义标题 :::: tip 自定义标题 通过在 `tip`、`warning`、`danger`、`details` 后添加文字,可以自定义块标题,例如: ```md ::: tip 自定义标题 通过在 `tip`、`warning`、`danger`、`details` 后添加文字 ::: ``` :::: #### 嵌套显示 支持两级嵌套,第一级的标志使用四个冒号`::::`,例如: ```md :::: details 嵌套显示 ::: tip 这是第二级提示。 ::: :::: ``` :::: details 嵌套显示 ::: tip 这是第二级提示。 ::: :::: ### 引用 ```md 这是一段正文文本 > 这是一段引用文本 这是另一段正文文本 ``` 这是一段正文文本 > 这是一段引用文本 这是另一段正文文本 ### 脚注 脚注内容就近放置,以方便阅读源文本。 ```md 这是一段文本[^1] [^1]: 这是一个脚注 ``` 这是一段文本[^1] [^1]: 这是一个脚注 ::: tip 除上述文字样式外,不使用 html 语法改变文字样式,仅在特殊情况下使用 html 语法增添文档的趣味性。 ::: ## 文档侧边栏配置 文档侧边栏是指文档左侧导航文档章节结构的模块,移动端是顶部的「菜单」按钮。 当增删页面后,需要修改这部分内容以让增删的页面在侧边栏显示或删除,以方便用户选择访问。如果没有增删页面,这部分配置一般不需要更改。 这部分内容需要在 `.vitepress/sidebar.ts` 中修改,在 `sidebar` 常量中,`/user-guide/` 对象的值就是「百科全书」的侧边栏。 语法上,每一项都至少需要 `text` 属性,这是侧边栏的文本。`link` 属性代表这一项的链接,链接是 markdown 文件的绝对路径,不需要加 `.md` 后缀。如果存在 `items` 属性,则这个侧边栏项会变成一个分组。`items` 的内容是一个侧边栏项的数组。 你可以参考该文件上方的注释了解详细配置选项,参考已有的配置应该可以较为容易地增删侧边栏项。 ## 作者信息配置 你可能有注意到,社区文档每一页地页脚都包含了这一页文档地贡献者和变更历史信息。正常来说,这些贡献者信息都是从 Git 历史中自动生成的,但由于存在「昵称别名」、「邮箱别名」等情况,贡献者信息可能会重复显示。 这种情况下,你可以前往 `.vitepress/contributors.ts` 中修改贡献者信息以消除别名。它的语法特别简单,你可以参考该文件里已有的内容来修改自己的信息。 此外,你也可以在这个文件内为自己的信息增加链接 `links`,以让页脚的贡献者名直接链接到你的社交媒体主页或个人主页。 ## 自动化工具 仓库配置了 Prettier + MarkdownLint 来规范文档的格式。建议你安装仓库推荐的 prettier-vscode 插件和 markdownlint-vscode 插件,以实现自动格式化文本。 此外,你还可以使用 NPM 脚本 `pnpm lint:fix` 来自动修复格式。 ## 致谢 本指南部分内容参考了以下文档: 1. 少数派编辑部. 少数派风格指南\[EB/OL]. 2023. 2. 田冬冬, 姚家园. GMT 中文文档贡献指南\[EB/OL]. 2023. 3. Vue 团队. VitePress 的 Markdown 扩展\[EB/OL]. 2024. --- --- url: /plugin-dev-guidereferencemore.md --- # 更多接口 ::: tip Zotero Types 关于接口定义,请参见接口定义包: 如果使用插件模板,该 NPM 包已经内置了;否则,你需要自行安装,请 `npm install -D zotero-types` 并将其加入 includes 路径。 ::: ## ZoteroPane `ZoteroPane` 是 Zotero 中主界面项目视图的抽象。可用于获取选中的项目,等等。 源码位置:[chrome/content/Zotero/zoteroPane.js](https://github.com/zotero/zotero/blob/master/chrome/content/zotero/zoteroPane.js) 可通过 `ZoteroPane.getSelectedItems()` 获取选中的条目; 通过 `ZoteroPane.itemsView.onSelect.addListener` 添加条目选中事件监听。 ```javascript ZoteroPane.selectItem(itemID); // 必须先切换到文库标签页 ``` ## Zotero.Collections 与 Zotero.Collection Collection(集合)是 Zotero 中所有条目的父层级,是 Library(库)的子层级。 * [chrome\content\Zotero\xpcom\data\collection.js](https://github.com/zotero/zotero/blob/master/chrome/content/zotero/xpcom/data/collection.js) 定义了 Zotero.Collection 类 * [chrome\content\Zotero\xpcom\data\collections.js](https://github.com/zotero/zotero/blob/master/chrome/content/zotero/xpcom/data/collections.js) 定义了 Zotero.Collections 对象,用于访问相关方法 ## Zotero.Libraries 与 Zotero.Library Libray(库)是 Zotero 中所有条目最终的父层级。Zotero 库分为用户库(`id=1`)与群组库,库之间的内容存储方式可能具有较大不同。 * [chrome\content\Zotero\xpcom\data\library.js](https://github.com/zotero/zotero/blob/master/chrome/content/zotero/xpcom/data/library.js) 定义了 Zotero.Library 类 * [chrome\content\Zotero\xpcom\data\librarys.js](https://github.com/zotero/zotero/blob/master/chrome/content/zotero/xpcom/data/libraries.js) 定义了 Zotero.Libraries 方法,用于访问相关方法 ## Zotero.Reader `Zotero.Reader` 是 PDF 阅读器的接口,但对于阅读器中诸如选中、高亮等许多功能在 `viewer.html` 内,无法直接从 Zotero 中调用,相关源码在 pdf-reader 仓库。本节仅作介绍 Zotero.Reader。 源码位置:[chrome/content/Zotero/xpcom/reader.js](https://github.com/zotero/zotero/blob/master/chrome/content/zotero/xpcom/reader.js) ### 基本使用 通过 `Zotero.Reader._readers` 访问当前的 ReaderInstance 对象,每个对象有 `_iframeWindow` 属性,可对其执行界面操作。 ```javascript Zotero.Reader.getByTabID(Zotero_Tabs.selectedID); ``` ```javascript const cont = document.getElementById(`${Zotero_Tabs.selectedID}-context`); const box = cont.querySelector("tabbox"); box.tabs.append(tab); box.tabpanels.append(panel); ``` ### 调用 pdf.js 接口 ReaderInstance 对象的 `_iframeWindow` 属性是阅读器的 `window` 对象,也就是在网页版所看到的内容,它包含了整个 pdf 阅读器的 document 对象与 wrappedJSObject 字段。 通过调用 `._iframeWindow.wrappedJSObject` 可在阅读器命名空间外访问其局部变量,其中的方法有 `zoteroCopyImage` 和 `zoteroSaveImageAs` 等。同时他包含了 `PDFViewerApplication` 对象。 该部分源码在 [pdf-reader/src at master · Zotero/pdf-reader](https://github.com/zotero/pdf-reader/tree/master/src) ```javascript ._iframeWindow.wrappedJSObject.PDFViewerApplication.pdfViewer.currentPageNumber ``` 此外,通过注入脚本的方式可以直接访问 `PDFViewerApplication` 对象来操作阅读器:[chartero | chrome/content/reader.js](https://gitee.com/const_volatile/chartero/blob/master/chrome/content/reader.js) #### 案例 ##### 1. 获取 pdf 指定页面所有文字 以第一页为例,索引为 0: ```typescript const reader = Zotero.Reader.getByTabID(Zotero_Tabs.selectedID); const PDFViewerApplication = reader._iframeWindow.wrappedJSObject.PDFViewerApplication; await PDFViewerApplication.pdfLoadingTask.promise; await PDFViewerApplication.pdfViewer.pagesPromise; let pages = PDFViewerApplication.pdfViewer._pages; let pdfPage = pages[0].pdfPage; let items = (await pdfPage.getTextContent()).items; ``` 这里以 `item=items[0]` 为例: ```json { chars: Array(63) [ {…}, {…}, {…}, … ] dir: "ltr" fontName: "g_d0_f1" height: 6.376 str: "Ma, Z., Hu, X., Huang, L., Bi, J., Liu, Y., 2014." transform: [6.376, 0, 0, 6.376, 42.5197, 732.5289] width: 202.367864 } ``` 这里的 `item.chars` 记录了 `item.str` 的每个字符对应的渲染信息。除了宽高外,`item.transform` 还提供了 (`x=item.transform[4]`, `y=item.transform[5]`) 位置信息。这个位置以 pdf 页面左下角为原点。 根据 pdf 页面内的文字可以解析出所有参考文献,详见:[GitHub - MuiseDestiny/Zotero-reference: Zotero 插件,侧边栏显示正在阅读文献的所有参考文献](https://github.com/MuiseDestiny/zotero-reference) ## Zotero.Notes `Zotero.EditorInstance` 类是笔记编辑器的抽象;`Zotero.EditorInstanceUtilities` 对象包括了笔记中一些转换等基础功能。 源码位置:[chrome/content/Zotero/xpcom/editorInstance.js](https://github.com/zotero/zotero/blob/master/chrome/content/zotero/xpcom/editorInstance.js) `Zotero.Notes` 是所有 EditorInstance 实例的管理器。 源码位置:[chrome/content/Zotero/xpcom/data/notes.js](https://github.com/zotero/zotero/blob/master/chrome/content/zotero/xpcom/data/notes.js) ## Zotero\_Tabs Zotero 6 以后的版本引入了标签页(tab)。当打开 PDF 时,默认在新标签页打开。 源码位置:[chrome/content/Zotero/tabs.js](https://github.com/zotero/zotero/blob/master/chrome/content/zotero/tabs.js) ### 基本使用 通过 Zotero\_Tabs 访问当前打开的标签页。 #### 新增标签页 通过 `Zotero_Tabs.add` 方法新增标签页,例如 Better Notes 插件中的一段代码: ```typescript let { id, container } = Zotero_Tabs.add({ type: "betternotes", title: Zotero.locale.includes("zh") ? "工作区" : "Workspace", index: 1, data: {}, select: select, onClose: undefined, }); ``` 请注意此处的 type 将影响菜单栏的显示/隐藏。截至文档更新(2022.08.22),在离开标签时,自定义的标签类型不会被正确隐藏,但在进入标签页时会被显示(相关代码在 `ZoteroStandalone.switchMenuType`)。因此需要手动处理离开标签页时隐藏自定义标签的部分菜单。 ```typescript switchRealMenuBar(hidden: boolean) { // We only handle hide. The show will be handled by the ZoteroStandalone.switchMenuType document .querySelectorAll(".menu-type-betternotes") .forEach((el) => ((el as HTMLElement).hidden = hidden)); // Disable Zotero pdf export (document.getElementById("menu_export_files") as XUL.Element).disabled = !hidden; } ``` #### 标签页操作 通过 `select` / `jump` / `move` / `close` 等相关方法进行操作。 ```javascript Zotero_Tabs.select("zotero-pane"); ``` ## 文件操作 ::: info Todo 文件读写已迁移至 [IOUtils](https://firefox-source-docs.mozilla.org/dom/ioutils_migration.html) 和 [PathUtils](https://searchfox.org/mozilla-esr102/source/dom/chrome-webidl/PathUtils.webidl) 。 ::: ## Clipboard API Zotero 中关于剪切板的相关接口。由于 Zotero 目前基于 FireFox60,因此无法使用现代浏览器的剪切板接口。 样例代码为 Better Notes 插件提供的剪切板包装: ```typescript class CopyHelper { transferable: any; clipboardService: any; constructor() { this.transferable = Components.classes[ "@mozilla.org/widget/transferable;1" ].createInstance(Components.interfaces.nsITransferable); this.clipboardService = Components.classes[ "@mozilla.org/widget/clipboard;1" ].getService(Components.interfaces.nsIClipboard); } public addText(source: string, type: "text/html" | "text/unicode") { const str = Components.classes[ "@mozilla.org/supports-string;1" ].createInstance(Components.interfaces.nsISupportsString); str.data = source; this.transferable.addDataFlavor(type); this.transferable.setTransferData(type, str, source.length * 2); return this; } // Only Windows public addImage(source: string) { const io = Components.classes[ "@mozilla.org/network/io-service;1" ].getService(Components.interfaces.nsIIOService); const channel = io.newChannel(source, null, null); const input = channel.open(); const imgTools = Components.classes[ "@mozilla.org/image/tools;1" ].getService(Components.interfaces.imgITools); const buffer = NetUtil.readInputStreamToString(input, input.available()); const container = imgTools.decodeImageFromBuffer( buffer, buffer.length, channel.contentType, ); this.transferable.addDataFlavor(channel.contentType); this.transferable.setTransferData(channel.contentType, container, -1); return this; } public copy() { this.clipboardService.setData( this.transferable, null, Components.interfaces.nsIClipboard.kGlobalClipboard, ); } } ``` 使用样例: ```typescript new CopyHelper() .addText(html, "text/html") .addText(this._Addon.parse.parseHTMLToMD(html), "text/unicode") .copy(); ``` ## 弹出通知 ```javascript const popMsg = new Zotero.ProgressWindow({ closeOnClick: false }); popMsg.changeHeadline("[Error]", "", "Chartero"); popMsg.addDescription("----------"); let prog = new popMsg.ItemProgress("chrome://zotero/skin/cross.png", "No!"); prog.setProgress(100); // 默认 0 是灰色图标,100 是正常图标,其他是进度条 popMsg.addDescription('link'); // 指定父元素实现缩进 let prog1 = new popMsg.ItemProgress( "chrome://chartero/skin/bookmark.png", "hello", prog, ); popMsg.show(); popMsg.startCloseTimer(6666); // 毫秒 ``` --- --- url: /plugin-dev-guidereferenceupdate.md --- # 更新清单 `update.json` 列出了插件各版本插件兼容的 Zotero 版本及插件的更新地址。 ::: info Todo 待完善,请参考:[Updating your extension - Extension Workshop](https://extensionworkshop.com/documentation/manage/updating-your-extension/) ::: ```json { "addons": { "make-it-red@example.com": { "updates": [ { "version": "2.0", "update_link": "https://zotero-download.s3.amazonaws.com/tmp/make-it-red/make-it-red-2.0.xpi", "update_hash": "sha256:e5ac442c4a3cffc4ffec8b764673b7036d5984690978faa7df66d78b030761c2", "applications": { "zotero": { "strict_min_version": "6.999" } } } ] } } } ``` --- --- url: /csl-dev-guideglossary.md --- # 术语对照表 以下按照在文中出现的顺序罗列了本文翻译时对某些术语采取的译法,并给出其基本解释,便于读者对照理解。这些术语可能比较少见,或在本文中有特定的含义,其他涉及技术背景的术语已经在正文中给出解释,此处不再赘述。 ## 引注(citation) 在正文中标注「此处有参考文献」的标志,在不同的引用风格中表现为不同的文本,可能是引用的次序或被引用文献相关信息组成的简短文本。 ## 参考文献表(bibliography) 国标中称为「参考文献表」,亦有部分文献称之为「书目」,是集中展示被引文献详情的列表,可能位于章节末尾、全文末尾、每一页的页脚。 ## 引用格式(citation format) 对于「如何在文章中标示参考文献」的规范标准,特指一整个标准体系,如 GB/T 7714-2015,而不是诸如是「作者名需要大写」这样的具体规定。 ## 条目(item) 即 Zotero 中的「条目」,指对文献的相关信息的记录,条目中通常含有那些用于分类、引用的信息,并非指文献的内容本身。 ## 参考文献条目(bibliographic entry) 参考文献表的组成单位,即参考文献表中的项目,除了 `numeric` 复合风格之外,一个参考文献条目往往对应一篇被引用的文献。 ## 风格(style) 对一些相似的引用格式的统称,如 `in-text` 风格、`note` 风格等。 ## 样式(style) 特指 `CSL` 的 style 文件及其代码,是对引用格式的代码实现。注意区别于 Microsoft Word 中的「样式」,在 Microsoft Word 中,「样式」是指若干具体格式的集合。 ## 本地化文件(locale file) CSL 预置的一些文件,它用来将日期或[术语](#术语term)翻译为特定语言区域所采用的形式。 ## 术语(term) 在 `locale file` 有关的语境里,「术语」指那些出现在引文或参考文献条目中用于串起相关信息的固定短语,如「xx**等**」、「xx**编**」、「**载于**xx」中的术语就分别连接着著者、编者、出版物来源的信息。 ## 翻译(translation) 在 `locale file` 有关的语境里,「翻译」特指术语(term)在不同语言中的翻译。 ## 形式(form) 指词形,即词语在不同的语境中使用的不同形态。如名词的单复数形式、词语的动词/名词形式等、数量词数量形式和序数形式。 ## 日期成分(date-part) 即日期的组成成分,包括年、月、日。 ## 姓名成分(name-part) 即姓名的组成成分,包括姓、名、不可省略小品词、可省略小品词、后缀。 ## 名称(name) 泛指人名和机构名。 ## 姓名(name) 在强调姓名组成成分的语境中,「name」直接翻译为「姓名」。 ## 名字(name) 「名字」是「姓名」的同义词,特指人的名称,但不强调其组成成分。 ## 人名(personal name) 即指代个人的名称,含有姓名成分。 ## 书写系统(script) 指书面文字的体系,如中文、拉丁文、西里尔文等。 ## 替补(substitute) 在 `cs:names` 元素中,当首选的名称变量不存在时,可接替其位置渲染其他内容的子句。 ## 定位词(locator) --- --- url: /contributingbuild.md --- # 构建指南 此页面记录了本项目的完整构建步骤,主要针对喜欢本地开发的同学。 为了降低操作门槛,本指南所述操作步骤均尽可能使用了图形化界面。对于熟悉 Git 的同学,仍可使用自己喜欢的方式进行操作。 ## 项目概览 本文档使用 Markdown 语法编写,产生的 Markdown 文件托管在 GitHub 上,使用 VitePress 作为静态页面生成器将 Markdown 文件构建为 HTML,使用 Netlify 作为持续集成供应商。 目前仓库地址为 , ## 环境配置 ### 所需软件安装 本文的需要 Node.js 和 Git 安装在你的电脑上,后续步骤假定你已经安装这些程序且可以简单使用,若没有安装这些软件请跟随本小节指引完成安装。 为了方便编辑和提交,我们还推荐安装 `VS Code` 和 `GitHub Desktop` 两个软件。 :::: details 安装 Git 所有文档均使用 `Git` 进行版本控制。以下步骤假定 用户已安装 git。若未安装,可以使用以下命令安装或更新 git: ::: code-group ```bash [Fedora] sudo dnf install git ``` ```bash [Ubuntu/Debian] sudo apt install git ``` ```bash [macOS] brew install git ``` ```md [Windows] 打开 ,下载并安装 Git for Windows。 ``` ::: 安装完成后,还需设置个人信息。打开终端,运行以下命令 (将 `zotero-user` 和 `` 替换成个人对应的信息): ```bash # 设置用户姓名和邮箱 $ git config --global user.name "zotero-user" $ git config --global user.email "zotero-user@gmail.com" # 查看 ~/.gitconfig $ cat ~/.gitconfig [user] name = zotero-user email = zotero-user@gmail.com ``` ::: details Git 和 GitHub 学习资料 以下修改文档并提交的步骤中使用了 Git 的一些常用选项,可以参考以下资料学习更多用法: * [git 简明指南](http://rogerdudler.github.io/git-guide/index.zh.html) * [廖雪峰的 Git 教程](http://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000) * [GotGitHub](http://www.worldhello.net/gotgithub/index.html) * [How to Use Git and Git Workflows – a Practical Guide](https://www.freecodecamp.org/news/practical-git-and-git-workflows/amp/) * [Pro Git](https://git-scm.com/book/zh/) GitHub 相关资料: * [GitHub 中文文档](https://docs.github.com/cn/github) * [Understanding the GitHub flow](https://guides.github.com/introduction/flow/) ::: :::: ::: details 安装 Node.js 安装 Node. js:[Node.js 官网](https://nodejs.org/en) ::: ::: details 安装 VS Code ::: ::: details 安装 GitHub Desktop 安装 ::: ### 克隆和复制仓库 1. 复制 (fork) 仓库至个人 GitHub 帐号 点击项目主页 右上角的 Fork 按钮,将该项目复刻到个人 GitHub 账户下。 ![复刻仓库](../assets/images/contributing/fork-repo-1.png) ![复刻仓库 2](../assets/images/contributing/fork-repo-2-1.png) 复制完成后,个人 GitHub 帐号下便有了 仓库。 2. 克隆个人 GitHub 帐号下的复刻仓库到本地(复刻仓库默认是本地克隆仓库的远程 origin) 打开 VS Code,点击 `欢迎页面` 的 `克隆 Git 仓库…`,在弹出窗口中选中 `从 GitHub 克隆`,然后选择自己账户下的 fork 仓库,确认,克隆完成后根据提示打开文件夹。 ![克隆 Git 仓库](../assets/images/contributing/vsc-克隆git仓库.png) ![从 GitHub 克隆](../assets/images/contributing/vsc-输入仓库地址.png) ![选择仓库](../assets/images/contributing/vsc-选中需要克隆的仓库.png) ::: tip 如果你对 Git 或命令行不了解,可以考虑使用 [GitHub 客户端](https://desktop.github.com/) 或 VS Code 提供的图形化版本控制管理器作为命令行的替代。 ::: ### 安装依赖 通过下面的命令安装依赖项。 ```bash corepack enable pnpm install ``` ![安装依赖](../assets/images/contributing/build-安装依赖-1.png) ::: info 上述「环境配置」步骤只需在第一次修改代码时执行一次,一旦复制或克隆某仓库后,就无需再次复制或克隆。 ::: ## 修改文档 ::: tip 请参阅《使用代码空间修改》 该小节请参阅 [通过 GitHub Codespace 在线修改文档 #修改和提交](./github-codespace.md#2-修改和提交) 了解详情。 ::: :::: details 1. 在本地创建并切换至新分支,假定新分支名为 `pr-workflow`(分支名需简短、描述性且独特): ![创建新分支](../assets/images/contributing/build-创建新分支-1.png) 2. 启动开发服务器 使用以下命令启动开发服务器,如下图,开发服务器启动后,会给出几个本地链接,访问任一链接(通常为 Local)即可得到预览。 ```bash pnpm run docs:dev ``` ![启动开服务器](../assets/images/contributing/build-启动开发服务器-1.png) 开发服务器会监听所有 `.md` 文件的修改,当有文件发生保存时,服务器会自动更新预览并刷新网页。 ![开发服务器](../assets/images/contributing/build-dev-server-1.png) 3. 在新建分支中对文档做修改,修改过程中,可以随时在浏览器中检查修改效果 使用 Markdown 语法编写文档,如果你不清楚本文档所用的 Markdown 语法,请参阅 [Markdown 语法](markdown.md)。 4. 提交 commit 在左侧「源代码管理」选项卡中,输入一个简短的提交描述,点击提交,然后将修改推送到线上。 ![提交修改](../assets/images/contributing/build-提交修改-1.png) ![推送修改](../assets/images/contributing/build-推送修改-1.png) ::: tip 如前所述,提交命令也可以在 GitHub Desktop 中完成。 ::: ::: warning 不建议直接在 main 分支中进行修改和提交,这可能会给你自己造成麻烦。 仓库对 main 分支开启了推送保护,对 main 分支的修改只能通过 Pull Request 进行,无法直接 Push。 ::: :::: ## Pull Request 1. 提交 PR 进入个人 GitHub 帐号下的复制仓库(即 )。 一般 GitHub 会自动提示有可提交的 PR,点击「Compare & pull request」,输入此 PR 的标题和具体描述, 最后点击「Create pull request」即可。 2. 审核、评论以及修改 PR 文档维护者收到 PR 后,会对代码进行审核、评论以及修改,并决定是否接受(merge)或结束该 PR。 PR 发起后,Netlify 机器人会自动部署一个预览版本,可以在这里查看预览。 ![netlify 预览 pr](../assets/images/contributing/build-pr预览-1.png) 提交的 PR 在接收前可能需要读者多次修改。这种情况并不要创建新 PR,只需继续本地 pr-workflow 分支中修改并提交,然后再次推送 pr-workflow 分支至远程 origin 即可,修改将自动添加到已提交的 PR 中。 推送新的修改后,可以选择在该 PR 中留言,以通知维护者已提交新的修改。 3. PR 被接受并合并至官方 main 分支后,则可以更新 main 分支,并删除 pr-workflow 分支 ![更新 main 分支](../assets/images/contributing/build-更新main分支-1.png) ## 其他的脚本 ### pnpm run docs:build 构建脚本,用于将 markdown 构建为网页。 贡献者可以在提交前运行一次,查看是否有报错。 一般情况下,图片路径错误、链接错误会导致报错。 ### pnpm run lint:fix 运行 Markdown Lint 和 Prettier,并修复可以自动修复的错误。 ## 常见问题 ### PNPM 命令不存在 请先使用下面命令安装 pnpm: ```bash corepack enable ``` ### PNPM 版本不正确 请先使用下面命令安装 pnpm: ```bash corepack enable ``` ### 其他问题 当无法启动预览时,请在确保本地仓库是最新的前提下,重新运行以下两个命令: ```bash corepack enable pnpm i ``` 若仍存在问题,可以在 ISSUE 开贴讨论。 --- --- url: /user-guidefaqsoff-campus-access.md --- # 校外访问的常见问题 本文整理了一些关于校外访问文献资源的常见问题及解决方法。你可以在右侧大纲栏(部分窄屏设备也可能在顶部「页面导航」)或下面的目录快速定位到你需要的内容。 \[\[TOC]] ## 校外访问的基本概念 校外访问是指在不连接校园网的情况下,通过特定工具或服务访问学校购买的文献资源。常见的校外访问方式包括: * **数据库官方提供的外部访问**:一些数据库提供的校外访问服务(如中国知网的高校/机构外部访问系统、ScienceDirect 的通过您的组织访问)。该方法通常不限制网络环境,需要学校统一认证登录的账号密码进行身份认证。 * **校外访问系统**:学校提供的 VPN 或 WebVPN 服务。 * VPN:通过客户端加密连接虚拟接入校内网络,全局代理所有流量,可访问所有内网资源(如数据库、教务系统),需下载客户端。 * WebVPN:通过浏览器访问特定网页链接,仅代理浏览器内的网页请求,无需客户端但功能受限(仅支持部分资源且无法代理其他软件)。 * **学校镜像站**:部分学校提供的文献数据库镜像站。 此外,还有一些其他的资源获取方式: * **社会图书馆镜像站**:部分社会图书馆提供的文献数据库镜像站,如浙江图书馆、国家图书馆等单位提供的镜像站。 * **第三方文献资源站**:如 Unpaywall、Sci-Hub 等站点,提供免费获取文献的服务。 * **文献互助平台**:如科研通等平台,用户可以在上面分享和请求文献。 ::: details 使用校外访问服务时抓取失败的常见原因 通过校外访问服务访问数据库可能会导致 Zotero 无法正常抓取文献信息或附件,主要原因包括: * **网址变更**:部分校外访问工具和镜像站会修改原始网址,导致 Zotero 无法识别网址,从而无法调用正确的转换器进行抓取。 * **页面内容变更**:部分校外访问工具和镜像站会修改原始页面内容,导致针对源站开发的转换器无法适用于该站。 * **缺少相应的转换器**:部分第三方文献资源站和文献互助平台可能没有专为其开发的转换器,导致 Zotero 无法从页面上抓取条目信息或附件。 * **兼容性问题**:某些校外访问工具访问数据库时可能因兼容问题无法下载文献,具体表现为无限加载或无限人机验证。 * **风控限制**:大量抓取可能触发目标网站的风控机制,导致抓取失败,具体表现为人机验证。 * **网络问题**:网络不稳定或访问速度慢可能导致网站访问和抓取失败,具体表现为超时或连接错误。 此外,学校的镜像站以及社会图书馆的镜像站可能与数据库官方的页面内容不一致,导致为源站开发的转换器可能无法完美兼容这些镜像站。而第三方的文献资源站和文献互助平台可能没有专为其开发的转换器,导致 Zotero 无法从页面上抓取条目信息或附件。 ::: ## 解决校外访问抓取失败的问题 ### 更新 Zotero 的转换器 确保 Zotero 的转换器为最新版本。详细操作请参考:[更新抓取文献信息的转换器](./update-translators)。 ::: tip 提醒 无论您是否通过校外访问抓取文献条目,都建议定期更新 Zotero 的转换器,确保转换器能够适配数据库网站的最新变动。 ::: ### 使用数据库官方提供的外部访问服务 数据库官方提供的外部访问服务通常是最稳定的校外访问方式。该方法不会修改页面网址,无需转换器做特殊兼容,无需做特殊设置,且可在国外网络环境下使用。一般情况下,只要数据库官方支持通过你的学校/机构进行外部访问,就建议优先使用这一方式。 各个数据库的校外访问入口通常在数据库的登录页面中,也可能在文献的详情信息也上(通常会叫做 `Log in via an institution`、`Institution Login`、`Institutional Sign In` 等等)。以下整理了一些常见学术数据库的校外访问入口,供参考使用: ::: details 常见学术数据库的校外访问入口 #### 中文数据库 * **中国知网**\ 使用 [中国知网高校/机构外部访问系统](http://fsso.cnki.net)。 * **万方数据**\ 使用 [万方数据机构外部访问系统](http://fsso.wanfangdata.com.cn)。 * **维普期刊**\ 访问 [维普期刊官网](https://qikan.cqvip.com/),然后点击页面右上角的「登录」按钮,根据实际情况选择「第三方登录」中的「CARSI 馆外登录」或「中国科技云登录」。 #### 英文综合数据库 * **Elsevier(ScienceDirect)**\ 使用 [ScienceDirect 通过您的组织访问](https://www.sciencedirect.com/user/institution/login)。 * **IEEE Xplore**\ 访问 [IEEE Xplore 官网](https://ieeexplore.ieee.org),然后点击页面上的「Institutional Sign In」。 * **ProQuest**\ 访问 [ProQuest 官网](https://search.proquest.com),然后点击页面上的「通过您的图书馆登录以访问更多功能」。 * **PubMed**\ 无需使用校外访问,直接访问 [美国国立生物技术信息中心官网](https://pubmed.ncbi.nlm.nih.gov)。注意,PubMed 只是检索网站,不直接提供 PDF 附件下载。下载附件时可能仍然需要登录文献所在的数据库。 * **SpringerLink**\ 使用 [Springer 机构访问](https://wayf.springernature.com/?redirect_uri=https%3A%2F%2Flink.springer.com)。 * **Taylor & Francis**\ 使用 [Taylor & Francis Shibboleth sign in](https://www.tandfonline.com/action/ssostart?redirectUri=%2F)。 * **Web of Science**\ 无需使用校外访问,直接访问 [Web of Science 官网](https://webofscience.clarivate.cn/)。注意,Web of Science 只是检索网站,不直接提供 PDF 附件下载。下载附件时可能仍然需要登录文献所在的数据库。 * **Wiley Online Library**\ 使用 [Wiley 机构登录](https://onlinelibrary.wiley.com/action/ssostart?redirectUri=%2F)。 ::: ### 使用学校的 VPN 通过学校的 VPN 客户端连接校园网是较为的校外访问方式。该方法可以全局代理所有流量,以校园网环境访问所有内网资源(如数据库、教务系统),需要下载客户端,但不需要额外的配置。 ### 使用学校的 WebVPN 如果通过学校的 WebVPN 访问数据库,实际访问的链接会变得与数据库官网的原始链接不同,很有可能导致 Zotero Connector 无法为该网站正确匹配到相应的转换器,最终只能抓到一个网页快照。 如果您需要使用学校的 WebVPN 访问数据库,请阅读下面的教程配置 Zotero Connector 选项中的「Proxies」。 ::: tip 提醒 Zotero Connector 的「Proxies」选项配置较为繁琐,建议优先使用其他校外方式途径访问数据库。 如果您仍需使用 WebVPN 访问数据库,请仔细阅读下面的 Zotero Connector 代理配置教程,正确配置 Zotero Connector 的「Proxies」选项,确保 Zotero Connector 能够正确识别经 WebVPN 代理后的页面链接。 ::: :::: details Zotero Connector 代理配置教程 ::: warning 注意 Apple Safari 浏览器的 Zotero Connector 目前不支持配置代理规则。macOS 用户建议使用 Microsoft Edge、Google Chrome 或 Mozilla Firefox 浏览器抓取文献。 ::: #### 配置步骤 不同的 WebVPN 的链接结构可能不同,在配置 Zotero Connector 的代理规则时,需要根据实际的 WebVPN 代理链接的结构特点进行处理。这里以一篇万方官网的期刊文章为例进行说明。 假设原始链接为:`https://d.wanfangdata.com.cn/periodical/hjkxyj202501001` 1. **分析链接结构** 首先,需要分析原始链接的结构,确定协议、主机和路径部分。示例原始链接的结构如下: | 结构项 | 内容 | | ---------------- | ---------------------------- | | Protocol(协议) | `https://` | | Host(主机) | `d.wanfangdata.com.cn` | | Path(路径) | `periodical/hjkxyj202501001` | 1. **确定代理链接的结构特点** WebVPN 代理通常有两种主要类型: * **类型 1**: 代理后链接中不保留原始 Host * 例如:`https://portal.sclib.cn/interlibSSO/goto/91/+c9v-me-mfc-s-9bnl9bm/periodical/hjkxyj202501001` * 这种代理后的链接中未包含原始 Host(`d.wanfangdata.com.cn`)。 * **类型 2**: 代理后链接中保留了编码后的原始 Host * 例如:`http://d-wanfangdata-com-cn-s.ivpn.hit.edu.cn:1080/periodical/hjkxyj202501001` * 对于这一种代理,原始链接的 Host 被编码后嵌入到代理链接的域名中。(`d.wanfangdata.com.cn` 被编码为 `d-wanfangdata-com-cn`添加到了代理后的链接中)。 2. **创建代理规则** * 在 Zotero Connector 浏览器扩展中,进入「Proxies」→「Configured Proxies」 * 点击 `+` 按钮添加新规则 3. **填写代理规则参数** * **Login URL Schema**: 填写登录 WebVPN 的登录入口链接。非必填项。 * **Proxied URL Schema**: 填写代理链接的结构。比较 WebVPN 代理链接和原始链接的结构,将代理链接中与原始链接相同的部分使用以下替换符来表示: * `%h`: 用于替换原始链接的 Host 部分(Host 中的 `.` 会被替换为 `-`) * `%p`: 用于替换原始链接的 Path 部分 * `%u`: 用于替换完整的原始 URL * **Hostnames**: 点击 `+` 按钮,然后在「Hostname」中输入此规则适用的网站域名(如 `d.wanfangdata.com.cn`) 4. **适配更多网站** * 如果不同网站的 Proxied URL Schema 相同,则该代理规则可用于多个网站,可直接在「Hostnames」中添加更多域名; * 如果不同网站代理链接中未被替换的部分存在不同,需配置的 Proxied URL Schema 也就不同,则需在「Configured Proxies」创建多条规则。 ![Zotero Connector Proxies 哈工大](../../assets/images/zotero-connector-proxies-hit.png) #### 常见 WebVPN 代理的参数示例 下面,我们为两种常见的 WebVPN 代理类型给出相应的配置示例。 ::: details WebVPN 代理类型 1:代理链接不保留原始 Host 在这种类型下,代理后的链接完全使用新的域名。 **示例链接** * 原始链接:`https://d.wanfangdata.com.cn/periodical/hjkxyj202501001` * 代理后链接:`https://portal.sclib.cn/interlibSSO/goto/91/+c9v-me-mfc-s-9bnl9bm/periodical/hjkxyj202501001` **配置参数确定方法** 1. 拆分原始链接 | 结构项 | 内容 | | -------- | ---------------------------- | | Protocol | `https://` | | Host | `d.wanfangdata.com.cn` | | Path | `periodical/hjkxyj202501001` | 2. 比较原始链接和代理后链接的结构,确定需要替换的部分 * 原始链接中的 Host 部分未在代理后链接中出现,因此 `%h` 不需要使用; * 原始链接中的 Path 部分 `periodical/hjkxyj202501001` 在代理后链接中保持不变,这部分内容可以用 `%p` 表示; * 代理后链接中没有用到完整的原始 URL,因此 `%u` 不需要使用。 3. 应用替换符构建 Proxied URL Schema 将代理链接中可替换的部分替换为对应的替换符,其余部分直接保留原有内容,拼接 Proxied URL Schema。 * 拆分代理后链接中可替换的部分:`https://portal.sclib.cn/interlibSSO/goto/91/+c9v-me-mfc-s-9bnl9bm/` + `periodical/hjkxyj202501001` * 使用替换符号替换可替换的部分:`https://portal.sclib.cn/interlibSSO/goto/91/+c9v-me-mfc-s-9bnl9bm/` + `%p` 4. 配置参数 * Login URL Schema(自行查询登录页面链接,非必填): `https://portal.sclib.cn/interlibSSO/main/index.jsp` * Proxied URL Schema: `https://portal.sclib.cn/interlibSSO/goto/91/+c9v-me-mfc-s-9bnl9bm/%p` * Hostnames: 点击 `+` 按钮,在「Hostname」中输入 `d.wanfangdata.com.cn`,表示此规则仅对万方数据生效。 5. 为其他网站添加更多的代理规则 比较不同网站代理后链接,可以发现这一类的代理后链接中未被替换的部分存在不同,因此不能通过直接添加 `Hostnames` 兼容更多网站。如果需要为其他网站添加代理规则,需要重新分析其他原始链接和 WebVPN 代理后的链接之间的对应关系,配置更多代理规则。具体步骤与上述相同。 ![Zotero Connector Proxies 四川图书馆](../../assets/images/zotero-connector-proxies-sclib.png) ::: ::: details WebVPN 代理类型 2:代理链接保留原始 Host 在这种类型下,原始链接的 Host 被编码后嵌入到代理链接的域名中。 **示例链接** * 原始链接:`https://d.wanfangdata.com.cn/periodical/hjkxyj202501001` * 代理后链接:`http://d-wanfangdata-com-cn-s.ivpn.hit.edu.cn:1080/periodical/hjkxyj202501001` **配置参数确定方法** 1. 拆分原始链接 | 结构项 | 内容 | | -------- | ---------------------------- | | Protocol | `https://` | | Host | `d.wanfangdata.com.cn` | | Path | `periodical/hjkxyj202501001` | 2. 比较原始链接和代理后链接的结构,确定需要替换的部分 * 原始链接中的 Host 部分 `d.wanfangdata.com.cn` 在被编码后变为 `d-wanfangdata-com-cn`(Zotero Connector 会自动将 `.` 替换为 `-`),代理后链接中的相应内容可以用 `%h` 表示; * 原始链接中的 Path 部分 `periodical/hjkxyj202501001` 在代理后链接中保持不变,这部分内容可以用 `%p` 表示; * 代理后链接中没有用到完整的原始 URL,因此 `%u` 不需要使用。 * 代理后链接中编码后的 Host 之后有一个 `-s` 的部分(`d-wanfangdata-com-cn-s`),这部分说明原始链接的协议是 `https`,如果原始链接的协议是 `http`,则没有这一部分。这一部分无法用替换符表示,需要在 Proxied URL Schema 中直接保留。 * 无论原始链接的 Protocol 是 `http` 还是 `https`,代理后链接的协议都是 `http`,因此在 Proxied URL Schema 中需要将协议部分写为 `http://`。 3. 应用替换符构建 Proxied URL Schema 将代理链接中可替换的部分替换为对应的替换符,其余部分直接保留原有内容,拼接 Proxied URL Schema。 * 拆分代理后链接中可替换的部分:`http://` + `d-wanfangdata-com-cn` + `-s` + `.ivpn.hit.edu.cn:1080/` + `periodical/hjkxyj202501001` * 使用替换符号替换可替换的部分:`http://` + `%h` + `-s` + `.ivpn.hit.edu.cn:1080/` + `%p` 4. 配置参数 * Login URL Schema(自行查询登录页面链接,非必填): `https://ivpn.hit.edu.cn` * Proxied URL Schema: `http://%h-s.ivpn.hit.edu.cn:1080/%p` * Hostnames: 点击 `+` 按钮,在「Hostname」中输入 `d.wanfangdata.com.cn`,表示此规则对万方数据生效。 5. 为其他网站添加更多的代理规则 这种模式的 WebVPN 可以为多个不同的网站仅使用一条代理规则。因为无论访问哪个站点,代理链接的结构都是相同的,未被替换符替换的部分保持不变。仅有 Protocol 为 `http` 时需要另外添加一条去掉 `-s` 的规则(目前绝大多数网站已经使用 `https` 协议)。如果需要为其他网站添加代理规则,只需在「Hostnames」中添加更多的域名即可。 例如,如果您还需要访问 IEEE Xplore,则可以直接在 Hostnames 中添加 `ieeexplore.ieee.org`,表示此规则也适用于 IEEE Xplore。 ![Zotero Connector Proxies 哈工大](../../assets/images/zotero-connector-proxies-hit.png) ::: ::: tip 提醒 不同学校/机构的 WebVPN 的链接结构可能不同,也可能出现其他情况,这里只是罗列了两种国内常见的 WebVPN 样式。您需要分析不同网站的 WebVPN 代理链接和原始链接之间的对应关系,根据配置步骤配置相应的代理规则。 ::: :::: ## 使用其它方式添加条目 如果校外访问的方式无法抓取文献的元数据,或者在使用校外访问时无法抓取到 PDF 附件,您可以使用其他方式获取条目和附件。 * 通过附件添加条目。您可以通过校外访问服务手动下载 PDF 附件,然后[通过附件检索文献元数据](../add-items#通过附件添加条目-推荐)。通过附件检索元数据时无需使用校外访问服务,也无需拥有 PDF 附件的下载权限。 * 分开获取条目和 PDF 附件。Zotero Connector 在抓取文献元数据时无需拥有 PDF 附件的下载权限。换言之,即便不适用校外访问,也可以通过 Zotero Connector 直接在数据库官网抓取文献的元数据。抓取完成后,再单独通过校外访问下载 PDF 附件,并将其[添加到抓取到的条目中](../add-attachments#为条目添加附件)。添加条目的可用方法详见[添加条目教程](../add-items)。 --- --- url: /user-guideadd-items.md --- # 添加条目 本节描述了在 Zotero 中添加条目(例如书籍、期刊文章、网页等)的各种方法。要了解有关添加附件(例如 PDF 或图像)的更多信息,请参阅 [添加附件](./add-attachments.md) 页面。 ## 条目与附件 在使用 Zotero 之前,我希望可以引入几个术语: ### 条目 Item Zotero 的基本文件单元,用来表示一篇论文、一本书等的题录信息,引用时使用的条目中储存的信息。下面是一些常见的条目类别: | 图标 | 类型 | | :---------------------------------------------------------: | :------: | | | 默认 | | ![webpage](../assets/icons/item-type/webpage.svg) | 普通网页 | | ![journal](../assets/icons/item-type/journal-article.svg) | 期刊文章 | | ![会议论文](../assets/icons/item-type/conference-paper.svg) | 会议论文 | | ![thesis](../assets/icons/item-type/thesis.svg) | 学位论文 | | ![书籍](../assets/icons/item-type/book.svg) | 图书 | ### 附件 Attachments 附件,通常是文件,例如论文的全文 PDF/Ebook、补充材料等。常见的附件包括: * PDF 附件 ![icon-pdf.png](../assets/icons/item-type/attachment-pdf.svg) * Ebook 附件 ![icon-epub.png](../assets/icons/item-type/attachment-epub.svg) * 笔记附件 ![icon-笔记附件.png](../assets/icons/item-type/note.svg) * 网页快照 ![icon-网页快照.png](../assets/icons/item-type/attachment-snapshot.svg) 附件既可以作为独立项添加,也可以作为常规 Zotero 条目的子项添加。一般来说,文件当做条目的子项添加。当一篇文献只有附件而没有条目的时候是不能被成功引用的,而一篇文献有条目信息而没有附件时,并不影响正常的引用。 ## 通过浏览器添加条目 ::: tip 使用这种方法需要确保以安装浏览器扩展 Zotero Connector。如未安装,请参考:[Zotero 下载与安装](install.md) 。 ::: 通过浏览器添加条目是最方便的途径之一,也是 Zotero 的特色功能之一。 当所在的网页呈现出不同的内容类型时,Zotero Connector 会显示不同的图标(各种类别的图标见 [#条目-item](#条目-item))。例如,如果打开的是一篇期刊文章,那么图标就会变成下图(红框圈出)。 ::: warning ⚠ 避免批量抓取文献 无论何时,请避免进行大量的文献抓取操作,严重时可能导致封禁! ::: ![从浏览器导入条目](../assets/images/从浏览器导入条目.png) 点击该图标,将在网页右上角显示如下的对话框,选择保存的合集位置,添加标签,即可将网页对应的文献的元数据录入 Zotero: ![从浏览器添加条目-对话框](../assets/images/从浏览器添加条目-对话框.png) ::: tip ScienceDirect 需要手动完成反爬虫验证 ScienceDirect 增强了反爬虫机制,这限制了 Zotero 的抓取功能,Zotero 7 中针对该措施推出了一项新功能。当你尝试抓取 ScienceDirect 上的文章时,Zotero 会显示 ScienceDirect 的验证码页面。如果你完成了验证码,Zotero 则会完成 PDF 的下载。 ::: 此时打开 Zotero,将会自动定位到保存时选择的合集: ![添加条目后信息窗格](../assets/images/添加条目后信息窗格.png) :::: info 尽量在文献详情页抓取 在文献搜索界面或阅读界面进行条目抓取非常容易失败,请在文献的详情页(如下)进行条目的抓取。 ::: details 典型的详情页示例 ![文献详情页](../assets/images/update-translators-文献详情页1.png) ![文献详情页](../assets/images/update-translators-文献详情页2.png) ::: :::: ::: tip Connector 抓取中文文献能力依靠中文 Translator 支持,更新 Translator 请参考:[如何更新 Translator](./faqs/update-translators.md)。 Connector 抓取文献错误解决:[从浏览器抓取条目时发生错误 / 抓取时不能自动下载 PDF / 无法自动给添加的 PDF 附件创建条目](https://zotero.yuque.com/staff-gkhviy/zotero/mribmi?view=doc_embed) 如果抓取失败且尝试了上述办法仍然不能解决,请手动下载 PDF 附件并通过附件添加条目。 ::: ## 通过附件添加条目(推荐) 对于已有 PDF 文件的文献,可以通过将 PDF 文件拖拽到 Zotero 中来添加这篇文献的附件。添加附件后,Zotero 会自动通过 PDF 来识别文献 —— 英文文献通常识别 PDF 文件的元数据,中文文献则识别文件名(中文文献文件识别能力由 [茉莉花](./plugins/jasminum.md) 插件提供)。 ::: info 小提示 不管是中文文献还是英文文献,都 **存在一定的概率无法成功匹配到信息并自动创建条目** 。如果遇到问题了,还是 **建议回到期刊官网的论文详情页抓取信息并创建条目** ,然后将 PDF 文件以附件的形式添加到该条目上(将附件拖到该条目上即可,但不要拖到条目之间的间隙里)。如果 Zotero 确实不支持抓取你正在使用的网站,你也可以采用后文的进阶方法创建条目。 如果您通过附件添加条目信息,建议您在添加后检查每一个条目的元数据。这一功能自动匹配的元数据可能存在错误,建议人工核对后再使用。 ::: ### 英文文献附件自动识别 很多英文文献的 PDF 附件中带有论文的元数据,而 Zotero 也支持通过 PDF 附件中的元数据自动抓取文献信息并自动创建副条目。具体操作如下: 1. 从网页上下载好文献的 PDF 附件。 2. 将 PDF 附件 直接拖入 Zotero 文献列表中的空白区域。 ::: details 列表中没有空白区域了怎么办? 如果页面上没有空白区域了,可以 将附件拖到任意两个条目中间的间隙处,此时相邻条目间隙处会出现一个横线,如上图所示。请不要将附件直接拖到条目上,因为拖到条目上是另一个功能:将这一文件作为附件添加到该条目中。 ![拖入附件](../assets/images/add-attachment.webp) ::: 3. 此时,界面右上角同步按钮旁会多显示一个图标,这意味着 Zotero 正在检索并匹配这一条目信息。 ![获取元数据](../assets/images/get-metadata-en1.webp) 4. 匹配完成后,Zotero 会自动使用元数据创建父条目,并将这一 PDF 文件作为附件添加到新生成的条目中。 ![获取元数据成功](../assets/images/get-metadata-en2.webp) :::: details 重新抓取外文 PDF 元数据 如果你 **之前添加的外文附件未能自动创建父条目** ,你也可以使用这一功能来重新 **手动触发一次检索匹配** : 1. 右键点击 **不附属于任何条目的 PDF 附件** 。 2. 点击 检索元数据。 ![检索元数据](../assets/images/retrieve-metadata.jpg){width=60%} Zotero 会弹出一个元数据检索窗口显示检索进度。如果检索完成后仍有部分文件检索失败,这意味着 Zotero 无法为这一文献自动检索元数据,请使用其他方法获取文献元数据。 ![元数据检索窗口](../assets/images/retrieve-metadata-finished.jpg){width=60%} ::: tip 请注意,这一功能仅对不属于任何条目的附件文件有效。如果这一附件已经有了条目了,也就不能重新触发抓取了。右键菜单里不会出现「检索元数据」按钮。 ::: :::: ### 中文文献附件自动识别 ::: tip 中文 PDF/CAJ 识别依赖[茉莉花](./plugins/jasminum.md)插件。如果对中文文献使用 Zotero 自带的「检索元数据」功能,检索大概率会失败,或识别出一个英文条目。 ::: 中文论文的 PDF/CAJ 附件中通常并没有完善的论文的元数据,Zotero 本身也并不支持为中文文献抓取元数据。 对于中文文献,茉莉花(Jasminum)插件 可以 通过 **文件名** 自动检索元数据并创建条目。 **添加附件的方式与英文文献相同** ,文献添加后茉莉花会自动检索文献、创建条目并将附件移动到条目中。 ![获取元数据成功](../assets/images/get-metadata-cn1.jpg) 如果你没有安装茉莉花,请前往 [茉莉花](./plugins/jasminum.md) 了解详情。关于什么是插件,请参阅 [关于插件](./plugins/about-plugin.md)。 并保证你的**茉莉花插件**、**转换器/Translator**都为最新版。更新转换器请参考:[更新中文转换器](./faqs/update-translators.md#步骤-2-更新中文转换器) :::: details 重新抓取中文 PDF/CAJ 元数据 如果你 **之前添加的中文附件未能自动创建父条目** ,你也可以使用这一功能来重新 **手动触发一次检索匹配** : 1. 右键点击 **不附属于任何条目的 PDF/CAJ 附件** 。 2. 点击「元数据抓取」,然后点击「抓取期刊元数据」。 ![抓取知网元数据](../assets/images/get-metadata-cnki.jpg) ::: tip 请注意,这一功能仅对不属于任何条目的附件文件有效。如果这一附件已经有了条目了,也就不能重新触发抓取了。右键菜单的「小工具」里只会有「更新知网引用数“的功能。 ::: :::: ::: info 选择正确的抓取结果 如果你的文献有多个匹配结果,你可以选择其中一个来创建条目。请点击正确的匹配结果前的复选框,然后点击「确认」按钮即可。 ![选择正确的抓取结果](../assets/images/get-metadata-cnki-choose.jpg) ::: ::: info 对于 Zotero 6 用户 由于 Zotero 6 上的茉莉花插件已经基本停止维护,在 Zotero 6 上使用本功能很可能会遇到兼容问题抓取失败。建议您在做好[备份](./backup.md)后,尽快升级到 Zotero 7,然后安装最新版的[茉莉花](./plugins/jasminum.md)插件为中文 PDF 抓取期刊元数据。 升级 Zotero 7 正式版的步骤和常见问题的解答请阅读:[你好,Zotero 7](/blog/posts/hello-zotero-7)。 ::: 由于为中文文献抓取知网元数据时需要根据文件名检索文献信息,这一功能对文件名的要求较高。具体要求请看如下说明: 1. 文件名的格式完全符合茉莉花插件设置中的格式(中文文件名最好为: `标题_第一作者.pdf` 或 `标题_第一作者.caj`)。不是该命名格式的文件可能会识别失败。 ::: details 修改文件名识别模板 文件名的命名格式(用于匹配导入附件的文件名中的文献信息)可以在「Zotero 设置」中「茉莉花」插件的设置中的「中文元数据抓取设置」进行修改。这里 **默认的「标题」识别模板适用于知网上直接下载下来的文件。** 如果您的文件名不规范,或者不知道如何设置合适的模板,您也可以将识别模式设置为「智能识别」。 ![文件名格式](../assets/images/get-metadata-cnki-template.jpg) ![智能识别文件名格式](../assets/images/get-metadata-cnki-template-auto.jpg) ::: 2. 标题/姓名内容中不含(以下划线为代表的)特殊标点符号(可以尝试将这些符号替换为空格再尝试检索匹配) 3. 文件名没有被添加额外的内容(如重复文件自动添加的编号或 xx 看图王一类的无关信息)。 如果文献名称比较特别,或文件名里有标点,或者文件名被编辑过,都很有可能会匹配失败并报错。如下图所示: ![错误文件名](../assets/images/get-metadata-cnki-error.jpg) 如果因附件名称不规范导致抓取失败,建议你去网页上检索这篇文献并抓取文献信息(元数据),再把这一附件拖入刚刚抓好的文献条目里。 你也可以先将文件名更改成符合前面规定的样子,在 Zotero 中先选中 PDF 附件,然后去右边栏中编辑 Zotero 中显示的附件名,然后再尝试前面提到的手动触发检索匹配: ![重命名附件](../assets/images/rename-attachment.jpg) ::: warning 请不要一次性大批量导入文献 请务必注意,如果一次性导入的文献过多, **自动检索元数据过于频繁依然可能导致被知网风控** 。如果需要导入的文献很多,建议分多次进行,每次仅少量导入一小部分文献。 ::: ## 通过标识符添加条目 如果已知文献的 ISBN、DOI、PMID 或 arXiv ID 等标识符,则可以通过这些标识符将文献导入到 Zotero 中。 在 Zotero 中,点击 ![通过标识符添加条目图标](../assets/icons/toolbar-lookup.png),输入标识符,如 DOI: 10.1016/j.cej.2020.125798,然后回车,则对应的文献就会被导入到库中。 如果要一次输入多个标识符,在输入第一个标识符后按 Shift + Enter 会进入多行模式,随后输入其余标识符(每行一个),并通过 Enter 换行。输入完成后,再按 Shift + Enter 即可一次导入所有项目。 ![使用标识符导入条目](../assets/images/使用标识符导入条目.png) ::: tip 这一功能对中文文献(论文、书籍等)基本无效。请使用其他方式为中文文献添加条目。 ::: ## 由通用格式的引用信息导入(通用方法) 大多数学术网站均提供了将文献信息导出为通用格式的功能。如果 Zotero Connector 无法直接从网页抓取文献信息,可以试试从网站上导出通用格式的引用信息,然后再在 Zotero 直接导入这一引文信息,最后再手动将附件附在导入的条目上。这里有 Zotero 支持导入的格式列表: [How do I import BibTeX or other standardized formats?](https://www.zotero.org/support/kb/importing_standardized_formats) ::: tip 本方法可以用来从网站/其他软件批量导出/迁移文献信息至 Zotero。 ::: ::: warning 请注意,此方法导入的**只有文献信息,是不会包含附件的。** * 对于 **外文** 文献:你可以右键点击导入后的条目,然后点击「找到可用的 PDF」按钮,由 Zotero 查找可用的附件。如果你安装有 Sci-Hub 插件,也可以借助该插件来补充附件。 * 对于 **中文** 文献:知网以外的中文文献基本没有自动补充附件的可能。 **请尽量避免批量为多个条目抓取附件!** 批量抓取可能导致你被风控或封禁(特别是知网)。 ::: 这里以一篇万方上的学位论文为例简要介绍一下这一方法: 1. 打开论文的详情页,点击 `引用` 按钮; 2. 选择一个 Zotero 支持的通用格式; ![从网站导出通用格式的文献数据](../assets/images/importing_standardized_formats_1.webp) 3. 下载包含引用信息的文件/复制包含引用信息的文本(具体操作因网站不同而略有区别); 4. 在 Zotero 文献列表页面点击「文件/File」->「导入/Import」或 `从剪贴板导入/Import from Clipboard` (根据你的实际情况选择使用哪个功能); ![点击导入](../assets/images/importing_standardized_formats_2.webp) 5. 根据界面提示完成导入(这里以通过文件导入为例演示); ![从文件导入](../assets/images/importing_standardized_formats_3.webp){width=60%} ![选择导入的文件](../assets/images/importing_standardized_formats_4.webp){width=60%} ![设定从文件导入的选项](../assets/images/importing_standardized_formats_5.webp){width=60%} 6. 导入完成后,该条目会混入文库中。你可以在左边栏分类列表最下面的 `未分类条目/Unfiled Item` 中按照年份排序来方便地找到刚刚导入的条目,将其拖入你需要的分类中: ![找到导入的文献](../assets/images/importing_standardized_formats_6.webp) ::: tip 1. 这样导入基本意味着无法自动抓取附件(毕竟,对于好抓取附件的网站,也不会这么难导入)。你需要手动下载附件,然后将附件添加到这一条目上。详见[添加附件教程](./add-attachments.md); 2. 不同导出格式里的信息可能略有差异,而且可能都不完整甚至有错,你可以后续自己手动编辑右边栏中的 `信息/Info` 进行调整; > 以万方为例, **RefWorks** 格式导入的结果中 `分类/Type` 信息是分类号(TP311.52),而不是学位类型(硕士/博士); **EndNote** 格式的结果中将导师姓名也写入了作者列表,而且将两个导师的姓名直接写成了第二作者的姓和名; **Bibtex** 格式的结果中没有摘要,而且分类写为了硕士论文。 3. 你也可以去百度学术这一类的受支持的通用检索网站抓取/导出引用信息。 4. 有条件的话尽量还是直接从网页上抓取,毕竟这么导入有可能出现各种填写不规范的情况,也可能缺少一些信息。 ::: ## 手动创建条目(万能方法) 如果你的文献非常特殊,全网也检索不到(比如一些古籍),你依然可以使用纯手动的方法为它创建一个条目。 1. 新建一个空白条目; * 如果你目前还没有这篇文献的文件,可以直接点击菜单栏里的「文件」->「新建条目」 ,然后选择你所需的文献类型(此处以最常见的 `期刊文章` 为例): ![创建期刊文章条目](../assets/images/manual-add-item-1.png){width=60%} * 如果你已经在 Zotero 文库中添加了文献的文件,可以右键点击这个文件,然后点击 `创建父条目...` ,并在弹出的窗口中点击 `手动录入` : ![为已有的附件创建父条目](../assets/images/manual-add-item-2.png){width=60%} ![点击手动录入按钮](../assets/images/manual-add-item-3.png){width=60%} 1. 在右边栏里完善文献信息。 创建了条目后,Zotero 会自动选中这一新建的条目,此时你可以在右边栏里修改这个条目的类型,也可以完善这个条目的详细信息(也就是这篇文献的元数据)。为了正确地引用这个条目,不漏掉信息,请尽可能全面地填写右边的信息(当然,如果这是你自己的一篇文档,或者是个 PPT,未来也不会用于再文献里引用,那就无所谓了)。 * 先将条目修改为正确的文献类型(这里以书籍为例): ![选择正确的文献类型](../assets/images/manual-add-item-4.png) * 然后手动填写文献的相关信息(如标题、作者、发布日期……) ![手动填写必要的文献信息](../assets/images/manual-add-item-5.png){width=60%} ## 从其他工具导入 Zotero 可以将条目从 EndNote、Mendeley、Word 引用 等地方迁移到库中,详情请参阅 [从其他工具导入条目到 Zotero](./import-from-other-software.md)。 --- --- url: /user-guideadd-attachments.md --- # 添加附件 除了项目元数据、注释和标签之外,Zotero 还可以用于管理文件。本页面介绍了将文件添加到 Zotero 库的不同方式,以及如何存储和同步添加的文件。 ## 子附件和独立附件 ::: info Todo 参考: ::: ## 存储的附件和链接的附件 ### 存储的附件 ![icon-pdf](../assets/icons/item-type/attachment-pdf.svg) ![icon-epub](../assets/icons/item-type/attachment-epub.svg) 默认情况下,存储文件存储在 [Zotero 数据目录](./backup.md#数据文件) 中,Zotero 会自动管理它们,包括在 Zotero 中删除附件项时删除它们。如果使用 [文件同步](./sync.md) 功能,Zotero 会自动在设备之间同步存储的附件,并将它们储存在官方网盘(或 WebDAV 网盘)中。 将一个文件添加为存储的附件,该文件将被复制到 Zotero 数据目录,因此建议你删除原始文件以避免混淆。 ### 链接的附件 ![icon-pdf-link](../assets/icons/item-type/attachment-pdf-link.svg) ![icon-epub](../assets/icons/item-type/attachment-epub-link.svg) 对于链接文件,Zotero 只存储指向计算机上原始文件位置的链接。链接文件不会同步,如果附件项在 Zotero 中被删除,链接文件也不会被删除,Zotero 程序也不支持链接文件的同步。(可以简单理解为链接的文件在 Zotero 中作用类似于 Windows 的快捷方式) 如果您使用外部工具(Dropbox 等)同步链接文件以在多台计算机上使用,最好设置链接附件根目录,以便 Zotero 在每台计算机上都可以找到这些文件,即使包含文件夹位于文件系统中的不同位置。 ### 链接的附件 → 存储的附件 如果希望将「链接的附件」转换为「存储的附件」以便 Zotero 管理它们,您可以从「工具」→「管理附件」→「转换已链接的附件为已存储的附件」菜单执行此操作。 ## 为条目添加附件 ### 通过浏览器 当您在浏览器中 [通过 Zotero Connector 保存条目](./add-items.md#通过浏览器添加条目) 时,Zotero 可以自动保存关联的网页快照和 PDF(可以在 Zotero 设置中更改是否保存关联的快照和 PDF)。此类快照和 PDF 作为存储的附件保存在 Zotero 数据目录中,并显示为已保存条目的子附件。 ### 通过拖放 通过将文件从系统的文件浏览器拖到 Zotero 窗口中,然后将其拖放到左窗格中的集合或中央窗格中,可以将文件复制到库中。 拖放到现有 Zotero 条目上的文件将作为子附件添加。拖放到集合中、空白区域或中心窗格中的条目之间的文件将作为独立附件添加。 您还可以将 Zotero 中现有的独立附件拖放到常规 Zotero 条目上以创建子附件。 默认情况下,拖入 Zotero 的文件将作为存储的附件。要添加为链接的附件,请在拖拽时按住 Ctrl + Shift (Windows/Linux) 或 Cmd + Option (Mac) 键。在 macOS 上,放开修饰键前,需要确保 Zotero 窗口位于前台。 ### 通过附件菜单 选择一个条目后,可以单击条目列表顶部的「添加附件」按钮。选择「附加文件...」或「附加文件链接...」将文件作为附件添加到条目中。 「添加文件」和「添加文件链接」将会将附件添加为「独立附件」。 如果你没有选择任何条目,则后三个选项将会显示灰色无法点击。 您还可以「添加网页链接...」以添加指向网页( `http://` 或 `https://` )或计算机上其他程序(例如 OneNote `onenote://` )的链接。 ![添加附件](../assets/images/添加附件.png) 当您右键单击某个条目并选择「添加附件」时,这些选项也可用。 ### 查找全文(查找可用 PDF) ![查找全文](../assets/images/查找全文.png) 当条目不存在附件时,可右击该条目并选择「查找全文」来使用「解析器」自动下载文献。 Zotero 已经内置了 Unpaywall 数据镜像,因此不需要为其配置自定义解析器,当你使用默认的解析器点击「查找全文」后,Zotero 会自动从 Unpaywall 下载文献。 如何自定义解析器: * [Custom PDF Resolvers - Zotero 官方文档](https://www.zotero.org/support/kb/custom_pdf_resolvers) * [如何将解析器更改为 Sci-Hub](./plugins/zotero-scihub) ![下载结果](../assets/images/查找全文结果.png) ::: tip 无论使用默认解析器(Unpaywall)还是将解析器更改为 SCI-HUB,「查找全文」功能都无法下载中文文献,因为这些数据库没有收录中文文献(或收录量极少)。 ::: ## 访问文件 双击条目即可打开该文件,也可以右击该条目并选择「查看 PDF」或「查看文件」。 如果要在系统资源管理器中查看文件本身,请右击条目并选择「显示文件」。存储的附件在 Zotero 数据目录中,每个文件都有自己的子目录,该子目录以随机的 8 个字符的字符串命名。 ## 网页快照 ::: info todo ::: ## 附件名 vs 文件名 ::: info Todo 参考: ::: 附件有两个单独的名称: * 附件名:条目列表中显示的附件标题 * 文件名:磁盘上的文件名 在 Zotero 6 中,由于默认启用「重命名文件名时自动重命名附件名」,以及收到 ZotFile 工作思维的影响,很多同学没有区分这两个名称,倾向于把附件名也设置为 `作者_标题.pdf` 等格式。 然而,Zotero 7 中,官方明确将这个两个概念进行了区分,原因如下: 附件的父行(也就是显示条目信息的那一行)已经显示标题和作者等元数据,因此无需通过在「附件名」上显示「文件名」来重复它,相反,更应该在附件名上体现有关文件来源的附加信息(例如,「已接受版本」或开放获取文件的「提交版本」,或「全文 PDF」和「支持材料」等)。 单击附件后,您可以在右侧窗格中查看文件名,也可以通过 `右键单击` → `打开文件位置` 中查看文件名。 ## 附件重命名 ::: info Todo 参考: ::: --- --- url: /user-guidepluginstranslatevolcengine.md --- # 火山翻译接口申请及配置 ## 1. 火山翻译接口申请 请查看 [火山翻译官方文档](https://www.volcengine.com/docs/4640/130872)。 ## 2. 火山翻译流量查看 请访问 [火山翻译流量查询](https://console.volcengine.com/translate/usage)。 --- --- url: /user-guidepluginstranslatebaidu.md --- # 百度翻译接口申请和配置 百度翻译和垂直领域翻译免费额度: * [通用翻译](https://fanyi-api.baidu.com/product/111):完成个人认证可升级使用高级版服务,提供基础文本翻译服务,支持自定义术语翻译功能。**每月 100 万字符免费**,QPS 为 10,单次最长请求 6000 字符,支持 28 个常见语种。 * [垂直领域翻译](https://fanyi-api.baidu.com/product/12): 开通并认证后,即享**每月 50 万免费字符**。目前已开通学术论文、生物医药、信息技术、金融财经、机械制造、网络文学(仅支持中英)、新闻资讯、人文社科(仅支持中英)、航空航天、法律法规、合同共 11 个垂直领域。 以上接口,超出部分按 49 元/百万字符计费,垂直领域接口申请成功后的提示:高级版是每月 100W 字符。 ## 1. 账号注册 直接访问 ,如果未登录,点击右上角登录。没百度账号的同学,就直接新注册一个。 ![登录按钮](../../../assets/images/zotero-plugin-translate/baidu-3.png) 网页上直接列出了通用文本翻译和领域翻译,这两个就是常说的百度翻译和百度垂直领域翻译。这两个的区别是: * 免费额度不同,垂直领域相比通用文本翻译免费额度少,每月只有 50W * 精细度不同。为了提升特定领域机器翻译的准确度,百度翻译针对多个垂直领域模型进行了优化,特定领域术语翻译相较于通用文本翻译 API 结果更为准确,句式更加符合该行业特点。 目前已开通科技电子、水利机械、生物医药等 3 个垂直领域,不过只有生物医药支持中英互译,剩下两个只支持中文到英文。建议生物医药相关专业的同学,可以试试使用垂直领域翻译接口。 访问 ,直接点击下方立即使用: ![开通通用文本翻译 API](../../../assets/images/zotero-plugin-translate/baidu-4.png) 点击之后可能出现验证(手机或实名制认证),请按照说明进行验证,提升免费额度。 ![实名认证窗口](../../../assets/images/zotero-plugin-translate/baidu-5.png) 然后需要注册成为百度翻译开发者,请选择个人开发者,并如实填下方表格中的信息。 ![个人开发者注册表格](../../../assets/images/zotero-plugin-translate/baidu-6.png) 选择下方高级版,每月 100W 免费额度。 ![选择高级版](../../../assets/images/zotero-plugin-translate/baidu-7.png) ## 2. 百度翻译(通用文本翻译)接口申请 访问 ,选择通用文本翻译,点下一步: ![通用文本翻译 API 开通](../../../assets/images/zotero-plugin-translate/baidu-8.png) ![开通高级版](../../../assets/images/zotero-plugin-translate/baidu-9.png) ![申请认证](../../../assets/images/zotero-plugin-translate/baidu-10.png) 应用名称是必填的,其他随意写。最后点击提交申请。 ![提交申请](../../../assets/images/zotero-plugin-translate/baidu-11.png) ![开通成功后的个人页面](../../../assets/images/zotero-plugin-translate/baidu-12.png) 上图是开通成功后的页面。 ## 3. 百度垂直领域(领域翻译)接口申请 打开这个网页 ,选择领域翻译,点下一步: ![垂直领域翻译接口开通](../../../assets/images/zotero-plugin-translate/baidu-13.png) ![申请表格](../../../assets/images/zotero-plugin-translate/baidu-14.png) ![垂直领域翻译接口开通成功后的个人页面](../../../assets/images/zotero-plugin-translate/baidu-15.png) 垂直领域的后台界面,上面有对应的使用明细。 ## 4. 接口密钥查询 打开 ,可以在最下面看到配置使用的 APP ID 和密钥。 ![接口密钥查看页面](../../../assets/images/zotero-plugin-translate/baidu-16.png) 垂直领域翻译还需要一个领域参数,具体领域信息如下: | 支持传入值 | 描述 | 支持语言方向 | | ---------- | ------------ | ------------------------------------- | | it | 信息技术领域 | 中文(简)-> 英语、英语 -> 中文(简) | | finance | 金融财经领域 | 中文(简)-> 英语、英语 -> 中文(简) | | machinery | 机械制造领域 | 中文(简)-> 英语、英语 -> 中文(简) | | senimed | 生物医药领域 | 中文(简)-> 英语、英语 -> 中文(简) | | novel | 网络文学领域 | 中文(简)-> 英语 | | academic | 学术论文领域 | 中文(简)-> 英语、英语 -> 中文(简) | | aerospace | 航空航天领域 | 中文(简)-> 英语、英语 -> 中文(简) | | wiki | 人文社科领域 | 中文(简)-> 英语 | | news | 新闻资讯领域 | 中文(简)-> 英语、英语 -> 中文(简) | | law | 法律法规领域 | 中文(简)-> 英语、英语 -> 中文(简) | | contract | 合同领域 | 中文(简)-> 英语、英语 -> 中文(简) | 以上信息参考 [百度开发文档](https://fanyi-api.baidu.com/product/123)。 这里假设我申请到的 APP ID 为 `12345`,密钥为 `abcde`,选择生物医药领域为 `medicine`。介绍如何在 Zotero 翻译插件中设置。 ### 4.1 百度翻译设置 ![翻译插件设置窗口](../../../assets/images/zotero-plugin-translate/baidu-18.png) 提示窗口点 OK: ![弹窗提示](../../../assets/images/zotero-plugin-translate/baidu-19.png) ![密钥填写处](../../../assets/images/zotero-plugin-translate/baidu-20.png) 这里填入 `12345#abcde`。 ### 4.2 百度垂直领域(领域翻译)设置 ![垂直领域密钥设置窗口](../../../assets/images/zotero-plugin-translate/baidu-21.png) ![密钥填写处](../../../assets/images/zotero-plugin-translate/baidu-22.png) 密钥处填入 `12345#abcde#medicine`。 ## 5. 接口测试 这里以百度垂直领域引擎为例进行测试,在 Zotero 中打开一篇英文 PDF,划词翻译,如下图正常翻译,就说明配置正常。 ![配置翻译服务](../../../assets/images/zotero-plugin-translate/baidu-23.png) --- --- url: /user-guidecreate-bibliographies-within-zotero.md --- # 直接生成参考文献表 除了前述的在文字处理器中添加引文外,Zotero 也提供了直接导出参考文献表的方法: ::: tip 什么时候使用这种方法? * 分享文献引文 * 需要在 PowerPoint 中添加参考文献表 * 只是想用文章快速生成参考文献,不想使用 Word 插件 ::: 1. 先选择需要引用的文献 ![选择参考文献](../assets/images/zotero-选择参考文献.png) 2. 右键,在菜单中选择 用所选条目创建参考文献表 ![创建参考文献表](../assets/images/zotero-创建参考文献表.png) 3. 接着根据自己的需要选择需要的 参考文献格式 以及 输出方式 ![选择引文格式及输出方式](../assets/images/zotero-选择引文格式及输出方式.png) 4. 如果上一步输出方式选择复制到剪贴板中,此时上述文献的参考文献表就已经复制好了,在任意位置粘贴即可看到。 ::: info 注意:参考文献表的顺序 与 第一步中选择文献的顺序有关 ::: ![粘贴参考文献表](../assets/images/粘贴参考文献表.png) ::: tip 插件推荐 [Zutilo](https://github.com/wshanks/Zutilo) 插件(仅适配 Zotero 6,2023.10.7)提供了生成参考文献表的快捷键。 [Zotero Actions & Tags](https://github.com/windingwind/zotero-actions-tags/discussions) 插件(仅适配 Zotero 7,2023.10.7)配合自定义脚本也可以添加生成参考文献表的快捷键。 ::: --- --- url: /user-guidemobile.md --- # 移动端 ## iOS 官方已经发布了 Zotero for iOS,并且支持支持 WebDAV 同步,iOS 端的设置相对比较简单,只需要登录 Zotero 账户和完成 WebDAV 网盘设置即可。 ### 安装 见 [安装](./install.md#ios)。 ### 配置同步 ::: tip 在进行该部分操作时,请确保您拥有「Zotero 账户」、「具有 WebDAV 同步功能的网盘」、「完成 PC 端相关设置」。 ::: ::: warning 要使用 iOS 客户端,需要使用官方同步或 WebDAV 同步二者之一,才能顺利同步附件。其他使用 ZotFile 等链接文件的同步方式不支持,未来也不会支持。 ::: 1. 在第一次打开 Zotero 时,会提醒登录,选择 Sign In(此时需要登录你的 Zotero 账户) ![登录 Zotero 账户](../assets/images/iOS登陆.jpg){width=50%} 2. 登录完成后,返回 app 主页,点击右上角的齿轮图标 ![app 首页](../assets/images/iOS首页.png) 3. 点击 `account` 进入同步设置 4. 从上到下依次为: * 附件同步方式:`WebDAV` * WebDAV 地址:`dav.jianguoyun.com/dav` * 坚果云账户:邮箱 * 密码:此处的密码是在坚果云中创建的应用密码,不是坚果云网盘的登录密码) ::: details 如何获取坚果云的应用密码 1. 在[坚果云官网登录](https://www.jianguoyun.com/d/login)您的坚果云账户。 2. 登录后点击 右侧用户名->账户信息 ![账户信息](../assets/images/坚果云-账户信息.png) 3. 选择安全选项,下滑到底,点击添加应用。 ![添加应用](../assets/images/坚果云-添加应用.png) 4. 完成后,记录下生成的密码。 ![生成应用密码](../assets/images/坚果云-生成密码.png) ![复制应用密码](../assets/images/坚果云-密码.png) ::: 验证服务器后显示 `Verified` 表示设置成功。 ![iOS 同步登陆](../assets/images/iOS同步登陆.png) 5. 等待片刻文献即可同步成功。可以点击文献直接阅读,也点击文献右侧的 `i` 标志查看文献信息 ![文献同步成功](../assets/images/iOS文献同步成功.png) 6. 在文献阅读时,可以进行高亮内容,任意划线等操作。完成阅读是直接返回,你的阅读记录会后台自动同步到其他客户端。 ![文献阅读](../assets/images/iOS文献阅读.png) ## Android Zotero 官方已于 2025 年 6 月 5 日[正式发布 Android 版本客户端](https://www.zotero.org/blog/zotero-for-android/)。 ### 安装 见 [安装](./install.md#android)。 ### 配置同步 Zotero 官方 Android 客户端的配置方法与 iOS 端大体相同,请参考详见 [iOS](#ios) 进行配置,此处不再赘述。 ::: warning 要使用 Android 客户端,需要使用官方同步或 WebDAV 同步二者之一,才能顺利同步附件。其他使用 ZotFile 等链接文件的同步方式不支持,未来也不会支持。 ::: --- --- url: /user-guideorganize-library.md --- # 组织、管理你的文献库 ::: warning 待办 此章节尚未根据 Zotero 7 更新,界面或操作逻辑若有不一致请以实际为准。 ::: > 本节的所有操作都在 Zotero 主界面中。对于分类和条目,可以按住 shift 或者 ctrl/cmd 多选。 ## 分类管理 分类的图标类似文件夹:![分类图标](../assets/icons/treesource-collection.png)。分类是所有文献条目的父级(也允许存在不属于任何分类的条目)可在主界面左侧查看分类列表,类似于文件夹的列表。可以拖动分类来归纳到不同层级。 在个人账户中,所有分类都属于「![image.png](../assets/icons/treesource-library.png) 我的文库」。在群组中,分类属于各自的群组。 ![image.png](../assets/images/文库合集-1.png) :::warning ❓ 分类有什么用? 分类类似于文件夹,你可以将不同主题/领域的文献放在同一个分类下。进一步的,还可以根据细分领域或者方法、时期、参考意义等,根据自己需要进一步归档到子分类。 ::: ### 新建分类 在主界面左上角,点击 ![image.png](../assets/icons/toolbar-collection-add.png),即可新建分类(collection)。 或者,在菜单栏->文件,新建分类: ![image.png](../assets/images/新建合集-菜单.png) ![image.png](../assets/images/新建合集.png) 或者,右键单击现有的分类来创建子分类: ![image.png](../assets/images/新建子合集.png) > 💡 如何知道文献属于哪个或哪些分类? > 用鼠标点击选中文献条目后,按住 Ctrl/Cmd,文献所属的(分类)文件夹就会黄色高亮显示。 > 💡 关于多级分类的显示问题 > 默认情况下,如果分类结构类似: > > * 一级分类 > * 二级分类 > * 三级分类 则二、三级分类内的文献都会在一级分类中显示,尽管你可能没有手动将其添加到一级分类。 > 可以通过菜单栏->查看->从子集合中显示条目来开启/关闭这一功能。关闭后,所有文献仅会在其所属的分类中显示。 > ![image.png](../assets/images/显示子集合中的条目.png) ### 删除分类 右键单击现有分类,选择删除即可。 ## 条目管理 ### 在分类之间移动条目 要**复制**到新的分类,在主界面直接将条目拖入左侧栏的其他分类,选择的文献条目会**同时存在**于当前分类和拖入的新分类(类似复制 - 粘贴了一份条目的快捷方式,但两个分类中存放的其实是同一个文献条目)。 > 💡 文献条目与分类的关系 > 文献条目在分类中以类似快捷方式的形式存在,你可以同时向多个分类添加、移动、删除其中的文献条目,而文献本身不受影响(因为添加移动删除的都是其快捷方式而非本体)。 要**移动**到新的分类并从旧的分类中移除(类似于剪切 - 粘贴,文献将不再出现在原本分类),请在拖动时按住 shift。 要**移除**当前分类下的条目,选中后右键,选择「从分类中移除条目」。 注意,「从分类中移除条目」不会删除条目,只是改变了条目所属的分类。 ### 去除重复条目 在左侧栏有重复条目入口,点击后可以看到整个库中的重复条目,并可以手动确认要保留的版本,然后执行合并。 ![image.png](../assets/images/合并重复条目.png) ### 删除条目 要删除条目,选中后右键->删除条目。条目将被移动到回收站。在清空回收站后,条目将被彻底删除。 在左侧栏打开回收站,可以选择内容并还原/彻底删除。右键点击回收站,可以清空回收站。 ![image.png](../assets/images/回收站.png) ### 导出条目或 PDF 选中分类或条目,可通过右键「导出条目」,可以导出条目题录信息、笔记和文件(可选是否包含注释),以便分享给他人; 要导出 PDF(带高亮注释),请选中一个或多个条目后,从菜单栏「文件」->「导出 PDF」: ![image.png](../assets/images/menu-文件.png) ## 标签管理 Zotero 通过标签来管理文献。对于同一类文献,可为其添加标签,来快速筛选、查找和定位。 标签根据添加方式分为两类:自动标签与用户标签。自动标签是 Zotero 在抓取文献时提取的关键字;手动标签是用户添加的标签。下图中,橙色为自动标签,蓝色为手动标签。 ![image.png](../assets/images/标签管理.png) > 💡 关于自动标签 > Zotero 会自动为新文献添加自动标签。可在菜单栏->编辑->设置->常规->使用关键词和标题自动给条目添加标签来开启/关闭这个功能。 ![image.png](../assets/images/使用关键词和标题自动给条目添加标签.png) ### 添加/删除标签 在主界面中,选中条目,在右侧栏的标签面板可以进行添加/删除。点击 Add 可新增标签,点击已有标签右侧的「-」可以删除标签。 ![image.png](../assets/images/标签.png) 如果要删除所有自动标签,可在左下角标签栏的功能按钮中选择「删除此文献库中的自动标签」。 ![image.png](../assets/images/删除自动标签.png) ### 利用标签快速筛选文献 在主界面的左下角是标签栏,可以点击其中的数个标签来筛选对应的文献条目。 ![image.png](../assets/images/首页左下角标签区域.png) ### 设置彩色标签/设置星级 Zotero 支持最多 9 种彩色标签。通过为标签赋予颜色,可以: * 具有彩色标签的条目上有彩色方块显示:![image.png](../assets/images/彩色标签.png) * 如果标签内容是 emoji 表情符号,将会显示符号内容,例如 ⭐:![image.png](../assets/images/标签-emoji.png) * 通过快捷键(数字 1-9)快速添加标签 设置方法是: 1. 通过前述添加标签的方法添加你需要的标签到任意一个文献(例如,⭐) 2. 此时可以在主界面左下角的标签管理器中看到这个标签。右键单击,选择「指派颜色」。 ![添加标签](../assets/images/添加标签-添加颜色.png) 3. 在弹出窗口中设置一个颜色与快捷键位置(不能重复)。 ![选择标签颜色及位置](../assets/images/选择标签颜色及位置.png) 4. 此时在库中可以看到标签颜色或 emoji 图形。 ![星标或颜色](../assets/images/标签-星标或颜色.png) ### 自动未读与批量增删标签 插件 Zotero Tag 提供了许多标签管理的实用功能,包括: * 自动为新条目添加未读标签 * 自动在 PDF 关闭时移除未读标签 * 使用快捷键对条目/PDF 注释批量增加/移除单个或多个标签 * 在其他用户自定义的动作触发时自动为条目/PDF 注释设置单个或多个标签 * 通过右键菜单批量增加或移除标签 * 通过右键菜单移除不常用的标签 可在 下载。(如果无法访问 GitHub,可从 Zotero 插件商店 [https://zotero-chinese.com/plugins/](/plugins/) 下载) --- --- url: /translator-dev-guidecoding.md --- # 编写转换器 ::: tip todo see ::: ## 网页型转换器(Web translators) ### detectWeb ### doWeb #### 保存单个条目 #### 保存多个条目 ## 导入型转换器(Import translators) ## 导出型转换器(Export translators) ## 搜索型转换器(Search translators) ## 其他 ### 实用功能 ### 调用其他转换器 --- --- url: /user-guideedit-items.md --- # 编辑条目 ::: tip 始终及时校准条目 使用 Zotero(或任何其他参考文献管理器)进行引用时,在将项目保存到库中后,应始终检查项目的准确性。 Zotero 并不能保证自动抓取的数据 100% 正确,有时 Zotero 收到的元数据是不完整或不正确的。 我们应始终意识到这个问题,养成导入后随手校正的习惯。 ::: ## 重复条目 ::: info Todo:待完善 参考: ::: 由于各种原因,您可能会导入一些重复的项目。例如,您可能从同一网页保存同一项目多次,或者以前看的文献没印象了又新导入了一次。当你写论文插入参考文献时,重复条目会严重影响正确性,例如,你可能在不同地方引入同一文献的不同副本,而 Zotero 会认为它们是两个不同的文献。幸运的是,Zotero 可以帮助您识别可能的重复项并允许您合并它们。 ::: tip 插件推荐 插件 [Linter for Zotero](./plugins/linter.md) 和 [Zoplicate](https://github.com/ChenglongMa/zoplicate) 提供了对新增条目提醒重复的功能。 ::: ## 条目字段 从以上方法导入的数据并不一定是完全正确的,最好养成导入条目后随手校正的习惯。 如下图所示,在中心窗格中选择一个条目后,右侧(标准视图)或下侧(堆栈视图)会显示该条目的书目信息。多数条目都可以直接单击进行编辑,更改自动保存。 ![添加条目后信息窗格](../assets/images/添加条目后信息窗格.png) 以下是一些比较特殊的字段,拿出来单独介绍: ### 条目类型 请尤其注意这一个选项,这直接决定在引用时,该条目以什么方式出现。且该项在通过浏览器导入时非常容易出错。 最典型的错误就是将「期刊文章/学位论文」等识别为「网页」。这会导致部分引文格式后出现 `[EB/OL]` 等文献标识符。 这时我们应该重新导入或手动更正。 ### 期刊缩写 部分期刊要求使用「期刊标题的缩写」进行引用,Zotero 将「期刊名全称」和「期刊名缩写」分别保存在「期刊」和「期刊缩写」两个字段中。 抓取时不一定能准确获得期刊缩写,写论文引用前最好校正一下。 通常期刊缩写的差别多数在于加不加 `.`,例如「Applied Surface Science」可以缩写为「Appl Surf Sci」或「Appl. Surf. Sci.」。我们建议总是存储为加 `.` 的格式。因为去掉 `.` 总是比加上 `.` 更方便,在引用时,对于需要不加 `.` 的期刊就可以通过 CSL 直接去掉 `.`。 ::: tip 插件推荐 插件 [Linter for Zotero](./plugins/linter.md) 提供了自动获取期刊的 ISO 4 缩写的功能,可前往 [插件商店](/plugins/)下载安装。 ::: ### 标题 #### 标题中的上下标 ```html 下标内容 上标内容 斜体 粗体 ``` 详细请参阅:[在 Word 参考文献表中实现斜体及上下标效果](./faqs/word-addon.md#设置斜体及上下标等)。 ::: tip 插件推荐 插件 [Linter for Zotero](./plugins/linter.md) 提供了辅助输入这些富文本标签的功能,可前往 [插件商店](/plugins/)下载安装。 ::: #### 标题的大小写 我们建议您始终将标题以「句子大小写」的形式存储在 Zotero 库中,这有利于 CSL 进行格式转换。 什么是「句子大小写」? ```plain - 标题大小写:Mechanism of Ce-Modified Birnessite-MnO2 in Promoting SO2 Poisoning Resistance for Low-Temperature NH3-SCR - 句子大小写:Mechanism of Ce-Modified Birnessite-MnO2 in promoting SO2 poisoning resistance for low-temperature NH3-SCR ``` 注意 Zotero 库中的大小写未必完全决定后续输出的大小写,后者还取决于 CSL、[Better BibTeX](./plugins/better-bibtex.md#title-case) 等。 ### 其他 extra 所有其他自定义字段均应保存在「其他(extra)」字段,保存在该字段的数据应为若干个键值对,每行一个。CSL 引用时可以通过键来调用值。 --- --- url: /user-guidegroup.md --- # 群组 * **课题组协作、小组合作**:文献条目及其附件(包括笔记注释)实时共享同步到群组成员的 Zotero 客户端(桌面端、移动端、网页端)。 * **双向跨库分享文献条目**:「我的文库」可与「群组文库」中的文献条目(item)进行双向跨库复制/移动。 * **Zotero 的移动端(暂仅支持 iOS)支持阅读、修改群组的文献条目**信息及其附件(笔记、全文 PDF 等) * **不限制群组成员数量** * **配合 Chartero 插件可以实时查看成员某文献条目的阅读时间** ::: warning 群组依赖 Zotero 账号 群组的条目和附件同步均能且仅能通过 Zotero 官方同步服务同步,因此在使用群组功能前,你必须登录 Zotero 账户,如果你没有登录,请阅读 [同步](./sync.md#数据的同步) 小节完成账号注册和登录。 ::: ## 创建群组 有两种方式创建群组: 1. 在 Zotero 客户端中点击如下按钮: ![创建群组](../assets/images/zotero-group-new-group.png) 2. 在[Zotero 群组页面](https://www.zotero.org/groups) 点击 `Create a New Group` 按钮。 在打开的页面中,为群组输入一个名字,选择[群组的类型](#群组类型),并依次进行[群组设置](#群组设置),即可完成创建。 ### 群组类型 群组有三类,分别是 `私有群组 (Private)`、`公开, 限定成员制群组 (Public, Closed Membership)` 和 `公开, 开放成员群组 (Private)` 三类,下表对比了三种群组类型的特点。 | 项 | 私有群组 | 公开,限定成员制 | 公开,开放成员 | | ------------ | -------- | ---------------- | -------------- | | 谁可以看到 | 仅成员 | 所有人 | 所有人 | | 谁可以加入 | 邀请 | 邀请或申请 | 所有人 | | 条目附件共享 | 支持 | 支持 | 不支持 | 群组类型也可以之后可以在群组设置继续更改。 ### 群组设置 群组设置页面主要有三个设置项,分别对应条目的读取、编辑、附件的编辑三类权限。 * 读取权限:谁可以看到该群组图书馆中的项目? * Anyone on the internet 所有人 * Any group member 仅所有群组成员 * 编辑权限:谁可以在该组的库中添加、编辑和删除项目? * Any group member 所有成员 * Only group admins 仅群组管理员 * 文件编辑权限:谁可以使用组中存储的文件?(公共开放组不能启用文件存储) * Any group member 任何团体成员 * Only group admins 仅群组管理员 * No group file storage 无群组文件存储 关于群组成员、群组管理员等的设置,请见 [群组管理](#群组管理) 小节。 ### 关于群组的附件 1. 一般用户默认会存储和分享群组空间只会占用创建者(即群主)的官方云存储空间(300M 免费)。 2. 群组功能目前仅支持官方云储存空间进行同步附件(例如文献的 PDF、笔记等),因此创建「Private」/「Public Closed」群组类型的用户,建议使用 [WebDAV 方案进行「我的文献库」的同步](./sync.md#通过-webdav-同步附件),把 300M 免费空间留给群组内文献条目附件的同步。 3. 如果 300M 空间用尽,可以进入 Zotero 官网,在右上角的 Upgrade Storage 中升级付费计划(需要国外 VISA 信用卡)。 4. Zotero 群组的付费存储空间只需要群主付费,其他成员无需承担。 ## 加入群组 ### 1、官网群组搜索 🔍 适用于 Public Closed、Public Open 两种类型的群组,所有人均可操作。 在 [Zotero 官网群组搜索页面](https://www.zotero.org/search/type/group),可以通过群组的名称,搜索到目标群组。 ![搜索群组](../assets/images/group-10.png) 在接下来的搜索结果页面中点击目标群组名称,进入该群组的主页 ![点击群组名称](../assets/images/group-11.png) 在主页点击右侧的 Join,即可申请加入该群组。 ![群组详情页面](../assets/images/group-12.png) * Public Open 的群组点击 `Join` 之后即可加入 * Public Closed 需要等管理员或者群主通过申请才可以加入 Zotero 客户端重启之后即可在右侧"群组文库"看到所加入的群组。 ### 2、群组链接 🔗 适用于 Public Closed、Public Open 两种类型的群组,所有人均可操作。 群组成员(群主、管理员、成员)进入 [Zotero 群组页面](https://www.zotero.org/groups/),点击群组名称,进入群组页面,浏览器地址栏的网址即为群组链接,可以分享给他人,他人打开即可申请加入(同上图)。 ![群组页面链接](../assets/images/group-13.png) ### 3、管理员邀请 ✉️ 适用于所有群组,包括 Private、Public Closed、Public Open 三种类型,仅群主和管理员可以操作。 群组成员(群主、管理员、成员)进入 [Zotero 群组页面](https://www.zotero.org/groups/),点击群组名称下方的 `Members Settings` ![members settings](../assets/images/group-14.png) 跳转后点击页面左下角 `Send More Invitations` ![发送邀请链接](../assets/images/group-15.png) 在邀请成员界面的方框内,输入被邀请人的 Zotero 用户名或者注册 Zotero 时所用的电子邮箱。可以同时邀请多人(用英文逗号分隔即可),输入完成之后点击下方的 `Invite Members`,即可完成邀请。被邀请人注册 Zotero 时所用的邮箱将会受到邀请邮件,进入接受邀请即可。 ![输入被邀请者用户名](../assets/images/group-16.png) ## 群组管理 群组成员(群主、管理员)进入[Zotero 群组页面](https://www.zotero.org/groups/),点击群组名称下方的 `Manage Profile`,可以设置头像、名称、群组所属类别等信息,也可在此页面解散群组。 点击 `Manage Members` 可以管理成员,例如审批加群申请、新增成员、移除成员、改变成员权限等。 点击群组名进入群组详情页,右侧红色按钮 `leave` 可以退出群组,退出后需要重启 Zotero 客户端。 --- --- url: /translator-dev-guidescaffold.md --- # 脚手架 ::: tip todo see ::: --- --- url: /user-guidepluginstranslatetencent.md --- # 腾讯翻译接口申请和配置 腾讯翻译每月 500W 免费额度,非常适合大批量的文献全文翻译: ## 1. 账号注册 打开 [腾讯翻译页面](https://cloud.tencent.com/product/tmt): ![开通页面](../../../assets/images/zotero-plugin-translate/tencent-2.png) 点击立即使用,扫码登录,同意协议,点击开通: ![点击开通](../../../assets/images/zotero-plugin-translate/tencent-4.png) 账号注册成功后就可以继续申请 API。 ## 2. 申请 API 打开 [API 管理后台](https://console.cloud.tencent.com/cam/capi),如果没有其他需求,直接点击继续使用。 ![子账号开通提示,可忽略](../../../assets/images/zotero-plugin-translate/tencent-5.png) ![密钥弹窗提示](../../../assets/images/zotero-plugin-translate/tencent-6.png) 点击「新建密钥」: ![创建密钥](../../../assets/images/zotero-plugin-translate/tencent-7.png) 在弹出窗口,点击“下载 CSV 文件“,请妥善保存好这个文件。密钥创建之后是不能在后台查询到的,请一定要保管好(如果找不到了,就重新新建一个密钥)。 ![下载密钥](../../../assets/images/zotero-plugin-translate/tencent-8.png) 成功创建了一个密钥: ![密钥信息](../../../assets/images/zotero-plugin-translate/tencent-9.png) > \[!TIP] > 如果忘记了密钥,可以按照上面的步骤重新创建一个。 ## 3. 关闭自动扣费 打开 [控制台 - 系统设置](https://console.cloud.tencent.com/tmt),关闭「开启后付费」,可以避免自动扣费。 ![关闭付费](../../../assets/images/zotero-plugin-translate/tencent-10.png) ## 4. 翻译插件接口配置 打开 Zotero 设置窗口: ![翻译设置窗口](../../../assets/images/zotero-plugin-translate/tencent-11.png) 弹出的提示窗口,直接点 OK: ![弹窗提示](../../../assets/images/zotero-plugin-translate/tencent-12.png) 这里非常重要,非常考验细节,请同学们填写的时候多加注意: ![配置填写配置信息翻译服务](../../../assets/images/zotero-plugin-translate/tencent-13.png) 请按照下面的格式(前面没有空格):`secretId#SecretKey`,填上你申请的密钥,注意这里的格式。 `secretID`,`SecretKey` 就是你下载的 CSV 文件中,对应的两列值: ![下载的密钥信息](../../../assets/images/zotero-plugin-translate/tencent-14.png) ## 5. 测试 在 Zotero 中随便打开一个英文 PDF,划词翻译,看看效果是否正常。 ![测试配置是否成功](../../../assets/images/zotero-plugin-translate/tencent-15.png) ## 6. 翻译流量额度查看 打开 [控制台](https://console.cloud.tencent.com/tmt): ![翻译流量查看页面](../../../assets/images/zotero-plugin-translate/tencent-16.png) ## 7. 翻译异常解决 如果上面的操作步骤完成后,翻译出现问题,可以看看是否开通了腾讯的翻译服务。 在放大镜那里输入机器翻译,在下方选择机器翻译: ![搜索机器翻译](../../../assets/images/zotero-plugin-translate/tencent-17.png) 按下方提示,点击开通,开通机器翻译服务,然后再试试。 ![点击开通服务](../../../assets/images/zotero-plugin-translate/tencent-18.png) --- --- url: /user-guidefaqscustom-data-directory.md --- # 自定义 Zotero 数据存储位置 Zotero 默认将所有文献条目、PDF、批注、笔记等存储在系统默认的「数据文件夹/Data Directory」(如 Windows 下的 `C:\Users\<用户名>\Zotero`)。如果需要将数据迁移到其他位置(例如硬盘的其他分区),可以在设置里选择新的存储目录。 ::: danger 无论你选择何种同步方案,也无论基于何种原因,切勿将 Zotero 的 `数据存储位置/Data Directory` 自定义为任何网盘的同步文件夹中(包括 iCloud),也切勿使用任何网盘/同步盘的备份功能直接同步/备份这一目录!(包括但不限于直接使用坚果云的官方客户端直接同步备份这一文件夹) 这样做在某些情况下可能会导致你的 Zotero 数据库损坏,带来严重的问题!官方对于这一问题的说明见这两篇文章: * [How can I access my library from multiple computers?](https://www.zotero.org/support/sync#alternative_syncing_solutions) * [Can I store my Zotero data directory in a cloud storage folder?](https://www.zotero.org/support/kb/data_directory_in_cloud_storage_folder) 如果您已经将 Zotero 数据文件夹直接同步到网盘中,请您做好[备份](../backup#手动备份),根据下面的教程将数据文件夹迁移到本地的其他位置,且确保未使用任何工具直接同步这一数据文件夹。 ::: ## 操作步骤 1. **打开 Zotero 设置** 点击 Zotero 的 `编辑` → `设置` → `高级`,在 `文件和文件夹` 中的 `数据存储位置` 可以看到当前的数据文件夹位置。点击 `打开数据文件夹` 按钮打开待迁移的数据文件夹备用。 ![打开数据文件夹](../../assets/images/zotero-custom-data-directory.png) ::: tip 提醒\ 在继续下面的操作前,建议您先备份当前的数据文件夹,避免数据丢失。您可以将待迁移的数据文件夹中的所有内容复制到其他位置,以备不时只需。\ 关于备份的更多介绍,请参考:[Zotero 备份教程](../backup)。\ ::: 2. **选择新的数据目录** 点击 `数据存储位置` 中的 `使用自定义位置`按钮,在弹出的对话框中您希望放置数据文件夹的位置,然后点击对话框中的 `新建文件夹` 按钮创建新的数据文件夹,在对话框中打开新创建好的数据文件夹,点击 `确定`。 ![选择新的数据目录](../../assets/images/zotero-custom-data-directory-select.png) ::: details 数据目录放置位置的建议 如果将数据目录放在不合适的位置,可能会因权限问题导致 Zotero 出现故障。以下是一些提醒和建议: * **切勿将数据目录放在任何网盘的同步文件夹中(包括 iCloud),也切勿使用任何网盘/同步盘的备份功能直接同步/备份这一目录!** * 不要将数据目录放在 Zotero 的程序安装目录下(如默认的 `C:\Program Files\Zotero`),也不要将数据目录选为 Zotero 的程序安装目录,避免文件混乱和权限问题。 * 可以放在 `D:\ZoteroDataDirectory` 或 `E:\Data\ZoteroData` 等 **非系统盘** 的目录下,避免权限问题。 * 数据目录的路径和文件夹名中不建议包含中文、空格或特殊字符,避免一些兼容问题。(如不建议将路径设置为 `D:\学术\Zotero Data` 或 `D:\My Data\Zotero Data`,您可以改为 `D:\Scholar\ZoteroData` 或 `D:\MyData\ZoteroData`) ::: 选择完新创建的空目录后,Zotero 会提示您目录为空。请点击 `是/Yes` 按钮。 ![移动数据文件夹提醒](../../assets/images/zotero-custom-data-directory-info1.png) 3. **关闭 Zotero** 在设置完成后,Zotero 会提醒退出 Zotero 程序。请点击 `退出 Zotero` 按钮,关闭 Zotero 程序。 ![关闭 Zotero](../../assets/images/zotero-custom-data-directory-info2.png) 4. **手动移动已有数据** 请前往第 1 步中打开备用的待迁移数据文件夹,将原数据文件夹中的**所有内容**(包含 `zotero.sqlite` 文件、`storage` 文件夹等)拷贝到新数据目录下。 ![手动移动已有数据](../../assets/images/zotero-custom-data-directory-move-data.png) ::: tip 提醒 数据迁移完成之前,请勿打开 Zotero 程序。 ::: 5. **重新打开 Zotero** 重新打开 Zotero,检查文库中的文献是否齐全,附件是否可以正常打开。 6. **完成迁移** 如果一切正常,您已经成功将 Zotero 的数据目录迁移到新的位置。确认迁移完成且数据完整后,可以删除原数据目录下的文件。但建议先保留一段时间,直到确定迁移的数据无误。 ::: tip 提醒 如果迁移后无法正常使用 Zotero,您也可以将数据目录的设置恢复到原来的位置,Zotero 会自动识别并使用原来的数据目录。 ::: ## 注意事项 * **不要将数据目录直接设置在任何云盘同步文件夹下**,避免数据库损坏。 * 迁移完成后,如果出现无法打开 Zotero、看不到文献、无法找到附件等问题,请再次检查目标文件夹中的文件是否完整复制,以及 Zotero 设置中的目录路径是否指向这一新位置。 * 自定义数据文件夹时,无需搬迁用户配置文件,仅移动数据文件夹即可。用户配置文件夹建议保留在默认位置。 * 如果您使用 `Attanger/ZotMoov + 同步盘` 的同步方案,请不要手动移动用于异地存放附件的 `靶目录`,避免出现找不到的情况。同时,也不建议将 `靶目录` 设置在 Zotero 数据文件夹下,也不要将自定义的 Zotero 数据文件夹选为 `靶目录` 或放置在 `靶目录` 下,避免出现文件混乱。 --- --- url: /user-guidepluginsjasminum.md --- # 茉莉花 与国内的文献管理软件相比,原生的 Zotero 对中文网站的抓取能力较为有限。但是得益于开源社区的维护,我们可以通过第三方中文转换器库 [GitHub.com/l0o0/translators\_CN](https://github.com/l0o0/translators_CN) 极大的提高其中文文献抓取能力。 该库的主要维护者还开发了插件 [Jasminum - 茉莉花](https://github.com/l0o0/jasminum) 来继续增强 Zotero 的中文支持,茉莉花插件提供了如下功能: > 1. 拆分或合并 Zotero 中条目作者姓和名 > 2. 为中文 PDF/CAJ 文件来检索文献元数据(检索依赖文件名) > 3. 添加中文 PDF/CAJ 时,自动检索文献元数据。该功能默认关闭。需要到设置中开启,本功能要求添加的文件名需要含有中文,全英文可能不会自动触发抓取(检索依赖文件名) > 4. 更新中文转换器 > 5. 拉取文献引用次数,是否核心期刊等信息 > 6. \~~为知网的学位论文 PDF 添加书签~~(这一功能已弃用。知网的学位论文现在大多已经自带目录书签,且对 PDF 进行了加密,无法由茉莉花直接添加书签) ## 安装茉莉花 在 [Zotero 插件商店](/plugins/#search=Jasminum) 下载 `jasminum` ,插件安装见 [插件与功能扩展](./about-plugin.md) 。 ### 使用教程 ### 01. 安装/更新 中文转换器 教程详见 [一键自动更新中文转换器](../faqs/update-translators.md#更新抓取文献信息的转换器) 。 ### 02. 为中文 PDF/CAJ 检索元数据 教程详见 [为中文 PDF/CAJ 检索元数据](../add-items#中文文献附件自动识别) 。 --- --- url: /user-guidepluginstara.md --- # 蒲公英 ::: tip Tara Tara 是一个用于备份和恢复 Zotero 配置的插件,支持备份: ✅ 备份已安装插件\ ✅ 备份 CSL 文件\ ✅ 备份转换器 (translators)\ ✅ 备份 Locate 文件夹\ ✅ 备份 Zotero 配置及插件配置 ::: ## 创建备份 下载安装 Tara 插件后,通过点击 `Tara` 图标来创建一个备份 ![开始备份](../../assets/images/zotero-plugin-tara/Tara-创建备份.png) 创建成功后,会在 Zotero 中生成一个 `Tara_backup` 的条目并自动生成一个 ZIP 格式的附件,这个就是备份文件。 如果你再点一次创建,会再生成个附件,你可以选择不同时间段的备份文件进行恢复。 ![备份文件](../../assets/images/zotero-plugin-tara/Tara-备份文件.png) ## 恢复备份 点击`恢复` ![恢复备份](../../assets/images/zotero-plugin-tara/Tara-恢复备份.png) 可以根据时间来选择要恢复的备份 ![选择要恢复备份](../../assets/images/zotero-plugin-tara/Tara-选择要恢复的备份.png) 等待备份恢复完成,再重启 Zotero ![备份恢复完成](../../assets/images/zotero-plugin-tara/Tara-备份恢复完成.png) ## 导出备份文件 点击`导出` ![导出备份](../../assets/images/zotero-plugin-tara/Tara-导出备份.png) 等待完成后,去备份目录查看文件是否生成 ![导出备份成功](../../assets/images/zotero-plugin-tara/Tara-导出备份成功.png) 导出时,会将当成的配置信息和插件导出到一个单独 ZIP 文件中,导出的备份会默认储存在 `数据储存文件夹\backup` 下。 ![导出的备份文件](../../assets/images/zotero-plugin-tara/Tara-导出的备份.png) ## 在新电脑上进行数据恢复 在新电脑上安装了 Zotero,此时 Zotero 上没有任何插件,配置都是默认的。这时,你可以将[导出备份文件](#导出备份文件)导出的文件复制到新电脑上。 在新电脑 Zotero 上,先安装 `Tara.xpi` 插件。 插件安装成功,点击恢复,会出现一个文件选择的窗中,选择[导出备份文件](#导出备份文件)中所生成的备份文件,之后 Zotero 会恢复对应的插件及相关配置。 ## 在不同电脑上同步备份 当你在多个电脑上同时使用 Zotero 时,可以通过 Zotero 的 `同步功能` 来实现数据的快速备份和恢复。 首先在不同电脑上分别配置同步,然后可以在 A 电脑上创建一个备份,备份文件是随条目一起同步的。那 B 电脑 Zotero 应该会自动同步了创建的备份条目 `Tara_backup` 及对应的附件。 当你在 B 电脑的 Zotero 上点击恢复,选择 A 电脑上刚创建的备份。这样两台电脑上的 Zotero 配置和插件信息就一起同步了。 ::: tip 注意修改 Tara 的「备份 Locate」设置 由于不同系统平台或主机上的文件路径可能不一致,tara 在备份时默认过滤掉了 `locate` 文件夹,可以通过点击 `Tara 图标-设置` 进行修改。 ::: --- --- url: /plugin-dev-guidedevelopmentdebug.md --- # 调试代码 ## 通过 Run JavaScript 调试 从「菜单栏」->「工具」->「开发者」->「Run JavaScript」打开界面。 在左侧键入代码,点击运行即可在右侧看到输出。 如果代码中包含异步语法(async),需要将结果 return 才能在右侧看见。 ## 通过 `Zotero.debug` 输出日志 * 使用 `Zotero.debug` 输出到「菜单栏」->「帮助」->「输出日志排错」->「查看输出文件」; * 使用 `Zotero.log` 输出到「菜单栏」->「工具」->「开发者」->「Error Console」。 ::: tip 不推荐使用 `console` 作为调试/日志输出 * Zotero 插件环境没有默认将 `console` 作为一个全局对象 * `console.log` 是性能昂贵的 如果可能,请使用辅助函数,仅在开发环境打印日志,可参考 `ztoolkit.log`。 ::: ## 通过开发者工具 由于 Zotero 基于 Firefox,因此可以使用 [Firefox 开发者工具](https://developer.mozilla.org/zh-CN/docs/Learn/Common_questions/What_are_browser_developer_tools) 与 DOM 交互、设置代码断点、跟踪网络请求等。 Zotero 7 beta 版本内建 Firefox 115 开发者工具。要在启动 Zotero 时打开开发者工具,请在命令行上传递 `-jsdebugger` 标志: ```bash /Applications/Zotero\ Beta.app/Contents/MacOS/zotero -ZoteroDebugText -jsdebugger ``` ::: tip 依赖 beta 版本 Zotero 需要 [Zotero beta builds](https://www.zotero.org/support/beta_builds) 。Windows 开发者可下载 zip 版本,解压缩后即可使用,不会将正式版覆盖。 ::: ::: info 即将实现:在菜单栏中直接打开开发者工具 Zotero 团队正在添加「浏览器工具箱」菜单,以便直接从菜单呼出开发者工具,而无需在启动时传入 `--jsdebugger` 标志,见 [PR #3387](https://github.com/zotero/zotero/pull/3387)。 ::: ::: info 模板用户无需手动配置 模板的启动脚本中已经进行了相关配置,`npm start` 后即可打开开发者工具。 ::: ## 通过火狐浏览器远程调试 :::: details 已过时:通过火狐浏览器远程调试连接到 Zotero ::: warning 该方法已过时 该方法已过时,Zotero 测试版现已内建 `Browser Toolbox`,请参阅 [通过开发者工具](#通过开发者工具)。 ::: 截止至最后编辑日期,Zotero 底层基于 Firefox 115 ESR。 1. 打开 Zotero Beta,打开「菜单栏」->「编辑」->「设置」->「高级」->「设置编辑器」,搜索 `debug` 并将 `devtools.debugger.remote-enable` 和 `devtools.debugger.remote-websocket` 设置为 `true`。 2. 使用 `--debugger` 参数启动 Zotero。 也可以将启动参数写入快捷方式。 3. 在 FireFox 115 ESR 中,找到「设置」->「更多工具」->「远程调试」(或者浏览器中输入:`about:debugging#/setup`),找到网络位置,输入 `localhost:6100`,点击确定添加即可。 ::: tip 端口与第一步打开的高级编辑器中 `devtools.debugger.remote-port` 一致。 注意,自 Zotero 7.0.0-beta.104 开始,Zotero 不再固定使用 6100 作为端口号,而是使用随机端口号。 ::: 4. 选择 `localhost:6100`,然后点击进程中的多线程工具箱进行检查,可进入控制台、无障碍环境等进行调试 :::: --- --- url: /code_of_conduct.md --- # 贡献者公约 ## 我们的承诺 身为社区成员、贡献者和领袖,我们承诺使社区参与者不受骚扰,无论其年龄、体型、可见或不可见的缺陷、族裔、性征、性别认同和表达、经验水平、教育程度、社会与经济地位、国籍、相貌、种族、种姓、肤色、宗教信仰、性倾向或性取向如何。 我们承诺以有助于建立开放、友善、多样化、包容、健康社区的方式行事和互动。 ## 我们的准则 有助于为我们的社区创造积极环境的行为例子包括但不限于: * 表现出对他人的同情和善意 * 尊重不同的主张、观点和感受 * 提出和大方接受建设性意见 * 承担责任并向受我们错误影响的人道歉 * 注重社区共同诉求,而非个人得失 不当行为例子包括: * 使用情色化的语言或图像,及性引诱或挑逗 * 嘲弄、侮辱或诋毁性评论,以及人身或政治攻击 * 公开或私下的骚扰行为 * 未经他人明确许可,公布他人的私人信息,如物理或电子邮件地址 * 其他有理由认定为违反职业操守的不当行为 ## 责任和权力 社区领袖有责任解释和落实我们所认可的行为准则,并妥善公正地对他们认为不当、威胁、冒犯或有害的任何行为采取纠正措施。 社区领导有权力和责任删除、编辑或拒绝或拒绝与本行为准则不相符的评论(comment)、提交(commits)、代码、维基(wiki)编辑、议题(issues)或其他贡献,并在适当时机知采取措施的理由。 ## 适用范围 本行为准则适用于所有社区场合,也适用于在公共场所代表社区时的个人。 代表社区的情形包括使用官方电子邮件地址、通过官方社交媒体帐户发帖或在线上或线下活动中担任指定代表。 ## 监督 辱骂、骚扰或其他不可接受的行为可通过 ISSUE 向负责监督的社区领袖报告。 所有投诉都将得到及时和公平的审查和调查。 所有社区领袖都有义务尊重任何事件报告者的隐私和安全。 ## 处理方针 社区领袖将遵循下列社区处理方针来明确他们所认定违反本行为准则的行为的处理方式: ### 1. 纠正 **社区影响**:使用不恰当的语言或其他在社区中被认定为不符合职业道德或不受欢迎的行为。 **处理意见**:由社区领袖发出非公开的书面警告,明确说明违规行为的性质,并解释举止如何不妥。或将要求公开道歉。 ### 2. 警告 **社区影响**:单个或一系列违规行为。 **处理意见**:警告并对连续性行为进行处理。在指定时间内,不得与相关人员互动,包括主动与行为准则执行者互动。这包括避免在社区场所和外部渠道中的互动。违反这些条款可能会导致临时或永久封禁。 ### 3. 临时封禁 **社区影响**: 严重违反社区准则,包括持续的不当行为。 **处理意见**: 在指定时间内,暂时禁止与社区进行任何形式的互动或公开交流。在此期间,不得与相关人员进行公开或私下互动,包括主动与行为准则执行者互动。违反这些条款可能会导致永久封禁。 ### 4. 永久封禁 **社区影响**:行为模式表现出违反社区准则,包括持续的不当行为、骚扰个人或攻击或贬低某个类别的个体。 **处理意见**:永久禁止在社区内进行任何形式的公开互动。 ## 参见 本行为准则改编自 [Contributor Covenant][homepage] 2.1 版,参见 [https://www.contributor-covenant.org/version/2/1/code\_of\_conduct.html][v2.1]。 社区处理方针灵感来源于 [Mozilla's code of conduct enforcement ladder][Mozilla CoC]。 有关本行为准则的常见问题的答案,参见 [https://www.contributor-covenant.org/faq][FAQ]。 其他语言翻译参见 [https://www.contributor-covenant.org/translations][translations]。 [homepage]: https://www.contributor-covenant.org [v2.1]: https://www.contributor-covenant.org/version/2/1/code_of_conduct.html [Mozilla CoC]: https://github.com/mozilla/diversity [FAQ]: https://www.contributor-covenant.org/faq [translations]: https://www.contributor-covenant.org/translations --- --- url: /contributors.md --- # 贡献者名单 本页面列出了 Zotero 中文社区的部分贡献者。此外还有很多开发者们维护了很多插件、框架等,为 Zotero 社区作出了极大贡献。 ## Zotero 中文文档贡献者 以下是 [`zotero-chinese/wiki`](https://github.com/zotero-chinese/wiki) 仓库的贡献者们: [![Zotero 中文文档贡献者](https://cdn.jsdelivr.net/gh/zotero-chinese/.github@main/.github-contributors/zotero-chinese_wiki.svg)](https://github.com/zotero-chinese/wiki/graphs/contributors) ## Zotero 中文插件商店贡献者 以下是 [`zotero-chinese/zotero-plugins`](https://github.com/zotero-chinese/zotero-plugins) 仓库的贡献者们: [![Zotero 中文插件商店贡献者](https://cdn.jsdelivr.net/gh/zotero-chinese/.github@main/.github-contributors/zotero-chinese_zotero-plugins.svg)](https://github.com/zotero-chinese/zotero-plugins/graphs/contributors) ## Zotero 中文 translator 贡献者 以下是 [`l0o0/translators_CN`](https://github.com/l0o0/translators_CN) 仓库的贡献者们: [![Zotero 中文 translator 贡献者](https://cdn.jsdelivr.net/gh/zotero-chinese/.github@main/.github-contributors/l0o0_translators_CN.svg)](https://github.com/l0o0/translators_CN/graphs/contributors) ## CSL 中文仓库贡献者 以下是 [`redleafnew/Chinese-STD-GB-T-7714-related-csl`](https://github.com/redleafnew/Chinese-STD-GB-T-7714-related-csl) 仓库的贡献者们: [![CSL 中文仓库贡献者](https://cdn.jsdelivr.net/gh/zotero-chinese/.github@main/.github-contributors/redleafnew_Chinese-STD-GB-T-7714-related-csl.svg)](https://github.com/redleafnew/Chinese-STD-GB-T-7714-related-csl/graphs/contributors) --- --- url: /translator-dev-guideindex.md --- # 转换器开发手册 ::: tip todo see ::: ## 前置知识 HTML、JavaScript、CSS 选择器、正则表达式等。 ## 资源 * [官方 Translator 仓库](https://github.com/zotero/translators) * [中文社区 Translators 仓库](https://github.com/l0o0/translators_CN) * [官方 Translator 文档](https://www.zotero.org/support/dev/translators) * [Adam Crymble. How to Write a Zotero Translator: A Practical Beginners Guide for Humanists](https://niche-canada.org/member-projects/zotero-guide/chapter1.html) --- --- url: /user-guidemiscwps-plugin-vba.md --- # 通过 VBA 在 WPS 中使用 Word 插件 ## 前言(很重要哦!) :::info **Zotero Word 插件在 WPS 的使用操作与 Office Word 类似,因此不再展开说明,点击下方蓝字可查看 📝**[**在 Word 中插入引文**](../ms-word-plugin.md) ::: > **🔊🔊🔊 必看!!!**:当新建一个空白的 Word 文档用 WPS 打开撰写论文等情况时:一定要先用 WPS 里的 Zotero Word 加载项插入几个文献,再点击**Add/Edit Citation 等这 6 个按钮**,尤其是一定要多次点击**Refresh**和**Unlink Citations**按钮,检查是否正常使用!!!(无法正常使用请见本文档 **四、Refresh/Unlink Citations 莫名失效**) :::warning **以下是 WPS 的 Zotero Word 加载项的常见问题及解决方法,均以 Window 系统为例演示 📝:** ::: ## 一、没有显示 Zotero 加载项 ![image.png](../../assets/images/wps/wps-没有显示加载项.png) :::info 如上图所示,WPS 的文档界面不显示 Zotero 加载项。**解决办法如下**: ::: ### 1、检查 Microsoft Word 加载项 检查 Zotero 是否已正常安装好**Microsoft Word 加载项**。安装此加载项的步骤,详见 Zotero 百科全书的 [「引文 | 插件」Word 加载项相关问题](../faqs/word-addon.md)(点击左侧蓝字自查) ![重新安装加载项](../../assets/images/zotero-addon-重新安装加载项.jpg) ### 2、WPS.VBA 插件的安装 若 WPS 为**个人版**,需额外安装 [**VBA 插件**](https://pan.baidu.com/s/1y-cjisA6Lxbnw3r3g_jmKA?pwd=moyu)(点击左侧蓝字获取插件) :::warning WPS 专业版等版本一般已自带 VBA 宏功能,Zotero 加载项如有使用问题,也可选择安装 VBA 插件。 ::: 1)将 WPS.VBA 安装程序**下载并保存**到电脑,确保 WPS 程序是 **未运行**状态。 ![image.png](../../assets/images/wps/wps-双击vba安装程序.png) 2)**双击**打开 WPS. VBA 安装程序,依次单击「**Next**」,最后单击「**Finish**」。用 WPS 打开任意一个 Word 文档,检查是否正常显示 Zotero 加载项。 ![image.png](../../assets/images/wps/wps-安装vba.png) :::warning 若 WPS. VBA 安装后,仍未显示 Zotero 加载项,或需将「**宏安全性**」设成低(但不建议)。除此外可见下方**3、补充 Zotero. dotm 文件** ::: ### 3、补充 Zotero.dotm 文件 1)在 Zotero 图标处**右键单击**,单击「**打开文件所在的位置**」打开 Zotero 安装路径 ![image.png](../../assets/images/wps/wps-打开zotero所在位置.png) 2)依次双击打开「**extensions**」-「**」-「install**」文件夹,复制 **Zotero.dotm** 文件。 ![image.png](../../assets/images/wps/wps-word模板位置.png) ![image.png](../../assets/images/wps/wps-模板文件.png) :::warning 如果上图文件夹位置没有 Zotero.dotm,可点击右侧蓝字获取 [**Zotero.dotm**](https://pan.baidu.com/s/1EMfR5KRi8Mxxn9Wa7UR7Ag?pwd=moyu) ::: 3)在 WPS 图标处**右键单击**,单击「**打开文件所在的位置**」打开 WPS 安装路径。 ![image.png](../../assets/images/wps/wps-打开wps程序目录.png) :::warning 以上前提是确保 WPS 已关闭,不在运行中!!! ::: 4)找到并打开**版本最新**的文件夹(即**数字最大**),再依次打开「**office6**」-「**startup**」 ![image.png](../../assets/images/wps/wps-选择wps程序目录版本.png) ![image.png](../../assets/images/wps/wps-程序目录-office6.png) 5)在 WPS 的「**startup**」启动项文件夹内,粘贴 **Zotero.dotm** 文件。再次用 WPS 打开任一 Word 文档,检查 WPS 是否已显示 Zotero 加载项。 ![image.png](../../assets/images/wps/wps-startup目录.png) ## 二、Zotero 加载项出现弹窗报错 ![image.png](../../assets/images/wps/wps-zotero在更新文档时出错.png) :::info 如上图所示,在 WPS 使用 Zotero 加载项的各个按钮时,会出现弹窗警告。**解决方法如下**: ::: ### 1、解决方法一 新建一个 Word 文档,先用 **Office**打开此文档,用 Zotero 加载项 **插入一篇文献**后,保存此文档即可。 ![image.png](../../assets/images/word-参考文献表.png) :::warning 设置较简单,仅适用于**同时安装 Office 和 WPS**。以后再使用时,可能还会报错。 如仍报错:可能是将光标置于插入引文 Citaion 和参考文献 References 位置的**前后或内部** 解决方法:将光标定位在远离上述位置如正文文字处 ::: ### 2、解决方法二 1)单击「**开发者工具**」-「**加载项**」,弹出的对话框单击「**选用**」。 ![image.png](../../assets/images/wps/wps-选择加载项模板.png) :::warning 设置较复杂,适用于 **同时装有 Office 和 WPS**或 **只装有 WPS** ::: :::warning 若「**开发工具**」选项卡的内容为灰色,即无法点击操作。 **解决方法**:安装 WPS. VBA 插件(详见本文档 **WPS. VBA 插件的安装**) 或需升级更新 WPS 版本,以及可能需要安装使用 WPS 专业版等版本。 ::: 2)弹出对话框,双击进入上方地址栏并复制**地址**,或地址栏处右键单击,再单击「**将地址复制为文本**」。复制好地址后,即可关闭当前窗口。 ![image.png](../../assets/images/wps/wps-复制地址.png) 3)单击「**文件**」选项卡,再单击「**打开**」。将 **地址** 粘贴至「**文件名**」,「**文件类型**」选择 **所有文件**,然后单击「**打开**」。 ![image.png](../../assets/images/wps/wps-保存文件.png) ![image.png](../../assets/images/wps/wps-保存模板位置.png) 4)选中 **Normal.dotm** 文件,单击「**打开**」,随之打开名为 **Normal.dotm** 文档。 ![image.png](../../assets/images/wps/wps-打开模板文件.png) 5)在 **Normal.dotm** 文档内,依次单击「**文件**」-「**文档加密**」-「**属性**」 ![image.png](../../assets/images/wps/wps-文件属性.png) 6)在 **Normal.dotm** 属性对话框,切换到「**自定义**」窗口,「**名称**」和「**取值**」分别输入 **ZOTERO\_PREF\_1** 和 **1** ,点击「**添加**」。同理,再添加上 **ZOTERO\_PREF\_2** 和 **1** ,最后点击「**确定**」。 ![image.png](../../assets/images/wps/wps-修改模板参数.png) 这一步完成的效果如下: ![image.png](../../assets/images/wps/wps-添加自定义属性.png) 7)左上角单击「**保存**」图标或快捷键 **Ctrl+S** 保存 **Normal.dotm** 文档。重新用 WPS 打开一个 Word 文档检查是否不再出现报错窗口。 ![image.png](../../assets/images/wps/wps-保存模板.png) :::warning 如仍报错:可能是将光标置于插入引文 Citaion 和参考文献 References 位置的**前后或内部** 解决方法:将光标定位在远离上述位置如正文文字处 ::: ## **三、Refresh/Unlink Citations 问号图标** ![image.png](../../assets/images/wps/wps-图标为问号.png) :::info 如上图所示,**Refresh**和 **Unlink Citations**图标显示为问号,**解决办法如下**: ::: ### 1、直接安装美化后的图标文件 1)我已创建 5 种 [Refresh 和 Unlink Citations 图标](https://pan.baidu.com/s/1BXjo-ZOT971qlsY-zboIdA?pwd=moyu)(任选其一),可直接安装使用。点击上方蓝字即可获取,首先将其**下载并保存**到电脑(如下图所示)。 ![image.png](../../assets/images/wps/wps-不同的模板.png) :::warning 只需选择使用一个自己喜爱的图标文件或可自己编辑设计图标。 ::: 下方是 5 个已编辑好的 **Refresh**和 **Unlink Citations**图标的图片展示。 ![image.png](../../assets/images/wps/wps-不同图标.png) 2)将上述**任一 Zotero**文件,粘贴至 WPS 的**启动项文件夹**内(详见本文档的 **补充 Zotero.dotm 文件**) 3)用 WPS 打开任一 Word 文档,但是会显示有 2 个 Zotero 加载项。 ![image.png](../../assets/images/wps/wps-重复的选项卡.png) :::warning 因为没更换 Zotero 安装路径的 Zotero.dotm,且 Office Word 的启动项文件夹未放置 Zotero.dotm。 ::: :::info 这样做的考虑是:保持 Office Word 的 Refresh 和 Unlink Citations 图标不变动,同时保留原有的 Zotero. dotm,以备不时之需。当然也可自己按喜好设置更换。 ::: #### 只保留 1 个 Zotero 加载项 1)依次单击「**开发者工具**」-「**加载项**」。单击选中 **Zotero.dotm**,单击「**禁用**」。 ![image.png](../../assets/images/wps/wps-禁用原模板.png) 2)**Zotero.dotm** 前面方框,此刻已更改成 **取消勾选**,点击「**确定**」即可。 ![image.png](../../assets/images/wps/wps-确定编辑.png) ## 四、Refresh/Unlink Citations 莫名失效 有时新建 Word 文档,用 WPS 打开后,无故出现点击 Refresh 和 Unlink Citations 功能失效(即无响应或莫名删掉引文 Citation)。 **解决方法**: 1)不要将光标置于插入引文 Citaion 和参考文献 References 的位置(即将光标定位在远离上述位置如正文文字处,再点击 Refresh 按钮) 2)重启 WPS,或新建一个 Word 文档,再用 WPS 打开。或必要时重启电脑即可正常使用。 > **🔊🔊🔊 必看!!!**:当新建一个空白的 Word 文档用 WPS 打开撰写论文等情况时:一定要先用 WPS 里的 Zotero Word 加载项插入几个文献,再点击**Add/Edit Citation 等这 6 个按钮**,尤其是一定要多次点击**Refresh**和**Unlink Citations**按钮,检查是否正常使用!!! ## 致谢 :::info 👍 到这里,在 WPS 中使用 Zotero Word 加载项的使用已接近尾声。在此由衷地感谢来自 b 站、知乎、CSDN 等网站的大神们分享的有关 WPS 的 Zotero Word 加载项使用的宝贵经验!!! ::: --- --- url: /contributingvscode-dev.md --- # 通过 VSCode.dev 网站在线更改本文档 ::: warning 推荐使用 GitHub 代码空间 由于操作类似,我们推荐使用 GitHub Codespace 来代替这种方法,GitHub 代码空间配置更少,且可以在线预览。 请查阅 [通过 GitHub Codespace 在线修改文档](./github-codespace.md) 了解详情。 ::: 1. 打开 2. 等待页面加载完成 3. 根据提示登录 GitHub 账号 ![根据提示登录 GitHub 账号](../assets/images/contributing/contribution-guide-vscode1.png) 4. 根据提示安装推荐的插件 ![安装插件](../assets/images/contributing/贡献指南-安装插件.png) 5. 新建分支 6. 进行对应的修改 7. 提交并推送 8. 发起 Pull Request 9. 等待社区管理员审核合并 ::: tip 请参阅《使用代码空间修改》 第 5~8 步请参阅 [通过 GitHub Codespace 在线修改文档 #修改和提交](./github-codespace.md#2-修改和提交) 了解详情。 ::: --- --- url: /user-guidetake-notes.md --- # 阅读文献、添加笔记 ::: warning 待办 此章节尚未根据 Zotero 7 更新,界面或操作逻辑若有不一致请以实际为准。 ::: Zotero 支持直接打开并批注 PDF,与内部的笔记、同步等功能深度集成。建议使用 Zotero 阅读器以获得最佳体验。 :::warning 内部阅读器所做的高亮、批注等**不在原始 PDF 上**,因此与第三方 PDF 阅读器的批注无法互通,也不支持非 Zotero 或非 WebDAV 的同步方式(关于同步,请见后续章节)。 如果你并没有特别依赖第三方 PDF 阅读器的某些特殊功能,建议使用 Zotero 阅读器。 ::: ## 打开文献 PDF 在主界面中选中文献,双击或回车即可打开文献 PDF。默认以新标签页打开。 > 💡 要以单独窗口打开文献,请在打开文献时按住 shift,或在标签页的标题上右键->移动标签->移动到新窗口。 > ![image.png](../assets/images/reader-移动选项卡.png) Zotero 会自动记忆打开的文献与当前阅读位置。在下一次打开 Zotero 或在其他设备上打开同一个文献时,将会保持当前阅读位置。 ## 阅读器功能介绍 ### 界面区域 * 左侧是预览栏,可预览缩略图 / 目录; * 右侧是信息/笔记栏; * 上方横条是工具栏,可在此缩放、移动页面,或使用高亮注释(alt+1)、文字注释(alt+2)、框选注释(alt+3)等,设置注释颜色(alt+4 切换); * 中央是阅读区域。 ![image.png](../assets/images/reader-注释.png) 快捷键整理(针对 Zotero 7 进行测试): | 快捷键 | 功能 | | ---------------- | ----------------------------------- | | `Alt + [数字 N]` | 打开/关闭第 N 个标注工具 | | `[数字 N]` | 切换当前标注工具的颜色为第 N 个颜色 | ### 选中弹窗 在阅读区域选中文本后,也可以通过弹窗来快速高亮内容(翻译按钮由 PDF Translate 插件提供,详见后续章节): ![image.png](../assets/images/reader-划选.png) 如果此时右侧打开了笔记,则还可以将选中内容一键添加到笔记: ![image.png](../assets/images/添加笔记.png) ### 在阅读器中创建笔记 右侧笔记栏中,点击 + 按钮即可创建笔记。条目笔记即属于当前文献条目的笔记;通过注释添加笔记即将文献中的所有注释(高亮等)添加到一个新的笔记。 ![image](../assets/images/添加笔记3.png) ### 管理注释 左侧预览栏中,可预览注释内容。每个注释分为三部分:内容,评论与标签。 ![image.png](../assets/images/reader-注释详情.png) 内容即注释本身,例如高亮文本、框选的图片等。评论区在内容区下方,可以写文字。标签区在最下方,可以为注释添加标签。 :::warning 目前,注释的标签不支持搜索,也不支持从主界面的标签管理器中筛选。 ::: 注释支持拖放,可以复制或拖到笔记或外部软件。 在不同的设备上,只要正确设置了同步,注释内容也将一并同步过去。 ## 笔记功能介绍 关于笔记的创建及相关功能,详见 (由 Better Notes 插件提供的文档)。 此处仅作简单介绍。 > 可了解 [Better Notes 插件](https://zotero.yuque.com/books/share/f3fe159f-956c-4f10-ade3-c87559cacb60/biigg4),更方便地在 Zotero 中做笔记,支持双链、支持模板、支持多种导出方式。 笔记分为两种: * 独立笔记。没有父条目,在主界面库视图中,不需要展开即可看到。 * 条目笔记。具有父条目,一般在某条文献下,展开可看到。 ### 创建笔记 创建笔记有多种方式: 1. 在 Zotero 主界面,中央上方工具栏选择新建笔记->新建独立笔记/添加子笔记; ![image](../assets/images/新建笔记.png) 2. 在主界面,选中条目,从右键菜单创建条目子笔记; ![image](../assets/images/添加笔记菜单.png) 3. 在 PDF 阅读器中,右侧笔记栏右上角的 '+' 按钮可创建条目子笔记; ![image](../assets/images/添加笔记3.png) 4. (需要 Better Notes 插件)在 PDF 阅读器中,左侧注释栏的每一个注释右上角的黄色花形按钮,参见 [4.3 从注释创建快速笔记/Quick Note from Annotation](https://zotero.yuque.com/books/share/f3fe159f-956c-4f10-ade3-c87559cacb60/pavzsz) ![image](../assets/images/zotero-plugin-better-notes/betternotes-添加到主笔记.png) ### 导出笔记 Zotero 提供了一项笔记导出为 markdown 的功能,但图片及许多格式不会被处理。 建议使用 Better Notes 提供的导出功能,可导出单条或多条笔记为 markdown 文件,或通过剪贴板复制到富文本编辑器(如 OneNote,Word),或导出为 PDF,并且支持自动同步更改(Zotero->外部导出目录)。关于导出,详见 [4.8 笔记导出/Export](https://zotero.yuque.com/books/share/f3fe159f-956c-4f10-ade3-c87559cacb60/nxlngg);关于同步,详见 [4.9 笔记同步/Sync](https://zotero.yuque.com/books/share/f3fe159f-956c-4f10-ade3-c87559cacb60/aid2c3)。 ![image](../assets/images/zotero-plugin-better-notes/betternotes-导出笔记对话框.png) 可通过以下三种方式导出笔记: 1. 在主界面,选中一个或多个笔记条目,在右键菜单中通过 " 导出笔记及条目子笔记 " 或 " 导出多个笔记 "; ![image](../assets/images/zotero-plugin-better-notes/betternotes-导出笔记.png) 2. 在笔记编辑器中,右上角工具栏导出按钮; ![image](../assets/images/导出笔记.png) 3. (不推荐)在主界面中,通过右键菜单使用 Zotero 自带的笔记导出功能。 --- --- url: /user-guidepluginstranslatealiyun.md --- # 阿里翻译接口申请及配置 ## 1. 翻译接口申请 打开 [阿里翻译](https://www.aliyun.com/product/ai/alimt?spm=5176.19720258.J_8058803260.278.e9392c4a5eczxp) 页面,点击立即开通,在登录页面,使用支付宝扫码登录。 ::: tip 注意,如果第一次开通,可能会提示你需要进行实名认证,按照提示进行认证即可。 ::: ![开通页面](../../../assets/images/zotero-plugin-translate/aliyun-1.png) 使用支付宝扫码登录: ![扫码页面](../../../assets/images/zotero-plugin-translate/aliyun-2.png) 扫码成功后,跳转到控制台(如果未跳转到控制台,请访问),分别有两个接口,按照需求进行开通: 1. 通用版,支持全球 214 种语言互译,采用最先进的神经网络翻译模型,适用于日常沟通、出国旅行等应用场景。 2. 专业版,电商、社交、医疗 3 大领域积累千万级双语语料和百万专业领域双语术语,推出多个专业领域翻译引擎。 ![通用版与专业版](../../../assets/images/zotero-plugin-translate/aliyun-3.png) 下面以专业版为例,直接点击立即开通: ![申请开通](../../../assets/images/zotero-plugin-translate/aliyun-4.png) ![开通完成](../../../assets/images/zotero-plugin-translate/aliyun-5.png) 你可以在 [控制台 - 服务开通与管理](https://mt.console.aliyun.com/service) 里查看已开通的服务: ![查看服务](../../../assets/images/zotero-plugin-translate/aliyun-6.png) 把鼠标移动到右上角,点击下面的 AccessKey 管理: ![获取密钥](../../../assets/images/zotero-plugin-translate/aliyun-7.png) 点击继续使用 AccessKey: ![子账户开通提示,可以不必开通](../../../assets/images/zotero-plugin-translate/aliyun-8.png) 如果后面忘记了 AccessKey 或发生泄露,可以重新在这申请一个新的: ![下载密钥](../../../assets/images/zotero-plugin-translate/aliyun-9.png) ## 2. Zotero 翻译引擎设置 打开「Zotero 设置」,转到「翻译」选项卡,在「翻译服务」里选择「阿里」,按照 `AccessKey ID#AccessKey Secret` 格式,输入到「密钥」中。注意这里的 `AccessKey ID` 和 `AccessKey Secret` 从你上面下载的 csv 文件里查看。 ![翻译插件设置窗口](../../../assets/images/zotero-plugin-translate/aliyun-10.png) 打开一篇英文 PDF,使用阿里的引擎,试试划词翻译正常不。有中文输出说明配置正常。 ![测试配置是否成功](../../../assets/images/zotero-plugin-translate/aliyun-11.png) ## 3. 翻译使用量查看 阿里云的翻译流量会每月更新,请不要超过每月的使用额度,不然会自动产生扣费。免费额度快用光了,请切换到其他引擎,查看具体的使用量,到 [控制台 - 监控统计](https://mt.console.aliyun.com/monitor) 查看。 ![翻译使用量查看](../../../assets/images/zotero-plugin-translate/aliyun-12.png) --- --- url: /user-guidemiscpreference.md --- # 首选项:高级设置 > 本节是 的翻译版本。 您可以通过 Zotero 中的首选项窗口编辑大多数 Zotero 设置。但是,Zotero 和 Zotero 连接器都支持额外的隐藏首选项。这些设置可能接受的测试较少和/或旨在用于更高级的用途。 ## Zotero 要查看 Zotero 首选项的完整列表,包括许多隐藏的首选项,请转到 Zotero 首选项的高级窗格并单击「设置编辑器」。在出现的列表顶部的过滤器字段中输入「Zotero」。用户可以安全更改的首选项如下所述。 大多数 Zotero 隐藏首选项都以 `extensions.zotero` 开头。 ### 通用设置 这些通用隐藏设置允许您定制化 Zotero。 | 设置名称 | 默认值 | 描述 | | -------------------------------- | ------------------------ | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | `attachmentRenameFormatString` | `{%c - }{%y - }{%t{50}}` | Zotero 自动重命名从连接器(又称 translator 浏览器扩展,见相关章节)保存的附件。此字符串控制这些名称的格式。 `%c` 是创建者,%y 是年份,`%t` 是标题,每个部分周围的花括号表示「仅当内部指定的字段非空时才包含此部分」,`{50}` 表示「截断 50 个字符」。您可以重新排列这些以满足您的需要。 | | `backup.interval` | `1440` | Zotero 自动备份数据库的最长间隔(以分钟为单位)。默认值为每 24 小时(1440 分钟) | | `backup.numBackups` | `2` | Zotero 应该保留多少自动数据库备份。多余的备份最先删除。这不包括在数据库升级期间进行的备份。请注意,将其设置得太高可能会导致数据库升级备份被覆盖。 | | `capitalizeTitles` | `true` | 默认情况下,Zotero 将重新命名您抓取条目的标题(例如,删除所有大写字母)。将此首选项切换为 false,您将保留标题的原始信息。 | | `debug.level` | `5` | 启用 debug.log 时,确定显示的调试级别中的最低值(1-5,其中 5 为最低) | | `debug.log` | `false` | 用于调试 Zotero。见[debug output](https://www.zotero.org/support/debug_output). | | `debug.time` | `false` | 启用 debug.log 时,显示上一次调试调用的毫秒数 | | `fontSize` | `1.0` | 此首选项允许您增加或减少 Zotero 界面中文本的大小。 | | `httpServer.enabled` | `true` | 如果设置为 true,Zotero 将侦听来自 Zotero 连接器的请求(例如,允许将项目从连接器保存到 Zotero)。 | | `httpServer.port` | `23119` | 如果启用了 httpServer.enabled,这是 Zotero 将侦听来自 Zotero 连接器的连接的端口。 | | `sortAttachmentsChronologically` | `false` | 如果设置为 true,您的附件将按您添加它们的顺序而不是按字母顺序排序。 | | `sortNotesChronologically` | `false` | 如果设置为 true,您的笔记将按您添加它们的顺序而不是按字母顺序排序。 | ### PDF Reader 阅读器 | 设置名称 | 默认值 | 描述 | | --------------------------------- | ------ | ---------------------------------------------------------- | | `sortNotesChronologically.reader` | `true` | 按时间倒序对条目进行排序。如果为 false,则按字母顺序排序。 | ### Note Editor 笔记编辑器 | 设置名称 | 默认值 | 描述 | | ------------------ | ------ | --------------------------------------------------------------------- | | `note.fontSize` | `14` | 注意字体大小 — 可从「查看」菜单设置,但其他值(包括小数)可以手动设置 | | `note.smartQuotes` | `true` | 自动将 straight quotes 转换为 typographic quotes | ### Translator 转换器设置 这些隐藏设置允许您控制某些特定条目格式的导入/导出转换器的行为。所有翻译器隐藏首选项都以 `extensions.zotero.translators` 开头。 | 设置名称 | 默认值 | 描述 | 应用于 | | -------------------------------------- | ------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------ | | `RIS.import.ignoreUnknown` | `true` | 不要在注释中存储无法映射到 Zotero 字段的值。 | `RIS import translator` | | `RIS.import.keepID` | `false` | 不要从「ID -」标签中删除值。可用于在 EndNote 中查找项目。 | RIS import translator | | `BibTeX.export.dontProtectInitialCase` | `false` | 如果只有第一个字母大写,则不要用大括号将单词括起来。如果您在 Zotero 中以标题大小写输入标题,则很有用(不推荐)。 `false: {Tame {The} {BeaST}}`, `true: {Tame The {BeaST}}` 请注意,如果第一个单词不包含内部大写字母,则永远不会被{}包围 | BibTeX export translator | | `BibTeX.export.simpleCitekey` | `null` | 默认情况下,仅对新添加的条目使用 citekey 的新简单格式(不允许除破折号和下划线之外的任何特殊字符)。将此隐藏键设置为 true,将始终使用这种简单的 citekeys。 | BibTeX export translator | ### 全文索引 这些设置处理 Zotero 从导入文件创建全文索引的能力。 | 设置名称 | 默认值 | 描述 | | --------------------- | ------ | ------------------------------------------------------------------------------------------------------------------------------------------------------- | | `search.useLeftBound` | `true` | 确定 Zotero 是仅根据左边界查找单词匹配,还是在单词中的任何位置查找匹配。将此设置为 false 可能对英语以外的语言有益,但可能会显着减慢 Zotero 的搜索功能。 | ### Report 这些选项允许您自定义您的 report 显示行为。 | 设置名称 | 默认值 | 描述 | | ----------------------------- | ------ | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | `report.includeAllChildItems` | `true` | 默认情况下,仅选择报告的父项会导致这些项的子注释和附件也包含在内。如果 includeAllChildItems 设置为 false,则仅包含您选择的项目。无论此设置如何,选择父项和子项的组合都将导致仅显示选定的项。 | | `report.combineChildItems` | `true` | 默认情况下,Zotero 将报告中的子注释和附件分组在其父项下。将此切换为 false 将导致注释与其父项分开显示。这对于有兴趣将 Zotero 的笔记功能用作大纲工具的人很有帮助。 | ### 引文快速复制设置 | 设置名称 | 默认值 | 描述 | | -------------------------------------------------- | ------- | ---------------------------------------------------------------------------------------------------------- | | `export.quickCopy.compatibility.indentBlockquotes` | `true` | Word 和 TextEdit 不会自行缩进块引用,需要启用此功能。在 LibreOffice 中产生额外的缩进,可以正确处理块引用。 | | `export.quickCopy.compatibility.Word` | `false` | 将 Word Normal 样式添加到段落并启用双倍行距。LibreOffice 将条件样式代码作为文档注释插入。 | | `quickCopy.quoteBlockquotes.plainText` | `true` | 在纯文本输出中的块引用段落周围添加引号 | | `quickCopy.quoteBlockquotes.richText` | `true` | 在富文本输出中为块引用段落添加引号 | ### Word 插件 | 设置名称 | 默认值 | 描述 | | ----------------------------------------- | ------- | ------------------------------------------------------------------------------------------------------------------------ | | `integration.keepAddCitationDialogRaised` | `false` | 如果将其切换为 true,则可以将 Zotero Word 插件界面用于添加引文始终位于最前面。并防止它隐藏在您正在使用的 Word 窗口后面。 | ## Zotero 连接器 Connector 要查看 Zotero 连接器的隐藏设置,请打开连接器的首选项(通过右键单击保存按钮并在 Chrome 和 Firefox 中选择首选项/选项,或在 Safari 中长按保存按钮)。然后,单击「高级」,然后单击「配置编辑器」。 ### 转换器设置 Zotero 连接器支持一些通常适用于所有转换器或特定网站转换器的设置。要使用这些设置,在 Zotero 连接器配置编辑器中,单击「添加设置」。键入或粘贴首选项的名称,然后单击「确定」。从下表中输入适当的首选项值(例如,true 或 1),然后再次单击「确定」。 | 设置名称 | 默认值 | 描述 | 应用于 | | --------------------------------- | ------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------- | | `translators.attachSupplementary` | `false` | 转换器在导入项目时应尝试附加补充数据。 | [All web translators implementing this behavior](https://forums.zotero.org/discussion/21880/supplementary-information/#Comment_153889) | | `translators.supplementaryAsLink` | `false` | 补充数据附件应作为链接附加,而不是下载。如果禁用 attachSupplementary,则此选项无效。将此选项设置为「true」可以保持快速访问补充数据的便利性,但可以加快从 Web 保存项目的速度。 | [All web translators implementing this behavior](https://forums.zotero.org/discussion/21880/supplementary-information/#Comment_153889) | | `translators.ACS.highResPDF` | `0` | 确定附加的全文 PDF 版本:0 - 带链接的 PDF;1 - 高分辨率 PDF;2 - 两者 | ACS Publications | 注意:补充数据首选项仅适用于转换器支持此行为的网站。如果您遇到没有导入补充数据的站点,请在 Zotero 论坛上报告: [Zotero forums](https://www.zotero.org/forum)。