编辑:经过一些调查,这个问题实际上是关于输出yml中的以下选项:

citation-package: biblatex

没有此选项,bookdown将使用默认的citeproc,尚不清楚如何修改作者数量。但是,使用此选项时,引用不再起作用,并且我的文档仅包含以粗体显示的引用名称,而不是内联引用。所以我真的需要知道为什么引用软件包:biblatex无法正常工作

=====以下是原始问题

我无法预订以遵守我的maxcitename = 2设置。我已经尝试使用此输出yml
output:
  bookdown::pdf_book:
    includes:
      in_header: preamble.tex
    keep_tex: yes
    toc_depth: 3
    toc_appendix: yes

在preamble.tex文件中的这一行:
\usepackage[backend=bibtex, maxcitenames=2, style=authoryear]{biblatex}

我也尝试过使用此输出yml:
bibliography: [likertimputebiblio.bib, packages.bib]
biblatexoptions: [maxcitenames=2]
csl: harvard-university-of-wolverhampton.csl
link-citations: true
nocite: |
  @R-bookdown

而且我也尝试过此输出yml:
site: bookdown::bookdown_site
documentclass: book
header-includes:
  - \usepackage[backend=bibtex, maxcitenames=2, style=authoryear]{biblatex}

但似乎没有任何效果。

请帮忙。谢谢。

最佳答案

坚持不懈地找到了解决这个问题的办法!

设置输出yml时,在输出下缩进:等等...

citation_package: biblatex

...内联引用未能链接到.bib文件,因此refname仅以粗体显示,并且未进行任何内联引用。

预期的解决方案应该是使用其他选项:
biblatexoptions: [backend=bibtex, maxcitenames=2]

(maxcitenames = 2是我要使用biblatex的主要原因),但这失败并显示错误“无法识别选项后端”。
最后,解决方案是修改目录中的默认模板
C:\Program Files\R-3.4.0\library\rmarkdown\rmd\latex

在第100行,从
\usepackage$if(biblio-style)$[style=$biblio-style$]$endif${biblatex}


\usepackage$if(biblio-style)$[backend=bibtex, style=$biblio-style$]$endif${biblatex}

我想向软件包作者建议,这是一个需要修复的错误,因为backend = bibtex是有效的选项,应该已经通过

关于r - 引文包: biblatex not working in R bookdown,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/44633939/

10-12 20:19