cleanrmd
cleanrmd is a no-frills, lightweight HTML format for R Markdown, using class-less CSS.
This package was greatly inspired by Yuval Greenfield’s blog post: The Next CSS Frontier - Classless.
Installation
You can install the released version of cleanrmd from CRAN:
install.packages("cleanrmd")
You can install the latest development version from GitHub:
# install.packages("remotes")
::install_github("gadenbuie/cleanrmd") remotes
or from gadenbuie.r-universe.dev:
options(repos = c(
gadenbuie = 'https://gadenbuie.r-universe.dev',
CRAN = 'https://cloud.r-project.org'
))
install.packages('cleanrmd')
Usage
cleanrmd::html_document_clean
Create a new R Markdown document using the Clean HTML R Markdown template in RStudio, or add the following to your .Rmd
YAML header to use cleanrmd::html_document_clean.
output:
cleanrmd::html_document_clean:
theme: no-class
To explore the available themes, set theme
to NULL
.
output:
cleanrmd::html_document_clean:
theme: NULL
Syntax highlighting is provided by default by pandoc, where syntax highlighting is performed during during the render, minimizing dependencies. pandoc’s highlighting themes include pygments
, tango
, espresso
, zenburn
, kate
, monochrome
, breezedark
, and haddock
. The default
highlighting theme is arrow
, provided by the rmarkdown package in addition to the rstudio
theme.
html_document_clean()
can also use Prism for highlighting. In this case, highlighting is performed in the browser and the dependencies are downloaded as needed. To use Prism, set theme: prism
or use one of the following value to choose a specific Prism theme: prism-coy
, prism-dark
, prism-funky
, prism-okaidia
, prism-solarizedlight
, prism-tomorrow
, and prism-twilight
.
MathJax and FontAwesome are also available but disabled by default. To enable either feature, you can set mathjax
to local
or default
, as in rmarkdown::html_document()
. Set use_fontawesome
to TRUE
to enable Font Awesome icons.
output:
cleanrmd::html_document_clean:
mathjax: default
use_fontawesome: true
Just the theme
You can also load the CSS theme dependencies in other places where htmltools can be used to provide HTML dependencies, such as Shiny apps.
To include a theme in your app or page, use
::use_cleanrmd(theme = "new.css") cleanrmd
To view the list of theme options view the help pages of cleanrmd_themes() or use its output:
::cleanrmd_themes()
cleanrmd#> [1] "almond" "awsm.css" "axist"
#> [4] "bamboo" "bullframe" "holiday"
#> [7] "kacit" "latex.css" "markdown-splendor"
#> [10] "markdown-retro" "markdown-air" "markdown-modest"
#> [13] "marx" "minicss" "new.css"
#> [16] "no-class" "picocss" "sakura"
#> [19] "sakura-vader" "semantic" "simplecss"
#> [22] "style-sans" "style-serif" "stylize"
#> [25] "superstylin" "tacit" "vanilla"
#> [28] "water" "water-dark" "writ"
Themes
The following CSS themes are included in this package and you can preview all 30 themes in one place here.