arnehilmann/markdeck

Markdeck Theming

jceb opened this issue · 6 comments

jceb commented

The conversation started at #33. I created a gist to track the specification for themes: https://gist.github.com/jceb/6c931fe7d17ce4adf497bca277f73131

BTW, is there an option to collaborate on a gist? I haven't seen possibility to add @arnehilmann to it.

jceb commented

@arnehilmann what are your thoughts on this concept?

Long time no see...
I played around with a couple of different theme implementations, and I ended up with a little bit different solution. the "highlights" would be:

  • themes is a subfolder of the main slides folder (and thus a sibling of assets, because a) assets should be deck-specific IMHO, b) themes may consist of more than pure css, and c) themes should not be framework-specific.)
  • themes are placed in separate subfolders of themes
  • themes/example will be the theme of the example slides, and contains common css, framework-dependent css, images and fonts.
  • The main loop watches for changes in slides.md, assets/* and themes/* now.
    *I will release the new version v0.5 in the next couple of days.
    Any comments/ideas are welcome!
jceb commented

Great! I like the idea. If themes could also be stored outside the current folder that would be awesome. For example in ~/.config/markdeck/themes.

At the moment, markdeck relies on docker to bundle/configure all tools (and right now I see no alternative), so all resources needed for rendering must be in the source folder or one of its subfolders; even symbolic links pointing outside the source folder (e.g. to ~/.config/...) don't work.
So we are "stuck" with the local-only approach here; and that might be not that bad at all: easier reproducibility and version control, for example...

jceb commented

~/.config/markdeck/themes could be mounted into the docker container like it is done with the other folders. For themes, I prefer a global approach so that I can easily reuse the theme in multiple presentations. In addition, I agree with you that anything that's specific to the presentation should be local in order to make builds reproducible.

jceb commented

I've been putting some work into https://github.com/jceb/mdshow recently. I got a really usable solutions for themes in there. Unfortunately, it's not yet documented but this will follow in the future. @arnehilmann, I'd be happy for feedback.