regebro / hovercraft

Make dynamic impressive presentations from text files!
https://hovercraft.readthedocs.org
MIT License
1.49k stars 208 forks source link

Feature request: support for substeps #153

Closed mmlanger closed 6 years ago

mmlanger commented 6 years ago

Hey! First of all: I really like this project as it actually makes impress.js accessible without the trouble of directly messing with html. As I really like to use this project for my scientific presentations I'd need the possibilty to do substeps, which seems to not be supported by hovercraft as far as I can tell.

Recently, support for substeps was merged to impress.js: https://github.com/impress/impress.js/commit/156da0bb3f9a2d77f9a7b851fe4c39ef443340c3

Could we have this for hovercraft? And if so, maybe have an example for this?

regebro commented 6 years ago

Yeah, since each substep just has a class this should be doable. It won't be pretty though:

.. class:: substep

This is a substep.

.. class:: substep

And so is this.

I'll think about ways of implementing this in a nicer way.

srhuels commented 6 years ago

please explain using .. class: substep I don't understand to make it work.

regebro commented 6 years ago

It's not implemented yet.

pappasam commented 6 years ago

@srhuels with the lastest version, the following code works for substeps (you need to write html):

Fruits
======

.. raw:: html

    <p class="substep">Orange</p>
    <p class="substep">Apple</p>

----

Goodbye
=======

Done

@regebro I'll think about how to update the parser a bit more elegantly and submit a pull request if I have more time.

regebro commented 6 years ago

This works with paragraphs, but unfortunately not with lists, but I'm hoping that's just because classes are ignored in the reST.xsl template when it comes to lists, which would make it an easy fix.

It may be more complex, though, in which case we'd need a new directive.

.. class:: substep

    A paragraph

    Another one

    And a third
pappasam commented 6 years ago

@regebro this works perfectly! I don't think lists are supported in the substeps plugin, so this might be an upstream problem (or simply bad feature removal imho). As far as hovercraft is concerned, I think this issue is closed.

Substeps documentation

regebro commented 6 years ago

It still needs to be documented at least, so I'm keeping the issue open for now.

regebro commented 6 years ago

This will work in the next release as well:

Unordered list:

* Bullet item 1
    .. class:: substep
* Bullet item 2
    .. class:: substep
* Bullet item 3
    .. class:: substep

Ordered list:

1. Bullet item 1
    .. class:: substep
1. Bullet item 2
    .. class:: substep
1. Bullet item 3
    .. class:: substep

Not the most elegant solution, but it'll do for now.

regebro commented 6 years ago

Docs added, closed.