Pandoc, Zotero, JabRef 管理论文引用,生成参考文献 | 撰写论文 paper

书接上回,使用 Obsidian, Zotero, JabRef, Pandoc, Markup-Markdown | 撰写论文 paper

管理论文引用,生成参考文献

  • TL; DR
  • 导出 bibliography 文件
    • JabRef
    • Zotero
  • 参考文献引用语法
  • reference-doc
  • Links

TL; DR

安装 pandoc v3.6.2. 使用一下命令,将 markdown 转化为论文的 word 文件。

pandoc --from markdown+footnotes+citations \--wrap=none \--reference-doc=../styles/project_paper.docx \--csl=refs/diabetologia.csl \--citeproc \--bibliography=manual_20250203.yaml \--bibliography=refs.yaml \-i index.md -o index.docx

命令解释:

  • markdown+footnotes+citations: 设置pandoc 的插件
  • reference-doc:论文的格式
  • csl:引用参考文献的语法;diabetologia.csl 在 https://www.zotero.org/styles?q=diabetologia 下载
  • citeproc:明确使用哪个插件处理交叉引用
  • bibliography:参考文献的索引文件,bibliography 文献管理可以通过 zotero 自动导出或 JabRef 手动维护;支持添加多个 bibliography。

如果在 Markdown 中,使用了

[@Hinton2006] [@Krizhevsky2017]
...# References

那么,对应的生成的 docx 就会包含(转化后的文本):

在这里插入图片描述

以及参考文献内容:

在这里插入图片描述
注意:Markdown 文件的最后一行必须是 # References,否则将不生成参考文献列表,见官方文档。

导出 bibliography 文件

导出 bibliography 文件的格式使用:CSL YAML. 比如 JabRef 中,通过 File -> Export 进行导出。

注意:不要直接改 CSL YAML 文件,而是使用 JabRef 或 Zotero 进行维护,因为 JabRef 或 Zotero 不能直接打开 CSL YAML 文件。

JabRef

在这里插入图片描述

Zotero

Zotero 导出如下,选择一个 Collection 右键 -> Export Collection, 选择 Better CSL YAML(需要安装插件 Better BibTeX for Zotero).

在这里插入图片描述

参考文献引用语法

在 Markdown 中使用 CitationKey,生成参考文献引用,对应格式如下:
在这里插入图片描述
除了使用 [] 的形式添加引用,也可以用文本的形式:

在这里插入图片描述

reference-doc

reference-doc 就是样式文件,比如生成 docx 的大标题、二级标题、行间距、正文字体等。

最快的获得一个 reference-doc 模版的方法,就是先用 pandoc 将一个 markdown 转化为 docx 文件,然后以这个文件为蓝本,更新页眉、页脚、headings。

更多关于 reference-doc 的介绍,参考官方文档。

在这里插入图片描述

Links

Scholarly Writing Citations

zotero csl styles

Bibliographies 以及 Citations

Citations of Pandoc

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/894513.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

为AI聊天工具添加一个知识系统 之85 详细设计之26 批流一体式 与数据提取器

Q843、批流一体式 统一数据处理框架 "批流一体式统一数据处理框架" 这一概念通常指的是一种将批处理(Batch Processing)和流处理(Stream Processing)结合在一起的数据处理架构。它的目标是提供一个统一的框架&#xff…

深入理解 `box-sizing: border-box;`:CSS 布局的利器

深入理解 box-sizing: border-box;:CSS 布局的利器 默认行为示例代码 使用 box-sizing: border-box;示例代码 全局应用 box-sizing: border-box;示例代码 实际应用场景1. 表单布局2. 网格布局 总结 在 CSS 中,box-sizing 属性决定了元素的总宽度和高度是…

CSDN原力值提升秘籍:解锁社区活跃新姿势

在 CSDN 这个技术交流的大舞台上,原力值不仅是个人活跃度的象征,更是开启更多权益与福利的钥匙。最近,我出于自身需求,一头扎进了提升原力值的研究中,经过多方探索与资料整理,现在就迫不及待地把这些干货分…

计算机网络——流量控制

流量控制的基本方法是确保发送方不会以超过接收方处理能力的速度发送数据包。 通常的做法是接收方会向发送方提供某种反馈,如: (1)停止&等待 在任何时候只有一个数据包在传输,发送方发送一个数据包,…

2024美团春招硬件开发笔试真题及答案解析

目录 一、选择题 1、在 Linux,有一个名为 file 的文件,内容如下所示: 2、在 Linux 中,关于虚拟内存相关的说法正确的是() 3、AT89S52单片机中,在外部中断响应的期间,中断请求标志位查询占用了()。 4、下列关于8051单片机的结构与功能,说法不正确的是()? 5、…

【C语言入门】解锁核心关键字的终极奥秘与实战应用(三)

目录 一、auto 1.1. 作用 1.2. 特性 1.3. 代码示例 二、register 2.1. 作用 2.2. 特性 2.3. 代码示例 三、static 3.1. 修饰局部变量 3.2. 修饰全局变量 3.3. 修饰函数 四、extern 4.1. 作用 4.2. 特性 4.3. 代码示例 五、volatile 5.1. 作用 5.2. 代码示例…

Kafka分区策略实现

