R devtools::build_vignettes() - 可以生成 html 和 pdf 文件吗?

问题描述 投票:0回答:1

我想在调用

.html
 时同时生成 
.pdf
 文件和 
devtools::build_vignettes()

文件

这是我的

.Rmd
文件的内容:

---
title: "Function xyz"
output:
  html_document: default
  pdf_document: default
vignette: >
  %\VignetteEngine{knitr::rmarkdown}
  %\VignetteEncoding{UTF-8}
---

# Introduction

This document gives a brief example on how to use the function...

如果我调用

devtools::build_vignettes()
,它只会生成列表中的第一个输出,因此它只生成一个
.html
文件

但是,如果我像这样交换输出的顺序:

---
title: "Function xyz"
output:
  pdf_document: default
  html_document: default
vignette: >
  %\VignetteEngine{knitr::rmarkdown}
  %\VignetteEncoding{UTF-8}
---

# Introduction

This document gives a brief example on how to use the function...

...调用

devtools::build_vignettes()
仅生成一个
.pdf
文件

我希望调用

devtools::build_vignettes()
来生成 .html 文件和 .pdf 文件。

如何实现这一目标?

r yaml r-markdown devtools
1个回答
0
投票

Vignettes 具有源代码、R 代码和 PDF 或 HTML 的显示格式。它们没有两种显示它们的方式,因此使用基于小插图的函数不会达到您想要的效果。

但是,您的小插图也是 R Markdown 文件,而且更加灵活。因此,您可以做的是使用

devtools::build_vignettes()
用于查找所有小插图的相同方法,然后将(其中一些)它们视为 R Markdown 文件,并以多种格式渲染它们。

例如,这是一个片段:

vigns <- tools::pkgVignettes(dir = ".")$docs
for (v in vigns) 
  rmarkdown::render(v, output_format = "all")
© www.soinside.com 2019 - 2024. All rights reserved.