【问题标题】:bookdown::render_book vs. rmarkdown::render_site to build all outputsbookdown::render_book 与 rmarkdown::render_site 构建所有输出
【发布时间】:2018-11-14 21:56:49
【问题描述】:

我有一本 Bookdown 书,我想为它建立一个 GitBook 网站以及 PDF 和 EPUB 下载。我将使用 Travis 构建所有 3 个输出,并且可以从 GitBook 站点下载 PDF 和 EPUB。

bookdown-demo_build.sh 中的每个输出调用一次bookdown::render_book

但是,根据 RStudio 中的日志,Build Book 按钮在构建 All Formats 时使用 rmarkdown::render_site(encoding = 'UTF-8') 在单个命令中构建所有输出。

我想确保我的 CI 服务器上发生的事情与我的 IDE 中发生的事情完全相同,所以我似乎应该让 Travis 调用 rmarkdown::render_site 而不是像 @987654329 那样多次调用 bookdown::render_book @。不过易辉是高手,他选择了后一种方式。

那么,我的问题是:当构建多个输出时,在 Travis 这样的持续集成服务器上调用的最佳脚本是什么?

【问题讨论】:

    标签: r r-markdown knitr bookdown


    【解决方案1】:

    bookdown 项目中,它们通常不会产生影响,因为 rmarkdown::render_site() eventually calls bookdown::render_book() 会渲染您的书。随意使用任何一种方式。

    唯一的例外是您的index.Rmd包含字段site: bookdown::bookdown_site。在这种情况下,rmarkdown::render_site() 将不起作用,因为它不知道这应该是一个 bookdown 项目。

    顺便说一句,要使用bookdown::render_book() 呈现所有输出格式,您可以使用参数output_format = 'all'

    【讨论】:

    • 我的问题是我的文件被命名为.rmd 而不是.Rmd
    猜你喜欢
    • 2020-08-29
    • 2016-07-29
    • 2017-10-27
    • 2023-03-03
    • 2021-05-25
    • 1970-01-01
    • 2023-02-01
    • 2016-11-06
    • 2016-05-04
    相关资源
    最近更新 更多