Rmarkdown 删除引用超链接

Rmarkdown removes citation hyperlink

当使用 Rmarkdown 构建包含引文的 pdf 时,默认情况下会删除引文的超链接。

查看生成的乳胶文件,我可以在序言中看到 \usepackage{hyperref},但引用如下:

rmd input:    @sharpe
latex output:  sharpe (1999)

因此它在 pdf 中生成非动态引用

我期望的乳胶输出是:\citet{sharpe},它以 pdf 格式生成超链接引用。

知道为什么它会像这样写出我的 bibtex 输入以及如何使它超链接吗?

默认情况下,pandoc 会渲染引文。我看到两个选择。

  1. 在 Rmd 中使用 \citet{sharpe} 而不是 @sharpe。缺点:您只能将 Rmd 渲染为 pdf。
  2. 使用--natbib参数。缺点:渲染成 pdf 时需要额外的 bibtex 步骤。

更新:您还可以在 YAML 中提供选项 link-citations: true(自 pandoc v1.16 起)并保留引用的 pandoc 语法。

Example of YAML for link citations in Rmd using PDF

---
title: "Introduction to data mining – Assignment"
author: "Your Name"
date: "Date"
output: 
  pdf_document: default
bibliography: <references>.bib
csl: <your_csl_file>.csl
link-citations: yes
linkcolor: blue
---

在文字引用中。

Here is my quote @AuthorYear