:title :description :author :email :stylesheet_link_tag :javascript_include_tag
- Head elements should be put on the top of the document.
- When any of the body elements are reached, head element is closed. That is, is emitted and the Reveal.js body structure is established.
All Reveal.js slides are wrapped in the following structure:
... SECTION_TARGET : <sections> here ...
</div>
<!-- The navigational controls UI -->
<aside class="controls">
<a class="left" href="#">◄</a>
<a class="right" href="#">►</a>
<a class="up" href="#">▲</a>
<a class="down" href="#">▼</a>
</aside>
<!-- Displays presentation progress, max value changes via JS to reflect # of slides -->
<div class="progress"><span></span></div>
The following defines keywords emits
!SLIDE, !ENDSLIDE
Marks the starting and ending of a slide (
Classes can be appended to slide
!SLIDE.chapter[data-title="html5"]
Emits
Marks the starting and ending of a stack (vertical slide stack). Rules are the same as !SLIDE and !ENDSLIDE.
Code spans are wrapped by ``. This emits a block. Brackets (<, >) are escaped to < and > automatically. To output a '
' charactor, escape it like '\
'.
Two types of code blocks are supported here. The code blocks wrapped in three or more '`'s. This kind of code blocks emits
...
. The second kind is wrapped in three or more '~'s. This kind of code blocks emits <script type="text/x-sample">...</script>, which makes uses of sample.js.
HTML tags are allowed in the syntax and is outputted as-is. Since we do not have any token that emits custom
, one can write in vebdew directly.
Headers has the syntax derived from kramdown. The following syntaxes are allowed:
...
Three or more '-' in a row with a leading and trailing blank line emits a
tag.
Lines with leading and trailing blank lines, if not matched by any of the rules above, are treated as a paragraph. (p element).
CSS-Selector like decorators can be appended to any of the elements above. The syntax is like:
{:#ID.class[attr=value]}
This syntax is derived from Kramdown. Such examples are:
{:.inverted}
generating
Another example is:
<input>
tag has an attribute called type
{:.attr[title="checkbox|radio|submit"]}
emits
<input>
tag has an attribute called type