Comment afficher du code inline R avec backticks en utilisant Rmarkdown?
en doublant les backticks dans Markdown, il est facile de rendre certains textes en style code, y compris les backticks, tels que: `r 2+2`
.
Mais comment le faire avec RMarkdown<!--8 ? De la même façon, nous pouvons afficher `t 2+2`
, mais en remplaçant t
r
exécute le code R 2+2
.
Le seul moyen que j'ai trouvé pour l'instant est:
<p><code class="r">`</code><code class="r">r 2+2`</code></p>
pas très commode. Peut-être que je devrais définir un nouveau css pour faire ça plus commodément ?
3 réponses
Ici est une astuce que j'utilise. Tout d'abord, notez \x60
`
:
> cat('\x60', '\n')
`
alors vous écrivez
`r '\x60r foo+bar\x60'`
qui vous donnera `r foo+bar`
dans la sortie markdown, mais cela deviendra r foo+bar
dans la sortie HTML, vous devez donc protéger les backticks dans markdown, en utilisant deux (ou plus) backticks. Puis on finit avec cette boule de poils:
`` `r '\x60r foo+bar\x60'` ``
Votre propre solution est bonne, mais je venais de définir
rinline <- function(code) {
sprintf('``` `r %s` ```', code)
}
voir Aussi ce post pour un autre truc.
je viens d'apprendre à propos de la results='asis'
option.
Donc, encore une autre façon; pour le plaisir et l'apprentissage : -)
```{r, results='asis', echo=FALSE}
cat("`` `r 2+2` ``")
```
Voici une conclusion satisfaisante. Définissez d'abord la fonction
rinline <- function(code){
html <- '<code class="r">``` `r CODE` ```</code>'
sub("CODE", code, html)
}
dans un morceau invisible. Ensuite, vous pouvez montrer `r 2+2`
en tapant:
Some R code inline : `r rinline("2+2")` - nice