decker-edu / decker

A markdown based tool for slide deck creation.
GNU General Public License v3.0
53 stars 13 forks source link

Reveal plugin integration #119

Closed Hexanders closed 1 month ago

Hexanders commented 1 month ago

Is it possible to integrate revel.js plugins without changing too much code? I could not find any information in the Decker documentation.

I am mainly interested in the simplemenu plugin.

https://github.com/Martinomagnifico/reveal.js-simplemenu

It would be very nice to integrate this.

salbeira commented 1 month ago

Reveal Plugins are loaded inside a resource pack's template. I tore the system a bit apart in recent commits so you only need to copy and modify the deck-plugins.html partial to modify the loaded plugins (and the deck-styles.html if the plugin brings .css files with it).

You either need to fork and modify the related template that you are using or create a custom resource pack that you load and integrate locally. The vs-code plugin "decker-init" can help you create a directory in your project that has a structure to be accepted as a resource pack, though without any modified contents. Also remember that resource-packs always modify the default "exe:decker" resource pack and have no inheritance hierarchy.

Hexanders commented 1 month ago

Hi, thanks for the quick reply. I ran into some problems while compiling Decker (some dependency problems on Debian 12 and also on Fedora 39). I think I understand the point of decker: to make it easy to present e.g. lectures in a very convincing way. Unfortunately, by doing so, you lose all the flexibility of Reveal. Do not get me wrong, I still think that Decker is a great tool that should be used by all professors, because the feature of handouts or integrated quizzes are very useful, but I do not need them at the moment.

However, at the moment I do not have too much time to invest in debugging and I switch directly to revel. I hope that Decker will gain popularity and you will develop it further, I will keep an eye on it.

Thank you very much for a great job.