Cloud2016 bookdown::pdf_book: includes: in_header: preamble.tex latex_engine: xelatex citation_package: natbib template: null 当我们把 LaTeX 模板设置为空的时候 template: null,猜猜发生了什么 ? 它会使用 Pandoc 自带的 LaTeX 模板而不是 rmarkdown 打包的模板
Cloud2016 若要自己定制模板,不妨从默认的开始 https://github.com/jgm/pandoc-templates/blob/master/default.latex 我们在新书《现代统计图形》里就用默认的, https://github.com/XiangyunHuang/MSG-Book/blob/master/_output.yml
Cloud2016 也不是很隐藏啦!看帮助文档 ?rmarkdown::pdf_document 关于模板参数template有提到 pass NULL to use pandoc's built-in template,而内建的模板就是上面提到的,不过话说回来,内建的模板够复杂的,但是功能很全,很多人维护啊!
yihui Cloud2016 我早想把 rmarkdown 自带的土模板给撤换掉了(我接手这个包的时候这个模板已经存在很久了,所以还不能一刀砍掉)。维护起来确实太费事了。不过我至今也没抽出时间来审阅这个 PR:https://github.com/rstudio/rmarkdown/pull/1563 我自己其实都不用 rmarkdown 的土模板,而是如你所说用 Pandoc 自带的模板:https://github.com/rstudio/rmarkdown-book/blob/068f2e3/_output.yml#L24
yihui Cloud2016 我们厂长写 R 包就是这个风格,求当前赶紧把事办了,至于往后怎么维护,都不管了。rmarkdown 除了这个大坑,还有另一个更可怕的大坑,就是我们可能永久性沦陷在 Bootstrap 3 里了……