我想写一个R Markdown文档,它提供了如何编写R Markdown文档的代码示例。例如,我想在文档中展示如何将文本显示为粗体。
`**this is bold**` will render 'this is bold' with bold text, i.e. **this is bold**这很好用,`把里面的文本渲染成代码。但是,我不知道如何让代码块正确显示。例如:
```{markdown, eval=FALSE}X= rnorm(1)
这不起作用,因为markdown不是一种受支持的语言。我不能在`中包含r代码块,因为我需要这个符号来标记代码块的开始,而它只能内联工作。
我可以通过实际使用R来做一些跳圈
```{r, echo="FALSE"}O= "{r}\nx=sample(1)\n\n“
cat(o)
,它将呈现为
## ```{r}
## x=sample(1)
## ```但这对我编写文档来说比较复杂,而且它生成的代码不允许简单的复制/粘贴。
有没有一种本地方法可以将创建R代码块所需的markdown呈现为代码?
发布于 2018-11-09 21:30:39
我在Rmarkdown上找到了一本书,里面有通过Rmarkdown呈现的R代码块的例子。书的源代码可以在GitHub上找到,相关章节位于here。
下面的代码块可以正常工作。我不能解释为什么在代码块的开头需要r '',但它是必需的。
````markdown`r ''{r}
X=示例(1)
发布于 2018-11-09 21:46:17
如果你不把{r}放在三个反引号后面,rmarkdown就会把代码块传递给markdown,它几乎可以工作了。例如,如下所示
X= rnorm(1)
显示为

这并不完全正确;r周围的大括号已被删除。(我认为r-markdown做到了这一点,而不是markdown。)我不知道是否有强制它们的选项,但如果r前面有一个非字母,它们就会出现。您可以放入一个空格,或者(如果您知道如何使用)一个宽度为零的空格,其中R将使用"\u200B"显示。
发布于 2018-11-09 22:36:18
您可以使用实验性的块编织包,该包添加了块选项chunk_head以使我们能够保留标头。该包正在GitHub here上开发。
要安装该软件包,请使用命令devtools::install_github("nathaneastwood/knitrhooks")。安装后,您可以通过加载程序包,然后在头文件中调用函数chunk_head()来使用块钩子。
下面是一个示例:
---
title: "Untitled"
output: pdf_document
---
```{r, include = FALSE}图书馆(针织书)
chunk_head()
```{r, chunk_head = TRUE, echo = TRUE}X <-示例(1)

不幸的是,这不会显示语法突出显示,但正如在this issue中所讨论的,这是knitr处理文件的方式中的一个限制。
https://stackoverflow.com/questions/53226493
复制相似问题