Maison  >  Article  >  interface Web  >  Comment puis-je appliquer des classes CSS aux morceaux de code dans RMarkdown ?

Comment puis-je appliquer des classes CSS aux morceaux de code dans RMarkdown ?

Linda Hamilton
Linda Hamiltonoriginal
2024-10-24 18:52:30380parcourir

How Can I Apply CSS Classes to Code Chunks in RMarkdown?

Application d'une classe CSS aux morceaux de code dans RMarkdown

Si vous souhaitez ajouter une classe CSS spécifiquement à un morceau de code dans RMarkdown, il existe méthodes pour y parvenir.

Options class.source et class.output

Pour les versions knitr 1.16 et ultérieures, vous pouvez utiliser les options class.source et class.output pour attribuer des classes HTML aux morceaux de code source et de sortie. Par exemple :

summary(cars)

Cela ajoutera la classe 'myClass' au morceau de code source.

Utilisation de fenced_code_attributes et knitr Hooks

Avant knitr 1.16, vous pouvez exploiter l'extension fenced_code_attributes Pandoc en conjonction avec un hook de sortie dans knitr. Considérez ce qui suit :

---
title: "Untitled"
  output: 
    html_document:
      md_extensions: +fenced_code_attributes
---

knitr::knit_hooks$set(source = function(x, options) {
return(paste0(

"```{.r",
ifelse(is.null(options$class),
  "", 
  paste0(" .", gsub(" ", " .", options$class))
),
"}\n",
x,
"\n```"

))
})

Then, within the code chunk, you can specify the class as follows:
summary(cars)
This will render the code chunk with the HTML class:

</p>
<pre class="brush:php;toolbar:false"><code>
    summary(cars)
<</code>/code>

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn