Format for converting from R Markdown to a reveal.js presentation.
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,
...
)
R Markdown output format to pass to rmarkdown::render()
TRUE
to render slide bullets incrementally. Note
that if you want to reverse the default incremental behavior for an
individual bullet you can precede it with >
. For example:
> - Bullet Text
. See more in
Pandoc's Manual
TRUE
to vertically center content on slides
Level of heading to denote individual slides. If
slide_level
is 2 (the default), a two-dimensional layout will be
produced, with level 1 headers building horizontally and level 2 headers
building vertically. It is not recommended that you use deeper nesting of
section levels with reveal.js.
TRUE
to include a table of contents in the output (only
level 1 headers will be included in the table of contents).
Depth of headers to include in table of contents
Default width (in inches) for figures
Default height (in inches) for figures
Scaling to perform for retina displays (defaults to 2, which
currently works for all widely used retina displays). Set to NULL
to
prevent retina scaling. Note that this will always be NULL
when
keep_md
is specified (this is because fig_retina
relies on
outputting HTML directly into the markdown document).
TRUE
to render figures with captions
Whether to generate a full LaTeX document (TRUE
)
or just the body of a LaTeX document (FALSE
). Note the LaTeX
document is an intermediate file unless keep_tex = TRUE
.
Visual theme ("simple", "dark", "black", "sky", "beige", "serif", "solarized", "blood", "moon", "night", "league", or "white")
Slide transition ( "convex", "fade", "slide", "concave", "zoom", or "none" )
Slide background-transition ( "convex", "fade", "slide", "concave", "zoom", or "none" )
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 list(slideNumber = FALSE, menu = list(number = TRUE))
).
Reveal plugins to include. Available plugins include
"notes", "search", "zoom", "chalkboard", and "menu". Note that
self_contained
must be set to FALSE
in order to use Reveal
plugins.
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 NULL
to prevent syntax highlighting.
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
NULL
to exclude MathJax entirely.
Pandoc template to use for rendering. Pass "default" to use
the rmarkdown package default template; pass NULL
to use pandoc's
built-in template; pass a path to use a custom template that you've
created. Note that if you don't use the "default" template then some
features of revealjs_presentation
won't be available (see the
Templates section below for more details).
CSS and/or Sass files to include. Files with an extension of .sass
or .scss are compiled to CSS via sass::sass()
. Also, if theme
is a
bslib::bs_theme()
object, Sass code may reference the relevant Bootstrap
Sass variables, functions, mixins, etc.
Named list of additional content to include within the
document (typically created using the includes
function).
Keep the markdown file generated by knitting.
Directory to copy dependent HTML libraries (e.g. jquery,
bootstrap, etc.) into. By default this will be the name of the document with
_files
appended to it.
Additional command line options to pass to pandoc
Additional function arguments to pass to the base R
Markdown HTML output formatter rmarkdown::html_document_base()
.
Markdown extensions to be added or removed from the
default definition of R Markdown. See the rmarkdown_format
for
additional details.
Ignored
When activated, ALT + Click can be used to zoom on a slide.
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.
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)
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
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
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
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
if (FALSE) {
library(rmarkdown)
library(revealjs)
# simple invocation
render("pres.Rmd", revealjs_presentation())
# specify an option for incremental rendering
render("pres.Rmd", revealjs_presentation(incremental = TRUE))
}
Run the code above in your browser using DataLab