Markdownでバックティックを2倍にすることで、`r 2+2`
のようなバックティックを含むコードスタイルでテキストを簡単にレンダリングできます。しかし、それをどのように行うかRMarkdown?同様に、`t 2+2`
を表示できますが、t
をr
に置き換えると、Rコード2+2
が実行されます。
私がこれまでに見つけた唯一の方法は次のとおりです。
<p><code class="r">`</code><code class="r">r 2+2`</code></p>
あまり便利ではありません。たぶん私はそれをより便利にするために新しいCSSを定義する必要がありますか?
これが私が使うトリックです。まず、\x60
は`
であることに注意してください。
> cat('\x60', '\n')
`
それからあなたは書く
`r '\x60r foo+bar\x60'`
これにより、マークダウン出力で`r foo+bar`
が得られますが、HTML出力ではr foo+bar
になるため、2つ(またはそれ以上)のバックティックを使用して、マークダウンでバックティックを保護する必要があります。その後、あなたはこの毛玉で終わります:
`` `r '\x60r foo+bar\x60'` ``
あなた自身の解決策は良いですが、私はただ定義します
rinline <- function(code) {
sprintf('``` `r %s` ```', code)
}
別のトリックについては、 この投稿 も参照してください。
results='asis'
オプションについて学びました。
それで、さらに別の方法。楽しみと学習のために:-)
```{r, results='asis', echo=FALSE}
cat("`` `r 2+2` ``")
```
これが満足のいく発見です。最初に関数を定義します
rinline <- function(code){
html <- '<code class="r">``` `r CODE` ```</code>'
sub("CODE", code, html)
}
目に見えないチャンクで。次に、次のように入力して`r 2+2`
を表示できます。
Some R code inline : `r rinline("2+2")` - Nice
今これを見ている人は、ここでより最近の解決策をチェックしたいかもしれません: ニット評価なしでRmarkdownを埋め込む
基本的にあなたができること:
Some R code inline : `r knitr::inline_expr("2+2")`
上記の機能はknitrに直接追加されていると思いますが、関数を自分で定義する手間が省けます。
Yihui Xie の解決策は、GithubリポジトリのREADME.mdファイルをレンダリングするときに、挿入されたコードに含まれる引用符を表示していませんでした。その場合、私はhtmlコードを使用しました:
_<code>&Grave;r foo(x)&Grave;</code>
_
&Grave;r foo(x)&Grave;
をインラインで表示します。