如何在RStudio中通过YAML头设置默认的knit目录?

5

是否有一种YAML选项可以为Rmd文件设置织物目录? 即是否与图1所示的相同。问题在于每次复制文件或与其他人共享项目时(这些人通常具有不同于我的默认RStudio选项),都需要在每个文件中手动重置织物目录。我知道全局选项(图2),但我需要一种更可重现的解决方案,适用于RStudio笔记本和编织模式下的单个Rmd文件。例如,我知道有一个选项:

editor_options: 
  chunk_output_type: console

有什么想法吗?

enter image description here

图1 通过菜单命令设置编织目录。

enter image description here

图2 在RStudio中设置默认编织目录的全局选项。

1个回答

9

您可以尝试在 .Rmd 文件的前言中指定 knit 字段。以下是一个示例 .Rmd 文件,它将编织成在您的主目录中创建的 "some_dir" 目录中:

---
title: "Untitled"
output: html_document
knit: (function(inputFile, encoding) {
    rmarkdown::render(inputFile, encoding = encoding, output_dir = "~/some_dir/")
  })
---

# Some content

Some content

我之前不知道这个功能,它可以改变输出目录,非常有用。 但是它和“knit directory”不同,后者还会改变工作目录。 @Jozef,你能提供一个链接让我了解更多关于YAML选项“knit”的信息吗? - GegznaV
rmarkdown::render()有更多值得探索的有趣选项。因此,我接受了你的答案。 - GegznaV
但是,正如问题所示,您如何具体地引用“Project”目录?谢谢! - Matifou
1
@Matifou,如果您真的想引用当前的RStudio项目目录,可以使用 output_dir = rstudioapi:: getActiveProject(),请注意,这仅在RStudio上下文中起作用。 - Jozef
1
太好了,谢谢@Jozef!! 顺便说一下,博客写得很好 :-) - Matifou
太棒了!这非常有用! - Moses

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接