4.4 配置
我们以尽在第 1.3 节中提到了 rmd_files
,并且你可以在 _bookdown.yml
中为书籍配置更多(可选的)设置。11:
book_filename
: 主 Rmd 文件的文件名,即从所有章节进行合并后的单个 Rmd 文件;默认情况下,它被命名为_main.Rmd
。delete_merged_file
: 书籍成功编译后是否删除主 Rmd 文件。before_chapter_script
: 在每个章节之前执行的一个或多个 R 脚本,例如,你可能希望在编译每个章节之前清理工作区,在这种情况下可以在 R 脚本中使用rm(list = ls(all = TRUE))
。after_chapter_script
: 与before_chapter_script
类似,不过 R 脚本是在每一个章节编译完成后执行。edit
: 协作者可以单击后直接编辑当前页面 Rmd 源文档的链接;这主要是为 GitHub 存储库设计的,因为在 GitHub 上编辑任意纯文本文件很容易,即使在其他人的存储库中也是如此(如果你没有对存储库的写入权限,GitHub 将自动为其分叉,并允许你在编辑完文件后提交拉取请求 (pull request))。这个链接中应包含%s
,它将被每个页面的实际 Rmd 文件名替换。history
: 类似于edit
,它是一个指向当前页面编辑/提交历史记录的链接。view
: 类似于edit
,它是一个指向当前页面源代码的链接。rmd_subdir
: 是否在子目录中搜索书籍 Rmd 源文件(默认情况下仅搜索根目录)。它可以是一个布尔值(例如,如果设为true
,则将在项目目录和所有子目录中搜索书记的 Rmd 源文件),如果要在子目录的子集中搜索书籍的 Rmd 源文件,它也可以是一个路径列表。include_md
: 在搜索数据源文件时包含.md
文件(默认情况下只会包含.Rmd
文件)。output_dir
: 书籍的输出目录(默认为_book
);render_book()
将会读取并使用这个设置。clean
:clean_book()
函数将要清理的文件和目录的向量。
下面是一个简短的 _bookdown.yml
:
book_filename: "my-book.Rmd"
delete_merged_file: true
before_chapter_script: ["script1.R", "script2.R"]
after_chapter_script: "script3.R"
view: https://github.com/rstudio/bookdown-demo/blob/master/%s
edit: https://github.com/rstudio/bookdown-demo/edit/master/%s
output_dir: "book-output"
clean: ["my-book.bbl", "R-packages.bib"]
对于
bs4_book()
格式,edit
、history
和view
字段不会起作用,可以使用输出函数的 repo 参数来指定类似的配置。↩︎