使用 knitr 强制执行 PDF 包小插图
Enforce PDF package vignette with knitr
我的包有一个小插图,当使用 Rscript -e 'rmarkdown::render("tmod.rmd")'
编译时,它可以编译成一个漂亮的 PDF。但是,当我编译并安装包时,启动 R 并键入 vignette("mypackagename")
,浏览器 window 打开时看起来很丑 HTML,没有标题,没有 table 的内容并且没有参考。
但是,如果我在创建包之前手动将 vignette 编译为 pdf,它显示得很好。
出了什么问题?为什么我编译包的时候没有自动生成PDF?
在降价文件header中,我有
---
title: "foo foo foo"
author: "Foofooary Finer"
date: "`r Sys.Date()`"
output:
pdf_document:
vignette: >
%\VignetteIndexEntry{FooFoo}
%\VignetteKeyword{foo}
%\VignetteEngine{knitr::knitr}
%\SweaveUTF8
\usepackage[utf8](inputenc)
abstract: |
foo foo foo foo foo
toc: yes
bibliography: bibliography.bib
---
在包描述文件中,我有
VignetteBuilder: knitr
Suggests: knitr
当我在knitr google群里问了同样的问题时,谢一辉(knitr的作者)回复:
Use the vignette engine knitr::rmarkdown instead of knitr::knitr.
我不完全确定我明白为什么,但它有效。 Here is a link 到 knitr google 组进行讨论。
我的包有一个小插图,当使用 Rscript -e 'rmarkdown::render("tmod.rmd")'
编译时,它可以编译成一个漂亮的 PDF。但是,当我编译并安装包时,启动 R 并键入 vignette("mypackagename")
,浏览器 window 打开时看起来很丑 HTML,没有标题,没有 table 的内容并且没有参考。
但是,如果我在创建包之前手动将 vignette 编译为 pdf,它显示得很好。
出了什么问题?为什么我编译包的时候没有自动生成PDF?
在降价文件header中,我有
---
title: "foo foo foo"
author: "Foofooary Finer"
date: "`r Sys.Date()`"
output:
pdf_document:
vignette: >
%\VignetteIndexEntry{FooFoo}
%\VignetteKeyword{foo}
%\VignetteEngine{knitr::knitr}
%\SweaveUTF8
\usepackage[utf8](inputenc)
abstract: |
foo foo foo foo foo
toc: yes
bibliography: bibliography.bib
---
在包描述文件中,我有
VignetteBuilder: knitr
Suggests: knitr
当我在knitr google群里问了同样的问题时,谢一辉(knitr的作者)回复:
Use the vignette engine knitr::rmarkdown instead of knitr::knitr.
我不完全确定我明白为什么,但它有效。 Here is a link 到 knitr google 组进行讨论。