Zotero 第四期「扩展篇」添加常用扩展

本文将会给出 Zotero 的常用扩展,以及对应的详细配置,足以应对大部分情况,若之后有更多的实用功能,我会在此基础上进行补充。

image-20240809152139048
本文插件不限速下载:

一. 局部翻译

插件名称:Pdf-Translate

地址:https://github.com/windingwind/zotero-pdf-translate

  • 支持多种翻译引擎
  • 以弹窗形式出现,可调整字体大小

image-20240623103525412

1.1 插件安装

所有 Zotero 插件的安装完全一致,这里以pdf-translate为例

  • 对于打算跟着本文教程操作的朋友,我的建议是先把本文提供的插件全部安装完毕

本文插件不限速下载:

选择「工具」->「附加组件」,打开「Add-ons Manager」窗口

image-20240715111934172

将所需要的插件(zotero-pdf-translate.xpi)拖拽至「Add-ons Manager」窗口内,即可完成插件的安装

image-20240715112236049

在「编辑」->「首选项」中可以找到插件的配置,如刚刚新增的「翻译」选项卡

image-20240715112436786

1.2 介绍

该插件的翻译引擎支持绝大多数,翻译的配置分为字典服务和翻译服务

  • 字典服务(仅支持单词翻译):无需配置密钥
  • 翻译服务(同时支持句子和单词翻译):部分翻译引擎需要配置密钥(后面带个🔑图标)

如果我们在插件设置中关闭「使用字典服务翻译词语」,此时单词和句子的翻译都是使用「翻译服务

如果勾选「使用字典服务翻译词语」,将优先使用字典服务翻译单词

image-20240630103954934

故我们关注的重点在翻译服务,在翻译服务中:

不需要配置即可使用的翻译引擎Google(API)海词DeepLx

经小帅测试,密钥可成功配置的翻译引擎有有道智云百度

1.3 配置

以有道智云为例,讲解一下详细的配置流程:

注意:有道智云对外提供的服务是计费的,但是对于新注册用户会向其账户赠送 50 元体验金(大概可翻译100万字符)

第一步:打开有道智云注册登录

https://ai.youdao.com/login.s

image-20240701112135875

第二步:访问控制台并创建应用

自然语言翻译服务」->「文本翻译」->「创建应用

image-20240703113837118

应用名称:任意

选择服务:可勾选文本、文档、网页翻译

接入方式:选 API

应用类别:任意

image-20240701113417897

点击「确定」后即可创建成功

image-20240701113552579

第三步:复制「应用 ID」和「密钥」

image-20240701113559251

将「应用 ID」和「密钥」通过#进行组合在一起应用ID#应用密钥

例如,你的应用ID是112233,应用密钥是aabbcc,则应该是 112233#aabbcc

第四步:打开 Zotero 的配置

  1. 在「编辑」->「首选项」中找到「翻译」选项卡
  2. 翻译服务选择「有道智云」
  3. 将组合的内容填入到「密钥」栏中

image-20240715142636201

打开英文文献进行测试,如果弹出的翻译窗口可以正常翻译则表示配置成功

image-20240630102441765

更多密钥的配置可参考官方文档:https://zotero.yuque.com/staff-gkhviy/pdf-trans

二. 样式管理

插件名称: Style-fulltext

地址:https://github.com/MuiseDestiny/zotero-style

其主要功能如下:

  • 阅读背景
  • 期刊分区

2.1 阅读背景

插件安装完毕,会在文献阅读页面的顶部出现下方的按钮,在该按钮中可以切换阅读背景颜色

image-20240623103818865

2.2 期刊分区

期刊分区的标签如何配置?

打开 easyscholar 网站注册并登录:https://www.easyscholar.cc

然后打开:https://www.easyscholar.cc/console/user/open

找到密钥并复制

image-20240716113815824

在「编辑」->「首选项」中找到「高级」选项卡

  • 选择「常规」->「编辑器」->Search中输入「easy」->双击「extensions.zotero.....」->填入「密钥」->「OK

image-20240716112147090

右击「标题」这一行任意位置,然后勾选「期刊标签」则可显示「期刊标签」

然后右击「期刊标签」->「列设置」->「Fields」->「Map」->「Set

其中「Fields」和「Map」直接 COPY 下面的即可

Fields:utd24, ajg, sciBase, ssci, sci, sciUP, sciif5, eii, cssci

Map:SCIIF=IF,SCII(5),SCI=,SCI升级版,北大中文核心=,北核

