在RStudio中使用knitr,我有一个rmarkdown文件:
---
title: "PDF knit error"
output: pdf_document
date: "`r format(Sys.time(), '%d %B, %Y')`"
---
#Content
在RStudio中,有一个很好的小下拉选项,我可以在其中更改输出格式:
但是,当我使用它来更改输出格式时,YAML标头会以不合需要的方式更改(当output
值更改时,它也会相应更改)。也就是说,date
字段有一个R片段,可以动态地将值分配给date
,因为双引号被更改为单个引号,并且单引号更改为单引号的对。
例如,当我使用此按钮将输出格式更改为HTML时,降价文件将更改为:
---
title: "PDF knit error"
output: html_document
date: '`r format(Sys.time(), ''%d %B, %Y'')`'
---
#Content
date
更改比较:
"`r format(Sys.time(), '%d %B, %Y')`" # before another output option selected
'`r format(Sys.time(), ''%d %B, %Y'')`' # after another output option selected
此更改导致编织失败:
processing file: yaml-header-test.Rmd
Quitting from lines 2-7 (yaml-header-test.Rmd)
Error in base::parse(text = code, keep.source = FALSE) :
<text>:1:29: unexpected input
1: format(Sys.time(), ''%d %B, %Y'')
^
Calls: <Anonymous> ... inline_exec -> withVisible -> eval -> parse_only -> <Anonymous>
Execution halted
是否可以阻止通过下拉菜单切换格式导致编辑到date
字段?并且,先发制人,是的,我认识到我可以通过直接编辑output
字段来完成格式的更改,但我的问题是关于GUI按钮的后果。
系统详情: