【问题标题】:Need the filename of the Rmd when knitr runsknitr 运行时需要 Rmd 的文件名
【发布时间】:2014-02-01 19:20:30
【问题描述】:

最近我询问了在 knitr 运行时将 r 变量设置为 Rmd 文件的名称。

Need the filename of the Rnw when knitr runs in rStudio

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

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

【问题讨论】:

  • 恕我直言,输入文件的类型无关紧要。
  • 我相信 knitr:::knit_concord$get("infile") 特定于 Rnw 乳胶文件
  • 不,它不是特定于 Rnw 文件的。它适用于knitr 支持的所有文件。

标签: r knitr r-markdown


【解决方案1】:

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

【讨论】:

    【解决方案2】:

    您可以搜索 parent.frames,直到找到引用函数 knitr 的主体所在的框架(因此定义了 input 参数。

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

    为我工作。

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

    【讨论】:

    • 我认为这是我的问题。谢谢。
    猜你喜欢
    • 2014-01-24
    • 1970-01-01
    • 1970-01-01
    • 2016-09-05
    • 2017-10-24
    • 1970-01-01
    • 2021-04-25
    • 2015-04-29
    • 1970-01-01
    相关资源
    最近更新 更多