当knitr运行时需要Rmd的文件名

时间:2014-01-13 21:19:30

标签: r knitr r-markdown

最近我问到knitr运行时是否将r变量设置为Rmd文件的名称。

Need the filename of the Rnw when knitr runs in rStudio

knitr:::.knitEnv$input.dir
knitr:::knit_concord$get("infile")

是否有类似的knitr :::对象作为Rmd文件的名称?

2 个答案:

答案 0 :(得分:8)

knitr :: current_input()将返回Rmd文件的名称

答案 1 :(得分:2)

您可以搜索parent.frames,直到找到指向正在评估函数knitr的主体的位置的框架(因此定义了input参数。

get(env = parent.frame(n = 8), 'input')

适合我。

请注意,如果input不是文件名,我还没有测试会发生什么.....