image-20240716113233908

三. 获取增强

插件名称:jasminum(茉莉花)

地址:https://github.com/l0o0/jasminum

主要功能有:

  1. 重要:抓取知网等中文期刊的附件(PDF/CAJ)
  2. 给知网学位论文添加书签(依赖于PDFtk)
  3. 更新中文文献引用次数,核心期刊信息
  4. 合并/拆分姓、名,统一日期格式

当插件安装成功即可拥有上面功能,当我们想要更新需要抓取的某些网站时,可以在「茉莉花」选项卡中根据下图进行操作

image-20240715151118378

给知网学位论文添加书签这个功能需要我们这里再安装一个软件:PDFtk

下载(被墙):https://www.pdflabs.com/tools/pdftk-server

在配置 PDFtk 路径时需要注意

假如我们的安装路径是:C:\Program Files (x86)\PDFtk Server

则我们应该选择(bin目录):C:\Program Files (x86)\PDFtk Server\bin

当路径后边出现 ✔ 表示配置成功

image-20240715173558868

当我们再次获取知网文献或者通过右击PDF ->「知网助手」->「添加PDF书签」,将会自动添加对应章节的书签

image-20240716103820356

四. Markdown笔记

插件名称:markdown here

地址:https://github.com/adam-p/markdown-here

让 Zotero 自带的笔记支持 Markdown 语法,同时为下面的笔记管理做铺垫

五. 笔记管理

插件名称:Better Notes

地址:https://github.com/windingwind/zotero-better-notes

其主要功能如下:

  • 导入笔记模板
  • 关联全部笔记

5.1 导入笔记模板

当我们想要快速对某一篇论文做笔记,可以导入笔记模板,模板效果图展示:

image-20240718095118957

SCI 笔记模版:https://github.com/windingwind/zotero-better-notes/discussions/771

基于上面的 SCI 笔记模版 修改后如下:

Zotero6

