如何处理代码块中的双括号?

时间:2014-06-20 09:01:29

标签: r markdown knitr slidify

我正在编写介绍Rmd包的whisker个文件。并使用slidify将其编译为html幻灯片。

因此,在代码中使用{{}}是不可避免的。我在Rmd文件中编写了以下代码:

```{r}
tpl <- "
<b>Against:</b> {{x.against}}<br/>
<b>Venue:</b> {{x.venue}}<br/>
<b>Match:</b> {{x.type}}<br/>
<b>Score:</b> {{x.score}}<br/>
<b>Result:</b> <span class={{x.result}}>{{x.result}}</span><br/>
{{#x.sr}}<b>Strike Rate:</b> {{x.sr}} {{/x.sr}}
"
```

但是在解析的html文件中,大括号和内容被忽略:

<pre><code class="r">tpl &lt;- &quot;
&lt;b&gt;Against:&lt;/b&gt; &lt;br/&gt;
&lt;b&gt;Venue:&lt;/b&gt; &lt;br/&gt;
&lt;b&gt;Match:&lt;/b&gt; &lt;br/&gt;
&lt;b&gt;Score:&lt;/b&gt; &lt;br/&gt;
&lt;b&gt;Result:&lt;/b&gt; &lt;span class=&gt;&lt;/span&gt;&lt;br/&gt;

&quot;
</code></pre>

Rmd文件中直接编写html代码是不方便的。 results='asis'中的选项knitr仅影响输出,但不影响代码块。

是否有任何解决方案可以处理代码块中的{{}}?感谢。

2 个答案:

答案 0 :(得分:2)

默认情况下,Slidify会扩展所有胡须标记。有一个未记录的功能,可以让您不受影响地传递这些标签。这是一个简单的例子

--- .RAW

Template

```{r}
{{ myvariable }}
```

因此,将.RAW类属性添加到您希望此行为的幻灯片中。

答案 1 :(得分:0)

你用什么来做你的针织物?我刚刚在RStudio中测试了这个(我曾经用过我所有的Rmd东西,因为它非常方便)而且我没有遇到过这个问题;我刚刚复制了你的代码,它包含了双括号中的内容。

如果你还没有使用RStudio,那试试吗?