引言 Kafka 的分区策略决定了生产者发送的消息会被分配到哪个分区中,合理的分区策略有助于实现负载均衡、提高消息处理效率以及满足特定的业务需求。 轮询策略(默认) 轮询策略是 Kafka 默认的分区策略(当消息没有指定键时&…

c++ stl 遍历算法和查找算法

概述&#xff1a; 算法主要由头文件<algorithm> <functional> <numeric> 提供 <algorithm> 是所有 STL 头文件中最大的一个&#xff0c;提供了超过 90 个支持各种各样算法的函数&#xff0c;包括排序、合并、搜索、去重、分解、遍历、数值交换、拷贝和…

2.2 实现双向链表的快速排序

实现一个双向链表的快速排序。 1>程序代码 #include <stdio.h> #include <string.h> #include <unistd.h> #include <stdlib.h> #include <sys/types.h> #include <sys/stat.h> #include <fcntl.h> #include <pthread.h>…

力扣动态规划-19【算法学习day.113】

前言 ###我做这类文章一个重要的目的还是记录自己的学习过程&#xff0c;我的解析也不会做的非常详细&#xff0c;只会提供思路和一些关键点&#xff0c;力扣上的大佬们的题解质量是非常非常高滴&#xff01;&#xff01;&#xff01; 习题 1.矩形中移动的最大次数 题目链接…

Gurobi基础语法之 addConstr, addConstrs, addQConstr, addMQConstr

在新版本的 Gurobi 中&#xff0c;向 addConstr 这个方法中传入一个 TempConstr 对象&#xff0c;在模型中就会根据这个对象生成一个约束。更重要的是&#xff1a;TempConstr 对象可以传给所有addConstr系列方法&#xff0c;所以下面先介绍 TempConstr 对象 TempConstr TempC…

五子棋对弈

问题描述 "在五子棋的对弈中&#xff0c;友谊的小船说翻就翻&#xff1f;" 不&#xff01;对小蓝和小桥来说&#xff0c;五子棋不仅是棋盘上的较量&#xff0c;更是心与心之间的沟通。这两位挚友秉承着"友谊第一&#xff0c;比赛第二"的宗旨&#xff0c;决…

使用 HTTP::Server::Simple 实现轻量级 HTTP 服务器

在Perl中&#xff0c;HTTP::Server::Simple 模块提供了一种轻量级的方式来实现HTTP服务器。该模块简单易用&#xff0c;适合快速开发和测试HTTP服务。本文将详细介绍如何使用 HTTP::Server::Simple 模块创建和配置一个轻量级HTTP服务器。 安装 HTTP::Server::Simple 首先&…

在AI技术深度渗透的背景下,2025年传媒互联网行业的哪些细分场景和产品形态将迎来爆发式增长?

一、AI技术重构传媒互联网行业版图&#xff1a;从底层逻辑到应用场景 近年来&#xff0c;AI技术已从实验室走向商业化落地&#xff0c;而传媒互联网行业因其庞大的用户基数、高频交互场景和丰富的数据积累&#xff0c;成为AI应用的主战场。根据华源证券最新行业周报&#xff0…

Docker Hub 镜像 Pull 失败的解决方案

目录 引言一、问题二、原因三、解决方法四、参考文献 引言 在云原生技术火热的当下&#xff0c;Docker可谓是其基础&#xff0c;由于其简单以及方便性&#xff0c;让开发人员不必再为环境配置问题而伤脑筋&#xff0c;因为可将其看作一个虚拟机程序去理解。所以掌握好它可谓是…

neo4j-community-5.26.0 create new database

1.edit neo4j.conf 把 # The name of the default database initial.dbms.default_databasehonglouneo4j # 写上自己的数据库名称 和 # Name of the service #5.0 server.windows_service_nameneo4j #4.0 dbms.default_databaseneo4j #dbms.default_databaseneo4jwind serve…

unity实现回旋镖函数

最近学习unity2D&#xff0c;想实现一个回旋镖武器&#xff0c;发出后就可以在角色周围回旋。 一、目标 1.不是一次性的&#xff0c;扔出去、返回、没有了&#xff1b;而是扔出去&#xff0c;返回到角色后方相同距离&#xff0c;再次返回&#xff1b;再次返回&#xff0c;永远…

【C++基础】字符串/字符读取函数解析

最近在学C以及STL&#xff0c;打个基础 参考&#xff1a; c中的char[] ,char* ,string三种字符串变量转化的兼容原则 c读取字符串和字符的6种函数 字符串结构 首先明确三种字符串结构的兼容关系&#xff1a;string>char*>char [] string最灵活&#xff0c;内置增删查改…

求一个数的数根(高精度)

上一期我们讲的是求一个数的数根&#xff0c;和本期唯一不同的是&#xff0c;数据范围不同了&#xff0c;上一期这个数是小于等于10的18次方的&#xff0c;这一期是小于等于10的1000次方的&#xff0c;开一个变量&#xff1f;肯定不行&#xff0c;我们需要再开一个数组&#xf…

SpringBoot源码解析(九):Bean定义接口体系

SpringBoot源码系列文章 SpringBoot源码解析(一)&#xff1a;SpringApplication构造方法 SpringBoot源码解析(二)&#xff1a;引导上下文DefaultBootstrapContext SpringBoot源码解析(三)&#xff1a;启动开始阶段 SpringBoot源码解析(四)&#xff1a;解析应用参数args Sp…