不是我的专业领域,但通过博客的帮助,我成功使其产生了输出。
首先,请查看 RStudio 的 R Markdown
选项卡。它会显示一个警告,解释为什么您的版本没有渲染任何内容:
Warning message:
In get_engine(options$engine) :
Unknown language engine 'perl6' (must be registered via knit_engines$set()).
因此,我们可以考虑如何注册引擎并进行注册:
```{r setup, echo=FALSE}
library(knitr)
eng_perl6 <- function(options) {
# create a temporary file
f <- basename(tempfile("perl6", '.', paste('.', "perl6", sep = '')))
on.exit(unlink(f)) # cleanup temp file on function exit
writeLines(options$code, f)
out <- ''
# if eval != FALSE compile/run the code, preserving output
if (options$eval) {
out <- system(sprintf('perl6 %s', paste(f, options$engine.opts)), intern=TRUE)
}
# spit back stuff to the user
engine_output(options, options$code, out)
}
knitr::knit_engines$set(perl6=eng_perl6)
```
```{r, engine='perl6'}
my $s= "knitr is really good";
say $s;
```
引擎已注册一个函数,该函数首先将要运行的代码保存到临时文件中,然后执行Rakudo编译器,要求其编译该文件。
在收集所需输出后,该函数会删除临时文件并提供用于呈现的输出。