Search code examples
jupyterrise

How to split a Jupyter notebook into several slides?


Jupyter allows to produce slides either via nbconvert or (even better) dynamically and within a notebook with RISE.

However, when I launch RISE on my notebook or create slides with nbconvert, it creates only a single (potentially huge) slide. I thought it would/could automatically split at every header lines, but it does not.

How can I split the notebook into different slides?


Solution

  • You need to bring in a specific tool that is not shown by default. In the notebook, go to

    View > Cell Toolbar > Slideshow
    

    and a drop-down menu now appears at the right end of each cell, showing a "slide label" (my terminology).

    By default, the label is -, meaning that the cell is part of the same block than the cell above.

    If you change the label to slide, the cell is now the first cell of a new slide. (new slide would probably be a better label indeed).

    You will find other labels too that closely follow Reveal.js' way of working:

    The subslide label correspond also to a new slide, but placed in a "vertical stack" so dear to Reveal.js. fragments are used for progressive display of the elements of a slide. skip cells are not displayed, and notes are for speaker notes.