Rmarkdown удаляет гиперссылку цитирования

при использовании Rmarkdown для создания PDF-файла с включенными цитатами он по умолчанию удаляет гиперссылки цитат.

Глядя на созданный латексный файл, я вижу \usepackage{hyperref} в преамбуле, но цитаты выглядят следующим образом:

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

Таким образом, он создает нединамическое цитирование в формате pdf.

Латексный вывод, который я ожидал бы, будет следующим: \citet{sharpe}, который создаст цитату с гиперссылкой в ​​формате pdf.

Есть идеи, почему он записывает мои входные данные bibtex вот так и как я могу сделать их гиперссылками?


person Nick    schedule 20.10.2015    source источник


Ответы (2)


По умолчанию pandoc будет отображать цитаты. Я вижу две альтернативы.

  1. Используйте \citet{sharpe} в Rmd вместо @sharpe. Недостаток: вы можете преобразовать RMD только в pdf.
  2. Используйте аргумент --natbib. Недостаток: вам нужен дополнительный bibtex шаг при рендеринге в pdf.

Обновление. Вы также можете указать параметр link-citations: true в YAML (начиная с pandoc v1.16) и сохранить синтаксис pandoc для цитат.

person Thierry    schedule 20.10.2015
comment
Привет @Thierry, спасибо за предложение. Однако использование \citet{sharpe} приводит к появлению '?' в pdf, несмотря на то, что \citet{sharpe} в tex-файле? - person Nick; 20.10.2015
comment
Кроме того, я сделал файл латекса по умолчанию для использования natbib, но это не решает мою проблему. Что вы подразумеваете под дополнительным шагом bibtex? - person Nick; 20.10.2015
comment
Попробуйте скомпилировать tex-файл вручную: pdflatex yourfile.tex, bibtex yourfile, pdflatex yourfile.tex, pdflatex yourfile.tex - person Thierry; 20.10.2015
comment
Это не идеально, но решает мою проблему, спасибо. Пожалуйста, дайте мне знать, если вы знаете способ сделать это динамическим. - person Nick; 20.10.2015
comment
Кстати, что вы имели в виду под дополнительным шагом bibtex при использовании natbib? - person Nick; 20.10.2015
comment
См. pandoc.org/demo/example19/Citation-rendering.html bibtex шаг, на котором цитаты генерируются в базе LaTeX. - person Thierry; 20.10.2015
comment
link-citations: true не работает. Холодно, уточните, как он должен входить в заголовок YAML? - person MichaelChirico; 23.02.2017
comment
@MichaelChirico попробуйте что-нибудь вроде --- output: pdf_document bibliography: Main_Document.bib link-citations: true --- - person Carl PCH; 17.03.2019
comment
\citet дает мне ! Undefined control sequence. Но не надо, с link-citations: true. - person James Hirschorn; 12.06.2021

Пример YAML для цитирования ссылок в Rmd с использованием 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
person tcratius    schedule 23.11.2018