blob: c00641807269ce1b7175c320faee4138cfc0b819 [file] [log] [blame]
JJ Allaired708ef02016-01-30 14:30:26 -05001% Generated by roxygen2: do not edit by hand
junkkad4b3a162015-03-16 07:49:11 +01002% Please edit documentation in R/revealjs_presentation.R
JJ Allaire2ec40242014-09-15 09:18:39 -04003\name{revealjs_presentation}
4\alias{revealjs_presentation}
5\title{Convert to a reveal.js presentation}
6\usage{
Atsushi Yasumoto7053f452020-02-15 00:08:46 +09007revealjs_presentation(
8 incremental = FALSE,
9 center = FALSE,
10 slide_level = 2,
Marc Kupietz499082c2026-08-30 15:26:44 +030011 chapter_numbering = TRUE,
Christophe Dervieuxaa008e42021-09-23 16:52:37 +020012 toc = FALSE,
13 toc_depth = 3,
Atsushi Yasumoto7053f452020-02-15 00:08:46 +090014 fig_width = 8,
15 fig_height = 6,
16 fig_retina = if (!fig_caption) 2,
17 fig_caption = FALSE,
Marc Kupietzf667b982026-08-08 17:16:28 +020018 self_contained = FALSE,
19 theme = "ids",
Christophe Dervieuxe1893ae2021-10-07 17:09:02 +020020 transition = "convex",
21 background_transition = "fade",
Atsushi Yasumoto7053f452020-02-15 00:08:46 +090022 reveal_options = NULL,
Marc Kupietz03dbc5d2026-08-21 15:44:25 +020023 reveal_plugins = c("notes", "search", "menu", "zoom"),
Atsushi Yasumoto7053f452020-02-15 00:08:46 +090024 highlight = "default",
Marc Kupietz725acd12026-08-28 14:03:21 +030025 df_print = "kable",
Atsushi Yasumoto7053f452020-02-15 00:08:46 +090026 mathjax = "default",
27 template = "default",
28 css = NULL,
29 includes = NULL,
30 keep_md = FALSE,
31 lib_dir = NULL,
32 pandoc_args = NULL,
33 extra_dependencies = NULL,
34 md_extensions = NULL,
35 ...
36)
JJ Allaire2ec40242014-09-15 09:18:39 -040037}
38\arguments{
39\item{incremental}{\code{TRUE} to render slide bullets incrementally. Note
40that if you want to reverse the default incremental behavior for an
JJ Allaire29152752016-03-08 15:06:38 -050041individual bullet you can precede it with \code{>}. For example:
Christophe Dervieux37782092023-03-24 17:36:16 +010042\emph{\verb{> - Bullet Text}}. See more in
43\href{https://pandoc.org/MANUAL.html#incremental-lists}{Pandoc's Manual}}
JJ Allaire2ec40242014-09-15 09:18:39 -040044
45\item{center}{\code{TRUE} to vertically center content on slides}
46
JJ Allaire4c178052016-01-30 19:35:39 -050047\item{slide_level}{Level of heading to denote individual slides. If
48\code{slide_level} is 2 (the default), a two-dimensional layout will be
49produced, with level 1 headers building horizontally and level 2 headers
50building vertically. It is not recommended that you use deeper nesting of
51section levels with reveal.js.}
52
Marc Kupietz499082c2026-08-30 15:26:44 +030053\item{chapter_numbering}{\code{TRUE} (the default) numbers the \verb{#} chapter
54headings automatically ("1. Introduction", "2. Methods", ...), skipping
55references, appendix and thank-you chapters. \code{FALSE} turns the numbering
56off -- headings keep exactly what was typed, including any manually
57typed numbers. A number starts the enumeration at that value:
58\code{chapter_numbering = 5} numbers the first chapter "5." (useful for
59continuation decks).}
60
Christophe Dervieuxaa008e42021-09-23 16:52:37 +020061\item{toc}{\code{TRUE} to include a table of contents in the output (only
62level 1 headers will be included in the table of contents).}
63
64\item{toc_depth}{Depth of headers to include in table of contents}
65
JJ Allaire2ec40242014-09-15 09:18:39 -040066\item{fig_width}{Default width (in inches) for figures}
67
Atsushi Yasumoto7053f452020-02-15 00:08:46 +090068\item{fig_height}{Default height (in inches) for figures}
JJ Allaire2ec40242014-09-15 09:18:39 -040069
JJ Allaire82a8dee2016-07-12 10:25:36 -040070\item{fig_retina}{Scaling to perform for retina displays (defaults to 2, which
71currently works for all widely used retina displays). Set to \code{NULL} to
72prevent retina scaling. Note that this will always be \code{NULL} when
73\code{keep_md} is specified (this is because \code{fig_retina} relies on
74outputting HTML directly into the markdown document).}
JJ Allaire2ec40242014-09-15 09:18:39 -040075
76\item{fig_caption}{\code{TRUE} to render figures with captions}
77
Atsushi Yasumoto7053f452020-02-15 00:08:46 +090078\item{self_contained}{Whether to generate a full LaTeX document (\code{TRUE})
79or just the body of a LaTeX document (\code{FALSE}). Note the LaTeX
80document is an intermediate file unless \code{keep_tex = TRUE}.}
JJ Allaire2ec40242014-09-15 09:18:39 -040081
Marc Kupietz9fdf0f72026-08-28 07:04:25 +030082\item{theme}{Visual theme. The dedicated IDS corporate design theme
83("ids") is the default and the only supported theme.}
JJ Allaire2ec40242014-09-15 09:18:39 -040084
Christophe Dervieuxe1893ae2021-10-07 17:09:02 +020085\item{transition}{Slide transition (
86"convex", "fade", "slide", "concave", "zoom", or "none"
87)}
junkkad4b3a162015-03-16 07:49:11 +010088
Christophe Dervieuxe1893ae2021-10-07 17:09:02 +020089\item{background_transition}{Slide background-transition (
90"convex", "fade", "slide", "concave", "zoom", or "none"
91)}
JJ Allaire2ec40242014-09-15 09:18:39 -040092
JJ Allaire35c0b492017-02-10 09:30:24 -050093\item{reveal_options}{Additional options to specify for reveal.js (see
Christophe Dervieuxe1893ae2021-10-07 17:09:02 +020094\url{https://revealjs.com/config/} for details). Options for plugins can also
95be passed, using plugin name as first level key (e.g \code{list(slideNumber = FALSE, menu = list(number = TRUE))}).}
JJ Allaire37f45b72016-01-30 18:17:45 -050096
JJ Allaire35c0b492017-02-10 09:30:24 -050097\item{reveal_plugins}{Reveal plugins to include. Available plugins include
Marc Kupietz03dbc5d2026-08-21 15:44:25 +020098"notes", "search", "zoom", "chalkboard", and "menu". Defaults to
99\code{c("notes", "search", "menu", "zoom")}; pass \code{NULL} to render without
100any plugins. Note that \code{self_contained} must be set to \code{FALSE} in order
101to use Reveal plugins.}
JJ Allaire82a8dee2016-07-12 10:25:36 -0400102
Christophe Dervieux37782092023-03-24 17:36:16 +0100103\item{highlight}{Syntax highlighting style passed to Pandoc.
104
105 Supported built-in styles include "default", "tango", "pygments", "kate",
106 "monochrome", "espresso", "zenburn", "haddock", and "breezedark".
107
108 Two custom styles are also included, "arrow", an accessible color scheme,
109 and "rstudio", which mimics the default IDE theme. Alternatively, supply a
110 path to a \samp{.theme} file to use
111 \href{https://pandoc.org/MANUAL.html#syntax-highlighting}{a custom Pandoc
112 style}. Note that custom theme requires Pandoc 2.0+.
113
114 Pass \code{NULL} to prevent syntax highlighting.}
JJ Allaire2ec40242014-09-15 09:18:39 -0400115
Marc Kupietz725acd12026-08-28 14:03:21 +0300116\item{df_print}{Method used to print data frames in the document. The
117default, \code{"kable"}, renders data frames as plain HTML tables styled by
118the presentation theme, so that results look reasonable on slides without
119any extra code. Since \code{"kable"} prints all rows, consider showing only
120\code{head(x)} on slides with many-rowed results. Other supported methods are
121\code{"default"} (plain text output), \code{"tibble"}, and \code{"paged"} (an
122interactive paged table, see \code{\link[rmarkdown:html_document]{rmarkdown::html_document()}}).}
123
Atsushi Yasumoto7053f452020-02-15 00:08:46 +0900124\item{mathjax}{Include mathjax. The "default" option uses an https URL from a
125MathJax CDN. The "local" option uses a local version of MathJax (which is
126copied into the output directory). You can pass an alternate URL or pass
127\code{NULL} to exclude MathJax entirely.}
JJ Allaire2ec40242014-09-15 09:18:39 -0400128
JJ Allaire4c178052016-01-30 19:35:39 -0500129\item{template}{Pandoc template to use for rendering. Pass "default" to use
130the rmarkdown package default template; pass \code{NULL} to use pandoc's
131built-in template; pass a path to use a custom template that you've
132created. Note that if you don't use the "default" template then some
133features of \code{revealjs_presentation} won't be available (see the
134Templates section below for more details).}
JJ Allaire2ec40242014-09-15 09:18:39 -0400135
Christophe Dervieux21239cf2021-09-15 15:34:01 +0200136\item{css}{CSS and/or Sass files to include. Files with an extension of .sass
137or .scss are compiled to CSS via \code{sass::sass()}. Also, if \code{theme} is a
138\code{\link[bslib:bs_theme]{bslib::bs_theme()}} object, Sass code may reference the relevant Bootstrap
139Sass variables, functions, mixins, etc.}
JJ Allairefad55232015-10-19 07:47:26 -0400140
JJ Allaire2ec40242014-09-15 09:18:39 -0400141\item{includes}{Named list of additional content to include within the
Atsushi Yasumoto7053f452020-02-15 00:08:46 +0900142document (typically created using the \code{\link[rmarkdown]{includes}} function).}
JJ Allaire2ec40242014-09-15 09:18:39 -0400143
144\item{keep_md}{Keep the markdown file generated by knitting.}
145
146\item{lib_dir}{Directory to copy dependent HTML libraries (e.g. jquery,
JJ Allaire091cb122016-02-09 13:04:23 -0500147bootstrap, etc.) into. By default this will be the name of the document with
Marc Kupietzf667b982026-08-08 17:16:28 +0200148\verb{_files} appended to it.}
JJ Allaire2ec40242014-09-15 09:18:39 -0400149
150\item{pandoc_args}{Additional command line options to pass to pandoc}
JJ Allaire8d1c2f42016-01-30 14:56:45 -0500151
JJ Allaire35c0b492017-02-10 09:30:24 -0500152\item{extra_dependencies}{Additional function arguments to pass to the base R
153Markdown HTML output formatter \code{\link[rmarkdown:html_document_base]{rmarkdown::html_document_base()}}.}
JJ Allaire375805c2016-11-15 08:56:43 -0500154
Atsushi Yasumoto7053f452020-02-15 00:08:46 +0900155\item{md_extensions}{Markdown extensions to be added or removed from the
Christophe Dervieux37782092023-03-24 17:36:16 +0100156default definition of R Markdown. See the \code{\link[rmarkdown]{rmarkdown_format}} for
Atsushi Yasumoto7053f452020-02-15 00:08:46 +0900157additional details.}
158
JJ Allaire8d1c2f42016-01-30 14:56:45 -0500159\item{...}{Ignored}
JJ Allaire2ec40242014-09-15 09:18:39 -0400160}
161\value{
christophe dervieuxd26add32021-09-23 16:55:00 +0200162R Markdown output format to pass to \code{\link[rmarkdown:render]{rmarkdown::render()}}
JJ Allaire2ec40242014-09-15 09:18:39 -0400163}
164\description{
165Format for converting from R Markdown to a reveal.js presentation.
166}
167\details{
JJ Allaire4c178052016-01-30 19:35:39 -0500168In reveal.js presentations you can use level 1 or level 2 headers for slides.
169If you use a mix of level 1 and level 2 headers then a two-dimensional layout
170will be produced, with level 1 headers building horizontally and level 2
171headers building vertically.
JJ Allaire2ec40242014-09-15 09:18:39 -0400172
JJ Allaire4c178052016-01-30 19:35:39 -0500173For additional documentation on using revealjs presentations see
christophe dervieuxd26add32021-09-23 16:55:00 +0200174\url{https://github.com/rstudio/revealjs}
JJ Allaire2ec40242014-09-15 09:18:39 -0400175}
Christophe Dervieuxe1893ae2021-10-07 17:09:02 +0200176\section{About plugins}{
Marc Kupietzb9a8cba2026-08-28 06:51:28 +0300177The plugins \code{notes}, \code{search}, \code{menu} and \code{zoom} are activated by default;
178only \code{chalkboard} is opt-in. Setting \code{reveal_plugins} replaces the default
179set -- pass \code{NULL} to render without any plugins.
Christophe Dervieuxe1893ae2021-10-07 17:09:02 +0200180\subsection{Built-in plugins with reveal.js}{
181\subsection{Zoom}{
182
Marc Kupietzb9a8cba2026-08-28 06:51:28 +0300183Activated by default: ALT + Click can be used to zoom on a slide.
Christophe Dervieuxe1893ae2021-10-07 17:09:02 +0200184}
185
186\subsection{Notes}{
187
Marc Kupietzb9a8cba2026-08-28 06:51:28 +0300188Activated by default: shows a \href{https://revealjs.com/speaker-view/}{speaker view} in a separated
Christophe Dervieuxe1893ae2021-10-07 17:09:02 +0200189window. This speaker view contains a timer, current slide, next slide, and
190speaker notes. It also duplicate the window to have presentation mode
191synchronized with main presentation.
192
Christophe Dervieux37782092023-03-24 17:36:16 +0100193Use
194
195\if{html}{\out{<div class="sourceCode markdown">}}\preformatted{::: notes
Christophe Dervieuxe1893ae2021-10-07 17:09:02 +0200196Content of speaker notes
197:::
198}\if{html}{\out{</div>}}
199
Marc Kupietz6b65c032026-08-25 09:43:28 +0300200to create notes only viewable in presentation mode. Notes placed before
201the first heading are attached to the title slide.
202
203On mobile browsers (touch devices), a button next to the fullscreen
204toggle overlays the current slide with its speaker notes (plus the slide
205title and, if present, the planned time from a timing comment), which is
206useful for practicing a talk on a phone or tablet. It follows along as
207you change slides and only appears if the deck contains notes at all.
Marc Kupietzeaaa2b42026-08-26 09:41:27 +0300208
Marc Kupietz010db0b2026-08-26 09:56:45 +0300209Pressing \code{r} -- or, on touch devices, tapping the list button next to
210the speaker notes button -- toggles a transcript view: a single
211scrollable page containing every slide's content and speaker notes.
212Text-to-speech ("read aloud") browser extensions cannot walk a
213reveal.js deck, since hidden slides are not part of the visible page
214text -- the transcript gives them something they can read from start
215to finish.
Christophe Dervieuxe1893ae2021-10-07 17:09:02 +0200216}
217
Marc Kupietzb066e742026-08-23 09:57:06 +0300218}
219
220\subsection{Slide timing}{
221
222Speaker time can be planned per slide and per speaker by adding a comment
223with a speaker code and the expected duration (in \code{MM:SS}, \code{HH:MM:SS}, or
224plain seconds format) anywhere inside a slide:
225
226\if{html}{\out{<div class="sourceCode markdown">}}\preformatted{## My slide title
227
228Some content
229
230<!-- MK 00:30 -->
231}\if{html}{\out{</div>}}
232
233This means Marc Kupietz will need 30 seconds for that slide. For talks
234presented by a single speaker, the speaker code can be omitted:
Marc Kupietz6b65c032026-08-25 09:43:28 +0300235\verb{<!-- 00:30 -->}. Comments placed before the first heading are applied to
236the title slide.
Marc Kupietzb066e742026-08-23 09:57:06 +0300237
238Typically you start from a known total time budget and adjust the
239individual slides to it. You can set this budget yourself with the
240reveal.js \code{totalTime} option (in seconds):
241
242\if{html}{\out{<div class="sourceCode yaml">}}\preformatted{output:
243 revealjs.ids::revealjs_presentation:
244 reveal_options:
245 totalTime: 3600 # one hour
246}\if{html}{\out{</div>}}
247
248During rendering, comments are converted into \code{data-timing} attributes on
249the slides' \verb{<section>} elements (several speakers per slide are summed
250up), and the calculated grand total is passed to reveal.js as the
251\code{totalTime} config value. This activates the pacing timer in the
252\href{https://revealjs.com/speaker-view/}{speaker view}, which shows how you
253are doing relative to your plan. A summary of the total time per speaker
254is printed during rendering. If the document sets \code{totalTime} or
255\code{defaultTiming} itself (via \code{reveal_options}), those take precedence.
256
257The function \code{\link[=slide_timing]{slide_timing()}} computes these totals directly from an
258\code{.Rmd} source file without rendering it.
Marc Kupietz4fc867c2026-08-25 10:30:18 +0300259}
260
Marc Kupietzde3c6c12026-08-30 14:40:33 +0300261\subsection{Vertical content centering}{
262
263Slides with little content look lost when everything is glued below the
264title bar, while packed slides must start at the top. reveal.js' own
265\code{center} option cannot express this -- it also vertically centers the
266headings. Instead, the body content of each slide (everything after the
267heading block except speaker notes) is grouped and, whenever there is
268free space, centered in the area between the heading and the footer:
269slides that are too packed simply start directly below the heading and
270overflow downwards, exactly as before. Centered content never reaches
271into the footer; content too tall to fit above it may, as it always
272could. Heading-only section-divider slides keep their own centered-title
273layout. No configuration is needed and nothing changes about how slides
274are authored.
275}
276
Marc Kupietzde3ffa42026-08-30 13:47:57 +0300277\subsection{Chapter numbering}{
278
279Like in the old Google Docs slide workflow, chapter headings (\verb{#}) are
280numbered automatically: the first chapter becomes "1. Introduction", the
281second "2. Methods", and so on. References, appendix and thank-you
282chapters (References/Literatur/Referenzen/Publikationen/
283Herausgeberschaften/Appendix/Anhang, and headings containing
284"Thank you"/"Vielen Dank") keep their bare titles and are not counted.
285Manually typed leading numbers (\verb{# 2. Methods}) are stripped before
286renumbering, so decks migrated from the old pipeline and repeated
287numbering runs stay stable. The numbers are added when the presentation
288is opened: the menu plugin and the transcript view show them, too, and
289the overview slide's table of contents uses them as its ordered list's
290enumeration. Decks rendered with \code{slide_level = 1} (one \verb{#} heading per
291slide) are left unnumbered -- there, headings denote slides, not
Marc Kupietz499082c2026-08-30 15:26:44 +0300292chapters. The numbering can be turned off with \code{chapter_numbering: false}
293in the yaml header, or started at another number with e.g.
294\code{chapter_numbering: 5} (useful for continuation decks).
Marc Kupietzde3ffa42026-08-30 13:47:57 +0300295}
296
Marc Kupietz4fc867c2026-08-25 10:30:18 +0300297\subsection{Overview slides}{
298
299Like in the original Google Docs slide workflow, a slide titled
300"Overview" or "Überblick" is automatically turned into a table of
301contents: its body content is replaced at presentation time with a
Marc Kupietzde3ffa42026-08-30 13:47:57 +0300302clickable, ordered list of all \verb{#} chapter headings, whose enumeration
303repeats the chapter numbers. Adding
Marc Kupietz24057e52026-08-25 10:51:06 +0300304\code{{data-overview-subheadings=true}} to the heading also includes the
305\verb{##} sub-headings below their chapters, laid out in two columns.
Marc Kupietzde3ffa42026-08-30 13:47:57 +0300306References, appendix and thank-you chapters (References/Literatur/
307Literaturverzeichnis/Referenzen/Publikationen/Herausgeberschaften/
308Appendix/Anhang, and headings containing "Thank you"/"Vielen Dank") are
309left out, together with their sub-slides.
Christophe Dervieuxe1893ae2021-10-07 17:09:02 +0200310\subsection{Search}{
311
Marc Kupietzb9a8cba2026-08-28 06:51:28 +0300312Activated by default: pressing \code{CTRL + SHIFT + F} shows a search box.
313It will search in the whole presentation, and highlight matched words. The
Christophe Dervieuxe1893ae2021-10-07 17:09:02 +0200314matches will also be highlighted in overview mode (pressing ESC to see all
315slides in one scrollable view)
316}
317
318}
319
320\subsection{Menu}{
321
Marc Kupietzb9a8cba2026-08-28 06:51:28 +0300322Activated by default: a slideout menu plugin for Reveal.js to quickly jump
323to any slide by title.
Christophe Dervieuxe1893ae2021-10-07 17:09:02 +0200324
Christophe Dervieux37782092023-03-24 17:36:16 +0100325Version is
Christophe Dervieuxe1893ae2021-10-07 17:09:02 +0200326currently used and documentation for configurations can be found at
327\href{https://github.com/denehyg/reveal.js-menu/blob/2.1.0/README.md}{denehyg/reveal.js-menu}
328\subsection{Known limitations}{
329
330Some configurations cannot be modified in the current template:
331\itemize{
332\item \code{loadIcons: false} the fontawesome icons are loaded by \pkg{rmarkdown}
333when this plugin is used
334\item \code{custom: false}
335\item \code{themes: false}
336\item \code{transitions: false}
337}
338}
339
340}
341
342\subsection{Chalkboard}{
343
Marc Kupietzb9a8cba2026-08-28 06:51:28 +0300344An opt-in plugin adding a chalkboard and slide annotation
Christophe Dervieuxe1893ae2021-10-07 17:09:02 +0200345
Christophe Dervieux37782092023-03-24 17:36:16 +0100346Version is
Christophe Dervieuxe1893ae2021-10-07 17:09:02 +0200347currently used and documentation for configurations can be found at
Marc Kupietzf667b982026-08-08 17:16:28 +0200348\href{https://github.com/rajgoel/reveal.js-plugins/tree/4.2.5/4.1.5/chalkboard}{rajgoel/reveal.js-plugins}
Christophe Dervieuxe1893ae2021-10-07 17:09:02 +0200349
350By default, chalkboard and annotations modes will be accessible using keyboard
351shortcuts, respectively, pressing B, or pressing C.
Christophe Dervieux37782092023-03-24 17:36:16 +0100352In addition, buttons on the bottom left can be added by using the following
353
354\if{html}{\out{<div class="sourceCode yaml">}}\preformatted{reveal_plugins:
Christophe Dervieuxe1893ae2021-10-07 17:09:02 +0200355 - chalkboard
356reveal_options:
357 chalkboard:
358 toggleNotesButton: true
359 toggleChalkboardButton: true
360}\if{html}{\out{</div>}}
361}
Marc Kupietzad0f24b2026-08-23 10:09:05 +0300362
Marc Kupietz59e95a62026-08-29 10:19:05 +0300363\subsection{Title slide: QR code and additional logos}{
364
365Three optional yaml entries personalise the title slide for external
366audiences (ported from \pkg{posterdown.ids}):
367\itemize{
368\item \verb{website: <url>} -- a linked QR code pointing to the URL is placed in
369the top left of the title slide. Uses the \pkg{qrcode} package.
370\item \verb{partner_logo: <path-or-url>} -- when a presentation is given by
371authors from two institutions, the partner institution's logo is shown
372next to the IDS logo, in the top right of every slide.
373\item \verb{funder_logo: <path-or-url>} -- a funder logo (e.g. "Text+") is placed
374in the bottom left of the title slide, opposite the Leibniz
375Gemeinschaft membership logo. It is lifted above the footer band on
376print (pdf) pages.
377}
378
379Local logo files (svg, png, jpg, gif, webp) are embedded in the html as
380data URIs, so they do not need to be shipped with the presentation; http
381URLs are used as-is. A QR code anywhere else on a slide can be produced
382with \code{\link[=qrlink]{qrlink()}} from inline R code. The navigation chrome (arrows, slide
383number, menu button) is hidden on the title slide for a bare first
384impression.
385}
386
Marc Kupietzad0f24b2026-08-23 10:09:05 +0300387\subsection{Bibliography and citations}{
388
389Documents with a \verb{bibliography:} in their YAML header are formatted with
390the bundled IDS citation style (\code{ids.csl}, based on the style developed
391for ICLC-10 2023 in Mannheim) by default. To use a different style,
392specify it as usual with \verb{csl:} in the YAML header.
393}
Christophe Dervieuxe1893ae2021-10-07 17:09:02 +0200394}
395
JJ Allaire2ec40242014-09-15 09:18:39 -0400396\examples{
397\dontrun{
398
399library(rmarkdown)
Marc Kupietz03dbc5d2026-08-21 15:44:25 +0200400library(revealjs.ids)
JJ Allaire2ec40242014-09-15 09:18:39 -0400401
402# simple invocation
403render("pres.Rmd", revealjs_presentation())
404
405# specify an option for incremental rendering
406render("pres.Rmd", revealjs_presentation(incremental = TRUE))
407}
JJ Allaired708ef02016-01-30 14:30:26 -0500408
JJ Allaire2ec40242014-09-15 09:18:39 -0400409}