修改Rmarkdown默认YAML模板时出现重复块如何解决
问题原因
在新建RMarkdown弹窗中指定输出格式(如HTML)时,RStudio会自动先生成一个对应格式的精简YAML块,再把你修改的templates/document.Rmd的完整内容追加在后面,因此出现了重复的两个YAML块。
无需自定义模板包的解决方法
- 方案1:从模板入口新建
点击菜单栏File > New File > R Markdown唤起新建窗口后,不选择HTML/PDF/Word等输出选项,直接切换到左侧的「Template」标签,选择列表中的Document模板后点击OK即可,此时只会加载你自定义的模板内容,不会生成额外的YAML块。 - 方案2:调整自定义模板的内容结构
若要保持原有新建操作习惯(直接选HTML点击确认生成),可以删除自定义document.Rmd里的YAML首尾分隔符---,仅保留YAML字段内容,这样RStudio自动生成的YAML头会和你追加的字段自动合并,不会出现两个独立块:
修改后的document.Rmd内容参考:
后续新建时选择HTML输出,生成的YAML会合并为单个块,自定义的输出配置也会完整保留,按需修改标题即可使用。title: 'document' output: html_document: self_contained: true toc: true toc_float: true bookdown::pdf_document2: extra_dependencies: ["float"] toc: true - 方案3:新建时勾选空白文档选项
每次新建Rmd时勾选弹窗右下角的「Create empty document」选项,点击确认后只会加载你自定义的document.Rmd完整内容,不会生成额外的YAML块。
内容的提问来源于stack exchange,提问作者Ahmed Elashry
相关产品推荐
相关产品推荐

