markdeck icon indicating copy to clipboard operation
markdeck copied to clipboard

Markdeck Theming

Open jceb opened this issue 6 years ago • 6 comments

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 avatar Oct 07 '19 06:10 jceb

@arnehilmann what are your thoughts on this concept?

jceb avatar Feb 03 '20 10:02 jceb

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!

arnehilmann avatar Feb 10 '20 13:02 arnehilmann

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.

jceb avatar Feb 12 '20 11:02 jceb

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...

arnehilmann avatar Feb 12 '20 13:02 arnehilmann

~/.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 avatar Feb 12 '20 13:02 jceb

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.

jceb avatar Jun 20 '20 19:06 jceb