Title: | Clean Class-Less 'R Markdown' HTML Documents |
Version: | 0.1.1 |
Description: | A collection of clean 'R Markdown' HTML document templates using classy-looking classless CSS styles. These documents use a minimal set of dependencies but still look great, making them suitable for use a package vignettes or for sharing results via email. |
License: | MIT + file LICENSE |
URL: | https://pkg.garrickadenbuie.com/cleanrmd/, https://github.com/gadenbuie/cleanrmd |
BugReports: | https://github.com/gadenbuie/cleanrmd/issues |
Depends: | R (≥ 2.10) |
Imports: | htmltools, jsonlite, rmarkdown, utils |
Suggests: | testthat (≥ 2.1.0) |
Encoding: | UTF-8 |
RoxygenNote: | 7.2.3 |
NeedsCompilation: | no |
Packaged: | 2023-05-19 19:51:41 UTC; garrick |
Author: | Garrick Aden-Buie |
Maintainer: | Garrick Aden-Buie <garrick@adenbuie.com> |
Repository: | CRAN |
Date/Publication: | 2023-05-19 20:10:02 UTC |
List cleanrmd themes
Description
Lists the available themes in cleanrmd
Usage
cleanrmd_themes()
Value
A character string of available theme names.
cleanrmd theme list
cleanrmd includes the following no-class CSS themes:
Examples
cleanrmd_themes()
Clean Rmarkdown HTML Document
Description
Clean HTML documents with R Markdown.
Usage
html_document_clean(
...,
theme = "no-class",
css = NULL,
toc = FALSE,
toc_depth = 3,
title_in_header = TRUE,
mathjax = NULL,
use_fontawesome = FALSE,
fig_width = 10,
fig_height = 7,
fig_retina = 2,
keep_md = FALSE,
dev = "png",
highlight = "default",
pandoc_args = NULL,
extra_dependencies = NULL,
md_extensions = NULL,
self_contained = !is.null(theme)
)
Arguments
... |
Additional function arguments to pass to the base R Markdown HTML
output formatter |
theme |
The class-less CSS theme to use, one of |
css |
CSS and/or Sass files to include. Files with an extension of .sass
or .scss are compiled to CSS via |
toc |
|
toc_depth |
Depth of headers to include in table of contents |
title_in_header |
If |
mathjax |
Include mathjax. The "default" option uses an https URL from a
MathJax CDN. The "local" option uses a local version of MathJax (which is
copied into the output directory). You can pass an alternate URL or pass
|
use_fontawesome |
Should links to FontAwesome be included in the HTML
document's |
fig_width |
Default width (in inches) for figures |
fig_height |
Default height (in inches) for figures |
fig_retina |
Scaling to perform for retina displays (defaults to 2, which
currently works for all widely used retina displays). Set to |
keep_md |
Keep the markdown file generated by knitting. |
dev |
Graphics device to use for figure output (defaults to png) |
highlight |
Syntax highlight engine and style, either a built-in Pandoc
highlighting theme, a theme provided by rmarkdown, or a
prismjs theme (see below). Pass
Pandoc themes. By default, uses Pandoc's highlighting style. Pandoc's built-in styles include "tango", "pygments", "kate", "monochrome", "espresso", "zenburn", "haddock" and "breezedark". Two custom styles are also included, "arrow", an accessible color scheme,
and "rstudio", which mimics the default IDE theme. Alternatively, supply a
path to a Prism themes. To use the prismjs
syntax highlighter, pass one of "prism", "prism-coy", "prism-dark",
"prism-funky", "prism-okaidia", "prism-solarizedlight", "prism-tomorrow",
or "prism-twilight". To use an alternate Prism theme file, pass the URL or
path to the theme's CSS file prefixed with "prism:", e.g.
|
pandoc_args |
Additional command line options to pass to pandoc |
extra_dependencies |
Extra dependencies as a list of the
|
md_extensions |
Markdown extensions to be added or removed from the
default definition of R Markdown. See the |
self_contained |
Produce a standalone HTML file with no external dependencies, using data: URIs to incorporate the contents of linked scripts, stylesheets, images, and videos. Note that even for self contained documents MathJax is still loaded externally (this is necessary because of its size). |
Value
An R Markdown output format that can be used with output:
in an
.Rmd
or for use with rmarkdown::render()
.
MathJax
Note that MathJax is disabled by default to reduce the
overall size of the final document. You can enable MathJax by setting
mathjax = "default"
, see rmarkdown::html_document()
for more options.
See Also
use_cleanrmd()
for using cleanrmd themes in places other than in
R Markdown documents
Examples
if (interactive()) {
html_document_clean()
}
## Not run:
rmarkdown::render("input.Rmd", html_document_clean())
## End(Not run)
Use a clean CSS theme from cleanrmd
Description
Provides a cleanrmd CSS theme using htmltools. You can use this
CSS theme anywhere that HTML dependencies are handled via
htmltools::htmlDependency()
, for example in R Markdown or Quarto documents
or in Shiny apps.
Usage
use_cleanrmd(name = NULL)
cleanrmd_theme_dependency(name = NULL)
Arguments
name |
The name of the theme, see |
Value
use_cleanrmd()
returns an htmltools::tagList()
with an
htmltools::htmlDependency()
. cleanrmd_theme_dependency()
returns only
the htmltools::htmlDependency()
.
Functions
-
use_cleanrmd()
: Use a clean CSS theme in the current document or app (general usage) -
cleanrmd_theme_dependency()
: Use a clean CSS theme dependency (advanced usage)
R Markdown documents
In R Markdown (static or Shiny
prerendered), you should use the html_document_clean()
output format to
use a cleanrmd theme.
--- output: cleanrmd::html_document_clean: theme: NULL # or pick a specific theme self_contained: false ---
Quarto documents
You can also use cleanrmd in Quarto documents
or apps (using server: shiny
). You'll need to turn off the themes
provided by Quarto with theme: none
and then call
cleanrmd::use_cleanrmd()
in a code chunk in your document.
--- title: "Untitled" format: html: theme: none #server: shiny --- ```{r cleanrmd, echo=FALSE} cleanrmd::use_cleanrmd("bamboo") ```
Shiny apps
In Shiny apps, you'll need to use shiny::basicPage()
rather than
shiny::fluidPage()
. Then call use_cleanrmd()
in your app to use a
cleanrmd theme.
library(shiny) ui <- shiny::basicPage( cleanrmd::use_cleanrmd(), h2("Old Faithful Geyser Data"), sliderInput( "bins", "Number of bins:", min = 1, max = 50, value = 30 ), plotOutput("distPlot") )
Examples
page <- htmltools::withTags(
main(
h2("Small Demo"),
p("Clean, simple, classy but class-less:"),
ul(
li("Works almost anywhere"),
li("Small and simple"),
li("Easy to extend"),
li("Good enough but not perfect")
)
)
)
# no styles
if (interactive()) {
htmltools::browsable(page)
}
# all clean styles
page_clean <- htmltools::tagList(page, use_cleanrmd())
if (interactive()) {
htmltools::browsable(page_clean)
}
# one clean style
page_water <- htmltools::tagList(page, use_cleanrmd("water"))
if (interactive()) {
htmltools::browsable(page_water)
}
cleanrmd_theme_dependency("bamboo")