name: "[Item]my paper note template"
content: |-
  <!-- 标题 -->
  <h1 style="color:#193c47; background-color:#FFFDE7; padding:8px;">
    ${(() => {
      const titleTranslation = topItem.getField("titleTranslation");
      if (titleTranslation) {
        return `(${topItem.getField("date")}) ${topItem.getField("title")} (${titleTranslation})`;
      } else {
        return `(${topItem.getField("date")}) ${topItem.getField("title")}`;
      }
    })()}
  </h1>
  
  <!-- Meta Data -->
  <table>
    <!-- 作者 -->
    <tr>
      <td style="color:#193c47; background-color:#dbeedd; padding:8px;">
        <b>作者:</b> ${topItem.getCreators().map((v) => v.firstName + " " + v.lastName).join("; ")}
      </td>
    </tr>
  
    <!-- 期刊 -->
    <tr>
      <td style="color:#193c47; background-color:#f3faf4; padding:8px;">
        <b style="color:#193c47;">期刊: <b style="color:#FF0000">${topItem.getField('publicationTitle')}</b></b><b style="color:#193c47;"> (发表日期: ${topItem.getField("date")})</b>
      </td>
    </tr>
  
    <!-- 期刊分区 -->
    <tr>
      <td style="color:#193c47; background-color:#dbeedd; padding:8px;">
        <b>期刊分区: </b>
        <!-- 引用了zotero style插件的标签,请提前安装,否则找不到分区 -->
        ${(() => {let space = " ㅤㅤ ㅤㅤ"
                return Array.prototype.map.call(Zotero.ZoteroStyle.data.ztoolkit.ItemTree.globalCache.renderCellHooks.PublicationTags(
            0,
            Zotero.ZoteroStyle.data.ztoolkit.ItemTree.fieldHooks.globalCache.getFieldHooks.PublicationTags(
            "", true, true,
            topItem, undefined)
            ).childNodes,
            e => {
            e.innerText = space + space + e.innerText + space + space;
            return e.outerHTML
            }).join(space)
            })()
            }
      </td>
    </tr>

    <!-- 本地链接 -->
    <tr>
      <td style="color:#193c47; background-color:#f3faf4; padding:8px;">
        ${(() => {
          const attachments = Zotero.Items.get(topItem.getAttachments());
          if (attachments && attachments.length > 0) {
            return `<b>本地链接: </b><a href="zotero://open-pdf/0_${attachments[0].key}">${attachments[0].getFilename()}</a>`;
          } else {
            return `<b>本地链接: </b>`;
          }
        })()}
      </td>
    </tr>
    
    <!-- DOI or URL -->
    <tr>
      <td style="color:#193c47; background-color:#dbeedd; padding:8px;">
        ${(() => {
          const doi = topItem.getField("DOI");
          if (doi) {
            return `<b>DOI: </b><a href="https://doi.org/${topItem.getField('DOI')}">${topItem.getField('DOI')}</a>`;
          } else {
            return `<b>URL: </b><a href="${topItem.getField('url')}">${topItem.getField('url')}</a>`;
          }
        })()}
      </td>
    </tr>
    
    <!-- 摘要 -->
    <tr>
      <td style="color:#193c47; background-color:#f3faf4; padding:8px;">
        ${(() => {
          const abstractTranslation = topItem.getField('abstractTranslation');
          if (abstractTranslation) {
            return `<b>摘要翻译: </b><i>${abstractTranslation}</i>`;
          } else {
            return `<b>摘要: </b><i>${topItem.getField('abstractNote')}</i>`;
          }
        })()}
      </td>
    </tr>
  
    <!-- 笔记日期 -->
    <tr>
      <td style="color:#193c47; background-color:#dbeedd; padding:8px;">
        <b>笔记日期: </b>${new Date().toLocaleString()}
      </td>
    </tr>
  
  </table>
  
  <!-- 正文 -->
  <p></p>
  <span>
    <h2 style="color:#e0ffff; background-color:#66cdaa;">一.研究内容</h2>
    <hr />
  </span>
  <blockquote>Tips: 做了什么,解决了什么问题,创新点与不足?</blockquote>
  <h3>1.1 主要内容</h3>
  <p></p>
  <h3>1.2 创新点</h3>
  <p></p>
  <h3>1.3 不足</h3>
  <p></p>
  
  <span>
    <h2 style="color:#20b2aa; background-color:#afeeee;">二.模型分析</h2>
    <hr />
  </span>
  <blockquote>Tips: 整个模型(以及每一个小的架构)的输入和输出是什么?</blockquote>
  </span>
  <h3>2.1 数据</h3>
  <p></p>
  <h3>2.2 方法</h3>
  <p></p>
  <h3>2.3 实验</h3>
  <p></p>
  <h3>2.4 结果</h3>
  <p></p>
  
  <span>
    <h2 style="color:#004d99; background-color:#87cefa;">三.个人总结</h2>
    <hr />
  </span>
  <blockquote>Tips: 你对哪些内容产生了疑问,你认为可以如何改进?</blockquote>
  <h3>3.1 疑问点</h3>
  <p></p>
  <h3>3.2 改进猜想</h3>
  <p></p>
  <h3>3.3 验证猜想</h3>
  <p></p>

Zotero7

