【发布时间】:2020-08-09 19:35:57
【问题描述】:
在使用 knitr 和 bookdown (+ yaml) 将一堆 .Rmd 文件导出到单个 .doc 文件时,我丢失了一些交叉引用。方法是sisdown::thesis_word:。
在我安装了新版本的 Pandoc 后立即出现了丢失引用的问题。也许我在安装 Pandoc 后错过了一步?
-
目前丢失的引用是
\@ref(title)的引用,它以前返回由# My title {#title}指示的标题编号,现在返回(??)。安装 pandoc 后,仅缺少这些锚。也许我必须使用另一种风格的锚来引用文档的一部分?- Pandoc 似乎正常:所有对 .bib 字典、表格和图形锚点的引用都正常(Microsoft Windows 中的环境路径变量正常并指向新的 pandoc.exe)。
非常感谢您的任何建议,美好的一天。
PS:我正在使用 thesisdown(一种 bookdown 的东西),我还没有尝试使用 knitr 进行正常的 bookdown 导出...我还没有尝试另一种类型的导出文档(如 html 或 pdf)。
【问题讨论】:
-
我能找到的第一个解决方案是使用超链接。这些超链接在新版本的 pandoc 中对我来说可以正常工作,所以我已经替换了所有超链接的交叉引用,比如这种交叉引用:
[1](#a-title-name)。这个解决方案迫使我指出一个词或一个编号,以便使这个字符成为文档标题的超链接(在我的例子中,'1')。
标签: r-markdown knitr pandoc bookdown cross-reference