Type: | Package |
Title: | R Markdown Format for 'reveal.js' Presentations |
Version: | 0.10.0 |
Description: | R Markdown format for 'reveal.js' presentations, a framework for easily creating beautiful presentations using HTML. |
License: | MIT + file LICENSE |
URL: | https://github.com/rstudio/revealjs |
BugReports: | https://github.com/rstudio/revealjs/issues |
Depends: | R (≥ 3.0) |
Imports: | rmarkdown (≥ 1.7) |
Suggests: | bslib, testthat (≥ 3.0.0), withr (≥ 2.4.2), xfun (≥ 0.21), xml2 |
Config/testthat/edition: | 3 |
Encoding: | UTF-8 |
RoxygenNote: | 7.3.2 |
Config/Needs/website: | pkgdown, tidyverse/tidytemplate, rstudio/quillt |
NeedsCompilation: | no |
Packaged: | 2025-03-28 13:44:24 UTC; chris |
Author: | Christophe Dervieux [cre], JJ Allaire [aut], Hakim El Hattab [aut, cph] (reveal.js, https://github.com/hakimel/reveal.js), Asvin Goel [ctb, cph] (chalkboard plugin), Greg Denehy [ctb, cph] (menu plugin), Posit Software, PBC [cph, fnd] |
Maintainer: | Christophe Dervieux <cderv@posit.co> |
Repository: | CRAN |
Date/Publication: | 2025-04-03 10:50:02 UTC |
Convert to a reveal.js presentation
Description
Format for converting from R Markdown to a reveal.js presentation.
Usage
revealjs_presentation(
incremental = FALSE,
center = FALSE,
slide_level = 2,
toc = FALSE,
toc_depth = 3,
fig_width = 8,
fig_height = 6,
fig_retina = if (!fig_caption) 2,
fig_caption = FALSE,
self_contained = TRUE,
theme = "simple",
transition = "convex",
background_transition = "fade",
reveal_options = NULL,
reveal_plugins = NULL,
highlight = "default",
mathjax = "default",
template = "default",
css = NULL,
includes = NULL,
keep_md = FALSE,
lib_dir = NULL,
pandoc_args = NULL,
extra_dependencies = NULL,
md_extensions = NULL,
...
)
Arguments
incremental |
|
center |
|
slide_level |
Level of heading to denote individual slides. If
|
toc |
|
toc_depth |
Depth of headers to include in table of contents |
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 |
fig_caption |
|
self_contained |
Whether to generate a full LaTeX document ( |
theme |
Visual theme ("simple", "dark", "black", "sky", "beige", "serif", "solarized", "blood", "moon", "night", "league", or "white") |
transition |
Slide transition ( "convex", "fade", "slide", "concave", "zoom", or "none" ) |
background_transition |
Slide background-transition ( "convex", "fade", "slide", "concave", "zoom", or "none" ) |
reveal_options |
Additional options to specify for reveal.js (see
https://revealjs.com/config/ for details). Options for plugins can also
be passed, using plugin name as first level key (e.g |
reveal_plugins |
Reveal plugins to include. Available plugins include
"notes", "search", "zoom", "chalkboard", and "menu". Note that
|
highlight |
Syntax highlighting style passed to Pandoc. Supported built-in styles include "default", "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 ‘.theme’ file to use a custom Pandoc style. Note that custom theme requires Pandoc 2.0+. Pass |
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
|
template |
Pandoc template to use for rendering. Pass "default" to use
the rmarkdown package default template; pass |
css |
CSS and/or Sass files to include. Files with an extension of .sass
or .scss are compiled to CSS via |
includes |
Named list of additional content to include within the
document (typically created using the |
keep_md |
Keep the markdown file generated by knitting. |
lib_dir |
Directory to copy dependent HTML libraries (e.g. jquery,
bootstrap, etc.) into. By default this will be the name of the document with
|
pandoc_args |
Additional command line options to pass to pandoc |
extra_dependencies |
Additional function arguments to pass to the base R
Markdown HTML output formatter |
md_extensions |
Markdown extensions to be added or removed from the
default definition of R Markdown. See the |
... |
Ignored |
Details
In reveal.js presentations you can use level 1 or level 2 headers for slides. If you use a mix of level 1 and level 2 headers then a two-dimensional layout will be produced, with level 1 headers building horizontally and level 2 headers building vertically.
For additional documentation on using revealjs presentations see https://github.com/rstudio/revealjs
Value
R Markdown output format to pass to rmarkdown::render()
About plugins
Built-in plugins with reveal.js
Zoom
When activated, ALT + Click can be used to zoom on a slide.
Notes
Show a speaker view in a separated window. This speaker view contains a timer, current slide, next slide, and speaker notes. It also duplicate the window to have presentation mode synchronized with main presentation.
Use
::: notes Content of speaker notes :::
to create notes only viewable in presentation mode.
Search
When opt-in, it is possible to show a search box when pressing CTRL + SHIFT + F
. It will seach in the whole presentation, and highlight matched words. The
matches will also be highlighted in overview mode (pressing ESC to see all
slides in one scrollable view)
Menu
A slideout menu plugin for Reveal.js to quickly jump to any slide by title.
Version is currently used and documentation for configurations can be found at denehyg/reveal.js-menu
Known limitations
Some configurations cannot be modified in the current template:
-
loadIcons: false
the fontawesome icons are loaded by rmarkdown when this plugin is used -
custom: false
-
themes: false
-
transitions: false
Chalkboard
A plugin adding a chalkboard and slide annotation
Version is currently used and documentation for configurations can be found at rajgoel/reveal.js-plugins
By default, chalkboard and annotations modes will be accessible using keyboard shortcuts, respectively, pressing B, or pressing C. In addition, buttons on the bottom left can be added by using the following
reveal_plugins: - chalkboard reveal_options: chalkboard: toggleNotesButton: true toggleChalkboardButton: true
Examples
## Not run:
library(rmarkdown)
library(revealjs)
# simple invocation
render("pres.Rmd", revealjs_presentation())
# specify an option for incremental rendering
render("pres.Rmd", revealjs_presentation(incremental = TRUE))
## End(Not run)