name: "[Item]my paper note template"
content: |-
  <!-- 标题 -->
  <h1 style="color:#193c47; background-color:#eef9fd; padding:8px;">
    ${(() => {
      const titleTranslation = topItem.getField("titleTranslation");
      if (titleTranslation) {
        return `(${topItem.getField("date")}) ${topItem.getField("title")} (${titleTranslation})`;
      } else {
        return `(${topItem.getField("date")}) ${topItem.getField("title")}`;
      }
    })()}
  </h1>
  
  <!-- Meta Data -->
  <table>
    <!-- 作者 -->
    <tr>
      <td style="color:#193c47; background-color:#dbeedd; padding:8px;">
        <b>作者:</b> ${topItem.getCreators().map((v) => v.firstName + " " + v.lastName).join("; ")}
      </td>
    </tr>
  
    <!-- 期刊 -->
    <tr>
      <td style="color:#193c47; background-color:#f3faf4; padding:8px;">
        <b style="color:#193c47;">期刊: <b style="color:#FF0000">${topItem.getField('publicationTitle')}</b></b><b style="color:#193c47;"> (发表日期: ${topItem.getField("date")})</b>
      </td>
    </tr>
  
    <!-- 期刊分区 -->
    <tr>
      <td style="color:#193c47; background-color:#dbeedd; padding:8px;">
        <b>期刊分区: </b>
        <!-- Zotero7中,引用了Ethereal Style插件的标签,请提前安装Ethereal Style-->
        ${{
        let space = " ㅤㅤ ㅤㅤ"
        return Array.prototype.map.call(
          Zotero.ZoteroStyle.api.renderCell(topItem, "publicationTags").childNodes,
          e => {
            e.innerText =  space + e.innerText + space;
            return e.outerHTML
          }
          ).join(space)
        }}$
      </td>
    </tr>

    <!-- 本地链接 -->
    <tr>
      <td style="color:#193c47; background-color:#f3faf4; padding:8px;">
        ${(() => {
          const attachments = Zotero.Items.get(topItem.getAttachments());
          if (attachments && attachments.length > 0) {
            return `<b>本地链接: </b><a href="zotero://open-pdf/0_${attachments[0].key}">${attachments[0].getFilename()}</a>`;
          } else {
            return `<b>本地链接: </b>`;
          }
        })()}
      </td>
    </tr>

    <!-- DOI or URL -->
    <tr>
      <td style="color:#193c47; background-color:#dbeedd; padding:8px;">
        ${(() => {
          const doi = topItem.getField("DOI");
          if (doi) {
            return `<b>DOI: </b><a href="https://doi.org/${topItem.getField('DOI')}">${topItem.getField('DOI')}</a>`;
          } else {
            return `<b>URL: </b><a href="${topItem.getField('url')}">${topItem.getField('url')}</a>`;
          }
        })()}
      </td>
    </tr>
    
    <!-- 摘要 -->
    <tr>
      <td style="color:#193c47; background-color:#f3faf4; padding:8px;">
        ${(() => {
          const abstractTranslation = topItem.getField('abstractTranslation');
          if (abstractTranslation) {
            return `<b>摘要翻译: </b><i>${abstractTranslation}</i>`;
          } else {
            return `<b>摘要: </b><i>${topItem.getField('abstractNote')}</i>`;
          }
        })()}
      </td>
    </tr>
  
    <!-- 笔记日期 -->
    <tr>
      <td style="color:#193c47; background-color:#dbeedd; padding:8px;">
        <b>笔记日期: </b>${new Date().toLocaleString()}
      </td>
    </tr>
  
  </table>
  
  <!-- 正文 -->
  <p></p>
  <span>
    <h2 style="color:#e0ffff; background-color:#66cdaa;">一.研究内容</h2>
    <hr />
  </span>
  <blockquote>Tips: 做了什么,解决了什么问题,创新点与不足?</blockquote>
  <h3>1.1 主要内容</h3>
  <p></p>
  <h3>1.2 创新点</h3>
  <p></p>
  <h3>1.3 不足</h3>
  <p></p>
  
  <span>
    <h2 style="color:#20b2aa; background-color:#afeeee;">二.模型分析</h2>
    <hr />
  </span>
  <blockquote>Tips: 整个模型(以及每一个小的架构)的输入和输出是什么?</blockquote>
  </span>
  <h3>2.1 数据</h3>
  <p></p>
  <h3>2.2 方法</h3>
  <p></p>
  <h3>2.3 实验</h3>
  <p></p>
  <h3>2.4 结果</h3>
  <p></p>
  
  <span>
    <h2 style="color:#004d99; background-color:#87cefa;">三.个人总结</h2>
    <hr />
  </span>
  <blockquote>Tips: 你对哪些内容产生了疑问,你认为可以如何改进?</blockquote>
  <h3>3.1 疑问点</h3>
  <p></p>
  <h3>3.2 改进猜想</h3>
  <p></p>
  <h3>3.3 验证猜想</h3>
  <p></p>

更多模板:项目讨论区(discussions)就是大家分享模板的地方。

项目讨论区:https://github.com/windingwind/zotero-better-notes/discussions

自定义模板
  • 法1:手动新建
  • 法2:剪贴板导入

无论是 法1 还是 法2 都需要先复制我们需要的模板代码,在复制的时候需要注意:

手动新建方式不需要复制 上面的代码,剪贴板导入则需要

image-20240718103211803

法1(手动新建):选择「编辑」->「模板编辑器

image-20240718095352583

选择「新建」->「模板名称」->「粘贴模板代码」->「保存

注意:模板名称栏在 Zotero6 版本以 [item] 开头,其后边是名称

image-20240718095726839

法2(剪贴板导入):选择「编辑」->「从剪贴板导入新模板

image-20240718102436357

关于自定义模板,常见的报错情况分为以下两种:

情况 1:Template New Template: 1721274243749 Error: ReferenceError: topItem is not defined

因为模板名称得是 [Item]名称 的形式

情况 2:Template Preview Error: TypeError: Zotero. ZoteroStyle. Data. Ztoolkit. ItemTree. FieldHooks. GlobalCache is undefined

