【问题标题】:Custom language engine on KnitrKnitr 上的自定义语言引擎
【发布时间】:2021-02-04 15:04:48
【问题描述】:

我根据文档在 Knitr 上添加了一个自定义语言引擎。

require(knitr)
knit_engines$set(upper = function(options) {
  code <- paste(options$code, collapse = "\n")
  if (options$eval) 
    toupper(code) else code
})

当我将以下命令添加到 Rmd 文件中时,我可以在 RStudio 中运行当前块。

```{upper}
Hello, **knitr** engines!
```.

你好,针织机引擎!

但是,如果我尝试将整个文件编织到 html 页面,我将看不到分块代码的结果。我将在 R Markdown 选项卡上收到以下警告消息。

Warning message:
In get_engine(options$engine) :
  Unknown language engine 'upper' (must be registered via knit_engines$set()).

那么如何注册引擎以便程序稍后看到呢?

【问题讨论】:

    标签: r r-markdown knitr


    【解决方案1】:
    ---
    title: "Untitled"
    output: html_document
    ---
    
    ```{r setup, include=FALSE}
    knitr::opts_chunk$set(echo = TRUE)
    
    knitr::knit_engines$set(upper = function(options) {
      code <- paste(options$code, collapse = "\n")
      if (options$eval) 
        toupper(code) else code
    })
    ```
    
    ```{upper}
    Hello, **knitr** engines!
    ```
    

    【讨论】:

      猜你喜欢
      • 2021-09-25
      • 1970-01-01
      • 1970-01-01
      • 2021-09-21
      • 1970-01-01
      • 2015-04-22
      • 2014-01-05
      • 2015-02-20
      • 1970-01-01
      相关资源
      最近更新 更多