Created
October 19, 2019 10:07
-
-
Save luxzeitlos/435bfddc5ec102ee765e907d3f6edcbe to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# Suggestion of a new input structure for empress (slides) | |
I'm proposing to use `yaml` files instead of markdown files as primary structure for writing slides. | |
## Reasoning for empress-slides | |
When writing slides usually many slides are written at once. Also slides are by definition a special kind of presentation, so the way how it is presented is crucial. So presentation decisions have to be made at authoring time. | |
For example I may split content on two slides, or do a side-by-side comparsion. While I can do basically everything with `html` inside markdown this should never be necessary for the author. | |
A yaml file can contain structured information, is very easy to read and multiline markdown is easy to embed. Also a single yaml file can contain multiple documents, which allos to write multiple slides in one file: | |
``` | |
type: title | |
title: Why we need yaml | |
--- | |
type: markdown | |
title: Foo | |
content: | | |
There are *multiple* reasons: | |
- a first reason | |
- a second reason | |
- a third reason | |
``` | |
This structure makes it far easier to author large slidesets that contain of multiple parts. For example a tutor may decide to create one file per lecture, each containing slides for ~90 minutes of talk. Reordering the lectures then becomes easy. Also many single-line files are avoided. | |
This also allows to have multiple slide structures the same way as tools like powerpoint or keynote. So having a side-by-side comparsion, where multiple things must be aligned right: | |
``` | |
type: side-by-side | |
content: | |
- | |
left: | | |
# Wolf | |
The wolf is a wild animal in european woods | |
right: | | |
# Dog | |
The dog is domesticated and used for hunting | |
- | |
left: | | |
# Lion | |
The lion is a wild animal and may eat you | |
right: | | |
# Cat | |
Soo awww | |
``` | |
This is still no decision about layout, but content structure. How it is presented, will there be borders, colors, etc is decided by the template. | |
## Reasoning about empress-blog | |
This may not be as necessary as for slides because in the time one blog post is written an entire slideset is written. However it could be nice to embed things like a image gallery: | |
``` | |
type: multistep | |
content: | |
- | |
type: markdown | |
content: | | |
# My trip to emberfest | |
It was awesome | |
- | |
type: gallery | |
images: img/emberfest/*.jpg | |
- | |
type: markdown | |
content: | | |
Thank you all for this amazing time. | |
``` | |
# Considering multi-target-documents | |
Which LaTeX often one input document is used to create multiple outputs. For example a professor may use the same LaTeX document to create both slides and a script. The script then usually contains much more information. | |
Using a powerfull language like yaml could in the future allow similar things: | |
``` | |
type: markdown | |
inSlides: true | |
content: | | |
Ember is a awesome framework. | |
We love it because of multiple reasons. | |
--- | |
type: markdown | |
inSlides: false | |
content: | | |
Ember is far better then anything else because ...... | |
--- | |
type: markdown | |
inSlides: true | |
content: | | |
# The beginning of ember | |
A long time ago, a cat.... | |
``` |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment