Directives¶
sphinx-revealjs provides some directives to customize presence and behaviors.
For customize presentation¶
Sphinx can manage multiple documents,
so that sphinx-revealjs can build multiple presentation slides.
If you want to configure one presentaion from some, use this directive into your source.
- .. revealjs-slide::¶
Write
revealjs-slidedirective on directly below of title header.Note
Directive based customize has options less than conf based because implementation restrict.
- :theme: (string)¶
Override
revealjs_style_theme.
- :google_font: (string)¶
Override
revealjs_google_fonts, but it can specify only one.
- :conf: (JSON-string or no-value)¶
Override
revealjs_script_conf, but single line only.
Usage:
Presentation title ================== .. revealjs-slide:: :theme: moon Section ------- Content
For customize sections¶
If you want to change behavior of sections, use these directives.
- .. revealjs-section::¶
To change behavior per section, write directive per section.
- :data-XXX:¶
This directive can accept attribute as same as Reveal.js
sectiontags. For more information, please see Reveal.js documentation.Note
This may be not completed all attributes for Reveal.js. If you find missing attribute, pleas post issues or pull-requests into GitHub.
Usage:
Write
revealjs-slidedirective on directly below of section title header.Title ===== Section ------- .. revealjs-section:: :data-background-color: #009900
- .. revealjs-break::¶
If you want to transition section with keeping title,
revealjs-breakcan use.Usage:
Write
revealjs-breakto point of want to split section.Title ===== Section ------- Content 1 .. revealjs-break:: Content 2(next slide)
- :data-XXX:¶
It accepts attributes as same as
revealjs-section.
- :notitle:¶
If it is set in directive, next section page does not display title.
For interactive contents¶
- .. revealjs-code-block::¶
This is extends of
code-blockdirecrive for presentation.If you want to use
data-line-numberattributes in code-block.- :data-line-numbers: (string or no value)¶
Code highlighting pattern. See Reveal.js document
Example:
.. revealjs-code-block:: python :data-line-numbers: 1 def hello(): print("world")
- .. revealjs-literalinclude::¶
This is extends of
literalincludedirecrive for presentation.If you want to use
data-line-numberattributes in literalinclude.- :data-line-numbers: (string or no value)¶
Code highlighting pattern. See Reveal.js document
Example:
.. revealjs-literalinclude:: conf.py :language: python :lines: 2-5,9-13 :data-line-numbers: 3|8,9
Note
data-line-numberseffects to displayed sources. You should set values by line numbers from display.
- .. revealjs-fragments::¶
Note
There are cases not working regular.
Inject
fragmentattribute into objects. Referer to “Fragments” from Reveal.jsExample:
Write block as directive that you want to present as fragments.
.. revealjs-fragments:: * First * Second * Third
See demo
- .. revealjs-notes::¶
When you write this section, inner text are as content of Speaker View.
If you write some directives on same-level, Reveal.js uses first direcrive only.
Note
You must be careful for comment block when you set
revealjs_notes_from_commentsinconf.py. Reveal.js recoginzes first<aside>element as content of speaker-view, so you may not see directive content as notes.Example:
.. revealjs-notes:: This content output into <aside> element on <section>.