R Pandoc在参考书目后插入附录

R Pandoc在参考书目后插入附录,r,markdown,knitr,pandoc,R,Markdown,Knitr,Pandoc,我正在使用knitr包和R中的pandoc将.Rmd文件转换为PDF。Pandoc链接到一个.bib文件,并自动将参考书目插入PDF的末尾 my.bib文件中的条目如下所示,取自: 为了建立我的参考书目,我使用以下函数,摘自: 输出的PDF如下所示: 如果我尝试插入附录,参考文献仍会打印在文档末尾,如下所示: 如何在引用之后插入附录?最终,引用处理将发生变化,从而可以将引用放在任何您喜欢的地方(),但目前还没有简单的方法 正如建议的那样,您可以将附录放在一个单独的文件中,使用pandoc将其

我正在使用knitr包和R中的pandoc将.Rmd文件转换为PDF。Pandoc链接到一个.bib文件,并自动将参考书目插入PDF的末尾 my.bib文件中的条目如下所示,取自:

为了建立我的参考书目,我使用以下函数,摘自:

输出的PDF如下所示:

如果我尝试插入附录,参考文献仍会打印在文档末尾,如下所示:


如何在引用之后插入附录?

最终,引用处理将发生变化,从而可以将引用放在任何您喜欢的地方(),但目前还没有简单的方法


正如建议的那样,您可以将附录放在一个单独的文件中,使用pandoc将其转换为LaTeX片段,然后使用
--include after body
标志包含该片段。然后它会出现在参考书目之后。

对于较新的pandoc版本,您可以使用

这是一些文本[@item1]
这是更多的文本[@item2]
#参考资料
#附录

在Rmarkdown文档中工作时,请在引用位置输入以下文本。它可以放在文件的任何部分,允许其他材料,如附录,在必要时遵循。该方法依赖于将在Rmarkdown中工作的pandoc

::: {#refs}
:::
前面提到的代码不应该在R代码块中,而是应该自己放在空行中。一旦pandoc通过knitter进行处理,该代码将产生与@soca在回答中提到的
相同的结果。这两行代码始终允许在文档的任何部分中精确放置引用

在下面的示例中,引用首先放在同名标题下,而文档中的所有代码块随后都放在代码附录中。下面是放置在Rmarkdown中的pandoc fenced div,可用于生成下面的图像

# References
::: {#refs}
:::

# Appendix A: R Code
```{r ref.label=knitr::all_labels(), echo=TRUE, eval=FALSE}

```
如果yaml frontmatter中标识了一个.bib文件,则前面的Rmarkdown将生成类似以下内容的输出:

有用链接:


很高兴就这样。我怀疑一慧在knitr中放了一个后端,并用它来窃取人们的数据。但是,正如你引用的链接中所说的那样,“如果附录引用了参考文献,这就不起作用了。”-(这已经实现了,请参见。您也可以参考一个例子。这似乎对我不起作用。我的Rmarkdown文档的输出格式是
bookdown::pdf_document2
。我认为这应该是公认的答案,因为它完全是直截了当的。这是一个很好的建议,只是一个挑剔:解决方案使用了pandoc,它是与R Markdown无关。我编辑答案的目的是正确引用pandoc的fenced divs。希望我的答案是正确的。
This is some text [@item1]

This is more text [@item2]

# References
This is some text [@item1]

This is more text [@item2]

# References

<div id="refs"></div>

# appendix
::: {#refs}
:::
# References
::: {#refs}
:::

# Appendix A: R Code
```{r ref.label=knitr::all_labels(), echo=TRUE, eval=FALSE}

```