Write Your Presentation

Let’s see some examples of revealjs backend features. Additional examples can be found in the AsciiDoc files (.adoc) in the project’s example corpus.

Basic presentation with speaker notes

= Title Slide

== Slide One

* Foo
* Bar
* World

== Slide Two

A Great Story

[.notes]
--
* tell anecdote
* make a point
--

In the previous snippet, we create a slide titled Slide One with bullets and another titled Slide Two with centered text (reveal.js’ default behavior) and speaker notes. Other syntax exists to create speaker notes; see speaker-notes.adoc.

In order to generate a proper presentation, the source file must contain a proper AsciiDoc document structure. This is especially important when configuring how Asciidoctor reveal.js should convert the document. The document properties must be set on the title slide for them to work. See Title Slide for more information.

Speaker notes support configurable layouts and are opened by pressing the s key:

b941eb52 d743 11e6 9936 44ef80c60580

Slides without titles

There are a few ways to have no titles on slides.

  • Setting your title to !

  • Adding the notitle option to your slide

  • Adding the conceal option to your slide

conceal and notitle have the advantage that the slide still has an id so it can be linked to.
Like the first page of an AsciiDoc document, the first slide is handled differently. To hide the whole slide use the :notitle: document attribute. To achieve the effect of hiding only the first slide’s title, combine the :notitle: attribute on the first slide and use [%notitle] on the second slide which will, in effect, be your first slide now.

Content meant for multiple converters

Some content can be created with both slides and book in mind.

To mark slide split points, you can use preprocessor conditionals combined with a backend declaration. Breaking points are set using titleless slides (=== !) wrapped in a conditional: ifdef::backend-revealjs[=== !]. The whole document then has to be compiled with the backend option -b revealjs.

For example:

== Main section

=== Sub Section

Small +
Multiline +
intro

. very
. long
. list
. of
. items

ifdef::backend-revealjs[=== !]

Some overview diagram

ifdef::backend-revealjs[=== !]

Detailed view diagram