运行过滤器multiple- bibliography .lua时出错



我正在尝试为多个参考书目运行Lua过滤器,为我的论文的每一章创建一个单独的参考书目列表。

这是我的YAML头文件:

title: ''
output: 
pdf_document:
latex_engine: pdflatex
number_sections: TRUE
pandoc_args: --lua-filter=multiple-bibliographies.lua
always_allow_html: true
geometry: "left = 4cm, right = 2cm, top = 2cm, bottom = 2cm"
fontsize: 11pt
header-includes:
- usepackage{float}
- usepackage{sectsty}
- usepackage{paralist}
- usepackage{setspace}spacing{1.5}
- usepackage{fancyhdr}
- usepackage{lastpage}
- usepackage{dcolumn}
- usepackage{natbib}
- usepackage[nottoc, numbib]{tocbibind}
- usepackage{ragged2e}
- usepackage{pdflscape}
- usepackage{textgreek}
- usepackage{graphicx}
classoption: twoside
bibliography_Intro: Intro.bib
bibliopgraphy_ch1: Endozoochory.bib
bibliopgraphy_ch2: Vysevovy_clanek.bib
bibliopgraphy_ch3: Seeds.bib
bibliopgraphy_ch4: Landscape.bib
citation_package: biblatex
csl: journal-of-ecology.csl

在每一章的末尾我有:

## References
::: {#refs_Intro}
:::

我对pandoc和LaTeX不是很有经验,所以这可能是我这边的一个简单错误。然而,当我尝试编织文档时,它给了我一个错误:

Error running filter multiple-bibliographies.lua: PandocFilterError
"pandoc" "Could not find executable pandoc" stack traceback:
multiple-bibliographies.lua:50: in upvalue 'run_citeproc'
multiple-bibliographies.lua:82: in function
<multiple-bibliographies.lua:68> Error: pandoc document conversion
failed with error 83

我已经为参考书目挣扎了好几天,我认为这是最后的选择,但我愿意接受RMarkdown的其他可能性。

我在Ubuntu 20上运行这个,pandoc版本2.19.2,rmarkdown_2.18, R版本4.2.2

问题是过滤器试图调用pandoc,但找不到它,因为它不检查RStudio设置的环境变量。这个问题在这个过滤器的更新版本multibib中得到了修复,它使用了一些更新的pandoc特性来解决这个问题。新版本也可以作为Quarto扩展安装。

但是,请注意,multibib中使用的语法略有变化,因为现在所有内容都必须嵌套在bibliography键下面:

---
bibliography:
Intro: Intro.bib
ch1: Endozoochory.bib
ch2: Vysevovy_clanek.bib
ch3: Seeds.bib
ch4: Landscape.bib
---

请尝试section-bibliographies过滤器,它可能更适合您的用例。

最新更新