笔记模板通过 zotero style 插件读取文件元数据,如果插件版本(我的1.0.4)不匹配可能也不行

导入模板

打开自己要阅读的文件 PDF 后(确保这个 PDF 有条目信息)

右侧条目笔记一排的加号」->「从模板新建条目笔记」->「在弹窗中打开自己要的模板」->「使用文库中选中的条目

image-20240718170847825

关于导入模板,常见的报错情况:

情况 1:Template [item]my paper note template Error: Error: getAttachments() cannot be called on attachment items

必须要选中某个条目信息(直接选中 PDF 不行),不然无法正确的生成笔记模板

另外,如果在笔记中你的标题和摘要并没有进行翻译,请检查下面两项:

  • 第一,你没有安装本文提到的「局部翻译」插件
  • 第二,条目信息右击,选择「翻译标题」和「翻译摘要」,创建的笔记才会是翻译后的内容

image-20240718170347893

5.2 关联全部笔记

这里先来讲述一下主要工作:可在一个工作区笔记中快速链接到其它笔记

找一个文件夹比如下图的「我的笔记」,在这个文件夹中「新建工作区笔记」,然后起个名称

image-20240718171852164

有了这个笔记工作区之后,我们可以在里面输入(需要安装本文提供的Markdown笔记插件)

## 一 任务1

## 二 任务2

## 三 任务3

我们打开刚刚的笔记,然后找到笔记按钮,然后将其添加到「任务2」

image-20240718172751202

然后去「笔记工作区」会发现这两个内容被链接到这里,左下角可以切换预览方式

image-20240718172851929

当鼠标左键点击到链接上,第二个按钮可以将完整内容呈现到下方

image-20240718173118950

六. DOI获取

插件名称:DOI Manager

地址:https://github.com/bwiernik/zotero-shortdoi

DOI 全称:digital object identifier,数字对象唯一标识

DOI 具有唯一性,可以根据它方便搜索到所需要的论文

该插件就是用来获取文献的 DOI ,配合茉莉花插件(会自动获取 DOI)

七. 文件重命名

插件名称:ZotFile

地址:https://github.com/jlegewie/zotfile

如何重命名:选中其中一个文件,右击在弹出窗口中选择【Manage Attachments】->【Rename and Move

  • 选中需要命名的文件就可以批量重命名

image-20240808094407785

image-20240808094548298

7.1 命名方法

两种方案:

  • 法1(推荐):在源文件上重命名
  • 法2:copy 一份源文件再重命名

法1(推荐):在源文件上重命名

  • 选择「工具」->「ZotFile Preferences

image-20240808091926414

  • General Settings」->「Attach stored copy of file(s)

image-20240808090821942

源文件的所在的目录可根据下图进行查找

image-20240807175627397

法2:copy 一份源文件再重命名

  • 工具」->「ZotFile Preferences」->「General Settings」->「Custom Locatioin」,选择「Choose」自定义文件复制后的路径

image-20240807181226176

7.2 命名规则

关于重命名的一些格式:

  • %a :作者名
  • %y :年份
  • %t :论文标题
  • 更多:https://zotfile.com/index.html#renaming-rules

小帅格式的设置:

  • {%y_}{%t}
  • 取消勾选【truncated title after】,防止标题进行截断
  • 设置【Maximum length of title】为 200

image-20240808090958428

当我们设置好之后,然后在线获取文献时就会自动根据规则命名

八. 备份扩展

插件名称:tara(蒲公英)

地址:https://github.com/l0o0/tara

Tara 是一个用于备份和恢复的插件,支持:

  • 备份已安装插件
  • 备份 CSL 文件
  • 备份 translators/locate 文件夹
  • 备份 Zotero 配置及插件配置

当我们安装完毕后在主页面会出现以下按钮:

image-20240716093611117

Tara有五个按钮,其中创建对应恢复,导出对应导入,设置用于调整需要备份的内容
请添加图片描述

如果想要把备份的文件保存到 Zotero 「我的文库」中,使用「创建」按钮,将会保存至「Tara_Backup」的条目中,较推荐的方案

image-20240716094521930

如果想要把备份的文件保存到 Zotero 数据的存储位置,使用「导出」按钮,将会保存至「Backup」文件夹内

image-20240716094227448

更多插件的下载,请进入 Zotero 插件商店查看:

https://zotero-chinese.com/plugins

  • 27
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小帅同学2019

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值