【问题标题】:Add raw / uninterpreted content to Rmarkdown file将原始/未解释的内容添加到 Rmarkdown 文件
【发布时间】:2021-08-01 17:04:24
【问题描述】:

我已经准备了一个带有一些 R 代码的 .Rmd 文件,我在 Rstudio 中将其编织成一个 .md 文件。这个.md 文件将依次推送到 GitHub 存储库中,以生成具有特定布局的 GitHub 页面(使用 GitHub pages system)。

我遇到的问题是,当我在 Rmarkdown 文件中指定布局时,例如使用以下代码:

---
title: "Untitled"
output: github_document
layout:mylayout
---

它没有出现在.md 文件中,因此 Github 页面不使用我的布局。要包含我的布局,我需要手动修改.md 文件以添加以下标题:

---
title: "Untitled"
output: 
  html_document
layout:mylayout
---

我不想手动修改我的.md 文件,即在我将.Rmd 文件编入.md 文件时自动包含上述标题。

我尝试了很多方法都没有成功,包括printcatpaste,以及编写带有参数results="asis"的r块代码。

是否有可能将原始内容放在根本不会被解释的.Rmd 中?

这是我的.Rmd 文件的一个非常简单的示例:

---
title: "Untitled"
output: github_document
layout:mylayout
---

# I would like to add the next part at the beginning of my .md file,
# but it is always removed or altered such that it does not appear 'as is' in the .md
---
title: "Untitled"
output: 
  html_document
layout:mylayout
---

# After this header comes the content of the file
Content with R code

【问题讨论】:

    标签: r r-markdown knitr


    【解决方案1】:

    GFM 不支持 YAML 元数据,因此 github_document 也不支持它。只有md_document 支持 YAML,例如,

    ---
    title: "Untitled"
    output:
      md_document:
        variant: markdown_github
        preserve_yaml: true
    layout: mylayout
    ---
    

    但是如果你使用 Jekyll 和 Github 页面,你可以考虑使用 blogdown 而不是单独编写帖子:https://bookdown.org/yihui/blogdown/jekyll.html 这样你就不需要在 YAML 中指定 output 字段。输出将是 .md,并且您的所有 YAML 元数据都将保持不变。

    【讨论】:

    • 非常感谢您的回答,效果很好。关于使用 blogdown 的好建议!谢谢!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-10-08
    • 2018-06-25
    • 1970-01-01
    • 1970-01-01
    • 2023-03-21
    相关资源
    最近更新 更多